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.eclipse.jubula.client.ui.rcp.editors.ObjectMappingMultiPageEditor.java

License:Open Source License

/**
 * Creates and returns a tree viewer suitable for use in the split pane 
 * view.//from w w  w  .  j a v  a2  s  .  c om
 * 
 * @param parent The parent composite for the viewer.
 * @param i18nTitleKey the title to display for the viewer.
 * @param topLevelCategory The input for the viewer.
 * @param contextMenuMgr The manager for the context menu for the created
 *                       tree.
 * @return the created viewer.
 */
private TreeViewer createMappedSplitPaneViewer(Composite parent, String i18nTitleKey,
        IObjectMappingCategoryPO topLevelCategory, MenuManager contextMenuMgr) {

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

    final FilteredTree ft = new JBFilteredTree(composite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER,
            new ObjectMappingEditorPatternFilter(), true);
    setTreeFilterText(ft.getFilterControl());

    final TreeViewer viewer = ft.getViewer();

    viewer.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    setProviders(viewer, getCompNameCache());
    viewer.setUseHashlookup(true);
    viewer.setComparator(new ObjectMappingTreeSorter());
    viewer.setComparer(new PersistentObjectComparer());
    viewer.setInput(topLevelCategory);

    Transfer[] transfers = new Transfer[] { org.eclipse.jface.util.LocalSelectionTransfer.getTransfer() };
    viewer.addDragSupport(DND.DROP_MOVE, transfers, new LimitingDragSourceListener(viewer, getAut()));
    viewer.addDropSupport(DND.DROP_MOVE, transfers, new OMDropTargetListener(this, viewer));

    createTreeContextMenu(viewer, contextMenuMgr);

    DialogUtils.setWidgetName(viewer.getTree(), i18nTitleKey);

    IFocusService focusService = getSite().getService(IFocusService.class);

    focusService.addFocusTracker(viewer.getTree(), i18nTitleKey);
    viewer.getTree().addFocusListener(new FocusAdapter() {
        public void focusGained(FocusEvent e) {
            m_activeTreeViewer = viewer;
        }
    });

    return viewer;
}

From source file:org.eclipse.jubula.client.ui.rcp.views.TestCaseBrowser.java

License:Open Source License

/**
 * @param po The persistent object for which the structure has changed
 *///from  w ww  . ja  v a 2 s.c o m
private void handleDataStructureModified(final IPersistentObject po) {
    if (po instanceof INodePO) {
        final TreeViewer tv = getTreeViewer();
        try {
            tv.getTree().getParent().setRedraw(false);
            // retrieve tree state
            Object[] expandedElements = tv.getExpandedElements();
            ISelection selection = tv.getSelection();

            // update elements
            if (po instanceof IProjectPO) {
                rebuildTree();
            }

            // refresh tree viewer
            tv.refresh();

            // restore tree state
            tv.setExpandedElements(expandedElements);
            tv.setSelection(selection);
        } finally {
            tv.getTree().getParent().setRedraw(true);
        }
    }
}

From source file:org.eclipse.jubula.client.ui.rcp.wizards.refactor.pages.MatchComponentNamesPage.java

License:Open Source License

/** {@inheritDoc} */
public void createControl(Composite parent) {
    SashForm sash = new SashForm(parent, SWT.HORIZONTAL);
    sash.setLayout(new FillLayout(SWT.VERTICAL | SWT.HORIZONTAL));

    Composite leftSashContent = new Composite(sash, SWT.NONE);
    leftSashContent.setLayout(GridLayoutFactory.fillDefaults().create());
    new Label(leftSashContent, SWT.NONE).setText(Messages.ReplaceTCRWizard_matchComponentNames_oldInterface);
    TreeViewer tv = new TreeViewer(leftSashContent);
    tv.setContentProvider(new MatchCompNamesPageTreeContentProvider());
    tv.setLabelProvider(new MatchCompNamesPageTreeLabelProvider());
    tv.setInput(m_execTCList);/*  ww  w .  ja  v  a 2 s .  c  om*/
    tv.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    tv.expandAll();

    Composite rightSashContent = new Composite(sash, SWT.NONE);
    rightSashContent.setLayout(GridLayoutFactory.fillDefaults().create());
    new Label(rightSashContent, SWT.NONE).setText(Messages.ReplaceTCRWizard_matchComponentNames_newInterface);
    m_cntc = new ComponentNamesTableComposite(rightSashContent, SWT.NONE);
    m_cntc.setSelectedExecNodeOwner(m_editor);
    if (m_editor instanceof TestSuiteEditor) {
        m_cntc.controlPropagation(false);
    }
    sash.setWeights(new int[] { 1, 2 });
    setControl(sash);
}

From source file:org.eclipse.launchbar.ui.internal.target.NewLaunchTargetWizardNewPage.java

License:Open Source License

/**
 * Create a new FilteredTree in the parent.
 *
 * @param parent the parent <code>Composite</code>.
 * @since 3.0//www. j av a2 s.  c om
 */
protected FilteredTree createFilteredTree(Composite parent) {
    Composite composite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    composite.setLayout(layout);
    GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
    data.widthHint = SIZING_VIEWER_WIDTH;
    data.horizontalSpan = 2;
    data.grabExcessHorizontalSpace = true;
    data.grabExcessVerticalSpace = true;
    boolean needsHint = DialogUtil.inRegularFontMode(parent);
    //Only give a height hint if the dialog is going to be too small
    if (needsHint) {
        data.heightHint = SIZING_LISTS_HEIGHT;
    }
    composite.setLayoutData(data);
    filteredTreeFilter = new WizardPatternFilter();
    FilteredTree filterTree = new FilteredTree(composite, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER,
            filteredTreeFilter, true);
    filterTree.setQuickSelectionMode(true);
    final TreeViewer treeViewer = filterTree.getViewer();
    treeViewer.setContentProvider(new WizardContentProvider());
    treeViewer.setLabelProvider(new WorkbenchLabelProvider());
    //treeViewer.setComparator(NewWizardCollectionComparator.INSTANCE);
    treeViewer.addSelectionChangedListener(this);
    ArrayList inputArray = new ArrayList();
    for (int i = 0; i < primaryWizards.length; i++) {
        inputArray.add(primaryWizards[i]);
    }
    boolean expandTop = false;
    // ensure the category is expanded.  If there is a remembered expansion it will be set later.
    if (expandTop) {
        treeViewer.setAutoExpandLevel(2);
    }
    AdaptableList input = new AdaptableList(inputArray);
    treeViewer.setInput(input);
    filterTree.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_WIDGET_BACKGROUND));
    treeViewer.getTree().setFont(parent.getFont());
    treeViewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(DoubleClickEvent event) {
            IStructuredSelection s = (IStructuredSelection) event.getSelection();
            selectionChanged(new SelectionChangedEvent(event.getViewer(), s));
            Object element = s.getFirstElement();
            if (treeViewer.isExpandable(element)) {
                treeViewer.setExpandedState(element, !treeViewer.getExpandedState(element));
            } else if (element instanceof WorkbenchWizardElement) {
                page.advanceToNextPageOrFinish();
            }
        }
    });
    treeViewer.addFilter(filter);
    Dialog.applyDialogFont(filterTree);
    return filterTree;
}

From source file:org.eclipse.libra.warproducts.ui.exportwizard.SelectionPage.java

License:Open Source License

public void createControl(final Composite parent) {
    Composite container = new Composite(parent, SWT.NONE);
    container.setLayout(new FormLayout());
    int style = SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER;
    TreeViewer viewer = new TreeViewer(container, style);
    viewer.setContentProvider(new WorkbenchContentProvider());
    viewer.setLabelProvider(new WorkbenchLabelProvider());
    viewer.setInput(ResourcesPlugin.getWorkspace());
    FileExtensionFilter filter = new FileExtensionFilter(WARProductConstants.FILE_EXTENSION);
    viewer.addFilter(filter);/* w  w w  .  j  a  v a2s  .  c  o m*/
    hookSelectionListener(viewer);
    FormData fdViewer = new FormData();
    viewer.getTree().setLayoutData(fdViewer);
    fdViewer.left = new FormAttachment(0);
    fdViewer.top = new FormAttachment(0);
    fdViewer.right = new FormAttachment(100);
    fdViewer.bottom = new FormAttachment(100);
    setControl(container);
    IWorkbench workbench = PlatformUI.getWorkbench();
    IWorkbenchHelpSystem helpSystem = workbench.getHelpSystem();
    String contextId = WARProductConstants.HELP_CONTEXT_SELECTION_PAGE;
    helpSystem.setHelp(container, contextId);
}

From source file:org.eclipse.linuxtools.gprof.view.GmonView.java

License:Open Source License

/**
 * Display gmon results in the GProf View.
 * NOTE: this method has to be called from within the UI thread.
 * @param decoder/*from   w  ww. jav  a  2s .c  om*/
 * @param gmonPath
 * @param instanceName
 */
public static GmonView displayGprofView(GmonDecoder decoder, String gmonPath, String instanceName) {
    GmonView gmonview = null;
    try {
        IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
        IWorkbenchPage page = window.getActivePage();
        if (instanceName != null)
            gmonview = (GmonView) page.showView("org.eclipse.linuxtools.gprof.view", instanceName,
                    IWorkbenchPage.VIEW_ACTIVATE);
        else
            gmonview = (GmonView) page.showView("org.eclipse.linuxtools.gprof.view");
        if (decoder.getHistogramDecoder().getProf_rate() == 0) {
            gmonview.switchSampleTime.setToolTipText("Unable to display time, because profiling rate is null");
            gmonview.switchSampleTime.setEnabled(false);
        }
        gmonview.setInput(decoder);
        GmonView.setHistTitle(decoder, gmonview.label);
        if (!decoder.getHistogramDecoder().hasValues()) {
            gmonview.action1.setChecked(true);
            gmonview.action2.setChecked(false);
            gmonview.action1.run();
        }
        if (decoder.isDCache() || decoder.isICache()) {
            TreeViewer tv = (TreeViewer) gmonview.getSTViewer().getViewer();
            TreeColumn tc = tv.getTree().getColumn(1);
            SampleProfField spf = (SampleProfField) tc.getData();
            tc.setText(spf.getColumnHeaderText());
            tc.setToolTipText(spf.getColumnHeaderTooltip());
            tv.refresh();
        }
    } catch (Exception e) {
        Status status = new Status(Status.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, e.getMessage(), e);
        Activator.getDefault().getLog().log(status);
    }
    return gmonview;
}

From source file:org.eclipse.linuxtools.internal.rpm.createrepo.form.ImportRPMsPage.java

License:Open Source License

@Override
protected void createFormContent(IManagedForm managedForm) {
    // setting up the form page
    super.createFormContent(managedForm);
    GridLayout layout = new GridLayout();
    FormToolkit toolkit = managedForm.getToolkit();
    ScrolledForm form = managedForm.getForm();
    form.setText(Messages.ImportRPMsPage_formHeaderText);
    form.setImage(Activator.getImageDescriptor(HEADER_ICON).createImage());
    ToolBarManager toolbarManager = (ToolBarManager) form.getToolBarManager();
    toolkit.decorateFormHeading(form.getForm());

    // add the menuContribution from MANIFEST.MF to the form
    IMenuService menuService = getSite().getService(IMenuService.class);
    menuService.populateContributionManager(toolbarManager, MENU_URI);
    toolbarManager.update(true);/*from  w w  w .j av a2 s  . c om*/

    layout = new GridLayout(2, true);
    layout.marginWidth = 6;
    layout.marginHeight = 12;
    form.getBody().setLayout(layout);

    // Section and its client area to manage importing the RPMs
    Section rpmSection = toolkit.createSection(form.getBody(),
            Section.DESCRIPTION | ExpandableComposite.TITLE_BAR);
    layout = new GridLayout();
    rpmSection.setText(Messages.ImportRPMsPage_sectionTitle);
    rpmSection.setDescription(Messages.ImportRPMsPage_sectionInstruction);
    rpmSection.setLayoutData(expandComposite());

    // the client area containing the tree + buttons
    Composite sectionClient = toolkit.createComposite(rpmSection);
    layout = new GridLayout(2, false);
    layout.marginWidth = 1;
    layout.marginHeight = 7;
    sectionClient.setLayout(layout);
    TreeViewer viewer = new TreeViewer(sectionClient,
            SWT.BORDER | SWT.MULTI | SWT.HORIZONTAL | SWT.VERTICAL | SWT.LEFT_TO_RIGHT | SWT.SMOOTH);
    viewer.addDropSupport(DND.DROP_COPY, new Transfer[] { FileTransfer.getInstance() },
            new ImportRPMDropListener(viewer, project));
    tree = viewer.getTree();
    tree.setLayoutData(expandComposite());

    Composite buttonList = toolkit.createComposite(sectionClient);
    layout = new GridLayout();
    GridData data = new GridData(SWT.BEGINNING, SWT.FILL, false, true);
    layout.marginWidth = 0;
    layout.marginHeight = 0;
    buttonList.setLayout(layout);
    buttonList.setLayoutData(data);

    createPushButton(buttonList, Messages.ImportRPMsPage_buttonImportRPMs, toolkit)
            .addSelectionListener(new ImportButtonListener());
    createPushButton(buttonList, Messages.ImportRPMsPage_buttonRemoveRPMs, toolkit)
            .addSelectionListener(new RemoveButtonListener());
    new Label(buttonList, SWT.NONE).setLayoutData(new GridData(0, 0));

    createPushButton(buttonList, Messages.ImportRPMsPage_buttonCreateRepo, toolkit)
            .addSelectionListener(new CreaterepoButtonListener());

    refreshTree();
    rpmSection.setClient(sectionClient);
    managedForm.refresh();
}

From source file:org.eclipse.linuxtools.internal.valgrind.cachegrind.tests.CModelLabelsTest.java

License:Open Source License

private void checkLabelProvider(TreeViewer viewer, TreePath path, ICachegrindElement element) {
    // expand only the interesting item
    viewer.expandToLevel(element, TreeViewer.ALL_LEVELS);
    TreeSelection selection = new TreeSelection(path);
    viewer.setSelection(selection);/*from   ww  w .java 2 s. c  om*/
    TreeItem item = viewer.getTree().getSelection()[0];

    // ensure the CElementLabelProvider is called correctly
    CElementLabelProvider provider = ((CachegrindLabelProvider) viewer.getLabelProvider(0)).getCLabelProvider();
    assertEquals(provider.getText(element.getModel()), item.getText());
    assertEquals(provider.getImage(element.getModel()), item.getImage());
}

From source file:org.eclipse.m2e.core.ui.internal.dialogs.MavenGoalSelectionDialog.java

License:Open Source License

protected Control createDialogArea(Composite parent) {
    Composite composite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
    layout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
    layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
    layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
    composite.setLayout(layout);//from ww  w  .j av a2  s.  c o m
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));

    Label selectGoalLabel = new Label(composite, SWT.NONE);
    selectGoalLabel.setText(org.eclipse.m2e.core.ui.internal.Messages.MavenGoalSelectionDialog_lblSelect);

    final GoalsFilter filter = new GoalsFilter();

    final Text filterText = new Text(composite, SWT.BORDER);
    GridData gd_filterText = new GridData(SWT.FILL, SWT.CENTER, true, false);
    gd_filterText.widthHint = 200;
    filterText.setLayoutData(gd_filterText);
    filterText.setFocus();

    final TreeViewer treeViewer = createTreeViewer(composite);
    treeViewer.addFilter(filter);

    GridData data = new GridData(GridData.FILL_BOTH);
    data.widthHint = 500;
    data.heightHint = 400;
    // data.widthHint = convertWidthInCharsToPixels(fWidth);
    // data.heightHint = convertHeightInCharsToPixels(fHeight);

    final Tree tree = treeViewer.getTree();
    tree.setLayoutData(data);
    tree.setFont(parent.getFont());

    filterText.addModifyListener(new ModifyListener() {
        public void modifyText(ModifyEvent e) {
            String text = filterText.getText();
            filter.setFilter(text);
            treeViewer.refresh();
            if (text.trim().length() == 0) {
                treeViewer.collapseAll();
            } else {
                treeViewer.expandAll();
            }
        }
    });

    filterText.addKeyListener(new KeyAdapter() {
        public void keyPressed(KeyEvent e) {
            if (e.keyCode == SWT.ARROW_DOWN) {
                tree.setFocus();
                tree.setSelection(tree.getTopItem().getItem(0));

                Object[] elements = ((ITreeContentProvider) treeViewer.getContentProvider()).getElements(null);
                treeViewer.setSelection(new StructuredSelection(elements[0]));
            }

        }
    });

    isQualifiedNameButton = new Button(composite, SWT.CHECK);
    isQualifiedNameButton
            .setText(org.eclipse.m2e.core.ui.internal.Messages.MavenGoalSelectionDialog_btnQualified);
    isQualifiedNameButton.setSelection(true);
    isQualifiedNameButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            isQualifiedName = isQualifiedNameButton.getSelection();
        }
    });

    //    if (fIsEmpty) {
    //        messageLabel.setEnabled(false);
    //        treeWidget.setEnabled(false);
    //    }

    return composite;
}

From source file:org.eclipse.m2e.editor.xml.PomContentOutlineConfiguration.java

License:Open Source License

@Override
protected IContributionItem[] createMenuContributions(TreeViewer viewer) {
    if (viewer == null || viewer.getTree().isDisposed()) {
        return new IContributionItem[0];
    }/*from  ww w .  jav a 2  s  .com*/
    return super.createMenuContributions(viewer);
}