public void createControl(Composite parent) {
    // TODO Auto-generated method stub
    Composite composite = new Composite(parent, SWT.NULL);
    composite.setFont(parent.getFont());

    initializeDialogUnits(parent);

    GridLayout layout = new GridLayout();
    layout.numColumns = 2;
    layout.verticalSpacing = 10;
    composite.setLayout(layout);
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));

    Label label = new Label(composite, SWT.NONE);
    label.setText("Name:");
    label.setLayoutData(new GridData());

    fName = new Text(composite, SWT.BORDER);
    fName.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    fName.addModifyListener(
        new ModifyListener() {
          public void modifyText(ModifyEvent e) {
            updatefield(FIELD_NAME);
          }
        });

    label = new Label(composite, SWT.NONE);
    label.setText("Vendor:");
    label.setLayoutData(new GridData());

    fVendor = new Text(composite, SWT.BORDER);
    fVendor.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    fVendor.addModifyListener(
        new ModifyListener() {
          public void modifyText(ModifyEvent e) {
            updatefield(FIELD_VENDOR);
          }
        });

    label = new Label(composite, SWT.NONE);
    label.setText("Description:");
    label.setLayoutData(new GridData());

    fDesc = new Text(composite, SWT.BORDER);
    fDesc.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    fDesc.addModifyListener(
        new ModifyListener() {
          public void modifyText(ModifyEvent e) {
            updatefield(FIELD_DESC);
          }
        });

    setControl(composite);

    updatefield(FIELD_ALL);

    OSPCreateDataStore store = getDataStore();
    if (store != null) store.addProjectNameChangeListener(this);
  }
  private void updateNameStatus() {
    String text = fName.getText();
    OSPCreateDataStore store = getDataStore();
    if (text.length() == 0) {
      fNameStatus.setError("Name field is empty.");
      if (store != null) store.setAppName("");

    } else {
      fNameStatus.setOK();
      if (store != null) store.setAppName(text);
    }
  }
  private void updateDescStatus() {
    String text = fDesc.getText();

    OSPCreateDataStore store = getDataStore();
    if (store != null) store.setDescription(text);
  }
  private void updateVendorStatus() {
    String text = fVendor.getText();

    OSPCreateDataStore store = getDataStore();
    if (store != null) store.setVendor(text);
  }