创建自己的Eclipse插件模板-通过定制现有的模板满足特定需求 - 编程入门网
会发现在定制模板方面的一个问题。因为每个透视图的视图数量是可变的,所以 在视图数量确定之前,不可能生成相关资源并复制到目标项目中。
为了解决此问题,我们来考虑 两个解决方案。一种常用的方法是为每个透视图类别创建一个模板,一个透视图类别中的所有透视图包含 相同数量的视图。另一种方法更高效更高级。只为所有透视图类别创建一个模板。通过区段控制管理视图 和透视图之间的链接。 添加用于透视图和视图区段的扩展 在此示例中,把所有资源分为两 个部分。使用透视图区段管理透视图资源,使用视图区段管理视图资源。如果用户需要没有视图的透视图 ,就不会把视图资源复制到目标项目中。同样,如果用户需要包含 9 个视图的透视图,那么在透视图中 注册 9 个视图,重复生成视图资源并把资源复制到目标项目中。 创建自己的Eclipse插件模板-通过定制现有的模板满足特定需求(3)时间:2011-11-02 IBM Jie Tang为了生成这两个区段,需要在 Manifest Editor 的 Extensions 选项卡中添加扩展。 图 1. Extensions 选项卡 — 透视图区段 图 2. Extensions 选项卡 — 视图区段 区段实现 图 3 给出模板项目的结构。在此示例中,创建 5 个新文件(SampleWizard.java、 PerspectiveSection.java、ViewSection.java、$perspectiveClassName$.java 和 $viewClassName$.java)。它们构成项目的主要部分。 图 3. 模板项目结构 创建自己的Eclipse插件模板-通过定制现有的模板满足特定需求(4)时间:2011-11-02 IBM Jie TangPerspectiveSection 和 ViewSection 是 OptionTemplateSection 的子类,这个类代表模板向导的一 个区段。它们有三个主要功能:创建模板的 UI、保存从 UI 输入的变量和更新模板模型。表 1 解释区段 类的各个方法。 表 1. 区段类的方法
$perspectiveClassName$.java 和 $viewClassName$.java 是模板文件,它们会自动转换为目标项目 的 Java 源代码文件。此示例中的模板文件非常简单。我们仅仅创建所有视图的列表,然后把这些视图添 加到透视图中。 接下来,在向导行为中添加区段控制。SampleWizard 类是 NewPluginTemplateWizard 类的子类,这 个类作为插件的向导模板。可以通过 SampleWizard 类把指定的区段分配给目标插件项目。 performFinish 方法是从超类继承的。可以使用它在向导中执行特殊的最终处理,包括循环处理模板区段 并依次执行它们,从而为目标项目生成文件。清单 1 显示如何在向导中注册区段和 performFinish 方法 中的主要操作。 清单 1. SampleWizard.java //register all related sections in wizard public ITemplateSection[] createTemplateSections() { return new ITemplateSection[] { new PerspectiveSection(), new ViewSection() }; } public boolean performFinish(final IProject project, IPluginModelBase model, IProgressMonitor monitor) { ... ITemplateSection[] sections = super.getTemplateSection |
||||||||||||
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |