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:Snippet048TreeViewerTabWithCheckboxFor3_3.java

License:Open Source License

public Snippet048TreeViewerTabWithCheckboxFor3_3(final Shell shell) {
    final TreeViewer v = new TreeViewer(shell, SWT.BORDER | SWT.FULL_SELECTION);
    v.getTree().setLinesVisible(true);/*from w w w  . ja v  a  2 s .  com*/
    v.getTree().setHeaderVisible(true);

    final TreeViewerFocusCellManager mgr = new TreeViewerFocusCellManager(v,
            new FocusCellOwnerDrawHighlighter(v));
    ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy(v) {
        protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) {
            return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL
                    || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_DOUBLE_CLICK_SELECTION
                    || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED
                            && (event.keyCode == SWT.CR || event.character == ' '))
                    || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC;
        }
    };

    TreeViewerEditor.create(v, mgr, actSupport,
            ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR
                    | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION);

    final TextCellEditor textCellEditor = new TextCellEditor(v.getTree());
    final CheckboxCellEditor checkboxCellEditor = new CheckboxCellEditor(v.getTree());

    TreeViewerColumn column = new TreeViewerColumn(v, SWT.NONE);
    column.getColumn().setWidth(200);
    column.getColumn().setMoveable(true);
    column.getColumn().setText("Column 1");
    column.setLabelProvider(new ColumnLabelProvider() {

        public String getText(Object element) {
            return "Column 1 => " + element.toString();
        }

    });
    column.setEditingSupport(new EditingSupport(v) {
        protected boolean canEdit(Object element) {
            return false;
        }

        protected CellEditor getCellEditor(Object element) {
            return textCellEditor;
        }

        protected Object getValue(Object element) {
            return ((MyModel) element).counter + "";
        }

        protected void setValue(Object element, Object value) {
            ((MyModel) element).counter = Integer.parseInt(value.toString());
            v.update(element, null);
        }
    });

    column = new TreeViewerColumn(v, SWT.NONE);
    column.getColumn().setWidth(200);
    column.getColumn().setMoveable(true);
    column.getColumn().setText("Column 2");
    column.setLabelProvider(new ColumnLabelProvider() {

        public String getText(Object element) {
            return "Column 2 => " + element.toString();
        }

    });
    column.setEditingSupport(new EditingSupport(v) {
        protected boolean canEdit(Object element) {
            return true;
        }

        protected CellEditor getCellEditor(Object element) {
            return textCellEditor;
        }

        protected Object getValue(Object element) {
            return ((MyModel) element).counter + "";
        }

        protected void setValue(Object element, Object value) {
            ((MyModel) element).counter = Integer.parseInt(value.toString());
            v.update(element, null);
        }
    });

    column = new TreeViewerColumn(v, SWT.NONE);
    column.getColumn().setWidth(200);
    column.getColumn().setMoveable(true);
    column.getColumn().setText("Column 3");
    column.setLabelProvider(new ColumnLabelProvider() {

        public String getText(Object element) {
            return ((MyModel) element).bool + "";
        }

    });
    column.setEditingSupport(new EditingSupport(v) {
        protected boolean canEdit(Object element) {
            return true;
        }

        protected CellEditor getCellEditor(Object element) {
            return checkboxCellEditor;
        }

        protected Object getValue(Object element) {
            return new Boolean(((MyModel) element).bool);
        }

        protected void setValue(Object element, Object value) {
            ((MyModel) element).bool = ((Boolean) value).booleanValue();
            v.update(element, null);
        }
    });

    v.setContentProvider(new MyContentProvider());
    v.setInput(createModel());
    v.getControl().addTraverseListener(new TraverseListener() {

        public void keyTraversed(TraverseEvent e) {
            if ((e.detail == SWT.TRAVERSE_TAB_NEXT || e.detail == SWT.TRAVERSE_TAB_PREVIOUS)
                    && mgr.getFocusCell().getColumnIndex() == 2) {
                ColumnViewerEditor editor = v.getColumnViewerEditor();
                ViewerCell cell = mgr.getFocusCell();

                try {
                    Method m = ColumnViewerEditor.class.getDeclaredMethod("processTraverseEvent",
                            new Class[] { int.class, ViewerRow.class, TraverseEvent.class });
                    m.setAccessible(true);
                    m.invoke(editor,
                            new Object[] { new Integer(cell.getColumnIndex()), cell.getViewerRow(), e });
                } catch (SecurityException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (NoSuchMethodException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (IllegalArgumentException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (IllegalAccessException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (InvocationTargetException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                }
            }
        }

    });
}

From source file:ar.com.tadp.xml.rinzo.core.outline.XMLOutlinePage.java

License:Open Source License

public void update() {
    TreeViewer viewer = getTreeViewer();
    if (viewer != null) {
        Control control = viewer.getControl();
        if (control != null && !control.isDisposed()) {
            control.setRedraw(false);/*  w  ww.ja v a  2 s  .co m*/
            viewer.setInput(getInput());
            control.setRedraw(true);
        }
    }
}

From source file:ar.com.tadp.xml.rinzo.core.outline.XMLOutlinePage.java

License:Open Source License

public void internalUpdate() {
    if (getControl() == null) {
        return;// w  w w  .ja v a  2s . c  om
    }

    Display d = getControl().getDisplay();
    if (d != null) {
        d.asyncExec(new Runnable() {
            public void run() {
                TreeViewer viewer = getTreeViewer();
                if (viewer != null) {
                    Control control = viewer.getControl();
                    if (control != null && !control.isDisposed()) {
                        control.setRedraw(false);
                        viewer.setInput(getInput());
                        control.setRedraw(true);
                    }
                }
            }
        });
    }
}

From source file:bitub.sgf.jreality.views.viewer.JRealitySceneGraphTreeViewer.java

License:Open Source License

/**
 * /*from   w  w  w .ja  v a2 s .c  o m*/
 * <!-- begin-user-doc -->
 * <!-- end-user-doc -->
 * @generated NOT
 * @param tree
 * @param notifier
 */
public static void bind(final TreeViewer tree, final JRealityContentViewer notifier) {
    notifier.eAdapters().add(new AdapterImpl() {

        /**
         * <!-- begin-user-doc -->
         * <!-- end-user-doc -->
         * @generated NOT
         * @see org.eclipse.emf.common.notify.impl.AdapterImpl#notifyChanged(org.eclipse.emf.common.notify.Notification)
         */
        @Override
        public void notifyChanged(Notification msg) {
            if (msg instanceof SceneChangeNotification) {

                new UIJob(tree.getControl().getDisplay(), "Refreshing...") {

                    @Override
                    public IStatus runInUIThread(IProgressMonitor monitor) {
                        tree.refresh(true);
                        return Status.OK_STATUS;
                    }

                }.schedule();
            }
        }
    });

    tree.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            Object firstElement = ((IStructuredSelection) event.getSelection()).getFirstElement();
            if (firstElement instanceof SceneGraphComponent) {

                de.jreality.scene.Viewer viewer = notifier.getEmbeddedViewer();
                EncompassFactory ec = new EncompassFactory();
                ec.setAvatarPath(notifier.getAvatarPath());

                List<SceneGraphPath> pathsBetween = SceneGraphUtility.getPathsBetween(viewer.getSceneRoot(),
                        (SceneGraphNode) firstElement);

                ec.setScenePath(pathsBetween.get(0));

                ec.setCameraPath(notifier.getCamaraPath());
                ec.setMargin(1.0);
                ec.setMetric(de.jreality.math.Pn.EUCLIDEAN);
                ec.update();
            }
        }
    });
}

From source file:ca.mcgill.sable.soot.ui.AbstractOptionsDialog.java

License:Open Source License

/**
 * creates the tree of options sections/*from   www .  j a v a2  s  . com*/
 */
private Composite createSelectionArea(Composite parent) {
    Composite comp = new Composite(parent, SWT.NONE);
    setSelectionArea(comp);

    GridLayout layout = new GridLayout();

    layout.numColumns = 3;
    layout.marginHeight = 0;
    layout.marginWidth = 5;

    comp.setLayout(layout);

    GridData gd = new GridData();

    TreeViewer tree = new TreeViewer(comp);
    gd = new GridData(GridData.FILL_BOTH);
    gd.horizontalSpan = 3;
    gd.widthHint = 0;
    tree.getControl().setLayoutData(gd);

    tree.setContentProvider(new SootOptionsContentProvider());
    tree.setLabelProvider(new SootOptionsLabelProvider());
    tree.setInput(getInitialInput());

    setTreeViewer(tree);

    tree.addSelectionChangedListener(this);

    tree.getControl().addKeyListener(new KeyAdapter() {
        public void keyPressed(KeyEvent e) {
            handleKeyPressed(e);
        }
    });

    return comp;
}

From source file:ca.mcgill.sable.soot.ui.AnalysisVisManipDialog.java

License:Open Source License

private Composite createSelectionArea(Composite parent) {
    Composite comp = new Composite(parent, SWT.NONE);

    GridLayout layout = new GridLayout();

    layout.numColumns = 1;//ww w .  j a  v a2s.com

    comp.setLayout(layout);

    GridData gd = new GridData();

    TreeViewer files = new TreeViewer(comp);
    gd = new GridData(GridData.FILL_BOTH);

    files.getControl().setLayoutData(gd);

    files.setContentProvider(new VisManContentProvider());
    files.setLabelProvider(new VisManLabelProvider());
    files.setInput(getInitialInput());

    files.addSelectionChangedListener(this);

    files.getControl().addKeyListener(new KeyAdapter() {
        public void keyPressed(KeyEvent e) {
            handleKeyPressed(e);
        }
    });

    return comp;
}

From source file:ca.mcgill.sable.soot.ui.SootConfigManagerDialog.java

License:Open Source License

/**
 * creates the tree of options sections//  w  ww. j  a  v  a  2s. c  om
 */
private Composite createSelectionArea(Composite parent) {
    Composite comp = new Composite(parent, SWT.NONE);
    setSelectionArea(comp);

    GridLayout layout = new GridLayout();

    layout.numColumns = 1;

    comp.setLayout(layout);

    GridData gd = new GridData();

    TreeViewer tree = new TreeViewer(comp);
    gd = new GridData(GridData.FILL_BOTH);

    tree.getControl().setLayoutData(gd);

    tree.setContentProvider(new SootConfigContentProvider());
    tree.setLabelProvider(new SootConfigLabelProvider());
    tree.setInput(getInitialInput());

    setTreeViewer(tree);

    tree.addSelectionChangedListener(this);

    tree.expandAll();
    tree.getControl().addKeyListener(new KeyAdapter() {
        public void keyPressed(KeyEvent e) {
            handleKeyPressed(e);
        }
    });

    return comp;
}

From source file:com.alibaba.antx.config.gui.MainWindow.java

License:Open Source License

/**
 * Create contents of the application window
 * //from  w w  w  . j av  a 2s  . com
 * @param parent
 */
protected Control createContents(Composite parent) {
    SashForm sashForm = new SashForm(parent, SWT.HORIZONTAL);
    Composite leftPane = new Composite(sashForm, SWT.BORDER);
    Composite rightPane = new Composite(sashForm, SWT.BORDER);

    leftPane.setLayout(new GridLayout());
    rightPane.setLayout(new GridLayout());

    TreeViewer entriesViewer = new TreeViewer(leftPane, SWT.BORDER);

    entriesViewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));

    entriesViewer.setContentProvider(new ITreeContentProvider() {
        public Object[] getChildren(Object parentElement) {
            if (parentElement instanceof List) {
                List entriesList = (List) parentElement;
                return (ConfigEntry[]) entriesList.toArray(new ConfigEntry[entriesList.size()]);
            }

            return null;
        }

        public Object getParent(Object element) {
            return null;
        }

        public boolean hasChildren(Object element) {
            return false;
        }

        public Object[] getElements(Object inputElement) {
            if (inputElement instanceof List) {
                List entriesList = (List) inputElement;
                return (ConfigEntry[]) entriesList.toArray(new ConfigEntry[entriesList.size()]);
            }

            return null;
        }

        public void dispose() {
        }

        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }
    });

    gui.scan();
    entriesViewer.setInput(gui.getEntries());

    return sashForm;
}

From source file:com.appnativa.studio.editors.SDFOutlinePage.java

License:Open Source License

/**
 * The editor is saved, so we should refresh representation
 *
 * @param tableNamePositions/*from w  ww.  ja  va2  s  .co  m*/
 */
public void update() {
    //set the input so that the outlines parse can be called
    //update the tree viewer state
    TreeViewer viewer = getTreeViewer();

    if (viewer != null) {
        Control control = viewer.getControl();

        if ((control != null) && !control.isDisposed()) {
            viewer.setInput(input);
        }
    }
}

From source file:com.aptana.explorer.internal.ui.FilteringProjectView.java

License:Open Source License

/**
 * Restores the expansion and selection state of given project.
 * //from   w  w  w . j  a  v  a  2 s  .  c o  m
 * @param project
 *            the {@link IProject}
 * @see #restoreStateJob(IProject)
 * @see #saveState(IMemento)
 * @since 2.0
 */
protected void restoreState(IProject project) {
    TreeViewer viewer = getCommonViewer();
    Control control = viewer.getControl();
    if (control == null || control.isDisposed()) {
        return;
    }

    IContainer container = ResourcesPlugin.getWorkspace().getRoot();
    List<String> expansions = projectExpansions.get(project);
    List<String> selections = projectSelections.get(project);
    control.setRedraw(false);
    // FIXME Reconstruct filter into IResource
    String filter = projectFilters.get(project);
    if (filter == null || filter.length() == 0) {
        if (currentFilter != null) {
            clearFilter();
        }
    } else {
        IResource filterResource = project.getWorkspace().getRoot()
                .getFileForLocation(Path.fromPortableString(filter));
        setFilter(filterResource);
    }
    if (selections != null) {
        List<IResource> elements = new ArrayList<IResource>();
        for (String selectionPath : selections) {
            IResource element = container.findMember(selectionPath);
            if (element != null) {
                elements.add(element);
            }
        }
        viewer.setSelection(new StructuredSelection(elements), true);
    }
    if (expansions != null) {
        List<IResource> elements = new ArrayList<IResource>();
        for (String expansionPath : expansions) {
            IResource element = container.findMember(expansionPath);
            if (element != null) {
                elements.add(element);
            }
        }
        viewer.setExpandedElements(elements.toArray());
    }
    control.setRedraw(true);
}