如何在SourceViewer中显示查找替换对话框(在快捷键Ctrl + F上)

时间:2013-11-04 13:17:05

标签: java eclipse eclipse-plugin eclipse-rcp

我在View中使用sourceViewer,我有一个命令org.eclipse.ui.edit.findReplace并为命令创建一个处理程序来调用FindReplace操作。

我还定义了键绑定来调用命令(Ctrl + F)

现在我在View类中重写了getAdapter方法,并添加了一个检查,如果该类等于org.eclipse.jface.text.IFindReplaceTarget,则返回textViewer.getFindReplaceTarget()。

但是没有什么对我有用,在关键快捷方式(Ctrl + F)上,命令正在调用,也没有在getAdapter方法执行中为IFindReplaceTarget写入检查。

有人可以帮我解决出现问题或如何在SourceViewer中实现查找替换功能吗?

1 个答案:

答案 0 :(得分:1)

我在Eclipse源代码中看不到任何使用Handler的内容,而是全部使用旧样式操作。这就是org.eclipse.jdt.internal.debug.ui.display.DisplayView的作用:

FindReplaceAction findReplaceAction = new FindReplaceAction(bundle, "find_replace_action_", this); 
findReplaceAction.setActionDefinitionId(IWorkbenchCommandConstants.EDIT_FIND_AND_REPLACE);
setGlobalAction(ActionFactory.FIND.getId(), findReplaceAction);

protected void setGlobalAction(String actionID, IAction action) {
    IActionBars actionBars = getViewSite().getActionBars();
    actionBars.setGlobalActionHandler(actionID, action);
}
相关问题