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

基于 JFace Text Framework 构建全功能代码编辑器: 第 9 部分:Template

 2010-03-18 00:00:00 来源:WEB开发网   
核心提示:TemplateTemplate(模版)可以用来快速添加某种固定形式的代码,中间还可以插入参数,基于 JFace Text Framework 构建全功能代码编辑器: 第 9 部分:Template,对于 Java 编辑器来说,你可以在 Eclipse 的设置中找到相应的属性页,TemplateStore 只能装载通过

Template

Template(模版)可以用来快速添加某种固定形式的代码,中间还可以插入参数。对于 Java 编辑器来说,你可以在 Eclipse 的设置中找到相应的属性页,路径是 General->Java->Editor->Templates。这个属性页是Eclipse标准的模版属性页,因为它做的比较完善,所以一般不需要自己写一个。

仔细探索一下这个属性页,尝试编辑一下模版,你可能会发现很多不了解的概念,下面我会一一解释

模版属性

模版包含一些基本属性:

Name(名称):这个模版的名字,必须唯一

Context(上下文):上下文是指这个模版可以在什么位置或者什么情况下出现,它相当于对模版做了一个粗略的分类。这个属性可以方便你在某些时候隐藏掉不需要显示的模版。

Description(描述):一段详细介绍模版功能的文字,还记得内容提示的时候可以通过 IInformationControl 显示一些帮助信息吗?这个属性很适合显示在那里。

Auto Insert(自动插入):当用户的输入只可能定位到一个模版的时候,是否自动把这个模版插入到编辑器中。不然还是提示用户选择一个模版插入,即使只有一个模版。

模版的定义

模版可以通过扩展的方式定义,扩展点是 org.eclipse.ui.editors.templates,也可以通过属性页手动添加,也可以通过程序方式添加。通过扩展点添加的模版,可以认为是“静态模版”,即缺省就存在的,后面两种方式则更灵活一些,但是稍微麻烦一点。

模版的存储

模版是需要持久化的,它最终会被存放到一个XML文件里面。我们并不需要知道这个 XML 文件在哪里,格式是什么,这些事情被 TemplateStore 封装了,我们直接用它就行。在装载的模版的过程中,既要装载通过扩展点定义的模版,又要装载用户手动添加的模版,TemplateStore 只能装载通过扩展点定义的模版,所以一般是使用 TemplateStore 的子类 ContributionTemplateStore,它提供了装载用户自定义模版的能力。

1 2 3 4 5 6  下一页

Tags:基于 JFace Text

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