Example usage for org.eclipse.jface.databinding.viewers ViewerProperties singleSelection

List of usage examples for org.eclipse.jface.databinding.viewers ViewerProperties singleSelection

Introduction

In this page you can find the example usage for org.eclipse.jface.databinding.viewers ViewerProperties singleSelection.

Prototype

public static IViewerValueProperty singleSelection() 

Source Link

Document

Returns a value property for observing the single selection of a ISelectionProvider .

Usage

From source file:org.jboss.tools.openshift.internal.ui.wizard.importapp.BuildConfigWizardPage.java

License:Open Source License

@Override
protected void doCreateControls(Composite parent, DataBindingContext dbc) {
    GridDataFactory.fillDefaults().grab(true, true).align(SWT.FILL, SWT.FILL).applyTo(parent);
    GridLayoutFactory.fillDefaults().applyTo(parent);

    Group buildConfigsGroup = new Group(parent, SWT.NONE);
    buildConfigsGroup.setText("Existing Build Configs:");
    GridLayoutFactory.fillDefaults().numColumns(2).margins(10, 10).applyTo(buildConfigsGroup);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).applyTo(buildConfigsGroup);

    // build configs tree
    TreeViewer buildConfigsViewer = createBuildConfigsViewer(
            new Tree(buildConfigsGroup, SWT.BORDER | SWT.SINGLE | SWT.V_SCROLL | SWT.H_SCROLL), model, dbc);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).hint(SWT.DEFAULT, 200).span(1, 2)
            .applyTo(buildConfigsViewer.getControl());
    final IObservableValue selectedItem = BeanProperties.value(IBuildConfigPageModel.PROPERTY_SELECTED_ITEM)
            .observe(model);/*from   w  w w .  j  av  a 2 s.c om*/
    Binding selectedBuildConfigBinding = ValueBindingBuilder
            .bind(ViewerProperties.singleSelection().observe(buildConfigsViewer))
            .converting(new ObservableTreeItem2ModelConverter()).to(selectedItem)
            .converting(new Model2ObservableTreeItemConverter()).in(dbc);
    dbc.addValidationStatusProvider(new MultiValidator() {

        @Override
        protected IStatus validate() {
            if (!(selectedItem.getValue() instanceof IBuildConfig)) {
                return ValidationStatus
                        .cancel("Please select the existing build config that you want to import");
            } else {
                return ValidationStatus.ok();
            }
        }
    });
    IObservableValue connectionObservable = BeanProperties.value(IBuildConfigPageModel.PROPERTY_CONNECTION)
            .observe(model);
    DataBindingUtils.addDisposableValueChangeListener(onConnectionChanged(buildConfigsViewer, model),
            connectionObservable, buildConfigsViewer.getTree());

    ControlDecorationSupport.create(selectedBuildConfigBinding, SWT.LEFT | SWT.TOP, null,
            new RequiredControlDecorationUpdater(true));

    // refresh button
    Button refreshButton = new Button(buildConfigsGroup, SWT.PUSH);
    refreshButton.setText("&Refresh");
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).hint(100, SWT.DEFAULT).applyTo(refreshButton);
    refreshButton.addSelectionListener(onRefresh(buildConfigsViewer, model));

    // filler
    Label fillerLabel = new Label(buildConfigsGroup, SWT.NONE);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(false, true).applyTo(fillerLabel);

    // details
    ExpandableComposite expandable = new ExpandableComposite(buildConfigsGroup, SWT.None);
    GridDataFactory.fillDefaults().span(2, 1).align(SWT.FILL, SWT.FILL).grab(true, false).hint(SWT.DEFAULT, 150)
            .applyTo(expandable);
    expandable.setText("Build config Details");
    expandable.setExpanded(true);
    GridLayoutFactory.fillDefaults().numColumns(2).margins(0, 0).spacing(0, 0).applyTo(expandable);
    GridDataFactory.fillDefaults().span(2, 1).align(SWT.FILL, SWT.FILL).grab(true, false).hint(SWT.DEFAULT, 150)
            .applyTo(expandable);
    Composite detailsContainer = new Composite(expandable, SWT.NONE);
    GridDataFactory.fillDefaults().span(2, 1).align(SWT.FILL, SWT.FILL).grab(true, false).hint(SWT.DEFAULT, 150)
            .applyTo(detailsContainer);
    IObservableValue selectedService = new WritableValue();
    ValueBindingBuilder.bind(selectedItem).to(selectedService).notUpdatingParticipant().in(dbc);
    new BuildConfigDetailViews(selectedService, detailsContainer, dbc).createControls();
    expandable.setClient(detailsContainer);
    expandable.addExpansionListener(new IExpansionListener() {
        @Override
        public void expansionStateChanging(ExpansionEvent e) {
        }

        @Override
        public void expansionStateChanged(ExpansionEvent e) {
            buildConfigsGroup.update();
            buildConfigsGroup.layout(true);
        }
    });

    loadBuildConfigs(model);
}

From source file:org.jboss.tools.openshift.internal.ui.wizard.newapp.ApplicationSourceListPage.java

License:Open Source License

private IObservableValue createServerTemplateControls(TabFolder tabFolder,
        TabFolderTraverseListener tabFolderTraverseListener, IObservableValue uploadTemplate,
        DataBindingContext dbc) {/*from   w ww  . j  a  va 2 s . c o  m*/

    TabItem serverTemplatesTab = new TabItem(tabFolder, SWT.NONE);
    serverTemplatesTab.setText("Server application source");

    Composite parent = new Composite(tabFolder, SWT.NONE);
    GridLayoutFactory.fillDefaults().margins(10, 6).spacing(2, 2).applyTo(parent);

    serverTemplatesTab.setControl(parent);

    // filter text
    final Text txtTemplateFilter = UIUtils.createSearchText(parent);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).applyTo(txtTemplateFilter);

    IObservableValue eclipseProjectObservable = BeanProperties
            .value(IApplicationSourceListPageModel.PROPERTY_ECLIPSE_PROJECT).observe(model);
    DataBindingUtils.addDisposableValueChangeListener(new IValueChangeListener() {

        @Override
        public void handleValueChange(ValueChangeEvent event) {
            filterTemplates(txtTemplateFilter,
                    (org.eclipse.core.resources.IProject) event.getObservableValue().getValue());
        }
    }, eclipseProjectObservable, txtTemplateFilter);

    filterTemplates(txtTemplateFilter, model.getEclipseProject());

    // the list of templates
    this.templatesViewer = createServerTemplatesViewer(parent, txtTemplateFilter);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).hint(400, 180)
            .applyTo(templatesViewer.getControl());

    IObservableValue selectedViewerServerTemplate = ViewerProperties.singleSelection().observe(templatesViewer);
    ValueBindingBuilder.bind(selectedViewerServerTemplate)
            .converting(new ObservableTreeItem2ModelConverter(IApplicationSource.class))
            .to(BeanProperties.value(IApplicationSourceListPageModel.PROPERTY_SERVER_APP_SOURCE).observe(model))
            .converting(new Model2ObservableTreeItemConverter(ApplicationSourceTreeItems.INSTANCE)).in(dbc);

    templatesViewer.addDoubleClickListener(onServerTemplateDoubleClicked());

    txtTemplateFilter.addModifyListener(onFilterTextTyped(templatesViewer));

    tabFolderTraverseListener.bindTabControls(tabFolder.getItemCount() - 1, txtTemplateFilter,
            templatesViewer.getTree());
    return selectedViewerServerTemplate;
}

From source file:org.jboss.tools.openshift.internal.ui.wizard.newapp.fromtemplate.TemplateParametersPage.java

License:Open Source License

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

    // parameters table
    Composite tableContainer = new Composite(container, SWT.NONE);
    IObservableList<IParameter> parametersObservable = BeanProperties
            .list(ITemplateParametersPageModel.PROPERTY_PARAMETERS).observe(model);
    this.viewer = createTable(tableContainer, parametersObservable, dbc);
    GridDataFactory.fillDefaults().span(1, 5).align(SWT.FILL, SWT.FILL).grab(true, true).hint(500, 300)
            .applyTo(tableContainer);//  ww w . jav  a  2 s.c o m
    viewer.setInput(parametersObservable);
    IObservableValue<IParameter> selectedParameter = BeanProperties
            .value(ITemplateParametersPageModel.PROPERTY_SELECTED_PARAMETER).observe(model);
    ValueBindingBuilder.bind(ViewerProperties.singleSelection().observe(viewer)).to(selectedParameter).in(dbc);
    viewer.addDoubleClickListener(onDoubleClick());

    // edit button
    Button editExistingButton = new Button(container, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(editExistingButton);
    editExistingButton.setText("Edit...");
    UIUtils.setDefaultButtonWidth(editExistingButton);
    editExistingButton.addSelectionListener(onEdit());
    ValueBindingBuilder.bind(WidgetProperties.enabled().observe(editExistingButton)).notUpdatingParticipant()
            .to(selectedParameter).converting(new IsNotNull2BooleanConverter()).in(dbc);

    // reset button
    Button resetButton = new Button(container, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(resetButton);
    resetButton.setText("Reset");
    UIUtils.setDefaultButtonWidth(resetButton);
    resetButton.addSelectionListener(onReset());
    ValueBindingBuilder.bind(WidgetProperties.enabled().observe(resetButton)).notUpdatingParticipant()
            .to(selectedParameter).converting(new IsNotNull2BooleanConverter() {
                @Override
                public Object convert(Object fromObject) {
                    return fromObject instanceof IParameter && ((ApplicationSourceFromTemplateModel) model)
                            .isParameterModified((IParameter) fromObject);
                }
            }).in(dbc);

    // reset all button
    Button resetAllButton = new Button(container, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(resetAllButton);
    resetAllButton.setText("Reset All");
    UIUtils.setDefaultButtonWidth(resetAllButton);
    resetAllButton.addSelectionListener(onResetAll());
    ValueBindingBuilder.bind(WidgetProperties.enabled().observe(resetAllButton)).notUpdatingParticipant()
            .to(selectedParameter).converting(new IsNotNull2BooleanConverter() {
                @Override
                public Object convert(Object fromObject) {
                    return model.getParameters().stream()
                            .anyMatch(p -> ((ApplicationSourceFromTemplateModel) model).isParameterModified(p));
                }
            }).in(dbc);

    // required explanation
    Label requiredExplanationLabel = new Label(container, SWT.None);
    requiredExplanationLabel
            .setText("* = value required, click the 'Edit...' button or double-click on a value to edit it.");
    GridDataFactory.fillDefaults().grab(true, false).align(SWT.FILL, SWT.FILL).span(2, 1)
            .applyTo(requiredExplanationLabel);

    // selected parameter details
    final Group detailsContainer = new Group(container, SWT.NONE);
    detailsContainer.setText("Details");
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).span(2, 1).hint(SWT.DEFAULT, 106)
            .applyTo(detailsContainer);
    new TemplateParameterDetailViews(selectedParameter, detailsContainer, dbc).createControls();
    ((ApplicationSourceFromTemplateModel) model).addPropertyChangeListener(new PropertyChangeListener() {
        @Override
        public void propertyChange(PropertyChangeEvent evt) {
            if (ApplicationSourceFromTemplateModel.PROPERTY_MODIFIED_PARAMETER.equals(evt.getPropertyName())) {
                viewer.refresh(evt.getNewValue());
            }
        }
    });
}

From source file:org.jboss.tools.openshift.internal.ui.wizard.newapp.ResourceLabelsPage.java

License:Open Source License

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

    Group labelsGroup = new Group(container, SWT.NONE);
    labelsGroup.setText("Labels");
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).applyTo(labelsGroup);
    GridLayoutFactory.fillDefaults().numColumns(2).margins(6, 6).applyTo(labelsGroup);
    Composite tableContainer = new Composite(labelsGroup, SWT.NONE);

    this.viewer = createTable(tableContainer);
    GridDataFactory.fillDefaults().span(1, 5).align(SWT.FILL, SWT.FILL).grab(true, true)
            .applyTo(tableContainer);//from  ww  w. java2 s  . c  om
    ValueBindingBuilder.bind(ViewerProperties.singleSelection().observe(viewer))
            .to(BeanProperties.value(IResourceLabelsPageModel.PROPERTY_SELECTED_LABEL).observe(model)).in(dbc);
    viewer.setContentProvider(new ObservableListContentProvider());
    viewer.setInput(BeanProperties.list(IResourceLabelsPageModel.PROPERTY_LABELS).observe(model));

    Button addButton = new Button(labelsGroup, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(addButton);
    addButton.setText("Add");
    addButton.addSelectionListener(onAdd());

    Button editExistingButton = new Button(labelsGroup, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(editExistingButton);
    editExistingButton.setText("Edit");
    editExistingButton.addSelectionListener(onEdit());
    ValueBindingBuilder.bind(WidgetProperties.enabled().observe(editExistingButton)).notUpdatingParticipant()
            .to(BeanProperties.value(IResourceLabelsPageModel.PROPERTY_SELECTED_LABEL).observe(model))
            .converting(new IsNotNullOrReadOnlyBooleanConverter()).in(dbc);

    Button removeButton = new Button(labelsGroup, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(removeButton);
    removeButton.setText("Remove");
    removeButton.addSelectionListener(onRemove());
    ValueBindingBuilder.bind(WidgetProperties.enabled().observe(removeButton)).notUpdatingParticipant()
            .to(BeanProperties.value(IResourceLabelsPageModel.PROPERTY_SELECTED_LABEL).observe(model))
            .converting(new IsNotNullOrReadOnlyBooleanConverter()).in(dbc);
}

From source file:org.jboss.tools.openshift.internal.ui.wizard.newapp.TemplateListPage.java

License:Open Source License

private void createProjectControls(Composite parent, DataBindingContext dbc) {
    Label projectLabel = new Label(parent, SWT.NONE);
    projectLabel.setText("OpenShift project: ");
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).applyTo(projectLabel);

    StructuredViewer projectsViewer = new ComboViewer(parent);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false)
            .applyTo(projectsViewer.getControl());

    projectsViewer.setContentProvider(new ObservableListContentProvider());
    projectsViewer.setLabelProvider(new ObservableTreeItemLabelProvider());
    projectsViewer.setInput(BeanProperties.list(ITemplateListPageModel.PROPERTY_PROJECT_ITEMS).observe(model));

    IObservableValue selectedProjectObservable = ViewerProperties.singleSelection().observe(projectsViewer);
    Binding selectedProjectBinding = ValueBindingBuilder.bind(selectedProjectObservable)
            .converting(new ObservableTreeItem2ModelConverter(IProject.class))
            .validatingAfterConvert(new IValidator() {

                @Override/*from  w w  w.  j  a  va2 s  .  c o m*/
                public IStatus validate(Object value) {
                    if (value instanceof IProject) {
                        return ValidationStatus.ok();
                    }
                    return ValidationStatus.cancel("Please choose an OpenShift project.");
                }
            }).to(BeanProperties.value(ITemplateListPageModel.PROPERTY_PROJECT).observe(model))
            .converting(new Model2ObservableTreeItemConverter(TemplateTreeItems.INSTANCE)).in(dbc);
    ControlDecorationSupport.create(selectedProjectBinding, SWT.LEFT | SWT.TOP, null,
            new RequiredControlDecorationUpdater(true));

    BeanProperties.value(ITemplateListPageModel.PROPERTY_CONNECTION).observe(model)
            .addValueChangeListener(onConnectionChanged());

    StyledText manageProjectsLink = StyledTextUtils.emulateLinkWidget("<a>Manage Projects</a>",
            new StyledText(parent, SWT.WRAP));
    GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).indent(8, 0).applyTo(manageProjectsLink);
    StyledTextUtils.emulateLinkAction(manageProjectsLink, r -> onManageProjectsClicked());

    Label filler = new Label(parent, SWT.NONE);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).span(3, 1).applyTo(filler);
}

From source file:org.jboss.tools.openshift.internal.ui.wizard.newapp.TemplateListPage.java

License:Open Source License

private IObservableValue createServerTemplateControls(TabFolder tabFolder, IObservableValue uploadTemplate,
        DataBindingContext dbc) {//from ww w  . j  av  a  2s . co m

    TabItem serverTemplatesTab = new TabItem(tabFolder, SWT.NONE);
    serverTemplatesTab.setText("Server templates");

    Composite parent = new Composite(tabFolder, SWT.NONE);
    GridLayoutFactory.fillDefaults().margins(10, 6).spacing(2, 2).applyTo(parent);

    serverTemplatesTab.setControl(parent);

    // filter text
    final Text txtTemplateFilter = UIUtils.createSearchText(parent);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).applyTo(txtTemplateFilter);

    IObservableValue eclipseProjectObservable = BeanProperties
            .value(ITemplateListPageModel.PROPERTY_ECLIPSE_PROJECT).observe(model);
    eclipseProjectObservable.addValueChangeListener(new IValueChangeListener() {

        @Override
        public void handleValueChange(ValueChangeEvent event) {
            filterTemplates(txtTemplateFilter,
                    (org.eclipse.core.resources.IProject) event.getObservableValue().getValue());
        }
    });

    filterTemplates(txtTemplateFilter, model.getEclipseProject());

    // the list of templates
    this.templatesViewer = createServerTemplatesViewer(parent, txtTemplateFilter);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).hint(400, 180)
            .applyTo(templatesViewer.getControl());

    IObservableValue selectedViewerServerTemplate = ViewerProperties.singleSelection().observe(templatesViewer);
    ValueBindingBuilder.bind(selectedViewerServerTemplate)
            .converting(new ObservableTreeItem2ModelConverter(ITemplate.class))
            .to(BeanProperties.value(ITemplateListPageModel.PROPERTY_SERVER_TEMPLATE).observe(model))
            .converting(new Model2ObservableTreeItemConverter(TemplateTreeItems.INSTANCE)).in(dbc);

    templatesViewer.addDoubleClickListener(onServerTemplateDoubleClicked());

    txtTemplateFilter.addModifyListener(onFilterTextTyped(templatesViewer));

    return selectedViewerServerTemplate;
}

From source file:org.jboss.tools.openshift.internal.ui.wizard.newapp.TemplateParametersPage.java

License:Open Source License

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

    // parameters table
    Composite tableContainer = new Composite(container, SWT.NONE);
    IObservableList<IParameter> parametersObservable = BeanProperties
            .list(ITemplateParametersPageModel.PROPERTY_PARAMETERS).observe(model);
    this.viewer = createTable(tableContainer, parametersObservable, dbc);
    GridDataFactory.fillDefaults().span(1, 5).align(SWT.FILL, SWT.FILL).grab(true, true).hint(500, 300)
            .applyTo(tableContainer);//from  ww w .ja va 2  s  .  c om
    IObservableValue<IParameter> selectedParameter = BeanProperties
            .value(ITemplateParametersPageModel.PROPERTY_SELECTED_PARAMETER).observe(model);
    ValueBindingBuilder.bind(ViewerProperties.singleSelection().observe(viewer)).to(selectedParameter).in(dbc);
    viewer.setInput(parametersObservable);
    viewer.addDoubleClickListener(onDoubleClick());

    // edit button
    Button editExistingButton = new Button(container, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(editExistingButton);
    editExistingButton.setText("Edit...");
    UIUtils.setDefaultButtonWidth(editExistingButton);
    editExistingButton.addSelectionListener(onEdit());
    ValueBindingBuilder.bind(WidgetProperties.enabled().observe(editExistingButton)).notUpdatingParticipant()
            .to(selectedParameter).converting(new IsNotNull2BooleanConverter()).in(dbc);

    // reset button
    Button resetButton = new Button(container, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(resetButton);
    resetButton.setText("Reset");
    UIUtils.setDefaultButtonWidth(resetButton);
    resetButton.addSelectionListener(onReset());

    // required explanation
    Label requiredExplanationLabel = new Label(container, SWT.None);
    requiredExplanationLabel
            .setText("* = value required, click the 'Edit...' button or double-click on a value to edit it.");
    GridDataFactory.fillDefaults().grab(true, false).align(SWT.FILL, SWT.FILL).span(2, 1)
            .applyTo(requiredExplanationLabel);

    // selected parameter details
    final Group detailsContainer = new Group(container, SWT.NONE);
    detailsContainer.setText("Details");
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).span(2, 1).hint(SWT.DEFAULT, 106)
            .applyTo(detailsContainer);
    new TemplateParameterDetailViews(selectedParameter, detailsContainer, dbc).createControls();

}

From source file:org.jboss.tools.openshift.internal.ui.wizard.project.ManageProjectsWizardPage.java

License:Open Source License

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

    Group group = new Group(parent, SWT.NONE);
    group.setText("OpenShift Projects");
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).applyTo(group);
    GridLayoutFactory.fillDefaults().numColumns(2).margins(6, 6).applyTo(group);

    // table/*w w  w. j  ava  2 s.c  om*/
    Composite tableContainer = new Composite(group, SWT.NONE);
    this.viewer = createTable(tableContainer);
    GridDataFactory.fillDefaults().span(1, 5).align(SWT.FILL, SWT.FILL).grab(true, true)
            .applyTo(tableContainer);
    viewer.setContentProvider(new ObservableListContentProvider());
    viewer.setInput(BeanProperties.list(ManageProjectsWizardPageModel.PROPERTY_PROJECTS).observe(pageModel));
    loadProjects(dbc);
    initialProjects = getProjects();
    viewer.setComparator(new ProjectViewerComparator());

    IObservableValue viewerSingleSelection = ViewerProperties.singleSelection().observe(viewer);
    ValueBindingBuilder.bind(viewerSingleSelection).to(
            BeanProperties.value(ManageProjectsWizardPageModel.PROPERTY_SELECTED_PROJECT).observe(pageModel))
            .in(dbc);

    // new 
    Button newButton = new Button(group, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(newButton);
    newButton.setText("New...");
    newButton.addSelectionListener(onNew());
    UIUtils.setDefaultButtonWidth(newButton);

    // remove
    Button removeButton = new Button(group, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(removeButton);
    removeButton.setText("Remove...");
    removeButton.addSelectionListener(onRemove(dbc));
    ValueBindingBuilder.bind(WidgetProperties.enabled().observe(removeButton)).notUpdatingParticipant()
            .to(viewerSingleSelection).converting(new IsNotNull2BooleanConverter()).in(dbc);
    UIUtils.setDefaultButtonWidth(removeButton);

    Composite filler = new Composite(group, SWT.None);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(filler);

    // refresh
    Button refreshButton = new Button(group, SWT.PUSH);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.END).applyTo(refreshButton);
    refreshButton.setText("Refresh...");
    refreshButton.addSelectionListener(onRefresh(dbc));
    UIUtils.setDefaultButtonWidth(refreshButton);
}

From source file:org.kalypso.gml.ui.internal.shape.ShapeFileNewSignaturePage.java

License:Open Source License

private void createTypeBinding(final ComboViewer viewer) {
    final IViewerObservableValue comboValue = ViewerProperties.singleSelection().observe(viewer);
    final IObservableValue typeValue = new ShapeTypeValue(m_input);

    m_context.bindValue(comboValue, typeValue);
}

From source file:org.kalypso.ui.editor.styleeditor.graphic.MarkComposite.java

License:Open Source License

private Control createWellKnownName(final FormToolkit toolkit, final Composite parent) {
    final Composite panel = toolkit.createComposite(parent);
    GridLayoutFactory.fillDefaults().numColumns(2).applyTo(panel);

    toolkit.createLabel(panel, "Symbol"); //$NON-NLS-1$

    final ComboViewer wknChooser = new ComboViewer(panel, SWT.READ_ONLY | SWT.DROP_DOWN);
    m_wknChooser = wknChooser;//  w w  w. j a v a2s. co  m
    toolkit.adapt(m_wknChooser.getControl(), true, true);
    m_wknChooser.getControl().setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));

    final IViewerObservableValue target = ViewerProperties.singleSelection().observe(wknChooser);
    final WellKnownNameValue model = new WellKnownNameValue(m_input);

    model.configureViewer(wknChooser);

    m_binding.bindValue(target, model);

    return panel;
}