List of usage examples for org.eclipse.jface.viewers TreeViewer getSelection
@Override
public ISelection getSelection()
AbstractTreeViewer
implementation of this method returns the result as an ITreeSelection
. From source file:eu.artist.premigration.tft.tft.edit.MigrationSuggestionEditingSupport.java
License:Open Source License
/** * Editing support for the Inventory View tree viewer * /*from w ww . j a va 2 s .com*/ * @param viewer {@link TreeViewer} to be refreshed once the editing is done. */ public MigrationSuggestionEditingSupport(final TreeViewer viewer) { super(viewer); cellEditor = new DialogCellEditor((Composite) getViewer().getControl()) { //This method contains the code to open the Migration Strategy Selection Dialog @Override protected Object openDialogBox(Control cellEditorWindow) { //Get selected compoent IStructuredSelection selection = (IStructuredSelection) viewer.getSelection(); Component selectedComponent = ((Component) selection.getFirstElement()); //Create the dialog and open MigrationStrategySelectionDialog dialog = new MigrationStrategySelectionDialog( cellEditorWindow.getShell(), selectedComponent); dialog.open(); //If the dialog is closed by clicking ok if (dialog.getReturnCode() == Dialog.OK) { @SuppressWarnings("unchecked") List<Component> treeInput = (List<Component>) viewer.getInput(); //If automatic suggestion updates checkbox is checked, the migration suggestions of other components are updated if (InventoryView.automaticSuggestionUpdates) { updateSuggestions(selectedComponent, treeInput); } InventoryView.handleCheckedStatusOfComponents(viewer.getTree().getItems()); viewer.getTree().update(); viewer.refresh(); } return null; } }; //Drools initialization try { // load up the knowledge base kbase = readKnowledgeBase(); } catch (Throwable t) { t.printStackTrace(); } }
From source file:eu.geclipse.traceview.statistics.StatisticsVisualisation.java
License:Open Source License
/** * @param parent/*w w w .java2s . c o m*/ * @param style * @param viewSite * @param trace */ public StatisticsVisualisation(final Composite parent, final int style, final IViewSite viewSite, final ITrace trace) { super(parent, style); this.trace = trace; // this GridLayout layout = new GridLayout(); GridData layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); layout.numColumns = 4; this.setLayout(layout); this.setLayoutData(layoutData); // selection layout = new GridLayout(); layoutData = new GridData(SWT.FILL, SWT.FILL, false, true); layoutData.horizontalSpan = 1; Group selectionGroup = new Group(this, SWT.NONE); selectionGroup.setText(Messages.getString("StatisticsVisualisation.Statistics")); //$NON-NLS-1$ selectionGroup.setLayout(layout); selectionGroup.setLayoutData(layoutData); // treeviewer final TreeViewer treeViewer = new TreeViewer(selectionGroup); layout = new GridLayout(); layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); treeViewer.getTree().setLayout(layout); treeViewer.getTree().setLayoutData(layoutData); treeViewer.setContentProvider(new TreeNodeContentProvider()); treeViewer.setLabelProvider(new StatisticsVisualisationLabelProvider()); populateTree(treeViewer); // chart Group chartGroup = new Group(this, SWT.NONE); layout = new GridLayout(); layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); chartGroup.setLayout(layout); chartGroup.setLayoutData(layoutData); chartGroup.setText(Messages.getString("StatisticsVisualisation.Chart")); //$NON-NLS-1$ layoutData.horizontalSpan = 3; // description Group description = new Group(this, SWT.NONE); layout = new GridLayout(); layoutData = new GridData(SWT.FILL, SWT.FILL, true, false); layoutData.heightHint = 60; layoutData.horizontalSpan = 4; description.setLayout(layout); description.setLayoutData(layoutData); description.setText(Messages.getString("StatisticsVisualisation.Description")); //$NON-NLS-1$ final Text text = new Text(description, SWT.MULTI | SWT.V_SCROLL | SWT.WRAP); text.setEditable(false); text.setBackground(getDisplay().getSystemColor(SWT.COLOR_WIDGET_BACKGROUND)); layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); text.setLayoutData(layoutData); text.setText(Messages.getString("StatisticsVisualisation.Select")); //$NON-NLS-1$ // Scrolled Composite new Label(chartGroup, SWT.NONE); final ScrolledComposite sc = new ScrolledComposite(chartGroup, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); sc.setBackground(getDisplay().getSystemColor(SWT.COLOR_WHITE)); layout = new GridLayout(); layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); layoutData.verticalIndent = -18; // TODO cleaner solution or test if its ok // on other platforms sc.setLayout(layout); sc.setLayoutData(layoutData); // Composite this.composite = new Composite(sc, SWT.NONE); this.composite.setBackground(getDisplay().getSystemColor(SWT.COLOR_WHITE)); layout = new GridLayout(); layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); this.composite.setLayout(layout); this.composite.setLayoutData(layoutData); // init birt renderer try { PluginSettings ps = PluginSettings.instance(); this.render = ps.getDevice("dv.SWT"); //$NON-NLS-1$ } catch (ChartException exception) { Activator.logException(exception); } sc.setContent(this.composite); sc.addListener(SWT.Resize, new Listener() { public void handleEvent(final Event e) { int maxX = Math.max(StatisticsVisualisation.this.x, sc.getClientArea().width); int maxY = Math.max(StatisticsVisualisation.this.y, sc.getClientArea().height); StatisticsVisualisation.this.composite.setSize(maxX, maxY); } }); this.composite.addPaintListener(new PaintListener() { public void paintControl(final PaintEvent e) { if (StatisticsVisualisation.this.chart != null) { paint(e); } } }); this.composite.addDisposeListener(new DisposeListener() { public void widgetDisposed(final DisposeEvent e) { disposeWidget(e); } }); treeViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(final SelectionChangedEvent event) { if (treeViewer.getSelection() instanceof IStructuredSelection) { IStructuredSelection structuredSelection = (IStructuredSelection) treeViewer.getSelection(); if (structuredSelection.getFirstElement() instanceof TreeNode) { TreeNode treeNode = (TreeNode) structuredSelection.getFirstElement(); if (treeNode.getValue() instanceof IStatistics) { IStatistics statistics = (IStatistics) treeNode.getValue(); text.setText(statistics.getDescription()); } } } } }); treeViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(final SelectionChangedEvent event) { ISelection selection = treeViewer.getSelection(); if (selection != null && selection instanceof IStructuredSelection) { IStructuredSelection structuredSelection = (IStructuredSelection) selection; TreeNode treeNode = (TreeNode) structuredSelection.getFirstElement(); if (treeNode != null && treeNode.getValue() instanceof AbstractChartBuilder) { AbstractChartBuilder abstractChartBuilder = (AbstractChartBuilder) treeNode.getValue(); IStatistics statistics = (IStatistics) treeNode.getParent().getValue(); text.setText(statistics.getDescription()); statistics.initialize(); abstractChartBuilder.setTitle(statistics.getTitle()); abstractChartBuilder.setXSeries(statistics.getXSeries()); abstractChartBuilder.setYSeries(statistics.getYSeries()); abstractChartBuilder.setZSeries(statistics.getZSeries()); abstractChartBuilder.build(); StatisticsVisualisation.this.setChart(abstractChartBuilder.getChart()); StatisticsVisualisation.this.x = abstractChartBuilder.minWidth(); StatisticsVisualisation.this.y = abstractChartBuilder.minHeight(); int maxX = Math.max(StatisticsVisualisation.this.x, sc.getClientArea().width); int maxY = Math.max(StatisticsVisualisation.this.y, sc.getClientArea().height); StatisticsVisualisation.this.composite.setSize(maxX, maxY); StatisticsVisualisation.this.composite.redraw(); } } } }); }
From source file:eu.hydrologis.stage.geopaparazzi.geopapbrowser.StageGeopaparazziView.java
License:Open Source License
private TreeViewer createTreeViewer(Composite modulesComposite) { // FIXME/* w w w . j ava 2 s . c om*/ // PatternFilter patternFilter = new PatternFilter(); // final FilteredTree filter = new FilteredTree(modulesComposite, // SWT.SINGLE | SWT.BORDER, patternFilter, true); // final TreeViewer modulesViewer = filter.getViewer(); final TreeViewer modulesViewer = new TreeViewer(modulesComposite); Control control = modulesViewer.getControl(); GridData controlGD = new GridData(SWT.FILL, SWT.FILL, true, true); controlGD.horizontalSpan = 2; control.setLayoutData(controlGD); modulesViewer.setContentProvider(new ITreeContentProvider() { private static final long serialVersionUID = 1L; public Object[] getElements(Object inputElement) { return getChildren(inputElement); } public Object[] getChildren(Object parentElement) { if (parentElement instanceof List<?>) { List<?> list = (List<?>) parentElement; Object[] array = list.toArray(); return array; } if (parentElement instanceof ProjectInfo) { ProjectInfo info = (ProjectInfo) parentElement; int imgSize = info.images != null ? info.images.length : 0; int logSize = info.logs != null ? info.logs.size() : 0; Object[] childs = new Object[imgSize + logSize]; for (int i = 0; i < logSize; i++) { childs[i] = info.logs.get(i); } for (int i = logSize; i < imgSize + logSize; i++) { childs[i] = info.images[i - logSize]; } return childs; } return new Object[0]; } public Object getParent(Object element) { return null; } public boolean hasChildren(Object element) { return getChildren(element).length > 0; } public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); modulesViewer.setLabelProvider(new LabelProvider() { private static final long serialVersionUID = 1L; public Image getImage(Object element) { if (element instanceof ProjectInfo) { return ImageCache.getInstance().getImage(display, ImageCache.DATABASE); } else if (element instanceof org.jgrasstools.gears.io.geopaparazzi.geopap4.Image) { return ImageCache.getInstance().getImage(display, ImageCache.DBIMAGE); } else if (element instanceof GpsLog) { return ImageCache.getInstance().getImage(display, ImageCache.LOG); } return null; } public String getText(Object element) { if (element instanceof ProjectInfo) { ProjectInfo projectInfo = (ProjectInfo) element; String fileName = projectInfo.fileName; fileName = fileName.replace('_', ' ').replaceFirst("\\.gpap", ""); String name = "<big>" + fileName + "</big><br/>"; return name; } else if (element instanceof org.jgrasstools.gears.io.geopaparazzi.geopap4.Image) { org.jgrasstools.gears.io.geopaparazzi.geopap4.Image image = (org.jgrasstools.gears.io.geopaparazzi.geopap4.Image) element; String imageName = image.getName(); return imageName; } else if (element instanceof GpsLog) { GpsLog log = (GpsLog) element; String logName = log.text; return logName; } return ""; //$NON-NLS-1$ } }); modulesViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (!(event.getSelection() instanceof IStructuredSelection)) { return; } IStructuredSelection sel = (IStructuredSelection) event.getSelection(); Object selectedItem = sel.getFirstElement(); if (selectedItem == null) { // unselected, show empty panel setNoProjectLabel(); return; } if (selectedItem instanceof ProjectInfo) { selectProjectInfo(selectedItem); } else if (selectedItem instanceof org.jgrasstools.gears.io.geopaparazzi.geopap4.Image) { selectImage(selectedItem); } else if (selectedItem instanceof GpsLog) { selectGpsLog(selectedItem); } else { setNoProjectLabel(); } } }); MenuManager manager = new MenuManager(); modulesViewer.getControl().setMenu(manager.createContextMenu(modulesViewer.getControl())); manager.addMenuListener(new IMenuListener() { private static final long serialVersionUID = 1L; @Override public void menuAboutToShow(IMenuManager manager) { if (modulesViewer.getSelection() instanceof IStructuredSelection) { IStructuredSelection selection = (IStructuredSelection) modulesViewer.getSelection(); final Object selectedItem = selection.getFirstElement(); if (selectedItem == null || selection.isEmpty()) { return; } if (selectedItem instanceof ProjectInfo) { manager.add(makeProjectDownloadAction(modulesViewer, selectedItem)); manager.add(makeMetadataEditAction(selectedItem)); } } } }); manager.setRemoveAllWhenShown(true); return modulesViewer; }
From source file:eu.numberfour.n4js.tests.outline.AbstractOutlineWorkbenchTest.java
License:Open Source License
protected void assertSelected(TreeViewer aTreeViewer, IOutlineNode... expectedSelection) { ISelection selection = aTreeViewer.getSelection(); assertTrue(selection instanceof IStructuredSelection); assertEquals(expectedSelection.length, ((IStructuredSelection) selection).size()); OUTER: for (Iterator<?> i = ((IStructuredSelection) selection).iterator(); i.hasNext();) { Object selectedObject = i.next(); assertTrue(selectedObject instanceof IOutlineNode); for (IOutlineNode expectedSelected : expectedSelection) { if (nodeComparer.equals((IOutlineNode) selectedObject, expectedSelected)) continue OUTER; }/*www.ja v a 2s . c o m*/ fail("Unexpected selection " + selectedObject.toString()); } }
From source file:example.debug.ui.views.PopAction.java
License:Open Source License
public void run() { TreeViewer viewer = (TreeViewer) fView.getViewer(); IStructuredSelection selection = (IStructuredSelection) viewer.getSelection(); Object popee = selection.getFirstElement(); try {//w w w . j a va2s . c o m PDADebugTarget target = getDebugTarget(); IValue[] stack = target.getDataStack(); List restore = new ArrayList(); for (int i = 0; i < stack.length; i++) { Object value = stack[i]; if (popee.equals(value)) { // pop & stop target.pop(); break; } else { // remember value to push back on restore.add(target.pop()); } } while (!restore.isEmpty()) { IValue value = (IValue) restore.remove(restore.size() - 1); target.push(value.getValueString()); } } catch (DebugException e) { } viewer.refresh(); }
From source file:fr.esrf.icat.manager.core.part.ServerPart.java
License:Apache License
@PostConstruct public void postConstruct(final Composite parent, final EMenuService menuService, final EPartService partService, final EModelService modelService, final ESelectionService selectionService, final MWindow window) { // only place I could think of for registering that window.getContext().set(IWindowCloseHandler.class, new ExitHandler(partService)); // listening to server changes service = ICATDataService.getInstance(); service.addPropertyChangeListener(this); // our viewer viewer = new TreeViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL); icatContentProvider = new IcatServerContentProvider(); viewer.setContentProvider(icatContentProvider); serverLabelProvider = new IcatServerLabelProvider(); viewer.setLabelProvider(serverLabelProvider); viewer.setInput(service);/*from w w w.ja va 2s . c om*/ // make selection available viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection = (IStructuredSelection) viewer.getSelection(); selectionService.setSelection(selection.getFirstElement()); } }); // toggle / connect / open entity on dbl click viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { final TreeViewer viewer = (TreeViewer) event.getViewer(); IStructuredSelection thisSelection = (IStructuredSelection) event.getSelection(); final Object selectedNode = thisSelection.getFirstElement(); if (selectedNode instanceof ICATServer) { final ICATServer server = (ICATServer) selectedNode; if (!server.isConnected()) { ConnectHandler.connectServer(server, sync, parent.getShell(), new Runnable() { @Override public void run() { if (server.isConnected()) { viewer.setExpandedState(selectedNode, true); } } }); } else if (server.isConnected()) { viewer.setExpandedState(selectedNode, !viewer.getExpandedState(selectedNode)); } } else if (selectedNode instanceof ICATEntity) { OpenEntityHandler.openEntityPart(partService, modelService, window, (ICATEntity) selectedNode); } else { LOG.warn("Selected element is neither an ICAT server nor an ICAT entity !"); } } }); // context menu menuService.registerContextMenu(viewer.getControl(), "icat-manager.core.popupmenu.server"); }
From source file:gov.redhawk.ide.snapshot.ui.SnapshotWizardPage.java
License:Open Source License
private UpdateValueStrategy createWorkspaceTreeT2MUpdateStrategy(final TreeViewer viewer) { UpdateValueStrategy updateValueStrategy = new UpdateValueStrategy(); updateValueStrategy.setAfterConvertValidator(new IValidator() { @Override/*from www . j a va2s . com*/ public IStatus validate(Object value) { // Only do this validation if the workspaceCheck button returns true if (workspaceCheck.getSelection()) { if (((WorkbenchContentProvider) viewer.getContentProvider()) .getElements(ResourcesPlugin.getWorkspace().getRoot()).length == 0) { return ValidationStatus.error("A workspace project must be created."); } if (((IStructuredSelection) viewer.getSelection()).isEmpty()) { return ValidationStatus.error("A workspace project must be selected."); } } return ValidationStatus.ok(); } }); return updateValueStrategy; }
From source file:gov.redhawk.sca.internal.ui.wizards.WaveformSelectionWizardPage.java
License:Open Source License
private void restorePreviousWaveformSelection(final String waveformId) { final TreeViewer viewer = WaveformSelectionWizardPage.this.waveformSelectionList.getViewer(); if (viewer.getControl().isDisposed()) { return;//ww w . jav a2 s . c o m } viewer.refresh(); // Ignore if there is already a selection if (!viewer.getSelection().isEmpty()) { return; } SoftwareAssembly selection = null; if (this.contentProvider.getChildren() != null) { for (final SoftwareAssembly s : this.contentProvider.getChildren()) { if (s.getId().equals(waveformId)) { selection = s; } } } if (selection == null && !this.contentProvider.getChildren().isEmpty()) { selection = this.contentProvider.getChildren().get(0); } if (selection != null) { viewer.setSelection(new StructuredSelection(selection)); } }
From source file:info.vancauwenberge.designer.enhtrace.viewer.outline.LogMessageOutlinePage.java
License:Mozilla Public License
public void createControl(Composite parent) { System.out.println("LogMessageOutlinePage: createControl() start"); super.createControl(parent); final TreeViewer viewer = getTreeViewer(); //viewer.setAutoExpandLevel(3); viewer.setContentProvider(/* w w w . ja va2 s . c o m*/ new OutlineContentProvider(viewer, ((LiveTraceEditorInput) editor.getEditorInput()))); viewer.setLabelProvider(new OutlineLabelProvider()); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { if (event.getSource() == this) return; //System.out.println(event); editor.setSelection((ITreeSelection) viewer.getSelection()); } }); viewer.setInput(editor.getEditorInput()); //Add a context menu extention point menuManager = new MenuManager(); //allow additions menuManager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS)); menuManager.setRemoveAllWhenShown(true); Control control = viewer.getControl(); Menu menu = menuManager.createContextMenu(control); control.setMenu(menu); //Handle double click on teh default item DoubleClickDefaultMenuHandler handler = new DoubleClickDefaultMenuHandler(menu); viewer.addDoubleClickListener(handler); //viewer.addOpenListener(handler); //menu.addMenuListener(handler); //allow contributions using this id getSite().registerContextMenu("info.vancauwenberge.designer.enhtrace.viewer.outline", menuManager, viewer); if (traceFilter == null) traceFilter = new TraceFilter(((LiveTraceEditorInput) editor.getEditorInput())); viewer.addFilter(traceFilter); IActionBars actionBars = getSite().getActionBars(); IToolBarManager itoolbarmanager = actionBars.getToolBarManager(); // //Expand and collapse actions // if (m_expandAction == null) { m_expandAction = new Action(null, Core.getImageDescriptor("icons/expand_all.gif")) { public void run() { getTreeViewer().expandAll(); } }; m_expandAction.setToolTipText("Expand all"); } itoolbarmanager.add(m_expandAction); if (m_collapseAction == null) { m_collapseAction = new Action(null, Core.getImageDescriptor("icons/collapse_all.gif")) { public void run() { getTreeViewer().collapseAll(); } }; m_collapseAction.setToolTipText("Collapse all"); } itoolbarmanager.add(m_collapseAction); itoolbarmanager.add(new Separator()); itoolbarmanager.add(new ComboContributionItem()); System.out.println("LogMessageOutlinePage: createControl() end"); }
From source file:name.nirav.evariablesview.ui.SaveVariablesBinaryAction.java
License:Open Source License
public void run(IAction action) { TreeViewer viewer = (TreeViewer) vview.getViewer(); this.varList = new ObjectGraphBuilder().buildFromSelection((ITreeSelection) viewer.getSelection(), (JDIStackFrame) viewer.getInput()); FileDialog dialog = new FileDialog(vview.getSite().getShell(), SWT.SAVE); dialog.setFilterExtensions(new String[] { "*.bvars" }); String open = dialog.open();/*www. jav a2 s .c o m*/ if (open != null && open.trim().length() != 0) { File file = new File(open); if (file.exists()) { String message = "The file you selected already exists, overwrite?"; boolean overwrite = MessageDialogWithToggle.openQuestion(vview.getSite().getShell(), "Variable file already exists", message); if (overwrite) write(file, this.varList); return; } write(file, this.varList); } }