2016-06-23 6 views
2

既存のプラグインのビューにフックするEclipseプラグインコードを書く必要がありますが、そのプラグインのソースコードはありません。このビューのインスタンスが開始されたときを検出する方法が必要なので、私はそれを私の記憶の中で見つけ、自分の魔法をするかもしれません。 Eclipseプラットフォームに接続し、イベントベースのリスナーを設定する方法はありますか?バックグラウンドスレッド(IStartup.earlyStartup()で開始)を設定し、一定の間隔でビューをポーリングすることができましたが、私はそれをしたくありません。どんな助けもありがとうございます。ありがとう!新しいリスナーを開くたびに検出するEclipseリスナー?

答えて

1

IPartListener

IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); 

IPartService partService = window.getPartService(); 

partService.addPartListener(listener); 

を使用してリスナーが部品の状態に対するすべての変更(ビューとエディタ)について語られています。

+0

答えが正しいか間違っているかわかりません。しかし、質問と回答の両方が面白いです:D – Acewin

+0

私はこれについて考えて、誤って 'getPartService()'がWorkbenchウィンドウのパートサービスを返すと誤って想定していました。私はそれが私にプラットフォーム全体の部品サービスを与えたことに気付かなかった。出来た!ありがとう!すべてのオーバーライドされたメソッドを実装する必要がありますか、必要なものだけを実装する必要がありますか? – terranche

+0

これはインターフェイスなので、すべて実装する必要がありますが、実際に何もする必要はありません –

関連する問題