Eclipse强制处理程序重新评估

Eclipse强制处理程序重新评估,eclipse,eclipse-plugin,swt,eclipse-rcp,jface,Eclipse,Eclipse Plugin,Swt,Eclipse Rcp,Jface,如何强制Eclipse重新评估所有处理程序的activeWhen条件 情况: 我已经在TreeViewer上定义了一个命令。此命令有多个可能的处理程序。处理程序定义了一些条件来决定是否激活处理程序 我的问题是,在我取消选择树中的项目(例如,选择另一个项目)并再次选择它之前,不会重新评估处理程序条件 如果选择未更改,但提升条件更改(例如,由于元素更新),则将执行错误的处理程序 有没有办法手动强制处理程序重新评估所选内容?如果您的条件使用属性测试器检查treeviewer选择中的状态,则需要通知IE

如何强制Eclipse重新评估所有处理程序的activeWhen条件

情况: 我已经在TreeViewer上定义了一个命令。此命令有多个可能的处理程序。处理程序定义了一些条件来决定是否激活处理程序

我的问题是,在我取消选择树中的项目(例如,选择另一个项目)并再次选择它之前,不会重新评估处理程序条件

如果选择未更改,但提升条件更改(例如,由于元素更新),则将执行错误的处理程序


有没有办法手动强制处理程序重新评估所选内容?

如果您的条件使用属性测试器检查treeviewer选择中的状态,则需要通知IEvaluationService所涉及的属性已更改。请参阅
org.eclipse.ui.services.ieevaluationservice.requestEvaluation(String)

这只适用于我在未激活时使用enabledWhen的情况。你能看一下我输入的问题吗?我想我也发现了4.2的回归。