private void setPreferencePrefix(String preferencePrefix) { this.preferencePrefix = preferencePrefix; for (FieldEditor fe : internalEditorsList) { String oldPreferenceName = fe.getPreferenceName(); if (oldPreferenceName.indexOf(PreferenceConstants.SEPARATOR) >= 0) { oldPreferenceName = oldPreferenceName.substring(oldPreferenceName .lastIndexOf(PreferenceConstants.SEPARATOR) + 1); } fe.setPreferenceName(getPreferencePrefix() + PreferenceConstants.SEPARATOR + oldPreferenceName); } } }
private String findChangedPreference(PropertyChangeEvent event) { Object source = event.getSource(); if ((source instanceof FieldEditor) && event.getProperty().equals(VALUE)) { return ((FieldEditor) source).getPreferenceName(); } return null; }
@Override protected final void addField(FieldEditor editor) { String prefix = null; if (getPreferencePrefix() != null) prefix = getPreferencePrefix() + PreferenceConstants.SEPARATOR + editor.getPreferenceName(); else prefix = editor.getPreferenceName(); editor.setPreferenceName(prefix); internalEditorsList.add(editor); super.addField(editor); }
@Override public void propertyChange(PropertyChangeEvent event) { super.propertyChange(event); if( event.getSource() instanceof FieldEditor ) { FieldEditor field = (FieldEditor)event.getSource(); if (field == periodicReindexEnabled){ periodicReindexInterval.setEnabled(periodicReindexEnabled.getBooleanValue(), getFieldEditorParent()); } if( PreferenceConstants.P_INDEXABLE_EXTENSIONS.equals(field.getPreferenceName()) || PreferenceConstants.P_EXCLUDE_DIRS.equals(field.getPreferenceName()) || PreferenceConstants.P_INDEX_EMPTY_EXTENSION.equals(field.getPreferenceName())) setMessage("Rebuilding of index is recommended", INFORMATION); else if( PreferenceConstants.P_INDEX_ARCHIVES.equals(field.getPreferenceName()) ) setMessage("Rebuilding of index is required", INFORMATION); } }
protected final void loadDefaults(String preferencePrefix) { setPreferencePrefix(preferencePrefix); performDefaults(); for (FieldEditor fe : internalEditorsList) { if (fe.presentsDefaultValue()) { internalStore.setValue(fe.getPreferenceName(), masterPreferenceStore.getDefaultString(fe .getPreferenceName())); } } }
/** * TODO: better use unqualified names in preference store. Left this workaround not to break API. */ @Override protected void addField(FieldEditor editor) { editor.setPreferenceName(qualifiedName() + "." + editor.getPreferenceName()); super.addField(editor); }
@Override public void propertyChange(final PropertyChangeEvent event) { super.propertyChange(event); if( event.getSource() instanceof FieldEditor ) { FieldEditor field = (FieldEditor) event.getSource(); if( Prefs.PROP_CHECK_SCOPE.equals(field.getPreferenceName()) ) { setMessage("Checks will be performed on next build", INFORMATION); } } } }
@Override public final void propertyChange(PropertyChangeEvent event) { if (event.getSource() instanceof FieldEditor) { FieldEditor fe = (FieldEditor) event.getSource(); internalStore.setValue(fe.getPreferenceName(), fe.getPreferenceStore().getDefaultString(fe.getPreferenceName())); fe.setPreferenceStore(internalStore); fe.store(); } super.propertyChange(event); }