2016-06-15 27 views
0

パースペクティブBを閉じてもう一度開くと、Bパースペクティブの「トップレベル要素」プロパティが「プロジェクト」だった場合でも変更されます「トップレベル要素」に変換します。Eclipseの「トップレベル要素」がパースペクティブの変更時に「ワーキングセット」に変更されます

ただし、最初にパースペクティブを開くと、そのプロパティは「プロジェクト」でした。

この質問は非常に基本的なものですが、私はEclipse開発にはかなり新しいです。

誰かがこのプロパティが属するクラスを知っているので、パースペクティブを開いたときにオーバーライドできますか?

Common Navigator Framework、特にCommonNavigatorクラスに属している必要がありますか?

P.S.そのようなことを知る正しい方法は何でしょうか?つまり、そのような行動がどこに定義されていますか、それがどの機能に縛られていますか?直接的な方法はありますか、Eclipseフレームワークを完全に知っている人が必要ですか?

+0

本当に同じビューですか?パッケージエクスプローラとプロジェクトエクスプローラは非常によく似ています。 –

+0

これはカスタムプロジェクトビューです。それは、私がパースペクティブを閉じてもう一度開くと起こります。質問が更新されました。 – rents

答えて

1

通常のプロジェクトエクスプローラビューを閉じて開いても、ビューがこの設定を保持しないように見えるので、常に作業セットに戻っているようです。

Eclipse plug-in spyを使用すると、どのクラスが使用されているかを知ることができます。プラグイン定義とソースコードを見ることもできます。プロジェクトエクスプローラはorg.eclipse.ui.navigator.resourcesプラグインにあります。

org.eclipse.ui.internal.navigator.workingsets.WorkingSetsContentProviderはこの設定を扱っていますが、明らかに変更する方法はありません。

+0

WorkingSetsConentProviderはCommonNavigator.rootMode(int)を設定するIExtensionStateModel.getBooleanProperty(「org.eclipse.ui.navigator.resources.workingSets.showTopLevelWorkingSets」)を使用しています 私はIExtensionStateModel意志ハンドルを取得することができていますのであれば、おそらく、このプロパティを設定しますトリックをする – rents

関連する問題