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

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

 2010-03-18 00:00:00 来源:WEB开发网   
核心提示:Content AssistantContent Assistant(内容提示)可以帮助程序员快速的完成代码,并且还有代码自动补全的附加功能,基于 JFace Text Framework 构建全功能代码编辑器: 第 4 部分:Content Assistant,这对于一个代码编辑器来说是至关重要的,也是不少人喜欢用

Content Assistant

Content Assistant(内容提示)可以帮助程序员快速的完成代码,并且还有代码自动补全的附加功能。这对于一个代码编辑器来说是至关重要的,也是不少人喜欢用 IDE 编写代码的原因之一。但是这个功能背后却不是那么简单的,我们先来了解一下 JTF 中和 Content Assistant 相关的概念,下面是 Eclipse 中 Java 编辑器的内容提示的样子:

图1. Java 编辑器的内容提示
基于 JFace Text Framework 构建全功能代码编辑器: 第 4 部分:Content Assistant

查看原图(大图)

先来介绍一下图 1 中出现的三个概念:

Proposal(提议):Proposal 代表了一个可能的自动完成选项,程序员选择之后,代码会自动填入到编辑器里。

Proposal Popup(提议弹出列表):Proposal Popup 是用来显示自动完成列表的窗口

Additional Info(附加信息):每个提议都可以附带一些帮助信息,叫做 Additional Info,它会显示在弹出列表的旁边,并且当你选择某个 Proposal 的时候自动刷新。

提示:在弹出列表出现后,你可能会发现有些键盘事件被弹出列表处理了,比如你按上下箭头,它会改变当前被选择的 Proposal。这是因为在列表弹出之前,内容提示管理器向文本框添加了一个按键校验事件处理器,截获了这些按键。具体的代码可以参考 ContentAssistant 的内部类 InternalListener。

1 2 3 4 5  下一页

Tags:基于 JFace Text

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