Example #1
0
  /** 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);
    }
  }
Example #2
0
 @Override
 public void execute(Slider c, SliderOrientation value, Object data) {
   c.setOrientation(value);
 }