/** Updates the layout. */ public void update() { removeAllComponents(); if (current == null) return; DBManager.getCommunicator().refresh(current); List<Squad> squads = current.getSquads(); List<Vehicle> vehicles = current.getVehicles(); Application app = getApplication(); for (final Squad squad : squads) { Panel panel = new Panel(); addComponent(panel); HorizontalLayout horContent = new HorizontalLayout(); horContent.setMargin(true); horContent.setSpacing(true); horContent.setWidth("100%"); panel.setContent(horContent); Embedded emb = new Embedded(); emb.setSource(new ClassResource("res/tac/trupp.png", app)); emb.setWidth("50px"); emb.setHeight("30px"); horContent.addComponent(emb); VerticalLayout verContent = new VerticalLayout(); verContent.setSpacing(true); horContent.addComponent(verContent); horContent.setExpandRatio(verContent, 1f); Label lblName = new Label(squad.getName()); lblName.setStyleName(Reindeer.LABEL_H2); verContent.addComponent(lblName); verContent.addComponent(new Label(squad.getType().getName())); List<Helper> helpers = squad.getHelpers(); for (Helper helper : helpers) { verContent.addComponent(new Label("<hr />", Label.CONTENT_XHTML)); verContent.addComponent(new Label(helper.getFirstName() + " " + helper.getLastName())); Label lblTel = new Label(helper.getTelNumber()); lblTel.setStyleName(Reindeer.LABEL_SMALL); verContent.addComponent(lblTel); String quals = ""; List<Qualification> qs = helper.getQualifications(); for (int i = 1; i < qs.size(); i++) quals += qs.get(i - 1) + ", "; Label lblQuals = new Label(quals + qs.get(qs.size() - 1)); lblQuals.setStyleName(Reindeer.LABEL_SMALL); verContent.addComponent(lblQuals); } Slider slider = new Slider(0, 9); slider.setOrientation(Slider.ORIENTATION_VERTICAL); slider.setImmediate(true); slider.addListener( new ValueChangeListener() { private static final long serialVersionUID = 1L; @Override public void valueChange(ValueChangeEvent event) { int state = ((Double) event.getProperty().getValue()).intValue(); squad.setState(state); Long id = squad.getId(); works.getItem(id).getItemProperty("state").setValue(state); boolean visible = units.areUnavailableVisible(); units.setUnavailableVisible(true); units.getItem(id).getItemProperty("state").setValue(state); units.setUnavailableVisible(visible); } }); try { slider.setValue(squad.getState()); } catch (Exception e) { } horContent.addComponent(slider); } for (final Vehicle vehicle : vehicles) { Panel panel = new Panel(); addComponent(panel); HorizontalLayout horContent = new HorizontalLayout(); horContent.setMargin(true); horContent.setSpacing(true); horContent.setWidth("100%"); panel.setContent(horContent); Embedded emb = new Embedded(); File img = vehicle.getImage(); if (img == null) { emb.setSource(new ClassResource("res/tac/fahrzeug.png", app)); } else { emb.setSource(new FileResource(img, app)); } emb.setWidth("50px"); horContent.addComponent(emb); VerticalLayout verContent = new VerticalLayout(); verContent.setSpacing(true); horContent.addComponent(verContent); horContent.setExpandRatio(verContent, 1f); Label lblName = new Label(vehicle.getName()); lblName.setStyleName(Reindeer.LABEL_H2); verContent.addComponent(lblName); verContent.addComponent(new Label(vehicle.getType().getName())); List<Helper> helpers = vehicle.getHelpers(); for (Helper helper : helpers) { verContent.addComponent(new Label("<hr />", Label.CONTENT_XHTML)); verContent.addComponent(new Label(helper.getFirstName() + " " + helper.getLastName())); Label lblTel = new Label(helper.getTelNumber()); lblTel.setStyleName(Reindeer.LABEL_SMALL); verContent.addComponent(lblTel); String quals = ""; List<Qualification> qs = helper.getQualifications(); for (int i = 1; i < qs.size(); i++) quals += qs.get(i - 1) + ", "; Label lblQuals = new Label(quals + qs.get(qs.size() - 1)); lblQuals.setStyleName(Reindeer.LABEL_SMALL); verContent.addComponent(lblQuals); } Slider slider = new Slider(0, 9); slider.setOrientation(Slider.ORIENTATION_VERTICAL); slider.setImmediate(true); slider.addListener( new ValueChangeListener() { private static final long serialVersionUID = 1L; @Override public void valueChange(ValueChangeEvent event) { int state = ((Double) event.getProperty().getValue()).intValue(); vehicle.setState(state); Long id = vehicle.getId(); works.getItem(id).getItemProperty("state").setValue(state); boolean visible = units.areUnavailableVisible(); units.setUnavailableVisible(true); units.getItem(id).getItemProperty("state").setValue(state); units.setUnavailableVisible(visible); } }); try { slider.setValue(vehicle.getState()); } catch (Exception e) { } horContent.addComponent(slider); } }
@Override public void execute(Slider c, SliderOrientation value, Object data) { c.setOrientation(value); }