我有一个带有现有命令和处理程序的RCP应用程序,可以通过编程方式切换透视图。我还拥有现有RCP应用程序所使用的新插件。我想要这个新的插件来执行我的RCP应用程序的命令/处理程序,可能的解决方案是什么?
答案 0 :(得分:4)
您可能需要为该命令定义处理程序(不确定),但以编程方式执行命令如下所示:
Command command = ((ICommandService) getSite().getService(ICommandService.class)).getCommand(commandId);
...
final Event trigger = new Event();
ExecutionEvent executionEvent = ((IHandlerService) getSite().getService(IHandlerService.class)).createExecutionEvent(command, trigger);
command.executeWithChecks(executionEvent);