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

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

Introduction

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

Prototype

@Override
public void setContentProvider(IContentProvider provider) 

Source Link

Document

Sets the content provider used by this TreeViewer.

Usage

From source file:com.aptana.editor.common.outline.CommonQuickOutlinePage.java

License:Open Source License

/**
 * createTreeViewer//www. j av a  2s.  co m
 * 
 * @param parent
 * @return TreeViewer
 */
private TreeViewer createTreeViewer(Composite parent) {
    TreeViewer result = new TreeViewer(new Tree(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL));
    Tree tree = result.getTree();
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = tree.getItemHeight() * 12;
    tree.setLayoutData(gd);

    result.setLabelProvider(_editor.getOutlineLabelProvider());
    result.setContentProvider(_editor.getOutlineContentProvider());
    result.setInput(this._editor);

    result.setComparer(new IElementComparer() {
        /**
         * @see org.eclipse.jface.viewers.IElementComparer#equals(java.lang.Object, java.lang.Object)
         */
        public boolean equals(Object a, Object b) {
            boolean result = false;

            if (a instanceof CommonOutlineItem && b instanceof CommonOutlineItem) {
                CommonOutlineItem item1 = (CommonOutlineItem) a;
                CommonOutlineItem item2 = (CommonOutlineItem) b;

                result = item1.equals(item2);
            } else if (a instanceof IParseNode && b instanceof IParseNode) {
                if (a == b) {
                    result = true;
                } else {
                    IParseNode node1 = (IParseNode) a;
                    IParseNode node2 = (IParseNode) b;
                    result = node1.equals(node2);
                }
            } else {
                result = (a == b);
            }

            return result;
        }

        /**
         * @see org.eclipse.jface.viewers.IElementComparer#hashCode(java.lang.Object)
         */
        public int hashCode(Object element) {
            return 0;
        }
    });

    return result;
}

From source file:com.aptana.ide.samples.ui.SamplesView.java

License:Open Source License

/**
 * createTreeViewer//from w  ww.  j av a 2s  .c om
 * 
 * @param parent
 * @return TreeViewer
 */
private TreeViewer createTreeViewer(Composite parent) {
    Tree tree = new Tree(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL);
    final TreeViewer viewer = new TreeViewer(tree);

    viewer.setContentProvider(new SamplesViewContentProvider());
    viewer.setLabelProvider(new SamplesViewLabelProvider());

    identifierListener = new IIdentifierListener() {

        public void identifierChanged(IdentifierEvent identifierEvent) {
            if (identifierEvent.hasEnabledChanged()) {
                Job job = new UIJob(Messages.SamplesView_Job_UpdatingExplorer) {
                    public IStatus runInUIThread(IProgressMonitor monitor) {
                        ViewerFilter[] filters = viewer.getFilters();
                        viewer.resetFilters();
                        for (int i = 0; i < filters.length; i++) {
                            viewer.addFilter(filters[i]);
                        }
                        viewer.refresh();
                        return Status.OK_STATUS;
                    };
                };
                job.setPriority(UIJob.INTERACTIVE);
                job.schedule();
            }
            return;
        }
    };
    viewer.addFilter(new ViewerFilter() {

        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            if (element instanceof SamplesInfo) {
                SamplesInfo si = (SamplesInfo) element;

                String extensionId = si.getExtensionId();
                String extensionPluginId = si.getExtensionPluginId();
                if (extensionPluginId != null && extensionId != null && extensionPluginId.length() > 0
                        && extensionId.length() > 0) {
                    final IIdentifier id = activityManager.getIdentifier(extensionPluginId + "/" //$NON-NLS-1$
                            + extensionId);
                    if (id != null) {
                        id.addIdentifierListener(identifierListener);
                        return id.isEnabled();
                    }
                }
            }
            return true;
        }
    });

    return viewer;
}

From source file:com.aptana.ide.search.AptanaFileSearchPage.java

License:Open Source License

/**
 * installing our decorator here.//from  w ww  .j  a v  a2  s .  c om
 * @see org.eclipse.search.internal.ui.text.FileSearchPage#configureTreeViewer(org.eclipse.jface.viewers.TreeViewer)
 */
protected void configureTreeViewer(TreeViewer viewer) {
    super.configureTreeViewer(viewer);
    FileTreeContentProvider provider2 = new FileTreeContentProvider(this, viewer) {

    };
    viewer.setContentProvider(provider2);
    try {
        Field field = FileSearchPage.class.getDeclaredField("fContentProvider"); //$NON-NLS-1$
        field.setAccessible(true);
        field.set(this, provider2);
    } catch (Exception e) {
        IdeLog.logError(Activator.getDefault(), "Error during conifguration using reflection", e); //$NON-NLS-1$
    }

    final DecoratingFileSearchLabelProvider labelProvider = new DecoratingFileSearchLabelProvider(
            new FileLabelProvider(this, FileLabelProvider.SHOW_LABEL_PATH));
    DecoratingLabelProvider decoratingLabelProvider = new DecoratingLabelProvider(labelProvider,
            new AptanaExtraDecorator(this)) {

        public void setLabelDecorator(ILabelDecorator decorator) {
            if (decorator != null) {
                AptanaFileSearchPage.this.turnOff = true;
            }
            labelProvider.setLabelDecorator(decorator);
            AptanaFileSearchPage.this.turnOff = false;
        }

        public void dispose() {

        }

    };
    viewer.setInput(getInput());
    this.provider = (ITreeContentProvider) viewer.getContentProvider();
    viewer.setLabelProvider(decoratingLabelProvider);
}

From source file:com.aptana.ide.search.epl.filesystem.ui.text.FileSystemSearchPage.java

License:Open Source License

/**
 * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#configureTreeViewer(org.eclipse.jface.viewers.TreeViewer)
 */// ww w.ja va  2s . co  m
protected void configureTreeViewer(TreeViewer viewer) {
    viewer.setUseHashlookup(true);
    FileLabelProvider innerLabelProvider = new FileLabelProvider(this, FileLabelProvider.SHOW_LABEL);
    viewer.setLabelProvider(new DecoratingLabelProvider(innerLabelProvider,
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    viewer.setContentProvider(new FileTreeContentProvider(this, viewer));
    viewer.setComparator(new DecoratorIgnoringViewerSorter(innerLabelProvider));
    fContentProvider = (IFileSearchContentProvider) viewer.getContentProvider();
    addDragAdapters(viewer);
}

From source file:com.aptana.ide.snippets.SnippetsView.java

License:Open Source License

/**
 * createTreeViewer// w  w  w .ja  v  a2 s  . c o  m
 * 
 * @param parent
 * @return TreeViewer
 */
private TreeViewer createTreeViewer(Composite parent) {
    Tree tree = new Tree(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL);
    TreeViewer viewer = new TreeViewer(tree);

    snippetsViewContentProvider = new SnippetsViewContentProvider();
    viewer.setContentProvider(snippetsViewContentProvider);
    snippetsViewLabelProvider = new SnippetsViewLabelProvider();
    viewer.setLabelProvider(snippetsViewLabelProvider);

    return viewer;
}

From source file:com.aptana.ide.syncing.ui.old.views.SmartSyncViewer.java

License:Open Source License

private TreeViewer createContents(final Composite parent) {
    final TreeViewer viewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.SINGLE | SWT.BORDER);
    viewer.setContentProvider(fContentProvider = new SmartSyncContentProvider());
    viewer.setLabelProvider(fLabelProvider = new SmartSyncLabelProvider(parent.getDisplay()));

    Tree tree = viewer.getTree();/*from ww w  .  java 2 s .c om*/
    tree.setLinesVisible(true);
    tree.setHeaderVisible(true);
    viewer.setAutoExpandLevel(2);
    tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    fInitBackground = new Color(tree.getDisplay(), 175, 238, 238);
    fProgressBackground = new Color(tree.getDisplay(), 72, 209, 204);
    tree.addDisposeListener(new DisposeListener() {

        public void widgetDisposed(DisposeEvent e) {
            fInitBackground.dispose();
            fProgressBackground.dispose();
        }

    });
    parent.addControlListener(new ControlAdapter() {

        public void controlResized(ControlEvent e) {
            setWidth(parent.getSize().x);
        }

    });

    // file column
    TreeColumn file = new TreeColumn(tree, SWT.LEFT);
    file.setWidth(250);
    file.setText(Messages.SmartSyncDialog_ColumnResources);
    file.setToolTipText(Messages.SmartSyncViewer_ColumnResourcesTooltip);

    // the column to specify whether the file should be skipped
    TreeColumn skip = new TreeColumn(tree, SWT.CENTER);
    skip.setWidth(40);
    skip.setText(Messages.SmartSyncDialog_ColumnSkip);
    skip.setToolTipText(Messages.SmartSyncViewer_ColumnSkipTooltip);

    // the state column on what will be done, if any, to the files from first end point
    fColumnEnd1 = new TreeColumn(tree, SWT.CENTER);
    fColumnEnd1.setWidth(125);

    // the state column on what will be done, if any, to the files from second end point
    fColumnEnd2 = new TreeColumn(tree, SWT.CENTER);
    fColumnEnd2.setWidth(125);

    Menu menu = new Menu(tree);
    fShowDiffs = new MenuItem(menu, SWT.PUSH);
    fShowDiffs.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            if (!viewer.getSelection().isEmpty() && viewer.getSelection() instanceof IStructuredSelection) {
                Object selection = ((IStructuredSelection) viewer.getSelection()).getFirstElement();
                if (selection instanceof SyncFile) {
                    SyncFile file = (SyncFile) selection;
                    if (file.getSyncState() == SyncState.ClientItemIsNewer
                            || file.getSyncState() == SyncState.ServerItemIsNewer) {
                        final VirtualFileSyncPair pair = file.getPair();
                        FileStoreCompareEditorInput input = new FileStoreCompareEditorInput(
                                new CompareConfiguration());
                        input.setLeftFileStore(pair.getSourceFile());
                        IFileStore destinationFile = pair.getDestinationFile();
                        String name = destinationFile.getName();
                        if (destinationFile instanceof IExtendedFileStore) {
                            // this is a remote file, so downloads to a local temp copy first for speed purpose
                            try {
                                File localFile = destinationFile.toLocalFile(EFS.CACHE, null);
                                destinationFile = EFS.getLocalFileSystem()
                                        .getStore(Path.fromOSString(localFile.getAbsolutePath()));
                            } catch (CoreException ce) {
                                // logs as warning since we will fall back to use the remote file store directly in
                                // this case
                                IdeLog.logWarning(SyncingUIPlugin.getDefault(), ce);
                            }
                        }
                        input.setRightFileStore(destinationFile, name);
                        input.initializeCompareConfiguration();
                        CompareUI.openCompareDialog(input);
                    }
                }
            }
        }
    });
    fShowDiffs.setImage(SyncingUIPlugin.getImage("icons/full/obj16/compare_view.gif")); //$NON-NLS-1$
    fShowDiffs.setText(Messages.SmartSyncDialog_ShowDiffs);
    fShowDiffs.setEnabled(true);
    tree.setMenu(menu);

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            if (!viewer.getSelection().isEmpty() && viewer.getSelection() instanceof IStructuredSelection) {
                Object selection = ((IStructuredSelection) viewer.getSelection()).getFirstElement();
                if (selection instanceof SyncFile) {
                    SyncFile file = (SyncFile) selection;
                    if (file.getSyncState() == SyncState.ClientItemIsNewer
                            || file.getSyncState() == SyncState.ServerItemIsNewer) {
                        fShowDiffs.setEnabled(true);
                        return;
                    }
                }
            }
            fShowDiffs.setEnabled(false);
        }

    });
    viewer.setCellEditors(new CellEditor[] { null, new CheckboxCellEditor(), null, null });
    viewer.setColumnProperties(
            new String[] { Messages.SmartSyncDialog_ColumnName, Messages.SmartSyncDialog_ColumnSkip,
                    Messages.SmartSyncDialog_ColumnLocal, Messages.SmartSyncDialog_ColumnRemote });

    return viewer;
}

From source file:com.aptana.ide.syncing.ui.views.SmartSyncViewer.java

License:Open Source License

private TreeViewer createContents(final Composite parent) {
    final TreeViewer viewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.SINGLE | SWT.BORDER);
    viewer.setContentProvider(fContentProvider = new SmartSyncContentProvider());
    viewer.setLabelProvider(fLabelProvider = new SmartSyncLabelProvider(parent.getDisplay()));

    Tree tree = viewer.getTree();//from   www .j av  a 2s .c om
    tree.setLinesVisible(true);
    tree.setHeaderVisible(true);
    viewer.setAutoExpandLevel(2);
    tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    fInitBackground = new Color(tree.getDisplay(), 175, 238, 238);
    fProgressBackground = new Color(tree.getDisplay(), 72, 209, 204);
    tree.addDisposeListener(new DisposeListener() {

        public void widgetDisposed(DisposeEvent e) {
            fInitBackground.dispose();
            fProgressBackground.dispose();
        }

    });
    parent.addControlListener(new ControlAdapter() {

        public void controlResized(ControlEvent e) {
            setWidth(parent.getSize().x);
        }

    });

    // file column
    TreeColumn file = new TreeColumn(tree, SWT.LEFT);
    file.setWidth(250);
    file.setText(Messages.SmartSyncDialog_ColumnResources);
    file.setToolTipText(Messages.SmartSyncViewer_ColumnResourcesTooltip);

    // the column to specify whether the file should be skipped
    TreeColumn skip = new TreeColumn(tree, SWT.CENTER);
    skip.setWidth(40);
    skip.setText(Messages.SmartSyncDialog_ColumnSkip);
    skip.setToolTipText(Messages.SmartSyncViewer_ColumnSkipTooltip);

    // the state column on what will be done, if any, to the files from first end point
    fColumnEnd1 = new TreeColumn(tree, SWT.CENTER);
    fColumnEnd1.setWidth(125);

    // the state column on what will be done, if any, to the files from second end point
    fColumnEnd2 = new TreeColumn(tree, SWT.CENTER);
    fColumnEnd2.setWidth(125);

    Menu menu = new Menu(tree);
    fShowDiffs = new MenuItem(menu, SWT.PUSH);
    fShowDiffs.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            if (!viewer.getSelection().isEmpty() && viewer.getSelection() instanceof IStructuredSelection) {
                Object selection = ((IStructuredSelection) viewer.getSelection()).getFirstElement();
                if (selection instanceof SyncFile) {
                    SyncFile file = (SyncFile) selection;
                    if (file.getSyncState() == SyncState.ClientItemIsNewer
                            || file.getSyncState() == SyncState.ServerItemIsNewer) {
                        final VirtualFileSyncPair pair = file.getPair();
                        File local = null;
                        try {
                            local = pair.getSourceFile().toLocalFile(EFS.CACHE, null);
                        } catch (CoreException ex) {
                            ex.printStackTrace();
                        }

                        FileCompareEditorInput input = new FileCompareEditorInput(new CompareConfiguration()) {
                            protected void prepareFiles() {
                                File temp = null;
                                try {
                                    temp = pair.getDestinationFile().toLocalFile(EFS.CACHE, null);
                                } catch (CoreException e) {
                                    e.printStackTrace();
                                }
                                setRightResource(temp);
                            }
                        };
                        input.setLeftResource(local);
                        CompareUI.openCompareDialog(input);
                    }
                }
            }
        }

    });
    fShowDiffs.setImage(SyncingUIPlugin.getImage("icons/full/obj16/compare_view.gif")); //$NON-NLS-1$
    fShowDiffs.setText(Messages.SmartSyncDialog_ShowDiffs);
    fShowDiffs.setEnabled(true);
    tree.setMenu(menu);

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            if (!viewer.getSelection().isEmpty() && viewer.getSelection() instanceof IStructuredSelection) {
                Object selection = ((IStructuredSelection) viewer.getSelection()).getFirstElement();
                if (selection instanceof SyncFile) {
                    SyncFile file = (SyncFile) selection;
                    if (file.getSyncState() == SyncState.ClientItemIsNewer
                            || file.getSyncState() == SyncState.ServerItemIsNewer) {
                        fShowDiffs.setEnabled(true);
                        return;
                    }
                }
            }
            fShowDiffs.setEnabled(false);
        }

    });
    viewer.setCellEditors(new CellEditor[] { null, new CheckboxCellEditor(), null, null });
    viewer.setColumnProperties(
            new String[] { Messages.SmartSyncDialog_ColumnName, Messages.SmartSyncDialog_ColumnSkip,
                    Messages.SmartSyncDialog_ColumnLocal, Messages.SmartSyncDialog_ColumnRemote });

    return viewer;
}

From source file:com.aptana.ide.views.outline.UnifiedOutlinePage.java

License:Open Source License

/**
 * createTreeViewer/*  w  w  w .ja v a  2 s.  c  om*/
 * 
 * @param parent
 * @return TreeViewer
 */
private TreeViewer createTreeViewer(Composite parent, PatternFilter filter) {
    FilteredTree tree = null;
    try {
        // When available (3.5+) use new constructor
        Constructor<FilteredTree> cons = FilteredTree.class.getConstructor(Composite.class, int.class,
                PatternFilter.class, boolean.class);
        tree = cons.newInstance(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL, filter, true);
    } catch (Exception e) {
        // fallback to deprecated old constructor when new one not available
        tree = new FilteredTree(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL, filter);
    }

    TreeViewer result = tree.getViewer();

    outlineProvider = UnifiedOutlineProvider.getInstance();
    outlineProvider.setOutlinePage(this);

    result.setLabelProvider(outlineProvider);
    result.setContentProvider(outlineProvider);
    result.setInput(this._editor);

    // add selection changed listener
    result.addSelectionChangedListener(new ISelectionChangedListener() {
        /**
         * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
         */
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();

            if (selection.size() == 1) {
                Object item = selection.getFirstElement();

                if (item != null && item instanceof OutlineItem) {
                    OutlineItem outlineItem = (OutlineItem) selection.getFirstElement();

                    // Only select and reveal in editor if the tree viewer is focused meaning the selection
                    // originated from a user selection on the tree itself

                    // move cursor to start of this item's text
                    if (_treeViewer != null && _treeViewer.getTree() != null
                            && !_treeViewer.getTree().isDisposed() && _treeViewer.getTree().isFocusControl()) {
                        _editor.selectAndReveal(outlineItem.getStartingOffset(), 0);
                    }

                    // TODO: activate the editor window
                    // Note this code works, but should only be called on mouse clicks so users can
                    // navigate through outline items using the keyboard
                    // IWorkbenchWindow window = JSPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow();
                    //               
                    // if (window != null)
                    // {
                    // IWorkbenchPage page = window.getActivePage();
                    //                  
                    // page.activate(_editor);
                    // }
                }
            }
        }
    });

    result.setComparer(new IElementComparer() {
        /**
         * @see org.eclipse.jface.viewers.IElementComparer#equals(java.lang.Object, java.lang.Object)
         */
        public boolean equals(Object a, Object b) {
            boolean result = false;

            if (a instanceof OutlineItem && b instanceof OutlineItem) {
                OutlineItem item1 = (OutlineItem) a;
                OutlineItem item2 = (OutlineItem) b;

                result = item1.equals(item2);
            } else if (a instanceof IParseNode && b instanceof IParseNode) {
                if (a == b) {
                    result = true;
                } else {
                    IParseNode node1 = (IParseNode) a;
                    IParseNode node2 = (IParseNode) b;
                    String path1 = node1.getUniquePath();
                    String path2 = node2.getUniquePath();

                    result = path1.equals(path2);
                }
            } else {
                result = (a == b);
            }

            return result;
        }

        /**
         * @see org.eclipse.jface.viewers.IElementComparer#hashCode(java.lang.Object)
         */
        public int hashCode(Object element) {
            return 0;
        }
    });

    return result;
}

From source file:com.aptana.ide.views.outline.UnifiedQuickOutlinePage.java

License:Open Source License

/**
 * createTreeViewer//from   w  w  w . ja v a2  s . c  o  m
 * 
 * @param parent
 * @return TreeViewer
 */
private TreeViewer createTreeViewer(Composite parent) {
    TreeViewer result = new TreeViewer(new Tree(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL));

    //outlineProvider = UnifiedOutlineProvider.getInstance();
    outlineProvider = createProvider();

    result.setLabelProvider(outlineProvider);
    result.setContentProvider(outlineProvider);
    result.setInput(this._editor);

    // add selection changed listener
    result.addSelectionChangedListener(new ISelectionChangedListener() {
        /**
         * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
         */
        public void selectionChanged(SelectionChangedEvent event) {
            //            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            //
            //            if (selection.size() == 1)
            //            {
            //               Object item = selection.getFirstElement();
            //
            //               if (item != null && item instanceof OutlineItem)
            //               {
            //                  OutlineItem outlineItem = (OutlineItem) selection.getFirstElement();
            //
            //                  // Only select and reveal in editor if the tree viewer is focused meaning the selection
            //                  // originated from a user selection on the tree itself
            //
            //                  // move cursor to start of this item's text
            //                  if (_treeViewer != null && _treeViewer.getTree() != null && !_treeViewer.getTree().isDisposed()
            //                        && _treeViewer.getTree().isFocusControl())
            //                  {
            //                     _editor.selectAndReveal(outlineItem.getStartingOffset(), 0);
            //                  }
            //               }
            //            }
        }
    });

    result.setComparer(new IElementComparer() {
        /**
         * @see org.eclipse.jface.viewers.IElementComparer#equals(java.lang.Object, java.lang.Object)
         */
        public boolean equals(Object a, Object b) {
            boolean result = false;

            if (a instanceof OutlineItem && b instanceof OutlineItem) {
                OutlineItem item1 = (OutlineItem) a;
                OutlineItem item2 = (OutlineItem) b;

                result = item1.equals(item2);
            } else if (a instanceof IParseNode && b instanceof IParseNode) {
                if (a == b) {
                    result = true;
                } else {
                    IParseNode node1 = (IParseNode) a;
                    IParseNode node2 = (IParseNode) b;
                    String path1 = node1.getUniquePath();
                    String path2 = node2.getUniquePath();

                    result = path1.equals(path2);
                }
            } else {
                result = (a == b);
            }

            return result;
        }

        /**
         * @see org.eclipse.jface.viewers.IElementComparer#hashCode(java.lang.Object)
         */
        public int hashCode(Object element) {
            return 0;
        }
    });

    return result;
}

From source file:com.aptana.samples.ui.views.SamplesView.java

License:Open Source License

protected TreeViewer createTreeViewer(Composite parent) {
    TreeViewer treeViewer = new TreeViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL);
    treeViewer.setContentProvider(new SamplesViewContentProvider());
    treeViewer.setLabelProvider(new SamplesViewLabelProvider());
    treeViewer.setInput(getSamplesManager());
    treeViewer.setComparator(new ViewerComparator());
    ColumnViewerToolTipSupport.enableFor(treeViewer);

    return treeViewer;
}