List of usage examples for org.eclipse.jface.viewers ComboBoxViewerCellEditor setLabelProvider
public void setLabelProvider(IBaseLabelProvider labelProvider)
From source file:com.amitinside.e4.rcp.todo.parts.SampleUIAdapt.java
License:Apache License
@PostConstruct public void createControl(Composite parent) { System.out.println("NAME=====>" + name); System.out.println(context.get("test")); final FormToolkit toolkit = new FormToolkit(parent.getDisplay()); // Creating the Screen final Section section = toolkit.createSection(parent, Section.DESCRIPTION | Section.TITLE_BAR); section.setText("Section 1 for demonstration"); //$NON-NLS-1$ section.setDescription("This demonstrates the usage of section"); // Composite for storing the data final Composite client = toolkit.createComposite(section, SWT.WRAP); t = new TableViewerBuilder(client); t.createColumn("Summary").bindToProperty(TodoPackage.Literals.TODO__SUMMARY.getName()).makeEditable() .build();//from w ww.j a v a 2 s .co m t.createColumn("Description").makeEditable().setPixelWidth(300).useAsDefaultSortColumn() .bindToProperty(TodoPackage.Literals.TODO__DESCRIPTION.getName()).build(); t.getTableViewer().addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { final IStructuredSelection selection = (IStructuredSelection) t.getTableViewer().getSelection(); selectionService.setSelection(selection.getFirstElement()); } }); final ComboBoxViewerCellEditor cityComboEditor = new ComboBoxViewerCellEditor(t.getTable(), SWT.READ_ONLY); cityComboEditor.setContentProvider(ArrayContentProvider.getInstance()); cityComboEditor.setLabelProvider(new LabelProvider()); cityComboEditor.setInput(RandomData.CITIES); t.createColumn("Notes").makeEditable(cityComboEditor) .bindToProperty(TodoPackage.Literals.TODO__NOTE.getName()).build(); toolkit.adapt(t.getTable(), true, true); t.getTableViewer().setContentProvider(ArrayContentProvider.getInstance()); list.addAll(service.getTodos()); list.addListChangeListener(listener); t.getTableViewer().setInput(list); section.setClient(client); }
From source file:com.bdaum.zoom.peer.internal.preferences.PeerPreferencePage.java
License:Open Source License
@SuppressWarnings("unused") private Control createSharedGroup(CTabFolder parent) { Composite comp = new Composite(parent, SWT.NONE); comp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); comp.setLayout(new GridLayout()); Composite innerComp = new Composite(comp, SWT.NONE); GridLayout layout = new GridLayout(2, false); layout.marginWidth = 0;// www .j ava 2 s . co m layout.marginHeight = 20; innerComp.setLayout(layout); innerComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Label label = new Label(innerComp, SWT.WRAP); label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false, 2, 1)); label.setText(Messages.PeerPreferencePage_shared_cats_msg); catViewer = new TreeViewer(innerComp, SWT.FULL_SELECTION | SWT.SINGLE | SWT.BORDER | SWT.V_SCROLL); catViewer.getTree().setLinesVisible(true); catViewer.getTree().setHeaderVisible(true); catViewer.getTree().setLayoutData(new GridData(SWT.BEGINNING, SWT.FILL, false, true)); TreeViewerColumn col1 = new TreeViewerColumn(catViewer, SWT.NONE); col1.getColumn().setWidth(400); col1.getColumn().setText(Messages.PeerPreferencePage_path); col1.setLabelProvider(ZColumnLabelProvider.getDefaultInstance()); TreeViewerColumn col2 = new TreeViewerColumn(catViewer, SWT.NONE); col2.getColumn().setWidth(200); col2.getColumn().setText(Messages.PeerPreferencePage_privacy); col2.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof SharedCatalog) return translatePrivacy(((SharedCatalog) element).getPrivacy()); if (element instanceof PeerDefinition) return ((PeerDefinition) element).getRightsLabel(); return ""; //$NON-NLS-1$ } }); col1.setEditingSupport(new EditingSupport(catViewer) { @Override protected void setValue(Object element, Object value) { if (element instanceof PeerDefinition && value instanceof PeerDefinition) { ((PeerDefinition) element).setHost(((PeerDefinition) value).getHost()); ((PeerDefinition) element).setPort(((PeerDefinition) value).getPort()); catViewer.update(element, null); validate(); } } @Override protected Object getValue(Object element) { if (element instanceof PeerDefinition) return element; return null; } @Override protected CellEditor getCellEditor(final Object element) { if (element instanceof PeerDefinition) { return new DialogCellEditor(catViewer.getTree()) { @Override protected Object openDialogBox(Control cellEditorWindow) { PeerDefinitionDialog dialog = new PeerDefinitionDialog(cellEditorWindow.getShell(), (PeerDefinition) element, true, true, true); if (dialog.open() == Window.OK) return dialog.getResult(); return null; } }; } return null; } @Override protected boolean canEdit(Object element) { return (element instanceof PeerDefinition); } }); col2.setEditingSupport(new EditingSupport(catViewer) { @Override protected void setValue(Object element, Object value) { if (element instanceof SharedCatalog && value instanceof Integer) { ((SharedCatalog) element).setPrivacy((Integer) value); catViewer.update(element, null); } else if (element instanceof PeerDefinition && value instanceof PeerDefinition) { ((PeerDefinition) element).setRights(((PeerDefinition) value).getRights()); catViewer.update(element, null); } } @Override protected Object getValue(Object element) { if (element instanceof SharedCatalog) return ((SharedCatalog) element).getPrivacy(); if (element instanceof PeerDefinition) return element; return null; } @Override protected CellEditor getCellEditor(final Object element) { if (element instanceof SharedCatalog) { ComboBoxViewerCellEditor editor = new ComboBoxViewerCellEditor(catViewer.getTree()); editor.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { return translatePrivacy(((Integer) element)); } }); editor.setContentProvider(ArrayContentProvider.getInstance()); editor.setInput(((SharedCatalog) element).getRestrictions().isEmpty() ? new Integer[] { QueryField.SAFETY_RESTRICTED, QueryField.SAFETY_MODERATE, QueryField.SAFETY_SAFE, QueryField.SAFETY_LOCAL } : new Integer[] { QueryField.SAFETY_RESTRICTED, QueryField.SAFETY_MODERATE, QueryField.SAFETY_SAFE }); return editor; } if (element instanceof PeerDefinition) { return new DialogCellEditor(catViewer.getTree()) { @Override protected Object openDialogBox(Control cellEditorWindow) { PeerDefinitionDialog dialog = new PeerDefinitionDialog(cellEditorWindow.getShell(), (PeerDefinition) element, false, true, false); if (dialog.open() == Window.OK) return dialog.getResult(); return null; } @Override protected void updateContents(Object value) { if (value instanceof PeerDefinition) super.updateContents(((PeerDefinition) value).getRightsLabel()); } }; } return null; } @Override protected boolean canEdit(Object element) { return true; } }); catViewer.setContentProvider(new ITreeContentProvider() { public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // do nothing } public void dispose() { // do nothing } public boolean hasChildren(Object element) { if (element instanceof SharedCatalog) return !((SharedCatalog) element).getRestrictions().isEmpty(); return false; } public Object getParent(Object element) { if (element instanceof PeerDefinition) return ((PeerDefinition) element).getParent(); return null; } public Object[] getElements(Object inputElement) { if (inputElement instanceof Collection<?>) return ((Collection<?>) inputElement).toArray(); return EMPTY; } public Object[] getChildren(Object parentElement) { if (parentElement instanceof SharedCatalog) return ((SharedCatalog) parentElement).getRestrictions().toArray(); return EMPTY; } }); new SortColumnManager(catViewer, new int[] { SWT.UP, SWT.NONE }, 0); catViewer.setComparator(ZViewerComparator.INSTANCE); UiUtilities.installDoubleClickExpansion(catViewer); Composite buttonGroup = new Composite(innerComp, SWT.NONE); buttonGroup.setLayoutData(new GridData(SWT.END, SWT.BEGINNING, false, true)); buttonGroup.setLayout(new GridLayout()); addCurrentButton = new Button(buttonGroup, SWT.PUSH); addCurrentButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); addCurrentButton.setText(Messages.PeerPreferencePage_add_current); addCurrentButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String catFile = Core.getCore().getDbManager().getFileName(); SharedCatalog cat = new SharedCatalog(catFile, QueryField.SAFETY_RESTRICTED); @SuppressWarnings("unchecked") List<SharedCatalog> catalogs = (List<SharedCatalog>) catViewer.getInput(); catalogs.add(cat); catViewer.setInput(catalogs); catViewer.setSelection(new StructuredSelection(cat)); updateButtons(); } }); final Button addButton = new Button(buttonGroup, SWT.PUSH); addButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); addButton.setText(Messages.PeerPreferencePage_add); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { FileDialog dialog = new FileDialog(getShell(), SWT.OPEN); dialog.setFileName(Core.getCore().getDbManager().getFileName()); String filename = dialog.open(); if (filename != null) { SharedCatalog cat = new SharedCatalog(filename, QueryField.SAFETY_RESTRICTED); @SuppressWarnings("unchecked") List<SharedCatalog> catalogs = (List<SharedCatalog>) catViewer.getInput(); catalogs.add(cat); catViewer.setInput(catalogs); catViewer.setSelection(new StructuredSelection(cat)); } } }); addRestrictionButton = new Button(buttonGroup, SWT.PUSH); addRestrictionButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); addRestrictionButton.setText(Messages.PeerPreferencePage_add_restriction); addRestrictionButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection selection = (IStructuredSelection) catViewer.getSelection(); Object firstElement = selection.getFirstElement(); if (firstElement instanceof SharedCatalog) { PeerDefinitionDialog dialog = new PeerDefinitionDialog(getControl().getShell(), null, true, true, true); if (dialog.open() == PeerDefinitionDialog.OK) { PeerDefinition result = dialog.getResult(); result.setParent((SharedCatalog) firstElement); catViewer.setInput(catViewer.getInput()); catViewer.expandToLevel(firstElement, 1); catViewer.setSelection(new StructuredSelection(result)); validate(); } } } }); removeCatButton = new Button(buttonGroup, SWT.PUSH); removeCatButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); removeCatButton.setText(Messages.PeerPreferencePage_remove); removeCatButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection sel = (IStructuredSelection) catViewer.getSelection(); Object firstElement = sel.getFirstElement(); if (firstElement instanceof SharedCatalog) { @SuppressWarnings("unchecked") List<SharedCatalog> catalogs = (List<SharedCatalog>) catViewer.getInput(); catalogs.remove(firstElement); catViewer.setInput(catalogs); validate(); updateButtons(); } } }); catViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { updateButtons(); } }); return comp; }
From source file:com.subgraph.vega.ui.http.intercept.config.BreakpointMatchTypeEditingSupport.java
License:Open Source License
@Override protected CellEditor getCellEditor(Object element) { ComboBoxViewerCellEditor editor = new ComboBoxViewerCellEditor(viewer.getTable(), SWT.READ_ONLY); editor.setContenProvider(new ArrayContentProvider()); editor.setLabelProvider(new LabelProvider() { public String getText(Object element) { return ((IHttpConditionMatchAction) element).getLabel(); }/* w w w.j av a 2 s.c om*/ }); final IHttpCondition condition = (IHttpCondition) element; final List<IHttpConditionMatchAction> matchActions = condition.getType().getMatchActions(); editor.setInput(matchActions); for (IHttpConditionMatchAction ma : matchActions) { if (ma.getLabel().equals(condition.getMatchAction().getLabel())) editor.getViewer().setSelection(new StructuredSelection(ma)); } return editor; }
From source file:com.xse.optstack.persconftool.ui.applications.ApplicationsTree.java
License:Open Source License
@Override protected TableColumn[] getColumns() { final ComboBoxViewerCellEditor comboBoxViewerCellEditor = new ComboBoxViewerCellEditor(this.getTree(), SWT.READ_ONLY);//from w w w.j ava2 s .c o m comboBoxViewerCellEditor.setContentProvider(new IStructuredContentProvider() { @Override public void inputChanged(final Viewer viewerRef, final Object oldInput, final Object newInput) { // do nothing } @Override public void dispose() { // do nothing } @Override public Object[] getElements(final Object inputElement) { return EInstallRule.values(); } }); comboBoxViewerCellEditor.setLabelProvider(new AbstractBaseLabelProvider() { @Override public String getText(final Object element) { if (element instanceof EInstallRule) { return ((EInstallRule) element).getName(); } return ""; } @Override public Image getImage(final Object element) { return null; } }); comboBoxViewerCellEditor.setInput(new Object()); final TableColumn installationRuleColumn = new TableColumn("Installation Rule", 140); installationRuleColumn.setEditingSupport(new EditingSupport(this.getViewer()) { @Override protected void setValue(final Object element, final Object value) { if ((element instanceof EApplication) && (value instanceof EInstallRule)) { ((EApplication) element).setInstallRule((EInstallRule) value); } } @Override protected Object getValue(final Object element) { if (element instanceof EApplication) { return ((EApplication) element).getInstallRule(); } return null; } @Override protected CellEditor getCellEditor(final Object element) { return comboBoxViewerCellEditor; } @Override protected boolean canEdit(final Object element) { return element instanceof EApplication; } }); final TextCellEditor textCellEditor = new TextCellEditor(this.getTree(), SWT.NONE); final TableColumn sizeColumn = new TableColumn("Size (kB)", 100); sizeColumn.setEditingSupport(new EditingSupport(this.getViewer()) { @Override protected void setValue(final Object element, final Object value) { if ((element instanceof EApplication) && (value instanceof String)) { if (!StringUtils.isEmpty(value.toString())) { try { ((EApplication) element).setSize(Integer.valueOf(value.toString())); } catch (final NumberFormatException e) { // do nothing } } else { ((EApplication) element).setSize(null); } } } @Override protected Object getValue(final Object element) { if (element instanceof EApplication) { final EApplication app = (EApplication) element; return app.getSize() != null ? app.getSize().toString() : ""; } return ""; } @Override protected CellEditor getCellEditor(final Object element) { return textCellEditor; } @Override protected boolean canEdit(final Object element) { return element instanceof EApplication; } }); final TableColumn userNameColumn = new TableColumn("User", 100); userNameColumn.setEditingSupport(new EditingSupport(this.getViewer()) { @Override protected void setValue(final Object element, final Object value) { if ((element instanceof EApplication) && (value instanceof String)) { ((EApplication) element).setUserName(String.valueOf(value)); } } @Override protected Object getValue(final Object element) { if (element instanceof EApplication) { final EApplication app = (EApplication) element; return app.getUserName(); } return "?"; } @Override protected CellEditor getCellEditor(final Object element) { return textCellEditor; } @Override protected boolean canEdit(final Object element) { return element instanceof EApplication; } }); final TableColumn groupNameColumn = new TableColumn("Group", 100); groupNameColumn.setEditingSupport(new EditingSupport(this.getViewer()) { @Override protected void setValue(final Object element, final Object value) { if ((element instanceof EApplication) && (value instanceof String)) { String stringVal = String.valueOf(value); ((EApplication) element).setGroupName(stringVal); } } @Override protected Object getValue(final Object element) { if (element instanceof EApplication) { final EApplication app = (EApplication) element; String groupName = app.getGroupName(); return groupName; } return "?"; } @Override protected CellEditor getCellEditor(final Object element) { return textCellEditor; } @Override protected boolean canEdit(final Object element) { return element instanceof EApplication; } }); final TableColumn userIdColumn = new TableColumn("User ID", 100); userIdColumn.setEditingSupport(new EditingSupport(this.getViewer()) { @Override protected void setValue(final Object element, final Object value) { if ((element instanceof EApplication) && (value instanceof String)) { if (!StringUtils.isEmpty(value.toString())) { try { ((EApplication) element).setUserId(Integer.valueOf(value.toString())); } catch (final NumberFormatException e) { // do nothing } } else { ((EApplication) element).setUserId(null); } } } @Override protected Object getValue(final Object element) { if (element instanceof EApplication) { final EApplication app = (EApplication) element; return app.getUserId() != null ? app.getUserId().toString() : ""; } return ""; } @Override protected CellEditor getCellEditor(final Object element) { return textCellEditor; } @Override protected boolean canEdit(final Object element) { return element instanceof EApplication; } }); final TableColumn groupIdColumn = new TableColumn("Group ID", 100); groupIdColumn.setEditingSupport(new EditingSupport(this.getViewer()) { @Override protected void setValue(final Object element, final Object value) { if ((element instanceof EApplication) && (value instanceof String)) { if (!StringUtils.isEmpty(value.toString())) { try { ((EApplication) element).setGroupId(Integer.valueOf(value.toString())); } catch (final NumberFormatException e) { // do nothing } } else { ((EApplication) element).setGroupId(null); } } } @Override protected Object getValue(final Object element) { if (element instanceof EApplication) { final EApplication app = (EApplication) element; return app.getGroupId() != null ? app.getGroupId().toString() : ""; } return ""; } @Override protected CellEditor getCellEditor(final Object element) { return textCellEditor; } @Override protected boolean canEdit(final Object element) { return element instanceof EApplication; } }); return new TableColumn[] { new TableColumn("Name", 220), installationRuleColumn, sizeColumn, userNameColumn, groupNameColumn, userIdColumn, groupIdColumn }; }
From source file:com.xse.optstack.persconftool.ui.resources.ResourcesTable.java
License:Open Source License
@Override protected TableColumn[] getColumns() { final ComboBoxViewerCellEditor comboBoxViewerCellEditor = new ComboBoxViewerCellEditor(this.getTable(), SWT.READ_ONLY);//from www. j a va 2s . c om comboBoxViewerCellEditor.setContentProvider(new IStructuredContentProvider() { @Override public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) { } @Override public void dispose() { } @Override public Object[] getElements(final Object inputElement) { final Object[] vals = new Object[EInstallException.values().length + 1]; int i = 0; for (final EInstallException eInstallException : EInstallException.values()) { vals[i++] = eInstallException; } vals[i] = StructuredSelection.EMPTY; return vals; } }); comboBoxViewerCellEditor.setLabelProvider(new AbstractBaseLabelProvider() { @Override public String getText(final Object element) { if (element instanceof EInstallException) { return ((EInstallException) element).getName(); } else { return ""; } } @Override public Image getImage(final Object element) { return null; } }); comboBoxViewerCellEditor.setInput(new Object()); final TableColumn installationRuleColumn = new TableColumn("Installation Exception", 140); installationRuleColumn.setEditingSupport(new EditingSupport(this.getViewer()) { @Override protected void setValue(final Object element, final Object value) { if (element instanceof EResource) { if (value instanceof EInstallException) { ((EResource) element).setInstallException((EInstallException) value); } else { ((EResource) element).setInstallException(null); } this.getViewer().refresh(element); } } @Override protected Object getValue(final Object element) { if (element instanceof EResource) { final EResource res = (EResource) element; if (res.getInstallException() != null) { return res.getInstallException(); } else { return StructuredSelection.EMPTY; } } return null; } @Override protected CellEditor getCellEditor(final Object element) { return comboBoxViewerCellEditor; } @Override protected boolean canEdit(final Object element) { return element instanceof EResource; } }); return new TableColumn[] { new TableColumn("Name", 180), installationRuleColumn }; }
From source file:era.foss.typeeditor.common.Ui.java
License:Open Source License
/** * Create a column with EMF databinding for a table viewer * //from w ww . j a va2 s . co m * <li>In case the top level structural feature is a reference display a combo box</li> <li>In case the top level * structural feature is a containment reference create element if it does not exist</li> <li>In case the structural * feature is a boolean show a checkbox</li> <li>Otherwise show a simple text field</li>. * * @param column the column * @param eStructuralFeatureList list to create a feature path from * @param refObservedObject the ref observed object * @param refEStructuralFeatureList the ref e structural feature list */ public void bindColumn(TableViewerColumn column, EStructuralFeature[] eStructuralFeatureList, EObject refObservedObject, EStructuralFeature[] refEStructuralFeatureList) { TableViewer tableViewer = (TableViewer) column.getViewer(); ObservableListContentProvider cp = (ObservableListContentProvider) tableViewer.getContentProvider(); assert (cp != null); // get the top level structural feature EStructuralFeature topStructuralFeature = eStructuralFeatureList[0]; // set label provider IValueProperty elementProperty = EMFEditProperties.value(editingDomain, FeaturePath.fromList(eStructuralFeatureList)); IObservableMap attributeMap = elementProperty.observeDetail(cp.getKnownElements()); column.setLabelProvider(new ObservableMapCellLabelProvider(attributeMap)); EditingSupport editingSupport = null; // Show combo box for references if (refObservedObject != null && refEStructuralFeatureList != null) { // Combo box: Create combo box to select choices for the reference ComboBoxViewerCellEditor combo = new ComboBoxViewerCellEditorSp((Composite) tableViewer.getControl(), SWT.READ_ONLY); // Combo box: Set Content Provider ObservableListContentProvider comboContentProvider = new ObservableListContentProvider(); combo.setContentProvider(comboContentProvider); IObservableMap comboAttributeMap = EMFProperties .value(eStructuralFeatureList[eStructuralFeatureList.length - 1]) .observeDetail(comboContentProvider.getKnownElements()); combo.setLabelProvider(new ObservableMapLabelProvider(comboAttributeMap)); // Combo box: set input IEMFListProperty dataTypeDefinitions = EMFProperties .list(FeaturePath.fromList(refEStructuralFeatureList)); combo.setInput(dataTypeDefinitions.observe(refObservedObject)); // Set editing support of table cell IValueProperty editorElementProperty = EMFEditProperties.value(editingDomain, topStructuralFeature); IValueProperty cellEditorProperty = ViewerProperties.singleSelection(); editingSupport = ObservableValueEditingSupport.create(tableViewer, dataBindContext, combo, cellEditorProperty, editorElementProperty); } // Simple text else { IValueProperty cellEditorProperty = CellEditorProperties.control() .value(WidgetProperties.text(SWT.Modify)); editingSupport = ObservableValueEditingSupport.create(tableViewer, dataBindContext, new TextCellEditor(tableViewer.getTable()), cellEditorProperty, elementProperty); } column.setEditingSupport(editingSupport); }
From source file:era.foss.typeeditor.view.ViewForm.java
License:Open Source License
/** * Creates the table viewer for {@link ViewElements} * /*ww w . j av a 2 s . co m*/ * @param parent parent composite */ private void createViewElementTableViewer(Composite parent) { this.viewElementTableViewer = new AddDeleteTableViewer(parent, SWT.MULTI | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION | AddDeleteTableViewer.NO_DESCRIPTION) { @Override public void addElement() { this.elementOwner = (EObject) viewMaster.getValue(); super.addElement(); // is_a ViewElement ViewElement addedViewElement = (ViewElement) super.getElementAt(super.doGetItemCount() - 1); // default placement of views' elements addedViewElement.setEditorRowPosition(getCurrentMaxRowIdx() + 1); addedViewElement.setEditorColumnPosition(0); addedViewElement.setEditorColumnSpan(2); addedViewElement.setEditorRowSpan(1); } /** * Calculates maximum row index of existing view elements * * @return maximum row index */ private int getCurrentMaxRowIdx() { int maxRowIdx = 0; for (int i = 0; i < super.doGetItemCount(); ++i) { ViewElement iterViewElement = (ViewElement) super.getElementAt(i); maxRowIdx = Math.max(maxRowIdx, iterViewElement.getEditorRowPosition() + (iterViewElement.getEditorRowSpan() - 1)); } return maxRowIdx; } @Override protected void createButtonBar() { super.createButtonBar(); // FIXME @cpn create "add all" button } }; // the owner is null as it is set in the overridden addElement() method viewElementTableViewer.setElementInformation((EObject) viewMaster.getValue(), ErfPackage.Literals.VIEW__VIEW_ELEMENTS, ErfPackage.Literals.VIEW_ELEMENT); viewElementTableViewer.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 2)); viewElementTableViewer.setEditingDomain(editingDomain); ObservableListContentProvider tableViewerContentProvider = new ObservableListContentProvider(); viewElementTableViewer.setContentProvider(tableViewerContentProvider); TableColumnLayout columnLayout = (TableColumnLayout) viewElementTableViewer.getTable().getParent() .getLayout(); // create column showing the Attribute Definition TableViewerColumn attributeDefinitionColumn = new TableViewerColumn(viewElementTableViewer, SWT.NONE); columnLayout.setColumnData(attributeDefinitionColumn.getColumn(), new ColumnWeightData(100, 70)); attributeDefinitionColumn.getColumn().setResizable(false); attributeDefinitionColumn.getColumn().setMoveable(false); attributeDefinitionColumn.getColumn() .setText(Ui.getUiName(ErfPackage.Literals.VIEW_ELEMENT__ATTRIBUTE_DEFINITION)); // label provider for column showing the AttributeDefintion IValueProperty elementProperty = EMFEditProperties.value(editingDomain, FeaturePath .fromList(new EStructuralFeature[] { ErfPackage.Literals.VIEW_ELEMENT__ATTRIBUTE_DEFINITION, ErfPackage.Literals.IDENTIFIABLE__LONG_NAME })); IObservableMap attributeMap = elementProperty.observeDetail(tableViewerContentProvider.getKnownElements()); attributeDefinitionColumn.setLabelProvider(new ObservableMapCellLabelProvider(attributeMap)); // editing support column showing the AttributeDefintion // Combo box: Create combo box to select choices for the reference ComboBoxViewerCellEditor combo = new ComboBoxViewerCellEditorSp( (Composite) viewElementTableViewer.getControl(), SWT.DROP_DOWN | SWT.READ_ONLY); // Combo box: Set Content Provider; ObservableListContentProvider comboBoxContentProvider = new ObservableListContentProvider(); combo.setContentProvider(comboBoxContentProvider); // Combo box: Set Label Provider combo.setLabelProvider( new ObservableMapLabelProvider(EMFProperties.value(ErfPackage.Literals.IDENTIFIABLE__LONG_NAME) .observeDetail(comboBoxContentProvider.getKnownElements()))); // Combo box: set input from selected specType IEMFListProperty specAttributesProperty = EMFProperties .list(ErfPackage.Literals.SPEC_TYPE__SPEC_ATTRIBUTES); combo.setInput(specAttributesProperty.observeDetail(specTypeMaster)); // Set editing support of table cell IValueProperty editorElementProperty = EMFEditProperties.value(editingDomain, ErfPackage.Literals.VIEW_ELEMENT__ATTRIBUTE_DEFINITION); IValueProperty cellEditorProperty = ViewerProperties.singleSelection(); attributeDefinitionColumn.setEditingSupport(ObservableValueEditingSupport.create(viewElementTableViewer, dataBindContext, combo, cellEditorProperty, editorElementProperty)); // provide input for the table IEMFListProperty viewsProperty = EMFProperties.list(ErfPackage.Literals.VIEW__VIEW_ELEMENTS); viewElementTableViewer.addFilter(new SpecTypeFilter()); viewElementTableViewer.setInput(viewsProperty.observeDetail(viewMaster)); viewElementMaster = ViewerProperties.singleSelection().observe(viewElementTableViewer); viewElementTableViewer.getTable().select(0); }
From source file:eu.esdihumboldt.hale.ui.views.tasks.TaskStatusEditingSupport.java
License:Open Source License
/** * @see EditingSupport#getCellEditor(Object) *///ww w.j ava2s. c om @Override protected CellEditor getCellEditor(Object element) { ComboBoxViewerCellEditor editor = new ComboBoxViewerCellEditor((Composite) getViewer().getControl(), SWT.READ_ONLY); editor.setContenProvider(ArrayContentProvider.getInstance()); editor.setLabelProvider(new LabelProvider()); editor.setInput( new Object[] { TaskStatus.NEW, TaskStatus.ACTIVE, TaskStatus.COMPLETED, TaskStatus.IGNORED }); return editor; }
From source file:fr.esrf.icat.manager.core.icatserver.DataColumnEditingSupport.java
License:Apache License
@Override protected CellEditor getCellEditor(Object element) { if (null == element || !(element instanceof WrappedEntityBean)) { return null; }/*from www . j ava2s. c o m*/ if (null == editor) { WrappedEntityBean w = (WrappedEntityBean) element; if (w.isEntity(field)) { // TODO: find a solution for entities this.editor = null; } else if (Enum.class.isAssignableFrom(clazz)) { final ComboBoxViewerCellEditor combo = new ComboBoxViewerCellEditor(viewer.getTable()); combo.setContentProvider(ArrayContentProvider.getInstance()); combo.setLabelProvider(labelProvider); combo.setInput(clazz.getEnumConstants()); this.editor = combo; } else if (clazz.equals(Boolean.class) || clazz.equals(boolean.class)) { this.editor = new CheckboxCellEditor(viewer.getTable()); } else if (Calendar.class.isAssignableFrom(clazz) || Date.class.isAssignableFrom(clazz) || XMLGregorianCalendar.class.isAssignableFrom(clazz)) { // workaround for focus lost from https://www.eclipse.org/forums/index.php/m/1403724/?srch=CDateTimeCellEditor#msg_1403724 // note that using CDT.SIMPLE leads to a StackOverflowException this.editor = new CDateTimeCellEditor(viewer.getTable(), CDT.SPINNER | CDT.TAB_FIELDS | CDT.DATE_MEDIUM | CDT.TIME_MEDIUM) { @Override protected boolean dependsOnExternalFocusListener() { return false; } @Override protected Control createControl(Composite parent) { final CDateTime cdt = (CDateTime) super.createControl(parent); cdt.addFocusListener(new FocusAdapter() { public void focusLost(FocusEvent e) { if (!cdt.isOpen()) { fireApplyEditorValue(); deactivate(); } } }); return cdt; } }; } else { this.editor = new TextCellEditor(viewer.getTable()); if (Number.class.isAssignableFrom(clazz)) { final Color original = this.editor.getControl().getForeground(); this.editor.setValidator(new ICellEditorValidator() { @Override public String isValid(Object value) { try { clazz.getMethod("valueOf", new Class<?>[] { String.class }).invoke(null, value); editor.getControl().setForeground(original); return null; } catch (Exception e) { editor.getControl() .setForeground(Display.getCurrent().getSystemColor(SWT.COLOR_RED)); return "Please enter a number"; } } }); } } } return editor; }
From source file:gov.redhawk.ide.debug.ui.tabs.ImplementationTab.java
License:Open Source License
/** * {@inheritDoc}//from w ww .j av a2s .co m */ @Override public void createControl(final Composite parent) { final Composite composite = new Composite(parent, SWT.NONE); setControl(composite); composite.setFont(parent.getFont()); composite.setLayout(new FillLayout()); final TableLayout layout = new TableLayout(); this.viewer = new TableViewer(composite, SWT.BORDER); this.viewer.getTable().setLayout(layout); this.viewer.getTable().setHeaderVisible(true); this.viewer.getTable().setLinesVisible(true); this.viewer.setContentProvider(new IStructuredContentProvider() { @Override public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) { } @Override public void dispose() { } @Override public Object[] getElements(final Object inputElement) { if (inputElement instanceof SoftwareAssembly) { final SoftwareAssembly localSad = (SoftwareAssembly) inputElement; final List<SadComponentInstantiation> retVal = new ArrayList<SadComponentInstantiation>(); for (final HostCollocation hc : localSad.getPartitioning().getHostCollocation()) { for (final SadComponentPlacement cp : hc.getComponentPlacement()) { retVal.addAll(cp.getComponentInstantiation()); } } for (final SadComponentPlacement cp : localSad.getPartitioning().getComponentPlacement()) { retVal.addAll(cp.getComponentInstantiation()); } return retVal.toArray(); } return new Object[0]; } }); this.viewer.setInput(this.sad); final TableViewerColumn componentColumn = new TableViewerColumn(this.viewer, SWT.CENTER); componentColumn.getColumn().setText("Instantiation"); componentColumn.setLabelProvider(new TreeColumnViewerLabelProvider(new LabelProvider() { @Override public String getText(final Object element) { final SadComponentInstantiation ci = (SadComponentInstantiation) element; return ci.getUsageName(); } })); layout.addColumnData(new ColumnWeightData(20, 20, true)); //SUPPRESS CHECKSTYLE MagicNumber final TableViewerColumn implColumn = new TableViewerColumn(this.viewer, SWT.CENTER); implColumn.getColumn().setText("Implementation"); implColumn.setLabelProvider(new TreeColumnViewerLabelProvider(new LabelProvider() { @Override public String getText(final Object element) { final SadComponentInstantiation ci = (SadComponentInstantiation) element; final String implId = ImplementationTab.this.implMap.get(ci.getId()); final SoftPkg softPkg = ScaEcoreUtils.getFeature(ci, ImplementationTab.SPD_PATH); Implementation impl = null; if (implId != null) { return implId; } else if (softPkg != null && !softPkg.getImplementation().isEmpty()) { impl = softPkg.getImplementation().get(0); } if (impl == null) { return ""; } else { return impl.getId(); } } })); implColumn.setEditingSupport(new EditingSupport(this.viewer) { @Override protected void setValue(final Object element, final Object value) { final SadComponentInstantiation ci = (SadComponentInstantiation) element; if (value == null) { ImplementationTab.this.implMap.remove(ci.getId()); } else if (value instanceof String) { ImplementationTab.this.implMap.put(ci.getId(), value.toString()); } else if (value instanceof Implementation) { ImplementationTab.this.implMap.put(ci.getId(), ((Implementation) value).getId()); } else { ImplementationTab.this.implMap.remove(ci.getId()); } ImplementationTab.this.viewer.refresh(element); updateLaunchConfigurationDialog(); } @Override protected Object getValue(final Object element) { final SadComponentInstantiation ci = (SadComponentInstantiation) element; return getImplementation(ci); } @Override protected CellEditor getCellEditor(final Object element) { final SadComponentInstantiation ci = (SadComponentInstantiation) element; final SoftPkg spd = ScaEcoreUtils.getFeature(ci, ImplementationTab.SPD_PATH); final ComboBoxViewerCellEditor editor = new ComboBoxViewerCellEditor( ImplementationTab.this.viewer.getTable(), SWT.READ_ONLY); editor.setContentProvider(new ArrayContentProvider()); editor.setLabelProvider(new AdapterFactoryLabelProvider(ImplementationTab.this.adapterFactory)); if (spd != null) { editor.setInput(spd.getImplementation()); } return editor; } @Override protected boolean canEdit(final Object element) { return true; } }); layout.addColumnData(new ColumnWeightData(100, 20, true)); //SUPPRESS CHECKSTYLE MagicNumber }