我想在命令处理程序中获取编辑器的文本,所以如何获得编辑器的引用,谢谢
答案 0 :(得分:9)
在命令处理程序中获取编辑器的引用,你可以这样做:
public class myCommandHandler extends AbstractHandler implements IHandler {
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
Shell shell = HandlerUtil.getActiveWorkbenchWindow(event).getShell();
IWorkbenchPage page = HandlerUtil.getActiveWorkbenchWindow(event).getActivePage();
IEditorInput editorInput = page.getActiveEditor().getEditorInput();
...
祝你好运
答案 1 :(得分:0)
@Override
public void setEnabled(Object evaluationContext) {
Object editor = ((EvaluationContext)evaluationContext).getParent().getVariable("activeEditor");
然后你输入强制转换,结合上面的回答现在执行并启用它们都可以工作。