1

Eclipse ツールバーで、ビルド ボタンにマウスを合わせると、現在ビルド対象として選択されているプロジェクトを示すツールチップが表示されます。私のEclipseプラグインでその情報を取得する方法はありますか? どのプロジェクトが選択されているかを追跡するために ISelectionListener を使用して何かを実装することを考えましたが、ビルドボタンがそれらを取っているのと同じ場所からそれらを取得できる場合、それを行う理由はありません。

4

1 に答える 1

2

この質問に対する答えは、独自の ISelectionListener を作成することでした。

@Override
public void selectionChanged(IWorkbenchPart part, ISelection selection) {
    Object[] allselections= null;
    selectedProjects.clear();
    // TODO Auto-generated method stub

    if(selection instanceof IStructuredSelection) {
        allselections = ((IStructuredSelection)selection).toArray();
        for(Object element: allselections){

            if (element instanceof IResource) {
                selectedProjects.add(((IResource)element).getProject());
            } else if (element instanceof IAdaptable) {
                IResource resource = null;
                IAdaptable a = (IAdaptable)element;
                resource = (IResource)a.getAdapter(IResource.class);
                selectedProjects.add(resource.getProject());

            }
        }
    }
};
于 2012-09-14T09:59:58.440 に答える