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

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

/**
 * Constructor for CommonNavigatorTitleProvider.
 */
public TabbedPropertySheetTitleProvider() {
	super();
	IWorkbenchPart part = PlatformUI.getWorkbench()
			.getActiveWorkbenchWindow().getActivePage().findView(ProjectExplorer.VIEW_ID);

	INavigatorContentService contentService = (INavigatorContentService) part
			.getAdapter(INavigatorContentService.class);

	if (contentService != null) {
		labelProvider = contentService.createCommonLabelProvider();
		descriptionProvider = contentService
				.createCommonDescriptionProvider();
	} else {
		WorkbenchNavigatorPlugin.log(
				"Could not acquire INavigatorContentService from part (\"" //$NON-NLS-1$
						+ part.getTitle() + "\").", null); //$NON-NLS-1$
	}
}
 
/**
 * Constructor for CommonNavigatorTitleProvider.
 */
public TabbedPropertySheetTitleProvider() {
	super();
	IWorkbenchPart part = PlatformUI.getWorkbench()
			.getActiveWorkbenchWindow().getActivePage().findView(ProjectExplorer.VIEW_ID);

	INavigatorContentService contentService = (INavigatorContentService) part
			.getAdapter(INavigatorContentService.class);

	if (contentService != null) {
		labelProvider = contentService.createCommonLabelProvider();
		descriptionProvider = contentService
				.createCommonDescriptionProvider();
	} else {
		WorkbenchNavigatorPlugin.log(
				"Could not acquire INavigatorContentService from part (\"" //$NON-NLS-1$
						+ part.getTitle() + "\").", null); //$NON-NLS-1$
	}
}
 
源代码3 项目: spotbugs   文件: BugContentProvider.java
public static BugContentProvider getProvider(INavigatorContentService service) {
    INavigatorContentExtension extensionById = service.getContentExtensionById(FindbugsPlugin.BUG_CONTENT_PROVIDER_ID);
    IContentProvider provider = extensionById.getContentProvider();
    if (provider instanceof BugContentProvider) {
        return (BugContentProvider) provider;
    }
    return null;
}
 
源代码4 项目: Pydev   文件: PythonBaseModelProvider.java
/**
 * @return whether there are children for the given element. Note that there is
 * an optimization in this method, so that it works correctly for elements that
 * are not python files, and returns true if it is a python file with any content
 * (even if that content does not actually map to a node.
 *
 * @see org.eclipse.ui.model.BaseWorkbenchContentProvider#hasChildren(java.lang.Object)
 */
@Override
public boolean hasChildren(Object element) {
    if (element instanceof PythonFile) {
        //If we're not showing nodes, return false.
        INavigatorContentService contentService = viewer.getNavigatorContentService();
        INavigatorFilterService filterService = contentService.getFilterService();
        ViewerFilter[] visibleFilters = filterService.getVisibleFilters(true);
        for (ViewerFilter viewerFilter : visibleFilters) {
            if (viewerFilter instanceof PythonNodeFilter) {
                return false;
            }
        }

        PythonFile f = (PythonFile) element;
        if (PythonPathHelper.isValidSourceFile(f.getActualObject())) {
            try {
                InputStream contents = f.getContents();
                try {
                    if (contents.read() == -1) {
                        return false; //if there is no content in the file, it has no children
                    } else {
                        return true; //if it has any content, it has children (performance reasons)
                    }
                } finally {
                    contents.close();
                }
            } catch (Exception e) {
                Log.log("Handled error getting contents.", e);
                return false;
            }
        }
        return false;
    }
    if (element instanceof TreeNode<?>) {
        TreeNode<?> treeNode = (TreeNode<?>) element;
        return treeNode.hasChildren();
    }
    return getChildren(element).length > 0;
}
 
源代码5 项目: Pydev   文件: PydevPackageExplorer.java
public PydevNavigatorDnDService(INavigatorContentService aContentService) {
    super(aContentService);
    pyContentService = aContentService;
}
 
 类所在包
 类方法
 同包方法