5

实现了上述之一后,谁能说我如何将它直接连接到查看器?通常的消息来源都没有解释。

马丁。

4

2 回答 2

6

据我所知,您需要一个ILabelDecorator并且唯一简单的方法是使用工作台 UI:

viewer.setLabelProvider(
    new DecoratingLabelProvider(new MyPlainLabelProvider(),
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));

然后,您需要将轻量级装饰器添加到plugin.xml. 显然,这仅在您的应用程序是 Eclipse 插件时才有效。

ILightweightDecorator在 JFace 中看起来很奇怪,但要使用它,您需要一个仅在org.eclipse.ui. 不过,似乎没有一种简单的方法可以更直接地做到这一点。

于 2009-08-27T07:22:33.710 回答
0

有一篇基于 Eclipse 2.1的旧Eclipse.org 文章很好地总结了轻量级装饰器方法。当然,大部分实现细节都发生了变化,但概念保持不变。

当您说将装饰器“直接连接到查看器”时,您的意思是避免将其声明为扩展点,并将您的装饰器应用于图标/文本或类似内容?

要应用图像叠加,您可以按照文章“叠加图像”部分中的方法进行操作。所以首先绘制基础图像,然后获取叠加层的 ImageData,并在预期坐标处绘制数据。

如果您有文章中未解决的更具体的问题,您能否详细说明您的原始问题,并举例说明您要实现的目标?

于 2009-08-09T11:32:21.893 回答