我开发了一个eclipse RCP插件,该插件旨在作为eclipse应用程序运行,并且可以作为独立的eclipse产品提取。现在,我想通过将其添加为插件来重用它,这样就可以从eclipse中访问我。
我可以将其安装到我的eclipse工作区中,并可以通过窗口>显示视图查看视图。但是,该视图将打开到编辑器下方的区域(与Console视图一起),而不是作为独立窗口打开。
请给我指一种方法,通过这种方法,视图会在一个单独的窗口中打开,就像"搜索"窗口一样。
该视图扩展了"ViewPart"并使用复合。下面Plugin.xml中的相关位:
<extension id="application" point="org.eclipse.core.runtime.applications">
<application>
<run class="xxx.Application"></run>
</application>
</extension>
<extension point="org.eclipse.ui.perspectives">
<perspective name="xxxReview.perspective" class="extension.Perspective" id="xxxReview.perspective">
</perspective>
</extension>
<extension point="org.eclipse.ui.views">
<view class="view.xxxView" id="xxxView" name="xxxView" restorable="true">
</view>
</extension>
如果定义了自己的透视图,则可以始终覆盖
public void createInitialLayout(IPageLayout layout) {
layout.addStandaloneView(xxxView, false, IPageLayout.TOP, 0.04f, IPageLayout.ID_EDITOR_AREA);
...
}
如果您需要在一些本地Eclipse透视图中提供该视图,请尝试使用独立视图的透视扩展
<extension point="org.eclipse.ui.views">
<view class="view.xxxView" id="xxxView" name="xxxView" restorable="true" />
</extension>
<extension point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension targetID="*">
<view id="xxxView" visible="false" standalone="true"
relative="org.eclipse.ui.views.ResourceNavigator" relationship="bottom" />
</perspectiveExtension>
</extension>
http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fextension-points%2Org_eclipse_ui_perspectiveExtensions.html
最后通过扩展SWT对话框使其工作。
public class xxxView extends Dialog {
/** The file Name Text field. */
private Text fileNameText;
/** The constructor. **/
protected xxxView(Shell parentShell) {
super(parentShell);
}
/** Create Dialog View. **/
protected Control createDialogArea(Composite parent) {
//Added View components here.
}
}