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:org.eclipse.dltk.internal.ui.scriptview.ScriptExplorerActionGroup.java

License:Open Source License

protected void doWorkingSetChanged(PropertyChangeEvent event) {
    if (ViewActionGroup.MODE_CHANGED.equals(event.getProperty())) {
        fPart.rootModeChanged(((Integer) event.getNewValue()).intValue());
        Object oldInput = null;/*  w ww . java2  s.co m*/
        Object newInput = null;
        if (fPart.getRootMode() == ScriptExplorerPart.PROJECTS_AS_ROOTS) {
            oldInput = fPart.getWorkingSetModel();
            newInput = DLTKCore.create(ResourcesPlugin.getWorkspace().getRoot());
        } else if (fPart.getRootMode() == ScriptExplorerPart.WORKING_SETS_AS_ROOTS) {
            oldInput = DLTKCore.create(ResourcesPlugin.getWorkspace().getRoot());
            newInput = fPart.getWorkingSetModel();
        }
        if (oldInput != null && newInput != null) {
            Frame frame;
            for (int i = 0; (frame = fFrameList.getFrame(i)) != null; i++) {
                if (frame instanceof TreeFrame) {
                    TreeFrame treeFrame = (TreeFrame) frame;
                    if (oldInput.equals(treeFrame.getInput()))
                        treeFrame.setInput(newInput);
                }
            }
        }
    } else {
        IWorkingSet workingSet = (IWorkingSet) event.getNewValue();

        String workingSetLabel = null;
        if (workingSet != null)
            workingSetLabel = workingSet.getLabel();
        fPart.setWorkingSetLabel(workingSetLabel);
        fPart.updateTitle();

        String property = event.getProperty();
        if (IWorkingSetManager.CHANGE_WORKING_SET_CONTENT_CHANGE.equals(property)) {
            TreeViewer viewer = fPart.getTreeViewer();
            viewer.getControl().setRedraw(false);
            viewer.refresh();
            viewer.getControl().setRedraw(true);
        }
    }
}

From source file:org.eclipse.dltk.mod.internal.ui.scriptview.ScriptExplorerActionGroup.java

License:Open Source License

private void doWorkingSetChanged(PropertyChangeEvent event) {
    if (ViewActionGroup.MODE_CHANGED.equals(event.getProperty())) {
        fPart.rootModeChanged(((Integer) event.getNewValue()).intValue());
        Object oldInput = null;//from   w  w w  .jav a  2s.  c o m
        Object newInput = null;
        if (fPart.getRootMode() == ScriptExplorerPart.PROJECTS_AS_ROOTS) {
            oldInput = fPart.getWorkingSetModel();
            newInput = DLTKCore.create(ResourcesPlugin.getWorkspace().getRoot());
        } else if (fPart.getRootMode() == ScriptExplorerPart.WORKING_SETS_AS_ROOTS) {
            oldInput = DLTKCore.create(ResourcesPlugin.getWorkspace().getRoot());
            newInput = fPart.getWorkingSetModel();
        }
        if (oldInput != null && newInput != null) {
            Frame frame;
            for (int i = 0; (frame = fFrameList.getFrame(i)) != null; i++) {
                if (frame instanceof TreeFrame) {
                    TreeFrame treeFrame = (TreeFrame) frame;
                    if (oldInput.equals(treeFrame.getInput()))
                        treeFrame.setInput(newInput);
                }
            }
        }
    } else {
        IWorkingSet workingSet = (IWorkingSet) event.getNewValue();

        String workingSetLabel = null;
        if (workingSet != null)
            workingSetLabel = workingSet.getLabel();
        fPart.setWorkingSetLabel(workingSetLabel);
        fPart.updateTitle();

        String property = event.getProperty();
        if (IWorkingSetManager.CHANGE_WORKING_SET_CONTENT_CHANGE.equals(property)) {
            TreeViewer viewer = fPart.getTreeViewer();
            viewer.getControl().setRedraw(false);
            viewer.refresh();
            viewer.getControl().setRedraw(true);
        }
    }
}

From source file:org.eclipse.e4.demio.views.nav.MainActionGroup.java

License:Open Source License

/**
 * Makes the sub action groups.//from   ww  w .j  ava2 s.  com
 */
protected void makeSubGroups() {
    gotoGroup = new GotoActionGroup(navigator);
    openGroup = new OpenActionGroup(navigator);
    refactorGroup = new RefactorActionGroup(navigator);
    IPropertyChangeListener workingSetUpdater = new IPropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent event) {
            String property = event.getProperty();

            if (WorkingSetFilterActionGroup.CHANGE_WORKING_SET.equals(property)) {
                IResourceNavigator navigator = getNavigator();
                Object newValue = event.getNewValue();

                if (newValue instanceof IWorkingSet) {
                    navigator.setWorkingSet((IWorkingSet) newValue);
                } else if (newValue == null) {
                    navigator.setWorkingSet(null);
                }
            }
        }
    };
    TreeViewer treeView = navigator.getViewer();
    Shell shell = treeView.getControl().getShell();
    workingSetGroup = new WorkingSetFilterActionGroup(shell, workingSetUpdater);
    workingSetGroup.setWorkingSet(navigator.getWorkingSet());
    sortAndFilterGroup = new SortAndFilterActionGroup(navigator);
    workspaceGroup = new WorkspaceActionGroup(navigator);
    IUndoContext workspaceContext = (IUndoContext) ResourcesPlugin.getWorkspace()
            .getAdapter(IUndoContext.class);
    undoRedoGroup = new UndoRedoActionGroup(getNavigator().getSite(), workspaceContext, true);

}

From source file:org.eclipse.e4.demio.views.nav.ResourceNavigator.java

License:Open Source License

/**
 * Adds the listeners to the viewer.//w  w  w.ja v a2 s. c om
 * 
 * @param viewer the viewer
 * @since 2.0
 */
protected void initListeners(final TreeViewer viewer) {
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            handleSelectionChanged(event);
        }
    });
    viewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            handleDoubleClick(event);
        }
    });

    openAndLinkWithEditorHelper = new OpenAndLinkWithEditorHelper(viewer) {
        protected void activate(ISelection selection) {
            Object selectedElement = getSingleElement(selection);
            if (selectedElement instanceof IFile) {
                IEditorInput input = new FileEditorInput((IFile) selectedElement);
                final IWorkbenchPage page = getSite().getPage();
                IEditorPart editor = page.findEditor(input);
                if (editor != null) {
                    page.activate(editor);
                }
            }

        }

        protected void linkToEditor(ISelection selection) {
            if (!linkScheduled) {
                // Ensure that if another selection change arrives while we're waiting for the *syncExec,
                // we only do this work once.
                linkScheduled = true;
                getSite().getShell().getDisplay().asyncExec(new Runnable() {
                    public void run() {
                        // There's no telling what might have changed since the syncExec was scheduled.
                        // Check to make sure that the widgets haven't been disposed.
                        linkScheduled = false;

                        if (viewer == null || viewer.getControl() == null || viewer.getControl().isDisposed()) {
                            return;
                        }

                        if (dragDetected == false) {
                            // only synchronize with editor when the selection is not the result
                            // of a drag. Fixes bug 22274.
                            ResourceNavigator.this.linkToEditor(viewer.getSelection());
                        }
                    }
                });
            }
        }

        protected void open(ISelection selection, boolean activate) {
            handleOpen(selection);
        }

    };

    viewer.getControl().addKeyListener(new KeyListener() {
        public void keyPressed(KeyEvent event) {
            handleKeyPressed(event);
        }

        public void keyReleased(KeyEvent event) {
            handleKeyReleased(event);
        }
    });

    openAndLinkWithEditorHelper.setLinkWithEditor(linkingEnabled);
}

From source file:org.eclipse.e4.demio.views.nav.ResourceNavigator.java

License:Open Source License

/**
 * Adds drag and drop support to the navigator.
 * //from   w  w  w. j a v a  2  s.c o  m
 * @since 2.0
 */
protected void initDragAndDrop() {
    int ops = DND.DROP_COPY | DND.DROP_MOVE;
    Transfer[] transfers = new Transfer[] { LocalSelectionTransfer.getInstance(),
            ResourceTransfer.getInstance(), FileTransfer.getInstance(), PluginTransfer.getInstance() };
    TreeViewer viewer = getTreeViewer();
    viewer.addDragSupport(ops, transfers, new NavigatorDragAdapter(viewer));
    NavigatorDropAdapter adapter = new NavigatorDropAdapter(viewer);
    adapter.setFeedbackEnabled(false);
    viewer.addDropSupport(ops | DND.DROP_DEFAULT, transfers, adapter);
    dragDetectListener = new Listener() {
        public void handleEvent(Event event) {
            dragDetected = true;
        }
    };
    viewer.getControl().addListener(SWT.DragDetect, dragDetectListener);
}

From source file:org.eclipse.e4.demio.views.nav.ResourceNavigator.java

License:Open Source License

/**
 * Sets the resource sorter./* ww  w  . j a v a2s.  c om*/
 * 
 * @param sorter the resource sorter
 * @since 2.0
 * @deprecated as of 3.3, use {@link ResourceNavigator#setComparator(ResourceComparator)}
 */
public void setSorter(ResourceSorter sorter) {
    TreeViewer viewer = getTreeViewer();
    ViewerSorter viewerSorter = viewer.getSorter();

    viewer.getControl().setRedraw(false);
    if (viewerSorter == sorter) {
        viewer.refresh();
    } else {
        viewer.setSorter(sorter);
    }
    viewer.getControl().setRedraw(true);
    settings.put(STORE_SORT_TYPE, sorter.getCriteria());

    // update the sort actions' checked state
    updateActionBars((IStructuredSelection) viewer.getSelection());
}

From source file:org.eclipse.e4.demio.views.nav.ResourceNavigator.java

License:Open Source License

/**
 * Sets the resource comparator/*  w ww . j  av a 2s.c o  m*/
 * 
 * @param comparator the resource comparator
 * @since 3.3
 */
public void setComparator(ResourceComparator comparator) {
    TreeViewer viewer = getTreeViewer();
    ViewerComparator viewerComparator = viewer.getComparator();

    viewer.getControl().setRedraw(false);
    if (viewerComparator == comparator) {
        viewer.refresh();
    } else {
        viewer.setComparator(comparator);
    }
    viewer.getControl().setRedraw(true);
    settings.put(STORE_SORT_TYPE, comparator.getCriteria());

    // update the sort actions' checked state
    updateActionBars((IStructuredSelection) viewer.getSelection());
}

From source file:org.eclipse.e4.demio.views.nav.WorkspaceActionGroup.java

License:Open Source License

protected void makeActions() {
    final IShellProvider provider = navigator.getSite();
    openProjectAction = new OpenResourceAction(provider);
    closeProjectAction = new CloseResourceAction(provider);
    closeUnrelatedProjectsAction = new CloseUnrelatedProjectsAction(provider);
    refreshAction = new RefreshAction(provider) {
        public void run() {
            final IStatus[] errorStatus = new IStatus[1];
            errorStatus[0] = Status.OK_STATUS;
            final WorkspaceModifyOperation op = (WorkspaceModifyOperation) createOperation(errorStatus);
            WorkspaceJob job = new WorkspaceJob("refresh") { //$NON-NLS-1$

                public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException {
                    try {
                        op.run(monitor);
                        Shell shell = provider.getShell();
                        if (shell != null && !shell.isDisposed()) {
                            shell.getDisplay().asyncExec(new Runnable() {
                                public void run() {
                                    TreeViewer viewer = navigator.getViewer();
                                    if (viewer != null && viewer.getControl() != null
                                            && !viewer.getControl().isDisposed()) {
                                        viewer.refresh();
                                    }/*from  w  ww.ja v a 2 s  .co  m*/
                                }
                            });
                        }
                    } catch (InvocationTargetException e) {
                        String msg = NLS.bind(IDEWorkbenchMessages.WorkspaceAction_logTitle,
                                getClass().getName(), e.getTargetException());
                        throw new CoreException(
                                StatusUtil.newStatus(IStatus.ERROR, msg, e.getTargetException()));
                    } catch (InterruptedException e) {
                        return Status.CANCEL_STATUS;
                    }
                    return errorStatus[0];
                }

            };
            ISchedulingRule rule = op.getRule();
            if (rule != null) {
                job.setRule(rule);
            }
            job.setUser(true);
            job.schedule();
        }
    };
    refreshAction.setDisabledImageDescriptor(getImageDescriptor("dlcl16/refresh_nav.gif"));//$NON-NLS-1$
    refreshAction.setImageDescriptor(getImageDescriptor("elcl16/refresh_nav.gif"));//$NON-NLS-1$   
    buildAction = new BuildAction(provider, IncrementalProjectBuilder.INCREMENTAL_BUILD);
}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.AddonsEditor.java

License:Open Source License

private void createInstanceInspection(CTabFolder folder) {
    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_RuntimeContributionInstance);
    Composite container = new Composite(folder, SWT.NONE);
    container.setLayout(new GridLayout());
    item.setControl(container);/*from w w  w.j a  v  a  2s .c  om*/

    ObjectViewer objectViewer = new ObjectViewer();
    TreeViewer viewer = objectViewer.createViewer(container,
            ApplicationPackageImpl.Literals.CONTRIBUTION__OBJECT, getMaster(), resourcePool, Messages);
    viewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));

}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.ApplicationEditor.java

License:Open Source License

private void createUITreeInspection(CTabFolder folder) {
    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_RuntimeWidgetTree);
    Composite container = new Composite(folder, SWT.NONE);
    container.setLayout(new GridLayout());
    item.setControl(container);// w w  w. j  a v a2s. c  o m

    UIViewer objectViewer = new UIViewer();
    TreeViewer viewer = objectViewer.createViewer(container, UiPackageImpl.Literals.UI_ELEMENT__WIDGET,
            getMaster(), resourcePool, Messages);
    viewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));
}