ref #8385: adapt local default labels to db preference
authorKatja Luther <k.luther@bgbm.org>
Thu, 29 Aug 2019 11:10:57 +0000 (13:10 +0200)
committerKatja Luther <k.luther@bgbm.org>
Thu, 29 Aug 2019 11:10:57 +0000 (13:10 +0200)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/PublishFlagPreference.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/PublishFlagLocalPreference.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/menu/CdmPreferencePage.java

index 7a55a315db429dcb3ccfddf9e25af1a6147a30f4..38ba508da3fa6c05e40004acefa65f2f3ed0fd22 100755 (executable)
@@ -56,7 +56,7 @@ public class PublishFlagPreference extends PublishFlagLocalPreference implements
             text = null;
         }else{
             for (PublishEnum display: PublishEnum.values()){
-                if (display.getLabel().equals(text)){
+                if (display.getLabel().equals(textCombo)){
                     text = display.getKey();
                     break;
                 }
index 957949d0303c3c3575d1810af79ec54162d2ce19..af57c564da509906111905ac4851f5573d7b553a 100755 (executable)
@@ -96,9 +96,7 @@ public class PublishFlagLocalPreference extends CdmPreferencePage {
                 }else{
                     publishBehaviour = null;
                 }
-                if (isAdminPreference){
-                    allowOverrideButton.setSelection(allowOverride);
-                }
+
             }
 
             @Override
index e298e56175544a1af78884226ab5ac70f6467bf2..f6ca9bd90291af3ea76f00a3c875fc43f3ff035b 100644 (file)
@@ -199,15 +199,24 @@ public abstract class CdmPreferencePage extends PreferencePage implements IE4Pre
         Combo booleanCombo = new Combo(parent, SWT.BORDER | SWT.READ_ONLY);
 
 
-        String defaultValue = null;
-
-        Object defaultObject = predicate.getDefaultValue();
-        if (defaultObject != null){
-            if (defaultObject instanceof IKeyLabel){
-                defaultValue = ((IKeyLabel)defaultObject).getLabel();
-            }else{
-                defaultValue = predicate.getDefaultValue().toString();
+        CdmPreference dbPref = PreferencesUtil.getPreferenceFromDB(predicate);
+        String defaultValue = "";
+        if (dbPref != null && !isAdminPage && dbPref.getValue() != null){
+            defaultValue = dbPref.getValue();
+        }else {
+            try{
+                Object defaultObject = predicate.getDefaultValue();
+                if (defaultObject != null){
+                    if (defaultObject instanceof IKeyLabel){
+                        defaultValue = ((IKeyLabel)defaultObject).getLabel();
+                    }else{
+                        defaultValue = defaultObject.toString();
+                    }
+                }
+            }catch(NullPointerException e){
+                defaultValue = "";
             }
+
         }
 
         booleanCombo.add(Messages.Preference_Use_Default + " ("+defaultValue+")");;