执行后直接禁用工具栏处理程序
Disable a toolbar handler direct after execution
我想在执行后直接禁用我的工具栏句柄。我过去通过“selectionChanged”方法在 e3 中保存了 IAction
对象,因此我在 运行 逻辑之后设置了 action.setEnabled(假).
public void selectionChanged(IAction action, ISelection selection) {
this.delegate = action;
}
在 e4 中存在任何可能做同样的行为吗?
您使用处理程序的 @CanExecute
方法来控制启用。
@CanExecute
public boolean canExecute()
{
// TODO return enablement
}
当大多数事情可以改变启用 运行 时调用此方法,或者您可以通过调用
强制它成为 运行
@Inject
IEventBroker eventBroker;
eventBroker.send(UIEvents.REQUEST_ENABLEMENT_UPDATE_TOPIC, UIEvents.ALL_ELEMENT_ID);
我想在执行后直接禁用我的工具栏句柄。我过去通过“selectionChanged”方法在 e3 中保存了 IAction
对象,因此我在 运行 逻辑之后设置了 action.setEnabled(假).
public void selectionChanged(IAction action, ISelection selection) {
this.delegate = action;
}
在 e4 中存在任何可能做同样的行为吗?
您使用处理程序的 @CanExecute
方法来控制启用。
@CanExecute
public boolean canExecute()
{
// TODO return enablement
}
当大多数事情可以改变启用 运行 时调用此方法,或者您可以通过调用
强制它成为 运行@Inject
IEventBroker eventBroker;
eventBroker.send(UIEvents.REQUEST_ENABLEMENT_UPDATE_TOPIC, UIEvents.ALL_ELEMENT_ID);