0

我正在尝试将一个(非常)简单的图形布局算法插入我的 GEF 编辑器。我通过简单地向我的 s'添加calculateX()calculateY()方法来做到这一点(图中显然有一个)。NodeEditPartrefreshVisuals()XYLayout

它确实有效,尽管仅适用于那些与另一个节点有连接的节点,它们是另一个节点的源。当我尝试访问有问题的节点与其有连接的节点的约束时,它是目标,我得到一个NullPointerException.

这与在 GEF 中绘制节点的顺序有关。

我还猜测没有元素解析器检查哪些元素必须首先绘制,而是元素要么按照它们出现在 a 中的顺序绘制List,要么同时通过EditPartFactory从模型中的某种有序集合中获取其输入)。

但它是如何真正做到的?

4

1 回答 1

1

在 GEF 中,元素是按照它们在返回的列表中出现的顺序绘制的getModelChildren()(我不记得是从头到尾还是从头到尾,但你可以检查代码)

不过,我无法理解您的问题到底是什么,所以如果您能提供更多详细信息,我可能会为您提供更多帮助。

于 2013-06-15T19:41:18.110 回答