OpenExpressApp make business engineers develop applications中说过先考虑使用EMF先实现一个TOGAF9的建模工具来综合的了解建模更方面的知识,由于没有怎么用过Eclipse,上周看了三本书Eclipse in ActionEclipse Plug-ins (3rd Edition)Eclipse Modeling Framework (2nd Edition),只是大概的看了一下,了解了Eclipse的编程环境、插件编写以及EMF的大致内容,知道以后有什么不知道的东西在哪里去查看具体内容而已。本周开始看Eclipse Modeling Project,目标是这周看完后能够自己基于模型做一个简单的图形编辑器。

  GMP(Graphical Modeling Project)提供了一套生成组件以及运行时引擎来基于EMFGEF开发图形编辑器。本篇主要介绍一下GMP中主要的GMF(Graphical Modeling Framework),认识一下GMF引擎的主要功能。

介绍

  GMF是Eclipse中达到快速开发图形建模工具的一个重要框架,例如UML编辑器、ECore编辑器、流程编辑器都可以用它来做。

  GMF分为两个组件:运行时引擎(the runtime)和工具(the tooling)。工具提供一种模型驱动方法来生成基于Eclipse的图形编辑器,引擎是一个经过验证的基于EMF和GEF的图形编辑器的应用框架。

架构组件

GMF图形编辑器依赖于GMF runtime组件,同时也直接使用了EMF、GEF和Eclipse平台:

GMP:了解GMF引擎功能Graphical Modeling Framework_职场

GMP:了解GMF引擎功能Graphical Modeling Framework_GMP_02

运行时引擎带来的好处

在深入学习图形编辑器之间,先考虑一下运行时引擎带来的好处:

  • 提供GMF图形编辑器一致的界面和使用方法
  • 编辑器可以从头开始或者从现在的GMF SDK中生成
  • 管理图形序列化,允许客户关注业务逻辑
  • 容易加强其他功能,允许第三方扩展编辑器,也可以继承社区提供的一些编辑器
  • 已集成了一些新的EMFT组件,例如验证、OCL
  • 引擎经过良好的设计、编码、测试和部署

引擎的部分功能

  • 可折叠的套间(Collapsed and Expanded Compartment)
    GMP:了解GMF引擎功能Graphical Modeling Framework_GMP_03GMP:了解GMF引擎功能Graphical Modeling Framework_GMP_04
  • 直接编辑(Direct Editing)
    GMP:了解GMF引擎功能Graphical Modeling Framework_GMP_05    GMP:了解GMF引擎功能Graphical Modeling Framework_GMP_06

 

 

  • 图形助手(Diagram Assistants)

    • 弹出工具条(Pop-up Bars)
      GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_07

    • 连接处理器(Connection Handles)
      GMP:了解GMF引擎功能Graphical Modeling Framework_职场_08GMP:了解GMF引擎功能Graphical Modeling Framework_职场_09GMP:了解GMF引擎功能Graphical Modeling Framework_职场_10

图形编辑器主界面

GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_11

通用工具

GMP:了解GMF引擎功能Graphical Modeling Framework_职场_12 GMP:了解GMF引擎功能Graphical Modeling Framework_GMP_13  GMP:了解GMF引擎功能Graphical Modeling Framework_GMP_14

 

通用菜单命令

GMP:了解GMF引擎功能Graphical Modeling Framework_GMP_15

通用工具条

GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_16

放大和布局

GMP:了解GMF引擎功能Graphical Modeling Framework_职场_17

通用属性

GMP:了解GMF引擎功能Graphical Modeling Framework_职场_18 GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_19

打印

  • 加强的打印对话框
    GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_20
  • 全局或者每个图的页面设置选项 GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_21
  • 分页线 GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_22
  • 打印预览 GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_23

SVG和剪贴板支持

支持导出多种不同格式,例如:SVG, GIF, BMP, and JPEG

GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_24

支持系统剪贴板

GMP:了解GMF引擎功能Graphical Modeling Framework_休闲_25

参考

 

欢迎转载,转载请注明:转载自周金根 [ http://zhoujg.cnblogs.com/ ]