1

在我们的项目中,我们开发了一个框架,旨在封装 Java Web 开发的大部分方面。我的客户是使用这个框架的其他程序员。

我们封装的其中一件事是 JSP 标签。我们为所有内容创建了自定义标签,因此用户根本不需要使用常规的 HTML 和 JavaScript。

现在我正在寻找为这些自定义标签创建 GUI-Builder 的方法。意思是某种 GUI 应用程序,它允许用户将图形控件拖放到画布上,然后基于此应用程序将生成页面的 JSP 代码。请注意,我们的自定义标签不仅仅用于抽象。其中许多是可见控件,由 HTML 结构和用于控制它们的 JavaScript 逻辑组成。并且自定义标记的属性(用户在 JSP 中定义)有时会影响它的外观和行为。

如果该工具可以成为 Eclipse 的插件,那将是一个巨大的好处。

是否有任何现有的工具可以做到这一点?

是否有用于创建此类工具的设计模式或最佳实践教程?

谢谢!

4

2 回答 2

1

我曾致力于开发类似于您所描述的工具。在我们的例子中,我们需要一个拖放式 GUI 工具,它可以为我们的服务器创建类似于模型的 RDBMS(表、列、关系)。我们为此使用了 eclipse GEF 插件。

GEF(Graphical Editing Framework)是一个非常成熟的框架,可以让你构建一个拖放式的图形编辑器。您可以创建一个调色板,定义不同的形状,将不同的形状与不同的内部“模型”相关联,定义不同类型的连接器,定义将形状拖放到编辑器等时需要完成的操作。当我处理它时,我们将我们的工具构建为普通的 eclipse 插件(在 GEF 插件之上)并将其部署在 eclipse 上。那时 Eclipse RCP 框架才刚刚起步。

http://www.eclipse.org/gef/

我的经验是 GEF,我很确定 GEF 会做你的工作。下载演示并浏览代码后,您将了解开发自己的图形编辑器需要做什么。

还有另一个名为 GMF(图形建模框架)的 Eclipse 项目。GMF 建立在 GEF 和 EMF 之上,并提供更高级别的工具来构建图形编辑器,将其与源代码编辑器相关联(一个选项卡上有“图形视图”,另一个选项卡有“源视图”选项卡)等。 GMF 是一种“高级”框架,可为您管理 GEF 管道代码。

http://www.eclipse.org/modeling/gmp/?project=gmf-tooling#gmf-tooling

请注意,上述两个框架都需要一些时间和精力来理解。GEF 有据可查。如果您之前有过 Eclipse 插件开发经验,那将是一个加分项。

于 2013-01-30T14:17:15.490 回答
0

如果您正在创建一个 Eclipse 插件,那么您正在创建一个多页面编辑器。一页(或多页)用于 GUI,一页用于生成的代码。

当您第一次构建 Eclipse 插件时,您遇到的多页面编辑器之一是 MANIFEST.MF 文件和 plugin.xml 文件的编辑器。这是一个多页编辑器,它生成两个代码文件,而不是一个。

面向 RCP 和 RAP 开发人员的 Eclipse 将帮助您启动 Eclipse 插件。

  • 打开 Eclipse,并切换到要用于开发插件的工作区。
  • 在 Eclipse 菜单栏中,左键单击 File -> New -> Project...
  • 在 New Project 对话框中,打开 Plug-in Development 文件夹,然后左键单击 Plug-in Project。
  • 左键单击下一步按钮。
  • 在插件项目对话框中,为项目命名。您可以接受对话框其余部分的默认值。
  • 左键单击下一步按钮。
  • 接受“内容”对话框中的默认值,然后左键单击“下一步”按钮。
  • 在模板对话框中,左键单击“带有多页编辑器的插件”。
  • 左键单击完成按钮。

Eclipse javadoc 位于 Platform Plug-in Developer Guide -> Reference -> API Reference 的 Eclipse 帮助中。

为了帮助理解 Eclipse javadoc,您需要一个很好的教程。Vogella教程非常好。

如果您对 Eclipse 插件有具体问题,可以在 Stack Overflow 上提问。

于 2013-01-29T15:37:37.743 回答