List of usage examples for org.eclipse.jface.viewers ComboViewer getCombo
public Combo getCombo()
From source file:org.goko.common.bindings.AbstractController.java
License:Open Source License
/** * Enables/disable the source when the property is respectively false/true * @param source the UI object//from w w w.ja v a 2s.co m * @param property the name of the property * @throws GkException GkException */ public void addEnableReverseBinding(ComboViewer source, String property) throws GkException { addEnableReverseBinding(source.getCombo(), property); }
From source file:org.gumtree.gumnix.sics.batch.ui.views.DrivableCommandView.java
License:Open Source License
@Override public void createPartControl(Composite parent, DrivableCommand command) { bindingContext = new DataBindingContext(); errorDec = FieldDecorationRegistry.getDefault().getFieldDecoration(FieldDecorationRegistry.DEC_ERROR); GridLayoutFactory.fillDefaults().margins(0, 0).spacing(10, SWT.DEFAULT).numColumns(2).applyTo(parent); final ComboViewer methodComboViewer = new ComboViewer(parent, SWT.READ_ONLY); methodComboViewer.setContentProvider(new ArrayContentProvider()); methodComboViewer.setLabelProvider(new LabelProvider()); methodComboViewer.setSorter(new ViewerSorter()); methodComboViewer.setInput(command.getAvailableMethods()); GridDataFactory.swtDefaults().align(SWT.BEGINNING, SWT.TOP).indent(0, 2).hint(WIDTH_COMBO, SWT.DEFAULT) .applyTo(methodComboViewer.getCombo()); Composite parametersArea = getToolkit().createComposite(parent); GridLayoutFactory.fillDefaults().margins(0, 0).applyTo(parametersArea); GridDataFactory.fillDefaults().grab(true, false).applyTo(parametersArea); // Fill default for (DrivableParameter parameter : getCommand().getParameters()) { createParameterArea(parametersArea, parameter); }/* w ww. j ava 2 s . co m*/ // Set default if no default is available from the model if (getCommand().getParameters().length == 0) { createNewParameter(parametersArea); } /********************************************************************* * Data binding *********************************************************************/ Realm.runWithDefault(SWTObservables.getRealm(Display.getDefault()), new Runnable() { public void run() { bindingContext.bindValue(ViewersObservables.observeSingleSelection(methodComboViewer), BeansObservables.observeValue(getCommand(), "method"), new UpdateValueStrategy(), new UpdateValueStrategy()); } }); }
From source file:org.gumtree.gumnix.sics.batch.ui.views.DrivableCommandView.java
License:Open Source License
private void createParameterArea(final Composite parent, final DrivableParameter parameter) { /********************************************************************* * Initialise//from www. j a v a 2 s . c om *********************************************************************/ parent.setMenu(new Menu(parent)); final Composite parameterArea = getToolkit().createComposite(parent); GridLayoutFactory.swtDefaults().margins(0, 0).spacing(10, SWT.DEFAULT).numColumns(4).applyTo(parameterArea); GridDataFactory.fillDefaults().grab(true, false).applyTo(parameterArea); final ComboViewer drivableComboViewer = new ComboViewer(parameterArea, SWT.READ_ONLY); drivableComboViewer.setContentProvider(new ArrayContentProvider()); drivableComboViewer.setLabelProvider(new LabelProvider()); drivableComboViewer.setSorter(new ViewerSorter()); drivableComboViewer.setInput(SicsBatchUIUtils.getSicsDrivableIds()); GridDataFactory.swtDefaults().hint(WIDTH_COMBO, SWT.DEFAULT).applyTo(drivableComboViewer.getCombo()); final Text targetText = getToolkit().createText(parameterArea, "", SWT.BORDER); targetText.setToolTipText("Enter target value"); GridDataFactory.swtDefaults().hint(WIDTH_PARAMETER, SWT.DEFAULT).applyTo(targetText); if (DrivableCommand.isDrivingMultipleAllowed()) { Button addButton = getToolkit().createButton(parameterArea, "", SWT.PUSH); addButton.setImage(InternalImage.ADD.getImage()); addButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { createNewParameter(parent); fireRefresh(); } }); Button removeButton = getToolkit().createButton(parameterArea, "", SWT.PUSH); removeButton.setImage(InternalImage.REMOVE.getImage()); removeButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { // Do not delete if there is not too much left if (getCommand().getParameters().length <= 1) { return; } parameterArea.dispose(); getCommand().removeDrivableParameter(parameter); fireRefresh(); } }); } /********************************************************************* * Validation *********************************************************************/ final ControlDecoration controlDec = new ControlDecoration(targetText, SWT.LEFT | SWT.BOTTOM); // Validate on target value change targetText.addModifyListener(new ModifyListener() { public void modifyText(ModifyEvent e) { validate(targetText, controlDec, drivableComboViewer); } }); // Validate on device change drivableComboViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { validate(targetText, controlDec, drivableComboViewer); } }); /********************************************************************* * Data binding *********************************************************************/ Realm.runWithDefault(SWTObservables.getRealm(Display.getDefault()), new Runnable() { public void run() { bindingContext.bindValue(ViewersObservables.observeSingleSelection(drivableComboViewer), BeansObservables.observeValue(parameter, "deviceId"), new UpdateValueStrategy(), new UpdateValueStrategy()); bindingContext.bindValue(SWTObservables.observeText(targetText, SWT.Modify), BeansObservables.observeValue(parameter, "target"), new UpdateValueStrategy(), new UpdateValueStrategy()); /********************************************************************* * Default selection *********************************************************************/ if (parameter.getDeviceId() == null) { if (drivableComboViewer.getCombo().getItemCount() > 0) { drivableComboViewer.setSelection(new StructuredSelection(drivableComboViewer .getElementAt(drivableComboViewer.getCombo().getItemCount() - 1))); } } } }); }
From source file:org.gumtree.gumnix.sics.ui.widgets.CommandControlWidget.java
License:Open Source License
protected void createUI() { /********************************************************************* * Initialise/* w w w . j a va 2 s. c om*/ *********************************************************************/ GridLayoutFactory.swtDefaults().numColumns(3).spacing(5, 2).applyTo(this); /********************************************************************* * Construct header *********************************************************************/ final ICommandController commandController = getDataAccessManager().get(commandURI, ICommandController.class); Composite headerComposite = getToolkit().createComposite(this); GridDataFactory.fillDefaults().span(3, 1).applyTo(headerComposite); GridLayoutFactory.swtDefaults().numColumns(3).margins(0, 0).applyTo(headerComposite); Label label = getToolkit().createLabel(headerComposite, commandController.getId().toUpperCase()); label.setFont(UIResources.getDefaultFont(SWT.BOLD)); Label statusLabel = getToolkit().createLabel(headerComposite, "", SWT.CENTER); statusLabel.setFont(UIResources.getDefaultFont(SWT.BOLD)); GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).applyTo(statusLabel); uriMap.put(SicsDataAccessUtils.createControllerStatusURI(commandController), statusLabel); Button runButton = getToolkit().createButton(headerComposite, "Run", SWT.PUSH); runButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { try { commandController.asyncExecute(); } catch (SicsIOException e1) { logger.error("Failed to run command" + commandController.getDeviceId(), e1); } } }); GridDataFactory.swtDefaults().hint(60, 20).applyTo(runButton); /********************************************************************* * Construct arguments *********************************************************************/ for (IComponentController childController : commandController.getChildControllers()) { if (childController instanceof IDynamicController) { final IDynamicController controller = (IDynamicController) childController; Label argLabel = getToolkit().createLabel(this, ""); argLabel.setFont(UIResources.getDefaultFont(SWT.BOLD)); uriMap.put(SicsDataAccessUtils.createControllerIdURI(controller), argLabel); GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).applyTo(argLabel); URI controllerURI = SicsDataAccessUtils.createControllerURI(controller); Label currentLabel = getToolkit().createLabel(this, "", SWT.RIGHT); uriMap.put(controllerURI, currentLabel); GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).hint(80, SWT.DEFAULT) .applyTo(currentLabel); final URI controllerTargetURI = SicsDataAccessUtils.createControllerTargetURI(controller); String valuesString = null; try { valuesString = getDataAccessManager() .get(SicsDataAccessUtils.createControllerValuesURI(controller), String.class); } catch (Exception e) { } if (valuesString != null) { final ComboViewer comboViewer = new ComboViewer(this, SWT.NONE); comboViewer.setContentProvider(new ArrayContentProvider()); comboViewer.setLabelProvider(new LabelProvider()); List<String> values = new ArrayList<String>(); for (String value : valuesString.split(",")) { values.add(value.trim()); } comboViewer.setInput(values.toArray(new String[values.size()])); // Read from selection comboViewer.getCombo().addFocusListener(new FocusAdapter() { public void focusLost(FocusEvent e) { String selection = (String) ((IStructuredSelection) comboViewer.getSelection()) .getFirstElement(); if (selection != null) { String currentValue = getDataAccessManager().get(controllerTargetURI, String.class); // Drive only on change in target if (!selection.equals(currentValue)) { driveDevice(controller, selection); } } } }); // Read from custom text comboViewer.getCombo().addKeyListener(new KeyAdapter() { public void keyReleased(KeyEvent e) { if (e.keyCode == SWT.KEYPAD_CR || e.keyCode == SWT.CR) { driveDevice(controller, comboViewer.getCombo().getText()); } } }); uriMap.put(controllerTargetURI, comboViewer); GridDataFactory.fillDefaults().hint(80, SWT.DEFAULT).applyTo(comboViewer.getControl()); } else { final Text targetText = getToolkit().createText(this, ""); uriMap.put(SicsDataAccessUtils.createControllerTargetURI(controller), targetText); GridDataFactory.fillDefaults().hint(80, SWT.DEFAULT).applyTo(targetText); targetText.addKeyListener(new KeyAdapter() { public void keyReleased(KeyEvent e) { if (e.keyCode == SWT.KEYPAD_CR || e.keyCode == SWT.CR) { driveDevice(controller, targetText.getText()); } } }); } } } /********************************************************************* * Fetch initial values *********************************************************************/ for (Entry<URI, Object> entry : uriMap.entrySet()) { URI uri = entry.getKey(); Object widget = entry.getValue(); Class<?> representation = String.class; if ("status".equals(uri.getQuery())) { representation = ControllerStatus.class; } updateWidgetData(uri, widget, getDataAccessManager().get(uri, representation)); } /********************************************************************* * Finalise *********************************************************************/ getParent().layout(true, true); }
From source file:org.gumtree.workflow.ui.viewer.TaskToolbar.java
License:Open Source License
public void createControl(Composite parent) { /********************************************************************* * Initialise//from w w w . ja v a2s . co m *********************************************************************/ resourceManager = new UIResourceManager(Activator.PLUGIN_ID, parent); handCursor = UIResources.getSystemCursor(SWT.CURSOR_HAND); searchPattern = new SearchPattern(); SashForm sashForm = new SashForm(parent, SWT.VERTICAL); getToolkit().adapt(sashForm); Composite composite = getToolkit().createComposite(sashForm); GridLayoutFactory.swtDefaults().numColumns(2).applyTo(composite); /********************************************************************* * Row 1 - filter text *********************************************************************/ filterText = getToolkit().createText(composite, DEFAULT_FILTER_TEXT, SWT.NONE); GridDataFactory.fillDefaults().grab(true, false).applyTo(filterText); Label clearButton = getToolkit().createLabel(composite, ""); clearButton.setImage(InternalImage.CLEAR_EDIT.getImage()); clearButton.setCursor(handCursor); /********************************************************************* * Row 2 - tag filter *********************************************************************/ final ComboViewer comboViewer = new ComboViewer(composite, SWT.READ_ONLY); comboViewer.getCombo().setVisibleItemCount(25); comboViewer.setContentProvider(new ArrayContentProvider()); comboViewer.setLabelProvider(new LabelProvider() { public String getText(Object element) { // Replace first letter to upper case return element.toString().substring(0, 1).toUpperCase() + element.toString().substring(1); } }); List<String> tags = new ArrayList<String>(Arrays.asList(getTaskRegistry().getAvailableTags())); tags.add(0, "All"); comboViewer.setInput(tags); GridDataFactory.fillDefaults().grab(true, false).span(2, 1).applyTo(comboViewer.getControl()); /********************************************************************* * Row 3 - task viewer *********************************************************************/ taskViewer = new TableViewer(composite, SWT.V_SCROLL | SWT.BORDER); // taskViewer.getTable().setFont(resourceManager.createFont(SWT.BOLD)); taskViewer.setContentProvider(new ArrayContentProvider()); taskViewer.setLabelProvider(new LabelProvider() { public Image getImage(Object element) { return ((ITaskDescriptor) element).getIcon(); } public String getText(Object element) { return " " + ((ITaskDescriptor) element).getLabel(); } }); taskViewer.setSorter(new ViewerSorter() { public int compare(Viewer viewer, Object e1, Object e2) { return ((ITaskDescriptor) e1).getLabel().compareTo(((ITaskDescriptor) e2).getLabel()); } }); taskViewer.addDragSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() }, new DragSourceAdapter() { public void dragFinished(DragSourceEvent event) { LocalSelectionTransfer.getTransfer().setSelection(null); } public void dragSetData(DragSourceEvent event) { if (LocalSelectionTransfer.getTransfer().isSupportedType(event.dataType)) { LocalSelectionTransfer.getTransfer().setSelection(taskViewer.getSelection()); } } }); GridDataFactory.fillDefaults().grab(true, true).span(2, 1).applyTo(taskViewer.getControl()); /********************************************************************* * Row 4 - task description *********************************************************************/ descForm = getToolkit().createScrolledForm(sashForm); GridLayoutFactory.swtDefaults().margins(0, 0).spacing(0, 0).applyTo(descForm.getBody()); taskLabel = new CLabel(descForm.getBody(), SWT.WRAP); getToolkit().adapt(taskLabel); taskLabel.setFont(resourceManager.createDefaultFont(10, SWT.BOLD)); GridDataFactory.fillDefaults().grab(true, false).hint(SWT.DEFAULT, 32).applyTo(taskLabel); descText = getToolkit().createFormText(descForm.getBody(), false); GridDataFactory.fillDefaults().grab(true, true).applyTo(descText); sashForm.setWeights(new int[] { 3, 1 }); /********************************************************************* * Widget logic *********************************************************************/ // Ensure default filter text is highlighted filterText.addMouseListener(new MouseAdapter() { public void mouseDown(MouseEvent e) { if (filterText.getText() != null && filterText.getText().equals(DEFAULT_FILTER_TEXT)) { filterText.selectAll(); } } }); // Clear filter text clearButton.addMouseListener(new MouseAdapter() { public void mouseDown(MouseEvent e) { filterText.setText(""); } }); // Append new task based on double click taskViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { ITaskDescriptor desc = (ITaskDescriptor) ((IStructuredSelection) taskViewer.getSelection()) .getFirstElement(); addNewTask(desc); } }); // Update description based on selection taskViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { ITaskDescriptor desc = (ITaskDescriptor) ((IStructuredSelection) event.getSelection()) .getFirstElement(); updateTaskDescription(desc, taskLabel, descText); // To ensure the form text wraps GridDataFactory.fillDefaults().grab(true, true).hint(descForm.getSize().x, SWT.DEFAULT) .applyTo(descText); descForm.layout(true, true); descForm.reflow(true); } }); filterText.addModifyListener(new ModifyListener() { public void modifyText(ModifyEvent e) { String tag = (String) ((IStructuredSelection) comboViewer.getSelection()).getFirstElement(); setTasks(tag, filterText.getText()); } }); // Apply filter on tag comboViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { String tag = (String) ((IStructuredSelection) event.getSelection()).getFirstElement(); setTasks(tag, filterText.getText()); } }); /********************************************************************* * Initialise widget value *********************************************************************/ comboViewer.getCombo().select(0); taskViewer.setInput(taskRegistry.getAllTaskDescriptors()); }
From source file:org.gw4e.eclipse.wizard.template.TemplateComposite.java
License:Open Source License
private void addDefaultTargetFolderSection() { Label lblChooseATemplate = new Label(this, SWT.NONE); lblChooseATemplate.setText("Choose a target folder :"); String[] temp = PreferenceManager.getDefaultAuthorizedFolderForGraphDefinition(); Folder[] folders = new Folder[temp.length]; int i = 0;//from ww w . j a v a 2 s.com for (String f : temp) { folders[i] = new Folder(f); i++; } ComboViewer viewerTarget = new ComboViewer(this, SWT.READ_ONLY); Combo combo = viewerTarget.getCombo(); combo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); viewerTarget.setContentProvider(ArrayContentProvider.getInstance()); viewerTarget.setLabelProvider(new LabelProvider() { public String getText(Object element) { Folder folder = (Folder) element; return folder.getName(); } }); viewerTarget.setInput(folders); viewerTarget.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); if (selection.size() > 0) { setSelection(event.getSelection()); } } }); ISelection selection = new StructuredSelection(folders[0]); viewerTarget.setSelection(selection); setSelection(selection); }
From source file:org.hawk.ui.emfresource.exeed.EClassSelectionDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { final Composite container = new Composite(parent, SWT.NONE); final GridLayout layout = new GridLayout(); layout.numColumns = 2;/*from w w w .ja v a2s .co m*/ container.setLayout(layout); final Label lblPackage = new Label(container, SWT.NONE); lblPackage.setText("Package:"); final ComboViewer lPackages = new ComboViewer(container, SWT.BORDER); lPackages.setLabelProvider(new LabelProvider()); lPackages.setContentProvider(new ArrayContentProvider()); Object[] packages; try { packages = resource.getRegisteredMetamodels().toArray(); } catch (Exception e) { Activator.logError("Could not retrieve registered metamodels", e); packages = new Object[0]; } Arrays.sort(packages); lPackages.setInput(packages); lPackages.getCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); final Label lblClass = new Label(container, SWT.NONE); lblClass.setText("EClass:"); final ComboViewer lClasses = new ComboViewer(container, SWT.DROP_DOWN); lClasses.setLabelProvider(new LabelProvider()); lClasses.setContentProvider(new ArrayContentProvider()); lClasses.setInput(new Object[0]); lClasses.getCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); lPackages.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { eClass = null; if (event.getSelection() instanceof IStructuredSelection) { final IStructuredSelection ssel = (IStructuredSelection) event.getSelection(); if (ssel.getFirstElement() != null) { final String packageURI = (String) ssel.getFirstElement(); ePackage = resource.getResourceSet().getPackageRegistry().getEPackage(packageURI); final List<String> eClassNames = new ArrayList<>(); if (ePackage != null) { for (EClassifier classifier : ePackage.getEClassifiers()) { if (classifier instanceof EClass) { eClassNames.add(classifier.getName()); } } } final Object[] arrClassNames = eClassNames.toArray(); Arrays.sort(arrClassNames); lClasses.setInput(arrClassNames); } } checkOKEnabled(); } }); lClasses.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { if (event.getSelection() instanceof IStructuredSelection) { final IStructuredSelection ssel = (IStructuredSelection) event.getSelection(); if (ssel.getFirstElement() != null) { final String className = (String) ssel.getFirstElement(); eClass = (EClass) ePackage.getEClassifier(className); } } checkOKEnabled(); } }); return container; }
From source file:org.hibernate.eclipse.launch.AddPropertyDialog.java
License:Open Source License
private void initDefaultNames(ExporterFactory ef2, ComboViewer viewer) { viewer.setContentProvider(new IStructuredContentProvider() { ExporterFactory localEf;//w ww .jav a2 s .c om public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { localEf = (ExporterFactory) newInput; } public void dispose() { localEf = null; } public Object[] getElements(Object inputElement) { Iterator<Map.Entry<String, ExporterProperty>> set = localEf.getDefaultExporterProperties() .entrySet().iterator(); List<ExporterProperty> values = new ArrayList<ExporterProperty>(4); while (set.hasNext()) { Map.Entry<String, ExporterProperty> element = set.next(); //if(!localEf.hasLocalValueFor((String) element.getKey())) { ExporterProperty exporterProperty = localEf.getExporterProperty(element.getKey()); if (exporterProperty != null) { values.add(exporterProperty); } //} } return values.toArray(new ExporterProperty[values.size()]); } }); viewer.setLabelProvider(new ILabelProvider() { public void removeListener(ILabelProviderListener listener) { } public boolean isLabelProperty(Object element, String property) { return false; } public void dispose() { } public void addListener(ILabelProviderListener listener) { } public String getText(Object element) { ExporterProperty exporterProperty = ((ExporterProperty) element); return exporterProperty.getDescriptionForLabel(); } public Image getImage(Object element) { return null; } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { private SelectionListener getSelectionListener(ExporterProperty prop) { if (!("path".equals(prop.getType()) || "directory".equals(prop.getType()))) //$NON-NLS-1$//$NON-NLS-2$ return null; final boolean isPath = "path".equals(prop.getType()); //$NON-NLS-1$ return new SelectionListener() { public void widgetDefaultSelected(SelectionEvent e) { widgetSelected(e); } public void widgetSelected(SelectionEvent e) { String title = isPath ? HibernateConsoleMessages.ExporterSettingsTab_select_path : HibernateConsoleMessages.ExporterSettingsTab_select_dir; String description = isPath ? HibernateConsoleMessages.ExporterSettingsTab_select_path2 : HibernateConsoleMessages.ExporterSettingsTab_select_dir2; MessageDialog dialog = new MessageDialog(getShell(), title, null, description, MessageDialog.QUESTION, new String[] { HibernateConsoleMessages.CodeGenerationSettingsTab_filesystem, HibernateConsoleMessages.CodeGenerationSettingsTab_workspace, IDialogConstants.CANCEL_LABEL }, 1); int answer = dialog.open(); String strPath = null; if (answer == 0) { // filesystem DirectoryDialog dialog2 = new DirectoryDialog(getShell()); dialog2.setText(title); dialog2.setMessage(description); String dir = dialog2.open(); if (dir != null) { strPath = dir; } } else if (answer == 1) { // workspace IPath[] paths = DialogSelectionHelper.chooseFileEntries(getShell(), (IPath) null, new Path[0], title, description, new String[0], isPath, true, false); if (paths != null && paths.length > 0) { strPath = paths[0].toOSString(); if (isPath) { for (int i = 1; i < paths.length; i++) { strPath += ';' + paths[i].toOSString(); } } } } else return; String oldPath = ((Text) value).getText(); if (isPath && oldPath.trim().length() > 0 && strPath != null) ((Text) value).setText(oldPath + ';' + strPath); else { if (strPath != null) ((Text) value).setText(strPath); } } }; } public void selectionChanged(SelectionChangedEvent event) { if (value == null) return; IStructuredSelection iss = (IStructuredSelection) event.getSelection(); if (!iss.isEmpty()) { ExporterProperty prop = (ExporterProperty) iss.getFirstElement(); if ("boolean".equalsIgnoreCase(prop.getType())) { //$NON-NLS-1$ disposeBrowseButton(); createComboValueComposite(new String[] { String.valueOf(true), String.valueOf(false) }); ((Combo) value).select( Boolean.valueOf(ef.getPropertyValue(prop.getName())).booleanValue() ? 0 : 1); } else if ("directory".equalsIgnoreCase(prop.getType())//$NON-NLS-1$ || "path".equalsIgnoreCase(prop.getType())) { //$NON-NLS-1$ disposeBrowseButton(); createTextValueComposite(1); ((Text) value).setText(ef.getPropertyValue(prop.getName())); createBrowseButton(getSelectionListener(prop), prop); } else { disposeBrowseButton(); createTextValueComposite(2); ((Text) value).setText(ef.getPropertyValue(prop.getName())); } } else { createTextValueComposite(2); } } }); viewer.setInput(ef); if (viewer.getCombo().getItemCount() > 0) { Object selected = null; if (selectedPropertyId != null) { selected = ef.getExporterProperty(selectedPropertyId); } else { selected = viewer.getElementAt(0); } viewer.setSelection(new StructuredSelection(selected)); viewer.getCombo().select(viewer.getCombo().getSelectionIndex()); } }
From source file:org.jboss.bpmn2.editor.ui.property.MainPropertiesComposite.java
License:Open Source License
private void createSingleItemEditor(final EStructuralFeature reference, Object eGet, Collection values) { final ComboViewer combo = new ComboViewer(this, SWT.BORDER); Combo c = combo.getCombo(); combo.setLabelProvider(LABEL_PROVIDER); c.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1)); toolkit.adapt(c, true, true);/*from ww w . j av a 2s .c o m*/ widgets.add(c); List<Object> l = null; if (values != null) { l = Arrays.asList(values.toArray()); } else if (modelHandler != null) { l = (List<Object>) modelHandler.getAll(reference.getEType().getInstanceClass()); } combo.add(""); combo.add(l.toArray()); if (eGet != null) { combo.setSelection(new StructuredSelection(eGet)); } combo.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { ISelection selection = combo.getSelection(); if (selection instanceof StructuredSelection) { Object firstElement = ((StructuredSelection) selection).getFirstElement(); if (firstElement instanceof EObject) { updateEObject(firstElement); } else { updateEObject(null); } } } public void updateEObject(final Object result) { TransactionalEditingDomain domain = bpmn2Editor.getEditingDomain(); domain.getCommandStack().execute(new RecordingCommand(domain) { @Override protected void doExecute() { be.eSet(reference, result); } }); } }); }
From source file:org.jboss.mapper.eclipse.internal.editor.AddCustomFunctionDialog.java
License:Open Source License
@Override protected Control createDialogArea(final Composite parent) { setTitle("Add Custom Operation"); setMessage("Select or create the Java class and method that implements the custom operation"); setHelpAvailable(false);//from ww w .ja v a2s. c om final Composite area = new Composite(parent, SWT.NONE); area.setLayout(GridLayoutFactory.swtDefaults().numColumns(3).create()); area.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); Label label = new Label(area, SWT.NONE); label.setText("Class:"); final Button classButton = new Button(area, SWT.NONE); classButton.setLayoutData( GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).create()); classButton.setAlignment(SWT.LEFT); classButton.setText("< Click to select an existing class >"); final Button newClassButton = new Button(area, SWT.NONE); newClassButton .setImage(new DecorationOverlayIcon(JavaUI.getSharedImages().getImage(ISharedImages.IMG_OBJS_CLASS), Util.Decorations.ADD, IDecoration.TOP_RIGHT).createImage()); label = new Label(area, SWT.NONE); label.setText("Method:"); final ComboViewer methodComboViewer = new ComboViewer(area, SWT.READ_ONLY); methodComboViewer.getCombo().setLayoutData( GridDataFactory.swtDefaults().span(2, 1).align(SWT.FILL, SWT.CENTER).grab(true, false).create()); methodComboViewer.setContentProvider(new ArrayContentProvider()); methodComboViewer.setLabelProvider(new LabelProvider() { @Override public String getText(final Object element) { final IMethod method = (IMethod) element; try { final StringBuilder builder = new StringBuilder(); builder.append(Signature.getSignatureSimpleName(method.getReturnType())); builder.append(" "); builder.append(method.getElementName()); builder.append("("); final String[] types = method.getParameterTypes(); final String[] names = method.getParameterNames(); boolean hasPrm = false; for (int ndx = 0; ndx < types.length; ndx++) { if (hasPrm) { builder.append(", "); } else { builder.append(" "); hasPrm = true; } builder.append(Signature.getSignatureSimpleName(types[ndx])); builder.append(" "); builder.append(names[ndx]); } if (hasPrm) { builder.append(" "); } builder.append(")"); return builder.toString(); } catch (final JavaModelException e) { return ""; } } }); methodComboViewer.setComparator(new ViewerComparator() { @Override public int compare(final Viewer viewer, final Object object1, final Object object2) { final IMethod method1 = (IMethod) object1; final IMethod method2 = (IMethod) object2; int comparison = method1.getElementName().compareTo(method2.getElementName()); if (comparison != 0) { return comparison; } final String[] types1 = method1.getParameterTypes(); final String[] types2 = method2.getParameterTypes(); comparison = types1.length - types2.length; if (comparison != 0) { return comparison; } for (int ndx = 0; ndx < types1.length; ndx++) { comparison = Signature.getSignatureSimpleName(types1[ndx]) .compareTo(Signature.getSignatureSimpleName(types2[ndx])); if (comparison != 0) { return comparison; } } return 0; } }); methodComboViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(final SelectionChangedEvent event) { methodSelected(methodComboViewer); } }); classButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent event) { selectClass(classButton, methodComboViewer); } }); newClassButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent event) { createNewClass(classButton, methodComboViewer); } }); return area; }