天天看點

如何在RCP中正确加入project explorer view

Posted on 2010-09-16 17:02  Li Ya Qiang 閱讀(100)  評論(0)   編輯   收藏 所屬分類: Eclipse RCP 

如何在RCP中正确加入project explorer view

原創,轉載請注明出處。

今天都在折騰project explorer,主要是在RCP裡加入project explorer以後,不能正常顯示,同時重新整理的時候又清空那個view,非常奇怪。

最後按照eclipse.org的help的指導設定成功,

http://help.eclipse.org/ganymede/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/cnf.htm

主要是要在自己的WorkbenchAdvisor類裡面重寫的initialize(IWorkbenchConfigurer configurer)的方法。

 1       public   void  initialize(IWorkbenchConfigurer configurer) {

 2          IDE.registerAdapters();

 3           final  String ICONS_PATH  =   " icons/full/ " ;

 4           final  String PATH_OBJECT  =  ICONS_PATH  +   " obj16/ " ;

 5          Bundle ideBundle  =  Platform.getBundle(IDEWorkbenchPlugin.IDE_WORKBENCH);

 6          declareWorkbenchImage(configurer, ideBundle,

 7                  IDE.SharedImages.IMG_OBJ_PROJECT, PATH_OBJECT  +   " prj_obj.gif " ,

 8                   true );

 9          declareWorkbenchImage(configurer, ideBundle,

10                  IDE.SharedImages.IMG_OBJ_PROJECT_CLOSED, PATH_OBJECT

11                           +   " cprj_obj.gif " ,  true );

12 

13           super .initialize(configurer);

14          configurer.setSaveAndRestore( true );    

15      }

16 

17       private   void  declareWorkbenchImage(IWorkbenchConfigurer configurer_p,

18              Bundle ideBundle, String symbolicName, String path,  boolean  shared) {

19          URL url  =  ideBundle.getEntry(path);

20          ImageDescriptor desc  =  ImageDescriptor.createFromURL(url);

21          configurer_p.declareImage(symbolicName, desc, shared);

22      }

然後是覆寫getDefaultPageInput方法如下

1  @Override

2  public  IAdaptable getDefaultPageInput() {

3           return  ResourcesPlugin.getWorkspace().getRoot();

4       }

這次得到的教訓就是以後有什麼問題首先查詢eclipse.org,要不浪費太多時間了。

繼續閱讀