Xtext と GMF を使用しているため、xtext プロジェクトからアクティブな GMF コンパートメント ノードにアクセスしたいと考えています。そこで、eclipseのセレクションサービスはこれを解決する良い方法だと思いました。
セレクションサービスを実装してみましたが、GMF関連のノードにアクセスできないようです。GMF に IXtextAwareEditPart を実装したので、むしろ xtext クラス オブジェクトを取得します。アクティブな GMF ノードにアクセスする方法はありますか? このコードは今のところうまくいきません:
ISelectionService selectionService = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService();
ISelection selection = selectionService.getSelection();
if (selection instanceof IStructuredSelection) {
IStructuredSelection iStructuredSelection = (IStructuredSelection) selection;
if (iStructuredSelection.getFirstElement() instanceof PartImpl) {
PartImpl partImpl = (PartImpl) iStructuredSelection; // <------ The xtext class?
}
}