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

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

Introduction

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

Prototype

@Override
    public Control getControl() 

Source Link

Usage

From source file:org.eclipse.mylyn.internal.sandbox.ui.planner.TaskActivityEditorPart.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    FormToolkit toolkit = new FormToolkit(parent.getDisplay());
    ScrolledForm sform = toolkit.createScrolledForm(parent);
    Composite editorComposite = sform.getBody();

    editorComposite.setLayout(new GridLayout());
    GridData gridData = new GridData();
    gridData.horizontalAlignment = GridData.FILL_BOTH;
    gridData.grabExcessHorizontalSpace = true;
    gridData.grabExcessVerticalSpace = true;
    editorComposite.setLayoutData(gridData);

    createSummarySection(editorComposite, toolkit, editorInput.getReportStartDate(),
            editorInput.getReportEndDate());
    String label = LABEL_PAST_ACTIVITY;

    List<ITask> allTasks = new ArrayList<ITask>();
    allTasks.addAll(editorInput.getCompletedTasks());
    allTasks.addAll(editorInput.getInProgressTasks());

    SashForm sashForm = new SashForm(editorComposite, SWT.VERTICAL);

    sashForm.setLayout(new GridLayout());
    sashForm.setLayoutData(new GridData(GridData.FILL_BOTH));

    activityContentProvider = new TaskActivityContentProvider(editorInput);

    final TreeViewer activityViewer = createTableSection(sashForm, toolkit, label, activityColumnNames,
            activityColumnWidths, activitySortConstants);
    activityViewer.setContentProvider(activityContentProvider);
    activityViewer.setLabelProvider(new TaskPlannerLabelProvider(activityViewer,
            editorInput.getReportStartDate(), editorInput.getReportEndDate()));
    setSorters(activityColumnNames, activitySortConstants, activityViewer.getTree(), activityViewer, false);
    activityViewer.setInput(editorInput);
    activityViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            updateLabels();//  www .  ja  v  a  2  s.c om
        }
    });

    MenuManager activityContextMenuMgr = new MenuManager("#ActivityPlannerPopupMenu");
    activityContextMenuMgr.setRemoveAllWhenShown(true);
    activityContextMenuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {
            TaskActivityEditorPart.this.fillContextMenu(activityViewer, manager);

        }
    });
    Menu menu = activityContextMenuMgr.createContextMenu(activityViewer.getControl());
    activityViewer.getControl().setMenu(menu);
    getSite().registerContextMenu(activityContextMenuMgr, activityViewer);

    planContentProvider = new PlannedTasksContentProvider(editorInput);
    final TreeViewer planViewer = createTableSection(sashForm, toolkit, LABEL_PLANNED_ACTIVITY,
            activityColumnNames, activityColumnWidths, activitySortConstants);
    planViewer.setContentProvider(planContentProvider);
    planViewer.setLabelProvider(new TaskPlannerLabelProvider(planViewer, editorInput.getReportStartDate(),
            editorInput.getReportEndDate()));
    // planViewer.setLabelProvider(new TaskPlanLabelProvider());
    // createPlanCellEditorListener(planViewer.getTable(), planViewer);
    // planViewer.setCellModifier(new PlannedTasksCellModifier(planViewer));
    // initDrop(planViewer, planContentProvider);
    setSorters(activityColumnNames, activitySortConstants, planViewer.getTree(), planViewer, true);
    planViewer.setInput(editorInput);

    // planViewer.addSelectionChangedListener(new
    // ISelectionChangedListener() {
    // public void selectionChanged(SelectionChangedEvent event) {
    // updateLabels();
    // }
    // });

    // MenuManager planContextMenuMgr = new
    // MenuManager("#PlanPlannerPopupMenu");
    // planContextMenuMgr.setRemoveAllWhenShown(true);
    // planContextMenuMgr.addMenuListener(new IMenuListener() {
    // public void menuAboutToShow(IMenuManager manager) {
    // TaskActivityEditorPart.this.fillContextMenu(planViewer, manager);
    // }
    // });
    // Menu planMenu =
    // planContextMenuMgr.createContextMenu(planViewer.getControl());
    // planViewer.getControl().setMenu(planMenu);
    // getSite().registerContextMenu(planContextMenuMgr, planViewer);

    totalEstimatedHoursLabel = toolkit.createLabel(editorComposite, LABEL_ESTIMATED + "0 hours  ", SWT.NULL);
    createButtons(editorComposite, toolkit, planViewer, planContentProvider);
    updateLabels();
}

From source file:org.eclipse.mylyn.internal.tasks.activity.ui.ActivityPart.java

License:Open Source License

@Override
protected Control createContent(FormToolkit toolkit, Composite parent) {
    Composite activityComposite = toolkit.createComposite(parent);
    activityComposite.setLayout(EditorUtil.createSectionClientLayout());

    TreeViewer viewer = new TreeViewer(toolkit.createTree(activityComposite,
            SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION));
    GridDataFactory.fillDefaults().hint(500, 100).grab(true, true).applyTo(viewer.getControl());
    viewer.setContentProvider(new ActivityRecordContentProvider());
    viewer.setLabelProvider(/*from   w ww  .  j  a  va 2s  . co m*/
            new DecoratingStyledCellLabelProvider(new ActivityRecordLabelProvider(), null, null));
    IActivityStream stream = new ActivityManager().getStream(new TaskActivityScope(getModel().getTask()));
    viewer.setInput(stream);

    EditorUtil.addScrollListener(viewer.getTree());
    toolkit.paintBordersFor(activityComposite);

    return activityComposite;
}

From source file:org.eclipse.mylyn.internal.tasks.ui.editors.outline.QuickOutlineDialog.java

License:Open Source License

protected TreeViewer createCommonViewer(Composite parent) {
    TreeViewer viewer = new TreeViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL);
    viewer.setUseHashlookup(true);// www.ja  v a  2  s  .  com
    viewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    viewer.setContentProvider(new TaskEditorOutlineContentProvider());
    viewer.setLabelProvider(new DecoratingPatternStyledCellLabelProvider(new QuickOutlineLabelProvider(),
            new TaskEditorOutlineLabelDecorator(), null));
    return viewer;
}

From source file:org.eclipse.mylyn.internal.tasks.ui.search.RepositorySearchResultView.java

License:Open Source License

@Override
protected void configureTreeViewer(TreeViewer viewer) {
    viewer.setUseHashlookup(true);/* w w  w. j a  va  2 s.  com*/
    searchResultProvider = new SearchResultTreeContentProvider();
    viewer.setContentProvider(searchResultProvider);

    styledLabelProvider = new DecoratingPatternStyledCellLabelProvider(
            new SearchResultsLabelProvider(searchResultProvider, viewer),
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator(), null);
    viewer.setLabelProvider(styledLabelProvider);
    viewer.setSorter(searchResultSorter);

    Transfer[] dragTypes = new Transfer[] { LocalSelectionTransfer.getTransfer(), FileTransfer.getInstance() };

    getViewer().addDragSupport(DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK, dragTypes,
            new TaskDragSourceListener(getViewer()));

    sortByDialogAction = new SearchResultSortAction(this);

    toolTip = new TaskListToolTip(viewer.getControl());
}

From source file:org.eclipse.mylyn.internal.wikitext.ui.editor.MarkupEditorOutline.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    super.createControl(parent);

    TreeViewer viewer = getTreeViewer();
    viewer.setUseHashlookup(true);//ww w .  j av a  2  s  . c  om
    viewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS);
    viewer.setContentProvider(new BaseWorkbenchContentProvider());
    viewer.setLabelProvider(WorkbenchLabelProvider.getDecoratingWorkbenchLabelProvider());
    viewer.setInput(editor.getOutlineModel());

    viewer.addOpenListener(new IOpenListener() {
        public void open(OpenEvent event) {
            revealInEditor(event.getSelection(), true);
        }
    });
    viewer.addPostSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            revealInEditor(event.getSelection(), false);
        }
    });
    viewer.expandAll();

    new ToolTip(viewer.getControl(), ToolTip.RECREATE, false) {
        @Override
        protected Composite createToolTipContentArea(Event event, Composite parent) {

            Composite comp = new Composite(parent, SWT.NONE);
            comp.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_INFO_BACKGROUND));

            GridLayout gl = new GridLayout(1, false);
            gl.marginBottom = 2;
            gl.marginTop = 2;
            gl.marginHeight = 0;
            gl.marginWidth = 0;
            gl.marginLeft = 2;
            gl.marginRight = 2;
            gl.verticalSpacing = 1;
            comp.setLayout(gl);

            Object tipItem = getToolTipItem(new Point(event.x, event.y));
            if (tipItem instanceof OutlineItem) {
                OutlineItem outlineItem = (OutlineItem) tipItem;
                Label label = new Label(comp, SWT.WRAP);
                label.setBackground(comp.getBackground());
                label.setText(outlineItem.getTooltip());
            }

            return comp;
        }

        @Override
        protected boolean shouldCreateToolTip(Event event) {
            final Object eventItem = getToolTipItem(new Point(event.x, event.y));
            boolean shouldCreate = eventItem != null && eventItem instanceof OutlineItem
                    && super.shouldCreateToolTip(event);
            if (!shouldCreate) {
                hide();
            }
            return shouldCreate;
        }

        protected Object getToolTipItem(Point point) {
            TreeItem item = ((Tree) getTreeViewer().getControl()).getItem(point);
            if (item != null) {
                return item.getData();
            }
            return null;
        }
    };

    IPageSite site = getSite();
    site.setSelectionProvider(viewer);
    configureActionBars(site);

    MenuManager manager = new MenuManager("#PopUp"); //$NON-NLS-1$
    manager.setRemoveAllWhenShown(true);
    manager.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager menuManager) {
            contextMenuAboutToShow(menuManager);
        }
    });
    viewer.getTree().setMenu(manager.createContextMenu(viewer.getTree()));

    site.registerContextMenu(MarkupEditor.ID + ".outlineContextMenu", manager, viewer); //$NON-NLS-1$

    configureDnd();
    configureActions();
}

From source file:org.eclipse.mylyn.wikitext.ui.editor.DefaultWikiTextSourceEditorOutline.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    super.createControl(parent);

    TreeViewer viewer = getTreeViewer();
    viewer.setUseHashlookup(true);//from   w  ww.  ja  va2 s  .c  o  m
    viewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS);
    viewer.setContentProvider(new BaseWorkbenchContentProvider());
    viewer.setLabelProvider(WorkbenchLabelProvider.getDecoratingWorkbenchLabelProvider());
    viewer.setInput(getEditor().getAdapter(OutlineItem.class));

    viewer.addOpenListener(new IOpenListener() {
        public void open(OpenEvent event) {
            revealInEditor(event.getSelection());
        }
    });
    viewer.addPostSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            revealInEditor(event.getSelection());
        }
    });
    viewer.expandAll();

    updateSelectionToMatchEditor();

    new ToolTip(viewer.getControl(), ToolTip.RECREATE, false) {
        @Override
        protected Composite createToolTipContentArea(Event event, Composite parent) {

            Composite comp = new Composite(parent, SWT.NONE);
            comp.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_INFO_BACKGROUND));

            GridLayout gl = new GridLayout(1, false);
            gl.marginBottom = 2;
            gl.marginTop = 2;
            gl.marginHeight = 0;
            gl.marginWidth = 0;
            gl.marginLeft = 2;
            gl.marginRight = 2;
            gl.verticalSpacing = 1;
            comp.setLayout(gl);

            Object tipItem = getToolTipItem(new Point(event.x, event.y));
            if (tipItem instanceof OutlineItem) {
                OutlineItem outlineItem = (OutlineItem) tipItem;
                Label label = new Label(comp, SWT.WRAP);
                label.setBackground(comp.getBackground());
                label.setText(outlineItem.getTooltip());
            }

            return comp;
        }

        @Override
        protected boolean shouldCreateToolTip(Event event) {
            final Object eventItem = getToolTipItem(new Point(event.x, event.y));
            boolean shouldCreate = eventItem != null && eventItem instanceof OutlineItem
                    && super.shouldCreateToolTip(event);
            if (!shouldCreate) {
                hide();
            }
            return shouldCreate;
        }

        protected Object getToolTipItem(Point point) {
            TreeItem item = ((Tree) getTreeViewer().getControl()).getItem(point);
            if (item != null) {
                return item.getData();
            }
            return null;
        }
    };

    MenuManager manager = new MenuManager("#PopUp"); //$NON-NLS-1$
    manager.setRemoveAllWhenShown(true);
    manager.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager menuManager) {
            contextMenuAboutToShow(menuManager);
        }
    });
    viewer.getTree().setMenu(manager.createContextMenu(viewer.getTree()));

}

From source file:org.eclipse.nebula.widgets.nattable.examples.e4.NavigationPart.java

License:Open Source License

@PostConstruct
public void postConstruct(Composite parent) {
    final TreeViewer navTreeViewer = new TreeViewer(parent);

    final NavContentProvider contentProvider = new NavContentProvider() {
        @Override/*from   www.  j a  v  a 2  s.  c o  m*/
        public Object[] getElements(Object inputElement) {
            Set<String> topLevelElements = new LinkedHashSet<>();

            String[] examplePaths = (String[]) inputElement;
            for (final String examplePath : examplePaths) {
                String parentPath = "";
                String absolutePath = "";

                // remove the package name for the tree structure
                String path = examplePath;
                if (examplePath.startsWith(INatExample.TUTORIAL_EXAMPLES_PREFIX)) {
                    path = examplePath.replace(INatExample.BASE_PATH, "");
                } else if (examplePath.startsWith(INatExample.CLASSIC_EXAMPLES_PREFIX)) {
                    path = examplePath.replace(INatExample.CLASSIC_BASE_PATH, "");
                } else if (examplePath.startsWith(E4_EXAMPLES_PREFIX)) {
                    path = examplePath.replace(E4_BASE_PATH, "");
                }
                final StringTokenizer tok = new StringTokenizer(path, "/");
                while (tok.hasMoreTokens()) {
                    final String pathElement = tok.nextToken();
                    if (parentPath.length() == 0) {
                        topLevelElements.add("/" + pathElement);
                    }
                    absolutePath += "/" + pathElement;

                    final Collection<String> children = getChildren(parentPath);
                    children.add(absolutePath);

                    parentPath = absolutePath;
                }
            }

            return topLevelElements.toArray();
        }

    };
    navTreeViewer.setContentProvider(contentProvider);
    navTreeViewer.setLabelProvider(new NavLabelProvider(contentProvider) {

        @Override
        public String getText(Object element) {
            String str = (String) element;
            if (!contentProvider.hasChildren(element)) {
                INatExample example = getExample(str);
                return example.getName();
            }

            int lastSlashIndex = str.lastIndexOf('/');
            if (lastSlashIndex < 0) {
                return format(str);
            } else {
                return format(str.substring(lastSlashIndex + 1));
            }
        }

    });
    navTreeViewer.setInput(getExamplePaths());
    navTreeViewer.addDoubleClickListener(new IDoubleClickListener() {

        @Override
        public void doubleClick(DoubleClickEvent event) {
            TreeSelection selection = (TreeSelection) event.getSelection();
            for (TreePath path : selection.getPaths()) {
                // check for item - if node expand/collapse, if child open
                if (contentProvider.hasChildren(path.getLastSegment().toString())) {
                    boolean expanded = navTreeViewer.getExpandedState(path);
                    navTreeViewer.setExpandedState(path, !expanded);
                } else {
                    openExampleInTab(path.getLastSegment().toString());
                }
            }
        }

    });

    GridLayout layout = new GridLayout();
    layout.marginWidth = 0;
    layout.marginHeight = 0;
    parent.setLayout(layout);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(navTreeViewer.getControl());
}

From source file:org.eclipse.nebula.widgets.nattable.examples.runner.TabbedNatExampleRunner.java

License:Open Source License

public static void run(int shellWidth, int shellHeight, final String... examplePaths)
        throws InstantiationException, IllegalAccessException, ClassNotFoundException {
    // Setup/* ww w.jav a2 s.  c o m*/
    final Display display = Display.getDefault();
    final Shell shell = new Shell(display, SWT.SHELL_TRIM);
    shell.setLayout(new GridLayout(2, false));
    shell.setSize(shellWidth, shellHeight);
    shell.setText("Examples demonstrating NatTable features");

    // Nav tree
    final TreeViewer navTreeViewer = new TreeViewer(shell);
    GridData gridData = new GridData(GridData.FILL_VERTICAL);
    gridData.widthHint = 200;
    navTreeViewer.getControl().setLayoutData(gridData);
    NavContentProvider contentProvider = new NavContentProvider();
    navTreeViewer.setContentProvider(contentProvider);
    navTreeViewer.setLabelProvider(new NavLabelProvider(contentProvider));
    navTreeViewer.setInput(examplePaths);
    navTreeViewer.addDoubleClickListener(new IDoubleClickListener() {

        public void doubleClick(DoubleClickEvent event) {
            TreeSelection selection = (TreeSelection) event.getSelection();
            for (TreePath path : selection.getPaths()) {
                openExampleInTab(path.getLastSegment().toString());
            }
        }

    });

    tabFolder = new CTabFolder(shell, SWT.BORDER);
    tabFolder.setLayoutData(new GridData(GridData.FILL_BOTH));

    shell.open();

    while (!shell.isDisposed()) {
        if (!display.readAndDispatch()) {
            display.sleep();
        }
    }

    for (INatExample example : exampleControlMap.keySet()) {
        // Stop
        example.onStop();

        Control exampleControl = exampleControlMap.get(example);
        exampleControl.dispose();
    }

    tabFolder.dispose();

    shell.dispose();
    display.dispose();
}

From source file:org.eclipse.nebula.widgets.richtext.example.JFaceViewerIntegrationExample.java

License:Open Source License

public void createControls(Composite parent) {
    parent.setLayout(new FillLayout(SWT.VERTICAL));

    final TableViewer viewer = new TableViewer(parent,
            SWT.MULTI | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION);
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.getTable().setHeaderVisible(true);
    viewer.getTable().setLinesVisible(true);

    TableViewerColumn firstnameColumn = new TableViewerColumn(viewer, SWT.NONE);
    firstnameColumn.getColumn().setText("Firstname");
    firstnameColumn.getColumn().setWidth(100);
    firstnameColumn.setLabelProvider(new FirstNameLabelProvider());
    firstnameColumn.setEditingSupport(new FirstNameEditingSupport(viewer));

    TableViewerColumn lastnameColumn = new TableViewerColumn(viewer, SWT.NONE);
    lastnameColumn.getColumn().setText("Lastname");
    lastnameColumn.getColumn().setWidth(100);
    // lastnameColumn.setLabelProvider(new LastNameLabelProvider());
    lastnameColumn.setLabelProvider(new RichTextCellLabelProvider<Person>(viewer.getControl()) {

        @Override/*from  w w  w .  jav a2 s  . c  o  m*/
        public String getRichText(Person element) {
            if (element.getLastName().equals("Simpson")) {
                return "<em>" + element.getLastName() + "</em>";
            } else if (element.getLastName().equals("Smithers")) {
                return "<span style=\"background-color:rgb(255, 0, 0)\"><strong><s><u>" + element.getLastName()
                        + "</u></s></strong></span>";
            }
            return element.getLastName();
        }

    });
    lastnameColumn.setEditingSupport(new LastNameEditingSupport(viewer));

    TableViewerColumn marriedColumn = new TableViewerColumn(viewer, SWT.NONE);
    marriedColumn.getColumn().setText("Married");
    marriedColumn.getColumn().setWidth(60);
    marriedColumn.setLabelProvider(new MarriedLabelProvider());
    marriedColumn.setEditingSupport(new MarriedEditingSupport(viewer));

    TableViewerColumn genderColumn = new TableViewerColumn(viewer, SWT.NONE);
    genderColumn.getColumn().setText("Gender");
    genderColumn.getColumn().setWidth(80);
    genderColumn.setLabelProvider(new GenderLabelProvider());
    genderColumn.setEditingSupport(new GenderEditingSupport(viewer));

    TableViewerColumn descColumn = new TableViewerColumn(viewer, SWT.NONE);
    descColumn.getColumn().setText("Description");
    descColumn.getColumn().setWidth(200);
    // descColumn.setLabelProvider(new DescriptionLabelProvider());
    descColumn.setLabelProvider(new RichTextCellLabelProvider<Person>(viewer.getControl()) {

        @Override
        public String getRichText(Person element) {
            return element.getDescription();
        }

    });
    descColumn.setEditingSupport(new DescriptionEditingSupport(viewer));

    viewer.setInput(PersonService.getPersons(10));

    // add a tree
    TreeViewer treeViewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    treeViewer.setContentProvider(new TreeViewerContentProvider());
    treeViewer.setLabelProvider(new RichTextCellLabelProvider<File>(treeViewer.getControl()) {

        @Override
        public String getRichText(File file) {
            String name = file.getName();
            String result = name.isEmpty() ? file.getPath() : name;
            if (file.isDirectory()) {
                result = "<strong><u>" + result + "</u></strong>";
            }
            return result;
        }

    });
    treeViewer.setInput(File.listRoots());
}

From source file:org.eclipse.oomph.preferences.presentation.AllPreferencesPreferencePage.java

License:Open Source License

@Override
protected Control doCreateContents(Composite parent) {
    GridLayout layout = new GridLayout();
    layout.marginWidth = 0;/*from w  w w .jav  a 2s . c om*/
    layout.marginHeight = 0;
    layout.numColumns = 1;

    Composite composite = new Composite(parent, SWT.NONE);
    composite.setLayout(layout);

    TreeViewer treeViewer = new TreeViewer(composite);
    PreferencesItemProviderAdapterFactory adapterFactory = new PreferencesItemProviderAdapterFactory();
    treeViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
    treeViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
    treeViewer.setInput(PreferencesUtil.getRootPreferenceNode());
    treeViewer.getControl().setLayoutData(
            new GridData(GridData.FILL_BOTH | GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL));

    return composite;
}