Example usage for org.eclipse.jface.viewers ComboViewer getControl

List of usage examples for org.eclipse.jface.viewers ComboViewer getControl

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers ComboViewer getControl.

Prototype

@Override
    public Control getControl() 

Source Link

Usage

From source file:org.eclipse.viatra.transformation.debug.ui.views.transformationbrowser.TransformationBrowserConfigurationControl.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {
    final ComboViewer viewer = new ComboViewer(parent, SWT.BORDER | SWT.READ_ONLY);
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new LabelProvider() {
        @Override/*from   w w w .  jav a  2s .c  om*/
        public String getText(Object element) {
            if (element instanceof TransformationViewConfiguration) {
                return element.toString();
            }
            return super.getText(element);
        }
    });

    viewer.setInput(TransformationViewConfiguration.values());
    viewer.setSelection(new StructuredSelection(TransformationViewConfiguration.RULE_BROWSER));
    applyConfligurationSelection(TransformationViewConfiguration.RULE_BROWSER);

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            final ISelection select = event.getSelection();
            if (select instanceof IStructuredSelection) {
                IStructuredSelection selection = (IStructuredSelection) select;
                Object o = selection.getFirstElement();
                if (o instanceof TransformationViewConfiguration) {
                    applyConfligurationSelection((TransformationViewConfiguration) o);
                }
            }
        }
    });
    viewer.getControl()
            .setToolTipText("Select the displayed information regarding running VIATRA transformations");

    return viewer.getControl();
}

From source file:org.eclipse.wb.internal.rcp.model.jface.viewers.ComboViewerInfo.java

License:Open Source License

@Override
public void setObject(Object object) throws Exception {
    // tweak for Control method
    {//  ww w  .  ja v a  2  s  . c  o  m
        ComboViewer viewer = (ComboViewer) object;
        if (viewer.getControl() instanceof org.eclipse.swt.custom.CCombo) {
            getWrapper().setControlMethodName("getCCombo");
        }
    }
    // continue
    super.setObject(object);
}

From source file:org.fusesource.ide.camel.editor.globalconfiguration.dataformat.wizards.pages.DataFormatSelectionPage.java

License:Open Source License

/**
 * @param container/*from  w  ww.  j  av  a2 s  .c o m*/
 */
private void createDataFormatSelectionLine(Composite container) {
    Label l = new Label(container, SWT.NONE);
    l.setText(UIMessages.dataFormatSelectionPage_dataformatLabel);
    l.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false, 1, 1));

    ComboViewer dataformatComboViewer = new ComboViewer(container, SWT.BORDER | SWT.DROP_DOWN | SWT.READ_ONLY);
    dataformatComboViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    dataformatComboViewer.setContentProvider(ArrayContentProvider.getInstance());
    dataformatComboViewer.setLabelProvider(new DataFormatLabelProvider());
    dataformatComboViewer.setComparator(new ViewerComparator());
    dataformatComboViewer.setInput(dfModel.getSupportedDataFormats().toArray());

    dbc.bindValue(ViewerProperties.singleSelection().observe(dataformatComboViewer), PojoProperties
            .value(DataFormatSelectionPage.class, "dataFormatSelected", DataFormat.class).observe(this)); //$NON-NLS-1$
    dataformatComboViewer.setSelection(new StructuredSelection(dataformatComboViewer.getElementAt(0)));
}

From source file:org.fusesource.ide.foundation.ui.form.FormSupport.java

License:Open Source License

protected ComboViewer createBeanPropertyCombo(Composite parent, Object bean, String propertyName,
        String labelText, String tooltip, int flags) {
    createLabel(parent, labelText);/*from ww  w  . j a va  2  s .  c o  m*/
    ComboViewer combo = new ComboViewer(parent, flags);
    combo.setContentProvider(ArrayContentProvider.getInstance());

    IViewerObservableValue comboValue = ViewersObservables.observeSingleSelection(combo);
    Control control = combo.getControl();
    GridData gdata = new GridData(SWT.FILL, SWT.CENTER, true, false);
    gdata.widthHint = 400;
    control.setLayoutData(gdata);

    IValidator validator = null;
    if (isMandatory(bean, propertyName)) {
        if (control instanceof Combo) {
            validator = new MandatoryComboValidator(labelText, (Combo) control);
        } else {
            validator = new MandatoryValidator(labelText);
        }
    }

    Forms.bindBeanProperty(getDataBindingContext(), getMessageManager(), bean, propertyName, validator,
            comboValue, control);

    toolkit.adapt(control, true, true);
    return combo;
}

From source file:org.gumtree.gumnix.sics.ui.widgets.CommandControlWidget.java

License:Open Source License

protected void createUI() {
    /*********************************************************************
     * Initialise/*from w  ww  . j a  v a  2 s .  c  o  m*/
     *********************************************************************/
    GridLayoutFactory.swtDefaults().numColumns(3).spacing(5, 2).applyTo(this);

    /*********************************************************************
     * Construct header
     *********************************************************************/
    final ICommandController commandController = getDataAccessManager().get(commandURI,
            ICommandController.class);

    Composite headerComposite = getToolkit().createComposite(this);
    GridDataFactory.fillDefaults().span(3, 1).applyTo(headerComposite);
    GridLayoutFactory.swtDefaults().numColumns(3).margins(0, 0).applyTo(headerComposite);

    Label label = getToolkit().createLabel(headerComposite, commandController.getId().toUpperCase());
    label.setFont(UIResources.getDefaultFont(SWT.BOLD));

    Label statusLabel = getToolkit().createLabel(headerComposite, "", SWT.CENTER);
    statusLabel.setFont(UIResources.getDefaultFont(SWT.BOLD));
    GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).applyTo(statusLabel);
    uriMap.put(SicsDataAccessUtils.createControllerStatusURI(commandController), statusLabel);

    Button runButton = getToolkit().createButton(headerComposite, "Run", SWT.PUSH);
    runButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            try {
                commandController.asyncExecute();
            } catch (SicsIOException e1) {
                logger.error("Failed to run command" + commandController.getDeviceId(), e1);
            }
        }
    });
    GridDataFactory.swtDefaults().hint(60, 20).applyTo(runButton);

    /*********************************************************************
     * Construct arguments
     *********************************************************************/
    for (IComponentController childController : commandController.getChildControllers()) {
        if (childController instanceof IDynamicController) {
            final IDynamicController controller = (IDynamicController) childController;

            Label argLabel = getToolkit().createLabel(this, "");
            argLabel.setFont(UIResources.getDefaultFont(SWT.BOLD));
            uriMap.put(SicsDataAccessUtils.createControllerIdURI(controller), argLabel);
            GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).applyTo(argLabel);

            URI controllerURI = SicsDataAccessUtils.createControllerURI(controller);
            Label currentLabel = getToolkit().createLabel(this, "", SWT.RIGHT);
            uriMap.put(controllerURI, currentLabel);
            GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).hint(80, SWT.DEFAULT)
                    .applyTo(currentLabel);

            final URI controllerTargetURI = SicsDataAccessUtils.createControllerTargetURI(controller);
            String valuesString = null;
            try {
                valuesString = getDataAccessManager()
                        .get(SicsDataAccessUtils.createControllerValuesURI(controller), String.class);
            } catch (Exception e) {
            }
            if (valuesString != null) {
                final ComboViewer comboViewer = new ComboViewer(this, SWT.NONE);
                comboViewer.setContentProvider(new ArrayContentProvider());
                comboViewer.setLabelProvider(new LabelProvider());
                List<String> values = new ArrayList<String>();
                for (String value : valuesString.split(",")) {
                    values.add(value.trim());
                }
                comboViewer.setInput(values.toArray(new String[values.size()]));
                // Read from selection
                comboViewer.getCombo().addFocusListener(new FocusAdapter() {
                    public void focusLost(FocusEvent e) {
                        String selection = (String) ((IStructuredSelection) comboViewer.getSelection())
                                .getFirstElement();
                        if (selection != null) {
                            String currentValue = getDataAccessManager().get(controllerTargetURI, String.class);
                            // Drive only on change in target
                            if (!selection.equals(currentValue)) {
                                driveDevice(controller, selection);
                            }
                        }
                    }
                });
                // Read from custom text
                comboViewer.getCombo().addKeyListener(new KeyAdapter() {
                    public void keyReleased(KeyEvent e) {
                        if (e.keyCode == SWT.KEYPAD_CR || e.keyCode == SWT.CR) {
                            driveDevice(controller, comboViewer.getCombo().getText());
                        }
                    }
                });
                uriMap.put(controllerTargetURI, comboViewer);
                GridDataFactory.fillDefaults().hint(80, SWT.DEFAULT).applyTo(comboViewer.getControl());
            } else {
                final Text targetText = getToolkit().createText(this, "");
                uriMap.put(SicsDataAccessUtils.createControllerTargetURI(controller), targetText);
                GridDataFactory.fillDefaults().hint(80, SWT.DEFAULT).applyTo(targetText);
                targetText.addKeyListener(new KeyAdapter() {
                    public void keyReleased(KeyEvent e) {
                        if (e.keyCode == SWT.KEYPAD_CR || e.keyCode == SWT.CR) {
                            driveDevice(controller, targetText.getText());
                        }
                    }
                });
            }
        }
    }

    /*********************************************************************
     * Fetch initial values
     *********************************************************************/
    for (Entry<URI, Object> entry : uriMap.entrySet()) {
        URI uri = entry.getKey();
        Object widget = entry.getValue();
        Class<?> representation = String.class;
        if ("status".equals(uri.getQuery())) {
            representation = ControllerStatus.class;
        }
        updateWidgetData(uri, widget, getDataAccessManager().get(uri, representation));
    }

    /*********************************************************************
     * Finalise
     *********************************************************************/
    getParent().layout(true, true);
}

From source file:org.gumtree.workflow.ui.viewer.TaskToolbar.java

License:Open Source License

public void createControl(Composite parent) {
    /*********************************************************************
     * Initialise//from ww  w.j  av a2  s .  c  o  m
     *********************************************************************/
    resourceManager = new UIResourceManager(Activator.PLUGIN_ID, parent);
    handCursor = UIResources.getSystemCursor(SWT.CURSOR_HAND);
    searchPattern = new SearchPattern();

    SashForm sashForm = new SashForm(parent, SWT.VERTICAL);
    getToolkit().adapt(sashForm);
    Composite composite = getToolkit().createComposite(sashForm);
    GridLayoutFactory.swtDefaults().numColumns(2).applyTo(composite);

    /*********************************************************************
     * Row 1 - filter text
     *********************************************************************/
    filterText = getToolkit().createText(composite, DEFAULT_FILTER_TEXT, SWT.NONE);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(filterText);

    Label clearButton = getToolkit().createLabel(composite, "");
    clearButton.setImage(InternalImage.CLEAR_EDIT.getImage());
    clearButton.setCursor(handCursor);

    /*********************************************************************
     * Row 2 - tag filter
     *********************************************************************/
    final ComboViewer comboViewer = new ComboViewer(composite, SWT.READ_ONLY);
    comboViewer.getCombo().setVisibleItemCount(25);
    comboViewer.setContentProvider(new ArrayContentProvider());
    comboViewer.setLabelProvider(new LabelProvider() {
        public String getText(Object element) {
            // Replace first letter to upper case
            return element.toString().substring(0, 1).toUpperCase() + element.toString().substring(1);
        }
    });
    List<String> tags = new ArrayList<String>(Arrays.asList(getTaskRegistry().getAvailableTags()));
    tags.add(0, "All");
    comboViewer.setInput(tags);
    GridDataFactory.fillDefaults().grab(true, false).span(2, 1).applyTo(comboViewer.getControl());

    /*********************************************************************
     * Row 3 - task viewer
     *********************************************************************/
    taskViewer = new TableViewer(composite, SWT.V_SCROLL | SWT.BORDER);
    //      taskViewer.getTable().setFont(resourceManager.createFont(SWT.BOLD));
    taskViewer.setContentProvider(new ArrayContentProvider());
    taskViewer.setLabelProvider(new LabelProvider() {
        public Image getImage(Object element) {
            return ((ITaskDescriptor) element).getIcon();
        }

        public String getText(Object element) {
            return " " + ((ITaskDescriptor) element).getLabel();
        }
    });
    taskViewer.setSorter(new ViewerSorter() {
        public int compare(Viewer viewer, Object e1, Object e2) {
            return ((ITaskDescriptor) e1).getLabel().compareTo(((ITaskDescriptor) e2).getLabel());
        }
    });
    taskViewer.addDragSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() },
            new DragSourceAdapter() {
                public void dragFinished(DragSourceEvent event) {
                    LocalSelectionTransfer.getTransfer().setSelection(null);
                }

                public void dragSetData(DragSourceEvent event) {
                    if (LocalSelectionTransfer.getTransfer().isSupportedType(event.dataType)) {
                        LocalSelectionTransfer.getTransfer().setSelection(taskViewer.getSelection());
                    }
                }

            });
    GridDataFactory.fillDefaults().grab(true, true).span(2, 1).applyTo(taskViewer.getControl());

    /*********************************************************************
     * Row 4 - task description
     *********************************************************************/
    descForm = getToolkit().createScrolledForm(sashForm);
    GridLayoutFactory.swtDefaults().margins(0, 0).spacing(0, 0).applyTo(descForm.getBody());

    taskLabel = new CLabel(descForm.getBody(), SWT.WRAP);
    getToolkit().adapt(taskLabel);
    taskLabel.setFont(resourceManager.createDefaultFont(10, SWT.BOLD));
    GridDataFactory.fillDefaults().grab(true, false).hint(SWT.DEFAULT, 32).applyTo(taskLabel);

    descText = getToolkit().createFormText(descForm.getBody(), false);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(descText);
    sashForm.setWeights(new int[] { 3, 1 });

    /*********************************************************************
     * Widget logic
     *********************************************************************/
    // Ensure default filter text is highlighted
    filterText.addMouseListener(new MouseAdapter() {
        public void mouseDown(MouseEvent e) {
            if (filterText.getText() != null && filterText.getText().equals(DEFAULT_FILTER_TEXT)) {
                filterText.selectAll();
            }
        }
    });

    // Clear filter text
    clearButton.addMouseListener(new MouseAdapter() {
        public void mouseDown(MouseEvent e) {
            filterText.setText("");
        }
    });

    // Append new task based on double click
    taskViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            ITaskDescriptor desc = (ITaskDescriptor) ((IStructuredSelection) taskViewer.getSelection())
                    .getFirstElement();
            addNewTask(desc);
        }
    });

    // Update description based on selection
    taskViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            ITaskDescriptor desc = (ITaskDescriptor) ((IStructuredSelection) event.getSelection())
                    .getFirstElement();
            updateTaskDescription(desc, taskLabel, descText);
            // To ensure the form text wraps
            GridDataFactory.fillDefaults().grab(true, true).hint(descForm.getSize().x, SWT.DEFAULT)
                    .applyTo(descText);
            descForm.layout(true, true);
            descForm.reflow(true);
        }
    });

    filterText.addModifyListener(new ModifyListener() {
        public void modifyText(ModifyEvent e) {
            String tag = (String) ((IStructuredSelection) comboViewer.getSelection()).getFirstElement();
            setTasks(tag, filterText.getText());
        }
    });

    // Apply filter on tag
    comboViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            String tag = (String) ((IStructuredSelection) event.getSelection()).getFirstElement();
            setTasks(tag, filterText.getText());
        }
    });

    /*********************************************************************
     * Initialise widget value
     *********************************************************************/
    comboViewer.getCombo().select(0);
    taskViewer.setInput(taskRegistry.getAllTaskDescriptors());
}

From source file:org.gumtree.workflow.ui.views.ParametersBasedTaskView.java

License:Open Source License

public void createPartControl(final Composite parent) {
    Realm.runWithDefault(SWTObservables.getRealm(Display.getDefault()), new Runnable() {
        public void run() {
            DataBindingContext bindingContext = new DataBindingContext();
            GridLayoutFactory.swtDefaults().numColumns(3).applyTo(parent);
            for (Entry<String, Object> entry : parameters.entrySet()) {
                if (entry.getValue() instanceof Number || entry.getValue() instanceof String) {
                    // Support number and text
                    createLabel(parent, entry.getKey());

                    Text text = getToolkit().createText(parent, "");

                    if (units.containsKey(entry.getKey())) {
                        GridDataFactory.fillDefaults().grab(true, false).applyTo(text);
                        getToolkit().createLabel(parent, " " + units.get(entry.getKey()));
                    } else {
                        GridDataFactory.fillDefaults().grab(true, false).span(2, 0).applyTo(text);
                    }/*  w ww .  j  ava 2s  .c  o m*/

                    bindingContext.bindValue(SWTObservables.observeText(text, SWT.Modify),
                            ParametersObservables.observeValue(parameters, entry.getKey()),
                            new UpdateValueStrategy(), new UpdateValueStrategy());
                } else if (entry.getValue().getClass().isEnum()) {
                    // Support enum
                    createLabel(parent, entry.getKey());

                    ComboViewer comboViewer = new ComboViewer(parent, SWT.READ_ONLY);
                    comboViewer.setContentProvider(new ArrayContentProvider());
                    comboViewer.setLabelProvider(new LabelProvider());
                    comboViewer.setInput(entry.getValue().getClass().getEnumConstants());

                    GridDataFactory.fillDefaults().grab(true, false).span(2, 0)
                            .applyTo(comboViewer.getControl());
                    bindingContext.bindValue(SWTObservables.observeSelection(comboViewer.getControl()),
                            ParametersObservables.observeValue(parameters, entry.getKey()),
                            new UpdateValueStrategy(), new UpdateValueStrategy());
                }
            }
        }
    });
}

From source file:org.jboss.tools.openshift.express.internal.ui.wizard.ssh.NewSSHKeyWizardPage.java

License:Open Source License

@Override
protected void doCreateControls(Composite parent, DataBindingContext dbc) {
    GridLayoutFactory.fillDefaults().margins(10, 10).applyTo(parent);

    Group newSSHKeyGroup = new Group(parent, SWT.NONE);
    newSSHKeyGroup.setText("New SSH Key");
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).applyTo(newSSHKeyGroup);
    GridLayoutFactory.fillDefaults().numColumns(4).margins(6, 6).applyTo(newSSHKeyGroup);

    Label nameLabel = new Label(newSSHKeyGroup, SWT.NONE);
    nameLabel.setText("Name:");
    GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(nameLabel);

    Text nameText = new Text(newSSHKeyGroup, SWT.BORDER);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(3, 1).applyTo(nameText);
    Binding nameBinding = ValueBindingBuilder.bind(WidgetProperties.text(SWT.Modify).observe(nameText))
            .validatingAfterConvert(new SSHPublicKeyNameValidator(pageModel))
            .to(BeanProperties.value(NewSSHKeyWizardPageModel.PROPERTY_NAME).observe(pageModel))
            .notUpdatingParticipant().in(dbc);
    ControlDecorationSupport.create(nameBinding, SWT.LEFT | SWT.TOP, null,
            new RequiredControlDecorationUpdater());

    Label typeLabel = new Label(newSSHKeyGroup, SWT.NONE);
    typeLabel.setText("Key Type:");
    GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(typeLabel);

    ComboViewer typeCombo = new ComboViewer(newSSHKeyGroup, SWT.READ_ONLY);
    typeCombo.setContentProvider(ArrayContentProvider.getInstance());
    typeCombo.setInput(SSHKeyType.values());
    GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(typeCombo.getControl());
    ValueBindingBuilder.bind(ViewerProperties.singleSelection().observe(typeCombo))
            .to(BeanProperties.value(NewSSHKeyWizardPageModel.PROPERTY_TYPE).observe(pageModel)).in(dbc);

    Label fillerLabel = new Label(newSSHKeyGroup, SWT.NONE);
    GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).span(2, 1).applyTo(fillerLabel);

    Label ssh2HomeLabel = new Label(newSSHKeyGroup, SWT.NONE);
    GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(ssh2HomeLabel);
    ssh2HomeLabel.setText("SSH2 Home:");

    Text ssh2HomeText = new Text(newSSHKeyGroup, SWT.BORDER);
    ssh2HomeText.setEditable(false);/* w ww  . ja  v a  2 s.  c o m*/
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).applyTo(ssh2HomeText);
    Binding ssh2HomeBinding = ValueBindingBuilder.bind(WidgetProperties.text(SWT.Modify).observe(ssh2HomeText))
            .validatingAfterConvert(new DirectoryValidator("ssh2 home directory"))
            .to(BeanProperties.value(NewSSHKeyWizardPageModel.PROPERTY_SSH2_HOME).observe(pageModel)).in(dbc);
    ControlDecorationSupport.create(ssh2HomeBinding, SWT.LEFT | SWT.TOP, null,
            new RequiredControlDecorationUpdater());

    Button ssh2HomeBrowseButton = new Button(newSSHKeyGroup, SWT.PUSH);
    ssh2HomeBrowseButton.setText("Browse...");
    ssh2HomeBrowseButton.addSelectionListener(onBrowse(ssh2HomeText));
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).applyTo(ssh2HomeBrowseButton);

    Button defaultSSH2HomeHomeButton = new Button(newSSHKeyGroup, SWT.CHECK);
    defaultSSH2HomeHomeButton.setText("Default");
    defaultSSH2HomeHomeButton.addSelectionListener(onDefault(ssh2HomeText, ssh2HomeBrowseButton));
    defaultSSH2HomeHomeButton.setSelection(true);
    updateSSH2HomeWidgets(true, ssh2HomeText, ssh2HomeBrowseButton);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).applyTo(ssh2HomeBrowseButton);

    Label privateKeyLabel = new Label(newSSHKeyGroup, SWT.NONE);
    GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(privateKeyLabel);
    privateKeyLabel.setText("Private Key:");

    Text privateKeyText = new Text(newSSHKeyGroup, SWT.BORDER);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(3, 1)
            .applyTo(privateKeyText);
    Binding privateKeyBinding = ValueBindingBuilder
            .bind(WidgetProperties.text(SWT.Modify).observe(privateKeyText))
            .validatingAfterConvert(new FileNameValidator())
            .to(BeanProperties.value(NewSSHKeyWizardPageModel.PROPERTY_PRIVATEKEY_FILENAME).observe(pageModel))
            .in(dbc);
    ControlDecorationSupport.create(privateKeyBinding, SWT.LEFT | SWT.TOP, null,
            new RequiredControlDecorationUpdater());

    Label passphraseLabel = new Label(newSSHKeyGroup, SWT.NONE);
    GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(passphraseLabel);
    passphraseLabel.setText("Private Key Passphrase:");

    Text passphraseText = new Text(newSSHKeyGroup, SWT.BORDER | SWT.PASSWORD);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(3, 1)
            .applyTo(passphraseText);
    ValueBindingBuilder.bind(WidgetProperties.text(SWT.Modify).observe(passphraseText)).to(
            BeanProperties.value(NewSSHKeyWizardPageModel.PROPERTY_PRIVATEKEY_PASSPHRASE).observe(pageModel))
            .in(dbc);

    Label publicKeyLabel = new Label(newSSHKeyGroup, SWT.NONE);
    GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(publicKeyLabel);
    publicKeyLabel.setText("Public Key:");

    Text publicKeyText = new Text(newSSHKeyGroup, SWT.BORDER);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(3, 1)
            .applyTo(publicKeyText);
    Binding publicKeyBinding = ValueBindingBuilder
            .bind(WidgetProperties.text(SWT.Modify).observe(publicKeyText))
            .validatingAfterConvert(new FileNameValidator())
            .to(BeanProperties.value(NewSSHKeyWizardPageModel.PROPERTY_PUBLICKEY_FILENAME).observe(pageModel))
            .in(dbc);
    ControlDecorationSupport.create(publicKeyBinding, SWT.LEFT | SWT.TOP, null,
            new RequiredControlDecorationUpdater());

    Link sshPrefsLink = new Link(parent, SWT.NONE);
    sshPrefsLink.setText(
            "The private key of your new SSH key pair will get added to the \n<a>SSH2 Preferences</a>");
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).applyTo(sshPrefsLink);
    sshPrefsLink.addSelectionListener(onSshPrefs());

}

From source file:org.jboss.tools.openshift.internal.ui.handler.EditResourceLimitsPage.java

License:Open Source License

private void createResourceWidgets(String label, String property, String[] suffixes, String[] labels,
        Group parent, DataBindingContext dbc) {
    // label//from   w w  w.j  a  v a 2s  .c  o  m
    Label labelComp = new Label(parent, SWT.NONE);
    labelComp.setText(label);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).applyTo(labelComp);

    // value text
    Text text = new Text(parent, SWT.BORDER);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, false).applyTo(text);

    // unit combo
    ComboViewer combo = new ComboViewer(parent);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).hint(140, SWT.DEFAULT)
            .applyTo(combo.getControl());
    combo.setContentProvider(ArrayContentProvider.getInstance());
    combo.setInput(suffixes);
    combo.setLabelProvider(new LabelProvider() {

        @Override
        public String getText(Object element) {
            return getLabelForSuffix(element, suffixes, labels);
        }

        private String getLabelForSuffix(Object element, String[] suffixes, String[] labels) {
            String label = (String) element;
            for (int i = 0; i < suffixes.length; ++i) {
                if (element.equals(suffixes[i])) {
                    label = labels[i];
                    break;
                }
            }
            return label;
        }
    });

    IObservableValue<String> valueObservable = WidgetProperties.text(SWT.Modify).observe(text);
    IObservableValue<String> selectedUnitObservable = ViewerProperties.singleSelection().observe(combo);
    IObservableValue<IContainer> master = BeanProperties.value(EditResourceLimitsPageModel.SELECTED_CONTAINER)
            .observe(model);
    ValueBindingBuilder.bind(valueObservable)
            .validatingAfterGet(new NumericValidator("integer", Integer::parseInt))
            .converting(new AggregatingConverter(selectedUnitObservable, true))
            .to(PojoProperties.value(property).observeDetail(master))
            .converting(new KeywordConverter(suffixes, true)).in(dbc);
    ValueBindingBuilder.bind(selectedUnitObservable)
            .converting(new AggregatingConverter(valueObservable, false))
            .to(PojoProperties.value(property).observeDetail(master))
            .converting(new KeywordConverter(suffixes, false)).in(dbc);
}

From source file:org.jboss.tools.openshift.internal.ui.server.OpenShiftServerEditorSection.java

License:Open Source License

private SelectionListener onNewConnection(ComboViewer connectionViewer) {
    return new SelectionAdapter() {

        @Override//w ww .j  a  va 2s  .  c  o  m
        public void widgetSelected(SelectionEvent e) {
            Connection connection = UIUtils.getFirstElement(connectionViewer.getSelection(), Connection.class);
            ConnectionWizard wizard = new ConnectionWizard(connection);
            if (WizardUtils.openWizardDialog(wizard, connectionViewer.getControl().getShell()) == Window.OK) {
                connectionViewer.getControl().setEnabled(true);
                connectionViewer.setInput(ConnectionsRegistrySingleton.getInstance().getAll());
                final Connection selectedConnection = ConnectionsRegistrySingleton.getInstance()
                        .getRecentConnection(Connection.class);
                model.setConnection(selectedConnection);
            }
        }
    };
}