List of usage examples for org.eclipse.jface.viewers TableViewer getLabelProvider
@Override
public IBaseLabelProvider getLabelProvider()
Viewer
framework method returns the label provider, which in the case of table viewers will be an instance of either ITableLabelProvider
or ILabelProvider
. From source file:org.eclipse.tcf.te.tcf.ui.controls.PeerAttributesTablePart.java
License:Open Source License
@Override protected void configureTableViewer(final TableViewer viewer) { super.configureTableViewer(viewer); if (viewer != null && viewer.getTable() != null && !viewer.getTable().isDisposed()) { Table table = viewer.getTable(); // Create the table columns new TableColumn(table, SWT.NONE).setText(Messages.PeerAttributesTablePart_column_name); new TableColumn(table, SWT.NONE).setText(Messages.PeerAttributesTablePart_column_value); // Create and configure the table layout TableLayout tableLayout = new TableLayout(); tableLayout.addColumnData(new ColumnWeightData(40, true)); tableLayout.addColumnData(new ColumnWeightData(60, true)); table.setLayout(tableLayout);// www. ja v a2 s . c o m table.setHeaderVisible(true); table.setLinesVisible(true); // Setup the cell editors viewer.setColumnProperties(new String[] { Messages.PeerAttributesTablePart_column_name, Messages.PeerAttributesTablePart_column_value }); CellEditor[] cellEditors = new CellEditor[viewer.getColumnProperties().length]; cellEditors[0] = new TextCellEditor(table); ((Text) cellEditors[0].getControl()).setTextLimit(250); cellEditors[1] = new TextCellEditor(table); ((Text) cellEditors[1].getControl()).setTextLimit(250); viewer.setCellEditors(cellEditors); viewer.setCellModifier(new ICellModifier() { @Override public boolean canModify(Object element, String property) { return element instanceof TableNode && !isReadOnly(); } @Override public Object getValue(Object element, String property) { String value = null; if (element instanceof TableNode) { if (Messages.PeerAttributesTablePart_column_name.equals(property)) { value = ((TableNode) element).name; } else if (Messages.PeerAttributesTablePart_column_value.equals(property)) { value = ((TableNode) element).value; } } return value; } @Override public void modify(Object element, String property, Object value) { if (element instanceof TableItem) element = ((TableItem) element).getData(); if (element instanceof TableNode) { if (Messages.PeerAttributesTablePart_column_name.equals(property)) { ((TableNode) element).name = value != null ? value.toString() : ""; //$NON-NLS-1$ } else if (Messages.PeerAttributesTablePart_column_value.equals(property)) { ((TableNode) element).value = value != null ? value.toString() : ""; //$NON-NLS-1$ } viewer.setInput(nodes); onTableModified(); } } }); // Create and set content and label provider viewer.setContentProvider(new ArrayContentProvider()); viewer.setLabelProvider(new TableLabelProvider()); // Configure the comparator viewer.setComparator( new TableViewerComparator(viewer, (ITableLabelProvider) viewer.getLabelProvider())); // Attach listeners viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { updateButtons(); } }); } }
From source file:org.eclipse.tm.te.tcf.ui.internal.editor.pages.NodePropertiesEditorPage.java
License:Open Source License
/** * Creates and returns a new node properties table control. * * @return The new node properties table control. *//* w w w .j a va 2s. c o m*/ protected NodePropertiesTableControl doCreateNodePropertiesTableControl() { return new NodePropertiesTableControl(this) { /* (non-Javadoc) * @see org.eclipse.tm.te.tcf.vtl.ui.datasource.controls.tables.NodePropertiesTableControl#doCreateTableViewerContentProvider(org.eclipse.jface.viewers.TableViewer) */ @Override protected IStructuredContentProvider doCreateTableViewerContentProvider(TableViewer viewer) { return new NodePropertiesContentProvider(true); } /* (non-Javadoc) * @see org.eclipse.tm.te.tcf.vtl.ui.datasource.controls.tables.properties.NodePropertiesTableControl#doCreateTableViewerLabelProvider(org.eclipse.jface.viewers.TableViewer) */ @Override protected ITableLabelProvider doCreateTableViewerLabelProvider(TableViewer viewer) { return new NodePropertiesLabelProvider(viewer); } /* (non-Javadoc) * @see org.eclipse.tm.te.tcf.vtl.ui.datasource.controls.tables.NodePropertiesTableControl#doCreateTableViewerComparator(org.eclipse.jface.viewers.TableViewer) */ @Override protected ViewerComparator doCreateTableViewerComparator(TableViewer viewer) { return new NodePropertiesViewerComparator(viewer, (ITableLabelProvider) viewer.getLabelProvider()); } }; }
From source file:org.eclipse.ui.internal.about.AboutPluginsPage.java
License:Open Source License
public int compare(Viewer viewer, Object e1, Object e2) { if (sortColumn == 0 && e1 instanceof AboutBundleData && e2 instanceof AboutBundleData) { AboutBundleData d1 = (AboutBundleData) e1; AboutBundleData d2 = (AboutBundleData) e2; int diff = getSignedSortValue(d1) - getSignedSortValue(d2); // If values are different, or there is no secondary column defined, // we are done if (diff != 0 || lastSortColumn == 0) return ascending ? diff : -diff; // try a secondary sort if (viewer instanceof TableViewer) { TableViewer tableViewer = (TableViewer) viewer; IBaseLabelProvider baseLabel = tableViewer.getLabelProvider(); if (baseLabel instanceof ITableLabelProvider) { ITableLabelProvider tableProvider = (ITableLabelProvider) baseLabel; String e1p = tableProvider.getColumnText(e1, lastSortColumn); String e2p = tableProvider.getColumnText(e2, lastSortColumn); int result = getComparator().compare(e1p, e2p); return lastAscending ? result : (-1) * result; }/*from w ww .j ava 2 s .c o m*/ } // we couldn't determine a secondary sort, call it equal return 0; } if (viewer instanceof TableViewer) { TableViewer tableViewer = (TableViewer) viewer; IBaseLabelProvider baseLabel = tableViewer.getLabelProvider(); if (baseLabel instanceof ITableLabelProvider) { ITableLabelProvider tableProvider = (ITableLabelProvider) baseLabel; String e1p = tableProvider.getColumnText(e1, sortColumn); String e2p = tableProvider.getColumnText(e2, sortColumn); int result = getComparator().compare(e1p, e2p); // Secondary column sort if (result == 0) { if (lastSortColumn != 0) { e1p = tableProvider.getColumnText(e1, lastSortColumn); e2p = tableProvider.getColumnText(e2, lastSortColumn); result = getComparator().compare(e1p, e2p); return lastAscending ? result : (-1) * result; } // secondary sort is by column 0 if (e1 instanceof AboutBundleData && e2 instanceof AboutBundleData) { AboutBundleData d1 = (AboutBundleData) e1; AboutBundleData d2 = (AboutBundleData) e2; int diff = getSignedSortValue(d1) - getSignedSortValue(d2); return lastAscending ? diff : -diff; } } // primary column sort return ascending ? result : (-1) * result; } } return super.compare(viewer, e1, e2); }
From source file:org.eclipse.ui.internal.dialogs.AboutPluginsDialog.java
License:Open Source License
public int compare(Viewer viewer, Object e1, Object e2) { if (sortColumn == 0 && e1 instanceof AboutBundleData && e2 instanceof AboutBundleData) { AboutBundleData d1 = (AboutBundleData) e1; AboutBundleData d2 = (AboutBundleData) e2; int diff = getSignedSortValue(d1) - getSignedSortValue(d2); return ascending ? diff : -diff; }//w w w .jav a 2s.c o m if (viewer instanceof TableViewer) { TableViewer tableViewer = (TableViewer) viewer; IBaseLabelProvider baseLabel = tableViewer.getLabelProvider(); if (baseLabel instanceof ITableLabelProvider) { ITableLabelProvider tableProvider = (ITableLabelProvider) baseLabel; String e1p = tableProvider.getColumnText(e1, sortColumn); String e2p = tableProvider.getColumnText(e2, sortColumn); int result = getComparator().compare(e1p, e2p); return ascending ? result : (-1) * result; } } return super.compare(viewer, e1, e2); }
From source file:org.jcryptool.crypto.xml.ui.tests.verify.SignatureViewTest.java
License:Open Source License
public void testView() { TableViewer viewer = testView.getSignaturesViewer(); assertNotNull(viewer);/*from w w w .j av a2s.c o m*/ ArrayContentProvider contentProvider = (ArrayContentProvider) viewer.getContentProvider(); assertNotNull(contentProvider); SignatureLabelProvider labelProvider = (SignatureLabelProvider) viewer.getLabelProvider(); assertNotNull(labelProvider); assertEquals(4, viewer.getTable().getColumnCount()); assertEquals("0 Signatures: 0 valid, 0 invalid, 0 unknown", testView.getContentDescription()); }
From source file:org.key_project.util.eclipse.swt.SWTUtil.java
License:Open Source License
/** * <p>//from w ww .j a v a 2s . c om * Makes the columns in the given {@link TableViewer} sortable. * </p> * <p> * <b>Attention:</b> It is required to call this method once after * the {@link TableViewer} is filled with the available columns. * </p> * @param viewer The {@link TableViewer} to make his columns sortable. */ public static void makeTableColumnsSortable(final TableViewer viewer) { if (viewer != null && !viewer.getTable().isDisposed()) { final Table table = viewer.getTable(); Listener sortListener = new Listener() { public void handleEvent(Event e) { // determine new sort column and direction TableColumn sortColumn = table.getSortColumn(); TableColumn currentColumn = (TableColumn) e.widget; int dir = table.getSortDirection(); if (sortColumn == currentColumn) { if (dir == SWT.UP) { dir = SWT.DOWN; } else if (dir == SWT.DOWN) { dir = SWT.NONE; } else { dir = SWT.UP; } } else { table.setSortColumn(currentColumn); dir = SWT.UP; } table.setSortDirection(dir); final int columnIndex = table.indexOf(currentColumn); final int sortDirection = dir; // sort the data based on column and direction viewer.setComparator(new ViewerComparator() { @Override public int compare(Viewer viewerComp, Object e1, Object e2) { if (sortDirection == SWT.UP || sortDirection == SWT.DOWN) { Assert.isTrue(viewer.getLabelProvider() instanceof ITableLabelProvider); ITableLabelProvider provider = (ITableLabelProvider) viewer.getLabelProvider(); String e1value = provider.getColumnText(e1, columnIndex); String e2value = provider.getColumnText(e2, columnIndex); int comparison = e1value.compareTo(e2value); if (sortDirection == SWT.UP) { return comparison; } else { return comparison * -1; } } else { return 0; // Original order. } } }); } }; TableColumn[] columns = table.getColumns(); for (TableColumn column : columns) { column.addListener(SWT.Selection, sortListener); } } }
From source file:org.multicore_association.shim.edit.gui.swt.viewer.ShimObjectTableFilter.java
License:MIT License
/** * @see org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer, * java.lang.Object, java.lang.Object) *//*from w w w. j a v a 2 s .com*/ @Override public boolean select(Viewer viewer, Object parentElement, Object element) { if (searchString == null || searchString.isEmpty()) { return true; } List<Integer> searchIndexes = new ArrayList<Integer>(); TableViewer tableViewer = (TableViewer) viewer; TableColumn[] columns = tableViewer.getTable().getColumns(); for (int i = 0; i < columns.length; i++) { if (searchFiled != null && !searchFiled.equals(columns[i].getText())) { continue; } searchIndexes.add(i); } ITableLabelProvider labelProvider = (ITableLabelProvider) tableViewer.getLabelProvider(); ShimObject obj = (ShimObject) element; for (Integer searchIndex : searchIndexes) { String columnText = labelProvider.getColumnText(obj, searchIndex); if (isMatch(columnText)) { return true; } } return false; }
From source file:org.seasar.uruma.renderer.impl.TableColumnRenderer.java
License:Apache License
private void setupColumnMap(final TableColumnComponent uiComponent, final TableColumn widget) { int columnNo = uiComponent.columnNo; String id = uiComponent.getId(); String parentId = uiComponent.getParent().getId(); PartContext context = getContext();// w w w .j av a 2s .co m WidgetHandle parentHandle = context.getWidgetHandle(parentId); if (parentHandle != null && parentHandle.instanceOf(TableViewer.class)) { TableViewer viewer = parentHandle.<TableViewer>getCastWidget(); IBaseLabelProvider baseLabelProvider = viewer.getLabelProvider(); if (baseLabelProvider instanceof GenericTableLabelProvider) { GenericTableLabelProvider provider = (GenericTableLabelProvider) baseLabelProvider; provider.addColumnMap(columnNo, id); } } }
From source file:org.thanlwinsoft.languagetest.eclipse.editors.TestItemSorter.java
License:Open Source License
public int compare(Viewer viewer, Object e1, Object e2) { TestItemType i1 = null;//from w ww.jav a2 s. c om TestItemType i2 = null; if (e1 instanceof TestItemType && e2 instanceof TestItemType) { i1 = (TestItemType) e1; i2 = (TestItemType) e2; } if (e1 instanceof TestItemMatch && e2 instanceof TestItemMatch) { i1 = ((TestItemMatch) e1).getTestItem(); i2 = ((TestItemMatch) e2).getTestItem(); } if (i1 != null && i2 != null) { if (column.equals(TestItemEditor.CREATION_DATE)) { if (i1.getCreationTime() < i2.getCreationTime()) return -sortFactor; else if (i1.getCreationTime() == i2.getCreationTime()) return 0; return sortFactor; } if (viewer instanceof TableViewer && columnIndex > -1) { TableViewer tv = (TableViewer) viewer; ITableLabelProvider tlp = (ITableLabelProvider) tv.getLabelProvider(); String s1 = tlp.getColumnText(e1, columnIndex); String s2 = tlp.getColumnText(e2, columnIndex); if (s1 == null) s1 = ""; if (s2 == null) s2 = ""; if (icuCollator != null) { return sortFactor * icuCollator.compare(s1, s2); } return sortFactor * super.compare(null, e1, e2); } } return sortFactor * super.compare(viewer, e1, e2); }
From source file:SEURAT.search.SearchResultPage_IconTableSorter.java
License:Open Source License
/** * @param pSortColumn the id of the table column to sort on * @param pViewer the table viewer which will be sorted *///from w ww.jav a2 s .com public SearchResultPage_IconTableSorter(int pSortColumn, TableViewer pViewer) { super(); m_SortColumn = pSortColumn; m_TableViewer = pViewer; m_TableLabelProvider = ((ITableLabelProvider) pViewer.getLabelProvider()); // Initialize To True, Then When Activated For The First Time Direction // Will Not Be Reversed m_ReverseDirection = true; }