List of usage examples for org.eclipse.jface.viewers TableViewer setContentProvider
@Override public void setContentProvider(IContentProvider provider)
AbstractTableViewer
. From source file:org.caleydo.view.search.internal.RcpSearchView.java
License:Open Source License
/** * creates out of search result a swt table * * @param composite// w w w . j a va2s . c o m * parent * @param category * the theme of the table * @param foundIdTypes * all idtypes and ids of this category * @return the root element created */ private Group createResultTable(Composite composite, IDCategory category, final Map<IDType, Set<?>> foundIdTypes) { Group group = new Group(results, SWT.SHADOW_ETCHED_IN); final GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false); group.setLayoutData(gd); group.setLayout(new FillLayout()); group.setText(category.getCategoryName()); final TableViewer viewer = new TableViewer(group, SWT.FULL_SELECTION | SWT.BORDER | SWT.VIRTUAL | SWT.NO_SCROLL | SWT.MULTI); viewer.getTable().setLinesVisible(true); viewer.getTable().setHeaderVisible(true); viewer.setContentProvider(ArrayContentProvider.getInstance()); SelectionTriggerListener listener = new SelectionTriggerListener(category); group.setData(listener); viewer.addSelectionChangedListener(listener); // get a list of relevant datadomains i.e. perspectives List<Perspective> perspectives = findRelevantPerspectives(category); // convert the abstract data to result rows List<ResultRow> rows = createResultRows(category, foundIdTypes, perspectives); viewer.setInput(rows); // add columns for every perspective final Color ddColor = new Color(Display.getCurrent(), 240, 240, 240); for (final Perspective perspective : perspectives) { TableViewerColumn col = createTableColumn(viewer, perspective.getDataDomain().getLabel()); col.getColumn().setAlignment(SWT.CENTER); col.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { ResultRow row = (ResultRow) element; Object id = row.get(perspective.getIdType()); return id == null ? "Not Found" : "Found"; } @Override public Color getBackground(Object element) { return ddColor; } }); } // lets order the IDTypes according to their name List<IDType> types = new ArrayList<>(category.getPublicIdTypes()); Collections.sort(types, new Comparator<IDType>() { // by name @Override public int compare(IDType o1, IDType o2) { return String.CASE_INSENSITIVE_ORDER.compare(o1.getTypeName(), o2.getTypeName()); } }); // TableColumnLayout layout = new TableColumnLayout(); // viewer.getTable().setLayout(layout); // add columns for every public type for (final IDType type : types) { TableViewerColumn col = createTableColumn(viewer, type.getTypeName()); col.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { ResultRow row = (ResultRow) element; Object id = row.get(type); return id == null ? "<Not Mapped>" : id.toString(); } @Override public Color getBackground(Object element) { ResultRow row = (ResultRow) element; boolean found = row.wasFound(type); return found ? Display.getCurrent().getSystemColor(SWT.COLOR_GRAY) : null; } }); // col.getColumn().pack(); // layout.setColumnData(col.getColumn(), new ColumnWeightData(col.getColumn().getWidth())); } createContextMenu(viewer, perspectives); // // Pack the columns // for (int i = 0, n = viewer.getTable().getColumnCount(); i < n; i++) { // viewer.getTable().getColumn(i).pack(); // } return group; }
From source file:org.chaupal.jp2p.ui.jxta.view.ModuleTableViewer.java
License:Open Source License
/** * Create contents of the view part./*from www . j a v a 2 s . c o m*/ * @param parent */ @Override public void createPartControl(Composite parent) { getSite().getWorkbenchWindow().getSelectionService().addSelectionListener(new ISelectionListener() { @Override public void selectionChanged(IWorkbenchPart sourcepart, ISelection selection) { // we ignore our own selections if (sourcepart instanceof ConnectivityViewPart) return; showSelection(sourcepart, selection); } }); Composite container = toolkit.createComposite(parent, SWT.NONE); toolkit.paintBordersFor(container); TableColumnLayout tableColumnLayout = new TableColumnLayout(); container.setLayout(tableColumnLayout); TableViewer tableViewer = new TableViewer(container, SWT.BORDER | SWT.FULL_SELECTION); TableViewerColumn column = createColumn("Relays", tableViewer); tableColumnLayout.setColumnData(column.getColumn(), new ColumnWeightData(100, 200, true)); table = tableViewer.getTable(); table.setHeaderVisible(true); table.setLinesVisible(true); tableViewer.setContentProvider(ArrayContentProvider.getInstance()); toolkit.paintBordersFor(table); createActions(); initializeToolBar(); initializeMenu(); }
From source file:org.cheetahplatform.tdm.dialog.ConstraintViolationDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite container = (Composite) super.createDialogArea(parent); setTitle("Constraint Violation"); setMessage("Some constraints are violated by executing this activity.\nDo you want to execute anyway?"); TableViewer constraintViewer = new TableViewer(container); constraintViewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); constraintViewer.setContentProvider(new ArrayContentProvider()); constraintViewer.setLabelProvider(new ConstraintLabelProvider()); constraintViewer.setInput(violatedConstraints); return container; }
From source file:org.chromium.debug.ui.liveedit.LiveEditResultDialog.java
License:Open Source License
/** * Result for several VMs' update is shown as a table. *///from w ww . jav a2s .c o m private void createMultipleResultsControl(Composite parent, MultipleResult multipleResult) { Label label = new Label(parent, SWT.NONE); label.setText(Messages.LiveEditResultDialog_SEVERAL_VMS); label.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); final Table table = new Table(parent, SWT.BORDER); table.setFont(parent.getFont()); table.setLayoutData(new GridData(GridData.FILL_BOTH)); table.setHeaderVisible(true); ValueAdapter<SingleInput, ConnectedTargetData> inputToTargetAdapter = new ValueAdapter<SingleInput, ConnectedTargetData>() { public ConnectedTargetData convert(SingleInput from) { return from.getFilePair().getConnectedTargetData(); } }; List<ColumnData<SingleInput, ?>> columnDataList = new ArrayList<ColumnData<SingleInput, ?>>( ChooseVmControl.createLaunchTargetColumns(inputToTargetAdapter)); columnDataList.add(ColumnData.create(new TrivialAdapter<SingleInput>(), new StatusLabelProvider())); // Create physical columns in the table. for (ColumnData<?, ?> data : columnDataList) { data.getLabelProvider().createColumn(table); } final TableViewer tableViewer = new TableViewer(table); IStructuredContentProvider contentProvider = new IStructuredContentProvider() { public Object[] getElements(Object inputElement) { MultipleResult input = (MultipleResult) inputElement; return input.getList().toArray(); } public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }; tableViewer.setContentProvider(contentProvider); ColumnBasedLabelProvider<SingleInput> labelProvider = new ColumnBasedLabelProvider<SingleInput>( TableUtils.createCastAdapter(SingleInput.class), columnDataList); tableViewer.setLabelProvider(labelProvider); tableViewer.setInput(multipleResult); }
From source file:org.cloudfoundry.ide.eclipse.internal.server.ui.editor.ManageCloudDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { getShell().setText("Manage Cloud URLs"); Composite composite = new Composite(parent, SWT.NONE); GridDataFactory.fillDefaults().grab(true, true).applyTo(composite); GridLayoutFactory.fillDefaults().margins(10, 10).numColumns(2).equalWidth(false).applyTo(composite); final TableViewer viewer = createTableViewer(composite, new String[] { "Server Type", "URL" }, new int[] { 35, 55 }); viewer.setContentProvider(new IStructuredContentProvider() { public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { }/* w w w . ja v a 2s .co m*/ public void dispose() { } public Object[] getElements(Object inputElement) { Collections.sort(cloudUrls, new Comparator<CloudURL>() { public int compare(CloudURL o1, CloudURL o2) { return o1.getName().compareTo(o2.getName()); } }); return cloudUrls.toArray(); } }); cloudUrls = CloudUiUtil.getAllUrls(serverTypeId); viewer.setInput(cloudUrls.toArray()); viewer.setLabelProvider(new ITableLabelProvider() { public void removeListener(ILabelProviderListener listener) { } public boolean isLabelProperty(Object element, String property) { return false; } public void dispose() { } public void addListener(ILabelProviderListener listener) { } public String getColumnText(Object element, int columnIndex) { if (element instanceof CloudURL) { CloudURL cloudUrl = (CloudURL) element; if (columnIndex == 0) { return cloudUrl.getName(); } else if (columnIndex == 1) { return cloudUrl.getUrl(); } } return null; } public Image getColumnImage(Object element, int columnIndex) { return null; } }); Composite buttonComposite = new Composite(composite, SWT.NONE); GridDataFactory.fillDefaults().grab(false, true).applyTo(buttonComposite); GridLayoutFactory.fillDefaults().margins(0, 0).applyTo(buttonComposite); final Button addButton = new Button(buttonComposite, SWT.PUSH); GridDataFactory.fillDefaults().applyTo(addButton); addButton.setText("Add..."); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { CloudURL cloudURL = promptForCloudURL(serverTypeId, e.display.getActiveShell(), cloudUrls, null, null); if (cloudURL != null) { cloudUrls.add(cloudURL); viewer.refresh(true); } } }); final Button editButton = new Button(buttonComposite, SWT.PUSH); GridDataFactory.fillDefaults().applyTo(editButton); editButton.setText("Edit..."); editButton.setEnabled(false); editButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { ISelection selection = viewer.getSelection(); if (selection instanceof IStructuredSelection) { IStructuredSelection sSelection = (IStructuredSelection) selection; Object element = sSelection.getFirstElement(); if (element instanceof CloudURL) { CloudURL cloudUrl = (CloudURL) element; if (cloudUrl.getUserDefined()) { cloudUrls.remove(cloudUrl); CloudURL newUrl = promptForCloudURL(serverTypeId, e.display.getActiveShell(), cloudUrls, cloudUrl.getUrl(), cloudUrl.getName()); if (newUrl != null) { if (cloudUrl.getUrl().equals(newUrl.getUrl()) || canUpdateUrl(cloudUrl, newUrl)) { cloudUrls.add(newUrl); } else { cloudUrls.add(cloudUrl); } } else { cloudUrls.add(cloudUrl); } } else { CloudURL url = CloudUiUtil.getWildcardUrl(cloudUrl, cloudUrls, getShell()); if (url != null) { cloudUrls.add(url); } } viewer.refresh(true); } } } }); final Button removeButton = new Button(buttonComposite, SWT.PUSH); GridDataFactory.fillDefaults().applyTo(removeButton); removeButton.setText("Remove"); removeButton.setEnabled(false); removeButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { ISelection selection = viewer.getSelection(); if (selection instanceof IStructuredSelection) { IStructuredSelection sSelection = (IStructuredSelection) selection; Object[] selectedItems = sSelection.toArray(); for (Object selectedItem : selectedItems) { if (selectedItem instanceof CloudURL) { CloudURL cloudUrl = (CloudURL) selectedItem; if (cloudUrl.getUserDefined()) { if (canUpdateUrl(cloudUrl, null)) { cloudUrls.remove(cloudUrl); } } } } } viewer.refresh(true); } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { ISelection selection = event.getSelection(); if (selection instanceof IStructuredSelection) { boolean editEnabled = true; boolean removeEnabled = true; IStructuredSelection sSelection = (IStructuredSelection) selection; Object[] selectedItems = sSelection.toArray(); for (Object selectedItem : selectedItems) { if (selectedItem instanceof CloudURL) { CloudURL cloudUrl = (CloudURL) selectedItem; if (!cloudUrl.getUserDefined()) { String url = cloudUrl.getUrl(); if (!url.contains("{")) { editEnabled = false; } removeEnabled = false; } } } editButton.setEnabled(selectedItems.length == 1 && editEnabled); removeButton.setEnabled(selectedItems.length > 0 && removeEnabled); } } }); return composite; }
From source file:org.cloudfoundry.ide.eclipse.internal.server.ui.editor.ServiceViewerConfigurator.java
License:Open Source License
/** * This must be called before setting the viewer input * @param tableViewer//from www.jav a 2 s. c om */ public void configureViewer(final TableViewer tableViewer) { tableViewer.setContentProvider(new ApplicationsMasterPartContentProvider()); tableViewer.setLabelProvider(new ServicesTreeLabelProvider(tableViewer)); final Table table = tableViewer.getTable(); table.setHeaderVisible(true); int columnIndex = 0; ServiceViewColumn[] columns = ServiceViewColumn.values(); String[] columnProperties = new String[columns.length]; TableColumn sortColumn = null; for (ServiceViewColumn column : columns) { columnProperties[columnIndex] = column.name(); TableColumn tableColumn = new TableColumn(table, SWT.NONE, columnIndex++); tableColumn.setData(column); tableColumn.setText(column.name()); tableColumn.setWidth(column.getWidth()); tableColumn.addSelectionListener(new ColumnSortListener(tableViewer)); if (column == ServiceViewColumn.Name) { sortColumn = tableColumn; } } // Add a control listener to resize the columns such that there is no // empty space // after the last column if (addAutomaticViewerResizing) { table.getParent().addControlListener(new ControlAdapter() { public void controlResized(ControlEvent e) { Composite tableComposite = tableViewer.getTable().getParent(); Rectangle tableCompositeArea = tableComposite.getClientArea(); int width = tableCompositeArea.width; resizeTableColumns(width, table); } }); } tableViewer.setColumnProperties(columnProperties); tableViewer.setSorter(new CloudFoundryViewerSorter() { @Override public int compare(Viewer viewer, Object e1, Object e2) { TableColumn sortColumn = tableViewer.getTable().getSortColumn(); if (sortColumn != null) { ServiceViewColumn serviceColumn = (ServiceViewColumn) sortColumn.getData(); int result = 0; int sortDirection = tableViewer.getTable().getSortDirection(); if (serviceColumn != null) { if (e1 instanceof CloudService && e2 instanceof CloudService) { CloudService service1 = (CloudService) e1; CloudService service2 = (CloudService) e2; switch (serviceColumn) { case Name: result = super.compare(viewer, e1, e2); break; case Type: result = service1.getType().compareTo(service2.getType()); break; case Vendor: result = service1.getVendor().compareTo(service2.getVendor()); break; } } } return sortDirection == SWT.UP ? result : -result; } return super.compare(viewer, e1, e2); } }); if (sortColumn != null) { table.setSortColumn(sortColumn); table.setSortDirection(SWT.UP); } }
From source file:org.cloudfoundry.ide.eclipse.server.ui.internal.editor.ManageCloudDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { getShell().setText(Messages.ManageCloudDialog_TEXT_MANAGE_CLOUD_URL); Composite composite = new Composite(parent, SWT.NONE); GridDataFactory.fillDefaults().grab(true, true).applyTo(composite); GridLayoutFactory.fillDefaults().margins(10, 10).numColumns(2).equalWidth(false).applyTo(composite); final TableViewer viewer = createTableViewer(composite, new String[] { Messages.ManageCloudDialog_TEXT_SERVER_TYPE, Messages.ManageCloudDialog_TEXT_URL }, new int[] { 35, 55 }); viewer.setContentProvider(new IStructuredContentProvider() { public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { }/*from www.jav a2 s.co m*/ public void dispose() { } public Object[] getElements(Object inputElement) { Collections.sort(cloudUrls, new Comparator<AbstractCloudFoundryUrl>() { public int compare(AbstractCloudFoundryUrl o1, AbstractCloudFoundryUrl o2) { return o1.getName().compareTo(o2.getName()); } }); return cloudUrls.toArray(); } }); try { cloudUrls = CloudServerUIUtil.getAllUrls(serverTypeId, runnableContext); viewer.setInput(cloudUrls.toArray()); } catch (CoreException ex) { CloudFoundryServerUiPlugin.logError(ex); } viewer.setLabelProvider(new ITableLabelProvider() { public void removeListener(ILabelProviderListener listener) { } public boolean isLabelProperty(Object element, String property) { return false; } public void dispose() { } public void addListener(ILabelProviderListener listener) { } public String getColumnText(Object element, int columnIndex) { if (element instanceof AbstractCloudFoundryUrl) { AbstractCloudFoundryUrl cloudUrl = (AbstractCloudFoundryUrl) element; if (columnIndex == 0) { return cloudUrl.getName(); } else if (columnIndex == 1) { return cloudUrl.getUrl(); } } return null; } public Image getColumnImage(Object element, int columnIndex) { return null; } }); Composite buttonComposite = new Composite(composite, SWT.NONE); GridDataFactory.fillDefaults().grab(false, true).applyTo(buttonComposite); GridLayoutFactory.fillDefaults().margins(0, 0).applyTo(buttonComposite); final Button addButton = new Button(buttonComposite, SWT.PUSH); GridDataFactory.fillDefaults().applyTo(addButton); addButton.setText(Messages.COMMONTXT_ADD); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { AbstractCloudFoundryUrl cloudURL = promptForCloudFoundryUrl(serverTypeId, e.display.getActiveShell(), cloudUrls, null, null); if (cloudURL != null) { addURL(cloudURL); viewer.refresh(true); } } }); final Button editButton = new Button(buttonComposite, SWT.PUSH); GridDataFactory.fillDefaults().applyTo(editButton); editButton.setText(Messages.COMMONTXT_EDIT); editButton.setEnabled(false); editButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { ISelection selection = viewer.getSelection(); if (selection instanceof IStructuredSelection) { IStructuredSelection sSelection = (IStructuredSelection) selection; Object element = sSelection.getFirstElement(); if (element instanceof AbstractCloudFoundryUrl) { AbstractCloudFoundryUrl cloudUrl = (AbstractCloudFoundryUrl) element; if (cloudUrl.getUserDefined()) { cloudUrls.remove(cloudUrl); AbstractCloudFoundryUrl newUrl = promptForCloudFoundryUrl(serverTypeId, e.display.getActiveShell(), cloudUrls, cloudUrl.getUrl(), cloudUrl.getName()); if (newUrl != null) { if (cloudUrl.getUrl().equals(newUrl.getUrl()) || canUpdateUrl(cloudUrl, newUrl)) { addURL(newUrl); } else { addURL(cloudUrl); } } else { addURL(cloudUrl); } } else { AbstractCloudFoundryUrl url = CloudServerUIUtil.getWildcardUrl(cloudUrl, cloudUrls, getShell()); if (url != null) { addURL(url); } } viewer.refresh(true); } } } }); final Button removeButton = new Button(buttonComposite, SWT.PUSH); GridDataFactory.fillDefaults().applyTo(removeButton); removeButton.setText(Messages.COMMONTXT_REMOVE); removeButton.setEnabled(false); removeButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { ISelection selection = viewer.getSelection(); if (selection instanceof IStructuredSelection) { IStructuredSelection sSelection = (IStructuredSelection) selection; Object[] selectedItems = sSelection.toArray(); for (Object selectedItem : selectedItems) { if (selectedItem instanceof AbstractCloudFoundryUrl) { AbstractCloudFoundryUrl cloudUrl = (AbstractCloudFoundryUrl) selectedItem; removeCloudUrl(cloudUrl); } } } viewer.refresh(true); } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { ISelection selection = event.getSelection(); if (selection instanceof IStructuredSelection) { boolean editEnabled = true; boolean removeEnabled = true; IStructuredSelection sSelection = (IStructuredSelection) selection; Object[] selectedItems = sSelection.toArray(); for (Object selectedItem : selectedItems) { if (selectedItem instanceof AbstractCloudFoundryUrl) { AbstractCloudFoundryUrl cloudUrl = (AbstractCloudFoundryUrl) selectedItem; if (!cloudUrl.getUserDefined()) { String url = cloudUrl.getUrl(); if (!url.contains("{")) { //$NON-NLS-1$ editEnabled = false; } removeEnabled = false; } } } editButton.setEnabled(selectedItems.length == 1 && editEnabled); removeButton.setEnabled(selectedItems.length > 0 && removeEnabled); } } }); return composite; }
From source file:org.codecover.eclipse.views.controls.DeleteTSCsConfirmDialog.java
License:Open Source License
private static TableViewer createTSCList(Composite parent) { /*//from w ww.j av a 2 s. c om * with SWT.MULTI the selection mark (usually the selected row has a * blue background) can be hidden by setting an empty selection */ TableViewer viewer = new TableViewer(parent, SWT.BORDER | SWT.MULTI); viewer.setContentProvider(new ArrayContentProvider()); viewer.setLabelProvider(new LabelProvider() { @Override public Image getImage(Object element) { return CodeCoverPlugin.getDefault().getImageRegistry() .get(CodeCoverPlugin.Image.SESSION_CONTAINER.getPath()); } @Override public String getText(Object element) { return ((TSContainerInfo) element).getName(); } }); return viewer; }
From source file:org.codehaus.groovy.eclipse.dsl.inferencing.suggestions.ui.MethodParameterTable.java
License:Apache License
protected void setTableProviders(final TableViewer viewer) { viewer.setContentProvider(new IStructuredContentProvider() { public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { }/* w w w . j a v a 2 s . com*/ public void dispose() { } public Object[] getElements(Object inputElement) { if (inputElement instanceof List) { return ((List<?>) inputElement).toArray(); } return null; } }); viewer.setLabelProvider(new ColumnLabelProvider() { public void update(ViewerCell cell) { Object element = cell.getElement(); int index = cell.getColumnIndex(); cell.setText(getColumnText(element, index)); } public String getColumnText(Object element, int index) { String text = null; if (element instanceof MethodParameter) { ColumnTypes[] values = ColumnTypes.values(); if (index >= 0 && index < values.length) { ColumnTypes type = values[index]; MethodParameter arg = (MethodParameter) element; switch (type) { case NAME: text = arg.getName(); break; case TYPE: text = arg.getType(); break; } } } return text; } }); viewer.setInput(parameters); }
From source file:org.cropinformatics.ui.components.impl.TableViewerComponent.java
License:Apache License
@Override protected TableViewer createDefaultViewer(Composite parent) { TableViewer tableViewer = new TableViewer(parent, SWT.NONE); tableViewer.setContentProvider(new ArrayContentProvider()); tableViewer.setLabelProvider(new ArrayLabelProvider()); tableViewer.getTable().setHeaderVisible(true); tableViewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); ConfigurationUtils.configureControl(tableViewer.getTable(), getConfiguration()); tableViewer.getTable().setEnabled(isEnabled()); updateTableViewer();// w w w . j a v a 2s . co m return tableViewer; }