RCP中获得其他view或editor引用的方法

出处
http://www.makaidong.com/%E5%8D%9A%E5%AE%A2%E5%9B%AD%E6%8E%92%E8%A1%8C/2746.shtml
每个view和editor都有一个id,正是这个唯一标识他们的id,使得我们在其他view的控件中,当响应某个事件时,想得到另一个view或editor的引用,进而对他进行修改,可以参照如下代码:
1、针对view,根据其id获得引用

view view =(view)platformui.getworkbench().getactiveworkbenchwindow(). getactivepage().findview(view.id);//强制类型转换  

2、假设editor具体的实现类为myfileeditor,则

myfileeditor myfileeditor = (myfileeditor)platformui.getworkbench().getactiveworkbenchwindow(). getactivepage().findeditor(ieditorinput input);

注意:这里根据指定的input(ieditorinput)得到editor的引用(editor已实现editorpart)
之所以不能根据id得到是因为一个id对应一个editor,而一个editor一般对应几个input并以选项卡的形式来表现这几个input。

你可能感兴趣的:(RCP)