List of usage examples for org.eclipse.jface.viewers ComboViewer getCombo
public Combo getCombo()
From source file:org.eclipse.emf.ecp.internal.ui.composites.AddRepositoryCompositeImpl.java
License:Open Source License
/** * @param composite//from www. j a v a 2 s.c o m */ private void createProviderSelector(Composite composite) { final Label label = new Label(composite, SWT.NONE); label.setLayoutData(new GridData(SWT.FILL, SWT.TOP, false, false, 1, 1)); label.setText(Messages.AddRepositoryComposite_RepositoryProvider); final ComboViewer providersViewer = new ComboViewer(composite, SWT.NONE); final Combo combo = providersViewer.getCombo(); final GridData gdCombo = new GridData(SWT.LEFT, SWT.CENTER, true, false, 1, 1); gdCombo.widthHint = 150; combo.setLayoutData(gdCombo); providersViewer.setContentProvider(new ProvidersContentProvider(true)); providersViewer.setLabelProvider(new ProvidersLabelProvider()); providersViewer.setSorter(new ViewerSorter()); providersViewer.setInput(ECPUtil.getECPProviderRegistry()); providersViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { final IStructuredSelection selection = (IStructuredSelection) event.getSelection(); provider = (ECPProvider) selection.getFirstElement(); if (provider != null) { showProviderUI(provider); if (listener != null) { listener.repositoryProviderChanged(provider); } } } }); for (final ECPProvider provider : ECPUtil.getECPProviderRegistry().getProviders()) { if (provider.hasCreateRepositorySupport()) { providersViewer.setSelection(new StructuredSelection(provider)); break; } } }
From source file:org.eclipse.emf.ecp.internal.ui.composites.CreateProjectCompositeImpl.java
License:Open Source License
/** {@inheritDoc} **/ @Override//w ww. ja va 2s. c o m public Composite createUI(Composite parent) { final Composite composite = new Composite(parent, SWT.NONE); composite.setLayoutData(new GridData(GridData.FILL_BOTH)); composite.setLayout(new GridLayout(2, false)); ComboViewer providersViewer = null; if (providers.size() > 1) { final Label label = new Label(composite, SWT.NONE); label.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false, 1, 1)); label.setText(Messages.UICreateProject_ProjectProvider + ":");//$NON-NLS-1$ providersViewer = new ComboViewer(composite, SWT.NONE | SWT.READ_ONLY); final Combo combo = providersViewer.getCombo(); final GridData gdCombo = new GridData(SWT.FILL, SWT.BEGINNING, true, false, 1, 1); gdCombo.minimumWidth = 150; combo.setLayoutData(gdCombo); providersViewer.setContentProvider(new ArrayContentProvider()); providersViewer.setLabelProvider(new ProvidersLabelProvider()); providersViewer.setSorter(new ViewerSorter()); providersViewer.setInput(providers); providersViewer.setSelection(new StructuredSelection(providers.get(0))); providersViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { final IStructuredSelection selection = (IStructuredSelection) event.getSelection(); provider = (ECPProvider) selection.getFirstElement(); updateUI(); if (listener != null) { listener.providerChanged(provider); } } }); } provider = providers.get(0); final Label labelName = new Label(composite, SWT.NONE); labelName.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false, 1, 1)); labelName.setText(Messages.UICreateProject_ProjectName + ":"); //$//$NON-NLS-1$ final Text textProjectName = new Text(composite, SWT.BORDER | SWT.SINGLE); textProjectName.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false, 1, 1)); textProjectName.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { projectName = textProjectName.getText(); if (projectName.equals("")) //$NON-NLS-1$ { projectName = null; } if (projectName == null) { topStatus = false; } else if (ECPUtil.getECPProjectManager().getProject(projectName) != null) { topStatus = false; } else { topStatus = true; } if (listener != null) { listener.projectNameChanged(projectName); } checkComplete(); } }); final Label seperator = new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL); seperator.setLayoutData(new GridData(SWT.FILL, SWT.BOTTOM, false, false, 2, 2)); providerStackLayout = new StackLayout(); providerStack = new Composite(composite, SWT.NONE); providerStack.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1)); providerStack.setLayout(providerStackLayout); updateUI(); return composite; }
From source file:org.eclipse.emf.editor.ui.binding.EmfSwtBindingFactory.java
License:Open Source License
private Control bindValue(EStructuralFeature feature) { Control retVal = null;/*from w ww. java2s. c o m*/ IObservableValue source = EMFEditObservables.observeValue(domain, owner, feature); IObservableValue target = null; if (feature.getEType().equals(EcorePackage.Literals.EBOOLEAN) || feature.getEType().equals(EcorePackage.Literals.EBOOLEAN_OBJECT) || (feature.getEType() instanceof EDataType && (feature.getEType().getInstanceClass() == Boolean.class || feature.getEType().getInstanceClass() == Boolean.TYPE))) { Button b = toolkit.createButton(parent, "", SWT.CHECK); target = SWTObservables.observeSelection(b); retVal = b; } else { List<?> proposals = proposalcreator.proposals(feature); if (feature instanceof EReference || feature.getEType() instanceof EEnumImpl) { ComboViewer combo = new ComboViewer(parent, SWT.READ_ONLY); toolkit.adapt(combo.getCombo()); combo.setContentProvider(new ArrayContentProvider()); combo.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory)); combo.setInput(proposals); target = ViewersObservables.observeSingleSelection(combo); retVal = combo.getCombo(); } else { Text t = toolkit.createText(parent, ""); t.setData(FormToolkit.KEY_DRAW_BORDER, FormToolkit.TREE_BORDER); if (proposals != null && !proposals.isEmpty()) { // TODO prevent adding null to a list, for example a Collection // Type while (proposals.remove(null)) { // clear null entries } ControlDecoration field = new ControlDecoration(t, SWT.BORDER); FieldDecoration requiredFieldIndicator = FieldDecorationRegistry.getDefault() .getFieldDecoration(FieldDecorationRegistry.DEC_CONTENT_PROPOSAL); field.setImage(requiredFieldIndicator.getImage()); field.setDescriptionText(requiredFieldIndicator.getDescription()); KeyStroke keyStroke = null; String string = "Ctrl+Space"; try { keyStroke = KeyStroke.getInstance(string); } catch (ParseException e) { EEPlugin.getDefault().getLog().log( new Status(IStatus.ERROR, EEPlugin.PLUGIN_ID, "Error while parse: " + string, e)); } new ContentProposalAdapter(t, new TextContentAdapter(), new SimpleContentProposalProvider(proposals.toArray(new String[] {})), keyStroke, null); } target = SWTObservables.observeText(t, SWT.Modify); retVal = t; } } edbc.bindValue(target, source, null, null); return retVal; }
From source file:org.eclipse.emf.examples.library.databinding.stock.dialog.BookDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite container = (Composite) super.createDialogArea(parent); getShell().setText("Edit Book"); setTitle("Edit the book"); setMessage(//from w ww .jav a 2 s .c om "Edit the data of the book with the form below and press ok when done or cancel to undo all modifications."); Composite comp = new Composite(container, SWT.NONE); comp.setLayoutData(new GridData(GridData.FILL_BOTH)); comp.setLayout(new GridLayout(2, false)); DataBindingContext dbc = new DataBindingContext(); /* * Title */ Label l = new Label(comp, SWT.NONE); l.setText("Title"); Text t = new Text(comp, SWT.BORDER); t.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); IValueProperty uProp = WidgetProperties.text(SWT.Modify); IEMFEditValueProperty mProp = EMFEditProperties.value(domain, EXTLibraryPackage.Literals.BOOK__TITLE); dbc.bindValue(SWTObservables.observeDelayedValue(400, (ISWTObservableValue) uProp.observe(t)), mProp.observe(book)); /* * Publication Date */ l = new Label(comp, SWT.NONE); l.setText("Publication Date"); t = new Text(comp, SWT.BORDER); t.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); mProp = EMFEditProperties.value(domain, EXTLibraryPackage.Literals.ITEM__PUBLICATION_DATE); dbc.bindValue(SWTObservables.observeDelayedValue(400, (ISWTObservableValue) uProp.observe(t)), mProp.observe(book), new UpdateValueStrategy(), new UpdateValueStrategy().setConverter(new DateToStringConverter())); /* * Copies */ l = new Label(comp, SWT.NONE); l.setText("Copies"); t = new Text(comp, SWT.BORDER); t.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); mProp = EMFEditProperties.value(domain, EXTLibraryPackage.Literals.LENDABLE__COPIES); dbc.bindValue(SWTObservables.observeDelayedValue(400, (ISWTObservableValue) uProp.observe(t)), mProp.observe(book)); /* * Pages */ l = new Label(comp, SWT.NONE); l.setText("Pages"); t = new Text(comp, SWT.BORDER); t.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); mProp = EMFEditProperties.value(domain, EXTLibraryPackage.Literals.BOOK__PAGES); dbc.bindValue(SWTObservables.observeDelayedValue(400, (ISWTObservableValue) uProp.observe(t)), mProp.observe(book)); /* * Category */ l = new Label(comp, SWT.NONE); l.setText("Category"); ComboViewer categoryViewer = new ComboViewer(comp, SWT.BORDER); categoryViewer.setContentProvider(new ArrayContentProvider()); categoryViewer.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { switch ((BookCategory) element) { case BIOGRAPHY_LITERAL: return "Biographie"; case MYSTERY_LITERAL: return "Mystery"; case SCIENCE_FICTION_LITERAL: return "Science Fiction"; default: return ""; } } }); categoryViewer.getCombo().setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); categoryViewer.setInput(new BookCategory[] { BookCategory.BIOGRAPHY_LITERAL, BookCategory.MYSTERY_LITERAL, BookCategory.SCIENCE_FICTION_LITERAL }); IValueProperty selectionProp = ViewerProperties.singleSelection(); mProp = EMFEditProperties.value(domain, EXTLibraryPackage.Literals.BOOK__CATEGORY); dbc.bindValue(selectionProp.observe(categoryViewer), mProp.observe(book)); /* * Author */ l = new Label(comp, SWT.NONE); l.setText("Author"); TokenViewer authorViewer = new TokenViewer(comp); authorViewer.getControl().setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); authorViewer.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { Writer w = (Writer) element; return w.getLastName() + ", " + w.getFirstName(); } }); authorViewer.setContentProvider(new ArrayContentProvider()); authorViewer.setInput(EMFEditObservables.observeList(Realm.getDefault(), domain, library, EXTLibraryPackage.Literals.LIBRARY__WRITERS)); mProp = EMFEditProperties.value(domain, EXTLibraryPackage.Literals.BOOK__AUTHOR); dbc.bindValue(selectionProp.observe(authorViewer), mProp.observe(book)); return container; }
From source file:org.eclipse.emfforms.internal.editor.ecore.controls.DataTypeControl.java
License:Open Source License
@Override protected Viewer createJFaceViewer(Composite parent) { final ComboViewer combo = new ComboViewer(parent, SWT.DROP_DOWN); Class<?> type = EClassifier.class; boolean includeEcorePackage = false; if (getViewModelContext().getDomainModel() instanceof EAttribute) { type = EDataType.class; includeEcorePackage = true;/* w w w.ja v a 2 s . c om*/ } else if (getViewModelContext().getDomainModel() instanceof EReference) { type = EClass.class; includeEcorePackage = false; } final List<?> classifiers = ResourceSetHelpers .findAllOfTypeInResourceSet(getViewModelContext().getDomainModel(), type, includeEcorePackage); combo.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { if (element instanceof EClassifier) { return ((EClassifier) element).getName(); } return super.getText(element); } }); combo.setContentProvider(new ArrayContentProvider()); combo.setInput(classifiers.toArray()); new AutoCompleteField(combo.getCombo(), new ComboContentAdapter(), combo.getCombo().getItems()); return combo; }
From source file:org.eclipse.emfforms.internal.swt.control.text.autocomplete.renderer.AutocompleteTextControlSWTRenderer.java
License:Open Source License
/** * {@inheritDoc}//from w ww.j a v a 2s .c o m * * @see org.eclipse.emf.ecp.view.spi.core.swt.SimpleControlJFaceViewerSWTRenderer#createJFaceViewer(org.eclipse.swt.widgets.Composite) */ @Override protected Viewer createJFaceViewer(Composite parent) throws DatabindingFailedException { final ComboViewer combo = new ComboViewer(parent, SWT.DROP_DOWN); combo.setContentProvider(ArrayContentProvider.getInstance()); combo.setInput(getProposals()); new AutoCompleteField(combo.getCombo(), new ComboContentAdapter(), combo.getCombo().getItems()); return combo; }
From source file:org.eclipse.emfforms.internal.swt.control.text.autocomplete.renderer.AutocompleteTextControlSWTRenderer_Test.java
License:Open Source License
@Test public void testCreateJFaceViewer() throws DatabindingFailedException { final AutocompleteTextControlSWTRenderer renderer = new AutocompleteTextControlSWTRenderer(control, viewModelContext, mock(ReportService.class), emfFormsDatabinding, mock(EMFFormsLabelProvider.class), mock(VTViewTemplateProvider.class)); final Viewer viewer = renderer.createJFaceViewer(composite); assertTrue(ComboViewer.class.isInstance(viewer)); final ComboViewer comboViewer = ComboViewer.class.cast(viewer); assertEquals(1, composite.getChildren().length); assertSame(comboViewer.getCombo(), composite.getChildren()[0]); assertSame(staticProposals, comboViewer.getInput()); /* check if contentproposal adapters have been set up */ /* TODO better way to test this? */ final Listener[] keyDownListeners = comboViewer.getCombo().getListeners(SWT.KeyDown); final Listener[] traverseListeners = comboViewer.getCombo().getListeners(SWT.Traverse); final Listener[] modifyListeners = comboViewer.getCombo().getListeners(SWT.Modify); assertTrue("Content assist not set up?", hasContentProposalAdapter(keyDownListeners)); //$NON-NLS-1$ assertTrue("Content assist not set up?", hasContentProposalAdapter(traverseListeners)); //$NON-NLS-1$ assertTrue("Content assist not set up?", hasContentProposalAdapter(modifyListeners)); //$NON-NLS-1$ }
From source file:org.eclipse.epf.library.ui.dialogs.UserInputsDialog.java
License:Open Source License
/** * Creates a Comboviewer.//from ww w. j av a 2 s . co m * * @param composite * @param userInput */ protected void createComboViewer(Composite composite, UserInput userInput) { final UserInput localInput = userInput; final IValidator validator = userInput.getValidator(); final ComboViewer viewer = new ComboViewer(composite); viewer.getCombo().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); viewer.setContentProvider(new ArrayContentProvider()); if (userInput.getLabelProvider() != null) { viewer.setLabelProvider(new DelegateLabelProvider(userInput.getLabelProvider())); } List choices = userInput.getChoices(); viewer.setInput(choices); if (choices != null && choices.size() > 0) { viewer.setSelection(new StructuredSelection(choices.get(0))); localInput.setInput(choices.get(0)); } viewer.getCombo().addFocusListener(new FocusAdapter() { public void focusLost(FocusEvent e) { String errorTxt = ""; //$NON-NLS-1$ IStructuredSelection selected = (IStructuredSelection) viewer.getSelection(); if (validator == null || selected == null) { return; } IStatus status = validator.isValid(selected.getFirstElement()); if (status.getSeverity() == IStatus.ERROR) { errorTxt = status.getMessage(); } if (errorTxt != null && errorTxt.length() > 0) { errorArea.setText(errorTxt); getButton(OK).setEnabled(false); } if (globalErrorTxt != null && globalErrorTxt.length() > 0) { errorArea.setText(globalErrorTxt); getButton(OK).setEnabled(false); } else errorArea.setText(""); //$NON-NLS-1$ } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { getButton(OK).setEnabled(true); errorArea.setText(""); //$NON-NLS-1$ IStructuredSelection selection = (IStructuredSelection) event.getSelection(); Object obj = selection.getFirstElement(); String errorTxt = ""; //$NON-NLS-1$ if (validator != null) { IStatus status = validator.isValid(obj); if (status.getCode() == IStatus.ERROR) { errorTxt = status.getMessage(); } if (errorTxt != null && errorTxt.length() > 0) { errorArea.setText(errorTxt); } else if (globalErrorTxt != null && globalErrorTxt.length() > 0) { errorArea.setText(globalErrorTxt); getButton(OK).setEnabled(false); } else errorArea.setText(""); //$NON-NLS-1$ } if (errorTxt == null || errorTxt.length() <= 0) { localInput.setInput(obj); } } }); }
From source file:org.eclipse.jpt.common.ui.tests.internal.jface.DelegatingLabelProviderUiTest.java
License:Open Source License
private void buildVehicleCombo(Composite parent) { final ComboViewer combo = new ComboViewer(parent, SWT.READ_ONLY); combo.getCombo().setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false)); combo.setContentProvider(new ArrayContentProvider()); combo.setLabelProvider(new VehicleTypeLabelProvider()); combo.setInput(/*from w ww.ja v a 2 s. com*/ new VehicleType[] { VehicleType.BICYCLE, VehicleType.CAR, VehicleType.TRUCK, VehicleType.BOAT }); combo.getCombo().setEnabled(false); combo.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { DelegatingLabelProviderUiTest.this.getSelectedVehicle().setVehicleType( (VehicleType) ((StructuredSelection) event.getSelection()).getFirstElement()); } }); this.selectedVehicleModel.addPropertyChangeListener(PropertyValueModel.VALUE, new PropertyChangeListener() { public void propertyChanged(PropertyChangeEvent event) { Vehicle vehicle = DelegatingLabelProviderUiTest.this.getSelectedVehicle(); combo.getCombo().setEnabled(vehicle != null); combo.setSelection(new StructuredSelection((vehicle == null) ? null : vehicle.getVehicleType())); } }); }
From source file:org.eclipse.jpt.common.ui.tests.internal.jface.DelegatingLabelProviderUiTest.java
License:Open Source License
private void buildColorCombo(Composite parent) { final ComboViewer combo = new ComboViewer(parent, SWT.READ_ONLY); combo.getCombo().setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false)); combo.setContentProvider(new ArrayContentProvider()); combo.setLabelProvider(new ColorLabelProvider()); combo.setInput(new VehicleColor[] { VehicleColor.RED, VehicleColor.BLUE, VehicleColor.YELLOW, VehicleColor.GREEN });// w w w . ja v a 2s. com combo.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { DelegatingLabelProviderUiTest.this.getSelectedVehicle() .setColor((VehicleColor) ((StructuredSelection) event.getSelection()).getFirstElement()); } }); this.selectedVehicleModel.addPropertyChangeListener(PropertyValueModel.VALUE, new PropertyChangeListener() { public void propertyChanged(PropertyChangeEvent event) { Vehicle vehicle = DelegatingLabelProviderUiTest.this.getSelectedVehicle(); combo.getCombo().setEnabled(vehicle != null); combo.setSelection(new StructuredSelection((vehicle == null) ? null : vehicle.getColor())); } }); }