快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

新蒲京澳门app下载_博格自动化网进入



到现在为止,我们照样只是先容模型相关的器械,还没有打仗到Dsl的模型的展现,对付一个Dsl来说,没有图形展现也是可行的,不过对付一个开拓对象来说,要供给一种要领来操作我新蒲京澳门app下载们的元数据,Visual Studio DSL在图形展现这方面供给了不错的支持,不过对付繁杂的Dsl来说,图形的展现每每需求很繁杂,现在的图形化支持在必然程度上也未必能够满意一些特定的需求, 有总比没有好,期望微软会在这方面会有所加强。

照样以我们创建的LanguageSm项目为例,我们大年夜概先容一下界面表示相关的观点,打开DslDefinition.dsl文件,此次我们看泳道(也便是树线)的右边:

一. 图表

我们看最下面的LanguageSmDiagram,这便是图表元素,它是存储外形和连接器映射的容器,代表设计界面自身,映射到模型的根域类(图形元素Diagram Elements都是与模型相对应的),也便是映射到我们例子里的ExampleModel,我们来看一下图表的属性:

在这里,我们可以对图表的外不雅,代码,文档,公开样式属性,资本几个方面进行属性设置,Dsl会网络设置的这些信息,然后根据T4模板,在Dsl项目的Generate Code文件夹下面天生Diagram类,我们也可以对这个类进行扩展,实现图表方面的一些自定义,比如设置背景图,显示收集等。假如你想实现Dsl模型的自己的界面表示要领,也必要实现自己的图表元素Diagram类.

二.编辑器

编辑器分为两种类型:(图形)设计器和自定义编辑器.编辑器的定义在Dsl资本治理器(Dsl Explo新蒲京澳门app下载rer)中的“编辑器”(editor)节点下,这里的定义的属性用于天生EditorFactory类(认识VSX的应该知道,我们会在后面先容),对象箱等,我们来看一下默认的设计器的属性:

这里必要提示一下,在dsl设计的历程中,有很多时刻必要dsl浏览器和属性对应操作应用,可以经由过程右键属性来进行设置。

属性里设置了编辑器对应的图表元素,编辑器的GUID,根域类,以及存储Dsl模型的文件扩展名,与文件关联的图标。或许你不太明白这些属性代表什么意义,没有关系,今后会明白的。

我们在第一节就说过, Dsl模型并不必然要有图形编辑器的,我们也可以在这里添加我们自定义的编辑器,你可以右键删除默认的Editor,然后在根结点LanguageSm上右键添加自定义编辑器,然后设置上面说的那些属性,然后实现自己的DocView,在这里有具体流程,详细的措施我们也会在后面具体先容.

三.外形

外形是Dsl图形符号的重点,由于外形和模型元素逐一对应(前面说的ExampleShape是一个几何外形,和根域类对应),可以使模型元素形象化,这也是Vs.Net DSL图形化DSL的特征. 外形又分为以下五个不合的类型,这五个外形在对象箱上都有,可以直接拖动到图形区域创建新蒲京澳门app下载对应的外形,建议现在没有需要太去细化,而只必要记着他们的样式,能够按需所有,详细怎么设置照样到应用的时刻再去钻研:

1.几何外形(GeometryShape)

左侧为外形的模型,右侧为调试后运行的显示模型,外形中的文本装饰器NameDecorator便是用来节制我们显示图形中的文本,你可以查看装饰器的属性,节制文本的显示,包括文本新蒲京澳门app下载,显示位置等.

对付几何外形,除了文本装饰器以外,你还可以添加IconDecorator(装饰图形上显示图标),ExpandCollapseDecorator(装饰图形的展开紧缩)

2.隔间外形(CompartmentShape)

隔间外形是带有隔间的几何外形,一个隔间外形有可以有多个隔间:

同样,对付隔间外形,你也可以象几何外形那样添加其它的装饰器新蒲京澳门app下载.

3.图像外形(ImageShape)

图像外形是显示图形非轮廓的外形:

可以看到,图像外形显示的和我们通俗的几何外形是不一样的,我们可以针对图象开关设置显示的图像和图标资本,我们来看一下上面的图像外形的属性,在最下面我们定义了显示的图标:

4.端口(PortShape)

端口是依赖在外形轮廓上,并只能绕轮廓移动的特殊外形,除此之外,和通俗的几何外形没有差别。

5.泳道(Swimlane)

泳道用来将图表瓜分成行或例,我们看下面的状态流程图:

参考资本

1. Visual Stuido DSL 对象特定领域开拓指南

2.Using WPF As The Designer Surface In DSL ToolsGokhan Altinoren

转自:http://www.cnblogs.com/lonely7345/archive/2010/02/10/1666906.html

您可能还会对下面的文章感兴趣: