Example usage for org.eclipse.jface.viewers TreeViewer getSelection

List of usage examples for org.eclipse.jface.viewers TreeViewer getSelection

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers TreeViewer getSelection.

Prototype

@Override
public ISelection getSelection() 

Source Link

Document

The AbstractTreeViewer implementation of this method returns the result as an ITreeSelection.

Usage

From source file:org.eclipse.wst.sse.sieditor.test.ui.v2.dt.DataTypesMasterDetailsBlockPlugInTest.java

License:Open Source License

/**
 * Test method for {@link org.eclipse.wst.sse.sieditor.ui.v2.dt.DataTypesMasterDetailsBlock#createMasterPart(org.eclipse.ui.forms.IManagedForm, org.eclipse.swt.widgets.Composite)}.
 *//*from   w  w  w .  j  av a 2 s  .  c om*/
@Test
public final void testCreateMasterPartIManagedFormComposite() {
    IXSDModelRoot xsdModelRoot = null;
    try {
        xsdModelRoot = getXSDModelRoot("pub/xsd/example.xsd", "example.xsd"); //$NON-NLS-1$//$NON-NLS-2$
    } catch (IOException e) {
        fail("failed to create XSD model root"); //$NON-NLS-1$
    } catch (CoreException e) {
        fail("failed to create XSD model root"); //$NON-NLS-1$
    }
    assertNotNull(xsdModelRoot);

    FormToolkit formToolkit = new FormToolkit(Display.getCurrent());
    IManagedForm managedForm = createNiceMock(IManagedForm.class);

    DataTypesEditorPage dtPage = createMock(DataTypesEditorPage.class);
    expect(dtPage.getModel()).andReturn(xsdModelRoot);

    expect(managedForm.getToolkit()).andReturn(formToolkit).anyTimes();
    expect(managedForm.getForm()).andReturn(new ScrolledForm(new Shell())).anyTimes();
    managedForm.addPart(isA(SectionPart.class));
    managedForm.addPart(isA(DetailsPart.class));

    replay(dtPage);
    replay(managedForm);

    DataTypesFormPageController dtfpController = new DataTypesFormPageController(xsdModelRoot, false);

    TestDataTypesMasterDetailsBlock mdb = new TestDataTypesMasterDetailsBlock(dtPage);
    mdb.setController(dtfpController);
    mdb.createContent(managedForm);

    TreeViewer treeViewer = mdb.getTreeViewer();

    //test selecting and the call to update buttons
    TestDataTypesMasterDetailsBlock.updateButtonsStateCalled = false;
    treeViewer.setSelection(new StructuredSelection(treeViewer.getTree().getItems()[0].getData()));
    assertTrue(TestDataTypesMasterDetailsBlock.updateButtonsStateCalled);
    assertNotNull(treeViewer.getSelection());
    assertEquals(1, ((StructuredSelection) treeViewer.getSelection()).size());

    //test press of delete
    TestDataTypesMasterDetailsBlock.removePressedCalled = false;
    pressKeyOnWidget(treeViewer.getTree(), SWT.DEL);
    assertTrue(TestDataTypesMasterDetailsBlock.removePressedCalled);
    //refresh the tree viewer because the form page 
    //(which should be the listener for model changes) is mocked
    treeViewer.refresh();
    treeViewer.setSelection(new StructuredSelection(treeViewer.getTree().getItems()[0].getData()));

    //no j-unit tests available for direct editign of the tree nodes.

    verify(managedForm);
    verify(dtPage);
}

From source file:org.eclipse.wst.xml.ui.views.contentoutline.AbstractXMLContentOutlineConfiguration.java

License:Open Source License

public TransferDragSourceListener[] getTransferDragSourceListeners(final TreeViewer treeViewer) {
    if (fTransferDragSourceListeners == null) {
        fTransferDragSourceListeners = new TransferDragSourceListener[] { new TransferDragSourceListener() {

            public void dragFinished(DragSourceEvent event) {
                LocalSelectionTransfer.getTransfer().setSelection(null);
            }//from   ww  w.j  a v a  2 s.c  o m

            public void dragSetData(DragSourceEvent event) {
            }

            public void dragStart(DragSourceEvent event) {
                LocalSelectionTransfer.getTransfer().setSelection(treeViewer.getSelection());
            }

            public Transfer getTransfer() {
                return LocalSelectionTransfer.getTransfer();
            }
        } };
    }

    return fTransferDragSourceListeners;
}

From source file:org.eclipse.xtext.ui.editor.outline.impl.OutlineTreeState.java

License:Open Source License

protected Set<IOutlineNode> getSelectedNodes(final TreeViewer treeViewer) {
    DisplayRunHelper.runSyncInDisplayThread(new Runnable() {
        @Override//from ww  w  .j  a v  a 2 s .c om
        public void run() {
            selectedNodes = Sets.newHashSet();
            ISelection selection = treeViewer.getSelection();
            if (selection instanceof IStructuredSelection) {
                for (Iterator<?> selectionIter = ((IStructuredSelection) selection).iterator(); selectionIter
                        .hasNext();) {
                    Object selectedElement = selectionIter.next();
                    if (!(selectedElement instanceof IOutlineNode))
                        LOG.error("Content outline contains illegal node " + selectedElement);
                    else
                        selectedNodes.add((IOutlineNode) selectedElement);
                }
            }
        }
    });
    return selectedNodes;
}

From source file:org.eclipse.xtext.ui.tests.editor.outline.AbstractOutlineWorkbenchTest.java

License:Open Source License

protected void assertSelected(TreeViewer treeViewer, IOutlineNode... expectedSelection) {
    ISelection selection = treeViewer.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;
        }//from   ww  w  .  java2  s . c om
        fail("Unexpected selection " + selectedObject.toString());
    }
}

From source file:org.eclipselabs.emfjson.couchdb.ui.views.CouchDBView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    Resource.Factory.Registry.INSTANCE.getProtocolToFactoryMap().put("http", new JsResourceFactoryImpl());

    Action action = new Action() {
        @Override/*from   ww w  .  j  a  va  2  s .  c  o m*/
        public void addPropertyChangeListener(IPropertyChangeListener listener) {
            super.addPropertyChangeListener(listener);
        }

        @Override
        public void removePropertyChangeListener(IPropertyChangeListener listener) {
            super.removePropertyChangeListener(listener);
        }

        @Override
        public void run() {
            super.run();
        }
    };
    action.setText("Do Something");

    IActionBars actionBars = getViewSite().getActionBars();
    IMenuManager dropDownMenu = actionBars.getMenuManager();
    dropDownMenu.add(action);

    CouchDB cdb = new CouchDB(new ResourceSetImpl());
    cdb.getDataBases();

    viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    viewer.setContentProvider(new CouchDBContentProvider());
    viewer.setLabelProvider(new CouchDBLabelProvider(parent));
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            TreeViewer src = (TreeViewer) event.getSource();

            if (src.getSelection() instanceof TreeSelection) {

                Object element = ((TreeSelection) src.getSelection()).getFirstElement();

                if (element instanceof CouchDocument) {
                    CouchDocument doc = (CouchDocument) element;

                    IEditorDescriptor[] editors = PlatformUI.getWorkbench().getEditorRegistry()
                            .getEditors("_.ecore");

                    IEditorDescriptor xmiEditor = null;
                    for (IEditorDescriptor editor : editors) {
                        if (editor.getId().equals("org.eclipse.emf.ecore.presentation.EcoreEditorID")) {
                            xmiEditor = editor;
                        }
                    }

                    if (xmiEditor != null) {
                        IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
                                .getActivePage();

                        CouchDBFileSystem fs = new CouchDBFileSystem();
                        URI uri = URI.create(doc.getURL());
                        IFileStore fileStore = fs.getStore(uri);
                        IEditorInput input = new FileStoreEditorInput(fileStore);

                        try {
                            page.openEditor(input, xmiEditor.getId());
                        } catch (PartInitException e) {
                            e.printStackTrace();
                        }
                    }
                }
            }
        }
    });
    viewer.setAutoExpandLevel(1);

    MenuManager menuMgr = new MenuManager();
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {
            //            CouchDBView.this.fillContextMenu(manager);
        }
    });

    Menu menu = menuMgr.createContextMenu(viewer.getControl());
    viewer.getControl().setMenu(menu);
    getSite().registerContextMenu(menuMgr, viewer);

    viewer.setInput(cdb);
}

From source file:org.entirej.ext.oracle.db.DBProceduresWizardPage.java

License:Apache License

private TreeViewer createDBViewComponent(Composite composite, final SelectCallback callback) {
    TreeViewer dbfilteredTree = new TreeViewer(composite, SWT.VIRTUAL | SWT.V_SCROLL | SWT.BORDER | SWT.MULTI);

    final TreeViewer viewer = dbfilteredTree;
    viewer.setContentProvider(typeSelectionPage.getContentProvider());
    viewer.setLabelProvider(typeSelectionPage.getLabelProvider());
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            Object node = new Object();
            ISelection selection = viewer.getSelection();
            IStructuredSelection strutruredSelection = (IStructuredSelection) selection;
            if (strutruredSelection.size() == 1 && strutruredSelection.getFirstElement() != null) {
                node = strutruredSelection.getFirstElement();
            }//w  w  w. j av a2  s .co m
            callback.select(null);

            if (node instanceof Procedure) {
                callback.select((Procedure) node);
            }
            doUpdateStatus();
        }
    });
    dbfilteredTree.setInput(new Object());
    return dbfilteredTree;
}

From source file:org.entirej.ext.oracle.db.DBTypeSelectionPage.java

License:Apache License

private void createDBViewComponent(Composite composite) {

    dbfilteredTree = new AbstractFilteredTree(composite, SWT.VIRTUAL | SWT.V_SCROLL | SWT.BORDER | SWT.MULTI) {

        @Override/*from w w  w . java  2s. c o m*/
        public void filter(String filter) {
            if (contentProvider != null && ((filter == null && contentProvider.getFilter() != null)
                    || !filter.equals(contentProvider.getFilter()))) {
                contentProvider.setFilter(filter);
                refresh(filter);
            }

        }

    };

    GridData treeGD = new GridData(GridData.FILL_BOTH | GridData.GRAB_VERTICAL);
    treeGD.widthHint = 250;
    treeGD.heightHint = 300;
    dbfilteredTree.setLayoutData(treeGD);
    final TreeViewer viewer = dbfilteredTree.getViewer();
    viewer.setContentProvider(contentProvider = new DBContentProvider());
    viewer.setLabelProvider(labelProvider = new DBLabelProvider());
    viewer.setComparator(new ViewerComparator() {
        @Override
        public int compare(Viewer viewer, Object e1, Object e2) {

            String name1 = labelProvider.getText(e1);
            String name2 = labelProvider.getText(e2);
            return name1.compareToIgnoreCase(name2);
        }

    });
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            Object node = new Object();
            ISelection selection = viewer.getSelection();
            IStructuredSelection strutruredSelection = (IStructuredSelection) selection;
            if (strutruredSelection.size() == 1 && strutruredSelection.getFirstElement() != null) {
                node = strutruredSelection.getFirstElement();
            }
            selectedProcedure = null;
            if (listViewer != null) {
                listViewer.setInput(node);
            }
            if (node instanceof Procedure) {
                selectedProcedure = (Procedure) node;

            }
            doUpdateStatus();
        }
    });
}

From source file:org.entirej.ide.ui.nodes.AbstractNodeTreeSection.java

License:Apache License

@Override
public void refresh() {
    TreeViewer treeview = filteredTree.getViewer();
    Object[] expanded = treeview.getExpandedElements();

    treeview.getControl().setRedraw(false);
    treeview.setInput(getTreeInput());/* w ww . j a v a 2  s  . c  o m*/
    treeview.setExpandedElements(expanded);
    treeview.getControl().setRedraw(true);
    treeview.refresh();
    getManagedForm().fireSelectionChanged(AbstractNodeTreeSection.this, treeview.getSelection());
    showNodeDetails();
    super.refresh();
}

From source file:org.fusesource.ide.jvmmonitor.internal.ui.properties.cpu.CallerCalleeTabPage.java

License:Open Source License

@Override
protected void refresh() {
    TreeViewer callerViewer = callerFilteredTree.getViewer();
    if (!callerViewer.getControl().isDisposed()) {
        callerViewer.refresh();//from w w  w .ja v  a 2s.  c o m
        if (callerViewer.getTree().isFocusControl()) {
            callerFilteredTree.updateStatusLine((IStructuredSelection) callerViewer.getSelection());
        }
    }

    TreeViewer calleeViewer = calleeFilteredTree.getViewer();
    if (!calleeViewer.getControl().isDisposed()) {
        calleeViewer.refresh();
        if (calleeViewer.getTree().isFocusControl()) {
            calleeFilteredTree.updateStatusLine((IStructuredSelection) calleeViewer.getSelection());
        }
    }

    refreshCallersCalleesPage();
    refreshContentDescription();
}

From source file:org.fusesource.ide.jvmmonitor.internal.ui.properties.memory.SWTResourcesPage.java

License:Open Source License

/**
 * Refreshes the appearance./*w w w . ja  va2  s .co m*/
 * 
 * @param force
 *            <tt>true</tt> to force refresh
 */
protected void refresh(final boolean force) {
    final boolean isVisible = isVisible();

    new RefreshJob(NLS.bind(Messages.refreshMemorySectionJobLabel, section.getJvm().getPid()), toString()) {
        @Override
        protected void refreshModel(IProgressMonitor monitor) {
            try {
                IActiveJvm jvm = section.getJvm();
                if (isVisible && jvm != null && jvm.isConnected() && !section.isRefreshSuspended()
                        && jvm.getSWTResourceMonitor().isSupported()) {
                    jvm.getSWTResourceMonitor().refreshResourcesCache();
                }
            } catch (JvmCoreException e) {
                Activator.log(Messages.refreshHeapDataFailedMsg, e);
            }
        }

        @Override
        protected void refreshUI() {
            IActiveJvm jvm = section.getJvm();
            boolean isConnected = jvm != null && jvm.isConnected();

            refreshBackground();
            refreshAction.setEnabled(isConnected);
            clearSWTResourceAction.setEnabled(isConnected);
            if (!force && section.isRefreshSuspended() || !isVisible) {
                return;
            }

            TreeViewer resourceViewer = resourceFilteredTree.getViewer();
            if (!resourceViewer.getControl().isDisposed()) {
                resourceViewer.refresh();
                if (jvm != null) {
                    resourceFilteredTree.updateStatusLine(jvm.getSWTResourceMonitor().getResources());
                }

                // select the first item if no item is selected
                if (resourceViewer.getSelection().isEmpty()) {
                    TreeItem[] items = resourceViewer.getTree().getItems();
                    if (items != null && items.length > 0) {
                        resourceViewer.getTree().select(items[0]);
                        stackTraceViewer.setInput(resourceViewer.getSelection());
                    } else {
                        stackTraceViewer.setInput(null);
                    }
                }
            }
            if (!stackTraceViewer.getControl().isDisposed()) {
                stackTraceViewer.refresh();
            }
        }
    }.schedule();
}