MetaModelEngine:界面表示

  在读书笔记:Visual Studio DSL工具特定领域开发指南中介绍过图形DSL有几个重要内容必须要定义:域模型(域类和关系、约束)、符号、生成、序列化和工具集成。在MetaModelEngine:域模型定义中介绍了域模型定义相关内容,在MetaModelEngine:模型存储的概要说明中介绍了存储的问题,本篇接着介绍界面定义相关内容。

形状

  MetaModelEngine支持几何形状、隔间形状和泳道三种形状,具体样式各自图形所示:

  • 几何形状:通过几何形状的构成非常容易的查看形状所代表元素的信息
    • Object、Port、Role、Relation都支持几何形状。Object形状一般为一个几何形状加上一些信息,Role形状一般为一条直线加上一些信息,Relation形状一般就是一个连接点         
    • 这些几何形状,可以通过一个符号编辑器进行定制,具备基本的画线等基本几何图形,以及设定图形的基本属性,例如颜色、线宽、填充、样式等
    • 加入文本或者高级控件还可以与模型元素属性关联
    • 可以在几何形状上自定义连接点和连接边
  • 隔间形状:一种带有隔间的特殊几何形状,展现UI如下所示:
     
    隔间用于显示链接到隔间形状实例对应元素的元素列表,例如UML中的类定义的属性和方法。
         
  • 泳道:用来将图标分割成行或者列,一般在流程定义中使用。泳道属于图中使用的形状,分为横向和纵向两种泳道

属性窗口

通过元模型对象定义的Property,可以采用类似OpenExpressApp中的AutoUI功能来自动生成一个属性编辑窗口,基于这个窗口我们还可以修改布局

图形设计器


WPF:从WPF Diagram Designer Part 1学习控件模板、移动、改变大小和旋转

WPF:从WPF Diagram Designer Part 2学习面板、缩略图、框线选择和工具箱

WPF:从WPF Diagram Designer Part 3学习如何给设计器增加连接线功能

WPF:从WPF Diagram Designer Part 4学习分组、对齐、排序、序列化和常用功能

 

 

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

posted on 2010-09-16 10:03  周 金根  阅读(2228)  评论(1编辑  收藏  举报

导航