List of usage examples for org.eclipse.jface.viewers TableViewer getControl
@Override
public Control getControl()
From source file:org.eclipse.richbeans.generator.TableWidgetBuilder.java
License:Open Source License
@Override public Control buildWidget(String elementName, Map<String, String> attributes, SwtMetawidget metawidget) { // If hidden or an action, return null if (TRUE.equals(attributes.get(HIDDEN)) || ACTION.equals(elementName)) { return null; }/*from w ww .j a v a2 s . com*/ // Otherwise get the type and if a List, build a table Class<?> container = WidgetBuilderUtils.getActualClassOrType(attributes, Object.class); String contained = WidgetBuilderUtils.getComponentType(attributes); Class<?> containedClazz = loadContainedClass(contained); Method deleteMethod = getMethod(metawidget.getToInspect(), containedClazz, attributes); if (List.class.isAssignableFrom(container) && contained != null && containedClazz != null) { TableViewer tableViewer = new TableViewer(metawidget); Table table = tableViewer.getTable(); table.setHeaderVisible(true); table.setLinesVisible(true); tableViewer.setContentProvider(new ListStructuredContentProvider()); List<TableColumnModel> columns = readPropertiesFromType(metawidget, contained); createColumns(columns, tableViewer); createDeleteButtons(tableViewer, deleteMethod, metawidget.getToInspect()); setupDataInput(containedClazz, columns, attributes, metawidget, tableViewer); return tableViewer.getControl(); } return null; }
From source file:org.eclipse.richbeans.widgets.shuffle.ShuffleViewer.java
License:Open Source License
private final TableViewer createTable(Composite parent, String tooltip, List<T> items, String propName, String slabel, boolean selectFromEnd, boolean allowReorder) { Composite content = new Composite(parent, SWT.NONE); content.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); content.setLayout(new GridLayout(1, false)); content.setBackground(content.getDisplay().getSystemColor(SWT.COLOR_WHITE)); if (slabel != null) { final Label label = new Label(content, SWT.NONE); label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); label.setText(slabel);//from ww w . j a va 2 s .c o m label.setBackground(content.getDisplay().getSystemColor(SWT.COLOR_WHITE)); } TableViewer ret = new TableViewer(content, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION); ret.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); ((Table) ret.getControl()).setToolTipText(tooltip); // NOTE This can get clobbered if we used tooltips inside the table. final ShuffleContentProvider prov = new ShuffleContentProvider(conf, propName, selectFromEnd); ret.setContentProvider(prov); ret.setInput(items); Composite buttons = new Composite(content, SWT.NONE); buttons.setBackground(content.getDisplay().getSystemColor(SWT.COLOR_WHITE)); buttons.setLayoutData(new GridData(SWT.CENTER, SWT.FILL, true, false)); buttons.setLayout(new GridLayout(2, true)); GridUtils.removeMargins(buttons, 20, 0); Button down = new Button(buttons, SWT.ARROW | SWT.DOWN); down.setBackground(content.getDisplay().getSystemColor(SWT.COLOR_WHITE)); down.setEnabled(false); GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true); gd.widthHint = 50; down.setLayoutData(gd); down.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { ShuffleDirection direction = propName.startsWith("from") ? ShuffleDirection.LEFT_DOWN : ShuffleDirection.RIGHT_DOWN; moveVertical(ret, propName, 1, direction); } }); Button up = new Button(buttons, SWT.ARROW | SWT.UP); up.setBackground(content.getDisplay().getSystemColor(SWT.COLOR_WHITE)); up.setEnabled(false); up.setLayoutData(gd); up.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { ShuffleDirection direction = propName.startsWith("from") ? ShuffleDirection.LEFT_UP : ShuffleDirection.RIGHT_UP; moveVertical(ret, propName, -1, direction); } }); if (!allowReorder) { // This cannot be changed later down.setVisible(false); up.setVisible(false); } PropertyChangeListener pcLeft = evt -> { final boolean enabled = evt.getNewValue() != null && evt.getNewValue() instanceof List && ((List) evt.getNewValue()).size() > 1; fromTable.getControl().getDisplay().syncExec(() -> { down.setEnabled(enabled); up.setEnabled(enabled); }); }; conf.addPropertyChangeListener(propName, pcLeft); // pcLeft only triggered when list is changed. // check whether you should be able to reorder as soon as widget is created boolean enabled = items.size() > 1; down.setEnabled(enabled); up.setEnabled(enabled); return ret; }
From source file:org.eclipse.scada.ae.ui.views.dialog.EventDetailsDialog.java
License:Open Source License
@Override protected Control createDialogArea(final Composite parent) { final Composite content = (Composite) super.createDialogArea(parent); content.setLayout(new FillLayout()); final TableViewer viewer = new TableViewer(content, SWT.FULL_SELECTION); viewer.getTable().setHeaderVisible(true); final TableLayout layout = new TableLayout(); viewer.getTable().setLayout(layout); final TableViewerColumn colKey = new TableViewerColumn(viewer, SWT.NONE); layout.addColumnData(new ColumnWeightData(10)); colKey.getColumn().setText("Key"); colKey.setLabelProvider(new CellLabelProvider() { @Override/*from w ww . ja v a 2 s . c o m*/ public void update(final ViewerCell cell) { final Map.Entry<?, ?> event = (Entry<?, ?>) cell.getElement(); cell.setText("" + event.getKey()); } }); final TableViewerColumn colValue = new TableViewerColumn(viewer, SWT.NONE); layout.addColumnData(new ColumnWeightData(10)); colValue.getColumn().setText("Value"); colValue.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final Map.Entry<?, ?> event = (Entry<?, ?>) cell.getElement(); cell.setText("" + event.getValue()); } }); viewer.setContentProvider(new ArrayContentProvider()); viewer.setInput(this.event.getAttributes().entrySet().toArray(new Map.Entry[0])); Dialog.applyDialogFont(viewer.getControl()); return content; }
From source file:org.eclipse.scada.ca.ui.editor.forms.common.ConfigurationFormToolkit.java
License:Open Source License
public void createTableSection(final ScrolledForm form, final ConfigurationEditorInput input, final String prefix, final String label) { // data/*from w w w .ja v a 2s . co m*/ final IObservableMap map = KeyPrefixMapObservable.observePrefix(input.getDataMap(), String.class, prefix, true); // section final Section section = this.toolkit.createSection(form.getBody(), ExpandableComposite.TITLE_BAR); section.setText(label); final Composite client = this.toolkit.createComposite(section, SWT.NONE); section.setClient(client); this.toolkit.paintBordersFor(client); client.setLayout(new GridLayout(1, true)); final GridData gd = new GridData(GridData.FILL_BOTH); gd.horizontalSpan = 2; section.setLayoutData(gd); // fields final TableViewer viewer = new TableViewer(client); final TableLayout tableLayout = new TableLayout(); viewer.getTable().setLayout(tableLayout); { final TableViewerColumn col = new TableViewerColumn(viewer, SWT.NONE); col.getColumn().setText("Key"); col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { cell.setText(String.format("%s", ((Map.Entry<?, ?>) cell.getElement()).getKey())); } }); tableLayout.addColumnData(new ColumnWeightData(50, true)); } { final TableViewerColumn col = new TableViewerColumn(viewer, SWT.NONE); col.getColumn().setText("Value"); col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { cell.setText(String.format("%s", ((Map.Entry<?, ?>) cell.getElement()).getValue())); } }); tableLayout.addColumnData(new ColumnWeightData(100, true)); col.setEditingSupport(new InlineEditingSupport(map, viewer, this.dbc)); } viewer.getTable().setHeaderVisible(true); viewer.setContentProvider(new ObservableMapContentProvider()); viewer.setInput(map); viewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH)); viewer.setSorter(new ViewerSorter()); final ToolBarManager tbm = new ToolBarManager(); tbm.add(new AddAction(map, form.getShell())); tbm.add(new RemoveAction(map, ViewersObservables.observeMultiSelection(viewer))); section.setTextClient(tbm.createControl(section)); }
From source file:org.eclipse.scanning.device.ui.model.ModelViewer.java
License:Open Source License
private void createDropTarget(TableViewer viewer) { final Table table = (Table) viewer.getControl(); // Create drop target for file paths. DropTarget target = new DropTarget(table, DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_DEFAULT); final TextTransfer textTransfer = TextTransfer.getInstance(); final FileTransfer fileTransfer = FileTransfer.getInstance(); Transfer[] types = new Transfer[] { fileTransfer, textTransfer }; target.setTransfer(types);//from www . ja v a2 s .c om target.addDropListener(new DropTargetAdapter() { private boolean checkLocation(DropTargetEvent event) { if (event.item == null || !(event.item instanceof Item)) { return false; } Item item = (Item) event.item; // will accept text but prefer to have files dropped Rectangle bounds = ((TableItem) item).getBounds(1); Point coordinates = new Point(event.x, event.y); coordinates = table.toControl(coordinates); if (!bounds.contains(coordinates)) { return false; } return true; } public void drop(DropTargetEvent event) { String path = null; if (textTransfer.isSupportedType(event.currentDataType)) { path = (String) event.data; } if (fileTransfer.isSupportedType(event.currentDataType)) { String[] files = (String[]) event.data; path = files[0]; } if (path == null) return; if (!checkLocation(event)) return; TableItem item = (TableItem) event.item; FieldValue field = (FieldValue) item.getData(); if (field != null) { if (field.isFileProperty()) { try { field.set(path); refresh(); } catch (Exception e) { logger.error("Cannot set the field " + field.getName() + " with value " + path, e); } } } } }); }
From source file:org.eclipse.sirius.common.ui.tools.api.selection.EMFMessageDialog.java
License:Open Source License
/** * Create a tableViewer//from w w w . j ava2 s.c om * * @param parent * the parent composite * @return the created tableViewer */ private TableViewer createTableViewer(final Composite parent) { TableViewer viewer = null; viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); final GridData gridData = new GridData(SWT.FILL, SWT.FILL, true, true); viewer.getControl().setLayoutData(gridData); viewer.getTable().setHeaderVisible(false); viewer.getTable().setLinesVisible(false); viewer.setContentProvider(new ArrayContentProvider()); final AdapterFactoryLabelProvider labelProvider = new AdapterFactoryLabelProvider(factory); viewer.setLabelProvider(labelProvider); viewer.setContentProvider(new ArrayContentProvider()); viewer.setInput(this.instances); return viewer; }
From source file:org.eclipse.sirius.common.ui.tools.api.selection.page.EObjectPaneBasedSelectionWizardPage.java
License:Open Source License
/** * Create a tableViewer/* w w w.j a v a2s . c o m*/ * * @param parent * the parent composite * @return the created tableViewer */ private TableViewer createTableViewer(final Composite parent) { TableViewer viewer = null; viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); final GridData gridData = new GridData(SWT.FILL, SWT.FILL, true, true); viewer.getControl().setLayoutData(gridData); viewer.getTable().setHeaderVisible(false); viewer.getTable().setLinesVisible(false); viewer.setContentProvider(new ArrayContentProvider()); viewer.setLabelProvider(new EObjectSelectionLabelProvider()); return viewer; }
From source file:org.eclipse.tcf.internal.cdt.ui.breakpoints.TCFContextQueryExpressionDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite page = new Composite(parent, SWT.NONE); GridLayout gridLayout = new GridLayout(1, true); page.setLayout(gridLayout);/*w w w. j a v a 2 s .com*/ page.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); TableLayout tableLayout = new TableLayout(); tableLayout.addColumnData(new ColumnWeightData(1)); tableLayout.addColumnData(new ColumnWeightData(1)); Table table = new Table(parent, SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL); table.setLinesVisible(true); table.setHeaderVisible(true); table.setLayout(tableLayout); TableViewer tableViewer = new TableViewer(table); tableViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Control cntrl = tableViewer.getControl(); cntrl.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); TableViewerColumn labelColumn = new TableViewerColumn(tableViewer, SWT.NONE); labelColumn.getColumn().setText(column_names[0]); TableViewerColumn valueColumn = new TableViewerColumn(tableViewer, SWT.Modify); valueColumn.getColumn().setText(column_names[1]); tableViewer.setContentProvider(new ArrayContentProvider()); tableViewer.setLabelProvider(new ParameterTableLabelProvider()); valueColumn.setEditingSupport(new ExpressionEditingSupport(valueColumn.getViewer())); tableViewer.setInput(attributes); tableViewer.setComparator(new ViewerComparator() { @Override public int compare(Viewer viewer, Object e1, Object e2) { String t1 = (String) e1; String t2 = (String) e2; return t1.compareTo(t2); }; }); return parent; }
From source file:org.eclipse.tracecompass.tmf.ui.viewers.table.TmfSimpleTableViewer.java
License:Open Source License
/** * Constructor that initializes the parent of the viewer * * @param table//from w ww .jav a 2 s . com * the {@link TableViewer} to wrap */ public TmfSimpleTableViewer(TableViewer table) { super(table.getControl().getParent()); fTableViewer = table; final Table tableControl = fTableViewer.getTable(); tableControl.setHeaderVisible(true); tableControl.setLinesVisible(true); fDirection = SWT.DOWN; fTableViewer.setUseHashlookup(true); fTableViewer.getControl().addMouseListener(new MouseColumnListener()); fTablePopupMenuManager = new MenuManager(); fTablePopupMenuManager.setRemoveAllWhenShown(true); fTablePopupMenuManager.addMenuListener(new IMenuListener() { @Override public void menuAboutToShow(final @Nullable IMenuManager manager) { TableViewer viewer = getTableViewer(); ISelection selection = viewer.getSelection(); if (selection instanceof IStructuredSelection) { IStructuredSelection sel = (IStructuredSelection) selection; if (manager != null) { appendToTablePopupMenu(manager, sel); } } } }); Menu tablePopup = fTablePopupMenuManager.createContextMenu(getTableViewer().getTable()); getTableViewer().getTable().setMenu(tablePopup); }
From source file:org.eclipse.ui.examples.statushandlers.testtool.views.StatusHandlingView.java
License:Open Source License
public static void createPopMenu(final TableViewer viewer, final List[] list, final SelectionAdapter remove) { Menu menu = new Menu(viewer.getControl().getShell(), SWT.POP_UP); viewer.getTable().setMenu(menu);//from w w w . j a v a2 s . com final MenuItem upMenuItem = new MenuItem(menu, SWT.PUSH); upMenuItem.setText(Messages.StatusHandlingView_Up); upMenuItem.addSelectionListener(new MoveUpSelectionAdapter(viewer, list)); final MenuItem downMenuItem = new MenuItem(menu, SWT.PUSH); downMenuItem.setText(Messages.StatusHandlingView_Down); downMenuItem.addSelectionListener(new MoveDownSelectionAdapter(viewer, list)); final MenuItem deleteMenuItem = new MenuItem(menu, SWT.PUSH); deleteMenuItem.setText(Messages.StatusHandlingView_Delete); deleteMenuItem.addSelectionListener(remove); menu.addListener(SWT.Show, new Listener() { public void handleEvent(Event event) { if (viewer.getTable().getItems().length > 1 && viewer.getTable().getSelectionIndices().length == 1) { if (viewer.getTable().getSelectionIndex() == 0) { upMenuItem.setEnabled(false); downMenuItem.setEnabled(true); } else if (viewer.getTable().getSelectionIndex() == viewer.getTable().getItems().length - 1) { upMenuItem.setEnabled(true); downMenuItem.setEnabled(false); } else { upMenuItem.setEnabled(true); downMenuItem.setEnabled(true); } } else { upMenuItem.setEnabled(false); downMenuItem.setEnabled(false); } deleteMenuItem.setEnabled(viewer.getTable().getItems().length != 0); } }); }