0

我目前正在开发一个 RCP 应用程序,我可以在其中绘制一个内部框图。

也许你们中的大多数人都知道日食中的“Papyrus”。这个建模工具提供了一个内部框图,但我认为它有点过载,所以我决定自己做。

我发现了这个很棒的教程: https ://www.vainolo.com/tutorials/gef-tutorials/

它对 GEF 的工作方式帮助很大,但没有解释一件事。如何绘制端口。在下面的图片中,您可以看到我的能力。

这就是我得到的和我能做的。

我正在尝试修改用户能够绘制端口的应用程序。就像在下一张图片中一样: 在此处输入图像描述

有人知道 GEF 是如何做到的吗?据我了解,它与节点的图形有关。每个节点都有一个显示在图表内的图形。端口是节点边缘的延伸,不可能超出节点边缘。所以我认为纸莎草纸使用不同的方式来实现这一点。我试图获取 Papyrus 的源代码,但我没有找到任何关于它的文档......

我很感激每一个意见。

4

1 回答 1

0

Papyrus 使用GMF创建这些端口。您可以检查包含BorderItem的类,例如AbstractBorderItemEditPart

请注意,您所遵循的教程似乎是为 GEF3 编写的。据我所知,在纯 GEF3 中管理端口没有“简单”的方法。

去年 GEF 发生了重大变化,您应该能够使用新的 GEF4 API 轻松创建端口。

于 2017-11-22T12:41:58.353 回答