@Override public void click(UIDisplayElement element, int button) { UIListItem listitem = (UIListItem) element; if (listitem.getValue().getClass().equals(ZoneType.class)) { switch (((ZoneType) listitem.getValue())) { case Gather: { uizonelist.removeAll(); for (Zone zone : MinionSystem.getGatherZoneList()) { UIListItem newlistitem = new UIListItem(zone.Name, zone); newlistitem.setTextColor(Color.black); newlistitem.addClickListener(zonelistener); uizonelist.addItem(newlistitem); } uizonelistgroup.setVisible(false); uizonelist.setVisible(true); btnBack.setVisible(true); break; } case Terraform: { uizonelist.removeAll(); for (Zone zone : MinionSystem.getTerraformZoneList()) { UIListItem newlistitem = new UIListItem(zone.Name, zone); newlistitem.setTextColor(Color.black); newlistitem.addClickListener(zonelistener); uizonelist.addItem(newlistitem); } uizonelistgroup.setVisible(false); uizonelist.setVisible(true); btnBack.setVisible(true); break; } case Work: { uizonelist.removeAll(); for (Zone zone : MinionSystem.getWorkZoneList()) { UIListItem newlistitem = new UIListItem(zone.Name, zone); newlistitem.setTextColor(Color.black); newlistitem.addClickListener(zonelistener); uizonelist.addItem(newlistitem); } uizonelistgroup.setVisible(false); uizonelist.setVisible(true); btnBack.setVisible(true); break; } case Storage: { uizonelist.removeAll(); for (Zone zone : MinionSystem.getStorageZoneList()) { UIListItem newlistitem = new UIListItem(zone.Name, zone); newlistitem.setTextColor(Color.black); newlistitem.addClickListener(zonelistener); uizonelist.addItem(newlistitem); } uizonelistgroup.setVisible(false); uizonelist.setVisible(true); btnBack.setVisible(true); break; } case OreonFarm: { uizonelist.removeAll(); for (Zone zone : MinionSystem.getOreonFarmZoneList()) { UIListItem newlistitem = new UIListItem(zone.Name, zone); newlistitem.setTextColor(Color.black); newlistitem.addClickListener(zonelistener); uizonelist.addItem(newlistitem); } uizonelistgroup.setVisible(false); uizonelist.setVisible(true); btnBack.setVisible(true); break; } default: { break; } } } else { if (cmbType.isVisible()) { cmbType.setVisible(false); } lblError.setText(""); Zone zone = (Zone) listitem.getValue(); txtzonename.setText(zone.Name); txtheight.setText("" + zone.zoneheight); txtwidth.setText("" + zone.zonewidth); txtdepth.setText("" + zone.zonedepth); switch (zone.zonetype) { case Gather: { lblzonetype.setText("Zonetype : Gather"); break; } case Terraform: { lblzonetype.setText("Zonetype : Terraform"); break; } case Work: { lblzonetype.setText("Zonetype : Work"); break; } default: { lblzonetype.setText("label wasn't set"); break; } } btnSave.setVisible(false); btnDelete.setVisible(true); } }
private void executeClick(UIDisplayElement element, int id) { lblError.setText(""); if (MinionSystem.getNewZone() == null) { newzonefound = false; MinionSystem.resetNewSelection(); lblError.setText("Something went wrong. Please close the book and recreate the selection."); } if (MinionSystem.getNewZone().zonetype == ZoneType.OreonFarm) { if (MinionSystem.getNewZone().getEndPosition() == null) { newzonefound = false; MinionSystem.resetNewSelection(); lblError.setText("Something went wrong. Please close the book and recreate the selection."); } else { } } if ((!cmbType.isVisible()) && MinionSystem.getNewZone() == null) { newzonefound = false; this.close(); } if (cmbType.isVisible() && cmbType.getSelection() == null) { lblError.setText("Please select a zone type"); return; } if (cmbType.isVisible() && cmbType.getSelection() != null) { if (ZoneType.valueOf(cmbType.getSelection().getText()) == ZoneType.OreonFarm) { if (MinionSystem.getNewZone().getMinBounds().y != MinionSystem.getNewZone().getMaxBounds().y) { newzonefound = false; lblError.setText( "A farm zone needs to be level. Please select a flat zone and try again"); return; } } } if (txtzonename.getText().length() < 3) { lblError.setText("Zone name needs to be longer then 2 characters!"); return; } for (Zone zone : MinionSystem.getGatherZoneList()) { if (zone.Name.matches(txtzonename.getText())) { lblError.setText("Zone name already exists!"); return; } } for (Zone zone : MinionSystem.getTerraformZoneList()) { if (zone.Name.matches(txtzonename.getText())) { lblError.setText("Zone name already exists!"); return; } } for (Zone zone : MinionSystem.getWorkZoneList()) { if (zone.Name.matches(txtzonename.getText())) { lblError.setText("Zone name already exists!"); return; } } int tmp; try { tmp = Integer.parseInt(txtheight.getText()); tmp = Integer.parseInt(txtwidth.getText()); tmp = Integer.parseInt(txtdepth.getText()); lblError.setText("value needs to be an number, check for trailing spaces!"); } catch (NumberFormatException e) { return; } Zone newzone = new Zone( MinionSystem.getNewZone().getStartPosition(), MinionSystem.getNewZone().getEndPosition()); newzone.Name = txtzonename.getText(); newzone.zoneheight = Integer.parseInt(txtheight.getText()); newzone.zonewidth = Integer.parseInt(txtwidth.getText()); newzone.zonedepth = Integer.parseInt(txtdepth.getText()); if (cmbType.isVisible()) { newzone.zonetype = ZoneType.valueOf(cmbType.getSelection().getText()); } else { newzone.zonetype = MinionSystem.getNewZone().zonetype; } MinionSystem.addZone(newzone); newzonefound = false; lblzonetype.setText(""); MinionSystem.resetNewSelection(); this.close(); }