Eclipse e4 标签装饰器

Eclipse e4 Label Decorator

我想为我的 eclipse (e4) 应用程序使用 Label Decorator。

    ILabelDecorator decorator = PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator("MyPlug-In-Id");
    TableDecoratingLabelProvider lp = new TableDecoratingLabelProvider(new LabelProvider(), decorator);
    structuredViewer.setLabelProvider(new DecoratingLabelProvider(lp, decorator));      

不幸的是,PlatformUI.getWorkbench() 在 e4 上抛出一个 IllegalStateException: Workbench has not been created yet.。据我了解,这是因为此方法仅在 e3 中有效。那么,e4中的物品装饰怎么显示呢?

非常感谢任何帮助,提前致谢!

您不能在 e4 应用程序中执行此操作。 3.x workbench 在 e4 应用程序中不可用,不支持 org.eclipse.ui.decorators 标签装饰器扩展点。

您可以使用 JFace 装饰器 类,例如 DecoratingLabelProviderDecoratingStyledCellLabelProvider,但您必须重新设计装饰器才能使用 ILabelDecorator