List of usage examples for org.eclipse.jface.viewers ViewerComparator ViewerComparator
public ViewerComparator()
From source file:org.eclipse.e4.ui.internal.progress.ProgressMonitorJobsDialog.java
License:Open Source License
/** * The details button has been selected. Open or close the progress viewer * as appropriate./* w w w. ja v a2s. c om*/ * */ void handleDetailsButtonSelect() { Shell shell = getShell(); Point shellSize = shell.getSize(); Composite composite = (Composite) getDialogArea(); if (viewer != null) { viewer.getControl().dispose(); viewer = null; composite.layout(); shell.setSize(shellSize.x, shellSize.y - viewerHeight); detailsButton.setText(ProgressMessages.ProgressMonitorJobsDialog_DetailsTitle); } else { //Abort if there are no jobs visible if (ProgressManager.getInstance().getRootElements(false).length == 0) { detailsButton.setEnabled(false); return; } viewer = new DetailedProgressViewer(viewerComposite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); viewer.setComparator(new ViewerComparator() { @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public int compare(Viewer testViewer, Object e1, Object e2) { return ((Comparable) e1).compareTo(e2); } }); viewer.setContentProvider(new ProgressViewerContentProvider(viewer, true, false) { public Object[] getElements(Object inputElement) { return super.getElements(inputElement); } }); viewer.setLabelProvider(new ProgressLabelProvider()); viewer.setInput(this); GridData viewerData = new GridData(GridData.FILL_BOTH); viewer.getControl().setLayoutData(viewerData); GridData viewerCompositeData = (GridData) viewerComposite.getLayoutData(); viewerCompositeData.heightHint = convertHeightInCharsToPixels(10); viewerComposite.layout(true); viewer.getControl().setVisible(true); viewerHeight = viewerComposite.computeTrim(0, 0, 0, viewerCompositeData.heightHint).height; detailsButton.setText(ProgressMessages.ProgressMonitorJobsDialog_HideTitle); shell.setSize(shellSize.x, shellSize.y + viewerHeight); } }
From source file:org.eclipse.e4.ui.internal.workbench.renderers.swt.BasicPartList.java
License:Open Source License
public BasicPartList(Shell parent, int shellStyle, int treeStyler, EPartService partService, MElementContainer<?> input, ISWTResourceUtilities utils, boolean alphabetical) { super(parent, shellStyle, treeStyler); this.partService = partService; this.input = input; this.utils = utils; if (alphabetical && getTableViewer() != null) { getTableViewer().setComparator(new ViewerComparator()); }/*from ww w . j a v a2s.c o m*/ }
From source file:org.eclipse.e4.ui.progress.internal.BlockedJobsDialog.java
License:Open Source License
/** * This method creates a dialog area in the parent composite and displays a * progress tree viewer of the running jobs. * * @param parent/*from ww w. jav a 2 s.c o m*/ * The parent Composite. */ void showJobDetails(Composite parent) { viewer = new DetailedProgressViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER, progressService, finishedJobs); viewer.setComparator(new ViewerComparator() { @Override @SuppressWarnings("unchecked") public int compare(Viewer testViewer, Object e1, Object e2) { return ((Comparable<Object>) e1).compareTo(e2); } }); ProgressViewerContentProvider provider = getContentProvider(); viewer.setContentProvider(provider); viewer.setInput(provider); viewer.setLabelProvider(new ProgressLabelProvider()); GridData data = new GridData(GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.FILL_BOTH); data.horizontalSpan = 2; int heightHint = convertHeightInCharsToPixels(10); data.heightHint = heightHint; viewer.getControl().setLayoutData(data); }
From source file:org.eclipse.e4.ui.progress.internal.ProgressMonitorJobsDialog.java
License:Open Source License
/** * The details button has been selected. Open or close the progress viewer * as appropriate./*from www . j a v a 2s. c o m*/ * */ void handleDetailsButtonSelect() { Shell shell = getShell(); Point shellSize = shell.getSize(); Composite composite = (Composite) getDialogArea(); if (viewer != null) { viewer.getControl().dispose(); viewer = null; composite.layout(); shell.setSize(shellSize.x, shellSize.y - viewerHeight); detailsButton.setText(ProgressMessages.ProgressMonitorJobsDialog_DetailsTitle); } else { //Abort if there are no jobs visible if (progressManager.getRootElements(Policy.DEBUG_SHOW_ALL_JOBS).length == 0) { detailsButton.setEnabled(false); return; } viewer = new DetailedProgressViewer(viewerComposite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER, progressService, finishedJobs); viewer.setComparator(new ViewerComparator() { @Override @SuppressWarnings("unchecked") public int compare(Viewer testViewer, Object e1, Object e2) { return ((Comparable<Object>) e1).compareTo(e2); } }); viewer.setContentProvider(contentProviderFactory.getProgressViewerContentProvider(viewer, true, false)); viewer.setLabelProvider(new ProgressLabelProvider()); viewer.setInput(this); GridData viewerData = new GridData(GridData.FILL_BOTH); viewer.getControl().setLayoutData(viewerData); GridData viewerCompositeData = (GridData) viewerComposite.getLayoutData(); viewerCompositeData.heightHint = convertHeightInCharsToPixels(10); viewerComposite.layout(true); viewer.getControl().setVisible(true); viewerHeight = viewerComposite.computeTrim(0, 0, 0, viewerCompositeData.heightHint).height; detailsButton.setText(ProgressMessages.ProgressMonitorJobsDialog_HideTitle); shell.setSize(shellSize.x, shellSize.y + viewerHeight); } }
From source file:org.eclipse.e4.ui.workbench.perspectiveswitcher.internal.dialogs.SelectPerspectiveDialog.java
License:Open Source License
/** * Create a new viewer in the parent./*from w w w. j av a 2 s. c om*/ * * @param parent the parent <code>Composite</code>. */ private void createViewer(Composite parent) { // Add perspective list. viewer = new TableViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); viewer.getTable().setFont(parent.getFont()); viewer.setLabelProvider(new DelegatingLabelProviderWithTooltip( ContextInjectionFactory.make(PerspectiveLabelProvider.class, context), ContextInjectionFactory.make(PerspectiveLabelDecorator.class, context)) { @Override protected Object unwrapElement(Object element) { // We do not need to unwrap the element return element; } }); viewer.setContentProvider(ContextInjectionFactory.make(PerspectiveContentProvider.class, context)); // list.addFilter(activityViewerFilter); viewer.setComparator(new ViewerComparator()); viewer.setInput(window); viewer.addSelectionChangedListener(this); viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { handleDoubleClickEvent(); } }); }
From source file:org.eclipse.e4.xwt.tests.snipppets.Snippet020TreeViewerWithSetFactory.java
License:Open Source License
/** * Create nameMap of the window//from w w w . java2 s. c om */ protected void createContents() { shell = new Shell(); final GridLayout gridLayout_1 = new GridLayout(); gridLayout_1.numColumns = 2; shell.setLayout(gridLayout_1); shell.setSize(535, 397); shell.setText("SWT Application"); final Composite group = new Composite(shell, SWT.NONE); final RowLayout rowLayout = new RowLayout(); rowLayout.marginTop = 0; rowLayout.marginRight = 0; rowLayout.marginLeft = 0; rowLayout.marginBottom = 0; rowLayout.pack = false; group.setLayout(rowLayout); group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false, 2, 1)); final Button addRootButton = new Button(group, SWT.NONE); addRootButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(final SelectionEvent e) { Set set = input.getSet(); Bean root = createBean("root"); set.add(root); input.setSet(set); beanViewer.setSelection(new StructuredSelection(root)); beanText.selectAll(); beanText.setFocus(); } }); addRootButton.setText("Add Root"); addChildBeanButton = new Button(group, SWT.NONE); addChildBeanButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(final SelectionEvent e) { Bean parent = getSelectedBean(); Set set = new HashSet(parent.getSet()); Bean child = createBean("child" + (counter++)); set.add(child); parent.setSet(set); // beanViewer.setSelection(new StructuredSelection(parent)); // beanText.selectAll(); // beanText.setFocus(); } }); addChildBeanButton.setText("Add Child"); removeBeanButton = new Button(group, SWT.NONE); removeBeanButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(final SelectionEvent e) { TreeItem selectedItem = beanViewer.getTree().getSelection()[0]; Bean bean = (Bean) selectedItem.getData(); TreeItem parentItem = selectedItem.getParentItem(); Bean parent; if (parentItem == null) parent = input; else parent = (Bean) parentItem.getData(); Set set = new HashSet(parent.getSet()); set.remove(bean); parent.setSet(set); } }); removeBeanButton.setText("Remove"); copyButton = new Button(group, SWT.NONE); copyButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(final SelectionEvent e) { clipboard.setValue(getSelectedBean()); } }); copyButton.setText("Copy"); pasteButton = new Button(group, SWT.NONE); pasteButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(final SelectionEvent e) { Bean copy = (Bean) clipboard.getValue(); if (copy == null) return; Bean parent = getSelectedBean(); if (parent == null) parent = input; Set set = new HashSet(parent.getSet()); set.add(copy); parent.setSet(set); beanViewer.setSelection(new StructuredSelection(copy)); beanText.selectAll(); beanText.setFocus(); } }); pasteButton.setText("Paste"); final Button refreshButton = new Button(group, SWT.NONE); refreshButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(final SelectionEvent e) { beanViewer.refresh(); } }); refreshButton.setText("Refresh"); beanViewer = new TreeViewer(shell, SWT.FULL_SELECTION | SWT.BORDER); beanViewer.setUseHashlookup(true); beanViewer.setComparator(new ViewerComparator()); tree = beanViewer.getTree(); tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1)); final Label itemNameLabel = new Label(shell, SWT.NONE); itemNameLabel.setText("Item Name"); beanText = new Text(shell, SWT.BORDER); final GridData gd_beanValue = new GridData(SWT.FILL, SWT.CENTER, true, false); beanText.setLayoutData(gd_beanValue); m_bindingContext = initDataBindings(); // initExtraBindings(m_bindingContext); }
From source file:org.eclipse.ease.modules.unittest.ui.editor.Components.java
License:Open Source License
/** * Create contents of the form./*from ww w . j a v a2 s.c om*/ * * @param managedForm */ @Override protected void createFormContent(final IManagedForm managedForm) { super.createFormContent(managedForm); final GridLayout gridLayout = new GridLayout(5, false); managedForm.getForm().getBody().setLayout(gridLayout); final Label lblNewLabel = new Label(managedForm.getForm().getBody(), SWT.NONE); final GridData gd_lblNewLabel = new GridData(SWT.LEFT, SWT.CENTER, false, false, 4, 1); gd_lblNewLabel.verticalIndent = 10; lblNewLabel.setLayoutData(gd_lblNewLabel); managedForm.getToolkit().adapt(lblNewLabel, true, true); lblNewLabel.setText("Select all test files that should be included in this suite."); new Label(managedForm.getForm().getBody(), SWT.NONE); final Section sctnIncludedTests = managedForm.getToolkit().createSection(managedForm.getForm().getBody(), ExpandableComposite.TITLE_BAR); sctnIncludedTests.setDescription(""); sctnIncludedTests.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 7)); managedForm.getToolkit().paintBordersFor(sctnIncludedTests); sctnIncludedTests.setText("Included Tests"); final Composite composite = managedForm.getToolkit().createComposite(sctnIncludedTests, SWT.NONE); managedForm.getToolkit().paintBordersFor(composite); sctnIncludedTests.setClient(composite); composite.setLayout(new FillLayout(SWT.HORIZONTAL)); final Tree tree = managedForm.getToolkit().createTree(composite, SWT.NONE | SWT.CHECK); managedForm.getToolkit().paintBordersFor(tree); new Label(managedForm.getForm().getBody(), SWT.NONE); new Label(managedForm.getForm().getBody(), SWT.NONE); new Label(managedForm.getForm().getBody(), SWT.NONE); new Label(managedForm.getForm().getBody(), SWT.NONE); new Label(managedForm.getForm().getBody(), SWT.NONE); managedForm.getToolkit().createLabel(managedForm.getForm().getBody(), "Use at max.", SWT.NONE); // tree viewer for tests fTestTree = new ContainerCheckedTreeViewer(tree); fTestTree.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(final DoubleClickEvent event) { final IStructuredSelection selection = (IStructuredSelection) event.getSelection(); if (!selection.isEmpty()) { final Object element = selection.getFirstElement(); if (element instanceof IFile) { try { UIModule.showEditor((IFile) element); } catch (final Throwable e) { // TODO handle this exception (but for now, at least know it happened) throw new RuntimeException(e); } } } } }); fTestTree.setContentProvider(new WorkbenchContentProvider()); fTestTree.setLabelProvider(new WorkbenchLabelProvider()); fTestTree.addFilter(new ViewerFilter() { @Override public boolean select(final Viewer viewer, final Object parentElement, final Object element) { // hide config elements if (element instanceof IResource) { if (((IResource) element).getName().startsWith(".")) return false; // show containers if (element instanceof IContainer) return containsScript((IContainer) element); // check for script return isScript((IResource) element); } return true; } private boolean isScript(final IResource resource) { return (resource instanceof IFile) && (resource.toString().toLowerCase().endsWith(".js")); } private boolean containsScript(final IContainer container) { try { for (final IResource resource : container.members()) { if (resource instanceof IContainer) { if (containsScript((IContainer) resource)) return true; } else if (isScript(resource)) return true; } } catch (final CoreException e) { } return false; } }); fTestTree.setComparator(new ViewerComparator() { @Override public int category(final Object element) { return (element instanceof IContainer) ? 0 : 1; } }); spinner = new Spinner(managedForm.getForm().getBody(), SWT.BORDER); spinner.setPageIncrement(5); spinner.setLayoutData(new GridData(SWT.FILL, SWT.TOP, false, false, 1, 1)); spinner.setMinimum(1); spinner.setSelection(1); managedForm.getToolkit().adapt(spinner); managedForm.getToolkit().paintBordersFor(spinner); spinner.addModifyListener(new ModifyListener() { @Override public void modifyText(final ModifyEvent e) { final int maxThreads = getModel().getFlag(TestSuiteModel.FLAG_MAX_THREADS, 1); if (spinner.getSelection() != maxThreads) { getModel().setFlag(TestSuiteModel.FLAG_MAX_THREADS, spinner.getSelection()); setDirty(); } } }); managedForm.getToolkit().createLabel(managedForm.getForm().getBody(), "instances in parallel", SWT.NONE); new Label(managedForm.getForm().getBody(), SWT.NONE); final Label lblTestVisualization = new Label(managedForm.getForm().getBody(), SWT.NONE); lblTestVisualization.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 3, 1)); managedForm.getToolkit().adapt(lblTestVisualization, true, true); lblTestVisualization.setText("Test Visualization"); new Label(managedForm.getForm().getBody(), SWT.NONE); combo = new Combo(managedForm.getForm().getBody(), SWT.READ_ONLY); combo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent e) { fVisualizationIdentifier = combo.getText(); } }); final GridData gd_combo = new GridData(SWT.FILL, SWT.TOP, false, false, 3, 1); gd_combo.horizontalIndent = 20; combo.setLayoutData(gd_combo); managedForm.getToolkit().adapt(combo); managedForm.getToolkit().paintBordersFor(combo); combo.setItems(new String[] { VISUALIZATION_GUI, VISUALIZATION_SYSOUT, VISUALIZATION_NONE }); combo.setText(combo.getItem(0)); new Label(managedForm.getForm().getBody(), SWT.NONE); btnPromoteErrorsToFailures = managedForm.getToolkit().createButton(managedForm.getForm().getBody(), "Promote errors to failures (stops test file)", SWT.CHECK); btnPromoteErrorsToFailures.setToolTipText( "Raised a failure instead of an error. If set, test file execution will stop on the first error."); btnPromoteErrorsToFailures.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent e) { getModel().setFlag(TestSuiteModel.FLAG_PROMOTE_ERRORS_TO_FAILURES, btnPromoteErrorsToFailures.getSelection()); setDirty(); } }); btnPromoteErrorsToFailures.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false, 3, 1)); new Label(managedForm.getForm().getBody(), SWT.NONE); btnStopSuiteOnFailure = managedForm.getToolkit().createButton(managedForm.getForm().getBody(), "Stop suite on failure", SWT.CHECK); btnStopSuiteOnFailure.setToolTipText( "Stops test suite execution upon a failure. If not set, the next test file will be executed."); btnStopSuiteOnFailure.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent e) { getModel().setFlag(TestSuiteModel.FLAG_STOP_SUITE_ON_FAILURE, btnStopSuiteOnFailure.getSelection()); setDirty(); } }); btnStopSuiteOnFailure.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false, 3, 1)); new Label(managedForm.getForm().getBody(), SWT.NONE); fbutton = managedForm.getToolkit().createButton(managedForm.getForm().getBody(), "Execute teardown on failure", SWT.CHECK); fbutton.setSelection(true); fbutton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent e) { getModel().setFlag(TestSuiteModel.FLAG_EXECUTE_TEARDOWN_ON_FAILURE, fbutton.getSelection()); setDirty(); } }); fbutton.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false, 3, 1)); fTestTree.setInput(getModel().getFile().getProject()); fTestTree.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(final CheckStateChangedEvent event) { final TestSuiteModel model = getModel(); model.getTestFiles().clear(); for (final Object object : fTestTree.getCheckedElements()) { if (object instanceof IFile) model.addTestFile(ResourceTools.toProjectRelativeLocation(object, null)); } setDirty(); } }); }
From source file:org.eclipse.ease.modules.unittest.ui.views.UnitTestView.java
License:Open Source License
@Override public void createPartControl(final Composite parent) { parent.setLayout(new GridLayout(1, false)); final Composite composite = new Composite(parent, SWT.NONE); composite.setLayout(new GridLayout(8, false)); composite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); fResourceManager = new LocalResourceManager(JFaceResources.getResources(), composite); final Label lblErrorIcon = new Label(composite, SWT.NONE); final GridData gdLblErrorIcon = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); gdLblErrorIcon.horizontalIndent = 50; lblErrorIcon.setLayoutData(gdLblErrorIcon); lblErrorIcon.setImage(fResourceManager.createImage(Activator.getImageDescriptor(Activator.ICON_ERROR))); final Label lblErrors = new Label(composite, SWT.NONE); lblErrors.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); lblErrors.setAlignment(SWT.CENTER);//ww w .j ava 2 s. c o m lblErrors.setText("Errors:"); lblErrorCount = new Label(composite, SWT.NONE); final GridData gd_lblErrorCount = new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1); gd_lblErrorCount.horizontalIndent = 20; lblErrorCount.setLayoutData(gd_lblErrorCount); final Label lblFailureIcon = new Label(composite, SWT.NONE); final GridData gdLblFailureIcon = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); gdLblFailureIcon.horizontalIndent = 50; lblFailureIcon.setLayoutData(gdLblFailureIcon); lblFailureIcon.setImage(fResourceManager.createImage(Activator.getImageDescriptor(Activator.ICON_FAILURE))); final Label lblFailures = new Label(composite, SWT.NONE); lblFailures.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); lblFailures.setAlignment(SWT.CENTER); lblFailures.setText("Failures:"); lblFailureCount = new Label(composite, SWT.NONE); final GridData gdLblFailureCount = new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1); gdLblFailureCount.horizontalIndent = 20; lblFailureCount.setLayoutData(gdLblFailureCount); lblTimeLeftText = new Label(composite, SWT.NONE); final GridData gdLabel = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); gdLabel.horizontalIndent = 50; lblTimeLeftText.setLayoutData(gdLabel); lblTimeLeftText.setText("Time left: "); lblTimeLeftText.setVisible(false); lblTimeLeft = new Label(composite, SWT.NONE); final GridData gdLblTimeLeft = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); gdLblTimeLeft.horizontalIndent = 20; lblTimeLeft.setLayoutData(gdLblTimeLeft); lblTimeLeft.setVisible(false); fProgressBar = new ProgressBar(parent, SWT.NONE); fProgressBar.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); sashForm = new SashForm(parent, SWT.NONE); sashForm.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); sashForm.setOrientation(SWT.VERTICAL); fFileTreeViewer = new TreeViewer(sashForm, SWT.BORDER | SWT.MULTI); fFileTreeViewer.setContentProvider(new TestSuiteContentProvider()); fFileTreeViewer.setComparator(new ViewerComparator() { @Override public final int category(final Object element) { if (element instanceof TestFile) return 1; return 0; } }); // use a decorated label provider final LabelProvider provider = new TestSuiteLabelProvider(fResourceManager); fFileTreeViewer.setLabelProvider(new DecoratedLabelProvider(provider)); fFileTreeViewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(final DoubleClickEvent event) { try { final Object element = ((IStructuredSelection) event.getSelection()).getFirstElement(); if (element instanceof TestFile) { final Object file = ((TestFile) element).getFile(); if (file instanceof IFile) UIModule.showEditor((IFile) ((TestFile) element).getFile()); } else if (element instanceof TestSuite) UIModule.showEditor(((TestSuite) element).getModel().getFile()); } catch (final Throwable e) { // TODO handle this exception (but for now, at least know it happened) throw new RuntimeException(e); } } }); fFileTreeViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(final SelectionChangedEvent event) { final ITreeSelection selection = (ITreeSelection) event.getSelection(); final Object element = selection.getFirstElement(); if (element instanceof TestComposite) { // test set selected fTestTreeViewer.setInput(element); if (sashForm.getWeights()[1] == 0) sashForm.setWeights(fSashWeights); fTestTreeViewer.refresh(); } else { // test container selected, or no selection at all fTestTreeViewer.setInput(null); if (sashForm.getWeights()[1] != 0) fSashWeights = sashForm.getWeights(); sashForm.setWeights(new int[] { 100, 0 }); } } }); // create tree viewer for tests fTestTreeViewer = createTestArea(sashForm); sashForm.setWeights(new int[] { 1, 1 }); // add context menu support final MenuManager menuManager = new MenuManager(); final Menu menu = menuManager.createContextMenu(fFileTreeViewer.getTree()); fFileTreeViewer.getTree().setMenu(menu); getSite().registerContextMenu(menuManager, fFileTreeViewer); final MenuManager menuManager2 = new MenuManager(); final Menu menu2 = menuManager2.createContextMenu(fFileTreeViewer.getTree()); fTestTreeViewer.getTree().setMenu(menu2); getSite().registerContextMenu(menuManager2, fTestTreeViewer); // add collapseAll/expandAll handlers final IHandlerService handlerService = getSite().getService(IHandlerService.class); mCollapseAllHandler = new CollapseAllHandler(fFileTreeViewer); handlerService.activateHandler(CollapseAllHandler.COMMAND_ID, mCollapseAllHandler); mExpandAllHandler = new ExpandAllHandler(fFileTreeViewer); handlerService.activateHandler(ExpandAllHandler.COMMAND_ID, mExpandAllHandler); // menuManager.setRemoveAllWhenShown(true); // load last suite if (mMemento != null) { final IMemento currentSuiteNode = mMemento.getChild(XML_CURRENT_SUITE); if (currentSuiteNode != null) { final Path path = new Path(currentSuiteNode.getTextData()); final IFile suiteFile = ResourcesPlugin.getWorkspace().getRoot().getFile(path); try { loadSuite(new TestSuite(new TestSuiteModel(suiteFile))); } catch (final Exception e) { // loading failed, ignore } } } // register for console events ConsolePlugin.getDefault().getConsoleManager().addConsoleListener(UnitTestView.this); final MultiSelectionProvider selectionProvider = new MultiSelectionProvider(); selectionProvider.addSelectionProvider(fFileTreeViewer); selectionProvider.addSelectionProvider(fTestTreeViewer); getSite().setSelectionProvider(selectionProvider); }
From source file:org.eclipse.ease.ui.modules.ui.ModulesComposite.java
License:Open Source License
/** * Create the composite./* w w w .j a v a2 s .co m*/ * * @param parent * @param style * @param modulesOnly * if true only the modules are shown in the tree. if false also * the fields and functions are shown. */ public ModulesComposite(Composite parent, int style, boolean modulesOnly) { super(parent, style); treeViewer = new TreeViewer(this, SWT.NONE); this.setLayout(new FillLayout(SWT.HORIZONTAL)); treeViewer.getTree().setLayout(new FillLayout(SWT.HORIZONTAL)); ColumnViewerToolTipSupport.enableFor(treeViewer); // use a decorated label provider treeViewer.setLabelProvider(new ModulesDecoratedLabelProvider(new ModulesLabelProvider())); treeViewer.setContentProvider(new ModulesContentProvider(modulesOnly)); treeViewer.setComparator(new ViewerComparator() { @Override public int category(Object element) { if ((element instanceof IPath)) return 1; if ((element instanceof ModuleDefinition)) return 2; if ((element instanceof Field)) return 2; if ((element instanceof Method)) return 3; return 4; } }); treeViewer.addDragSupport(DND.DROP_COPY, new Transfer[] { TextTransfer.getInstance() }, new ModulesDragListener(treeViewer)); }
From source file:org.eclipse.ease.ui.scripts.ui.ScriptComposite.java
License:Open Source License
/** * Constructor creating the script tree viewer. * /*from w w w. j a v a 2s. c om*/ * @param engineProvider * component providing script support * @param site * site to implement this component on * @param parent * parent SWT element * @param style * composite style flags */ public ScriptComposite(final IScriptEngineProvider engineProvider, final IWorkbenchPartSite site, final Composite parent, final int style) { super(parent, style); fEngineProvider = engineProvider; setLayout(new FillLayout(SWT.HORIZONTAL)); treeViewer = new TreeViewer(this, SWT.BORDER); treeViewer.setLabelProvider(new LabelProvider() { @Override public String getText(final Object element) { if (element instanceof IPath) return ((IPath) element).lastSegment(); if (element instanceof IScript) return ((IScript) element).getName(); return super.getText(element); } @Override public Image getImage(final Object element) { if (element instanceof IPath) return Activator.getImage("org.eclipse.ui", "/icons/full/obj16/fldr_obj.gif", true); if (element instanceof IScript) return Activator.getImage("org.eclipse.ease.ui", "/images/script.gif", true); return super.getImage(element); } }); treeViewer.setContentProvider(new ScriptContentProvider()); treeViewer.setComparator(new ViewerComparator() { @Override public int category(final Object element) { return (element instanceof IPath) ? 0 : 1; } // @Override // public int compare(Viewer viewer, Object e1, Object e2) { // super.compare(viewer, e1, e2) // return e1.toString().compareTo(e2.toString()); // } }); final IRepositoryService repositoryService = (IRepositoryService) PlatformUI.getWorkbench() .getService(IRepositoryService.class); treeViewer.setInput(repositoryService); if (fDoubleClickListener != null) treeViewer.addDoubleClickListener(fDoubleClickListener); // add listener for script repository changes repositoryService.addScriptListener(this); // add context menu support final MenuManager menuManager = new MenuManager(); final Menu menu = menuManager.createContextMenu(treeViewer.getTree()); treeViewer.getTree().setMenu(menu); site.registerContextMenu(menuManager, treeViewer); site.setSelectionProvider(treeViewer); // add dynamic context menu entries final IMenuService menuService = (IMenuService) PlatformUI.getWorkbench().getService(IMenuService.class); menuService.addContributionFactory(new ScriptContextMenuEntries("popup:" + site.getId())); menuManager.setRemoveAllWhenShown(true); // add DND support ScriptDragSource.addDragSupport(treeViewer); // register for change events repositoryService.addScriptListener(this); }