java - 向不同部分添加自定义渲染器

标签 java eclipse-rcp rcp e4

我希望某些部分使用不同的渲染器。在某些情况下,我想在右键单击时删除 Detach 选项,这是根据对我的问题 here 的评论的解决方案。 .

我一直在关注this有关如何完成此操作的教程。

我创建了两个类。 UndetachableStackRendererUndetachableStackRendererFactory

如果我将 UndetachableStackRendererFactory 添加到 plugin.xml 中,它会成功删除从 ALL 部件堆栈分离的选项。

<property
    name="rendererFactoryUri"
    value="bundleclass://com.example.loc/com.example.loc.UndetachableStackRendererFactory">
</property>

我想更改一个零件堆栈的渲染器。根据教程,我可以将 CUSTOM_RENDERER_URI 添加到零件堆栈的持久状态。

关键:

CUSTOM_RENDERER_URI

值:

bundleclass://com.example.loc/com.example.loc.UndetachableStackRenderer

我已经尝试过了,但没有任何效果。如果我输入的位置不正确,也不会出现任何错误,因此似乎看不到 CUSTOM_RENDERER_URI

这可能是什么原因造成的?

最佳答案

该教程似乎是错误的,至少对于当前的 Eclipse 版本是这样。

键值在 IPresentationEngine.CUSTOM_RENDERER_KEY 中定义其值为 Custom Renderer

String CUSTOM_RENDERER_KEY = "Custom Renderer";

它用于 getRenderer方法org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine

关于java - 向不同部分添加自定义渲染器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54572702/

相关文章:

java - 从进度监视器对话框更改托盘图标工具提示

java - 使用 bndtools 启动 Eclipse 3.x RCP 应用程序

Java重载和覆盖

java - 扫描仪第一次尝试时无法识别号码?

java - 如何以编程方式重命名 Eclipse 插件菜单

java - 如何在未附加到应用程序模型的类中使用 Eclipse 4 DI?

java - 如何使用 jaxb 生成 xml 标签作为完整类名?

java - Map Reduce输出文件为空

eclipse - 如何将 LGPL 库捆绑到基于 Eclipse 的商业应用程序中?

eclipse - 哪个是最好的 RCP 平台