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:net.bioclipse.seneca.actions.EvaluateHandler.java

License:Open Source License

public Object execute(ExecutionEvent event) throws ExecutionException {

    ISelection sel = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection();
    if (!sel.isEmpty()) {
        if (sel instanceof IStructuredSelection) {
            try {
                final IStructuredSelection ssel = (IStructuredSelection) sel;

                final Shell dialog = new Shell(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        SWT.DIALOG_TRIM | SWT.APPLICATION_MODAL);
                dialog.setText("Choose Seneca Job Specification");
                GridLayout layout = new GridLayout();
                dialog.setLayout(layout);
                dialog.setMinimumSize(300, 400);
                layout.numColumns = 2;//from   w  w w . j  av  a 2  s  .c  o  m
                layout.verticalSpacing = 9;

                TreeViewer treeViewer = new TreeViewer(dialog);
                treeViewer.setContentProvider(new SjsFileContentProvider());
                treeViewer.setLabelProvider(new DecoratingLabelProvider(new FolderLabelProvider(),
                        PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
                treeViewer.setUseHashlookup(true);

                // Layout the tree viewer below the text field
                GridData layoutData = new GridData();
                layoutData.grabExcessHorizontalSpace = true;
                layoutData.grabExcessVerticalSpace = true;
                layoutData.horizontalAlignment = GridData.FILL;
                layoutData.verticalAlignment = GridData.FILL;
                layoutData.horizontalSpan = 3;
                final Button ok = new Button(dialog, SWT.PUSH);

                treeViewer.getControl().setLayoutData(layoutData);
                treeViewer.setInput(ResourcesPlugin.getWorkspace().getRoot().findMember("."));
                treeViewer.expandToLevel(2);
                treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {

                    public void selectionChanged(SelectionChangedEvent event) {
                        ISelection sel = event.getSelection();
                        if (sel instanceof IStructuredSelection) {
                            selectedFiles = (IStructuredSelection) sel;
                            try {
                                if (selectedFiles.size() == 1
                                        && selectedFiles.getFirstElement() instanceof IFile
                                        && ((IFile) selectedFiles.getFirstElement()).getName()
                                                .indexOf(".sjs") > -1)
                                    ok.setEnabled(true);
                            } catch (Exception e) {
                                LogUtils.handleException(e, logger, Activator.PLUGIN_ID);
                            }
                        }
                    }
                });
                treeViewer.setSelection(
                        new StructuredSelection(ResourcesPlugin.getWorkspace().getRoot().findMember(".")));
                ok.setText("OK");
                ok.setEnabled(false);
                Button cancel = new Button(dialog, SWT.PUSH);
                cancel.setText("Cancel");
                Listener listener = new Listener() {
                    public void handleEvent(Event event) {
                        if (event.widget == ok) {
                            try {
                                ICDKMolecule mol = net.bioclipse.cdk.business.Activator.getDefault()
                                        .getJavaCDKManager().loadMolecule((IFile) ssel.getFirstElement());
                                mol = (ICDKMolecule) net.bioclipse.cdk.business.Activator.getDefault()
                                        .getJavaCDKManager().removeExplicitHydrogens(mol);
                                mol = (ICDKMolecule) net.bioclipse.cdk.business.Activator.getDefault()
                                        .getJavaCDKManager().addImplicitHydrogens(mol);
                                SenecaJobSpecification sjs = null;
                                sjs = net.bioclipse.seneca.Activator.getDefault().getJavaSenecaManager()
                                        .getJobSpecification(((IFile) selectedFiles.getFirstElement()));
                                JudgeResult result = net.bioclipse.seneca.Activator.getDefault()
                                        .getJavaSenecaManager().evaluateStructure(sjs, mol);
                                MessageDialog.openInformation(dialog, "Scoring Result",
                                        "Overall: " + (result.score / result.maxScore) + " (" + result.score
                                                + "/" + result.maxScore + ").\r\n" + result.scoreDescription);
                            } catch (Exception e) {
                                LogUtils.handleException(e, logger, net.bioclipse.seneca.Activator.PLUGIN_ID);
                            }
                        }
                        dialog.close();
                    }
                };
                ok.addListener(SWT.Selection, listener);
                cancel.addListener(SWT.Selection, listener);
                dialog.pack();
                dialog.open();
            } catch (Exception ex) {
                LogUtils.handleException(ex, logger, Activator.PLUGIN_ID);
            }
        }
    }
    return null;
}

From source file:net.bioclipse.ui.dialogs.WSFileDialog.java

License:Open Source License

protected Control createDialogArea(Composite parent) {
    Composite comp = (Composite) super.createDialogArea(parent);
    getShell().setText(title);//w w  w.  j a v a  2 s  .c o m
    TreeViewer viewer = createViewer(comp);
    GridData data = new GridData(GridData.FILL_BOTH);
    data.grabExcessHorizontalSpace = true;
    data.grabExcessVerticalSpace = true;
    data.heightHint = 400;
    data.widthHint = 300;
    viewer.getControl().setLayoutData(data);
    this.viewer = viewer;
    return comp;
}

From source file:net.openchrom.xxd.processor.supplier.rscripting.ui.editor.REditor.java

License:Open Source License

public void outlineInputChanged(Vector nodesALt, Vector nodesNew) {

    if (contentOutlineViewer != null) {
        /* Store temporary the old expanded elements! */
        expanded = contentOutlineViewer.getExpandedElements();
        TreeViewer viewer = contentOutlineViewer;
        if (viewer != null) {
            Control control = viewer.getControl();
            if (control != null && !control.isDisposed()) {
                control.setRedraw(false);
                /* Create default categories! */
                /* Set the new tree nodes! */
                viewer.setInput(nodesNew);
                /* First item is the file! */
                TreeItem treeItem = contentOutlineViewer.getTree().getItem(0);
                /* Expand to get access to the subnodes! */
                contentOutlineViewer.setExpandedState(treeItem.getData(), true);
                walkTree(treeItem);/*from w  ww.ja v a  2  s . com*/
                /* The default expand level! */
                contentOutlineViewer.expandToLevel(2);
                control.setRedraw(true);
            }
        }
    }
}

From source file:net.refractions.udig.style.sld.editor.internal.EditorDialog.java

License:Open Source License

/**
 * Add the listeners to the tree viewer.
 * @param viewer/*from   w w  w.  j  a  v a  2 s. c o m*/
 * 
 * @since 3.1
 */
protected void addListeners(final TreeViewer viewer) {
    viewer.addPostSelectionChangedListener(new ISelectionChangedListener() {
        private void handleError() {
            try {
                // remove the listener temporarily so that the events caused
                // by the error handling dont further cause error handling
                // to occur.
                viewer.removePostSelectionChangedListener(this);
                showPageFlippingAbortDialog();
                selectCurrentPageAgain();
                clearSelectedNode();
            } finally {
                viewer.addPostSelectionChangedListener(this);
            }
        }

        public void selectionChanged(SelectionChangedEvent event) {
            Object selection = getSingleSelection(event.getSelection());
            if (selection instanceof IEditorNode) {
                if (!isCurrentPageValid()) {
                    handleError();
                } else if (!showPage((IEditorNode) selection)) {
                    // Page flipping wasn't successful
                    handleError();
                } else {
                    // Everything went well
                    lastSuccessfulNode = (IEditorNode) selection;
                }
            }
        }
    });
    ((Tree) viewer.getControl()).addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetDefaultSelected(final SelectionEvent event) {
            ISelection selection = viewer.getSelection();
            if (selection.isEmpty())
                return;
            IEditorNode singleSelection = getSingleSelection(selection);
            boolean expanded = viewer.getExpandedState(singleSelection);
            viewer.setExpandedState(singleSelection, !expanded);
        }
    });
    //Register help listener on the tree to use context sensitive help
    viewer.getControl().addHelpListener(new HelpListener() {
        public void helpRequested(HelpEvent event) {
            // call perform help on the current page
            if (currentPage != null) {
                currentPage.performHelp();
            }
        }
    });
}

From source file:net.refractions.udig.style.sld.editor.internal.FilteredEditorDialog.java

License:Open Source License

@Override
protected Control createTreeAreaContents(Composite parent) {
    Composite leftArea = new Composite(parent, SWT.NONE);
    leftArea.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND));
    leftArea.setFont(parent.getFont());/* ww  w .  ja  va 2s.c  om*/
    GridLayout leftLayout = new GridLayout();
    leftLayout.numColumns = 1;
    leftLayout.marginHeight = 0;
    leftLayout.marginTop = IDialogConstants.VERTICAL_MARGIN;
    leftLayout.marginWidth = 0;
    leftLayout.marginLeft = IDialogConstants.HORIZONTAL_MARGIN;
    leftLayout.horizontalSpacing = 0;
    leftLayout.verticalSpacing = 0;
    leftArea.setLayout(leftLayout);

    // Build the tree an put it into the composite.
    TreeViewer viewer = createTreeViewer(leftArea);
    setTreeViewer(viewer);

    updateTreeFont(JFaceResources.getDialogFont());
    GridData viewerData = new GridData(GridData.FILL_BOTH | GridData.GRAB_VERTICAL);
    viewer.getControl().getParent().setLayoutData(viewerData);

    layoutTreeAreaControl(leftArea);

    return leftArea;
}

From source file:net.sf.eclipsensis.editor.outline.NSISContentOutlinePage.java

License:Open Source License

/**
 * Updates the outline page./*from   w w  w. j a v a2 s .co  m*/
 */
public void update() {
    TreeViewer viewer = getTreeViewer();

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

From source file:net.sf.smbt.btc.editior.gui.GUIToolkit.java

License:LGPL

public TreeViewer createTreeViewer(Composite parent, int styles) {
    TreeViewer viewer = new TreeViewer(parent, styles);
    adapt(viewer.getControl());
    return viewer;
}

From source file:net.sf.wdte.js.ui.internal.outline.JSOutlinePage.java

License:Open Source License

/**
 * Forces the outline page to update its contents.
 */// w w w  . ja va 2s .co  m
public void update() {
    IDocument document = getDocument();
    JSSyntaxModelFactory factory = JSSyntaxModelFactory.getInstance();
    JSElementList model = factory.getContentOutline(document);
    if (model != null) {
        TreeViewer viewer = getTreeViewer();
        if (viewer != null) {
            Control control = viewer.getControl();
            if ((control != null) && !control.isDisposed()) {
                control.setRedraw(false);
                viewer.setInput(model);
                viewer.expandAll();
                control.setRedraw(true);
            }
        }
    }
}

From source file:net.sf.wdte.ui.views.outline.ModelBasedOutlinePage.java

License:Open Source License

/**
 * @see IUpdate#update()// w  w w. j a v a  2 s.  c o m
 */
@Override
public void update() {
    ISourceModel model = editor.getSourceModel();
    if (model != null) {
        TreeViewer viewer = getTreeViewer();
        if (viewer != null) {
            Control control = viewer.getControl();
            if ((control != null) && !control.isDisposed()) {
                control.setRedraw(false);
                viewer.setInput(model);
                viewer.expandAll();
                control.setRedraw(true);
            }
        }
    }
}

From source file:net.sourceforge.sqlexplorer.oracle.actions.explain.ExplainExecution.java

License:Open Source License

private void displayResults(final ExplainNode node, final Query query) {

    getEditor().getSite().getShell().getDisplay().asyncExec(new Runnable() {

        public void run() {

            CTabItem resultsTab = allocateResultsTab(query);

            try {
                Composite composite = resultsTab.getParent();

                GridLayout gLayout = new GridLayout();
                gLayout.numColumns = 2;//from w  w w  .ja va2 s .c o m
                gLayout.marginLeft = 0;
                gLayout.horizontalSpacing = 0;
                gLayout.verticalSpacing = 0;
                gLayout.marginWidth = 0;
                gLayout.marginHeight = 0;
                composite.setLayout(gLayout);

                composite.setData("parenttab", resultsTab.getParent());

                Composite pp = new Composite(composite, SWT.NULL);
                pp.setLayout(new FillLayout());
                pp.setLayoutData(new GridData(GridData.FILL_BOTH));
                TreeViewer tv = new TreeViewer(pp, SWT.BORDER | SWT.FULL_SELECTION);
                Tree table = tv.getTree();
                table.setLinesVisible(true);
                table.setHeaderVisible(true);
                TreeColumn tc = new TreeColumn(table, SWT.NULL);
                tc.setText("");
                tc = new TreeColumn(table, SWT.NULL);
                tc.setText("Cost");
                tc = new TreeColumn(table, SWT.NULL);
                tc.setText("Cardinality");
                TableLayout tableLayout = new TableLayout();
                tableLayout.addColumnData(new ColumnWeightData(6, 150, true));
                tableLayout.addColumnData(new ColumnWeightData(1, 50, true));
                tableLayout.addColumnData(new ColumnWeightData(1, 50, true));
                table.setLayout(tableLayout);

                tv.setContentProvider(new ITreeContentProvider() {

                    public void dispose() {

                    }

                    public Object[] getChildren(Object parentElement) {

                        return ((ExplainNode) parentElement).getChildren();
                    }

                    public Object[] getElements(Object inputElement) {

                        ExplainNode nd = ((ExplainNode) inputElement);

                        return nd.getChildren();
                    }

                    public Object getParent(Object element) {

                        return ((ExplainNode) element).getParent();
                    }

                    public boolean hasChildren(Object element) {

                        if (((ExplainNode) element).getChildren().length > 0)
                            return true;
                        return false;
                    }

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

                    }
                });
                tv.setLabelProvider(new TreeLabelProvider() {
                });
                tv.setInput(node);
                tv.refresh();
                tv.expandAll();

                // make columns full size
                for (int i = 0; i < table.getColumnCount(); i++) {
                    table.getColumn(i).pack();
                }

                /*
                final Composite parent = composite;
                table.addKeyListener(new KeyAdapter() {
                        
                public void keyReleased(KeyEvent e) {
                        
                    switch (e.keyCode) {
                        
                        case SWT.F5:
                        
                            // refresh SQL Results
                            try {
                                Object o = parent.getData("parenttab");
                                if (o != null) {
                                    AbstractSQLExecution sqlExec = (AbstractSQLExecution) ((TabItem) o).getData();
                                    if (sqlExec != null) {
                                        sqlExec.startExecution();
                                    }
                                }
                            } catch (Exception e1) {
                                SQLExplorerPlugin.error("Error refreshing", e1);
                            }
                        
                            break;
                        
                    }
                        
                }
                        
                });*/

                // add context menu to table & cursor
                final ExplainPlanActionGroup actionGroup = new ExplainPlanActionGroup(tv,
                        node.getChildren()[0]);
                MenuManager menuManager = new MenuManager("ExplainPlanContextMenu");
                menuManager.setRemoveAllWhenShown(true);
                Menu contextMenu = menuManager.createContextMenu(table);

                tv.getControl().setMenu(contextMenu);

                menuManager.addMenuListener(new IMenuListener() {

                    public void menuAboutToShow(IMenuManager manager) {
                        actionGroup.fillContextMenu(manager);
                    }
                });

                composite.layout();
                composite.redraw();

            } catch (Exception e) {

                // add message
                if (resultsTab != null) {
                    Composite composite = resultsTab.getParent();
                    String message = e.getMessage();
                    Label errorLabel = new Label(composite, SWT.FILL);
                    errorLabel.setText(message);
                    errorLabel.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));
                }

                SQLExplorerPlugin.error("Error creating explain tab", e);
            }

        };
    });
}