类org.eclipse.ui.navigator.CommonViewer源码实例Demo

下面列出了怎么用org.eclipse.ui.navigator.CommonViewer的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: codewind-eclipse   文件: ViewHelper.java

public static void expandConnection(CodewindConnection connection) {
	if (connection == null) {
		return;
	}
	List<CodewindApplication> apps = connection.getApps();
	if (!apps.isEmpty()) {
		Display.getDefault().asyncExec(new Runnable() {
            @Override
            public void run() {
				IViewPart view = getViewPart(CodewindExplorerView.VIEW_ID);
				if (view instanceof CommonNavigator) {
					CommonViewer viewer = ((CommonNavigator)view).getCommonViewer();
			
					if (!viewer.getExpandedState(connection)) {
						viewer.expandToLevel(AbstractTreeViewer.ALL_LEVELS);
					}
	            }
 			}
		});
	}
}
 
源代码2 项目: codewind-eclipse   文件: ViewHelper.java

public static void toggleExpansion(Object element) {
	final Object obj = element == null ? CodewindManager.getManager() : element;
	Display.getDefault().asyncExec(new Runnable() {
           @Override
           public void run() {
			IViewPart view = getViewPart(CodewindExplorerView.VIEW_ID);
			if (view instanceof CommonNavigator) {
				CommonViewer viewer = ((CommonNavigator)view).getCommonViewer();
		
				if (!viewer.getExpandedState(obj)) {
					viewer.expandToLevel(obj, AbstractTreeViewer.ALL_LEVELS);
				} else {
					viewer.collapseToLevel(obj, AbstractTreeViewer.ALL_LEVELS);
				}
            }
			}
	});
}
 
源代码3 项目: spotbugs   文件: BugExplorerView.java

@Override
public void markerSelected(IWorkbenchPart part, IMarker marker) {
    if (selectionInProgress) {
        return;
    }
    BugContentProvider provider = BugContentProvider.getProvider(getNavigatorContentService());
    CommonViewer commonViewer = getCommonViewer();
    if (marker == null) {
        commonViewer.setSelection(new StructuredSelection(), false);
    } else if (provider.isFiltered(marker)) {
        Object parent = provider.getParent(marker);
        if (parent != null) {
            commonViewer.setSelection(new StructuredSelection(parent), true);
        }
    } else {
        commonViewer.setSelection(new StructuredSelection(marker), true);
    }
}
 
源代码4 项目: spotbugs   文件: OpenGroupDialogAction.java

@Override
public void run(IAction action) {
    if (navigator == null) {
        return;
    }
    BugContentProvider provider = BugContentProvider.getProvider(navigator.getNavigatorContentService());
    List<GroupType> list = provider.getGrouping().asList();
    GroupSelectionDialog dialog = new GroupSelectionDialog(navigator.getSite().getShell(), list);
    dialog.setTitle("Bug Group Configuration");
    int result = dialog.open();
    if (result != Window.OK) {
        return;
    }
    Grouping grouping = Grouping.createFrom(dialog.getGroups());
    provider.setGrouping(grouping);
    CommonViewer viewer = navigator.getCommonViewer();
    Object[] expandedElements = viewer.getExpandedElements();
    provider.reSetInput();
    viewer.setExpandedElements(expandedElements);
}
 
源代码5 项目: spotbugs   文件: FilterBugsDialogAction.java

@Override
public void run(IAction action) {
    if (navigator == null) {
        return;
    }
    Set<BugPattern> filtered = FindbugsPlugin.getFilteredPatterns();
    Set<BugCode> filteredTypes = FindbugsPlugin.getFilteredPatternTypes();
    FilterBugsDialog dialog = new FilterBugsDialog(navigator.getSite().getShell(), filtered, filteredTypes);
    dialog.setTitle("Bug Filter Configuration");
    int result = dialog.open();
    if (result != Window.OK) {
        return;
    }
    String selectedIds = dialog.getSelectedIds();

    FindbugsPlugin.getDefault().getPreferenceStore().setValue(FindBugsConstants.LAST_USED_EXPORT_FILTER, selectedIds);

    BugContentProvider provider = BugContentProvider.getProvider(navigator.getNavigatorContentService());
    provider.refreshFilters();
    CommonViewer viewer = navigator.getCommonViewer();
    Object[] expandedElements = viewer.getExpandedElements();
    viewer.refresh(true);
    viewer.setExpandedElements(expandedElements);
}
 
源代码6 项目: spotbugs   文件: RefreshAction.java

@Override
public void run(IAction action) {
    if (navigator != null) {
        CommonViewer viewer = navigator.getCommonViewer();
        BugContentProvider provider = BugContentProvider.getProvider(navigator.getNavigatorContentService());
        // provider.setRefreshRequested(true);

        Object[] expandedElements = viewer.getExpandedElements();
        Object input = viewer.getInput();
        if (provider.getChildren(input).length == 0) {
            viewer.setInput(null);
            if (input instanceof IWorkingSet || input instanceof IWorkspaceRoot) {
                viewer.setInput(input);
            } else {
                viewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
            }
            viewer.refresh(true);
        } else {
            provider.reSetInput();
        }
        viewer.setExpandedElements(expandedElements);
    }
}
 
源代码7 项目: spotbugs   文件: GroupByAction.java

@Override
public void run(IAction action) {
    if (navigator == null) {
        return;
    }
    Grouping grouping = getGrouping(action.getId());
    if (grouping == null) {
        return;
    }
    BugContentProvider provider = BugContentProvider.getProvider(navigator.getNavigatorContentService());
    provider.setGrouping(grouping);
    CommonViewer viewer = navigator.getCommonViewer();
    Object[] expandedElements = viewer.getExpandedElements();
    provider.reSetInput();
    viewer.setExpandedElements(expandedElements);
}
 
源代码8 项目: spotbugs   文件: GoUpAction.java

@Override
public void run(IAction action) {
    if (!action.isEnabled()) {
        return;
    }
    CommonViewer viewer = navigator.getCommonViewer();
    Object[] expandedElements = viewer.getVisibleExpandedElements();
    Object input = viewer.getInput();
    if (input instanceof BugGroup) {
        BugGroup group = (BugGroup) input;
        Object data = group.getParent();
        boolean needRefresh = data == null;
        if (needRefresh) {
            BugContentProvider.getProvider(navigator.getNavigatorContentService()).reSetInput();
        } else {
            viewer.setInput(data);
        }
        // viewer.setSelection(new StructuredSelection(input), true);
        // viewer.expandToLevel(input, 1);
        viewer.setExpandedElements(expandedElements);
    }
    action.setEnabled(isEnabled());
}
 

public void resourceChanged(final IResourceChangeEvent event) {
	UIHelper.runUIAsync(new Runnable() {
		public void run() {
			ToolboxExplorer.refresh();
			// Expand the current spec and all its children
			final CommonViewer viewer = ToolboxExplorer.getViewer();
			// Event is only null when this Ctor calls us causing the
			// initial expanded state of a spec to be fully expanded.
			// Afterwards, the users expanded states is preserved.
			if (event == null && viewer != null) { // viewer might already be disposed which happens when the Toolbox shuts down.
				final Spec specLoaded = Activator.getSpecManager().getSpecLoaded();
				viewer.expandToLevel(specLoaded, ToolboxExplorer.DEFAULT_EXPAND_LEVEL);
			}
		}
	});
}
 

@Override
public void createControl(Composite parent) {
	fOutlineViewer = new CommonViewer(OUTLINE_COMMON_NAVIGATOR_ID, parent, SWT.MULTI);
	// seems like common filters need to be explicitly added
	for (ViewerFilter filter : fOutlineViewer.getNavigatorContentService().getFilterService()
			.getVisibleFilters(true)) {
		this.fOutlineViewer.addFilter(filter);
	}

	Object[] listeners = fSelectionChangedListeners.getListeners();
	for (int i = 0; i < listeners.length; i++) {
		fSelectionChangedListeners.remove(listeners[i]);
		fOutlineViewer.addSelectionChangedListener((ISelectionChangedListener) listeners[i]);
	}

	listeners = fPostSelectionChangedListeners.getListeners();
	for (int i = 0; i < listeners.length; i++) {
		fPostSelectionChangedListeners.remove(listeners[i]);
		fOutlineViewer.addPostSelectionChangedListener((ISelectionChangedListener) listeners[i]);
	}

	fOutlineViewer.setUseHashlookup(true);

	IActionBars actionBars = getSite().getActionBars();
	registerToolbarActions(actionBars);
}
 
源代码11 项目: gama   文件: NavigatorCommonViewer.java

@Override
public void expandAll() {
	getControl().setRedraw(false);
	NavigatorContentProvider.FILE_CHILDREN_ENABLED = false;
	final IStructuredSelection currentSelection = (IStructuredSelection) getSelection();
	if (currentSelection == null || currentSelection.isEmpty()) {
		super.expandAll();
	} else {
		final Iterator<?> it = currentSelection.iterator();
		while (it.hasNext()) {
			final Object o = it.next();
			if (o instanceof TopLevelFolder) {
				expandToLevel(o, CommonViewer.ALL_LEVELS); // 2
			} else if (o instanceof IContainer) {
				expandToLevel(o, CommonViewer.ALL_LEVELS);
			}
		}

	}
	NavigatorContentProvider.FILE_CHILDREN_ENABLED = true;
	this.refresh(false);
	getControl().setRedraw(true);

}
 
源代码12 项目: gama   文件: GamaNavigator.java

@Override
protected void handleDoubleClick(final DoubleClickEvent anEvent) {
	final IStructuredSelection selection = (IStructuredSelection) anEvent.getSelection();
	final Object element = selection.getFirstElement();
	if (element instanceof VirtualContent && ((VirtualContent<?>) element).handleDoubleClick()) {
		if (element instanceof Tag) {
			Tag t = (Tag) element;
			findControl.searchFor(t.getName());
			return;
		}
	} else {
		super.handleDoubleClick(anEvent);
	}
	if (element instanceof WrappedContainer || element instanceof TopLevelFolder) {
		final CommonViewer tree = getCommonViewer();
		if (tree.getExpandedState(element)) {
			final Object[] contents = ((VirtualContent<?>) element).getNavigatorChildren();
			if (contents.length > 0) {
				tree.reveal(contents[contents.length - 1]);
			}
		}
	}
}
 

public void init(ICommonActionExtensionSite aSite) {
	viewer = (CommonViewer) aSite.getStructuredViewer();
	contentService = aSite.getContentService();
	filterService = (NavigatorFilterService) contentService.getFilterService();

	extensionStateModel = contentService.findStateModel(WorkingSetsContentProvider.EXTENSION_ID);

	workingSetActionGroup = new WorkingSetFilterActionGroup(aSite.getViewSite().getShell(), filterChangeListener);
	workingSetRootModeActionGroup = new WorkingSetRootModeActionGroup(viewer, extensionStateModel);

	topLevelModeListener = new IPropertyChangeListener() {
		public void propertyChange(PropertyChangeEvent event) {
			setWorkingSet(workingSet);
			viewer.getFrameList().reset();
		}
	};

	if (contentService.isActive(WorkingSetsContentProvider.EXTENSION_ID)) {
		managerChangeListener.listen();
		extensionStateModel.addPropertyChangeListener(topLevelModeListener);
	}

	contentService.getActivationService().addExtensionActivationListener(activationListener);
}
 

public void init(ICommonActionExtensionSite aSite) {
	viewer = (CommonViewer) aSite.getStructuredViewer();
	contentService = aSite.getContentService();
	filterService = (NavigatorFilterService) contentService.getFilterService();

	extensionStateModel = contentService.findStateModel(WorkingSetsContentProvider.EXTENSION_ID);

	workingSetActionGroup = new WorkingSetFilterActionGroup(aSite.getViewSite().getShell(), filterChangeListener);
	workingSetRootModeActionGroup = new WorkingSetRootModeActionGroup(viewer, extensionStateModel);

	topLevelModeListener = new IPropertyChangeListener() {
		public void propertyChange(PropertyChangeEvent event) {
			setWorkingSet(workingSet);
			viewer.getFrameList().reset();
		}
	};

	if (contentService.isActive(WorkingSetsContentProvider.EXTENSION_ID)) {
		managerChangeListener.listen();
		extensionStateModel.addPropertyChangeListener(topLevelModeListener);
	}

	contentService.getActivationService().addExtensionActivationListener(activationListener);
}
 
源代码15 项目: Pydev   文件: PythonLinkHelper.java

/**
 * Tries to find a match for the element in the given root passed. If found returns true.
 * 
 * @param infosSearched: a memo to know which infos were already searched to prevent searching many times in
 * the same place.
 */
private IStructuredSelection findMatchInTreeNodeRoot(File element, CommonViewer commonViewer,
        InterpreterInfoTreeNodeRoot treeNodeRoot, Set<IInterpreterInfo> infosSearched) {
    if (infosSearched.contains(treeNodeRoot.interpreterInfo)) {
        return null;
    }
    infosSearched.add(treeNodeRoot.interpreterInfo);

    List<TreeNode> nodesOrderedForFileSearch = treeNodeRoot.getNodesOrderedForFileSearch();
    for (TreeNode node : nodesOrderedForFileSearch) {
        PythonpathTreeNode match = findMatch(node, element);
        if (match != null) {
            return new StructuredSelection(match);
        }
    }
    return null;
}
 
源代码16 项目: bonita-studio   文件: AbstractFileStore.java

public static void refreshExplorerView() {
    Display.getDefault().asyncExec(() -> {
        if (PlatformUI.isWorkbenchRunning()
                && PlatformUI.getWorkbench().getActiveWorkbenchWindow() != null
                && PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage() != null) {
            IViewPart viewPart = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
                    .findView("org.bonitasoft.studio.application.project.explorer");
            if (viewPart != null) {
                CommonViewer viewer = viewPart.getAdapter(CommonViewer.class);
                if (viewer != null && !viewer.getTree().isDisposed()) {
                    viewer.refresh(true);
                }
            }
        }
    });
}
 

@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
	IWorkbenchWindow activeWorkbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
	if (null == activeWorkbenchWindow) {
		return null;
	}
	IWorkbenchPage activePage = activeWorkbenchWindow.getActivePage();
	if (null == activePage) {
		return null;
	}
	IWorkbenchPart activePart = activePage.getActivePart();
	if (!(activePart instanceof CommonNavigator)) {
		return null;
	}

	CommonNavigator navigator = (CommonNavigator) activePart;
	CommonViewer commonViewer = navigator.getCommonViewer();

	Tree navigatorTree = commonViewer.getTree();
	List<TreeItem> visibleItems = new ArrayList<>();
	collectChildren(navigatorTree.getItems(), visibleItems);

	List<Object> visibleData = visibleItems.stream().map(i -> i.getData()).collect(Collectors.toList());

	commonViewer.setSelection(new StructuredSelection(visibleData), false);

	return null;
}
 
源代码18 项目: neoscada   文件: ConnectionView.java

@Override
protected CommonViewer createCommonViewerObject ( final Composite aParent )
{
    // quick fix to automatically expand some content
    final CommonViewer result = super.createCommonViewerObject ( aParent );
    result.setAutoExpandLevel ( 2 );
    return result;
}
 
源代码19 项目: spotbugs   文件: EmptyGroupsFilter.java

@Override
public boolean select(Viewer viewer, Object parentElement, Object element) {
    CommonViewer v2 = (CommonViewer) viewer;
    BugContentProvider provider = BugContentProvider.getProvider(v2.getNavigatorContentService());
    if (element instanceof BugGroup) {
        BugGroup group = (BugGroup) element;
        if (provider.getFilteredMarkersCount(group) == group.getMarkersCount()) {
            return false;
        }
    }
    return true;
}
 
源代码20 项目: spotbugs   文件: BugContentProvider.java

@Override
public void inputChanged(Viewer newViewer, Object oldInput, Object newInput) {
    viewer = (CommonViewer) newViewer;
    if (newInput == null || newInput instanceof IWorkingSet || newInput instanceof IWorkspaceRoot) {
        rootElement.dispose();
    }
    input = newInput;
    if (newInput == null) {
        refreshJob.setViewer(null);
    } else {
        refreshJob.setViewer((CommonViewer) newViewer);
        bugFilterActive = isBugFilterActive();
    }
    clearFilters();
}
 
源代码21 项目: spotbugs   文件: RefreshJob.java

public void setViewer(CommonViewer newViewer) {
    if (newViewer != null) {
        this.viewer = newViewer;
        startListening();
    } else {
        stopListening();
        this.viewer = null;
    }
}
 
源代码22 项目: spotbugs   文件: GoIntoAction.java

@Override
public void run(IAction action) {
    if (action.isEnabled() && navigator != null && selectedElement != null) {
        CommonViewer viewer = navigator.getCommonViewer();
        Object[] expandedElements = viewer.getVisibleExpandedElements();
        viewer.setInput(selectedElement);
        viewer.setExpandedElements(expandedElements);
    }
}
 
源代码23 项目: spotbugs   文件: FilterPatternAction.java

@Override
public void run(IAction action) {
    Set<String> sortedIds = FindbugsPlugin.getFilteredIds();
    String patternType = getPatternOrPatternType();
    if (patternType != null) {
        if (!sortedIds.contains(patternType)) {
            sortedIds.add(patternType);
        } else {
            sortedIds.remove(patternType);
        }
    }
    String ids = FindBugsConstants.encodeIds(sortedIds);
    final IPreferenceStore store = FindbugsPlugin.getDefault().getPreferenceStore();
    store.setValue(FindBugsConstants.LAST_USED_EXPORT_FILTER, ids);
    BugContentProvider provider = BugContentProvider.getProvider(navigator.getNavigatorContentService());
    if (!provider.isBugFilterActive()) {
        MessageDialog.openWarning(null, "Toggle Filter", "Filtering by pattern or type id is currently not enabled!\n"
                + "To enable it, please select \"Toggle Filters...->Bugs by Id\" filter!");

    }
    provider.refreshFilters();
    CommonViewer viewer = navigator.getCommonViewer();
    Object[] expandedElements = viewer.getExpandedElements();
    viewer.refresh(true);
    viewer.setExpandedElements(expandedElements);
    data = null;
}
 
源代码24 项目: tlaplus   文件: ToolboxExplorer.java

/**
  * Retrieves the current viewer if any
  * @return the instance of common viewer or <code>null</code>
  */
 public static CommonViewer getViewer()
 {
     CommonNavigator navigator = findCommonNavigator(ToolboxExplorer.VIEW_ID);
     if (navigator != null) 
     {
         final CommonViewer commonViewer = navigator.getCommonViewer();
         commonViewer.setAutoExpandLevel(DEFAULT_EXPAND_LEVEL);
return commonViewer;
     }
     
     return null;
 }
 
源代码25 项目: tlaplus   文件: ToolboxExplorer.java

/**
 * Refreshes the instance of the viewer if any
 */
public static void refresh()
{
    CommonViewer instance = getViewer();
    if (instance != null)
    {
        instance.refresh();
    }
}
 

/**
 * Refresh the common navigator viewer starting with this element. Does not
 * refresh the model.
 *
 * @since 3.1
 */
public void refreshViewer() {
    Display.getDefault().asyncExec(() -> {
        IWorkbench wb = PlatformUI.getWorkbench();
        IWorkbenchWindow wbWindow = wb.getActiveWorkbenchWindow();
        if (wbWindow == null) {
            return;
        }
        IWorkbenchPage activePage = wbWindow.getActivePage();
        if (activePage == null) {
            return;
        }

        for (IViewReference viewReference : activePage.getViewReferences()) {
            IViewPart viewPart = viewReference.getView(false);
            if (viewPart instanceof CommonNavigator) {
                CommonViewer commonViewer = ((CommonNavigator) viewPart).getCommonViewer();
                Object element = TmfProjectModelElement.this;
                if (element instanceof TmfProjectElement) {
                    IProject project = (IProject) getResource();
                    if (project != null && !TmfProjectModelHelper.isShadowProject(project)) {
                        // for the project element the viewer uses the IProject resource
                        element = getResource();
                    }
                }
                commonViewer.refresh(element);
            }
        }
    });
}
 
源代码27 项目: gama   文件: NavigatorContentProvider.java

@Override
public void inputChanged(final Viewer v, final Object oldInput, final Object newInput) {
	final CommonViewer viewer = (CommonViewer) v;
	final ResourceManager mapper = new ResourceManager(this, viewer);
	getInstance().resetVirtualFolders(mapper);
	getWorkspace().addResourceChangeListener(mapper, POST_CHANGE | PRE_DELETE);
	super.inputChanged(viewer, oldInput, newInput);
}
 

private synchronized void initStateModel(Viewer viewer) {
	if (!isStateModelInitialized) {
		if (viewer instanceof CommonViewer) {

			CommonViewer commonViewer = (CommonViewer) viewer;
			fContentService = commonViewer.getNavigatorContentService();
			fStateModel = fContentService.findStateModel(JAVA_EXTENSION_ID);

			isStateModelInitialized = true;
		}
	}
}
 

public ResourceToItemsMapper(CommonViewer viewer) {
	_resourceToItem = new HashMap();
	_reuseLists = new Stack();

	_commonViewer = viewer;
	viewer.setMapper(this);
}
 

public void init(ICommonContentExtensionSite aConfig) {
	NavigatorContentService cs = (NavigatorContentService) aConfig.getService();
	viewer = (CommonViewer) cs.getViewer();
	projectExplorer = viewer.getCommonNavigator();
	
	extensionStateModel = aConfig.getExtensionStateModel();
	extensionStateModel.addPropertyChangeListener(rootModeListener);
	updateRootMode();
	
}
 
 类所在包
 同包方法