【发布时间】:2020-10-04 09:44:17
【问题描述】:
【问题讨论】:
标签: java eclipse-rcp e4
【问题讨论】:
标签: java eclipse-rcp e4
你可以通过添加标签告诉e4该部分不可拆卸
NoDetach
到 Application.e4xmi 中的部件(或部件描述符)标签。
或者您可以使用自定义堆栈渲染器完全替换选项卡菜单。你重写 populateTabMenu 方法:
public class MyStackRenderer extends StackRenderer
{
@Override
protected void populateTabMenu(Menu menu, MPart part)
{
// TODO your menu items
}
}
您使用渲染器工厂设置渲染器:
public class MyRendererFactory extends WorkbenchRendererFactory
{
private MyStackRenderer myStackRenderer;
@Override
public AbstractPartRenderer getRenderer(MUIElement uiElement, Object parent)
{
if (uiElement instanceof MPartStack) {
if (myStackRenderer == null) {
myStackRenderer = MyStackRenderer();
initRenderer(myStackRenderer);
}
return myStackRenderer;
}
return super.getRenderer(uiElement, parent);
}
}
您在产品定义中使用 rendererFactoryUri 告诉 Eclipse 渲染器工厂。
<extension
id="product"
point="org.eclipse.core.runtime.products">
<product
....
<property
name="rendererFactoryUri"
value="bundleclass://xxxxx.MyRendererFactory">
</property>
【讨论】: