2016-08-31 7 views
0

これは奇妙な問題かもしれませんが..コードから「新しいイベントでアクティブにする」プロパティ値を知ることで、エラーログビューをポップアップ表示させる方法表示するにはエラーがありますか?私はRCPアプリケーションで作業しています。エラーログビュー - RCPの新しいイベントのプロパティ値で有効にする

私はこの

IPreferenceStore store = new ScopedPreferenceStore(InstanceScope.INSTANCE, "org.eclipse.ui.views.log"); 
Boolean activateOnNewEvents = store.getBoolean("activate"); 

も、この使用してみました:

Preferences preferences = InstanceScope.INSTANCE.getNode("org.eclipse.ui.logs.view.prefs"); 
Boolean activateOnNewEvents = preferences.getBoolean("activate", true); 

をしかし、問題は、私は私だけが閉じたときに正しい値を取得するとEclipse /製品を再開です。エラーログビューの右上のメニュー(UIから)から値を変更した場合、私のコードは新しい再起動まで古い値を返すので、eclipse/rcpが閉じられたときだけ推測しています。 。

EDIT:

だから私は「org.eclipse.ui.logs.view.prefs」から、この設定値は、正しい情報を取得していないことを考え出しました。ユーザーが「新しいイベントで有効にする」値を「エラーログメニュー」から変更した場合は更新されません。だから問題は: ユーザーが「新しいイベントでアクティブにする」をクリックし、この値をチェック/チェック解除するときをどのようにして決定することができますか?

答えて

0

これらのコードフラグメントは両方とも現在の設定を提供し、環境設定が変更された場合は更新されません。

メソッドでは、addPropertyChangeListenerコールを使用して、環境設定が変更されるたびに呼び出されるリスナーを環境設定ストアに追加できます。

public void propertyChange(PropertyChangeEvent event) { 
    String key = event.getProperty(); 

    if (key.equals(""activate"") { 
     // TODO get the new value from the preference store 
    } 
} 
+0

が答えてくれてありがとう、私はのpropertyChangeを割り当て、これにしようと、私は好みの値がないことを考え出し:IPropertyChangeListenerあなたが変更に興味があるキーを確認することができて

ユーザーが「新しいエバートでアクティブにする」をチェック/チェック解除すると変更されました。私も自分の投稿を編集しました。だから問題は: ユーザーが「新しいイベントでアクティブにする」をクリックし、この値をチェック/チェック解除するときをどのようにして決定できますか? – IoanaC

+0

エラーログビューメニューのメニュー項目を意味する場合は、ビューに属するメモに格納され、これらを変更するためのAPIがないため、これを設定する方法はないと思います。 –

+0

大丈夫、ありがとう!これは私が知りたかったものです:) – IoanaC

関連する問題