List of usage examples for org.eclipse.jface.viewers TreeViewer getControl
@Override
public Control getControl()
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)); }