예제 #1
0
  @Override
  public void update(final ModelEvent event) {

    super.update(event);

    if (event.part == ModelPart.SELECTED_NODE) {
      if (model.getSelectedNode() != null) {
        toolbar.setRedraw(false);
        labelSelected.setText(
            Resources.getMessage("MainToolBar.3")
                + //$NON-NLS-1$
                Arrays.toString(model.getSelectedNode().getTransformation()));
        labelSelected.pack();
        layout();
        toolbar.setRedraw(true);
      }
    } else if (event.part == ModelPart.OUTPUT) {
      if (model.getOutputNode() != null) {

        // Update tool tip
        SearchSpaceStatistics stats = new SearchSpaceStatistics(model.getResult());
        setToolTip(stats);

        // Update labels
        toolbar.setRedraw(false);
        labelTransformations.setText(
            Resources.getMessage("MainToolBar.6")
                + //$NON-NLS-1$
                SWTUtil.getPrettyString(stats.numTransformationsInSearchSpace));
        labelTransformations.pack();

        labelApplied.setText(
            Resources.getMessage("MainToolBar.4")
                + //$NON-NLS-1$
                Arrays.toString(model.getOutputNode().getTransformation()));
        labelApplied.pack();

        layout();

        toolbar.setRedraw(true);
      } else {
        reset();
      }
    } else if (event.part == ModelPart.RESULT) {
      if (model.getResult() != null) {

        // Update tool tip
        SearchSpaceStatistics stats = new SearchSpaceStatistics(model.getResult());
        setToolTip(stats);

        // Update labels
        toolbar.setRedraw(false);
        labelTransformations.setText(
            Resources.getMessage("MainToolBar.6")
                + //$NON-NLS-1$
                SWTUtil.getPrettyString(stats.numTransformationsInSearchSpace));
        labelTransformations.pack();

        labelSelected.setText(Resources.getMessage("MainToolBar.7")); // $NON-NLS-1$
        labelSelected.pack();

        labelApplied.setText(Resources.getMessage("MainToolBar.8")); // $NON-NLS-1$
        labelApplied.pack();

        layout();

        toolbar.setRedraw(true);
      }
    } else if (event.part == ModelPart.SELECTED_ATTRIBUTE) {
      String attribute = (String) event.data;

      // Update label
      toolbar.setRedraw(false);
      labelAttribute.setText(
          Resources.getMessage("MainToolBar.50") + trim(attribute)); // $NON-NLS-1$
      labelAttribute.pack();
      layout();
      toolbar.setRedraw(true);
    } else if (event.part == ModelPart.MODEL) {
      model = (Model) event.data;
    }
  }