boolean result = super.performOk();
if (result){
String value = getPreferenceStore().getString(IPreferenceKeys.CDM_NOMENCLATURAL_CODE_KEY);
+ String allowOverride = getPreferenceStore().getString(IPreferenceKeys.ALLOW_OVERRIDE_NOMENCLATURAL_CODE_KEY);
CdmPreference pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.NomenclaturalCode, value);
+ pref.setAllowOverride(Boolean.getBoolean(allowOverride));
ICdmApplicationConfiguration controller = CdmStore.getCurrentApplicationConfiguration();
if (controller == null){
return false;
*/
@Override
protected void createFieldEditors() {
-
- addField(new ComboFieldEditor(
+ if (getPreferenceStore().getBoolean(IPreferenceKeys.OVERRIDE_NOMENCLATURAL_CODE_KEY)) {
+ addField(new ComboFieldEditor(
IPreferenceKeys.PREFERRED_NOMENCLATURAL_CODE_KEY,
"Available Codes", getLabelAndValues(),
getFieldEditorParent()));
- addField(new BooleanFieldEditor(
- IPreferenceKeys.OVERRIDE_NOMENCLATURAL_CODE_KEY,
- "Use local nomenclatural code",
- getFieldEditorParent()));
+
+ addField(new BooleanFieldEditor(
+ IPreferenceKeys.OVERRIDE_NOMENCLATURAL_CODE_KEY,
+ "Use local nomenclatural code",
+ getFieldEditorParent()));
+ } else {
+ setDescription("The CDM settings don't allow to set the nomenclatural code locally. If you need to make local settings, please ask an administrator.");
+ }
}