WEB开发网
开发学院软件开发Java 基于 JFace Text Framework 构建全功能代码编辑器... 阅读

基于 JFace Text Framework 构建全功能代码编辑器: 第 7 部分:Quick Assistant

 2010-03-18 00:00:00 来源:WEB开发网   
核心提示: 图2. 新的标注类型:未声明的变量IQuickAssistProcessor前面两步是把准备工作做完了,现在才轮到真正的接口上场了,基于 JFace Text Framework 构建全功能代码编辑器: 第 7 部分:Quick Assistant(3),IQuickAssistProcesso

图2. 新的标注类型:未声明的变量
基于 JFace Text Framework 构建全功能代码编辑器: 第 7 部分:Quick Assistant

IQuickAssistProcessor

前面两步是把准备工作做完了,现在才轮到真正的接口上场了。IQuickAssistProcessor 的角色和 IContentAssistProcessor 的角色是完全相同的,只是具体方法不同罢了。下面是 IQuickAssistProcessor 的声明:

清单3. IQuickAssistProcessor 接口

   public interface IQuickAssistProcessor { 
 String getErrorMessage(); 
 
 boolean canFix(Annotation annotation); 
 
 boolean canAssist(IQuickAssistInvocationContext invocationContext); 
 
 ICompletionProposal[] computeQuickAssistProposals( 
 IQuickAssistInvocationContext invocationContext); 
} 

快速帮助比内容提示多了一个上下文相关的接口:IQuickAssistInvocationContext。它可以用来为快速帮助提供一些辅助信息。实际上,内容提示也是需要上下文信息的,但是 JTF 没有另外做一个接口来包装它,如果你要做一个复杂的内容提示功能,往往需要自己来定义一个上下文信息接口。

canFix 方法在内容提示中也没有类似物。这个方法主要是提供给 Marker 系统来使用的,比如下图中所示的右键菜单:

图3. Problem 视图中的右键菜单
基于 JFace Text Framework 构建全功能代码编辑器: 第 7 部分:Quick Assistant

上一页  1 2 3 4 5  下一页

Tags:基于 JFace Text

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接