void resetRegions(List<Region> regions) {
   if (regions != null && !regions.isEmpty()) {
     this.regions.clear();
     for (Region a : regions) {
       this.regions.addItem(a.toDisplay(), a.getId() + "");
     }
     for (int index = 0; index < this.regions.getItemCount(); index++) {
       int id = Integer.parseInt(this.regions.getValue(index));
       this.regions.setItemSelected(index, group.getRegionIds().contains(id));
     }
   }
   adjustListBox(box.getValue());
 }
 @Override
 public List<Group> getValue() {
   List<Group> groups = super.getValue();
   GWT.log("get valle" + groups);
   for (Group g : groups) {
     GroupPanel panel = panels.get(g.getId());
     if (panel != null) {
       GWT.log("get valle" + g.hasRegions());
       if (g.hasApplications()) {
         g.setApplicationIds(panel.getSelectedApplicationIds());
       }
       if (panel.hasRegions()) {
         g.setRegionIds(panel.getSelectedRegionIds());
       }
       GWT.log("get valle" + g.getRegionIds());
     }
   }
   return groups;
 }
 public void setGroup(Group g) {
   this.group = g;
   setApplicationIds(g.getApplicationIds());
   setRegionIds(g.getRegionIds());
 }