ref #8489: disable combo for local taxonnode sort preference if not allowed
authorKatja Luther <k.luther@bgbm.org>
Wed, 4 Sep 2019 13:49:42 +0000 (15:49 +0200)
committerKatja Luther <k.luther@bgbm.org>
Wed, 4 Sep 2019 13:49:42 +0000 (15:49 +0200)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/TaxonNodeOrderAdminPreference.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/l10n/Messages.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/l10n/messages.properties
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/l10n/messages_de.properties
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/OrderPreferences.java

index 376e9ed346d0af64928aae9a2f6f7716a76ddeef..95667d4ec01013ab34ae74569b9c071243009afd 100755 (executable)
@@ -41,7 +41,7 @@ public class TaxonNodeOrderAdminPreference extends OrderPreferences {
         orderPref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.TaxonNodeOrder);
         allowOverride = orderPref != null? orderPref.isAllowOverride():true;
         if (orderPref == null){
-            orderPref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.TaxonNodeOrder, PreferencePredicate.TaxonNodeOrder.getDefaultValue().toString());
+            orderPref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.TaxonNodeOrder, null);
         }
         orderActivated = orderPref.getValue() != null?NavigatorOrderEnum.valueOf(orderPref.getValue()): null;
     }
index d240811f14a8249113d228ce6a3f97e1303f4166..edfd35fcd4bfb7f1abc4928ccf8fc708cbd6e48d 100644 (file)
@@ -674,6 +674,9 @@ public class Messages extends NLS {
     public static String AbcdImportProvider_description_not_available;
 
 
+    public static String OrderPreferencePage_NotAllowed;
+
+
 
 
 
index 88474145c98f05ef9e9e65d84916346360162ebb..63ae15bed33623b07388fa222d891bcabc50f68f 100644 (file)
@@ -513,3 +513,5 @@ ChecklistEditorGeneralPreference_Configure_area_order=Order of Areas
 Preference_Use_Default= Use Default
 SupplementalDataSourcePreferences_SHOW_ID=Show ID in Source
 SupplementalDataSourcePreferences_SHOW_NAMESPACE=Show ID Namespace
+
+OrderPreferencePage_NotAllowed=The DB preference does not allow to edit this preference locally
index cf5b63c9da2921706e8688a5c4dfa66f90a22eba..d8e4b94b8afaa1f4b58e85bb893a663e2c8ccb47 100644 (file)
@@ -513,3 +513,5 @@ ChecklistEditorGeneralPreference_Configure_area_order=Sortierung der Areas
 Preference_Use_Default= Standardwert benutzen
 SupplementalDataSourcePreferences_SHOW_ID=ID in Quelle anzeigen
 SupplementalDataSourcePreferences_SHOW_NAMESPACE=ID-Namensraum anzeigen
+
+OrderPreferencePage_NotAllowed=Die Datenbank Präferenz erlaub kein Editieren
index 3491b3db0687b8b5a07d4e8770517948d5ec4f7f..ac9c63b1c6bb846a71a7e4046ed274616294ad37 100644 (file)
@@ -2,9 +2,11 @@ package eu.etaxonomy.taxeditor.preference;
 \r
 import org.eclipse.jface.dialogs.MessageDialog;\r
 import org.eclipse.swt.SWT;\r
+import org.eclipse.swt.custom.CLabel;\r
 import org.eclipse.swt.events.SelectionAdapter;\r
 import org.eclipse.swt.events.SelectionEvent;\r
 import org.eclipse.swt.events.SelectionListener;\r
+import org.eclipse.swt.layout.GridData;\r
 import org.eclipse.swt.widgets.Button;\r
 import org.eclipse.swt.widgets.Combo;\r
 import org.eclipse.swt.widgets.Composite;\r
@@ -69,12 +71,16 @@ public class OrderPreferences extends CdmPreferencePage implements SelectionList
 \r
             int index = 0;\r
 \r
-            for (String itemLabel : orderSelectionCombo.getItems()){\r
-                if (itemLabel.equalsIgnoreCase(orderActivated.getLabel())){\r
-                    orderSelectionCombo.select(index);\r
-                    break;\r
+            if (orderActivated == null){\r
+                orderSelectionCombo.select(index);\r
+            }else{\r
+                for (String itemLabel : orderSelectionCombo.getItems()){\r
+                    if (itemLabel.equalsIgnoreCase(orderActivated.getLabel())){\r
+                        orderSelectionCombo.select(index);\r
+                        break;\r
+                    }\r
+                    index++;\r
                 }\r
-                index++;\r
             }\r
 \r
 \r
@@ -91,6 +97,17 @@ public class OrderPreferences extends CdmPreferencePage implements SelectionList
                 });\r
             }\r
 \r
+            if (orderPref != null && !isAdminPreference){\r
+                if (!orderPref.isAllowOverride()){\r
+                    orderSelectionCombo.setEnabled(false);\r
+                    final CLabel description = new CLabel(secondComposite, SWT.NULL);\r
+                  description.setText(Messages.OrderPreferencePage_NotAllowed);\r
+                  GridData textGrid = createTextGridData();\r
+                  textGrid.verticalSpan = 2;\r
+                  description.setLayoutData(textGrid);\r
+                }\r
+            }\r
+\r
 //            final CLabel description = new CLabel(secondComposite, SWT.NULL);\r
 //            description.setText(Messages.OrderPreferencePage_NewNavigatorWindowRequired);\r
 //            GridData textGrid = createTextGridData();\r