【发布时间】:2011-08-24 09:57:35
【问题描述】:
我想根据用户角色在 Eclipse rcp 应用程序中限制、设置可见为 false 的某些操作。
例如打开编辑器 A 时,如果用户有 admin 角色,则显示操作 1-2-3-4,但如果用户没有 admin 角色,则仅显示操作 1-2。
enablesFor 属性操作太简单了,无法满足我的需要。
有没有办法在 eclipse rcp 应用程序中做到这一点?
【问题讨论】:
标签: action eclipse-rcp
我想根据用户角色在 Eclipse rcp 应用程序中限制、设置可见为 false 的某些操作。
例如打开编辑器 A 时,如果用户有 admin 角色,则显示操作 1-2-3-4,但如果用户没有 admin 角色,则仅显示操作 1-2。
enablesFor 属性操作太简单了,无法满足我的需要。
有没有办法在 eclipse rcp 应用程序中做到这一点?
【问题讨论】:
标签: action eclipse-rcp
还有一些启用了核心表达式的活动,可用于隐藏来自 plugin.xml 的大多数操作和命令贡献。有关可以使用 enabledWhen 表达式增强的活动示例,请参阅 How remove pop-up menu contributions in eclipse RCP。
在示例贡献插件中有一个基于用户角色的活动启用贡献的示例:http://dev.eclipse.org/viewcvs/viewvc.cgi/org.eclipse.ui.examples.contributions/
【讨论】:
您应该使用带有 visibleWhen 的 org.eclipse.ui.menus 扩展点来显示/隐藏您的贡献。您可以定义和使用属性测试器来确定当前用户是否应该能够看到该项目。 http://wiki.eclipse.org/Menu_Contributions
【讨论】: