2016-05-05 7 views
0

Eclipse 3. *は、WorkbenchWindowのメソッドrestoreStateおよびcloseAllPagesを持っていました。 4. *の交換とは何ですか?Eclipse 4 WorkbenchWindow restoreStateおよびcloseAllPagesの置換

私は何千もの永続化されたWorkbenchWindow saveState(IMemento memento)の結果をデータベースに持っています。何とか変換するか、e4アプリケーションでビューやパースペクティブをレイアウトするために使用する必要があります。

私はそれらを変換する場合、これを行うためのツールはありますか?どのように変換結果を使用しますか?私は何を永続化したのか解析する方法はありますか?次に、プログラムでレイアウトを行い、最後にe4形式のレイアウトを維持しますか?

RCPクライアントの私のパラダイムは少し特殊ですが、暗黙的に設定を保存するのではなく、設定を明示的に保存してスタートアップ時にロードし、特定の設定をアドホックでリロードできます。

答えて

1

WorkbenchWindowは内部クラスであり、Eclipse APIの一部ではありません。 Eclipse API Rules of Engagement

このクラスはEclipse 4で実質的に書き直されており、非APIメソッドと直接同等のものは利用できません。

restoreStateの方法は、特に再エンジニアリングするのが非常に難しいようです。 Eclipse 4コードではウィンドウの状態を保存するために単にIMemento形式を使用しません。すべての状態情報はEMF XMI形式で保存されます。古いrestoreStateメソッドは、ほとんどのものがもう存在しない他のクラスでいくつかの他の内部メソッドを呼び出しました。

+0

あなたは正しいですが、私は移行タスクを継承しています。 resoreStateが3で行うことを再設計するための実用的な方法についての指針はありますか?* – dasPing

+0

restoreStateの古いコードを見ると、やり直しが非常に難しいようです。私はこれに関するいくつかの情報で答えを更新しました。 –

+0

それを使って遊んだ後、私は同意します。しかし、問題に近づくには別の方法が必要です。私はオリジナルの投稿をいくつかの可能性を含めて拡張しました。 – dasPing

関連する問題