java - 如何编写类似于现有查找/替换对话框的 Eclipse 插件

标签 java eclipse plugins eclipse-plugin swt

我想编写一个 Eclipse 插件,其工作方式应类似于现有的“查找/替换”对话框。 IE。如果当焦点位于任意文本编辑器时按下我选择的组合键,则会弹出一个我编写的对话框,并且我需要引用 IFindReplaceTarget 接口(interface)(或 IFindReplaceTargetExtension3 接口(interface))。 这怎么可能?我需要扩展哪些扩展点?

我想要实现的事情的顺序是

1)按下组合键时弹出一个对话框(我必须扩展某个我不知道的扩展点)

2)也许我可以通过获取 Activity 编辑器并将 Activity 编辑器强制转换到此界面来获得 IFindReplaceTarget 界面。无论如何,我想要一个 IFindReplaceTarget

3)如果能够看到提供“查找/替换”对话框的插件的完整源代码,那就太好了。我能够打开该对话框,将焦点设置在其上,然后按 Alt+Shift+F1 并访问 FindReplaceDialog 类的源代码。但是我怎样才能看到整个插件的源代码呢?

最佳答案

使用 org.eclipse.ui.commands 扩展点定义命令。

使用org.eclipse.ui.handlers扩展点为您的命令定义处理程序。处理程序类可以打开您的对话框。

使用 org.eclipse.ui.bindings 扩展点为您的命令定义键绑定(bind)。

您可以使用以下方法获取当前部分的 IFindReplaceTarget(如果有的话):

IWorkbenchPart part = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getPartService().getActivePart();

IFindReplaceTarget target = (IFindReplaceTarget)part.getAdapter(IFindReplaceTarget.class);

关于java - 如何编写类似于现有查找/替换对话框的 Eclipse 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38542191/

相关文章:

java - 注释中 unicode 转义序列的行为

php - 联系表格 7 - 无法运行 php

java - Google Java 样式 : Import names v. s。导入语句?

java - 如何在Java中读写没有某些节点的XML文件

Java RCP : Create Extension point from existing extension

java - Maven:maven 构建中的类下缺少文件

javascript - Bootstrap 选项卡插件无法正常工作

c - 如何设置 cpp_cp 检查选项?

java - 如果编译一个空的 java 文件会发生什么?

java - RoboVM 插件 0.0.11 不适用于 eclipse