1

Zest を 1.4 から 2.0 にアップデートして以来、レイアウト アルゴリズムに問題があります。

1.4 では、レイアウト アルゴリズムは applyLayout を呼び出すことによってのみ実行されました。レイアウトを設定して実行し、その後 Graph を変更して GraphViewer を再実行せずに更新することができました。

2.0 では、グラフが変更された後にビューアを更新するために必要な更新ごとに、レイアウト アルゴリズムが実行されます。したがって、新しいノードを追加すると、GraphViewer 内のすべてのノードのすべての位置が変更されます。

それは私のユースケースでは受け入れられません。GraphViewer がリフレッシュで LayoutAlgorithm を実行できないようにする可能性はありますか?

私が必要とするのは、「レイアウト」ボタンがクリックされたときにのみ、ビューアーでグラフをレイアウトすることです。自動レイアウトはありません。

呼び出し後に LayoutAlgorithm の設定を解除して、後の更新時にアルゴリズムがないようにすることを考えましたが、それも不可能のようです。GraphViewer で null を引数として setLayoutAlgorithm を呼び出すと、NullPointerException が発生します。

2.0 で Zest GraphViewers の「古い動作」を取得する可能性はありますか?

ありがとうございました!

クリスティーナ

4

1 に答える 1

1

グラフ ウィジェットには public void setDynamicLayout(boolean enabled)メソッドがあり、Javadoc によれば、必要なトリックを実行できます。

GraphViewer からウィジェットを取得するには、GraphViewer#getGraphControl メソッドを使用します。

于 2012-09-20T08:46:00.110 に答える