私は次のGEFエディターを持っていますRootEditPart
。
public class MyProjectEditPart extends AbstractGraphicalEditPart {
@Override
protected IFigure createFigure() {
ScalableFreeformLayeredPane layer = new ScalableFreeformLayeredPane();
layer.setLayoutManager(new FreeformLayout());
return layer;
}
エディターを使用してボトムアップツリーを作成しています。
_7_
/ \
5 6
/ \ / \
1 2 3 4
1-7
はRectangle
sです。ここで、はと1-4
は異なるモデル要素を表します5-7
。現時点では、すべての図は徒歩(new Rectangle(x, y, w, h)
+ parent.setConstraint(this, figure, rectangle)
)でレイアウトされています。図の位置は、図の位置に5-7
基づいて、簡単なアルゴリズムで計算されます1-4
。
実用性のために、RootFigureのedに単純に追加1-4
し、残りの図をRootFigureに追加できるようにしたいと思います。FlowLayout
Figure
BorderLayout.BOTTOM
BorderLayout.CENTER
しかし、私はGEFにかなり慣れていないので、その方法について頭を悩ませることはできません。1-4
それぞれのに数字を追加するための正しい方法を見つけることができませEditPart
んcreateFigure()
。
たとえばparent.getFigure().getChildren().get(0).add(Figure_1)
、RootEditPartのcreateFigure()
メソッドがそれぞれに2つの新しい図を追加するBorderLayout.BOTTOM
などのことを試しCENTER
ました。
出発点に感謝します:)。