improved movedToRight and movedToLeft methods

git-svn-id: http://svn.d4science-ii.research-infrastructures.eu/gcube/trunk/portlets/widgets/ckan-metadata-publisher-widget@133975 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Costantino Perciante 2016-11-08 22:30:37 +00:00
parent 66ddef8d06
commit e8fd2aebab
1 changed files with 21 additions and 19 deletions

View File

@ -296,17 +296,18 @@ public class TwinColumnSelectionMainPanel extends Composite{
while (iterator.hasNext()) { while (iterator.hasNext()) {
ResourceElementBean resourceElementBean = (ResourceElementBean) iterator ResourceElementBean resourceElementBean = (ResourceElementBean) iterator
.next(); .next();
resourceElementBean.setMovedToRight(true); resourceElementBean.setMovedToRight(true);
boolean contains = dataProviderRight.getList().contains(resourceElementBean);
if(!contains)
dataProviderRight.getList().add(resourceElementBean);
}
// refresh providers int indexRight = dataProviderRight.getList().indexOf(resourceElementBean);
dataProviderLeft.flush(); if(indexRight >= 0)
dataProviderRight.flush(); dataProviderRight.getList().set(indexRight, resourceElementBean);
dataProviderLeft.refresh(); else
dataProviderRight.refresh(); dataProviderRight.getList().add(resourceElementBean);
int indexLeft = dataProviderLeft.getList().indexOf(resourceElementBean);
if(indexLeft >= 0)
dataProviderLeft.getList().set(indexLeft, resourceElementBean);
}
} }
/** /**
@ -321,16 +322,17 @@ public class TwinColumnSelectionMainPanel extends Composite{
Iterator<ResourceElementBean> iterator = setSelected.iterator(); Iterator<ResourceElementBean> iterator = setSelected.iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
ResourceElementBean resourceElementBean = (ResourceElementBean) iterator.next(); ResourceElementBean resourceElementBean = (ResourceElementBean) iterator.next();
int index = dataProviderLeft.getList().indexOf(resourceElementBean); resourceElementBean.setMovedToRight(false);
if(index != -1){
resourceElementBean.setMovedToRight(false);
dataProviderLeft.getList().set(index, resourceElementBean); // replace
}
}
// refresh providers int indexLeft = dataProviderLeft.getList().indexOf(resourceElementBean);
dataProviderRight.flush(); if(indexLeft != -1)
dataProviderRight.refresh(); dataProviderLeft.getList().set(indexLeft, resourceElementBean); // replace
else
dataProviderLeft.getList().add(resourceElementBean);
int indexRight = dataProviderRight.getList().indexOf(resourceElementBean);
if(indexRight >= 0)
dataProviderLeft.getList().set(indexLeft, resourceElementBean);
}
} }
} }