gpt4 book ai didi

eclipse - 将 Eclipse GEF 放大到特定位置

转载 作者:行者123 更新时间:2023-12-02 00:44:13 28 4
gpt4 key购买 nike

您好,我是 Eclipse GEF 的新手,我在缩放方面遇到问题。

基本上我想要这个功能:每当我关闭编辑器 View 时,我都希望编辑器按以前的比例缩放,最重要的是缩放到相同的位置。

我试图通过 Viewport 实现此类功能,但我陷入困境。

最佳答案

最后我通过 setViewLocation(Position p) 方法找到了解决方案。棘手的部分在于其他地方 - 在执行此类方法之前,视口(viewport)必须处于有效状态,

所以最好的方法是在视口(viewport)的UpdateManager上执行performUpdate()。如果您在 GEF 编辑器中设置此类位置,则可能会出现另一种棘手的情况,因为设置位置必须在 initializeGraphicalViewer() 方法中执行,而不是configureGraphicalViewer()方法。

所以最终代码应该如下所示:

@Override
protected void initializeGraphicalViewer() {

super.initializeGraphicalViewer();
final GraphicalViewer viewer = getGraphicalViewer();
viewer.setContents(getModel());
ScalableFreeformRootEditPart rootEditPart = (ScalableFreeformRootEditPart) viewer.getRootEditPart();

Viewport viewport = (Viewport) rootEditPart.getFigure();
viewport.getUpdateManager().performUpdate();
viewport.setViewLocation(getModel().getZoomPosition());
}

关于eclipse - 将 Eclipse GEF 放大到特定位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5426583/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com