List of usage examples for org.eclipse.jface.viewers TreeViewer getExpandedState
public boolean getExpandedState(Object elementOrTreePath)
From source file:org.wso2.developerstudio.appfactory.ui.views.AppfactoryApplicationListView.java
License:Open Source License
public void createPartControl(Composite parent) { // this.parent = parent; contentProvider = new AppListContentProvider(appLists); labelProvider = new AppListLabelProvider(); createToolbar();//from w w w .j av a2s . com model = new AppListModel(); viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL); viewer.setContentProvider(contentProvider); viewer.setLabelProvider(labelProvider); viewer.setInput(model); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { try { final IStructuredSelection selection = (IStructuredSelection) viewer.getSelection(); Object selectedNode = selection.getFirstElement(); ApplicationInfo appInfo = null; if (selectedNode instanceof ApplicationInfo) { appInfo = (ApplicationInfo) selection.getFirstElement(); } else if (selectedNode instanceof AppVersionGroup) { appInfo = ((AppVersionGroup) selection.getFirstElement()).getApplication(); } else if (selectedNode instanceof AppVersionInfo) { appInfo = ((AppVersionInfo) selection.getFirstElement()).getVersionGroup().getApplication(); } appDetailView.clear(); if (!appInfo.getappVersionList().isEmpty()) { appDetailView.updateView(appInfo); } } catch (Throwable e) { /*safe to ignore*/ } } }); viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { try { TreeViewer viewer = (TreeViewer) event.getViewer(); IStructuredSelection thisSelection = (IStructuredSelection) event.getSelection(); Object selectedNode = thisSelection.getFirstElement(); if (selectedNode instanceof AppVersionInfo) { viewer.setExpandedState(selectedNode, !viewer.getExpandedState(selectedNode)); } else if (selectedNode instanceof AppVersionGroup) { viewer.setExpandedState(selectedNode, !viewer.getExpandedState(selectedNode)); } else if (selectedNode instanceof ApplicationInfo) { ApplicationInfo appInfo = (ApplicationInfo) selectedNode; if (appInfo.isLoaded()) { viewer.setExpandedState(selectedNode, !viewer.getExpandedState(selectedNode)); } else { getAppVersions(appInfo); getDataSources(appInfo); } } } catch (Throwable e) { /*safe to ignore*/ } } }); menuMgr = new MenuManager(); Menu menu = menuMgr.createContextMenu(viewer.getControl()); menu.setVisible(true); menuMgr.addMenuListener(new IMenuListener() { @Override public void menuAboutToShow(final IMenuManager manager) { try { if (viewer.getSelection().isEmpty()) { return; } if (viewer.getSelection() instanceof IStructuredSelection) { IStructuredSelection selection = (IStructuredSelection) viewer.getSelection(); if (selection.getFirstElement() instanceof AppVersionInfo) { final AppVersionInfo appVersionInfo = (AppVersionInfo) selection.getFirstElement(); manager.add(checkOutAndImportAction(appVersionInfo)); manager.add(importAction(appVersionInfo)); manager.add(checkOutAction(appVersionInfo)); manager.add(buildAction(appVersionInfo)); if (!appVersionInfo.isForkedVersion()) { manager.add(repoDeployAction(appVersionInfo)); } manager.add(buildInfoAction(appVersionInfo)); } else if (selection.getFirstElement() instanceof ApplicationInfo) { ApplicationInfo appInfo = (ApplicationInfo) selection.getFirstElement(); String title = ""; //$NON-NLS-1$ if (appInfo.getappVersionList().isEmpty()) { title = "Open "; //$NON-NLS-1$ } else { title = "Update"; //$NON-NLS-1$ } manager.add(appOpenAction(appInfo, title)); manager.add(mainRepoSettingsAction(appInfo)); manager.add(forkedRepoSettingsAction(appInfo)); } else if (selection.getFirstElement() instanceof AppVersionGroup) { // AppVersionGroup group = (AppVersionGroup) selection.getFirstElement(); // TODO } } } catch (Throwable e) { /*safe to ignore*/ } } }); menuMgr.setRemoveAllWhenShown(true); viewer.getControl().setMenu(menu); updateApplicationView(); }
From source file:org.xmind.ui.internal.wizards.ChooseLocationInFileSystemWizardPage.java
License:Open Source License
private void createFolderViewer(Composite parent) { Label label = new Label(parent, SWT.NONE); label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); label.setText(WizardMessages.NewPage_SelectParent_label); final TreeViewer folderViewer = new TreeViewer(parent, SWT.BORDER | SWT.SINGLE); folderViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); folderViewer.setContentProvider(new FolderContentProvider()); folderViewer.setLabelProvider(new FolderLabelProvider()); folderViewer.setComparator(new ViewerComparator()); folderViewer.setUseHashlookup(true); folderViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); folderSelectionChanged((File) selection.getFirstElement()); }/*from w ww .j a v a2 s . c o m*/ }); folderViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { ISelection selection = event.getSelection(); if (selection instanceof IStructuredSelection) { Object item = ((IStructuredSelection) selection).getFirstElement(); if (item == null) { return; } if (folderViewer.getExpandedState(item)) { folderViewer.collapseToLevel(item, 1); } else { folderViewer.expandToLevel(item, 1); } } } }); addInputControl(folderViewer.getTree()); parent.getDisplay().asyncExec(new Runnable() { public void run() { if (folderViewer.getControl().isDisposed()) return; folderViewer.setInput(File.listRoots()); File homeDir = new File(System.getProperty("user.home")); //$NON-NLS-1$ folderViewer.setSelection(new StructuredSelection(homeDir), true); folderViewer.setExpandedState(homeDir, true); updateButtonStates(); } }); }
From source file:org.xmind.ui.internal.wizards.ChooseLocationInWorkspaceWizardPage.java
License:Open Source License
private void createContainerViewer(Composite parent) { Label label = new Label(parent, SWT.NONE); label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); label.setText(WizardMessages.NewPage_SelectParent_label); final TreeViewer containerViewer = new TreeViewer(parent, SWT.BORDER | SWT.SINGLE); containerViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); containerViewer.setContentProvider(new ContainerContentProvider()); containerViewer.setLabelProvider(WorkbenchLabelProvider.getDecoratingWorkbenchLabelProvider()); containerViewer.setComparator(new ViewerComparator()); containerViewer.setUseHashlookup(true); containerViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); containerSelectionChanged((IContainer) selection.getFirstElement()); // allow null }//from www . j a va2s . c o m }); containerViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { ISelection selection = event.getSelection(); if (selection instanceof IStructuredSelection) { Object item = ((IStructuredSelection) selection).getFirstElement(); if (item == null) { return; } if (containerViewer.getExpandedState(item)) { containerViewer.collapseToLevel(item, 1); } else { containerViewer.expandToLevel(item, 1); } } } }); addInputControl(containerViewer.getTree()); parent.getDisplay().asyncExec(new Runnable() { public void run() { containerViewer.setInput(ResourcesPlugin.getWorkspace()); if (selectedContainer != null) { containerViewer.setSelection(new StructuredSelection(selectedContainer), true); } updateButtonStates(); } }); }
From source file:org.zamia.plugin.views.navigator.OpenFileAction.java
License:Open Source License
public void run() { fillSelections();// w ww . ja v a2 s . com if (fFileSelected.size() > 0) { IFile file = fFileSelected.get(0); try { IDE.openEditor(fPage, file); } catch (Exception e) { el.logException(e); } } else if (fIGWrappersSelected.size() > 0) { IGModuleWrapper wrapper = fIGWrappersSelected.iterator().next(); ZamiaProject zprj = wrapper.getZPrj(); IProject prj = ZamiaProjectMap.getProject(zprj); SourceLocation location = wrapper.getLocation(); if (location == null) { logger.error("OpenFileAction: wrapper doesn't give me a location: %s", wrapper); return; } IEditorPart editPart = ZamiaPlugin.showSource(fPage, prj, location, 0); if (editPart instanceof ZamiaEditor) { ZamiaEditor editor = (ZamiaEditor) editPart; ToplevelPath path = wrapper.getEditorPath(); if (path != null) { //editor.setPath(wrapper.isBlueIG() ? path : path.getParent()); editor.setPath(path); } } } else if (fRTLWrappersSelected.size() > 0) { RTLModuleWrapper wrapper = fRTLWrappersSelected.iterator().next(); DMUID dmuid = wrapper.getDMUID(); ZamiaProject zprj = wrapper.getZPrj(); RTLManager manager = zprj.getRTLM(); Toplevel tl = new Toplevel(dmuid, null); RTLModule rtlm = manager.findModule(tl); ; RTLView rtlv = ZamiaPlugin.showRTLView(); rtlv.setRTLModule(rtlm); } else if (fContainersSelected.size() > 0) { if (this.fProvider instanceof TreeViewer) { TreeViewer viewer = (TreeViewer) this.fProvider; for (Object container : fContainersSelected) { if (viewer.isExpandable(container)) { viewer.setExpandedState(container, !viewer.getExpandedState(container)); } } } } }
From source file:rabbit.ui.internal.MetricsPanel.java
License:Apache License
/** * Creates the content.// w ww . java 2 s. c o m * * @param parent The parent composite. */ public void createContents(Composite parent) { int style = SWT.SINGLE | SWT.V_SCROLL | SWT.H_SCROLL; final TreeViewer viewer = new TreeViewer(parent, style); ColumnViewerToolTipSupport.enableFor(viewer, ToolTip.NO_RECREATE); viewer.setContentProvider(new PageDescriptorContentProvider()); viewer.setComparator(new ViewerComparator()); viewer.setLabelProvider(new PageDescriptorLabelProvider()); viewer.getTree().addListener(SWT.MeasureItem, new Listener() { @Override public void handleEvent(Event event) { event.height = (event.height < 20) ? 20 : event.height; } }); viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent e) { IStructuredSelection select = (IStructuredSelection) e.getSelection(); Object o = select.getFirstElement(); if (((ITreeContentProvider) viewer.getContentProvider()).hasChildren(o)) { viewer.setExpandedState(o, !viewer.getExpandedState(o)); } } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { ISelection selection = event.getSelection(); if (selection instanceof IStructuredSelection) { Object element = ((IStructuredSelection) selection).getFirstElement(); if (element != null && element instanceof PageDescriptor) { view.display(((PageDescriptor) element).getPage()); } } } }); viewer.setInput(RabbitUI.getDefault().loadRootPages()); viewer.expandAll(); }
From source file:rabbit.ui.internal.viewers.Viewers.java
License:Apache License
/** * Configures the given viewer to expand/collapse an tree branch when double * clicked on the item./*from w ww .j a v a 2 s.co m*/ */ private static void expandOnDoubleClick(final TreeViewer viewer) { viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent e) { if (!(e.getSelection() instanceof ITreeSelection)) { return; } ITreeSelection selection = (ITreeSelection) e.getSelection(); TreePath[] paths = selection.getPaths(); if (paths != null && paths.length > 0) { viewer.setExpandedState(paths[0], !viewer.getExpandedState(paths[0])); } } }); }
From source file:scouter.client.views.WorkspaceExplorer.java
License:Apache License
public void createPartControl(Composite parent) { viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL); viewer.setContentProvider(new WorkspaceContentProvider()); viewer.setLabelProvider(new WorkspaceLabelProvider()); viewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); Object element = selection.getFirstElement(); if (element != null && element instanceof File && ((File) element).isFile()) { File selectedFile = (File) element; openFile(selectedFile);/* w w w . ja v a 2 s .co m*/ } else if (element != null && element instanceof File && ((File) element).isDirectory()) { TreeViewer viewer = (TreeViewer) event.getViewer(); IStructuredSelection thisSelection = (IStructuredSelection) event.getSelection(); Object selectedNode = thisSelection.getFirstElement(); viewer.setExpandedState(selectedNode, !viewer.getExpandedState(selectedNode)); } } }); viewer.getTree().addKeyListener(new KeyAdapter() { public void keyPressed(KeyEvent e) { if (e.stateMask == SWT.CTRL) { if (e.keyCode == 'c' || e.keyCode == 'C') { new CopySelectedFilesAction().run(); } } } }); viewer.setInput(sortDirectoriesAndFiles(workingDir.listFiles(new ContentFilter()))); fillTreeViewerCoolbar(); createContextMenu(viewer, new IMenuListener() { public void menuAboutToShow(IMenuManager manager) { fillTreeViewerContextMenu(manager); } }); }
From source file:uk.co.dancowan.robots.ui.views.filebrowser.FileBrowserView.java
License:Open Source License
/** * @see uk.co.dancowan.robots.ui.views.ScrolledView#getPartControl(org.eclipse.swt.widgets.Composite) *//*from w w w. j av a2 s .co m*/ @Override public Control getPartControl(Composite parent) { final Composite part = new Composite(parent, SWT.NONE); part.setLayout(new FillLayout()); final TreeViewer viewer = new TreeViewer(part, SWT.FULL_SELECTION); viewer.setContentProvider(new FileSystemContentProvider()); viewer.setLabelProvider(new FileSystemLabelProvider()); viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); Object obj = selection.getFirstElement(); if (obj instanceof File) { File file = (File) obj; if (!file.isDirectory()) { FileUtils.openFile(file); } else { viewer.setExpandedState(obj, !viewer.getExpandedState(obj)); } } } }); IPreferenceStore store = Activator.getDefault().getPreferenceStore(); String root = store.getString(PreferenceConstants.FILE_BROWSER_ROOT); viewer.setInput(new File(root)); return part; }
From source file:zigen.plugin.db.ui.views.TreeDoubleClickHandler.java
License:Open Source License
private void changeExpandedState(TreeViewer viewer, TreeNode element) { if (!viewer.getExpandedState(element)) { viewer.expandToLevel(element, 1); if (element instanceof Schema) { Schema schema = (Schema) element; if (!schema.isExpanded()) { schema.setExpanded(true); TableTypeSearchJob job = new TableTypeSearchJob(viewer, schema); job.setPriority(TableTypeSearchJob.SHORT); job.setUser(showDialog); job.schedule();/*from w w w . ja va2 s. co m*/ } } else if (element instanceof Folder) { Folder folder = (Folder) element; if (!folder.isExpanded()) { folder.setExpanded(true); Schema schema = folder.getSchema(); if (schema != null) { switch (DBType.getType(schema.getDbConfig())) { case DBType.DB_TYPE_ORACLE: if (schema != null) { if ("TABLE".equals(folder.getName())) { return; } else if ("SEQUENCE".equals(folder.getName())) { //$NON-NLS-1$ OracleSequeceSearchJob job = new OracleSequeceSearchJob(viewer, folder); job.setPriority(OracleSequeceSearchJob.SHORT); job.setUser(showDialog); job.schedule(); return; } else if ("VIEW".equals(folder.getName())) { //$NON-NLS-1$ System.out.println("changeExpandedState!!"); RefreshFolderJob job = new RefreshFolderJob(viewer, folder); job.setPriority(OracleSequeceSearchJob.SHORT); job.setUser(showDialog); job.schedule(); return; } else { String[] sTypes = schema.getSourceType(); if (sTypes != null) { for (int i = 0; i < sTypes.length; i++) { String stype = sTypes[i]; if (stype.equals(folder.getName())) { OracleSourceSearchJob job = new OracleSourceSearchJob(viewer, folder); job.setPriority(OracleSourceSearchJob.SHORT); job.setUser(showDialog); job.schedule(); return; } } } } } default: RefreshFolderJob job = new RefreshFolderJob(viewer, folder); job.setPriority(RefreshFolderJob.SHORT); job.setUser(showDialog); job.schedule(); break; } } } } } else { viewer.collapseToLevel(element, 1); } }