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

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

Introduction

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

Prototype

public Tree getTree() 

Source Link

Document

Returns this tree viewer's tree control.

Usage

From source file:org.csstudio.alarm.beast.ui.alarmtree.Snippet047VirtualLazyTreeViewer.java

License:Open Source License

public Snippet047VirtualLazyTreeViewer(Shell shell) {
    // THIS IS THE KEY POINT:
    // With SWT.MULTI expanding tree items is slow as snot
    // (at least on Windows, Eclipse 3.6.2)
    // See https://bugs.eclipse.org/bugs/show_bug.cgi?id=259141
    // The original snippet without SWT.MULTI is fine.
    final TreeViewer v = new TreeViewer(shell, SWT.VIRTUAL | SWT.BORDER | SWT.MULTI);
    v.setLabelProvider(new LabelProvider());
    v.setContentProvider(new MyContentProvider(v));
    v.setUseHashlookup(true);//from  w ww .  j a v  a  2  s .c  om
    IntermediateNode[] model = createModel();
    v.setInput(model);
    v.getTree().setItemCount(model.length);

}

From source file:org.csstudio.dal.ui.internal.developmentsupport.util.ContainerView.java

License:Open Source License

private void createPvProviderTree(final Composite parent) {
    final TreeViewer tv = new TreeViewer(parent);

    tv.setContentProvider(new BaseWorkbenchContentProvider() {
        /**/* w  ww.  jav a  2  s.  c  o  m*/
         * {@inheritDoc}
         */
        @Override
        public Object[] getElements(final Object element) {
            return (Object[]) element;
        }
    });

    tv.setLabelProvider(new WorkbenchLabelProvider());
    tv.setInput(_samplePvAdresses);

    getViewSite().setSelectionProvider(tv);

    // add drag support
    ProcessVariableExchangeUtil.addProcessVariableAdressDragSupport(tv.getTree(), DND.DROP_MOVE | DND.DROP_COPY,
            new IProcessVariableAdressProvider() {
                @Override
                public IProcessVariableAddress getPVAdress() {
                    final List<IProcessVariableAddress> l = getProcessVariableAdresses();
                    if (l.size() > 0) {
                        return l.get(0);
                    }
                    return null;
                }

                @Override
                public List<IProcessVariableAddress> getProcessVariableAdresses() {
                    final IStructuredSelection sel = (IStructuredSelection) tv.getSelection();

                    final List<IProcessVariableAddress> list = sel.toList();
                    return list;
                }
            });

    // create context menu
    configureContextMenu(tv);
}

From source file:org.csstudio.dal.ui.internal.developmentsupport.util.ContainerView.java

License:Open Source License

/**
 * Configures all listeners for the TreeViewer.
 *//*from   ww  w  .  j  a v  a  2 s  . c o m*/
private void configureContextMenu(final TreeViewer tv) {
    final MenuManager menuMgr = new MenuManager("", ID); //$NON-NLS-1$
    //        menuMgr.add(new GroupMarker(IWorkbenchIds.GROUP_CSS_MB3));
    menuMgr.add(new Separator());
    menuMgr.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));

    menuMgr.setRemoveAllWhenShown(true);

    final Menu contextMenu = menuMgr.createContextMenu(tv.getTree());
    tv.getTree().setMenu(contextMenu);

    // Register viewer with site. This has to be done before making the
    // actions.
    getViewSite().registerContextMenu(menuMgr, tv);
    getViewSite().setSelectionProvider(tv);
}

From source file:org.csstudio.opibuilder.validation.core.Validator.java

License:Open Source License

private static void updateProblemsView(IWorkbenchPage page) {
    try {/*www.java2s . co m*/
        ProblemsView v = (ProblemsView) page.showView("org.eclipse.ui.views.ProblemView");
        Field f = ExtendedMarkersView.class.getDeclaredField("viewer");
        f.setAccessible(true);
        TreeViewer viewer = (TreeViewer) f.get(v);
        ITreeContentProvider provider = (ITreeContentProvider) viewer.getContentProvider();
        if (!(provider instanceof ContentProvider)) {
            viewer.setContentProvider(new ContentProvider(provider));
            Listener[] exp = viewer.getTree().getListeners(SWT.Expand);
            Listener[] col = viewer.getTree().getListeners(SWT.Collapse);
            for (int i = 0; i < exp.length; i++) {
                if (exp[i] instanceof TypedListener) {
                    SWTEventListener l = ((TypedListener) exp[i]).getEventListener();
                    if (l.getClass().getName().contains("ExtendedMarkersView")) {
                        viewer.getTree().removeListener(SWT.Expand, exp[i]);
                        viewer.getTree().addListener(SWT.Expand,
                                new TypedListener(new TreeViewerListener((TreeListener) l)));
                    }
                }
            }
            for (int i = 0; i < col.length; i++) {
                if (col[i] instanceof TypedListener) {
                    SWTEventListener l = ((TypedListener) col[i]).getEventListener();
                    if (l.getClass().getName().contains("ExtendedMarkersView")) {
                        viewer.getTree().removeListener(SWT.Collapse, col[i]);
                        viewer.getTree().addListener(SWT.Collapse,
                                new TypedListener(new TreeViewerListener((TreeListener) l)));
                    }
                }
            }
        }
    } catch (IllegalAccessException | NoSuchFieldException | RuntimeException | PartInitException e) {
        // ignore
        // cannot update view, we will use the original one
    }
}

From source file:org.csstudio.platform.ui.composites.resourcefilter.ResourceSelectionGroup.java

License:Open Source License

/**
 * Sets the first Element of the TreeViewer as selected Item.
 * @param viewer//  www. j  a v  a 2s . c om
 *                     The TreeViewer, which selection should be set
 */
private void setDefaultSelection(final TreeViewer viewer) {
    final TreeItem item = viewer.getTree().getItemCount() > 0 ? viewer.getTree().getItem(0) : null;
    if (item != null) {
        viewer.getTree().setSelection(item);
    }
}

From source file:org.csstudio.platform.ui.composites.resourcefilter.ResourceSelectionGroup.java

License:Open Source License

/**
 * Adds a PopupMenu to the given TreeViewer.
 * @param viewer/*from w w w . j av  a 2  s  .  c  om*/
 *             The TreeViewer, where the PopupMenu is added
 */
private void addPopupMenu(final TreeViewer viewer) {
    MenuManager popupMenu = new MenuManager();
    if (_showNewContainerActions) {
        popupMenu.add(_newFolderAction);
        popupMenu.add(_newProjectAction);
    }
    Menu menu = popupMenu.createContextMenu(viewer.getTree());
    viewer.getTree().setMenu(menu);
}

From source file:org.csstudio.sds.ui.internal.layers.LayerTreeViewer.java

License:Open Source License

/**
 * Hooks the PopupMenu to the given TreeViewer.
 *
 * @param viewer/*w  ww.java 2s.c  o  m*/
 *            The TreeViewer
 */
private void hookPopupMenu(final TreeViewer viewer) {
    MenuManager popupMenu = new MenuManager(_viewID);
    popupMenu.add(new Separator("additions"));
    Menu menu = popupMenu.createContextMenu(viewer.getTree());

    viewer.getTree().setMenu(menu);
    if (_site != null) {
        _site.registerContextMenu(popupMenu, viewer);
    }
}

From source file:org.d3s.alricg.editor.views.charElemente.EigenschaftView.java

License:Open Source License

@Override
protected TreeViewer createTree(Composite parent) {
    // Init Viewer
    final TreeViewer treeViewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL);
    treeViewer.getTree().setLinesVisible(true);
    treeViewer.getTree().setHeaderVisible(true);
    ColumnViewerToolTipSupport.enableFor(treeViewer, ToolTip.NO_RECREATE);

    // Drag and Drop
    treeViewer.addDragSupport(DND.DROP_COPY | DND.DROP_MOVE,
            new Transfer[] { LocalSelectionTransfer.getTransfer() },
            new CharElementDragSourceListener(treeViewer));

    // Columns/*from   w  w w . j  ava2s. c o m*/
    TreeViewerColumn tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 0);
    tc.getColumn().setText("Name");
    treeViewer.getTree().setSortColumn(tc.getColumn());
    tc.setLabelProvider(new CustomColumnLabelProvider.NameLabelProvider());
    tc.getColumn().setWidth(DEFAULT_FIRSTCOLUMN_WIDTH);
    tc.getColumn().addSelectionListener(
            new ViewerSelectionListener(new CustomColumnViewerSorter.NameSorter(), treeViewer));

    tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 1);
    tc.getColumn().setText("Datei");
    tc.setLabelProvider(new CustomColumnLabelProvider.DateinameLabelProvider());
    tc.getColumn().setWidth(125);
    tc.getColumn().setMoveable(true);
    tc.getColumn().addSelectionListener(
            new ViewerSelectionListener(new CustomColumnViewerSorter.DateiSorter(), treeViewer));

    tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 2);
    tc.getColumn().setText("Abk.");
    tc.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (((TreeObject) element).getValue() instanceof Eigenschaft) {
                return ((Eigenschaft) ((TreeObject) element).getValue()).getEigenschaftEnum().getAbk();
            }
            return ""; //$NON-NLS-1$
        }
    });
    tc.getColumn().setWidth(75);
    tc.getColumn().setMoveable(true);
    tc.getColumn().addSelectionListener(new ViewerSelectionListener(new EigenschaftAbkSorter(), treeViewer));

    // Inhalt und Sortierung setzen
    TreeObject root = EditorViewUtils.buildEditorTreeView(StoreDataAccessor.getInstance().getXmlAccessors(),
            getRegulator());
    treeViewer.setContentProvider(new TreeViewContentProvider(root));
    treeViewer.getTree().setSortDirection(SWT.DOWN);
    treeViewer.setSorter(new CustomColumnViewerSorter.NameSorter());
    treeViewer.setInput(root);

    return treeViewer;

}

From source file:org.d3s.alricg.editor.views.charElemente.GegenstandView.java

License:Open Source License

@Override
protected TreeViewer createTree(Composite parent) {
    // Init Viewer
    final TreeViewer treeViewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL);
    treeViewer.getTree().setLinesVisible(true);
    treeViewer.getTree().setHeaderVisible(true);
    ColumnViewerToolTipSupport.enableFor(treeViewer, ToolTip.NO_RECREATE);

    // Drag and Drop
    treeViewer.addDragSupport(DND.DROP_COPY | DND.DROP_MOVE,
            new Transfer[] { LocalSelectionTransfer.getTransfer() },
            new CharElementDragSourceListener(treeViewer));

    // Columns//w  ww  . jav  a  2s.  com
    TreeViewerColumn tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 0);
    tc.getColumn().setText(ViewMessages.TalentView_Name);
    treeViewer.getTree().setSortColumn(tc.getColumn());
    tc.setLabelProvider(new CustomColumnLabelProvider.NameLabelProvider());
    tc.getColumn().setWidth(DEFAULT_FIRSTCOLUMN_WIDTH);
    tc.getColumn().addSelectionListener(
            new ViewerSelectionListener(new CustomColumnViewerSorter.NameSorter(), treeViewer));

    tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 1);
    tc.getColumn().setText(ViewMessages.TalentView_Datei);
    tc.setLabelProvider(new CustomColumnLabelProvider.DateinameLabelProvider());
    tc.getColumn().setWidth(125);
    tc.getColumn().setMoveable(true);
    tc.getColumn().addSelectionListener(
            new ViewerSelectionListener(new CustomColumnViewerSorter.DateiSorter(), treeViewer));

    // Wert
    tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 2);
    tc.getColumn().setText("Wert");
    tc.setLabelProvider(new GegenstandWertProvider());
    tc.getColumn().setWidth(75);
    tc.getColumn().setMoveable(true);
    tc.getColumn().addSelectionListener(new ViewerSelectionListener(new GegenstandWertSorter(), treeViewer));

    // Region/ Volk
    tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 3);
    tc.getColumn().setText("Region/Volk");
    tc.setLabelProvider(new GegenstandRegionVolkProvider());
    tc.getColumn().setWidth(75);
    tc.getColumn().setMoveable(true);
    tc.getColumn()
            .addSelectionListener(new ViewerSelectionListener(new GegenstandHerkunftSorter(), treeViewer));

    // Inhalt und Sortierung setzen
    TreeObject root = EditorViewUtils.buildEditorTreeView(StoreDataAccessor.getInstance().getXmlAccessors(),
            getRegulator());
    treeViewer.setContentProvider(new TreeViewContentProvider(root));
    treeViewer.getTree().setSortDirection(SWT.DOWN);
    treeViewer.setSorter(new CustomColumnViewerSorter.NameSorter());
    treeViewer.setInput(root);

    return treeViewer;
}

From source file:org.d3s.alricg.editor.views.charElemente.GoetterView.java

License:Open Source License

@Override
protected TreeViewer createTree(Composite parent) {
    // Init Viewer
    final TreeViewer treeViewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL);
    treeViewer.getTree().setLinesVisible(true);
    treeViewer.getTree().setHeaderVisible(true);
    ColumnViewerToolTipSupport.enableFor(treeViewer, ToolTip.NO_RECREATE);

    // Drag and Drop
    treeViewer.addDragSupport(DND.DROP_COPY | DND.DROP_MOVE,
            new Transfer[] { LocalSelectionTransfer.getTransfer() },
            new CharElementDragSourceListener(treeViewer));

    // Columns/*from   w  w w. j  av  a 2s  . c om*/
    TreeViewerColumn tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 0);
    tc.getColumn().setText(ViewMessages.TalentView_Name);
    treeViewer.getTree().setSortColumn(tc.getColumn());
    tc.setLabelProvider(new CustomColumnLabelProvider.NameLabelProvider());
    tc.getColumn().setWidth(DEFAULT_FIRSTCOLUMN_WIDTH);
    tc.getColumn().addSelectionListener(
            new ViewerSelectionListener(new CustomColumnViewerSorter.NameSorter(), treeViewer));

    tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 1);
    tc.getColumn().setText(ViewMessages.TalentView_Datei);
    tc.setLabelProvider(new CustomColumnLabelProvider.DateinameLabelProvider());
    tc.getColumn().setWidth(125);
    tc.getColumn().setMoveable(true);
    tc.getColumn().addSelectionListener(
            new ViewerSelectionListener(new CustomColumnViewerSorter.DateiSorter(), treeViewer));

    // Symbol
    tc = new TreeViewerColumn(treeViewer, SWT.LEFT, 2);
    tc.getColumn().setText("");
    tc.getColumn().setToolTipText("Symbol");
    tc.setLabelProvider(new ImageProvider(0, imageProviderRegulator));
    tc.getColumn().setWidth(24);
    tc.getColumn().setMoveable(true);

    // Inhalt und Sortierung setzen
    TreeObject root = EditorViewUtils.buildEditorTreeView(StoreDataAccessor.getInstance().getXmlAccessors(),
            getRegulator());
    treeViewer.setContentProvider(new TreeViewContentProvider(root));
    treeViewer.getTree().setSortDirection(SWT.DOWN);
    treeViewer.setSorter(new CustomColumnViewerSorter.NameSorter());
    treeViewer.setInput(root);

    return treeViewer;
}