List of usage examples for org.eclipse.jface.viewers ComboViewer setLabelProvider
@Override public void setLabelProvider(IBaseLabelProvider labelProvider)
Viewer
framework method ensures that the given label provider is an instance of ILabelProvider
. From source file:eu.esdihumboldt.hale.io.csv.ui.SchemaTypePage.java
License:Open Source License
/** * @see HaleWizardPage#onShowPage(boolean) *//*from ww w . java 2 s .c om*/ @Override protected void onShowPage(boolean firstShow) { LocatableInputSupplier<? extends InputStream> source = getWizard().getProvider().getSource(); int indexStart = 0; int indexEnd = source.getLocation().getPath().length() - 1; if (source.getLocation().getPath() != null) { indexStart = source.getLocation().getPath().lastIndexOf("/") + 1; if (source.getLocation().getPath().lastIndexOf(".") >= 0) { indexEnd = source.getLocation().getPath().lastIndexOf("."); } defaultString = source.getLocation().getPath().substring(indexStart, indexEnd); sfe.setStringValue(defaultString); setPageComplete(sfe.isValid()); } try { CSVReader reader = CSVUtil.readFirst(getWizard().getProvider()); String[] firstLine = reader.readNext(); final String[] nextLine = reader.readNext(); int length = 0; if (firstLine.length != 0) { length = firstLine.length; } // disposes all property names if the read configuration has changed if (last_firstLine != null && !Arrays.equals(firstLine, last_firstLine)) { for (TypeNameField properties : fields) { properties.dispose(); properties.getTextControl(group).dispose(); properties.getLabelControl(group).dispose(); } for (ComboViewer combViewer : comboFields) { combViewer.getCombo().dispose(); } fields.clear(); comboFields.clear(); } if (!Arrays.equals(firstLine, last_firstLine)) { for (int i = 0; i < length; i++) { final TypeNameField propField; final ComboViewer cv; validSel.add(true); propField = new TypeNameField("properties", Integer.toString(i + 1), group); fields.add(propField); propField.setEmptyStringAllowed(false); propField.setErrorMessage("Please enter a valid Property Name"); propField.setPropertyChangeListener(new IPropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent event) { HashSet<String> hs = new HashSet<String>(); if (event.getProperty().equals(StringFieldEditor.VALUE)) { for (TypeNameField field : fields) { if (!hs.add(field.getStringValue())) { valid = false; break; } else { valid = true; } } } if (event.getProperty().equals(StringFieldEditor.IS_VALID)) { isValid = (Boolean) event.getNewValue(); } setPageComplete(isValid && valid); } }); propField.setStringValue(firstLine[i]); cv = new ComboViewer(group); comboFields.add(cv); cv.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { int i = comboFields.indexOf(event.getSource()); PropertyTypeFactory actualSelection = ((PropertyTypeFactory) ((IStructuredSelection) cv .getSelection()).getFirstElement()); try { actualSelection.createExtensionObject().convertFromField(nextLine[i]); validSel.set(i, true); } catch (Exception e) { log.warn("Selection invalid!", e); validSel.set(i, false); } if (validSel.contains(false)) { int j = validSel.indexOf(false) + 1; setMessage("Your selection in field # " + j + " is not valid!", WARNING); } else { setMessage(null); } } }); cv.setContentProvider(ArrayContentProvider.getInstance()); cv.setLabelProvider(new LabelProvider() { /** * @see org.eclipse.jface.viewers.LabelProvider#getText(java.lang.Object) */ @Override public String getText(Object element) { if (element instanceof PropertyTypeFactory) { return ((PropertyTypeFactory) element).getDisplayName(); } return super.getText(element); } }); Collection<PropertyTypeFactory> elements = PropertyTypeExtension.getInstance().getFactories(); cv.setInput(elements); PropertyTypeFactory defaultSelection = PropertyTypeExtension.getInstance() .getFactory("java.lang.String"); if (defaultSelection != null) { cv.setSelection(new StructuredSelection(defaultSelection)); } else if (!elements.isEmpty()) { cv.setSelection(new StructuredSelection(elements.iterator().next())); } } } group.setLayout(new GridLayout(3, false)); last_firstLine = firstLine; } catch (IOException e) { setErrorMessage("File could not be read"); setPageComplete(false); e.printStackTrace(); } group.layout(); sc.layout(); super.onShowPage(firstShow); }
From source file:eu.esdihumboldt.hale.io.gml.ui.PartitionConfigurationPage.java
License:Open Source License
/** * Create an element for selecting the partitioning mode. * //w w w . j a v a2 s .co m * @param parent the parent composite * * @return the combo viewer */ public static ComboViewer createPartitionModeSelector(Composite parent) { ComboViewer viewer = new ComboViewer(parent, SWT.READ_ONLY); // for now fixed configuration - rather based on IOProviderDescriptor // (which is only available later) viewer.setContentProvider(ArrayContentProvider.getInstance()); viewer.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { if (element instanceof String) { switch (((String) element)) { case StreamGmlWriter.PARTITION_MODE_CUT: return "Cut strictly at threshold (may break local references)"; case StreamGmlWriter.PARTITION_MODE_RELATED: return "Keep instances that reference each other together"; case StreamGmlWriter.PARTITION_MODE_NONE: return "No partitioning (create one part)"; } } return super.getText(element); } }); viewer.setInput(Arrays.asList(StreamGmlWriter.PARTITION_MODE_CUT, StreamGmlWriter.PARTITION_MODE_RELATED, StreamGmlWriter.PARTITION_MODE_NONE)); // set default viewer.setSelection(new StructuredSelection(StreamGmlWriter.PARTITION_MODE_RELATED)); return viewer; }
From source file:eu.esdihumboldt.hale.io.gml.ui.PartitionConfigurationPage.java
License:Open Source License
/** * Create an element for selecting the extent partitioning mode. * //from w w w . jav a 2s .com * @param parent the parent composite * * @return the combo viewer */ public static ComboViewer createExtentPartitionModeSelector(Composite parent) { ComboViewer viewer = new ComboViewer(parent, SWT.READ_ONLY); viewer.setContentProvider(ArrayContentProvider.getInstance()); viewer.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { if (element instanceof String) { switch (((String) element)) { case StreamGmlWriter.PARTITION_BY_EXTENT_MODE_DATASET: return "Partition instances based on the bounding box of the exported data set"; case StreamGmlWriter.PARTITION_BY_EXTENT_MODE_WORLD: return "Partition instances based on world extent"; } } return super.getText(element); } }); viewer.setInput(Arrays.asList(StreamGmlWriter.PARTITION_BY_EXTENT_MODE_DATASET, StreamGmlWriter.PARTITION_BY_EXTENT_MODE_WORLD)); // set default viewer.setSelection(new StructuredSelection(StreamGmlWriter.PARTITION_BY_EXTENT_MODE_DATASET)); return viewer; }
From source file:eu.esdihumboldt.hale.io.jdbc.ui.JDBCComponents.java
License:Open Source License
/** * Create a component for selecting a JDBC driver. * /*from www . j a v a2 s. c om*/ * @param parent the parent composite * @return the combo viewer for selecting the driver */ public static ComboViewer createDriverSelector(Composite parent) { ComboViewer driver = new ComboViewer(parent, SWT.BORDER | SWT.READ_ONLY); driver.setContentProvider(ArrayContentProvider.getInstance()); driver.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { if (element instanceof Pair<?, ?>) { @SuppressWarnings("unchecked") Pair<DriverConfiguration, Driver> driverInfo = (Pair<DriverConfiguration, Driver>) element; return driverInfo.getFirst().getName(); } return super.getText(element); } }); // driver input List<Pair<DriverConfiguration, Driver>> drivers = new ArrayList<>(); for (DriverConfiguration dc : DriverConfigurationExtension.getInstance().getElements()) { // determine associated driver Driver jdbcDriver = null; Enumeration<Driver> enDrivers = DriverManager.getDrivers(); while (enDrivers.hasMoreElements()) { Driver candidate = enDrivers.nextElement(); if (dc.matchesDriver(candidate)) { jdbcDriver = candidate; break; } } // if (driver != null) { // XXX ignore if the driver is null, seems to work nonetheless drivers.add(new Pair<>(dc, jdbcDriver)); // } } driver.setInput(drivers); if (!drivers.isEmpty()) { // by default select a driver if possible driver.setSelection(new StructuredSelection(drivers.get(0))); } return driver; }
From source file:eu.numberfour.n4js.n4mf.ui.wizard.N4MFWizardNewProjectCreationPage.java
License:Open Source License
@Override public void createControl(final Composite parent) { super.createControl(parent); // We need to create the UI controls from the parent class. final Composite control = (Composite) getControl(); control.setLayout(GridLayoutFactory.fillDefaults().create()); control.setLayoutData(fillDefaults().align(FILL, FILL).grab(true, true).create()); final DataBindingContext dbc = new DataBindingContext(); control.addDisposeListener(e -> dbc.dispose()); final ComboViewer projectType = new ComboViewer(control, READ_ONLY); projectType.setLabelProvider(new ProjectTypeLabelProvider()); projectType.setContentProvider(ArrayContentProvider.getInstance()); projectType.getControl().setLayoutData(fillDefaults().grab(true, false).create()); projectType.setInput(ProjectType.values()); // A composite to hold the changing UI component (additional library project options / additional test project // options)// ww w. j a v a 2s .co m final Composite changingComposite = new Composite(control, NONE); StackLayout changingStackLayout = new StackLayout(); changingComposite.setLayout(changingStackLayout); changingComposite.setLayoutData(fillDefaults().align(FILL, FILL).grab(true, true).create()); Composite defaultOptions = initDefaultOptionsUI(dbc, changingComposite); Composite libraryProjectOptionsGroup = initLibraryOptionsUI(dbc, changingComposite); Composite testProjectOptionsGroup = initTestProjectUI(dbc, changingComposite); initProjectTypeBinding(dbc, projectType); // Configure stack layout to show advanced options projectType.addPostSelectionChangedListener(e -> { switch (projectInfo.getProjectType()) { case LIBRARY: changingStackLayout.topControl = libraryProjectOptionsGroup; break; case TEST: changingStackLayout.topControl = testProjectOptionsGroup; break; default: changingStackLayout.topControl = defaultOptions; } changingComposite.layout(true); setPageComplete(validatePage()); }); // IDs from: org.eclipse.jdt.internal.ui.workingsets.IWorkingSetIDs.class createWorkingSetGroup((Composite) getControl(), null, new String[] { "org.eclipse.ui.resourceWorkingSetPage", "org.eclipse.jdt.ui.JavaWorkingSetPage", "org.eclipse.jdt.internal.ui.OthersWorkingSet" }); // $NON-NLS-1$ Dialog.applyDialogFont(getControl()); dbc.updateTargets(); setControl(control); }
From source file:eu.skillpro.ams.pscm.connector.opcua.ui.dialogs.SendOrdersDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite area = (Composite) super.createDialogArea(parent); Label orderLabel = new Label(area, SWT.NONE); orderLabel.setLayoutData(getLabelGDF().create()); orderLabel.setText(ORDERS_LABEL);// w w w. j a v a 2 s . com ComboViewer cv = new ComboViewer(area); cv.getControl().setLayoutData(getSecondGDF().create()); cv.setContentProvider(new ArrayContentProvider()); cv.setLabelProvider(new OrderContentProvider()); Label separator = new Label(area, SWT.SEPARATOR | SWT.HORIZONTAL); separator.setLayoutData(getViewerGDF().copy().hint(SWT.DEFAULT, SWT.DEFAULT).create()); Label orderNrLabel = new Label(area, SWT.NONE); orderNrLabel.setText(SELECTED_ORDER_LABEL); orderNrLabel.setLayoutData(getLabelGDF().create()); final Text orderNrText = new Text(area, SWT.NONE); orderNrText.setText(""); orderNrText.setLayoutData(getSecondGDF().create()); orderNrText.setEditable(false); Label orderProductLabel = new Label(area, SWT.NONE); orderProductLabel.setText(PRODUCT); orderProductLabel.setLayoutData(getLabelGDF().create()); final Text orderProductText = new Text(area, SWT.NONE); orderProductText.setText(""); orderProductText.setLayoutData(getSecondGDF().create()); orderProductText.setEditable(false); Label orderQuantityLabel = new Label(area, SWT.NONE); orderQuantityLabel.setText(QUANTITY); orderQuantityLabel.setLayoutData(getLabelGDF().create()); final Text orderQuantityText = new Text(area, SWT.NONE); orderQuantityText.setText(""); orderQuantityText.setLayoutData(getSecondGDF().create()); orderQuantityText.setEditable(false); Label orderPriorityLabel = new Label(area, SWT.NONE); orderPriorityLabel.setText(PRIORITY); orderPriorityLabel.setLayoutData(getLabelGDF().create()); final Text orderPriorityText = new Text(area, SWT.NONE); orderPriorityText.setText(String.valueOf(priority)); orderPriorityText.setLayoutData(getSecondGDF().create()); orderPriorityText.setEditable(false); cv.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { order = (Order) ((IStructuredSelection) event.getSelection()).getFirstElement(); updateControls(); } private void updateControls() { orderNrText.setText(order.getOrderID()); orderProductText.setText(order.getProductQuantity().getProduct().getName()); orderQuantityText.setText(String.valueOf(order.getProductQuantity().getQuantity())); } }); cv.setInput(SkillproService.getSkillproProvider().getOrderRepo().getEntities()); return area; }
From source file:ext.org.eclipse.jdt.internal.ui.preferences.FoldingConfigurationBlock.java
License:Open Source License
private ComboViewer createProviderViewer() { /* list viewer */ ComboViewer viewer = new ComboViewer(fProviderCombo); viewer.setContentProvider(new IStructuredContentProvider() { /*//from ww w . j a v a 2 s. c o m * @see org.eclipse.jface.viewers.IContentProvider#dispose() */ public void dispose() { } /* * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object) */ public void inputChanged(Viewer v, Object oldInput, Object newInput) { } /* * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object) */ public Object[] getElements(Object inputElement) { return fProviderDescriptors.values().toArray(); } }); viewer.setLabelProvider(new LabelProvider() { /* * @see org.eclipse.jface.viewers.LabelProvider#getImage(java.lang.Object) */ @Override public Image getImage(Object element) { return null; } /* * @see org.eclipse.jface.viewers.LabelProvider#getText(java.lang.Object) */ @Override public String getText(Object element) { return ((JavaFoldingStructureProviderDescriptor) element).getName(); } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection sel = (IStructuredSelection) event.getSelection(); if (!sel.isEmpty()) { fStore.setValue(PreferenceConstants.EDITOR_FOLDING_PROVIDER, ((JavaFoldingStructureProviderDescriptor) sel.getFirstElement()).getId()); updateListDependencies(); } } }); viewer.setInput(fProviderDescriptors); viewer.refresh(); return viewer; }
From source file:fr.univnantes.termsuite.ui.dialogs.ConfigureTaggerDialog.java
@Override protected Control createDialogArea(final Composite parent) { Composite container = (Composite) super.createDialogArea(parent); DataBindingContext dbc = new DataBindingContext(); FormToolkit toolkit = new FormToolkit(container.getDisplay()); form = toolkit.createScrolledForm(container); GridDataFactory.fillDefaults().grab(true, true).applyTo(container); GridDataFactory.fillDefaults().grab(true, true).applyTo(form); GridDataFactory.fillDefaults().grab(true, true).applyTo(form.getBody()); form.getBody().setLayout(new GridLayout()); // GridLayoutFactory.fillDefaults().margins(10, 10).numColumns(2).applyTo(form.getBody()); Section helpSection = toolkit.createSection(form.getBody(), SWT.None); helpSection.setText("Help"); helpSection.setExpanded(true);//from w ww . j ava2 s . co m GridDataFactory.fillDefaults().grab(true, true).applyTo(helpSection); Section configureSection = toolkit.createSection(form.getBody(), Section.TITLE_BAR); configureSection.setText("Configure"); configureSection.setExpanded(true); GridDataFactory.fillDefaults().grab(false, false).span(1, 1).applyTo(configureSection); Section errorSection = toolkit.createSection(form.getBody(), SWT.None); errorSection.setText("Status"); errorSection.setExpanded(true); toolkit.decorateFormHeading(form.getForm()); toolkit.paintBordersFor(form.getBody()); GridDataFactory.fillDefaults().grab(false, false).span(1, 1).applyTo(errorSection); // Explaination notice Composite helpSectionClient = toolkit.createComposite(helpSection); helpSection.setClient(helpSectionClient); helpSectionClient.setLayout(new GridLayout()); FormText notice = toolkit.createFormText(helpSectionClient, true); GridDataFactory.fillDefaults().hint(400, SWT.DEFAULT).applyTo(notice); // notice.setLayoutData(new TableWrapData(TableWrapData.FILL)); // GridDataFactory.fillDefaults().grab(false, false).span(2, 1).applyTo(notice); StringBuffer buf = new StringBuffer(); buf.append("<form>"); buf.append( "<p>Due to license concerns, you need to install a 3rd party POS tagger to your computer. You need to have at least one of the two currently supported taggers installed:</p>"); buf.append( "<li>1. Tree Tagger (recommended) - download TreeTagger and its languages models. See official installation <a href=\"tt\">intructions</a></li>"); buf.append( "<li>2. Mate - download <a href=\"mate\">mate language models</a> (Mate's algorithm is already embedded in TermSuite) </li>"); buf.append( "<p>Once installed, pay a special attention to TermSuite's naming convention for TreeTagger and Mate models.</p>"); buf.append( "<p>For detailed information about 3rd party tagger installation, read TermSuite's official documentation on <a href=\"doc\">installing 3rd party tagger (and lemmatizer)</a></p>"); buf.append("</form>"); notice.setText(buf.toString(), true, false); FormTextUtil.bindToExternalLink(notice, "doc", TermSuiteUI.WEB_SITE_TAGGER_DOC_URL); FormTextUtil.bindToExternalLink(notice, "tt", TermSuiteUI.URL_TREE_TAGGER); FormTextUtil.bindToExternalLink(notice, "mate", TermSuiteUI.URL_MATE); Composite configureSectionClient = toolkit.createComposite(configureSection); configureSection.setClient(configureSectionClient); GridLayoutFactory.fillDefaults().margins(10, 10).numColumns(2).applyTo(configureSectionClient); // Tagger type toolkit.createLabel(configureSectionClient, "3rd party tagger:"); ComboViewer taggerComboViewer = new ComboViewer(configureSectionClient, SWT.DROP_DOWN); // toolkit.adapt(taggerComboViewer.getControl(), true, true); taggerComboViewer.setContentProvider(ArrayContentProvider.getInstance()); taggerComboViewer.setLabelProvider(new LabelProvider() { public String getText(Object element) { ETagger tagger = (ETagger) element; return TaggerUtil.getTaggerName(tagger); }; }); taggerComboViewer.setInput(ETagger.VALUES); dbc.bindValue(ViewerProperties.singleSelection().observe(taggerComboViewer), EMFProperties .value(TermsuiteuiPackage.Literals.ETAGGER_CONFIG__TAGGER_TYPE).observe(this.taggerConfig)); // Tagger path toolkit.createLabel(configureSectionClient, "Path to tagger's installation directory:"); BrowseDirText taggerPath = new BrowseDirText(configureSectionClient, SWT.NONE); toolkit.adapt(taggerPath, true, true); GridDataFactory.fillDefaults().grab(true, false).applyTo(taggerPath); dbc.bindValue(new BrowseDirText.TextValueProperty().observe(taggerPath), EMFProperties.value(TermsuiteuiPackage.Literals.ETAGGER_CONFIG__PATH).observe(this.taggerConfig)); Composite errorSectionClient = toolkit.createComposite(errorSection); errorSection.setClient(errorSectionClient); GridLayoutFactory.fillDefaults().margins(10, 10).numColumns(2).applyTo(errorSectionClient); GridLayoutFactory.fillDefaults().margins(10, 10).numColumns(2).applyTo(errorSection); // Language viewer languageLabel = toolkit.createLabel(errorSectionClient, "Languages supported by your current tagger's installation:"); GridDataFactory.fillDefaults().minSize(0, 20).grab(true, true).span(2, 1).applyTo(languageLabel); languageViewer = new TableViewer(errorSectionClient, SWT.BORDER); GridDataFactory.fillDefaults().minSize(0, 100).grab(true, true).span(2, 1) .applyTo(languageViewer.getControl()); languageViewer.setContentProvider(new ArrayContentProvider()); TableViewerColumn column1 = new TableViewerColumn(languageViewer, SWT.LEFT); column1.getColumn().setWidth(200); column1.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return LangUtil.getTermsuiteLang((ELang) element).getName(); } @Override public Image getImage(Object element) { Image flag = TermsuiteImg.INSTANCE.getFlag((ELang) element); return flag; } }); toolkit.adapt(languageViewer.getControl(), true, true); dbc.updateTargets(); updateTaggerName(); return form.getBody(); }
From source file:gov.redhawk.datalist.ui.views.OptionsComposite.java
License:Open Source License
public void createControl(Composite main) { final Composite parent = new Composite(main, SWT.None); parent.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); parent.setLayout(GridLayoutFactory.fillDefaults().numColumns(3).create()); final ComboViewer captureCombo = new ComboViewer(parent, SWT.DROP_DOWN | SWT.READ_ONLY | SWT.BORDER); captureCombo.setContentProvider(new ArrayContentProvider()); captureCombo.setLabelProvider(new LabelProvider()); captureCombo.setInput(new Object[] { CaptureMethod.NUMBER, CaptureMethod.INDEFINITELY }); ctx.bindValue(ViewerProperties.singleSelection().observe(captureCombo), BeanProperties.value("processType").observe(settings)); samplesTxt = new Text(parent, SWT.BORDER); samplesTxt.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); ctx.bindValue(WidgetProperties.enabled().observe(samplesTxt), BeanProperties.value("processType").observe(settings), new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), new UpdateValueStrategy().setConverter(new Converter(CaptureMethod.class, Boolean.class) { @Override/*from w ww .j a v a2 s. c o m*/ public Object convert(Object fromObject) { if (fromObject == CaptureMethod.INDEFINITELY) { return false; } return true; } })); Binding binding = ctx.bindValue(WidgetProperties.text(SWT.Modify).observe(samplesTxt), BeanProperties.value("samples").observe(settings), new UpdateValueStrategy().setBeforeSetValidator(new IValidator() { @Override public IStatus validate(Object obj) { Double value = (Double) obj; if (Double.valueOf(value) <= 0) { return ValidationStatus.error(settings.getProcessType() + " must be greater than 0."); } if (value > Integer.MAX_VALUE) { return ValidationStatus.error(settings.getProcessType() + " must be less than or equal to " + Integer.MAX_VALUE + "."); } if ((value - value.intValue()) > 0) { return ValidationStatus .error(settings.getProcessType() + " must be a positive integer."); } if (value > 1000000) { return ValidationStatus.warning("For this sample size, you may run out of heap space."); } return ValidationStatus.ok(); } }), null); ControlDecorationSupport.create(binding, SWT.TOP | SWT.LEFT); final IObservableValue running = BeanProperties.value("running").observe(state); final IObservableValue pType = BeanProperties.value("processType").observe(settings); ComputedValue enabledSamples = new ComputedValue(Boolean.class) { @Override protected Object calculate() { return !(Boolean) running.getValue() && pType.getValue() != CaptureMethod.INDEFINITELY; } }; ctx.bindValue(WidgetProperties.enabled().observe(samplesTxt), enabledSamples, new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), null); final Label unitsLabel = new Label(parent, SWT.None); unitsLabel.setText(""); GridData unitsLayout = new GridData(); unitsLayout.widthHint = 20; unitsLabel.setLayoutData(unitsLayout); settings.addPropertyChangeListener(new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { if ("processType".equals(evt.getPropertyName())) { CaptureMethod method = (CaptureMethod) evt.getNewValue(); if (method == CaptureMethod.INDEFINITELY) { settings.setSamples(1); unitsLabel.setText(""); } else { if (method == CaptureMethod.CLOCK_TIME || method == CaptureMethod.SAMPLE_TIME) { unitsLabel.setText("(s)"); } else { unitsLabel.setText(""); } settings.setSamples(1024); } } } }); Label label = new Label(parent, SWT.None); label.setText("Number of Dimensions:"); Combo columnsCombo = new Combo(parent, SWT.BORDER | SWT.SINGLE | SWT.DROP_DOWN); columnsCombo.setText(REAL); columnsCombo.add(REAL, 0); columnsCombo.add(COMPLEX, 1); columnsCombo.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); ctx.bindValue(WidgetProperties.enabled().observe(columnsCombo), BeanProperties.value("running").observe(state), new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), new UpdateValueStrategy().setConverter(new Converter(Boolean.class, Boolean.class) { @Override public Boolean convert(Object fromObject) { return !((Boolean) fromObject); } })); binding = ctx.bindValue(WidgetProperties.selection().observe(columnsCombo), BeanProperties.value("dimensions").observe(settings), new UpdateValueStrategy().setAfterGetValidator(new IValidator() { @Override public IStatus validate(Object value) { if (REAL.equalsIgnoreCase((String) value)) { return ValidationStatus.ok(); } else if (COMPLEX.equalsIgnoreCase((String) value)) { return ValidationStatus.ok(); } else { try { Integer intValue = Integer.valueOf((String) value); if (intValue > 0) { return ValidationStatus.ok(); } } catch (NumberFormatException e) { // PASS } } return ValidationStatus .error("Please enter a positive integer or choose one of the options below."); } }).setConverter(new Converter(String.class, Integer.class) { @Override public Object convert(Object fromObject) { if (REAL.equalsIgnoreCase((String) fromObject)) { return 1; } else if (COMPLEX.equalsIgnoreCase((String) fromObject)) { return 2; } else { return Integer.valueOf((String) fromObject); } } }), null); ControlDecorationSupport.create(binding, SWT.TOP | SWT.LEFT); button = new Button(parent, SWT.None); button.setLayoutData(GridDataFactory.fillDefaults().create()); button.setImage(resources.get("icons/start.gif")); button.setToolTipText("Start Acquire"); button.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent e) { if (state.isRunning) { stopAcquire(); } else { startAcquire(); } } }); ctx.bindValue(WidgetProperties.enabled().observe(button), new AggregateValidationStatus(ctx, AggregateValidationStatus.MAX_SEVERITY), new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), new UpdateValueStrategy().setConverter(new Converter(IStatus.class, Boolean.class) { @Override public Object convert(Object fromObject) { return ((IStatus) fromObject).getSeverity() != IStatus.ERROR; } })); }
From source file:gov.redhawk.ide.codegen.frontend.ui.wizard.FrontEndTunerOptionsWizardPage.java
License:Open Source License
private Composite createDigitalIn(Composite parent) { Composite digitalIn = new Composite(parent, SWT.SHADOW_NONE); digitalIn.setLayout(new GridLayout(2, false)); Label digitalInputTypeLabel = new Label(digitalIn, SWT.None); digitalInputTypeLabel.setText("Digital Input Type: "); ComboViewer digitalInputCombo = new ComboViewer(digitalIn, SWT.READ_ONLY); digitalInputCombo.setContentProvider(new ArrayContentProvider()); digitalInputCombo.setLabelProvider(definitionComboViewerLabelProvider); digitalInputCombo.setInput(propertyTypes); ctx.bindValue(ViewersObservables.observeSingleSelection(digitalInputCombo), EMFObservables .observeValue(this.feiDevice, FrontendPackage.Literals.FEI_DEVICE__DIGITAL_INPUT_TYPE)); ctx.bindValue(WidgetProperties.enabled().observe(digitalInputCombo.getCombo()), EMFObservables .observeValue(this.feiDevice, FrontendPackage.Literals.FEI_DEVICE__HAS_DIGITAL_INPUT)); return digitalIn; }