protected Control createDialogArea(Composite parent) {
    Composite composite = (Composite) super.createDialogArea(parent);
    GridLayout gridLayout = new GridLayout();
    gridLayout.numColumns = 2;
    composite.setLayout(gridLayout);

    Work work = (Work) getValue();

    Label nameLabel = new Label(composite, SWT.NONE);
    nameLabel.setText("Name: ");
    Text nameText = new Text(composite, SWT.NONE);
    nameText.setEditable(false);
    GridData gridData = new GridData();
    gridData.grabExcessHorizontalSpace = true;
    gridData.horizontalAlignment = GridData.FILL;
    nameText.setLayoutData(gridData);
    String name = work.getName();
    nameText.setText(name == null ? "" : name);

    Set<ParameterDefinition> parameters = workDefinition.getParameters();
    for (ParameterDefinition param : parameters) {
      Label label = new Label(composite, SWT.NONE);
      label.setText(param.getName() + ": ");
      Text text = new Text(composite, SWT.NONE);
      gridData = new GridData();
      gridData.grabExcessHorizontalSpace = true;
      gridData.horizontalAlignment = GridData.FILL;
      text.setLayoutData(gridData);
      texts.put(param.getName(), text);
      Object value = work.getParameter(param.getName());
      text.setText(value == null ? "" : value.toString());
    }

    return composite;
  }
 protected Work updateValue(Work value) {
   Work work = new WorkImpl();
   work.setName(value.getName());
   for (Map.Entry<String, Text> entry : texts.entrySet()) {
     String text = entry.getValue().getText();
     work.setParameter(entry.getKey(), "".equals(text) ? null : text);
   }
   work.setParameterDefinitions(value.getParameterDefinitions());
   return work;
 }
示例#3
0
 public Work getWork() {
   if (work == null) {
     work = new WorkImpl();
     Work sourceWork = getDefinition().getWork();
     work.setName(sourceWork.getName());
     for (ParameterDefinition pd : sourceWork.getParameterDefinitions()) {
       work.addParameterDefinition(new ParameterDefinitionImpl(pd.getName(), pd.getType()));
     }
     for (Entry<String, Object> entry : sourceWork.getParameters().entrySet()) {
       work.setParameter(entry.getKey(), entry.getValue());
     }
     work.setParameter("NodeName", getName());
     work.setParameter(
         PeopleAssignmentHelper.BUSINESSADMINISTRATOR_ID, TableItem.getPlannerRoles(this));
   }
   return work;
 }