ref #7063: better handling of preferences for distribution editor and other places
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / databaseAdmin / preferencePage / ChecklistEditorGeneralPreference.java
index eb31b0f8b174387ae3459fb1641538f12fd1d81c..5a0cbc18c2708a0a9611c33fa555db9df452bdf0 100755 (executable)
@@ -36,6 +36,7 @@ import eu.etaxonomy.taxeditor.ui.element.CommandHandlerButton;
 public class ChecklistEditorGeneralPreference extends CdmPreferencePage implements IE4AdminPreferencePage {
 
     boolean isEditorActivated;
+    boolean allowOverride;
     boolean isShowRank;
     boolean isSortByVocabularyOrder;
     boolean isShowSymbol;
@@ -50,9 +51,11 @@ public class ChecklistEditorGeneralPreference extends CdmPreferencePage implemen
         CdmPreference pref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DistributionEditorActivated);
         if (pref != null){
             isEditorActivated = Boolean.valueOf(pref.getValue());
+            allowOverride = pref.isAllowOverride();
         }else{
             isEditorActivated = false;
         }
+
         final Button activateCheckButton = new Button(composite, SWT.CHECK);
         activateCheckButton.setText(Messages.ChecklistEditorGeneralPreference_enable);
         activateCheckButton.setSelection(isEditorActivated);
@@ -71,6 +74,16 @@ public class ChecklistEditorGeneralPreference extends CdmPreferencePage implemen
 
             }
         });
+        final Button allowOverrideCheckButton = new Button(composite, SWT.CHECK);
+        allowOverrideCheckButton.setText(Messages.ChecklistEditorGeneralPreference_allowOverride);
+        allowOverrideCheckButton.setSelection(allowOverride);
+        allowOverrideCheckButton.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                allowOverride = allowOverrideCheckButton.getSelection();
+
+            }
+        });
 
         child  = new Composite(composite, SWT.NULL);
         child.setLayout(new GridLayout());
@@ -84,7 +97,7 @@ public class ChecklistEditorGeneralPreference extends CdmPreferencePage implemen
 
 
         final CommandHandlerButton button_openWizard = new CommandHandlerButton(child, SWT.PUSH,
-                Messages.ChecklistEditorGeneralPreference_3);
+                "eu.etaxonomy.taxeditor.store.open.OpenDistributionEditorWizardAdminHandler");
 
         button_openWizard.setText(Messages.ChecklistEditorGeneralPreference_open_distribution_selection);
 
@@ -177,26 +190,26 @@ public class ChecklistEditorGeneralPreference extends CdmPreferencePage implemen
 
         CdmPreference pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.DistributionEditorActivated, Boolean.toString(isEditorActivated));
         //ToDo
-        pref.setAllowOverride(false);
+        pref.setAllowOverride(allowOverride);
         service.set(pref);
 
         pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.ShowIdInVocabulary, Boolean.toString(isShowIdInVocabulary));
         //ToDo
-        pref.setAllowOverride(false);
+        pref.setAllowOverride(true);
         service.set(pref);
 
         pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.ShowSymbol, Boolean.toString(isShowSymbol));
         //ToDo
-        pref.setAllowOverride(false);
+        pref.setAllowOverride(true);
         service.set(pref);
 
         pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.ShowRankInDistributionEditor, Boolean.toString(isShowRank));
         //ToDo
-        pref.setAllowOverride(false);
+        pref.setAllowOverride(true);
         service.set(pref);
         pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.AreasSortedByIdInVocabulary, Boolean.toString(isSortByVocabularyOrder));
         //ToDo
-        pref.setAllowOverride(false);
+        pref.setAllowOverride(true);
         service.set(pref);
 
         PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.DISTRIBUTION_AREA_PREFRENCES_ACTIVE, isEditorActivated);