随笔分类 - gmf
摘要:GMF默认生成的outline很成问题,只能显示top level的图形,比如在logic例子中,画板中图形元素和outline对应如下: 可见非top level的图形并没有与之对应的Tree Item显示在outline tree上。 其实用过gef的人都很容易知道原因,因为outline上每一个节点对应的也是一个tree editpart,每个tree editpart复用对应画板图...
阅读全文
摘要:在基于EMF模型的应用中经常会有这样的需求: 当一个模型对象被一个特定的对象引用后,就不可以再被其他的对象引用。如何获取一个模型被那些其他模型引用了这个信息呢? 当然一种解决方案是在建模的时候,把引用设成双向的。然而这样会造成一定的冗余,使你的模型稍显臃肿和复杂。其实如果你是用EMF来表示你的模型,通过EMF提供的API可以获得所有引用某个model的model列表: 代码如下: EObject...
阅读全文
摘要:在GMF中当使用XYLayout时经常会遇到这样的问题: 1。在create一个新figure时,figure会跑到它的parent figure的外面。 2。在move或者resize时跑到parent figure的外面。 如下图logic example中的问题: 一般的情况下,用户会challenge这个现象,如果在resize的时候,即便把figure的边界拖出parent,figu...
阅读全文
摘要:前几天问了一个同事EMF模型操作的问题,还没来的验证,先记下再说! 当在EditDomain下操作模型时,所有对模型的修改需要在Command中完成,并且涉及到了EMF事务处理。不在EditDomain下操作模型,不涉及事务,但需要自己写自己的模型监听器。在EditDomain下操作模型,在ResourceSet里面注册监听器就可以监听模型的变化!
阅读全文
摘要:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1 /** 2 * Method getCreateElementAndViewCommand. 3 * 4 * @param request 5 * @ret...
阅读全文
摘要:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->a) First, in class DiagramDocumentEditor, the method public void doSave(IProgressMonitor progressMo...
阅读全文
摘要:1. 创建element type的一段代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->private Element createElement(Element container, IElementType type, ...
阅读全文
摘要:UNC path Universal/Uniform Naming Convention. A UNC path describes the location of a volume, directory, or file.The format for a UNC path is \\server\volume\directory\file and is not case-sensitive. F...
阅读全文
摘要:2006年5月9日讨论了关于gmf的一些feature2006年5月14日1.阅读文章“Learn how to implement the Command pattern in Java ”http://www.javaworld.com/javaworld/javatips/jw-javatip68.html该文章主要讲了设计基于java语言特性的Command框架设计。figure 1 关于...
阅读全文
摘要:Resource通过两种方式实现XML和XMI。1.XML实现Resource存储的重要方法是save, 只有在方法eIsSet()返回true时,相关的属性和引用才会被序列化到xml中。对于存储的xml文件的格式可以通过设置OPTION_XML_MAP属性来完成,如下面原文: There are several reasons why you might want to use OPTION_X...
阅读全文
摘要:关于EMF的序列化对于EMF的序列化有几个比较重要的接口:Resource,ResourceSet,Resource.Factory,URIConverter。这些接口的主要作用就是保存模型到持久化存储介质,或者从持久化存储介质加载模型。1.关于URI(Uniform Resource Identifier)在EMF 中是通过URI来标识package的,并且同过URI来唯一的确定resource...
阅读全文
摘要:Packages and Factoriespackage和factory类帮助你访问模型的metadata,或者创建模型的实例。通过package可以轻松的获得模型的EClass对象,如: EClass purchaseOrderClass = epo2Package.getPurchaseORder(); 例外还有一种方法也可以通过package类对象获得model的EClass对象,如: E...
阅读全文
摘要:在gmf中属性页的支持是由PropertyProvider完成的。自动生成的PropertyProvider只有三个方法: public boolean provides(IOperation operation) {……}public ICompositePropertySource ……}protected EObject getSemanticElement(Object object) {...
阅读全文

浙公网安备 33010602011771号