我想在代码中调用RCP命令,如下所示:
IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
IHandlerService handlerService = (IHandlerService)window.getService(IHandlerService.class);
handlerService.executeCommand(cmdID, null);
使用相当多的代码,我可以通过组装一个Parameterization对象然后构建一个ParameterizedCommand
来调用带有字符串参数的命令,但是Paramaterization只允许字符串值,并且不能被子类化。
我真正想做的是使用对象作为参数调用该命令。我怎么能这样做?
答案 0 :(得分:2)
使用ParameterizedCommand.generateCommand()
。您可以传递命令对象(从ICommandService
获得)和地图中的参数。