List of usage examples for org.eclipse.jface.databinding.viewers ViewerProperties singleSelection
public static IViewerValueProperty singleSelection()
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; }