Exemple #1
0
  protected void createWorkBenchBuildControls(Composite parent) {
    SelectionAdapter selectionAdapter =
        new SelectionAdapter() {

          @Override
          public void widgetSelected(SelectionEvent e) {
            targetAuto.setEnabled(autoButton.getSelection());
            autoVariableButton.setEnabled(autoButton.getSelection());
            targetIncr.setEnabled(incrButton.getSelection());
            incrVariableButton.setEnabled(incrButton.getSelection());
            targetClean.setEnabled(cleanButton.getSelection());
            cleanVariableButton.setEnabled(cleanButton.getSelection());
            getContainer().updateContainer();
          }
        };
    Group group =
        ControlFactory.createGroup(
            parent, MakeUIPlugin.getResourceString(MAKE_WORKBENCH_BUILD_GROUP), 1);
    GridLayout layout = new GridLayout();
    layout.numColumns = 3;
    layout.makeColumnsEqualWidth = false;
    group.setLayout(layout);
    group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    Label label = new Label(group, SWT.NONE);
    label.setText(MakeUIPlugin.getResourceString(MAKE_WORKBENCH_BUILD_TYPE));
    label = new Label(group, SWT.NONE);
    label.setText(MakeUIPlugin.getResourceString(MAKE_WORKBENCH_BUILD_TARGET));
    GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
    gd.horizontalSpan = 2;
    label.setLayoutData(gd);
    autoButton =
        ControlFactory.createCheckBox(
            group, MakeUIPlugin.getResourceString(MAKE_WORKBENCH_BUILD_AUTO));
    autoButton.addSelectionListener(selectionAdapter);
    autoButton.setSelection(fBuildInfo.isAutoBuildEnable());
    targetAuto = ControlFactory.createTextField(group, SWT.SINGLE | SWT.BORDER);
    targetAuto.setText(
        fBuildInfo.getBuildAttribute(IMakeBuilderInfo.BUILD_TARGET_AUTO, "")); // $NON-NLS-1$
    ((GridData) (targetAuto.getLayoutData())).horizontalAlignment = GridData.FILL;
    ((GridData) (targetAuto.getLayoutData())).grabExcessHorizontalSpace = true;
    addControlAccessibleListener(
        targetAuto, MakeUIPlugin.getResourceString(MAKE_BUILD_AUTO_TARGET));
    autoVariableButton = addVariablesButton(group, targetAuto);
    String noteTitle =
        MakeUIPlugin.getResourceString("SettingsBlock.makeWorkbench.note"); // $NON-NLS-1$
    String noteMessage =
        MakeUIPlugin.getResourceString(
            "SettingsBlock.makeWorkbench.autobuildMessage"); //$NON-NLS-1$
    Composite noteControl =
        createNoteComposite(JFaceResources.getDialogFont(), group, noteTitle, noteMessage);
    gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
    gd.horizontalSpan = 3;
    noteControl.setLayoutData(gd);
    incrButton =
        ControlFactory.createCheckBox(
            group, MakeUIPlugin.getResourceString(MAKE_WORKBENCH_BUILD_INCR));
    incrButton.addSelectionListener(selectionAdapter);
    incrButton.setSelection(fBuildInfo.isIncrementalBuildEnabled());
    targetIncr = ControlFactory.createTextField(group, SWT.SINGLE | SWT.BORDER);
    targetIncr.setText(
        fBuildInfo.getBuildAttribute(IMakeBuilderInfo.BUILD_TARGET_INCREMENTAL, "")); // $NON-NLS-1$
    ((GridData) (targetIncr.getLayoutData())).horizontalAlignment = GridData.FILL;
    ((GridData) (targetIncr.getLayoutData())).grabExcessHorizontalSpace = true;
    addControlAccessibleListener(
        targetIncr, MakeUIPlugin.getResourceString(MAKE_BUILD_INCREMENTAL_TARGET));
    incrVariableButton = addVariablesButton(group, targetIncr);
    cleanButton =
        ControlFactory.createCheckBox(
            group, MakeUIPlugin.getResourceString(MAKE_WORKBENCH_BUILD_CLEAN));
    cleanButton.addSelectionListener(selectionAdapter);
    cleanButton.setSelection(fBuildInfo.isCleanBuildEnabled());
    targetClean = ControlFactory.createTextField(group, SWT.SINGLE | SWT.BORDER);
    targetClean.setText(
        fBuildInfo.getBuildAttribute(IMakeBuilderInfo.BUILD_TARGET_CLEAN, "")); // $NON-NLS-1$
    ((GridData) (targetClean.getLayoutData())).horizontalAlignment = GridData.FILL;
    ((GridData) (targetClean.getLayoutData())).grabExcessHorizontalSpace = true;
    addControlAccessibleListener(
        targetClean, MakeUIPlugin.getResourceString(MAKE_BUILD_CLEAN_TARGET));
    cleanVariableButton = addVariablesButton(group, targetClean);
    selectionAdapter.widgetSelected(null);
  }
  /* (non-Javadoc)
   * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
   */
  @Override
  public void createControl(Composite parent) {
    Composite page = ControlFactory.createComposite(parent, 1);
    //        ((GridData) page.getLayoutData()).grabExcessVerticalSpace = true;
    //        ((GridData) page.getLayoutData()).verticalAlignment = GridData.FILL;

    // Add the profile UI contribution.
    Group profileGroup =
        ControlFactory.createGroup(
            page,
            MakeUIPlugin.getResourceString("ScannerConfigOptionsDialog.profile.group.label"),
            3); //$NON-NLS-1$

    GridData gd = (GridData) profileGroup.getLayoutData();
    gd.grabExcessHorizontalSpace = true;
    //        PixelConverter converter = new PixelConverter(profileGroup);
    //        gd.heightHint = converter.convertVerticalDLUsToPixels(DEFAULT_HEIGHT);
    ((GridLayout) profileGroup.getLayout()).makeColumnsEqualWidth = false;

    // Add bop enabled checkbox
    bopEnabledButton = ControlFactory.createCheckBox(profileGroup, B_ENABLE);
    //        bopEnabledButton.setFont(parent.getFont());
    ((GridData) bopEnabledButton.getLayoutData()).horizontalSpan = 3;
    ((GridData) bopEnabledButton.getLayoutData()).grabExcessHorizontalSpace = true;
    bopEnabledButton.addSelectionListener(
        new SelectionAdapter() {

          @Override
          public void widgetSelected(SelectionEvent e) {
            handleModifyOpenFileText();
          }
        });

    // load label
    Label loadLabel = ControlFactory.createLabel(profileGroup, L_OPEN);
    ((GridData) loadLabel.getLayoutData()).horizontalSpan = 2;

    // load button
    bopLoadButton = ControlFactory.createPushButton(profileGroup, B_LOAD);
    ((GridData) bopLoadButton.getLayoutData()).minimumWidth = 120;
    bopLoadButton.addSelectionListener(
        new SelectionAdapter() {

          @Override
          public void widgetSelected(SelectionEvent event) {
            handleBOPLoadFileButtonSelected();
          }
        });
    if (getContainer().getProject() == null) { // project properties
      bopLoadButton.setVisible(false);
    }

    // text field
    bopOpenFileText = ControlFactory.createTextField(profileGroup, SWT.SINGLE | SWT.BORDER);
    bopOpenFileText.addModifyListener(
        new ModifyListener() {
          @Override
          public void modifyText(ModifyEvent e) {
            handleModifyOpenFileText();
          }
        });
    bopLoadButton.setEnabled(loadButtonInitialEnabled && handleModifyOpenFileText());

    // browse button
    Button browseButton = ControlFactory.createPushButton(profileGroup, B_BROWSE);
    ((GridData) browseButton.getLayoutData()).minimumWidth = 120;
    browseButton.addSelectionListener(
        new SelectionAdapter() {

          @Override
          public void widgetSelected(SelectionEvent event) {
            handleBOPBrowseButtonSelected();
          }

          private void handleBOPBrowseButtonSelected() {
            FileDialog dialog = new FileDialog(getShell(), SWT.NONE);
            dialog.setText(F_OPEN);
            String fileName = getBopOpenFileText();
            IPath filterPath;
            if (fileName.length() == 0 && getContainer().getProject() != null) {
              filterPath = getContainer().getProject().getLocation();
            } else {
              IPath filePath = new Path(fileName);
              filterPath = filePath.removeLastSegments(1).makeAbsolute();
            }
            dialog.setFilterPath(filterPath.toOSString());
            String res = dialog.open();
            if (res == null) {
              return;
            }
            setBopOpenFileText(res);
          }
        });

    // variable button
    addVariablesButton(profileGroup, bopOpenFileText);

    setControl(page);
    // set the shell variable; must be after setControl
    // lock.acquire();
    synchronized (lock) {
      shell = getShell();
      instance = this;
    }
    // lock.release();
    initializeValues();
  }
Exemple #3
0
  protected void createBuildCmdControls(Composite parent) {
    Group group =
        ControlFactory.createGroup(parent, MakeUIPlugin.getResourceString(MAKE_CMD_GROUP), 1);
    GridLayout layout = new GridLayout();
    layout.numColumns = 3;
    layout.makeColumnsEqualWidth = false;
    group.setLayout(layout);
    group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    defButton =
        ControlFactory.createCheckBox(group, MakeUIPlugin.getResourceString(MAKE_CMD_USE_DEFAULT));
    defButton.addSelectionListener(
        new SelectionAdapter() {

          @Override
          public void widgetSelected(SelectionEvent e) {
            if (defButton.getSelection() == true) {
              buildCommand.setEnabled(false);
              argumentVariablesButton.setEnabled(false);
              stopOnErrorButton.setEnabled(true);
              getContainer().updateContainer();
            } else {
              buildCommand.setEnabled(true);
              argumentVariablesButton.setEnabled(true);
              stopOnErrorButton.setEnabled(false);
              getContainer().updateContainer();
            }
          }
        });
    GridData gd = new GridData(GridData.FILL_HORIZONTAL);
    gd.horizontalSpan = 3;
    defButton.setLayoutData(gd);
    Label label = ControlFactory.createLabel(group, MakeUIPlugin.getResourceString(MAKE_CMD_LABEL));
    ((GridData) (label.getLayoutData())).horizontalAlignment = GridData.BEGINNING;
    ((GridData) (label.getLayoutData())).grabExcessHorizontalSpace = false;
    buildCommand = ControlFactory.createTextField(group, SWT.SINGLE | SWT.BORDER);

    ((GridData) (buildCommand.getLayoutData())).horizontalAlignment = GridData.FILL;
    ((GridData) (buildCommand.getLayoutData())).grabExcessHorizontalSpace = true;
    buildCommand.addListener(
        SWT.Modify,
        new Listener() {

          public void handleEvent(Event e) {
            getContainer().updateContainer();
          }
        });
    if (fBuildInfo.getBuildAttribute(IMakeCommonBuildInfo.BUILD_COMMAND, null) != null) {
      StringBuffer cmd =
          new StringBuffer(
              fBuildInfo.getBuildAttribute(IMakeCommonBuildInfo.BUILD_COMMAND, "")); // $NON-NLS-1$
      if (!fBuildInfo.isDefaultBuildCmd()) {
        String args =
            fBuildInfo.getBuildAttribute(IMakeCommonBuildInfo.BUILD_ARGUMENTS, ""); // $NON-NLS-1$
        if (args != null && !args.equals("")) { // $NON-NLS-1$
          cmd.append(" "); // $NON-NLS-1$
          cmd.append(args);
        }
      }
      buildCommand.setText(cmd.toString());
    }
    argumentVariablesButton = addVariablesButton(group, buildCommand);
    if (fBuildInfo.isDefaultBuildCmd()) {
      buildCommand.setEnabled(false);
      argumentVariablesButton.setEnabled(false);
    }
    defButton.setSelection(fBuildInfo.isDefaultBuildCmd());
  }