List of usage examples for org.eclipse.jface.databinding.swt SWTObservables observeSelection
@Deprecated public static ISWTObservableValue observeSelection(Control control)
control
. From source file:org.bonitasoft.studio.designer.ui.property.section.control.FormMappingRadioGroup.java
License:Open Source License
public FormMappingRadioGroup(final Composite parent, final TabbedPropertySheetWidgetFactory widgetFactory, final IEclipsePreferences preferenceStore, final RepositoryAccessor repositoryAccessor, final FormReferenceExpressionValidator formReferenceExpressionValidator, final CreateOrEditFormProposalListener createOrEditFormListener) { super(parent, SWT.NONE); setLayout(GridLayoutFactory.swtDefaults().numColumns(4).extendedMargins(10, 10, 10, 10).create()); setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); final Button uiDesignerRadio = widgetFactory.createButton(this, Messages.uiDesignerLabel, SWT.RADIO); uiDesignerRadio.setLayoutData(GridDataFactory.swtDefaults().align(SWT.LEFT, SWT.CENTER).create()); final Button externalRadio = widgetFactory.createButton(this, Messages.externalURL, SWT.RADIO); externalRadio.setLayoutData(GridDataFactory.swtDefaults().align(SWT.LEFT, SWT.CENTER).create()); final Button noneRadio = widgetFactory.createButton(this, Messages.noForm, SWT.RADIO); noneRadio.setLayoutData(GridDataFactory.swtDefaults().align(SWT.LEFT, SWT.CENTER).create()); final Button legacyRadio = widgetFactory.createButton(this, Messages.legacyForm, SWT.RADIO); legacyRadio.setLayoutData(GridDataFactory.swtDefaults().align(SWT.LEFT, SWT.CENTER).create()); mappingTypeObservable = new SelectObservableValue(FormMappingType.class); mappingTypeObservable.addOption(FormMappingType.NONE, SWTObservables.observeSelection(noneRadio)); mappingTypeObservable.addOption(FormMappingType.INTERNAL, SWTObservables.observeSelection(uiDesignerRadio)); mappingTypeObservable.addOption(FormMappingType.URL, SWTObservables.observeSelection(externalRadio)); mappingTypeObservable.addOption(FormMappingType.LEGACY, SWTObservables.observeSelection(legacyRadio)); final Composite stackedComposite = widgetFactory.createComposite(this); stackedComposite.setLayoutData(GridDataFactory.swtDefaults().grab(true, false).span(4, 1).create()); stackLayout = new CustomStackLayout(stackedComposite); stackedComposite.setLayout(stackLayout); legacyComposite = new InfoMessageComposite(stackedComposite, widgetFactory); noneComposite = new InfoMessageComposite(stackedComposite, widgetFactory); pageDesignerMappingComposite = new InternalMappingComposite(stackedComposite, widgetFactory, preferenceStore, repositoryAccessor, formReferenceExpressionValidator, createOrEditFormListener); urlMappingComposite = new URLMappingComposite(stackedComposite, widgetFactory); widgetFactory.adapt(this); }
From source file:org.bonitasoft.studio.expression.editor.viewer.CheckBoxExpressionViewer.java
License:Open Source License
@Override protected void bindExpression() { if (control.isVisible()) { super.bindExpression(); } else {/*from w ww . ja va 2s.co m*/ if (expressionBinding != null && externalDataBindingContext != null) { externalDataBindingContext.removeBinding(expressionBinding); expressionBinding.dispose(); } if (internalDataBindingContext != null) { internalDataBindingContext.dispose(); } internalDataBindingContext = new EMFDataBindingContext(); IObservableValue nameObservable = null; if (editingDomain != null) { nameObservable = EMFEditObservables.observeValue(editingDomain, selectedExpression, ExpressionPackage.Literals.EXPRESSION__NAME); } else { nameObservable = EMFObservables.observeValue(selectedExpression, ExpressionPackage.Literals.EXPRESSION__NAME); } UpdateValueStrategy targetToModelNameStrategy = new UpdateValueStrategy(); targetToModelNameStrategy.setConverter(new Converter(Boolean.class, String.class) { @Override public Object convert(Object fromObject) { String input = ((Boolean) fromObject).toString(); updateContentType(ExpressionConstants.CONSTANT_TYPE); updateContent(getContentFromInput(input)); refresh(); return input; } }); UpdateValueStrategy modelToTargetNameStrategy = new UpdateValueStrategy(); modelToTargetNameStrategy.setConverter(new Converter(String.class, Boolean.class) { @Override public Object convert(Object fromObject) { if (fromObject != null) { String input = fromObject.toString(); if (input.equalsIgnoreCase(Boolean.TRUE.toString())) { return true; } } return false; } }); internalDataBindingContext.bindValue(SWTObservables.observeSelection(checkBoxControl), nameObservable, targetToModelNameStrategy, modelToTargetNameStrategy); } }
From source file:org.bonitasoft.studio.groovy.ui.dialog.control.BooleanRadioGroup.java
License:Open Source License
public void bindControl(final DataBindingContext dbc, final IObservableValue modelObservable) { final SelectObservableValue selectObservableValue = new SelectObservableValue(Boolean.class); selectObservableValue.addOption(Boolean.TRUE, SWTObservables.observeSelection(trueButton)); selectObservableValue.addOption(Boolean.FALSE, SWTObservables.observeSelection(falseButton)); selectObservableValue.setValue(Boolean.TRUE); dbc.bindValue(selectObservableValue, modelObservable); }
From source file:org.bonitasoft.studio.groovy.ui.providers.GroovyScriptExpressionEditor.java
License:Open Source License
@Override public void bindExpression(EMFDataBindingContext dataBindingContext, final EObject context, Expression inputExpression, ViewerFilter[] filters, final ExpressionViewer viewer) { this.inputExpression = inputExpression; this.context = context; IObservableValue dependenciesModelObservable = EMFObservables.observeValue(inputExpression, ExpressionPackage.Literals.EXPRESSION__REFERENCED_ELEMENTS); IObservableValue autoDepsModelObservable = EMFObservables.observeValue(inputExpression, ExpressionPackage.Literals.EXPRESSION__AUTOMATIC_DEPENDENCIES); inputExpression.setType(ExpressionConstants.SCRIPT_TYPE); inputExpression.setInterpreter(ExpressionConstants.GROOVY); groovyViewer.setContext(context, filters, viewer.getExpressionNatureProvider()); nodes = groovyViewer.getFieldNodes(); if (context == null && nodes == null) { dataCombo.add(Messages.noProcessVariableAvailable); dataCombo.getTableCombo().setText(Messages.noProcessVariableAvailable); dataCombo.getTableCombo().setEnabled(false); } else if (nodes != null) { dataCombo.setInput(nodes);/*from w w w . jav a 2 s. c o m*/ dataCombo.setSelection(new StructuredSelection(ProcessVariableContentProvider.SELECT_ENTRY)); if (nodes.isEmpty()) { dataCombo.getTableCombo().setEnabled(false); } } else { dataCombo.setInput(groovyViewer.getFieldNodes()); dataCombo.setSelection(new StructuredSelection(ProcessVariableContentProvider.SELECT_ENTRY)); if (groovyViewer.getFieldNodes().isEmpty()) { dataCombo.getTableCombo().setEnabled(false); } } bonitaDataCombo.setInput(GroovyUtil.getBonitaVariables(context, filters, isPageFlowContext)); bonitaDataCombo.setSelection(new StructuredSelection(ProcessVariableContentProvider.SELECT_ENTRY)); dataBindingContext.bindValue(ViewersObservables.observeInput(dependenciesViewer), dependenciesModelObservable); UpdateValueStrategy opposite = new UpdateValueStrategy(); opposite.setConverter(new Converter(Boolean.class, Boolean.class) { @Override public Object convert(Object fromObject) { return !((Boolean) fromObject); } }); dataBindingContext.bindValue(SWTObservables.observeSelection(automaticResolutionButton), autoDepsModelObservable); dataBindingContext.bindValue(SWTObservables.observeSelection(automaticResolutionButton), SWTObservables.observeEnabled(addDependencyButton), opposite, new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER)); depndencySection.setExpanded(!automaticResolutionButton.getSelection()); addDependencyButton.setEnabled(!inputExpression.isAutomaticDependencies()); dependencyJob = new ComputeScriptDependenciesJob(sourceViewer.getDocument()); dependencyJob.setContext(context); this.nodes.addAll(GroovyUtil.getBonitaVariables(context, filters, isPageFlowContext)); dependencyJob.setNodes(nodes); final InputLengthValidator lenghtValidator = new InputLengthValidator("", GroovyViewer.MAX_SCRIPT_LENGTH); String content = inputExpression.getContent(); if (content == null) { content = ""; } sourceViewer.getTextWidget().setText(content); sourceViewer.getDocument().addDocumentListener(new IDocumentListener() { @Override public void documentChanged(DocumentEvent event) { final String text = event.getDocument().get(); if (lenghtValidator.validate(text).isOK()) { GroovyScriptExpressionEditor.this.inputExpression.setContent(text); } if (automaticResolutionButton.getSelection()) { dependencyJob.schedule(); } } @Override public void documentAboutToBeChanged(DocumentEvent event) { } }); dependencyJob.addJobChangeListener(new IJobChangeListener() { @Override public void sleeping(IJobChangeEvent event) { } @Override public void scheduled(IJobChangeEvent event) { } @Override public void running(IJobChangeEvent event) { } @Override public void done(IJobChangeEvent event) { if (dependencyJob != null && GroovyScriptExpressionEditor.this.inputExpression.isAutomaticDependencies()) { List<EObject> deps = dependencyJob.getDependencies(document.get()); GroovyScriptExpressionEditor.this.inputExpression.getReferencedElements().clear(); if (deps != null && !deps.isEmpty()) { GroovyScriptExpressionEditor.this.inputExpression.getReferencedElements().addAll(deps); } } } @Override public void awake(IJobChangeEvent event) { } @Override public void aboutToRun(IJobChangeEvent event) { } }); final ExpressionContentProvider provider = new ExpressionContentProvider(); provider.setContext(context); final Set<Expression> filteredExpressions = new HashSet<Expression>(); Expression[] expressions = provider.getExpressions(); EObject input = provider.getContext(); if (expressions != null) { filteredExpressions.addAll(Arrays.asList(expressions)); if (input != null && filters != null) { for (Expression exp : expressions) { for (ViewerFilter filter : filters) { if (filter != null && !filter.select(groovyViewer.getSourceViewer(), input, exp)) { filteredExpressions.remove(exp); } } } } } addDependencyButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { SelectDependencyDialog dialog = new SelectDependencyDialog(Display.getDefault().getActiveShell(), filteredExpressions, GroovyScriptExpressionEditor.this.inputExpression.getReferencedElements()); dialog.open(); } }); final UpdateValueStrategy evaluateStrategy = new UpdateValueStrategy(); evaluateStrategy.setConverter(new Converter(String.class, Boolean.class) { @Override public Object convert(Object fromObject) { if (fromObject == null || fromObject.toString().isEmpty()) { return false; } return true; } }); dataBindingContext.bindValue(SWTObservables.observeEnabled(testButton), SWTObservables.observeText(groovyViewer.getSourceViewer().getTextWidget(), SWT.Modify), null, evaluateStrategy); }
From source file:org.bonitasoft.studio.properties.form.sections.actions.contributions.AsynchronousSuggestBoxContribution.java
License:Open Source License
protected void bindWidgets() { if (dataBindingContext != null) { dataBindingContext.dispose();/* w w w .ja va 2 s . c om*/ } dataBindingContext = new EMFDataBindingContext(); IObservableValue value = EMFEditObservables.observeValue(editingDomain, suggestBox, FormPackage.Literals.SUGGEST_BOX__ASYNCHRONOUS); value.addChangeListener(new IChangeListener() { public void handleChange(ChangeEvent event) { ISection extensibleGridPropertySection = section.getTabbedPropertySheetPage().getCurrentTab() .getSections()[0]; if (extensibleGridPropertySection instanceof DataPropertySection) { for (IExtensibleGridPropertySectionContribution contib : ((DataPropertySection) extensibleGridPropertySection) .getContributions()) { if (contib instanceof AvailableValueContribution) { //((MultipleValuatedFieldContribution)contib).resetCombo() ; } } } } }); ; dataBindingContext.bindValue(SWTObservables.observeSelection(isAsynchronousCheckbox), EMFEditObservables .observeValue(editingDomain, suggestBox, FormPackage.Literals.SUGGEST_BOX__ASYNCHRONOUS)); dataBindingContext.bindValue( EMFEditObservables.observeValue(editingDomain, suggestBox, FormPackage.Literals.SUGGEST_BOX__ASYNCHRONOUS), SWTObservables.observeEnabled(delayText), null, new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER)); dataBindingContext.bindValue(SWTObservables.observeText(delayText, SWT.Modify), EMFEditObservables .observeValue(editingDomain, suggestBox, FormPackage.Literals.SUGGEST_BOX__DELAY)); }
From source file:org.bonitasoft.studio.properties.form.sections.actions.contributions.FileGridPropertySectionContribution.java
License:Open Source License
protected void bindFields() { if (dataBindingContext != null) { dataBindingContext.dispose();//from ww w .j a v a2 s .co m } dataBindingContext = new EMFDataBindingContext(); if (downloadOnly != null) { if (ModelHelper.getForm(element) instanceof ViewForm) { downloadOnly.setSelection(true); downloadOnly.setEnabled(false); } else { dataBindingContext.bindValue(SWTObservables.observeSelection(downloadOnly), EMFEditObservables .observeValue(editingDomain, element, FormPackage.Literals.FILE_WIDGET__DOWNLOAD_ONLY)); } } dataBindingContext.bindValue(SWTObservables.observeSelection(imagePreview), EMFEditObservables .observeValue(editingDomain, element, FormPackage.Literals.FILE_WIDGET__USE_PREVIEW)); IObservableValue value = EMFObservables.observeValue(element, FormPackage.Literals.DUPLICABLE__DUPLICATE); value.addValueChangeListener(new IValueChangeListener() { public void handleValueChange(ValueChangeEvent arg0) { if (useDocumentButton != null && !useDocumentButton.isDisposed() && element.getInputType() == FileWidgetInputType.DOCUMENT) { useDocumentButton.notifyListeners(SWT.Selection, new Event()); /*}else if(!useResourceButton.isDisposed() && element.getInputType() == FileWidgetInputType.URL){ useURLButton.notifyListeners(SWT.Selection,new Event());*/ } else if (!useResourceButton.isDisposed() && element.getInputType() == FileWidgetInputType.RESOURCE) { useResourceButton.notifyListeners(SWT.Selection, new Event()); } if (inputExpressionViewer != null && !getInputExpressionHint().equals(inputExpressionViewer.getMessage(IStatus.INFO))) { inputExpressionViewer.setMessage(getInputExpressionHint(), IStatus.INFO); } } }); bindInputExpressionViewer(); bindResourceText(); }
From source file:org.bonitasoft.studio.properties.form.sections.actions.contributions.FileWidgetDocumentPickerContribution.java
License:Open Source License
private void bindDownloadType() { final SelectObservableValue downLoadTypeObservable = new SelectObservableValue( FileWidgetDownloadType.class); downLoadTypeObservable.addOption(FileWidgetDownloadType.URL, SWTObservables.observeSelection(url)); downLoadTypeObservable.addOption(FileWidgetDownloadType.BROWSE, SWTObservables.observeSelection(browse)); downLoadTypeObservable.addOption(FileWidgetDownloadType.BOTH, SWTObservables.observeSelection(both)); dataBindingContext.bindValue(downLoadTypeObservable, EMFObservables.observeValue(fileWidget, FormPackage.Literals.FILE_WIDGET__DOWNLOAD_TYPE)); }
From source file:org.bonitasoft.studio.properties.form.sections.actions.contributions.InitialValueContribution.java
License:Open Source License
protected void bindWidgets() { if (allowHtmlButton != null && !allowHtmlButton.isDisposed()) { Expression inputExpression = widget.getInputExpression(); if (inputExpression == null) { inputExpression = ExpressionFactory.eINSTANCE.createExpression(); editingDomain.getCommandStack().execute(SetCommand.create(editingDomain, widget, FormPackage.Literals.WIDGET__INPUT_EXPRESSION, inputExpression)); }/*from w w w .j a v a 2 s .c o m*/ dataBindingContext.bindValue(SWTObservables.observeSelection(allowHtmlButton), EMFEditObservables.observeValue(editingDomain, inputExpression, ExpressionPackage.Literals.EXPRESSION__HTML_ALLOWED)); } updateViewerInput(); }
From source file:org.bonitasoft.studio.properties.form.sections.actions.table.AbstractTableDataPropertySection.java
License:Open Source License
protected void refreshDataBinding() { disposeDataBinding();// w w w. java 2 s . c o m if (tableViewer != null) { final AbstractTable table = getEObject(); if (initialValueExpressionFilter != null) { initialValueExpressionFilter.setWidget(table); } if (expressionModeListener != null) { tableViewer.removeExpressionModeListener(expressionModeListener); } expressionModeListener = new IExpressionModeListener() { public void useTable() { getEditingDomain().getCommandStack().execute(SetCommand.create(getEditingDomain(), table, FormPackage.Literals.ABSTRACT_TABLE__INITIALIZED_USING_CELLS, true)); tableViewer.setSelection(table.getTableExpression()); tableViewer.setEditingDomain(getEditingDomain()); magicComposite.show(headersComposite); magicComposite.hide(headersValueComposite); } public void useSimpleExpression() { getEditingDomain().getCommandStack().execute(SetCommand.create(getEditingDomain(), table, FormPackage.Literals.ABSTRACT_TABLE__INITIALIZED_USING_CELLS, false)); tableViewer.setSelection(table.getInputExpression()); tableViewer.setEditingDomain(getEditingDomain()); magicComposite.hide(headersComposite); magicComposite.show(headersValueComposite); } }; tableViewer.addExpressionModeListener(expressionModeListener); dataBindingContext = new EMFDataBindingContext(); dataBindingContext.bindValue(SWTObservables.observeSelection(allowHtmlButton), EMFEditObservables.observeValue(getEditingDomain(), table.getInputExpression(), ExpressionPackage.Literals.EXPRESSION__HTML_ALLOWED)); dataBindingContext.bindValue(SWTObservables.observeSelection(useHorizontalHeader), EMFEditObservables.observeValue(getEditingDomain(), getEObject(), FormPackage.Literals.ABSTRACT_TABLE__USE_HORIZONTAL_HEADER)); dataBindingContext.bindValue(SWTObservables.observeSelection(useVerticalHeader), EMFEditObservables.observeValue(getEditingDomain(), getEObject(), FormPackage.Literals.ABSTRACT_TABLE__USE_VERTICAL_HEADER)); dataBindingContext.bindValue(SWTObservables.observeSelection(topHeaderButton), EMFEditObservables.observeValue(getEditingDomain(), getEObject(), FormPackage.Literals.ABSTRACT_TABLE__FIRST_ROW_IS_HEADER)); dataBindingContext.bindValue(SWTObservables.observeSelection(leftHeaderButton), EMFEditObservables.observeValue(getEditingDomain(), getEObject(), FormPackage.Literals.ABSTRACT_TABLE__LEFT_COLUMN_IS_HEADER)); dataBindingContext.bindValue(SWTObservables.observeSelection(rightHeaderButton), EMFEditObservables.observeValue(getEditingDomain(), getEObject(), FormPackage.Literals.ABSTRACT_TABLE__RIGHT_COLUMN_IS_HEADER)); dataBindingContext.bindValue(SWTObservables.observeSelection(bottomHeaderButton), EMFEditObservables.observeValue(getEditingDomain(), getEObject(), FormPackage.Literals.ABSTRACT_TABLE__LAST_ROW_IS_HEADER)); dataBindingContext.bindValue(ViewersObservables.observeSingleSelection(tableVerticalHeaders), EMFEditObservables.observeValue(getEditingDomain(), getEObject(), FormPackage.Literals.ABSTRACT_TABLE__VERTICAL_HEADER_EXPRESSION)); dataBindingContext.bindValue(ViewersObservables.observeSingleSelection(tableHorizontalHeaders), EMFEditObservables.observeValue(getEditingDomain(), getEObject(), FormPackage.Literals.ABSTRACT_TABLE__HORIZONTAL_HEADER_EXPRESSION)); if (table.isInitializedUsingCells()) { tableViewer.setSelection(table.getTableExpression()); } else { tableViewer.setSelection(table.getInputExpression()); } } }
From source file:org.bonitasoft.studio.properties.form.sections.actions.table.DynamicTableDataPropertySection.java
License:Open Source License
protected void bindColumn(DynamicTable dynamicTable) { dataBindingContext.bindValue(SWTObservables.observeSelection(allowAddRemoveColumnButton), EMFEditObservables.observeValue(getEditingDomain(), dynamicTable, FormPackage.Literals.DYNAMIC_TABLE__ALLOW_ADD_REMOVE_COLUMN)); if (dynamicTable != null) { Expression minNumberOfColumn = dynamicTable.getMinNumberOfColumn(); if (minNumberOfColumn == null) { minNumberOfColumn = ExpressionFactory.eINSTANCE.createExpression(); minNumberOfColumn.setReturnType(Integer.class.getName()); minNumberOfColumn.setReturnTypeFixed(true); getEditingDomain().getCommandStack().execute(SetCommand.create(getEditingDomain(), dynamicTable, FormPackage.Literals.DYNAMIC_TABLE__MIN_NUMBER_OF_COLUMN, minNumberOfColumn)); }// w w w . java 2s. c o m } if (dynamicTable != null) { Expression maxNumberOfColumn = dynamicTable.getMaxNumberOfColumn(); if (maxNumberOfColumn == null) { maxNumberOfColumn = ExpressionFactory.eINSTANCE.createExpression(); maxNumberOfColumn.setReturnType(Integer.class.getName()); maxNumberOfColumn.setReturnTypeFixed(true); getEditingDomain().getCommandStack().execute(SetCommand.create(getEditingDomain(), dynamicTable, FormPackage.Literals.DYNAMIC_TABLE__MAX_NUMBER_OF_COLUMN, maxNumberOfColumn)); } } /* * Synchronize with the model. * */ dataBindingContext.bindValue(ViewerProperties.singleSelection().observe(textOrDataMinColumn), EMFEditProperties .value(getEditingDomain(), FormPackage.Literals.DYNAMIC_TABLE__MIN_NUMBER_OF_COLUMN) .observe(dynamicTable)); dataBindingContext.bindValue(ViewerProperties.singleSelection().observe(textOrDataMaxColumn), EMFEditProperties .value(getEditingDomain(), FormPackage.Literals.DYNAMIC_TABLE__MAX_NUMBER_OF_COLUMN) .observe(dynamicTable)); dataBindingContext.bindValue(SWTObservables.observeSelection(limitMinColumnButton), EMFEditObservables.observeValue(getEditingDomain(), dynamicTable, FormPackage.Literals.DYNAMIC_TABLE__LIMIT_MIN_NUMBER_OF_COLUMN)); dataBindingContext.bindValue(SWTObservables.observeSelection(limitMaxColumnButton), EMFEditObservables.observeValue(getEditingDomain(), dynamicTable, FormPackage.Literals.DYNAMIC_TABLE__LIMIT_MAX_NUMBER_OF_COLUMN)); /* * Enable the combo only if we want to set a number limitation. * */ dataBindingContext.bindValue(SWTObservables.observeEnabled(textOrDataMinColumn.getControl()), SWTObservables.observeSelection(limitMinColumnButton)); dataBindingContext.bindValue(SWTObservables.observeEnabled(textOrDataMinColumn.getTextControl()), SWTObservables.observeSelection(limitMinColumnButton)); dataBindingContext.bindValue(SWTObservables.observeEnabled(textOrDataMinColumn.getToolbar()), SWTObservables.observeSelection(limitMinColumnButton)); dataBindingContext.bindValue(SWTObservables.observeEnabled(textOrDataMaxColumn.getControl()), SWTObservables.observeSelection(limitMaxColumnButton)); dataBindingContext.bindValue(SWTObservables.observeEnabled(textOrDataMaxColumn.getTextControl()), SWTObservables.observeSelection(limitMaxColumnButton)); dataBindingContext.bindValue(SWTObservables.observeEnabled(textOrDataMaxColumn.getToolbar()), SWTObservables.observeSelection(limitMaxColumnButton)); dataBindingContext.bindValue(SWTObservables.observeVisible(limitMinColumnButton), SWTObservables.observeSelection(allowAddRemoveColumnButton), new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), null); dataBindingContext.bindValue(SWTObservables.observeVisible(limitMaxColumnButton), SWTObservables.observeSelection(allowAddRemoveColumnButton), new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), null); dataBindingContext.bindValue(SWTObservables.observeVisible(textOrDataMinColumn.getControl()), SWTObservables.observeSelection(allowAddRemoveColumnButton), new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), null); dataBindingContext.bindValue(SWTObservables.observeVisible(textOrDataMaxColumn.getControl()), SWTObservables.observeSelection(allowAddRemoveColumnButton), new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), null); textOrDataMaxColumn.setInput(dynamicTable); textOrDataMinColumn.setInput(dynamicTable); }