问题标签 [eclipse-gef]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
141 浏览

java - 在 CreateConnection GEF 上创建菜单

我想在创建和完成两个editParts之间的连接时创建一个上下文菜单,因为我想为连接选择一些功能。如何在不单击右键的情况下在 Editpart 中创建 contextMenu 或弹出菜单?

0 投票
1 回答
401 浏览

model-view-controller - GEF 真的是 MVC 框架吗?

http://www.vainolo.com/tutorials/的教程中,模型的位置保存在模型中。我想在加载文件时将所有数据保存到文件并获得相同的视图。

在寻找这个问题的答案时,我得到了另一个更重要的问题:
GEF 真的是 MVC 框架吗?

GEF Controllers告诉 mvc 控制器角色取自EditPart。它创建指定的对象。
关于控制器保存视图部分的示例,但 mvc 模式告诉,控制器仅对用户交互做出反应并告诉视图,它必须更新或其他。
总结以下代码是错误的,因为它是EditPart的一部分并且它会发生变化:

关于维基百科,视图在模型上有一个观察者,所以 GEF 的以下句子是错误的,不是吗?EditPart
将实际模型状态同步到视图并实现观察者。

在 MVC 模式中,控制器必须监听模型的变化。在 GEF 中,EditPart 是控制器,因此它们必须侦听其模型以根据模型的新状态更新视图。

那么什么是正确的呢?

为防止交叉发布,请查看http://www.eclipse.org/forums/index.php/m/755178/

0 投票
1 回答
545 浏览

eclipse-gef - 移动编辑部分时 Gef 连接端点位置更新

我有一个与之建立连接的编辑部分。当编辑部分的位置改变时,连接端点也必须更新它们的位置,并且与编辑部分的连接必须只发生在矩形的四个边上。谁能建议我如何做到这一点?

0 投票
1 回答
391 浏览

eclipse-gef - emf 模型的 Gef 编辑部分

我正在从 EMF 模型创建 GEF 编辑器;假设模型名称是 StartEvent,它具有 ID 和名称等属性。

在编辑部分,我有两个标签:一个用于显示小圆圈,另一个用于显示名称。我已经在图形类中实现了handleBounds 接口,并返回了图标标签的边界,这样当我单击图形时,只有在不实现handleBounds 接口时才会选择图标,否则将选择整个图形。

图标标签和名称标签都必须是可选的,并且我必须能够将名称标签移离它。

StartEvent 模型的名称属性映射到名称标签。

我明白 gef 中的每一件事都是编辑部分。您的回答可能是名称标签也应该是单独的编辑部分,但名称不是模型;它是模型的属性。

0 投票
0 回答
551 浏览

eclipse - 处理从视图复制/粘贴到图形编辑器的正确方法

我们正在开发一个应用程序,在该应用程序中,我们使用扩展点处理图表中的本地复制/粘贴org.eclipse.gmf.runtime.emf.clipboard.core.clipboardSupport

使用带有 commandId 的处理程序处理视图中资源的复制/粘贴事件org.eclipse.ui.edit.copy/paste

我的问题是,在应用程序中的图表(或任何 GraphicalEditor)和其他视图之间处理复制/粘贴事件的正确方法是什么?

目前,我设法以编程方式解决它,将此代码放在 DiagramEditor 初始化方法中:

但它会覆盖编辑器的其他粘贴侦听器,并且通常会中断我们的设计。

欢迎任何想法:-)

0 投票
1 回答
165 浏览

eclipse-emf - GEF 编辑器中的元素移动不起作用

我目前正在使用 Eclipse GEF 构建一个编辑器。可以通过编辑器添加新部件并重命名它们。

但是我对元素的移动有一点问题。当用鼠标拖动它们时,当我释放鼠标并且元素不会与另一个元素碰撞时,它们不会移动。
元素的位置存储在一个EMap(模型是用 EMF 制作的)中。视图中的更改使用put地图的方法保存。

在使用调试器进行检查时,我注意到命令已执行,但视图尚未刷新。

我在模型中添加了一个适配器,但notifyChanged系统没有调用它。

ViewAdapter注册在 的激活方法中EditPart

会是什么呢?

0 投票
1 回答
204 浏览

java - 具有恒定节点宽度的Draw2D GridLayoutAlgorithm?

我们正在将 Draw2D/GEF 集成到应用程序中,并且遇到了与提供的标准布局有关的问题。

我们有一个需要以类似网格的方式显示的元素集合(比如 100 个)。我们使用 a 实现了我们的视图GraphViewer,并应用了 a GridLayoutAlgorithm

几乎可以像我们希望的那样工作,但是我们无法满足的一个规定是每个节点必须具有恒定的、定义的大小。比如说,50x50 像素。我们正在使用的当前 GridLayoutAlgorithm 调整节点的大小,以便它们都适合窗口。如果我们的窗口很小,那么 100 个元素就会变得微不足道。相反,我们希望它们填充宽度,然后用垂直滚动条换行到多行。

对于我的生活,我找不到一个简单、直接的方法来实现这一点。

0 投票
1 回答
272 浏览

swt - SWT 通过从底部增加其大小并从顶部减小它来在有限的画布上动态绘制大量数据

我想在 draw2d figurecanvas 上绘制很多图形。图形会消耗大量内存。我希望它们在画布上连续绘制,但由于内存问题而不能。现在我想以这样的方式绘制它们,当我向下滚动时,画布应该在底部扩展 x 像素(高度)量,并且新数据应该同时绘制在那里,某些部分说 x 像素(高度) 应从画布顶部移除。我通过设置画布的边界来尝试这个,但这不会有任何区别,因为设置边界只会将画布的位置连同它的数据一起移动到新位置

0 投票
1 回答
250 浏览

eclipse-plugin - 如何在不使用拖动检测侦听器的情况下在 Slider 上实现拖动检测?

我想在 Slider 小部件上实现一个拖动检测。所以当用户拖动拇指时。应该检测到阻力。任何人都可以在不使用拖动检测侦听器的情况下提出解决方法。

谢谢

关于巴拉特 Y

0 投票
1 回答
209 浏览

selection - 在 Eclipse GEF 中检索选择点

我有一个 Eclipse GEF 编辑器(从 Shapes 示例开始),其中包括一个图表编辑部分(扩展 AbstractGraphicalEditPart)。我正在实现将对象从编辑器实例复制到编辑器实例。

在粘贴操作(扩展了 SelectionAction 并实现 ISelectionChangedListener)中,是否可以确定选择点?

“粘贴”操作仅在有人单击图表图形的开放区域后启用。粘贴操作收到“selectionChanged(SelectionChangedEvent 事件)”回调,但我无法从 event.source 中找出用户单击的位置...。

有什么线索吗?