GMF常见问题(5)

2018-11-19 20:28

@c.c

环的检测从逻辑上要比自身连接的检测麻烦很多,但OCL的描述能力是很强的,我不确定是否能用OCL实现。我也许会选择用java实现,GMF也支持的。

回复 引用 查看

#68楼 2008-10-17 10:32 aleaner[未注册用户] 八进制,你好。询问一个gmf项目中的小问题.

在一个对象的属性(wsdl)中,有另一个属性(operations),即属性的属性,希望它的下拉框(operationList)中只是显示当前属性(wsdl)限定的一些内容,而目前却把所有对象中此属性中的属性(即所有的operations)全部列出来. 找了许久,不得其法 谢谢

回复 引用

#69楼 2008-10-22 16:27 pfzhan[未注册用户]

你好,八进制。关于删除41点删除右键菜单里不需要的菜单项,我在扩展

org.eclipse.gmf.runtime.common.ui.services.action.contributionItemProviders,在它的目录下面加了contributeItemProvidor,之后建立了popuContribution,但是设置了你所列举的那些ID之后,并没有什么作用。是不是我popuContribution的扩展点错了? 这是plugin.xml相应的代码:

point=\

class=\

name=\

id=\ remove=\

还有,你说gmf runtime 定义的ID在 org.eclipse.gmf.runtime.diagram.ui.actions.ActionIds 查看,我试了很多方法都没找到这个东西,能不能详细地说一下使用方法,比如它所用到的Denpendencies或扩展等。 谢谢

回复 引用

#70楼 2008-10-28 14:21 carolwyj[未注册用户]

你好,请教下如何给link旁边增加文字。

回复 引用

#71楼 2008-11-06 15:34 benson wang[未注册用户]

老大你好 想咨询一个问题 就是我生成的节点 ,如果我想改变的他默认的图标,应该怎么操作啊?? 是在graph文件中设置吗?

回复 引用

#72楼 2008-11-08 14:02 chj[未注册用户] 八哥,您好,请教您一个问题

我最近在做rcp开发时,要用到一个gmf拖拽,拖拽大概是这样的:用gmf生成3个editor,在第一个editor中拖入节点后,双击该节点可以打开第二个editor,然后可以在第二个editor中拖入节点,同样双击第二个editor中的节点可以打开第三个editor进行编辑。

在非rcp环境中我已经实现了上面的功能,但我怎么将其转换成rcp呢,因为这有三个digram工程,不知道怎么设置,盼您的回复,再次谢谢了!

回复 引用

#73楼[楼主] 2008-12-17 23:37 八进制 @carolwyj

在.gmfmap文件里设置,Link Mapping下建Featured Label Mapping

回复 引用 查看

#74楼[楼主] 2008-12-17 23:56 八进制 @aleaner

没能完全理解你的场景,下拉框是你自己实现的吗,是comboviewer吗,那一般用filter解决只显示一部分内容的问题。

回复 引用 查看

#75楼[楼主] 2008-12-18 00:01 八进制 @benson wang

节点的默认图标可以在.edit项目的icons目录里找到,用新图标覆盖即可。另一个办法是修改相应editpart里的XXXFigure类,为它设定你想要的图标(若原来没有,可以add一个Label然后Label#setIcon())。

回复 引用 查看

#76楼 2009-01-23 11:32 gouweibacao[未注册用户]

八进制你好,最近项目需要在学习GMF。基本上是跟着你的教程学习的,感觉非常好,非常感谢。在这里有个问题想请教 问题:

39、新建向导结束后,生成一个非空的模型文件。(Customize新创建的模型文件)

修改XXXDiagramEditorUtil#createInitialModel()方法。

具体怎么做呢?不知道怎么画出图形

回复 引用

#77楼 2009-01-23 17:28 gouweibacao[未注册用户] --引用--------------------------------------------------

gouweibacao: 八进制你好,最近项目需要在学习GMF。基本上是跟着你的教程学习的,感觉非常好,非常感谢。在这里有个问题想请教 问题:

39、新建向导结束后,生成一个非空的模型文件。(Customize新创建的模型文件)

修改XXXDiagramEditorUtil#createInitialModel()方法。

具体怎么做呢?不知道怎么画出图形

-------------------------------------------------------- 也就是想问你怎么用代码创建一个节点?

回复 引用

#78楼[楼主] 2009-02-03 12:50 八进制 @gouweibacao

不需要自己画图形,在XXXDiagramEditorUtil#createInitialModel()方法里创建你的模型即可,图形会自动生成出来(不过是未经布局的)。例如这样写:

MyModel model = MyFactory.eINSTANCE.createMyModel(); MyElement element1 = MyFactory.eINSTANCE.createMyElement(); MyElement element2 = MyFactory.eINSTANCE.createMyElement(); model.getElements().add(element1); model.getElements().add(element2); return model;

这样,在向导里新创建一个图形文件的时候就会看到画布上有两个图形了(每个对应上面的一个MyElement)。

回复 引用 查看

#79楼 2009-02-24 15:10 qop[未注册用户]

请问下,八进制,我用gmf做一个流程设计器,但有包级的概念,一个包对应一个文件,一个包下有多个流程,一个流程为一张画布. 在构建Graphical Definition Model和Tooling Definition Model的时候,应该指定包还是流程模型为Diagram Element.

因为感觉GMF的moedel和viewer层是一一对应的,如果要在viewer层隐藏掉最上层的包级,有什么好办法么?

回复 引用

#80楼[楼主] 2009-02-24 16:36 八进制

流程模型为diagram,见图形分区http://wiki.eclipse.org/Diagram_Partitioning

回复 引用 查看

#81楼 2009-02-24 18:58 qop[未注册用户]

关于图形分区http://wiki.eclipse.org/Diagram_Partitioning 我按照了

Usecase 2 \

做了一遍,但最后super.gmfgen和sub.gmfgen为什么生成的代码都到一个plugin里去了 ---------------------------------------------

6. Now comes a \one and only .genmodel. The \almost every class specified in the generator model. E.g. the \pre-filled with EditPartProvider. So if you want the class names correspond to your sub-diagram root element name (as it should be) you'll have to rename every darn class name in the .gmfgen! That's not very convenient, but maybe there is a workaround for that?

I already tried to temporarily change the model name in my .genmodel. If you create the .gmfgen now, the class names look alright. But, here's the catch: they don't get written out to the XML. So if you change the model name in the .genmodel all class names in .gmfgen change but the file doesn't even get dirty! You'd have to activate every property that holds a class name, change it (e.g. by appending a letter) and press enter (now the editor shows the file as dirty with the \reverting your change (but not using Undo!) and then the change is permanent. Rinse and repeat for the dozens of other class names all over the .gmfgen and finally wake from your editing trance. I just worked around that problem by creating a second .genmodel file as a copy of the

original .genmodel. The only change I made was to set the \as prefix for all the class names in the sub-mappings .gmfgen. Of course I also needed to .genmodel references. I did it with find/replace but I guess one could also just load the new resource and drop the old one...

-----------------------------------------

这一步没有看太明白,没有做,是不是这儿的问题,我感觉这一步好像只是改package名,如果最后super和sub生成2个plugin,不做这一步也没问题吧?

回复 引用

#82楼 2009-02-25 12:51 qop[未注册用户] 再请问下,我想得到下面这种结构

但用图形分区,只能得到如下的结构

如果要得到想要的3层结构,是不是得用图形分区2次?但是一对一的,super Diagram层是指定的,sub Diagram层是指定的,但中间那层应该怎么做才能在最后XML文件中保存出来?

回复 引用

#83楼 2009-02-25 16:37 qop[未注册用户] 我想得到下面这种结构

但我用GMF生成的框架,貌似只能得到如下的结构,而且每2层必须有一张画布(一个Editor)

用图形分区,但图形分区只有3层,而我需要的可能是4-N层,而且我只需要一个DIagram,只是最后存储时怎么才能得到最上面的结构

回复 引用

#84楼 2009-02-26 01:15 yomi[未注册用户] 去新闻组问了下,英语实在不好,可能没表达清楚:(

http://dev.eclipse.org/newslists/news.eclipse.modeling.gmf/msg16854.html 有人回答了,但也没太明白啊


GMF常见问题(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:课堂教学秩序整顿方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: