List of usage examples for org.eclipse.jface.preference PreferenceStore addPropertyChangeListener
@Override
public void addPropertyChangeListener(IPropertyChangeListener listener)
From source file:com.android.ddms.PrefsDialog.java
License:Apache License
/** * Do some one-time prep./*from w w w .j a v a 2 s . c om*/ * * The original plan was to let the individual classes define their * own defaults, which we would get and then override with the config * file. However, PreferencesStore.load() doesn't trigger the "changed" * events, which means we have to pull the loaded config values out by * hand. * * So, we set the defaults, load the values from the config file, and * then run through and manually export the values. Then we duplicate * the second part later on for the "changed" events. */ public static void init() { PreferenceStore prefStore = mStore.getPreferenceStore(); if (prefStore == null) { // we have a serious issue here... Log.e("ddms", "failed to access both the user HOME directory and the system wide temp folder. Quitting."); System.exit(1); } // configure default values setDefaults(System.getProperty("user.home")); //$NON-NLS-1$ // listen for changes prefStore.addPropertyChangeListener(new ChangeListener()); // Now we initialize the value of the preference, from the values in the store. // First the ddm lib. DdmPreferences.setDebugPortBase(prefStore.getInt(PREFS_DEBUG_PORT_BASE)); DdmPreferences.setSelectedDebugPort(prefStore.getInt(PREFS_SELECTED_DEBUG_PORT)); DdmPreferences.setLogLevel(prefStore.getString(PREFS_LOG_LEVEL)); DdmPreferences.setInitialThreadUpdate(prefStore.getBoolean(PREFS_DEFAULT_THREAD_UPDATE)); DdmPreferences.setInitialHeapUpdate(prefStore.getBoolean(PREFS_DEFAULT_HEAP_UPDATE)); DdmPreferences.setTimeOut(prefStore.getInt(PREFS_TIMEOUT)); DdmPreferences.setProfilerBufferSizeMb(prefStore.getInt(PREFS_PROFILER_BUFFER_SIZE_MB)); DdmPreferences.setUseAdbHost(prefStore.getBoolean(PREFS_USE_ADBHOST)); DdmPreferences.setAdbHostValue(prefStore.getString(PREFS_ADBHOST_VALUE)); // some static values String out = System.getenv("ANDROID_PRODUCT_OUT"); //$NON-NLS-1$ DdmUiPreferences.setSymbolsLocation(out + File.separator + "symbols"); //$NON-NLS-1$ DdmUiPreferences.setAddr2LineLocation("arm-linux-androideabi-addr2line"); //$NON-NLS-1$ DdmUiPreferences.setAddr2LineLocation64("aarch64-linux-android-addr2line"); String traceview = System.getProperty("com.android.ddms.bindir"); //$NON-NLS-1$ if (traceview != null && traceview.length() != 0) { traceview += File.separator + DdmConstants.FN_TRACEVIEW; } else { traceview = DdmConstants.FN_TRACEVIEW; } DdmUiPreferences.setTraceviewLocation(traceview); // Now the ddmui lib DdmUiPreferences.setStore(prefStore); DdmUiPreferences.setThreadRefreshInterval(prefStore.getInt(PREFS_THREAD_REFRESH_INTERVAL)); }
From source file:org.apache.felix.sigil.eclipse.internal.model.repository.RepositoryPreferences.java
License:Apache License
public PreferenceStore toPreferenceStore(final IRepositoryModel model) { PreferenceStore store = new PreferenceStore(); store.setFilename(makeFileName(model)); for (Map.Entry<Object, Object> e : model.getProperties().entrySet()) { store.setValue((String) e.getKey(), (String) e.getValue()); }// w ww . jav a 2s.c om store.setValue("provider", model.getType().getProvider()); store.addPropertyChangeListener(new IPropertyChangeListener() { public void propertyChange(PropertyChangeEvent event) { model.getProperties().setProperty(event.getProperty(), event.getNewValue().toString()); } }); return store; }