java - 在 Eclipse RCP 应用程序中,您可以在您的pluginCustomization 文件中定义透视图吗?

标签 java eclipse-rcp perspective

我希望能够在 Eclipse RCP 应用程序中定义透视图,而无需为其编写 java 类。这将使我能够改变这种观点,而无需重新编译源代码并删除不必要的 java 类。

目前,我确实在 java 类中定义了一个 Perspective,如果我想在不重新编译的情况下修改它,我可以使用不同的名称保存它,将首选项导出到 .epf 文件(从我正在运行的应用程序中)并将该 _persp= 行粘贴到我的应用程序 pluginCustomization.ini 中,在运行时使用 -Declipse.pluginCustomization= 指定.

这可行,但我无法使用 org.eclipse.ui/PERSPECTIVE_BAR_EXTRAS 使这些复制的透视图出现在附加栏中,这样的 xml 透视图几乎不可能编辑,因为它们是所有这些都在一行中,而且我仍然有一个我不使用的不需要的 java 类。

  • 那么,在 Eclipse RCP 应用程序中,是否有一种方法可以在您的pluginCustomization 文件中定义透视图,而无需 Java 类支持?
    • 如果是这样,您是否可以定义与文件相关的 _persp= 行,其中包含格式良好的 xml 代码,或者您是否坚持使用 everythingcompactedononeline
  • 或者,还有其他方法可以实现我想要的吗?

最佳答案

我不确定这是否是您正在寻找的东西,但您可能想尝试创建自己的扩展点(请参阅 http://www.vogella.com/articles/EclipseExtensionPoint/article.html )。在这种情况下,您可能看起来像这样:

 <extension-point id="my.perspectives" name="perspectives" schema="perspectives.exsd"/>

使用一个元素“perspective”,该元素具有“id”属性,“identifier”类型和“org.eclipse.ui.perspectives/perspective/@id”作为引用(或者您可以将其设置为“字符串”) "类型,如果您不想绑定(bind)到任何 Eclipse 标识符)。

在你的plugin.xml中,添加如下内容:

<extension
         point="my.perspectives">
<perspective id="my.perpsective.id"/>
</extension>

然后您可以按如下方式处理您的扩展点:

for (IConfigurationElement element: Platform.getExtensionRegistry().getConfigurationElementsFor("my.perspectives")) {
  String perspectiveId = element.getAttribute("id");
}

并用你的视角 id 做任何你想做的事情。希望有帮助。

关于java - 在 Eclipse RCP 应用程序中,您可以在您的pluginCustomization 文件中定义透视图吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19832256/

相关文章:

java - 在 Java 中实现和修复递归方法

java - 无法解析 XML 配置 Spring 应用程序中的占位符

java - Eclipse 插件开发 - 没有安装的 JRE 满足此执行环境 : "JavaSE-1.7". 启动已中止

perspective - IcCube - 使用立方体的切片作为透视图

javascript - 如何在透视模式下计算旋转 Angular 以使宽度适合所需尺寸?

html - 用透视渲染 HTML 元素?

java - 将 char 数组转换为 String。 java

java - 如何从 pom.xml 更新属性文件的值

java - 在 Run Menu Item 中添加 Eclipse 默认菜单项

java - 在表 SWT/RCP 中移动项目