ref #7849: fix problems with nomenclatural code preference
authorKatja Luther <k.luther@bgbm.org>
Fri, 8 Feb 2019 23:07:28 +0000 (00:07 +0100)
committerKatja Luther <k.luther@bgbm.org>
Fri, 8 Feb 2019 23:07:28 +0000 (00:07 +0100)
eu.etaxonomy.taxeditor.store/plugin.xml
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/e4/in/NomenclaturalCodeWizardPageE4.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/NomenclaturalCodeWizardPage.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/NomenclaturalCodeHelper.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/PreferencesUtil.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/menu/NomenclaturalCodePreferences.java

index f6ac11d4a40a133258c1b597fd5f45182cab5725..72992d78a41c24dc6abeb6e91132f2aea34e22a8 100755 (executable)
          name="%page.name.48">
    </page>
    <page
-         category="eu.etaxonomy.taxeditor.preferences.name"
+         category="eu.etaxonomy.taxeditor.preferences.namePreferences"
          class="eu.etaxonomy.taxeditor.preference.menu.NomenclaturalCodePreferences"
          id="eu.etaxonomy.taxeditor.preferences.nomenclatural"
          name="%page.name.4">
index b79c419719af1ac09ab8313f22df727539f4ee2d..6084e3bece3886a323c257ab4b90990df340bb0b 100644 (file)
@@ -58,7 +58,7 @@ public class NomenclaturalCodeWizardPageE4 extends WizardPage {
                final Group group = new Group(container, SWT.NONE);
                group.setLayout(new GridLayout());
 
-               NomenclaturalCode preferredCode = PreferencesUtil.getPreferredNomenclaturalCode(false);
+               NomenclaturalCode preferredCode = PreferencesUtil.getPreferredNomenclaturalCode();
 
                // set preferred code as default
                configurator.setNomenclaturalCode(preferredCode);
index 172b01afbcaeae1fd73b418b72dfc80ce75b8d9c..7c584abece97996ae909bd43d1ad5e62f5937754 100644 (file)
@@ -72,7 +72,7 @@ public class NomenclaturalCodeWizardPage extends WizardPage {
                final Group group = new Group(container, SWT.NONE);
                group.setLayout(new GridLayout());
 
-               NomenclaturalCode preferredCode = PreferencesUtil.getPreferredNomenclaturalCode(false);
+               NomenclaturalCode preferredCode = PreferencesUtil.getPreferredNomenclaturalCode();
 
                // set preferred code as default
                configurator.setNomenclaturalCode(preferredCode);
index 692312d0bdec2bcf9b95cbbc418178ca6ec8d2bc..ea4c9303650b13c15bce17a559e2d18039fdf7a5 100644 (file)
@@ -44,7 +44,7 @@ public class NomenclaturalCodeHelper {
                List<NomenclaturalCode> supportedCodes = new ArrayList<NomenclaturalCode>();
                for (NomenclaturalCode code : getAllCodes()) {
                        if (isSupported(code)) {
-                           if (PreferencesUtil.getPreferredNomenclaturalCode(false).equals(code)){
+                           if (PreferencesUtil.getPreferredNomenclaturalCode().equals(code)){
                                supportedCodes.add(0, code);
                            }else{
                                supportedCodes.add(code);
index 25a7ee6a46645b29ad3cf4f11aa5630e7ea0e9a7..db043eaffbbe52aa96760c69cc539eed1cb5a3ef 100644 (file)
@@ -445,13 +445,7 @@ public class PreferencesUtil implements IPreferenceKeys {
     }
 
 
-       public static NomenclaturalCode getPreferredNomenclaturalCode(){
-           if (getBooleanValue(prefOverrideKey(PreferencePredicate.NomenclaturalCode.getKey()))) {
-            return getPreferredNomenclaturalCode(true);
-        } else{
-            return getPreferredNomenclaturalCode(false);
-        }
-       }
+
 
        /**
         * <p>
@@ -460,17 +454,15 @@ public class PreferencesUtil implements IPreferenceKeys {
         *
         * @return a {@link eu.etaxonomy.cdm.model.name.NomenclaturalCode} object.
         */
-       public static NomenclaturalCode getPreferredNomenclaturalCode(boolean useLocal) {
+       public static NomenclaturalCode getPreferredNomenclaturalCode() {
+
+               CdmPreference pref = getPreferenceFromDB(PreferencePredicate.NomenclaturalCode);
 
-               CdmPreference pref = null;
-               if (!useLocal){
-                   pref = getPreferenceFromDB(PreferencePredicate.NomenclaturalCode);
-               }
 
            String preferredCode;
-           if(pref == null){
+           if(pref == null || (pref.isAllowOverride() && getBooleanValue(prefOverrideKey(PreferencePredicate.NomenclaturalCode.getKey())))){
                preferredCode = getStringValue(
-                                       PREFERRED_NOMENCLATURAL_CODE_KEY, true);
+                       PreferencePredicate.NomenclaturalCode.getKey(), true);
 
            }else{
                preferredCode = pref.getValue();
@@ -872,7 +864,7 @@ public class PreferencesUtil implements IPreferenceKeys {
         */
        public static void checkNomenclaturalCode() {
                // First time Editor is opened, no nomenclatural code has been set
-               if (PreferencesUtil.getPreferredNomenclaturalCode(true) == null) {
+               if (PreferencesUtil.getPreferredNomenclaturalCode() == null) {
                        PreferencesUtil.setPreferredNomenclaturalCode(getPreferenceKey(NomenclaturalCode.ICNAFP), true);
                }
 
index 9d2d9ec5ac0f0f99dc8ef6eace85d47a9080f6f9..b869457d3e83b0cac75cbcfe605136147954b277 100644 (file)
@@ -22,7 +22,6 @@ import eu.etaxonomy.cdm.model.metadata.PreferenceSubject;
 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
 import eu.etaxonomy.taxeditor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.NomenclaturalCodeHelper;
-import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
@@ -41,7 +40,7 @@ public class NomenclaturalCodePreferences extends FieldEditorPreferencePageE4 {
            PreferencesUtil.setPreferredNomenclaturalCode(null, false);
            if (pref.isAllowOverride()) {
                addField(new ComboFieldEditor(
-                       PreferencesUtil.createPreferenceString(IPreferenceKeys.PREFERRED_NOMENCLATURAL_CODE_KEY),
+                       PreferencesUtil.createPreferenceString(PreferencesUtil.createOverridePreferenceString(PreferencePredicate.NomenclaturalCode.getKey())),
                                Messages.NomenclaturalCodePreferences_available_codes, getLabelAndValues(),
                                getFieldEditorParent()));