将自定义渲染器添加到不同的部分

时间:2019-02-07 11:48:50

标签: 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添加到零件堆栈的Persisted State中。

键:

CUSTOM_RENDERER_URI

值:

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

我已经尝试过了,但是它什么也没做。如果我输入的位置不正确,也不会出现任何错误,因此好像没有看到CUSTOM_RENDERER_URI

这可能是什么原因?

1 个答案:

答案 0 :(得分:1)

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

键值在IPresentationEngine.CUSTOM_RENDERER_KEY中定义,并具有值Custom Renderer

String CUSTOM_RENDERER_KEY = "Custom Renderer";

它在getRenderer的{​​{1}}方法中使用