在Eclipse RCP中使用ResourceNavigator
文章转自:http://www.cn-java.com/www1/?uid-550649-action-viewspace-itemid-4217
Eclipse 的资源浏览器很强大,可以很方便的查看工作空间中可供适配的资源,并且提供了对排序、过滤等功能的支持。Eclipse的RCP项目组不赞成我们在富客户端应用程序中使用ResourceNavigator,原因是ResourceNavigator的实现代码位于Eclipse IDE中,如果使用资源浏览器,生成的RCP产品将会增加二十多兆的空间,而且会增加许多我们的产品中并不使用的功能,很浪费磁盘和系统资源。他们赞成我们根据需要,为应用程序量身定做树形浏览器视图,但是,基于方便和对强大功能的追求,以及对Eclipse代码优良性的肯定,插件开发者们仍然希望将资源浏览器直接加入到我们的RCP程序中。为了满足广大Eclipse开发者强烈的要求,本文对在Eclipse RCP中使用ResourceNavigator的方法做较为全面的介绍。
同资源导航器相关的ID为:
ID: org.eclipse.ui.views.ResourceNavigator
CLASS: org.eclipse.ui.ide/org.eclipse.ui.views.navigator/ResourceNavigator.class
ICON: 位于org.eclipse.ui.ide工程目录的icons文件夹中,名称为fileNav_nav.gif。可通过解压.jar文件获得图像文件。
1. 如果我们的RCP程序中的默认透视图中要使用导航器,可能需要在RCP插件(包含有Application.java文件的插件)的plugin.xml中加入这个视图:
plugin.xml
<extension point="org.eclipse.ui.views"> <view name="code"> IFolderLayout leftFolder = layout.createFolder("leftFolderLayout", //$NON-NLS-1$ IPageLayout.LEFT, 0.25f, editorArea); leftFolder.addPlaceholder("org.eclipse.ui.views.ResourceNavigator"+":*"); leftFolder.addView("org.eclipse.ui.views.ResourceNavigator");ApplicationWorkbenchAdvisor public void initialize(IWorkbenchConfigurer configurer) { configurer.declareImage(IDE.SharedImages.IMG_OBJ_PROJECT, YOURPlugin.getImageDescriptor("icons/prj_obj.gif"), true); super.initialize(configurer); }