eclipse - 如何手动更新包资源管理器(首选项)

标签 eclipse rcp workbench

我在 Eclipse 3.6 中添加了一个自定义 LabelDecorator,它替换了 SVN 团队文本装饰添加的神秘用户名。 SVN 团队装饰器允许您添加作者标签。我所做的是添加另一个装饰器,用用户的实际名称替换这些作者字符串(它们是公司特定的短名称,带有数字)。

而 SVN 团队文本装饰扩展包资源管理器:

... com.company.package · XY9723 · [30.02.11 19:11]

我将其替换为
... com.company.package · Neil Diamond · [30.02.11 19:11]

现在,为了完成任务,我添加了一个偏好页面,用户可以在其中指定属性(姓名、名字、出生日期、公司名称、电话等),这些属性应该用作替换。每当按下“应用”或“确定”时,我想用新选择的属性更新包资源管理器(或任何 svn 团队装饰资源)。
目前,资源仅在您按下“应用”或“确定”后才会更新 手动折叠/展开资源管理器中的资源之一。

有什么我可以触发的事件吗?

最佳答案

使用 IDecorationManager 接口(interface):

IWorkbench workbench = ...;
IDecoratorManager manager = workbench.getDecoratorManager();

在偏好页面 LabelProvider 内:
ILabelDecorator decorator = manager.getLabelDecorator("com.plugin.mydecorator");
if(decorator != null){ // decorator is enabled
    LabelProviderChangedEvent event = new LabelProviderChangedEvent(demoDecorator);
    // update specific resources
    fireLabelEvent(event, arrayOfResourceToUpdate);

    // or update all resources
    fireLabelEvent(event);
}

-> 见 Understanding Decorators

没有 LabelProvider
manager.update("com.plugin.mydecorator");

-> 见 DecoratorManager.java

关于eclipse - 如何手动更新包资源管理器(首选项),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5230953/

相关文章:

c++ - 一个简短的 c++ 文件和 makefile : I can make in the shell,,但在 Eclipse 中构建它时出现很多错误

java - Eclipse RCP 国际化独立插件

java - 无法加载库 'xxx.dll' : Native library (win32-x86/xxx. dll) 在资源路径中找不到 (JNA + DLL + eclipse rcp)

MySQL 工作台和 phpMyadmin

java - 在 $HADOOP_HOME 之外运行 Java 程序(使用 HDFS JAVA API)

java - 数据可视化原型(prototype)(Java/Eclipse/DAO/关系型数据库)

java - 在 Eclipse 中禁用 TreeViewer 的 Alt+Enter

eclipse - Eclipse工作区在启动时崩溃

java - 访问 Java 变量时 Eclipse JSP Javascript 表达式语言 EL 解析错误

java - 自应用程序启动以来就将 CTabFolder 舍入