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:com.aptana.ide.syncing.ui.views.ConnectionPointComposite.java

License:Open Source License

protected Composite createControl(Composite parent) {
    Composite main = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginHeight = 0;//  w ww .j a  v  a2  s.  c  om
    layout.marginWidth = 0;
    layout.verticalSpacing = 0;
    main.setLayout(layout);

    Composite top = createTopComposite(main);
    top.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));

    Composite path = createPathComposite(main);
    path.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));

    TreeViewer treeViewer = createTreeViewer(main);
    treeViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    treeViewer.getTree().addDisposeListener(new DisposeListener() {

        public void widgetDisposed(DisposeEvent e) {
            getControlThemerFactory().dispose(fTreeViewer);
        }
    });

    return main;
}

From source file:com.astra.ses.spell.gui.views.HistoryTreePage.java

License:Open Source License

public HistoryTreePage(String procId, Composite parent, HistoryTreeView view) {
    super(parent, SWT.NONE);
    setLayout(new GridLayout(1, true));

    m_model = s_pmgr.getProcedure(procId);

    TreeViewer viewer = new TreeViewer(this);
    viewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));
    viewer.setContentProvider(new HistoryTreeContentProvider());
    viewer.setLabelProvider(new HistoryTreeLabelProvider());
    viewer.setInput(m_model);/*from  w  w w .j ava  2s  .co  m*/
    viewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(DoubleClickEvent event) {
            IStructuredSelection sel = (IStructuredSelection) event.getSelection();
            Object obj = sel.getFirstElement();
            String instanceId = null;
            if (obj instanceof HistoryTreeRootNode) {
                HistoryTreeRootNode node = (HistoryTreeRootNode) obj;
                instanceId = node.getInstanceId();
            } else if (obj instanceof HistoryTreeChildProcedureNode) {
                HistoryTreeChildProcedureNode node = (HistoryTreeChildProcedureNode) obj;
                instanceId = node.getInstanceId();
            }
            if (instanceId != null) {
                if (s_vmgr.containsProcedureView(instanceId)) {
                    s_vmgr.showProcedureView(instanceId);
                } else {
                    HistoryTreeChildProcedureNode node = (HistoryTreeChildProcedureNode) obj;
                    HashMap<String, String> args = new HashMap<String, String>();
                    args.put(OpenProcedureReplay.ARG_ASRUN, node.getAsRunPath());
                    CommandHelper.execute(OpenProcedureReplay.ID, args);
                }
            }
        }
    });
    ColumnViewerToolTipSupport.enableFor(viewer, ToolTip.NO_RECREATE);
    viewer.expandAll();

    MenuManager menuMgr = new MenuManager("#PopupMenu");
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {
            Action exportAsRunTree = new Action() {
                public void run() {
                    HistoryTreePage.this.exportAsRunTree();
                }
            };
            exportAsRunTree.setText("Export ASRUN...");
            manager.add(exportAsRunTree);
        }
    });
    Menu menu = menuMgr.createContextMenu(viewer.getControl());
    viewer.getControl().setMenu(menu);
    view.getSite().registerContextMenu(menuMgr, viewer);
}

From source file:com.baremetalstudios.mapleide.internal.ResourceNavigator.java

License:Open Source License

private void setupContextMenu(final TreeViewer viewer, final Shell shell) {
    MenuManager mgr = new MenuManager();
    viewer.getControl().setMenu(mgr.createContextMenu(viewer.getControl()));

    mgr.setRemoveAllWhenShown(true);/* w  w w.j  a v a  2s  .  c o m*/
    mgr.addMenuListener(new IMenuListener() {

        public void menuAboutToShow(IMenuManager manager) {
            MenuManager mgr = new MenuManager("Import");
            for (IImportResourceService s : serviceRegistry.getImportServices()) {
                final IImportResourceService tmp = s;
                Action a = new Action(s.getLabel()) {
                    public void run() {
                        tmp.importResource(shell, context.createChild());
                    }
                };
                mgr.add(a);
            }

            manager.add(mgr);
        }
    });
}

From source file:com.bdaum.zoom.ui.internal.dialogs.ConfigureColumnsDialog.java

License:Open Source License

@SuppressWarnings("unused")
private TreeViewer createMetaDataGroup(Composite composite) {
    ExpandCollapseGroup expandCollapseGroup = new ExpandCollapseGroup(composite, SWT.NONE);
    new Label(composite, SWT.NONE);
    new Label(composite, SWT.NONE);
    final TreeViewer viewer = new TreeViewer(composite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
    expandCollapseGroup.setViewer(viewer);
    viewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    viewer.setLabelProvider(new MetadataLabelProvider());
    viewer.setContentProvider(new MetadataContentProvider());
    viewer.setComparator(ZViewerComparator.INSTANCE);
    UiUtilities.installDoubleClickExpansion(viewer);
    viewer.addFilter(new ViewerFilter() {
        @Override//  www  . jav a2s .  c o  m
        public boolean select(Viewer aViewer, Object parentElement, Object element) {
            if (element instanceof QueryField) {
                QueryField qfield = (QueryField) element;
                return qfield.hasChildren() || element != QueryField.EXIF_MAKERNOTES && qfield.isUiField()
                        && !columnFields.contains(element);
            }
            return false;
        }
    });
    viewer.setInput(QueryField.ALL);
    viewer.expandToLevel(2);
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            updateButtons();
        }
    });
    return viewer;
}

From source file:com.bdaum.zoom.ui.internal.preferences.MetadataPreferencePage.java

License:Open Source License

private TreeViewer createTolerancesViewer(Composite comp) {
    ExpandCollapseGroup toleranceExpandCollapseGroup = new ExpandCollapseGroup(comp, SWT.NONE);
    final TreeViewer viewer = new TreeViewer(comp,
            SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    viewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    toleranceExpandCollapseGroup.setViewer(viewer);
    viewer.getTree().setLinesVisible(true);
    TreeViewerColumn col1 = new TreeViewerColumn(viewer, SWT.NONE);
    col1.getColumn().setWidth(250);//from   w ww . j av  a2s.c om
    col1.setLabelProvider(new MetadataLabelProvider());
    TreeViewerColumn col2 = new TreeViewerColumn(viewer, SWT.NONE);
    col2.getColumn().setWidth(80);
    final ToleranceLabelProvider labelProvider = new ToleranceLabelProvider();
    col2.setLabelProvider(labelProvider);
    col2.setEditingSupport(new EditingSupport(viewer) {
        @Override
        protected void setValue(Object element, Object value) {
            if (element instanceof QueryField) {
                QueryField qfield = (QueryField) element;
                String key = qfield.getKey();
                String s = String.valueOf(value);
                float v;
                if (s.endsWith("%")) //$NON-NLS-1$
                    v = Integer.parseInt(s.substring(0, s.length() - 1).trim());
                else
                    try {
                        af.setMaximumFractionDigits(8);
                        v = -af.parse(s.trim()).floatValue();
                        if (qfield.getType() == QueryField.T_DATE)
                            v = 1000 * v;
                    } catch (ParseException e) {
                        v = 0f;
                    }
                toleranceMap.put(key, v);
                viewer.update(element, null);
            }
        }

        @Override
        protected Object getValue(Object element) {
            String text = labelProvider.getText(element);
            if (text.endsWith(SEC))
                return text.substring(0, text.length() - SEC.length());
            return text;
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            if (element instanceof QueryField) {
                final int type = ((QueryField) element).getType();
                TextCellEditor editor = new TextCellEditor(viewer.getTree());
                editor.setValidator(new ICellEditorValidator() {
                    public String isValid(Object value) {
                        String s = String.valueOf(value);
                        if (s.endsWith("%")) { //$NON-NLS-1$
                            try {
                                if (Integer.parseInt(s.substring(0, s.length() - 1).trim()) < 0)
                                    return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$
                                if (type == QueryField.T_DATE)
                                    return Messages
                                            .getString("MetadataPreferencePage.percent_not_allowed_for_date"); //$NON-NLS-1$
                                return null;
                            } catch (NumberFormatException e) {
                                return Messages.getString("MetadataPreferencePage.bad_integer"); //$NON-NLS-1$
                            }
                        }
                        if (type == QueryField.T_POSITIVEINTEGER || type == QueryField.T_INTEGER) {
                            try {
                                if (Integer.parseInt(s.substring(0, s.length() - 1).trim()) < 0)
                                    return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$
                                return null;
                            } catch (NumberFormatException e) {
                                return Messages.getString("MetadataPreferencePage.bad_integer"); //$NON-NLS-1$
                            }
                        } else if (type == QueryField.T_POSITIVELONG || type == QueryField.T_LONG) {
                            try {
                                if (Long.parseLong(s.substring(0, s.length() - 1).trim()) < 0)
                                    return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$
                                return null;
                            } catch (NumberFormatException e) {
                                return Messages.getString("MetadataPreferencePage.bad_integer"); //$NON-NLS-1$
                            }
                        }
                        try {
                            af.setMaximumFractionDigits(8);
                            if (af.parse(s.trim()).floatValue() < 0)
                                return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$
                            return null;
                        } catch (ParseException e) {
                            return Messages.getString("MetadataPreferencePage.bad_floating_point"); //$NON-NLS-1$
                        }
                    }
                });
                return editor;
            }
            return null;
        }

        @Override
        protected boolean canEdit(Object element) {
            if (element instanceof QueryField)
                return ((QueryField) element).getTolerance() != 0f;
            return false;
        }
    });
    viewer.setContentProvider(new MetadataContentProvider());
    viewer.setComparator(ZViewerComparator.INSTANCE);
    UiUtilities.installDoubleClickExpansion(viewer);
    viewer.setFilters(new ViewerFilter[] { new ViewerFilter() {
        @Override
        public boolean select(Viewer aViewer, Object parentElement, Object element) {
            if (element instanceof QueryField) {
                QueryField qfield = (QueryField) element;
                return (qfield.hasChildren() || qfield.isUiField())
                        && hostsToleranceValue((QueryField) element);
            }
            return false;
        }

        private boolean hostsToleranceValue(QueryField qfield) {
            if (qfield.getTolerance() != 0f)
                return true;
            for (QueryField child : qfield.getChildren())
                if (hostsToleranceValue(child))
                    return true;
            return false;
        }
    } });
    return viewer;
}

From source file:com.bdaum.zoom.ui.internal.preferences.MetadataPreferencePage.java

License:Open Source License

private void fillViewer(final TreeViewer viewer, final String ess, final int level, boolean force) {
    if (viewer.getInput() == null || force)
        BusyIndicator.showWhile(viewer.getControl().getDisplay(), () -> {
            if (viewer.getInput() == null) {
                viewer.setInput(QueryField.ALL);
                if (level >= 0)
                    viewer.expandToLevel(level);
            }/*from  www .j  a  va2  s . c  o m*/
            StringTokenizer st = new StringTokenizer(ess, "\n"); //$NON-NLS-1$
            if (viewer instanceof CheckboxTreeViewer) {
                List<QueryField> fields = new ArrayList<QueryField>();
                while (st.hasMoreTokens()) {
                    QueryField qfield = QueryField.findQueryField(st.nextToken());
                    if (qfield != null)
                        fields.add(qfield);
                }
                ((CheckboxTreeViewer) viewer).setCheckedElements(fields.toArray());
            } else
                while (st.hasMoreTokens()) {
                    String id = st.nextToken();
                    int p = id.lastIndexOf("="); //$NON-NLS-1$
                    if (p > 0) {
                        try {
                            toleranceMap.put(id.substring(0, p), Float.parseFloat(id.substring(p + 1)));
                        } catch (NumberFormatException e) {
                            // ignore
                        }
                    }
                }
        });
}

From source file:com.binge.workforce.widgets.internal.DrillDownAdapter.java

License:Open Source License

/**
 * Allocates a new DrillDownTreePart./*from  w  w w.  j av  a2s .com*/
 *
 * @param tree the target tree for refocusing
 */
public DrillDownAdapter(TreeViewer tree, IImageService imageService) {
    pool = imageService.getControlPool(tree.getControl());
    fDrillStack = new DrillStack();
    fChildTree = tree;
}

From source file:com.boothen.jsonedit.outline.JsonContentOutlinePage.java

License:Open Source License

/**
 * Updates the outline page.//from  w ww .j a  va  2s. c o m
 */
public void update() {
    TreeViewer viewer = getTreeViewer();

    if (viewer != null) {
        Control control = viewer.getControl();
        if (control != null && !control.isDisposed()) {
            control.setRedraw(false);
            viewer.setInput(fInput);
            control.setRedraw(true);
        }
    }
}

From source file:com.diffplug.common.swt.jface.ViewerMisc.java

License:Apache License

/** Sets an {@link ILazyTreeContentProvider} implemented by the given {@link TreeDef.Parented}. */
@SuppressWarnings("unchecked")
public static <T> void setLazyTreeContentProvider(TreeViewer viewer, TreeDef.Parented<T> treeDef) {
    Preconditions.checkArgument(SwtMisc.flagIsSet(SWT.VIRTUAL, viewer.getControl()),
            "The tree must have SWT.VIRTUAL set.");
    viewer.setUseHashlookup(true);/*from www  . j  a  va2  s.co m*/
    viewer.setContentProvider(new ILazyTreeContentProvider() {
        @Override
        public void dispose() {
        }

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

        @Override
        public void updateElement(Object parent, int index) {
            T child = treeDef.childrenOf((T) parent).get(index);
            viewer.replace(parent, index, child);
            updateChildCount(child, 0);
        }

        @Override
        public void updateChildCount(Object element, int currentChildCount) {
            viewer.setChildCount(element, treeDef.childrenOf((T) element).size());
        }

        @Override
        public Object getParent(Object element) {
            return treeDef.parentOf((T) element);
        }
    });
}

From source file:com.geofx.xmleditor.outline.EditorContentOutlinePage.java

License:Open Source License

/**
 * The editor is saved, so we should refresh representation
 * /*from www. j a va  2 s  . c o m*/
 * @param tableNamePositions
 */
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()) {
            control.setRedraw(false);
            viewer.setInput(input);
            viewer.expandAll();
            control.setRedraw(true);
        }
    }
}