0

Eclipse Modeling Framework について質問があります。EMF モデルを指定し、EMF を使用してそれに対応するエディターを作成しました。ここで、ダイアログとウィザードの形でカスタム機能をこのエディターに追加したいと考えています。そのために、エディターの plugin.xml でコンテキスト メニュー グループと項目を定義し、ユーザーがこれらのダイアログ/ウィザードを呼び出せるようにしました。エディターのプレゼンテーション パッケージで、ダイアログ/ウィザード用の新しいクラスを作成しました。

私の質問は、これらのダイアログ/ウィザードでユーザーが現在作業しているモデルにどのようにアクセスできるのでしょうか? これは、たとえば、モデルの一部をダイアログ/ウィザードにロードして、ユーザーが変更できるようにするために必要です。

これについて調査しましたが、十分な答えが見つかりません。"editor".getEditingDomain().getResourceSet().getResources().get(0).getContents().get(0); を介して使用できるメカニズムとして、編集ドメインに出くわしました。しかし、ここでは、「エディター」部分 (私が推測するエディターのインスタンス?) をどこで入手できるかわかりません。

進め方のヒントになれば幸いです。

乾杯、

エリック

4

1 に答える 1

0

JFace を使用している場合は、ISelectionChangedListener を実装して、ユーザーがモデル内の何かを選択するたびにメソッドをトリガーできます。これにより、SelectionChangedEvent が selectionChanged メソッドに渡されます。そこから、event.getSelection(); を使用して、ユーザーの現在の選択を ISelection として取得できます。

お役に立てれば。

于 2011-03-08T13:40:20.167 に答える