List of usage examples for org.eclipse.jface.viewers TreeViewerColumn TreeViewerColumn
public TreeViewerColumn(TreeViewer viewer, TreeColumn column)
From source file:com.rcpcompany.uibindings.internal.ColumnBindingImpl.java
License:Open Source License
@Override public IColumnBinding column(TreeColumn column) { assertTrue(column != null, "No column?"); //$NON-NLS-1$ final ColumnViewer viewer = getViewer(); assertTrue(viewer instanceof TreeViewer, "A TreeColumn can only be added to a TreeViewer"); //$NON-NLS-1$ return column(new TreeViewerColumn((TreeViewer) viewer, column)); }
From source file:com.sonatype.buildserver.eclipse.ui.view.JobView.java
License:Open Source License
private void createViewer(Composite parent) { viewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL); tree = viewer.getTree();/*from ww w . ja va2 s . c om*/ tree.setHeaderVisible(true); columnSelectionListener = new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { TreeColumn oldSortColumn = tree.getSortColumn(); TreeColumn sortColumn = (TreeColumn) e.widget; if (sortColumn == oldSortColumn) { int sortDirection = tree.getSortDirection(); tree.setSortDirection(sortDirection == SWT.UP ? SWT.DOWN : SWT.UP); } else { tree.setSortColumn(sortColumn); } viewer.refresh(); } }; statusColumn = new TreeViewerColumn(viewer, SWT.CENTER); statusColumn.getColumn().setWidth(40); statusColumn.getColumn().setText(Messages.jobView_columns_status); statusColumn.getColumn().addSelectionListener(columnSelectionListener); statusColumn.setLabelProvider(new JobLabelProvider(JobLabelProvider.STATUS_COLUMN)); weatherColumn = new TreeViewerColumn(viewer, SWT.CENTER); weatherColumn.getColumn().setWidth(30); weatherColumn.getColumn().setText(Messages.jobView_columns_weather); weatherColumn.getColumn().addSelectionListener(columnSelectionListener); weatherColumn.setLabelProvider(new JobLabelProvider(JobLabelProvider.WEATHER_COLUMN)); nameColumn = new TreeViewerColumn(viewer, SWT.NONE); nameColumn.getColumn().setText(Messages.jobView_columns_name); nameColumn.getColumn().addSelectionListener(columnSelectionListener); nameColumn.setLabelProvider(new JobLabelProvider(JobLabelProvider.NAME_COLUMN)); if (!HudsonUIActivator.getDefault().getPreferenceStore().getBoolean(HIDE_COLUMN_SERVER)) { serverColumn = createServerColumn(); } if (!HudsonUIActivator.getDefault().getPreferenceStore().getBoolean(HIDE_COLUMN_LAST_BUILD)) { lastBuildColumn = createLastBuildColumn(); } ColumnViewerToolTipSupport.enableFor(viewer, ColumnViewerToolTipSupport.RECREATE); tree.addControlListener(new ControlListener() { public void controlResized(ControlEvent e) { resizeColumns(); viewer.getTree().removeControlListener(this); } public void controlMoved(ControlEvent e) { } }); viewer.setContentProvider(new ITreeContentProvider() { public boolean hasChildren(Object element) { return false; } public Object getParent(Object element) { return null; } public Object[] getChildren(Object parentElement) { return null; } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } public void dispose() { } public Object[] getElements(Object inputElement) { if (inputElement instanceof Object[]) { return (Object[]) inputElement; } return null; } }); new org.eclipse.core.runtime.jobs.Job(Messages.background_loading_prefs) { protected IStatus run(IProgressMonitor monitor) { try { CompositeMonitor loadedMonitor = HudsonUtils.loadDefaultMonitor(); assert loadedMonitor != null; setMonitor(loadedMonitor); return Status.OK_STATUS; } catch (Exception e) { setMonitor(new CompositeMonitor()); log.error("Error loading default composite monitor", e); return new Status(IStatus.ERROR, HudsonUIActivator.PLUGIN_ID, e.getMessage(), e); } } }.schedule(); tree.setSortColumn(nameColumn.getColumn()); tree.setSortDirection(SWT.UP); viewer.setComparator(new ViewerComparator() { @Override public int compare(Viewer viewer, Object e1, Object e2) { int direction = tree.getSortDirection(); int directModifier = direction == SWT.UP ? 1 : -1; int column = tree.indexOf(tree.getSortColumn()); switch (column) { case JobLabelProvider.STATUS_COLUMN: e1 = getBuildResult(e1); e2 = getBuildResult(e2); break; case JobLabelProvider.WEATHER_COLUMN: return directModifier * (getBuildHealth(e1) - getBuildHealth(e2)); case JobLabelProvider.LAST_BUILD_COLUMN: return directModifier * (getBuildTime(e1) - getBuildTime(e2) < 0 ? -1 : 1); default: e1 = labelProvider.getColumnText(e1, column); e2 = labelProvider.getColumnText(e2, column); break; } int result = super.compare(viewer, e1, e2); return directModifier * result; } private String getBuildResult(Object o) { if (o instanceof HudsonJob) { ProjectDTO job = ((HudsonJob) o).getJobDetails(); if (job != null) { BuildDTO build = job.getLastBuild(); if (build != null) { return String.valueOf(build.getResult()); } } } return null; } private int getBuildHealth(Object o) { if (o instanceof HudsonJob) { ProjectDTO job = ((HudsonJob) o).getJobDetails(); if (job != null) { HealthDTO health = job.getHealth(); if (health != null) { return health.getScore(); } } } return -1; } private long getBuildTime(Object o) { if (o instanceof HudsonJob) { ProjectDTO job = ((HudsonJob) o).getJobDetails(); if (job != null) { BuildDTO build = job.getLastBuild(); if (build != null) { return build.getTimeStamp(); } } } return -1; } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { boolean empty = viewer.getSelection().isEmpty(); StructuredSelection ss = (StructuredSelection) viewer.getSelection(); boolean hasOnlyDeclared = true; for (Object o : ss.toList()) { HudsonJob b = (HudsonJob) o; if (b.isMonitored()) { hasOnlyDeclared = false; break; } } buildNowAction.setEnabled(!empty); removeAction.setEnabled(!empty && !hasOnlyDeclared); showTestResultAction.setEnabled(!empty); } }); viewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { openAction.run(); } }); }
From source file:com.sonatype.buildserver.eclipse.ui.view.JobView.java
License:Open Source License
private TreeViewerColumn createServerColumn() { TreeViewerColumn toRet = new TreeViewerColumn(viewer, SWT.NONE); toRet.setLabelProvider(new JobLabelProvider(JobLabelProvider.SERVER_COLUMN)); toRet.getColumn().setText(Messages.jobView_columns_server); toRet.getColumn().setWidth(30);/*from w ww . j a v a2 s .com*/ toRet.getColumn().addSelectionListener(columnSelectionListener); return toRet; }
From source file:com.sonatype.buildserver.eclipse.ui.view.JobView.java
License:Open Source License
private TreeViewerColumn createLastBuildColumn() { TreeViewerColumn toRet = new TreeViewerColumn(viewer, SWT.NONE); toRet.getColumn().setText(Messages.jobView_columns_lastBuild); toRet.getColumn().addSelectionListener(columnSelectionListener); toRet.getColumn().setWidth(30);//from w ww . j av a 2s. c o m toRet.setLabelProvider(new JobLabelProvider(JobLabelProvider.LAST_BUILD_COLUMN)); return toRet; }
From source file:com.svcdelivery.liquibase.eclipse.internal.ui.DataSourceViewPart.java
License:Apache License
@Override public final void createPartControl(final Composite parent) { dataSources = new TreeViewer(parent, SWT.VIRTUAL | SWT.FULL_SELECTION); final Tree dataSourcesTree = dataSources.getTree(); TreeViewerColumn log = new TreeViewerColumn(dataSources, SWT.NONE); TreeViewerColumn id = new TreeViewerColumn(dataSources, SWT.NONE); TreeViewerColumn tag = new TreeViewerColumn(dataSources, SWT.NONE); TreeViewerColumn date = new TreeViewerColumn(dataSources, SWT.NONE); TreeViewerColumn type = new TreeViewerColumn(dataSources, SWT.NONE); TreeColumn logColumn = log.getColumn(); TreeColumn idColumn = id.getColumn(); TreeColumn tagColumn = tag.getColumn(); TreeColumn dateColumn = date.getColumn(); TreeColumn typeColumn = type.getColumn(); logColumn.setText(""); idColumn.setText("ID"); tagColumn.setText("Tag"); dateColumn.setText("Date Ran"); typeColumn.setText("Type"); logColumn.setWidth(300);/*from ww w. j a va 2 s. c om*/ idColumn.setWidth(150); tagColumn.setWidth(150); dateColumn.setWidth(150); typeColumn.setWidth(100); dataSourcesTree.setHeaderVisible(true); dataSourcesTree.setLinesVisible(true); dataSources.setUseHashlookup(true); dataSources.setContentProvider(new DataSourceContentProvider()); dataSources.setLabelProvider(new DataSourceLabelProvider()); dataSources.setInput(ProfileManager.getInstance()); getSite().setSelectionProvider(dataSources); MenuManager mgr = new MenuManager(); mgr.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS)); mgr.addMenuListener(new IMenuListener() { @Override public void menuAboutToShow(final IMenuManager manager) { manager.removeAll(); ISelection selection = dataSources.getSelection(); if (selection instanceof StructuredSelection) { StructuredSelection ss = (StructuredSelection) selection; boolean rollback = true; boolean refresh = true; Iterator<?> i = ss.iterator(); while (i.hasNext()) { Object next = i.next(); if (!(next instanceof ChangeSetTreeItem)) { rollback = false; break; } if (!(next instanceof IConnectionProfile)) { refresh = false; break; } } if (rollback) { Shell shell = dataSourcesTree.getShell(); IAction action = new RollbackCommandHandler(shell, selection); manager.add(action); } if (refresh) { IAction action = new DataSourceRefreshCommandHandler(selection); manager.add(action); } } } }); getSite().registerContextMenu(mgr, dataSources); Menu menu = mgr.createContextMenu(dataSourcesTree); dataSourcesTree.setMenu(menu); Activator.getDefault().addDatabaseUpdateListener(this); }
From source file:com.twinsoft.convertigo.eclipse.views.projectexplorer.ProjectExplorerView.java
License:Open Source License
/** * This is a callback that will allow us * to create the viewer and initialize it. *///from ww w .j a v a2s . co m public void createPartControl(Composite parent) { viewContentProvider = new ViewContentProvider(this); viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION) { @Override public void refresh(Object element) { super.refresh(element); packColumns(); } @Override public void update(Object element, String[] properties) { super.update(element, properties); packColumns(); } }; viewer.setContentProvider(viewContentProvider); // DND support int ops = DND.DROP_COPY | DND.DROP_MOVE; Transfer[] dragtfs = new Transfer[] { TextTransfer.getInstance() }; Transfer[] droptfs = new Transfer[] { TextTransfer.getInstance(), StepSourceTransfer.getInstance() }; viewer.addDragSupport(ops, dragtfs, new TreeDragListener(viewer)); viewer.addDropSupport(ops, droptfs, new TreeDropAdapter(viewer)); viewer.addTreeListener(new ITreeViewerListener() { @Override public void treeExpanded(TreeExpansionEvent event) { packColumns(); } @Override public void treeCollapsed(TreeExpansionEvent event) { packColumns(); } }); viewer.setSorter(new TreeObjectSorter()); viewer.setInput(getViewSite()); TreeViewerColumn treeViewerColumn = new TreeViewerColumn(viewer, SWT.LEFT); ILabelProvider lp = new ViewLabelProvider(); ILabelDecorator ld = new ViewLabelDecorator(); treeViewerColumn.setLabelProvider(new DecoratingColumnLabelProvider(lp, ld)); treeViewerColumn = new TreeViewerColumn(viewer, SWT.LEFT); treeViewerColumn.setLabelProvider(new CommentColumnLabelProvider()); treeViewerColumn.setEditingSupport(new CommentEditingSupport(viewer)); //drillDownAdapter = new DrillDownAdapter(viewer); makeActions(); hookContextMenu(); hookSelectionChangedEvent(); hookDoubleClickAction(); hookGlobalActions(); hookKeyboardActions(); contributeToActionBars(); getSite().setSelectionProvider(viewer); ConvertigoPlugin.runAtStartup(new Runnable() { @Override public void run() { initialize(); } }); }
From source file:com.vmware.vfabric.ide.eclipse.tcserver.insight.internal.ui.InsightPluginsSection.java
License:Open Source License
@Override public void createSection(Composite parent) { super.createSection(parent); FormToolkit toolkit = getFormToolkit(parent.getDisplay()); Section section = toolkit.createSection(parent, ExpandableComposite.TWISTIE | ExpandableComposite.TITLE_BAR | Section.DESCRIPTION | ExpandableComposite.FOCUS_TITLE | ExpandableComposite.EXPANDED); section.setText("Plugins"); section.setDescription("Enable plug-ins to gather specific metrics."); section.setLayoutData(new GridData(GridData.FILL_BOTH | GridData.GRAB_VERTICAL)); Composite composite = toolkit.createComposite(section, SWT.NONE); GridLayout layout = new GridLayout(2, false); layout.marginHeight = 8;/*from w w w. j a v a 2 s .c o m*/ layout.marginWidth = 8; composite.setLayout(layout); toolkit.paintBordersFor(composite); section.setClient(composite); CheckboxFilteredTree filteredTree = new CheckboxFilteredTree(composite, SWT.FULL_SELECTION | SWT.BORDER, new SubstringPatternFilter()); GridDataFactory.fillDefaults().grab(true, true).hint(SWT.DEFAULT, 200).applyTo(filteredTree); pluginViewer = filteredTree.getCheckboxTreeViewer(); // required to make filtering work pluginViewer.setLabelProvider(new PluginLabelProvider()); pluginViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { InsightPlugin plugin = (InsightPlugin) event.getElement(); execute(new EnablePluginsOperation(Collections.singletonList(plugin), event.getChecked())); } }); pluginViewer.setCheckStateProvider(new ICheckStateProvider() { public boolean isChecked(Object element) { return ((InsightPlugin) element).isEnabled(); } public boolean isGrayed(Object element) { return false; } }); TreeViewerColumn nameColumn = new TreeViewerColumn(pluginViewer, SWT.NONE); nameColumn.getColumn().setText("Name"); nameColumn.getColumn().setWidth(400); nameColumn.setLabelProvider(new DelegatingStyledCellLabelProvider(new PluginLabelProvider())); pluginViewer.setContentProvider(new ITreeContentProvider() { private InsightPluginModel input; private final Object[] EMPTY_ARRAY = new Object[0]; public void dispose() { // ignore } public Object[] getChildren(Object parentElement) { return EMPTY_ARRAY; } public Object[] getElements(Object parent) { if (input != null) { return input.getPlugins().toArray(); } return EMPTY_ARRAY; } public Object getParent(Object element) { return null; } public boolean hasChildren(Object element) { return false; } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { input = (InsightPluginModel) newInput; } }); pluginViewer.setSorter(new ViewerSorter() { @Override public int compare(Viewer viewer, Object e1, Object e2) { InsightPlugin p1 = (InsightPlugin) e1; InsightPlugin p2 = (InsightPlugin) e2; return p1.getName().compareTo(p2.getName()); } }); Composite buttonComposite = new Composite(composite, SWT.NONE); GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.TOP).applyTo(buttonComposite); GridLayoutFactory.fillDefaults().numColumns(1).margins(0, 0).extendedMargins(0, 0, 0, 0) .applyTo(buttonComposite); createButtons(buttonComposite); initialize(); }
From source file:com.xse.eclipseui.tree.AbstractTree.java
License:Open Source License
public void refreshColumns() { this.tree.setRedraw(false); this.removeAllColumns(); int cell = 0; boolean hasTooltip = false; for (final com.xse.eclipseui.table.TableColumn column : this.getColumns()) { final TreeColumn nameColumn = new TreeColumn(this.tree, column.getStyle()); if (column.isProvideTooltip() || column.hasEditingSupport()) { hasTooltip = column.isProvideTooltip(); final TreeViewerColumn treeViewerColumn = new TreeViewerColumn(this.viewer, nameColumn); this.treeViewerColumnMap.put(Integer.valueOf(cell++), treeViewerColumn); if (column.hasEditingSupport()) { treeViewerColumn.setEditingSupport(column.getEditingSupport()); }// w w w. ja va2s. co m } nameColumn.setText(column.getTitle()); nameColumn.setWidth(column.getWidth()); nameColumn.setMoveable(column.isMoveable()); nameColumn.setData(ISINFILTER_KEY, Boolean.valueOf(column.isIncludeInFilter())); } if (hasTooltip) { ColumnViewerToolTipSupport.enableFor(this.viewer, ToolTip.NO_RECREATE); } this.tree.setRedraw(true); this.addSelectionAdapter(); }
From source file:cz.robotron.examples.parts._005_TreeWithViewerSupport.java
License:Open Source License
private void createTreeColumns(TreeViewer treeViewer, String[] propertyNames) { for (String name : propertyNames) { TreeViewerColumn viewerColumn = new TreeViewerColumn(treeViewer, SWT.NONE); TreeColumn tableColumn = viewerColumn.getColumn(); tableColumn.setText(name);/*from ww w . ja v a2 s .c o m*/ tableColumn.setWidth(100); } }
From source file:de.bmw.yamaica.common.ui.internal.dialogs.YamaicaWizardSelectionPage.java
License:Mozilla Public License
@Override public void createControl(Composite parent) { Composite composite = new Composite(parent, SWT.NONE); composite.setLayout(new GridLayout(1, false)); setControl(composite);//from ww w . java 2 s . c om TreeColumnLayout tableColumnLayout = new TreeColumnLayout(); Composite tableComposite = new Composite(composite, SWT.NONE); tableComposite.setLayout(tableColumnLayout); tableComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); tableViewer = new TreeViewer(tableComposite, SWT.BORDER | SWT.SINGLE | SWT.FULL_SELECTION); tableViewer.setContentProvider(getContentProvider()); tableViewer.setComparator(new WizardComparator()); tableViewer.setFilters(new ViewerFilter[] { new YamaicaWizardActivityFilter() }); TreeViewerColumn filenameViewerColumn = new TreeViewerColumn(tableViewer, SWT.LEAD); filenameViewerColumn.setLabelProvider((CellLabelProvider) getLabelProvider()); tableColumnLayout.setColumnData(filenameViewerColumn.getColumn(), new ColumnWeightData(100, 80, false)); tableViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { ISelection selection = event.getSelection(); if (!selection.isEmpty() && selection instanceof IStructuredSelection) { Object selectedElement = ((IStructuredSelection) selection).getFirstElement(); if (selectedElement instanceof TreeNode) selectedElement = ((TreeNode) selectedElement).getValue(); if (selectedElement instanceof IWizardDescriptor) { IWizardDescriptor wizardDescriptor = (IWizardDescriptor) selectedElement; IWizardNode wizardNode = createWizardNode(wizardDescriptor); setMessage(wizardDescriptor.getDescription()); setSelectedNode(wizardNode); } } } }); tableViewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { getContainer().showPage(getNextPage()); } }); Object viewerInput = getViewerInput(); if (useWizardCategories) viewerInput = createTreeInput(viewerInput); tableViewer.setInput(viewerInput); tableViewer.expandAll(); }