Project

General

Profile

« Previous | Next » 

Revision 63732a7c

Added by Katja Luther almost 5 years ago

ref #8045: further implementation for default/explicit value selection preference pages

View differences:

eu.etaxonomy.taxeditor.store/OSGI-INF/l10n/bundle.properties
32 32
page.name.100 = Distribution
33 33
page.name.101 = Term Editor
34 34
page.name.102 = Name Details View
35
page.name.103 = Name Features
35 36
view.name = Datasource
36 37
view.name.0 = Progress
37 38
view.name.1 = Message
......
266 267
handledmenuitem.label.19 = Update Sortindices
267 268

  
268 269
command.commandname.19 = Open Area Wizard
270

  
271
page.name.59 = Name Features
272
page.name.60 = Name Features
273
page.name.61 = Name Details View
eu.etaxonomy.taxeditor.store/OSGI-INF/l10n/bundle_de.properties
1 1
#Properties file for eu.etaxonomy.taxeditor.store, German
2 2
page.name = Lokale Pr\u00e4ferenzen
3 3
page.name.0 = Faktendaten
4
page.name.1 = Merkmale
4
page.name.1 = Taxon Merkmale
5 5
page.name.2 = Verbreitungsstatus
6 6
page.name.3 = Taxonomisch
7 7
page.name.4 = Nomenklatur-Code
......
32 32
page.name.100 = Verbreitungs-Daten
33 33
page.name.101 = Term Editor
34 34
page.name.102 = Name Details View
35
page.name.103 = Namensmerkmale
35 36
view.name = Datenquelle
36 37
view.name.0 = Fortschritt
37 38
view.name.1 = Nachrichten
......
253 254
handledmenuitem.label.16 = Term Suche
254 255
handledmenuitem.label.17 = Occurrence Suche
255 256
handledmenuitem.label.18 = Update Caches
256
handledmenuitem.label.19 = Update Sortindices
257
handledmenuitem.label.19 = Update Sortindices
258

  
259
page.name.59 = Namensmerkmale
260
page.name.60 = Namensmerkmale
261
page.name.61 = Name Details View
eu.etaxonomy.taxeditor.store/plugin.xml
424 424
         class="eu.etaxonomy.taxeditor.preference.menu.FeatureMenuPreferences"
425 425
         id="eu.etaxonomy.taxeditor.preferences.feature"
426 426
         name="%page.name.1">
427
   </page>
428
    <page
429
         category="eu.etaxonomy.taxeditor.preferences.description"
430
         class="eu.etaxonomy.taxeditor.preference.menu.NameFeatureMenuPreferences"
431
         id="eu.etaxonomy.taxeditor.preferences.nameFeature"
432
         name="%page.name.59">
427 433
   </page>
428 434
   <page
429 435
         category="eu.etaxonomy.taxeditor.preferences.description"
......
671 677
          id="eu.etaxonomy.taxeditor.preferences.commonnamelanguages"
672 678
          name="%page.name.58">
673 679
    </page>
680
    <page
681
          category="eu.etaxonomy.taxeditor.preferences.description"
682
          class="eu.etaxonomy.taxeditor.preference.menu.NameFeatureMenuPreference"
683
          id="eu.etaxonomy.taxeditor.preferences.feature2"
684
          name="%page.name.60">
685
    </page>
674 686
   
675 687
   
676 688
</extension>
......
744 756
         category="eu.etaxonomy.taxeditor.preferences.general"
745 757
         class="eu.etaxonomy.taxeditor.databaseAdmin.preferencePage.NameDetailsViewAdminConfiguration"
746 758
         id="eu.etaxonomy.taxeditor.store.scientificNameDetails"
747
         name="Name Details View">
759
         name="%page.name.61">
748 760
   </page>
749 761
</extension>
750 762
</plugin>
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/ChecklistEditorGeneralAdminPreference.java
15 15
import eu.etaxonomy.cdm.api.service.IPreferenceService;
16 16
import eu.etaxonomy.cdm.model.metadata.CdmPreference;
17 17
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
18
import eu.etaxonomy.cdm.model.metadata.TermDisplayEnum;
19
import eu.etaxonomy.cdm.model.metadata.TermOrder;
18
import eu.etaxonomy.cdm.model.metadata.PreferenceSubject;
19
import eu.etaxonomy.taxeditor.l10n.Messages;
20 20
import eu.etaxonomy.taxeditor.preference.ChecklistEditorGeneralPreference;
21 21
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
22 22
import eu.etaxonomy.taxeditor.store.CdmStore;
......
40 40

  
41 41
    @Override
42 42
    public boolean performOk() {
43
        if (distributionEditorPref == null){
43
        if (!isApply()){
44 44
            return true;
45 45
        }
46 46
        ICdmRepository controller = CdmStore.getCurrentApplicationConfiguration();
......
48 48
            return false;
49 49
        }
50 50
        IPreferenceService service = controller.getPreferenceService();
51
        CdmPreference pref;
52
        if (isEditorActivated == null){
53
            service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.DistributionEditorActivated));
54
        }else{
55
            pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.DistributionEditorActivated, Boolean.toString(isEditorActivated));
56
            pref.setAllowOverride(allowOverrideActivatedButton.getSelection());
57
            service.set(pref);
58
        }
59
        if(displayArea.equals(Messages.Preference_Use_Default)){
60
            service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.DisplayOfAreasInDistributionEditor));
61
        }else{
62
            pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.DisplayOfAreasInDistributionEditor, this.displayArea);
63
            pref.setAllowOverride(allowOverrideAreaDisplayButton.getSelection());
64
            service.set(pref);
65
        }
51 66

  
52
        CdmPreference pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.DistributionEditorActivated, Boolean.toString(isEditorActivated));
53
        pref.setAllowOverride(this.distributionEditorPref.isAllowOverride());
54
        service.set(pref);
55

  
56
        pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.DisplayOfAreasInDistributionEditor, this.displayArea);
57
        pref.setAllowOverride(prefAreaDisplay.isAllowOverride());
58
        service.set(pref);
59

  
60
        pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.DisplayOfStatus, this.displayStatus);
61
        pref.setAllowOverride(prefStatusDisplay.isAllowOverride());
62
        service.set(pref);
63

  
64
        pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.ShowRankInDistributionEditor, Boolean.toString(isShowRank));
65
        pref.setAllowOverride(prefRank.isAllowOverride());
66
        service.set(pref);
67

  
68
        pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.AreasSortedInDistributionEditor, this.orderAreas);
69
        pref.setAllowOverride(prefAreaSort.isAllowOverride());
70
        service.set(pref);
67
        if (displayStatus.equals(Messages.Preference_Use_Default)){
68
            service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.DisplayOfStatus));
69
        }else{
70
            pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.DisplayOfStatus, this.displayStatus);
71
            pref.setAllowOverride(allowOverrideStatusDisplayButton.getSelection());
72
            service.set(pref);
73
        }
71 74

  
72
        pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.OwnDescriptionForDistributionEditor, Boolean.toString(ownDescriptionForDistributionEditor));
73
        pref.setAllowOverride(prefOwnDescription.isAllowOverride());
74
        service.set(pref);
75
        if (isShowRank == null){
76
            service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowRankInDistributionEditor));
77
        }else{
78
            pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.ShowRankInDistributionEditor, Boolean.toString(isShowRank));
79
            pref.setAllowOverride(allowOverrideRankButton.getSelection());
80
            service.set(pref);
81
        }
82
        if (orderAreas.equals(Messages.Preference_Use_Default)){
83
            service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.AreasSortedInDistributionEditor));
84
        }else{
85
            pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.AreasSortedInDistributionEditor, this.orderAreas);
86
            pref.setAllowOverride(allowOverrideOrderAreasButton.getSelection());
87
            service.set(pref);
88
        }
75 89

  
90
        if (ownDescriptionForDistributionEditor == null){
91
            service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.OwnDescriptionForDistributionEditor));
92
        }else{
93
            pref = CdmPreference.NewTaxEditorInstance( PreferencePredicate.OwnDescriptionForDistributionEditor, Boolean.toString(ownDescriptionForDistributionEditor));
94
            pref.setAllowOverride(prefOwnDescription.isAllowOverride());
95
            service.set(pref);
96
        }
76 97
//        if (statusPref != null){
77 98
//            service.set(statusPref);
78 99
//        }
......
87 108
    @Override
88 109
    public void getValues() {
89 110
        super.getValues();
90
        distributionEditorPref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DistributionEditorActivated);
91
        if (distributionEditorPref == null){
92
            distributionEditorPref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DistributionEditorActivated, PreferencePredicate.DistributionEditorActivated.getDefaultValue().toString());
111
        //distributionEditorPref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DistributionEditorActivated);
112
        if (distributionEditorPref != null){
113
            isEditorActivated = Boolean.valueOf(distributionEditorPref.getValue());
93 114
        }
94
        isEditorActivated = Boolean.valueOf(distributionEditorPref.getValue());
95
//        allowOverrideActivated = distributionEditorPref.isAllowOverride();
115

  
116

  
96 117
        isAdminPreference = true;
97 118

  
98 119
        if (prefAreaDisplay != null){
99 120
            this.displayArea = prefAreaDisplay.getValue();
100 121
        }else{
101
            this.displayArea = ((TermDisplayEnum)PreferencePredicate.DisplayOfAreasInDistributionEditor.getDefaultValue()).getKey();
122
            this.displayArea = Messages.Preference_Use_Default;
102 123
        }
103 124

  
104 125

  
105 126
        if (prefStatusDisplay != null){
106 127
            this.displayStatus = prefStatusDisplay.getValue();
107 128
        }else{
108
            this.displayStatus = ((TermDisplayEnum)PreferencePredicate.DisplayOfStatus.getDefaultValue()).getKey();
129
            this.displayStatus = Messages.Preference_Use_Default;
109 130
        }
110 131

  
111 132
        if (prefAreaSort != null){
112 133
            if (prefAreaSort.getValue() != null){
113 134
                this.orderAreas = prefAreaSort.getValue().toString();
114 135
            }else{
115
                this.orderAreas = ((TermOrder)PreferencePredicate.AreasSortedInDistributionEditor.getDefaultValue()).getKey();
136
                this.orderAreas = Messages.Preference_Use_Default;
116 137
            }
117 138

  
118 139
        }else{
119
            this.orderAreas = ((TermOrder)PreferencePredicate.AreasSortedInDistributionEditor.getDefaultValue()).getKey();
140
            this.orderAreas = Messages.Preference_Use_Default;
120 141

  
121 142
        }
122 143

  
......
125 146
            this.isShowRank = Boolean.valueOf(prefRank.getValue().toString());
126 147

  
127 148
        }else{
128
            this.isShowRank = Boolean.valueOf(PreferencePredicate.ShowRankInDistributionEditor.getDefaultValue().toString());
149
            this.isShowRank = null;
129 150
        }
130 151

  
131 152

  
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/GeneralAdminPreferencePage.java
35 35
    @Override
36 36
    public boolean performOk() {
37 37

  
38

  
38
        if (!isApply()){
39
            return true;
40
        }
39 41
       if (controller != null){
40 42
           IPreferenceService service = controller.getPreferenceService();
41 43

  
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/NameDetailsViewAdminConfiguration.java
45 45

  
46 46
    @Override
47 47
    public boolean performOk() {
48
        if (!isApply()){
49
            return true;
50
        }
48 51
        if (nameDetailsConfig == null){
49 52
            return true;
50 53
        }
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/NomenclaturalCodePreferences.java
155 155

  
156 156
	@Override
157 157
	 public boolean performOk() {
158
	    if (actualCode != null){
159
	        CdmPreference pref = CdmPreference.NewDatabaseInstance(PreferencePredicate.NomenclaturalCode, actualCode.toString());
160
	        pref.setAllowOverride(allowOverride);
161
	        PreferencesUtil.setPreferredNomenclaturalCode(pref);
162
	    }
158
	    if (!isApply()){
159
            return true;
160
        }
161
	    CdmPreference pref = CdmPreference.NewDatabaseInstance(PreferencePredicate.NomenclaturalCode, actualCode.toString());
162
	    pref.setAllowOverride(allowOverride);
163
	    PreferencesUtil.setPreferredNomenclaturalCode(pref);
164

  
163 165
        return true;
164 166
    }
165 167

  
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/PublishFlagPreference.java
37 37

  
38 38
    @Override
39 39
    public boolean performOk() {
40
        if (pref == null){
40
        if (!isApply()){
41 41
            return true;
42 42
        }
43 43
        String text = publishFlagBehaviour.getText();
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/SpecimenAdminPreferences.java
53 53
                this.isShowSpecimenRelatedIssues = Boolean.valueOf(showSpecimenPref.getValue());
54 54
                this.allowOverrideShowSpecimenRelatedIssues = showSpecimenPref.isAllowOverride();
55 55
            }else{
56
                showSpecimenPref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowSpecimen, Boolean.toString(true));
57
                this.isShowSpecimenRelatedIssues = true;
56
                //showSpecimenPref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowSpecimen, Boolean.toString(true));
57
//                this.isShowSpecimenRelatedIssues = true;
58 58
                this.allowOverrideShowSpecimenRelatedIssues = true;
59 59
            }
60 60

  
......
64 64
                this.isShowCollectingAreaInGeneralSection = Boolean.valueOf(isShowCollectingAreaInGeneralSectionPref.getValue());
65 65
                this.allowOverrideShowCollectingAreaInGeneralSection = isShowCollectingAreaInGeneralSectionPref.isAllowOverride();
66 66
            }else{
67
                this.isShowCollectingAreaInGeneralSection = (Boolean) PreferencePredicate.ShowCollectingAreasInGeneralSection.getDefaultValue();
67
//                this.isShowCollectingAreaInGeneralSection = (Boolean) PreferencePredicate.ShowCollectingAreasInGeneralSection.getDefaultValue();
68 68
                this.allowOverrideShowCollectingAreaInGeneralSection = true;
69 69
            }
70 70

  
......
74 74
                this.isDeterminationOnlyForFieldUnits = Boolean.valueOf(isDeterminationOnlyForFieldUnitsPref.getValue());
75 75
                this.allowOverrideDeterminationOnlyForFieldUnits = isDeterminationOnlyForFieldUnitsPref.isAllowOverride();
76 76
            }else{
77
                this.isDeterminationOnlyForFieldUnits =(Boolean)PreferencePredicate.DeterminationOnlyForFieldUnits.getDefaultValue();
77
//                this.isDeterminationOnlyForFieldUnits =(Boolean)PreferencePredicate.DeterminationOnlyForFieldUnits.getDefaultValue();
78 78
                this.allowOverrideDeterminationOnlyForFieldUnits = true;
79 79
            }
80 80
            key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowTaxonAssociations);
......
83 83
                this.isShowTaxonAssociation = Boolean.valueOf(isShowTaxonAssociationPref.getValue());
84 84
                this.allowOverrideShowTaxonAssociation = isShowTaxonAssociationPref.isAllowOverride();
85 85
            }else{
86
                this.isShowTaxonAssociation = (Boolean)PreferencePredicate.ShowTaxonAssociations.getDefaultValue();
86
//                this.isShowTaxonAssociation = (Boolean)PreferencePredicate.ShowTaxonAssociations.getDefaultValue();
87 87
                this.allowOverrideShowTaxonAssociation = true;
88 88
            }
89 89

  
......
93 93
                this.isShowLifeForm = Boolean.valueOf(isShowLifeFormPref.getValue());
94 94
                this.allowOverrideShowLifeForm = isShowLifeFormPref.isAllowOverride();
95 95
            } else{
96
                this.isShowLifeForm = (Boolean)PreferencePredicate.ShowLifeForm.getDefaultValue();
96
//                this.isShowLifeForm = (Boolean)PreferencePredicate.ShowLifeForm.getDefaultValue();
97 97
                this.allowOverrideShowLifeForm = true;
98 98
            }
99 99

  
......
102 102

  
103 103
    @Override
104 104
     public boolean performOk() {
105
        if (showSpecimenPref == null){
105
        if (!isApply()){
106 106
            return true;
107 107
        }
108 108
        ICdmRepository controller = CdmStore.getCurrentApplicationConfiguration();
109 109
        if (controller != null){
110 110
            IPreferenceService service = controller.getPreferenceService();
111
            CdmPreference pref;
112
            if (isShowCollectingAreaInGeneralSection == null){
113
                service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowCollectingAreasInGeneralSection));
114
            }else{
115
                pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowCollectingAreasInGeneralSection, Boolean.toString(this.isShowCollectingAreaInGeneralSection));
116
                pref.setAllowOverride(allowOverrideShowCollectingAreaInGeneralSection);
117
                service.set(pref);
118
            }
119
            if (isShowSpecimenRelatedIssues == null){
120
                service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowSpecimen));
121
            }else{
122
                pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowSpecimen, Boolean.toString(this.isShowSpecimenRelatedIssues));
123
                pref.setAllowOverride(allowOverrideShowSpecimenRelatedIssues);
124
                service.set(pref);
125
            }
111 126

  
112
            CdmPreference pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowCollectingAreasInGeneralSection, Boolean.toString(this.isShowCollectingAreaInGeneralSection));
113
            pref.setAllowOverride(allowOverrideShowCollectingAreaInGeneralSection);
114
            service.set(pref);
115
            pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowSpecimen, Boolean.toString(this.isShowSpecimenRelatedIssues));
116
            pref.setAllowOverride(allowOverrideShowSpecimenRelatedIssues);
117
            service.set(pref);
118

  
119
            pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DeterminationOnlyForFieldUnits, Boolean.toString(this.isDeterminationOnlyForFieldUnits));
120
            pref.setAllowOverride(allowOverrideDeterminationOnlyForFieldUnits);
121
            service.set(pref);
122

  
123
            pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowTaxonAssociations, Boolean.toString(this.isShowTaxonAssociation));
124
            pref.setAllowOverride(allowOverrideShowTaxonAssociation);
125
            service.set(pref);
126

  
127
            pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowLifeForm, Boolean.toString(this.isShowLifeForm));
128
            pref.setAllowOverride(allowOverrideShowLifeForm);
129
            service.set(pref);
127
            if (isDeterminationOnlyForFieldUnits == null){
128
                service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.DeterminationOnlyForFieldUnits));
129
            }else{
130
                pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DeterminationOnlyForFieldUnits, Boolean.toString(this.isDeterminationOnlyForFieldUnits));
131
                pref.setAllowOverride(allowOverrideDeterminationOnlyForFieldUnits);
132
                service.set(pref);
133
            }
134
            if (isShowTaxonAssociation == null){
135
                service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowTaxonAssociations));
136
            }else{
137
                pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowTaxonAssociations, Boolean.toString(this.isShowTaxonAssociation));
138
                pref.setAllowOverride(allowOverrideShowTaxonAssociation);
139
                service.set(pref);
140
            }
141
            if (isShowLifeForm == null){
142
                service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowLifeForm));
143
            }else{
144
                pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowLifeForm, Boolean.toString(this.isShowLifeForm));
145
                pref.setAllowOverride(allowOverrideShowLifeForm);
146
                service.set(pref);
147
            }
130 148
            PreferencesUtil.updateDBPreferences();
131 149

  
132 150

  
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/VocabularyAdminPreferences.java
73 73

  
74 74
    @Override
75 75
    public boolean performOk() {
76
        if (pref == null){
76
        if (!isApply()){
77 77
            return true;
78 78
        }
79 79
        PreferencesUtil.setPreferenceToDB(pref);
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/l10n/messages.properties
491 491
TermOrder_natural=Natural
492 492

  
493 493
ChecklistEditorGeneralPreference_Configure_area_order=Order of Areas
494
Preference_Use_Default= (Use Default)
494
Preference_Use_Default= Use Default
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/ChecklistEditorGeneralPreference.java
38 38
 */
39 39
public class ChecklistEditorGeneralPreference extends CdmPreferencePage implements SelectionListener {
40 40

  
41
    protected boolean isEditorActivated;
41

  
42

  
43
    protected Boolean isEditorActivated;
42 44

  
43 45
    protected boolean overrideActivated;
44 46
    boolean isUseLocal;
45
    protected boolean isShowRank;
47
    protected Boolean isShowRank;
46 48
    protected String orderAreas;
47 49
    protected String displayStatus;
48 50
    protected String displayArea;
49
    protected boolean ownDescriptionForDistributionEditor;
51
    protected Boolean ownDescriptionForDistributionEditor;
50 52

  
51 53
    protected boolean overrideOwnDescriptionForDistributionEditor;
52 54
    protected boolean overrideAreaVoc;
......
95 97
        getValues();
96 98
        Composite composite = new Composite(parent, SWT.NULL);
97 99
        composite.setLayout(new GridLayout());
98
        if (!isAdminPreference && !distributionEditorPref.isAllowOverride()&& !isEditorActivated ) {
100
        if (!isAdminPreference && distributionEditorPref != null && !distributionEditorPref.isAllowOverride()&& !isEditorActivated ) {
99 101
            Label label = new Label(composite, SWT.NONE);
100 102
            label.setText(
101 103
                    "The CDM settings don't allow to set the preferences for using the distribution editor locally. If you need to make local settings, please ask an administrator.");
......
112 114
            separator.setLayoutData(sepGrid);
113 115

  
114 116
            activateCombo = createBooleanCombo(activateComp, ENABLE, DISABLE, PreferencePredicate.DistributionEditorActivated, Messages.ChecklistEditorGeneralPreference_enable, isAdminPreference);
115
            if (isEditorActivated) {
116
                activateCombo.select(0);
117
            } else {
118
                activateCombo.select(1);
117

  
118
            int index = 0;
119
            for (String itemLabel : activateCombo.getItems()) {
120
                if (isEditorActivated == null && itemLabel.equals(Messages.Preference_Use_Default)) {
121
                    activateCombo.select(index);
122
                    break;
123
                }
124
                if (isEditorActivated != null && itemLabel.equals(ENABLE) && isEditorActivated){
125
                    activateCombo.select(index);
126
                    break;
127
                }
128
                if (isEditorActivated != null && itemLabel.equals(DISABLE) && !isEditorActivated){
129
                    activateCombo.select(index);
130
                    break;
131
                }
132
                index++;
119 133
            }
120 134

  
135

  
121 136
            activateCombo.addSelectionListener(this);
122 137
            if (isAdminPreference) {
123 138
                allowOverrideActivatedButton = createAllowOverrideButton(activateComp);
124
                allowOverrideActivatedButton.setSelection(this.distributionEditorPref.isAllowOverride());
139
                allowOverrideActivatedButton.setSelection(this.distributionEditorPref != null? this.distributionEditorPref.isAllowOverride(): true);
125 140
                allowOverrideActivatedButton.addSelectionListener(new SelectionAdapter() {
126 141
                    @Override
127 142
                    public void widgetSelected(SelectionEvent e) {
128 143
                        setApply(true);
144
                        if (distributionEditorPref == null){
145
                            distributionEditorPref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DistributionEditorActivated, PreferencePredicate.DistributionEditorActivated.getDefaultValue() != null ?  PreferencePredicate.DistributionEditorActivated.getDefaultValue().toString(): null);
146
                        }
129 147
                        distributionEditorPref.setAllowOverride(!distributionEditorPref.isAllowOverride());
130 148
                    }
131 149
                });
......
133 151
            child = createComposite(composite);
134 152

  
135 153
            if (!isAdminPreference) {
136
                child.setEnabled(isEditorActivated);
154
                if (isEditorActivated != null){
155
                    child.setEnabled(isEditorActivated);
156
                }else{
157
                    child.setEnabled(Boolean.parseBoolean(distributionEditorPref.getValue().toString()));
158
                }
137 159
            }
138 160
            separator = new Label(child, SWT.HORIZONTAL | SWT.SEPARATOR);
139 161
            sepGrid = createTextGridData();
......
141 163

  
142 164
            activateRankCombo = createBooleanCombo(child, SHOW_RANK, NO_RANK,
143 165
                    PreferencePredicate.ShowRankInDistributionEditor, Messages.ChecklistEditorGeneralPreference_show_rank, isAdminPreference);
144

  
145
            if (isShowRank) {
146
                activateRankCombo.select(0);
147
            } else {
148
                activateRankCombo.select(1);
166
            index = 0;
167
            for (String itemLabel : activateRankCombo.getItems()) {
168
                if (isShowRank == null && itemLabel.equals(Messages.Preference_Use_Default)) {
169
                    activateRankCombo.select(index);
170
                    break;
171
                }
172
                if (isShowRank != null && itemLabel.equals(SHOW_RANK) && isShowRank){
173
                    activateRankCombo.select(index);
174
                    break;
175
                }
176
                if (isShowRank != null && itemLabel.equals(NO_RANK) && !isShowRank){
177
                    activateRankCombo.select(index);
178
                    break;
179
                }
180
                index++;
149 181
            }
150 182
            activateRankCombo.addSelectionListener(this);
151 183
            if (isAdminPreference) {
152 184
                allowOverrideRankButton = createAllowOverrideButton(child);
153
                allowOverrideRankButton.setSelection(prefRank.isAllowOverride());
185
                allowOverrideRankButton.setSelection(prefRank != null? prefRank.isAllowOverride():true);
154 186
                allowOverrideRankButton.addSelectionListener(new SelectionAdapter() {
155 187
                    @Override
156 188
                    public void widgetSelected(SelectionEvent e) {
......
165 197

  
166 198
            areaOrderSelectionCombo = createCombo(child, TermOrder.values(), PreferencePredicate.AreasSortedInDistributionEditor, Messages.ChecklistEditorGeneralPreference_Configure_area_order, isAdminPreference);
167 199

  
168
            int index = 0;
200
            index = 0;
169 201
            TermOrder areaOrder;
170
                try {
171
                    if (orderAreas != null) {
172
                        areaOrder = TermOrder.valueOf(orderAreas);
173
                    } else {
174
                        areaOrder = TermOrder.IdInVoc;
175
                    }
176
                } catch (IllegalArgumentException e) {
202
            try {
203
                if (orderAreas != null) {
204
                    areaOrder = TermOrder.valueOf(orderAreas);
205
                } else {
177 206
                    areaOrder = TermOrder.IdInVoc;
178 207
                }
179
                for (String itemLabel : areaOrderSelectionCombo.getItems()) {
180
                    if (itemLabel.startsWith(areaOrder.getLabel())) {
181
                        areaOrderSelectionCombo.select(index);
182
                        break;
183
                    }
184
                    index++;
208
            } catch (IllegalArgumentException e) {
209
                areaOrder = TermOrder.IdInVoc;
210
            }
211
            for (String itemLabel : areaOrderSelectionCombo.getItems()) {
212
                if (itemLabel.equals(Messages.Preference_Use_Default) && orderAreas.equals(Messages.Preference_Use_Default)){
213
                    areaOrderSelectionCombo.select(index);
214
                    break;
185 215
                }
216
                if (itemLabel.startsWith(areaOrder.getLabel())) {
217
                    areaOrderSelectionCombo.select(index);
218
                    break;
219
                }
220

  
221
                index++;
222
            }
186 223

  
187 224
            areaOrderSelectionCombo.addSelectionListener(this);
188 225

  
189 226
            if (isAdminPreference) {
190 227
                allowOverrideOrderAreasButton = createAllowOverrideButton(child);
191
                allowOverrideOrderAreasButton.setSelection(prefAreaSort.isAllowOverride());
228
                allowOverrideOrderAreasButton.setSelection(prefAreaSort != null? prefAreaSort.isAllowOverride(): true);
192 229
                allowOverrideOrderAreasButton.addSelectionListener(new SelectionAdapter() {
193 230
                    @Override
194 231
                    public void widgetSelected(SelectionEvent e) {
......
202 239
            separator.setLayoutData(sepGrid);
203 240
            areaDisplaySelectionCombo = createCombo(child, TermDisplayEnum.values(), PreferencePredicate.DisplayOfAreasInDistributionEditor, Messages.ChecklistEditorGeneralPreference_Configure_display_of_Areas, isAdminPreference);
204 241

  
242

  
205 243
            index = 0;
206
            if (PreferencesUtil.getStringValue(PreferencePredicate.DistributionEditorActivated.getKey()) != null) {
207
                TermDisplayEnum areaDisplay;
208
                try {
209
                    if (displayArea != null) {
210
                        areaDisplay = TermDisplayEnum.byKey(displayArea);
211
                    } else {
212
                        areaDisplay = TermDisplayEnum.Title;
213
                    }
214
                } catch (IllegalArgumentException e) {
244
            TermDisplayEnum areaDisplay;
245
            try {
246
                if (displayArea != null) {
247
                    areaDisplay = TermDisplayEnum.valueOf(displayArea);
248
                } else {
215 249
                    areaDisplay = TermDisplayEnum.Title;
216 250
                }
217

  
218
                for (String itemLabel : areaDisplaySelectionCombo.getItems()) {
219
                    if (itemLabel.startsWith(areaDisplay.getLabel())) {
220
                        areaDisplaySelectionCombo.select(index);
221
                        break;
222
                    }
223
                    index++;
251
            } catch (IllegalArgumentException e) {
252
                areaDisplay = TermDisplayEnum.Title;
253
            }
254
            for (String itemLabel : areaDisplaySelectionCombo.getItems()) {
255
                if (itemLabel.equals(Messages.Preference_Use_Default) && displayArea.equals(Messages.Preference_Use_Default)){
256
                    areaDisplaySelectionCombo.select(index);
257
                    break;
224 258
                }
259
                if (itemLabel.startsWith(areaDisplay.getLabel())) {
260
                    areaDisplaySelectionCombo.select(index);
261
                    break;
262
                }
263

  
264
                index++;
225 265
            }
226 266
            areaDisplaySelectionCombo.addSelectionListener(this);
227 267

  
228 268
            if (isAdminPreference) {
229 269
                allowOverrideAreaDisplayButton = createAllowOverrideButton(child);
230
                allowOverrideAreaDisplayButton.setSelection(prefAreaDisplay.isAllowOverride());
270
                allowOverrideAreaDisplayButton.setSelection(prefAreaDisplay != null? prefAreaDisplay.isAllowOverride(): true);
231 271
                allowOverrideAreaDisplayButton.addSelectionListener(new SelectionAdapter() {
232 272
                    @Override
233 273
                    public void widgetSelected(SelectionEvent e) {
......
240 280
            statusDisplaySelectionCombo = createCombo(child, TermDisplayEnum.values(), PreferencePredicate.DisplayOfStatus, Messages.ChecklistEditorGeneralPreference_Configure_display_of_Status, isAdminPreference);
241 281

  
242 282
            index = 0;
243
            if (displayStatus != null) {
244
                TermDisplayEnum statusDisplay;
245
                try {
246
                    statusDisplay = TermDisplayEnum.byKey(displayStatus);
247
                } catch (IllegalArgumentException e) {
283
            TermDisplayEnum statusDisplay;
284
            try {
285
                if (displayStatus != null) {
286
                    statusDisplay = TermDisplayEnum.valueOf(displayStatus);
287
                } else {
248 288
                    statusDisplay = TermDisplayEnum.Title;
249 289
                }
250
                for (String itemLabel : statusDisplaySelectionCombo.getItems()) {
251
                    if (itemLabel.startsWith(statusDisplay.getLabel())) {
252
                        statusDisplaySelectionCombo.select(index);
253
                        break;
254
                    }
255
                    index++;
290
            } catch (IllegalArgumentException e) {
291
                statusDisplay = TermDisplayEnum.Title;
292
            }
293
            for (String itemLabel : statusDisplaySelectionCombo.getItems()) {
294
                if (itemLabel.equals(Messages.Preference_Use_Default) && displayStatus.equals(Messages.Preference_Use_Default)){
295
                    statusDisplaySelectionCombo.select(index);
296
                    break;
297
                }
298
                if (itemLabel.startsWith(statusDisplay.getLabel())) {
299
                    statusDisplaySelectionCombo.select(index);
300
                    break;
256 301
                }
302

  
303
                index++;
257 304
            }
258 305

  
259 306
            statusDisplaySelectionCombo.addSelectionListener(this);
260 307

  
261 308
            if (isAdminPreference) {
262 309
                allowOverrideStatusDisplayButton = createAllowOverrideButton(child);
263
                allowOverrideStatusDisplayButton.setSelection(prefStatusDisplay.isAllowOverride());
310
                allowOverrideStatusDisplayButton.setSelection(prefStatusDisplay != null ? prefStatusDisplay.isAllowOverride(): true);
264 311
                allowOverrideStatusDisplayButton.addSelectionListener(new SelectionAdapter() {
265 312
                    @Override
266 313
                    public void widgetSelected(SelectionEvent e) {
......
297 344
                    .setText(Messages.ChecklistEditorGeneralPreference_open_distribution_selection);
298 345

  
299 346
            if (!isAdminPreference) {
300
                PreferencesUtil.recursiveSetEnabled(child, isEditorActivated);
347

  
348
                //PreferencesUtil.recursiveSetEnabled(child, isEditorActivated);
301 349
                if (distributionEditorPref != null && !distributionEditorPref.isAllowOverride()){
302 350
                    activateComp.setEnabled(false);
303 351
                }
......
330 378

  
331 379
    @Override
332 380
    public boolean performOk() {
333
       // if (distributionEditorPref == null || this.distributionEditorPref.isAllowOverride()) {
334

  
335
            PreferencesUtil.setBooleanValue(PreferencePredicate.DistributionEditorActivated.getKey(),
336
                    isEditorActivated);
381
        if (!isApply()){
382
            return true;
383
        }
337 384
            boolean override = false;
338
            if (distributionEditorPref == null
339
                    || isEditorActivated != Boolean.parseBoolean(distributionEditorPref.getValue())) {
385
            if (isEditorActivated != null ) {
340 386
                override = true;
387
                PreferencesUtil.setStringValue(PreferencePredicate.DistributionEditorActivated.getKey(), isEditorActivated.toString());
341 388
            }
342 389
            PreferencesUtil.setBooleanValue(
343 390
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()),
344 391
                    override);
345
            PreferencesUtil.setSortNamedAreasInDistributionEditor(orderAreas);
392

  
393

  
346 394
            override = false;
347
            if (prefAreaSort == null || orderAreas != prefAreaSort.getValue()) {
395
            if (!orderAreas.equals(Messages.Preference_Use_Default) ) {
348 396
                override = true;
397
                PreferencesUtil.setSortNamedAreasInDistributionEditor(orderAreas);
349 398
            }
350 399
            PreferencesUtil.setBooleanValue(
351 400
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()),
352 401
                    override);
353
            PreferencesUtil.setShowRankInChecklistEditor(isShowRank);
402

  
403

  
404

  
405

  
406

  
354 407
            override = false;
355
            if (prefRank == null || isShowRank != Boolean.parseBoolean(prefRank.getValue())) {
408
            if (isShowRank != null ) {
356 409
                override = true;
410
                PreferencesUtil.setShowRankInChecklistEditor(isShowRank);
357 411
            }
358 412
            PreferencesUtil.setBooleanValue(
359 413
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()),
360
                    true);
361
            PreferencesUtil.setDisplayStatusInChecklistEditor(displayStatus);
414
                    override);
415

  
416

  
362 417
            override = false;
363
            if (prefStatusDisplay == null || displayStatus != prefStatusDisplay.getValue()) {
418
            if (!displayStatus.equals(Messages.Preference_Use_Default)) {
364 419
               override = true;
420
               PreferencesUtil.setDisplayStatusInChecklistEditor(displayStatus);
365 421
            }
366 422
            PreferencesUtil.setBooleanValue(
367 423
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()),
368
                    true);
369
            PreferencesUtil.setAreaDisplayInChecklistEditor(displayArea);
424
                    override);
425

  
426

  
427

  
428

  
370 429
            override = false;
371
            if (prefAreaDisplay == null || displayArea != prefAreaDisplay.getValue()) {
430
            if (!displayArea.equals(Messages.Preference_Use_Default) ) {
372 431
                override = true;
432
                PreferencesUtil.setAreaDisplayInChecklistEditor(displayArea);
373 433
            }
374 434
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(
375
                    PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), overrideAreaDisplay);
435
                    PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), override);
436

  
437

  
438

  
439

  
376 440
            PreferencesUtil.setOwnDescriptionForChecklistEditor(ownDescriptionForDistributionEditor);
377 441
            PreferencesUtil.setBooleanValue(
378 442
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.OwnDescriptionForDistributionEditor.getKey()),
379 443
                    true);
380 444

  
381
            // if (statusPref != null){
382
            // PreferencesUtil.setStringValue(PreferencePredicate.AvailableDistributionStatus.getKey(),
383
            // "");
384
            // //PreferencesUtil.setStringValue(PreferencePredicate.AvailableDistributionStatus.getKey(),
385
            // statusPref.getValue());
386
            // PreferencesUtil.setBooleanValue(PreferencesUtil.createOverridePreferenceString(PreferencePredicate.AvailableDistributionStatus.getKey()),true);
387
            //
388
            // }
389
            // if (areaVocPref != null){
390
            // PreferencesUtil.setStringValue(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey(),
391
            // "");
392
            // PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey()),
393
            // true);
394
            // }
395 445
            PreferencesUtil.firePreferencesChanged(this.getClass());
396 446

  
397
        //}
398 447
        return true;
399 448
    }
400 449

  
......
406 455
        setApply(true);
407 456
        if (e.getSource().equals(statusDisplaySelectionCombo)) {
408 457
            String text = statusDisplaySelectionCombo.getText();
458
            if(text.equals(Messages.Preference_Use_Default)){
459
                displayStatus = Messages.Preference_Use_Default;
460
                if(isAdminPreference){
461
                    prefStatusDisplay.setAllowOverride(true);
462
                    allowOverrideStatusDisplayButton.setSelection(true);
463
                }
464

  
465
                return;
466
            }
409 467
            for (TermDisplayEnum display : TermDisplayEnum.values()) {
410 468
                if (text.startsWith(display.getLabel())) {
411 469
                    displayStatus = display.getKey();
412 470
                    break;
413 471
                }
472

  
414 473
            }
415 474
        }
416 475
        if (e.getSource().equals(areaDisplaySelectionCombo)) {
417 476
            String text = areaDisplaySelectionCombo.getText();
477
            if(text.equals(Messages.Preference_Use_Default)){
478
                displayArea = Messages.Preference_Use_Default;
479
                if (isAdminPreference){
480
                    prefAreaDisplay.setAllowOverride(true);
481
                    allowOverrideAreaDisplayButton.setSelection(true);
482
                }
483
                return;
484
            }
418 485
            for (TermDisplayEnum display : TermDisplayEnum.values()) {
419 486
                if (text.startsWith(display.getLabel())) {
420 487
                    displayArea = display.getKey();
......
424 491
        }
425 492
        if (e.getSource().equals(areaOrderSelectionCombo)) {
426 493
            String text = areaOrderSelectionCombo.getText();
494
            if(text.equals(Messages.Preference_Use_Default)){
495
                orderAreas = Messages.Preference_Use_Default;
496
                if (isAdminPreference){
497
                    prefAreaSort.setAllowOverride(true);
498
                    allowOverrideOrderAreasButton.setSelection(true);
499
                }
500
                return;
501
            }
427 502
            for (TermOrder display : TermOrder.values()) {
428 503
                if (text.startsWith(display.getLabel())) {
429 504
                    orderAreas = display.getKey();
......
433 508
        }
434 509
        if (e.getSource().equals(this.activateRankCombo)) {
435 510
            String text = activateRankCombo.getText();
436
            text = text.replace(Messages.Preference_Use_Default, "");
511
            if(text.equals(Messages.Preference_Use_Default)){
512
                isShowRank = null;
513
                if (isAdminPreference){
514
                    prefRank.setAllowOverride(true);
515
                    allowOverrideRankButton.setSelection(true);
516
                }
517
                return;
518
            }
437 519
            if (text.equals(SHOW_RANK)){
438 520
                isShowRank = true;
439 521
            }else{
......
443 525

  
444 526
        if (e.getSource().equals(this.activateCombo)) {
445 527
            String text = activateCombo.getText();
446
            text = text.replace(" (Default)", "");
528
            if(text.equals(Messages.Preference_Use_Default)){
529
                isEditorActivated = null;
530
                if (isAdminPreference){
531
                    if (distributionEditorPref == null){
532
                        distributionEditorPref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DistributionEditorActivated, PreferencePredicate.DistributionEditorActivated.getDefaultValue() != null ?  PreferencePredicate.DistributionEditorActivated.getDefaultValue().toString(): null);
533
                    }
534
                    distributionEditorPref.setAllowOverride(true);
535
                    allowOverrideActivatedButton.setSelection(true);
536
                }
537
                return;
538
            }
447 539
            if (text.equals(ENABLE)){
448 540
                isEditorActivated = true;
449 541
            }else{
450 542
                isEditorActivated = false;
451 543
            }
544

  
452 545
        }
453
        PreferencesUtil.recursiveSetEnabled(child, isEditorActivated);
546
        //PreferencesUtil.recursiveSetEnabled(child, isEditorActivated);
454 547
    }
455 548

  
456 549
    /**
......
470 563
        isAdminPreference = false;
471 564
        setPreferenceStore(PreferencesUtil.getPreferenceStore());
472 565
        distributionEditorPref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DistributionEditorActivated);
566
        overrideActivated = PreferencesUtil.getBooleanValue(
567
                PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()), true);
473 568

  
474 569
        if (distributionEditorPref != null) {
475
            // isAllowOverride = distributionEditorPref.isAllowOverride();
476

  
477 570
            if (distributionEditorPref.isAllowOverride() ) {
478
                isEditorActivated = PreferencesUtil
479
                        .getBooleanValue(PreferencePredicate.DistributionEditorActivated.getKey(), true);
571
                if (overrideActivated){
572
                    isEditorActivated = PreferencesUtil.getBooleanValue(PreferencePredicate.DistributionEditorActivated.getKey(), true);
573
                }
480 574

  
481 575
            } else {
482 576
                isEditorActivated = Boolean.valueOf(distributionEditorPref.getValue());
483 577

  
484 578
            }
485
            overrideActivated = PreferencesUtil.getBooleanValue(
486
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()), true);
579

  
487 580
        } else {
488
            isEditorActivated = PreferencesUtil
489
                    .getBooleanValue(PreferencePredicate.DistributionEditorActivated.getKey(), true);
490
            // isAllowOverride = true;
491
            overrideActivated = PreferencesUtil.getBooleanValue(
492
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()), true);
493
            distributionEditorPref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DistributionEditorActivated, PreferencePredicate.DistributionEditorActivated.getDefaultValue() != null ?  PreferencePredicate.DistributionEditorActivated.getDefaultValue().toString(): null);
581
            if(!overrideActivated){
582
                isEditorActivated = null;
583
            }else{
584
                isEditorActivated = PreferencesUtil.getBooleanValue(PreferencePredicate.DistributionEditorActivated.getKey(), true);
585
            }
586
            //distributionEditorPref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DistributionEditorActivated, PreferencePredicate.DistributionEditorActivated.getDefaultValue() != null ?  PreferencePredicate.DistributionEditorActivated.getDefaultValue().toString(): null);
494 587
        }
495 588

  
496 589
        prefAreaVoc = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.AvailableDistributionAreaVocabularies);
......
506 599

  
507 600

  
508 601
        prefAreaDisplay = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DisplayOfAreasInDistributionEditor);
602
        overrideAreaDisplay = PreferencesUtil.getBooleanValue(
603
                PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), true);
509 604
        if (prefAreaDisplay != null) {
510

  
511
            if (prefAreaDisplay.isAllowOverride()) {
512
                displayArea = PreferencesUtil.displayAreaInChecklistEditor();
513
                overrideAreaDisplay = PreferencesUtil.getBooleanValue(PreferencesUtil
514
                        .prefOverrideKey(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), true);
605
            if (prefAreaDisplay.isAllowOverride()){
606
                if (overrideActivated) {
607
                    displayArea = PreferencesUtil.displayAreaInChecklistEditor();
608
                }else{
609
                    displayArea = Messages.Preference_Use_Default;
610
                }
515 611
            } else {
516 612
                displayArea = prefAreaDisplay.getValue();
517 613
            }
518 614
        } else {
519
            displayArea = PreferencesUtil.displayAreaInChecklistEditor();
520

  
521
            overrideAreaDisplay = PreferencesUtil.getBooleanValue(
522
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), true);
523
            prefAreaDisplay = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DisplayOfAreasInDistributionEditor, PreferencePredicate.DisplayOfAreasInDistributionEditor.getDefaultValue() != null ?  PreferencePredicate.DisplayOfAreasInDistributionEditor.getDefaultValue().toString(): null);
615
            if (overrideAreaDisplay){
616
                displayArea = PreferencesUtil.displayAreaInChecklistEditor();
617
            } else{
618
                displayArea = Messages.Preference_Use_Default;
619
            }
620
            //prefAreaDisplay = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DisplayOfAreasInDistributionEditor, PreferencePredicate.DisplayOfAreasInDistributionEditor.getDefaultValue() != null ?  PreferencePredicate.DisplayOfAreasInDistributionEditor.getDefaultValue().toString(): null);
524 621
        }
525 622

  
526 623
        prefStatusDisplay = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DisplayOfStatus);
624
        overrideStatusDisplay = PreferencesUtil
625
                .getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()), true);
527 626
        if (prefStatusDisplay != null) {
528

  
529
            if (prefStatusDisplay.isAllowOverride()) {
530
                displayStatus = PreferencesUtil.displayStatusInChecklistEditor();
531
                overrideStatusDisplay = PreferencesUtil
532
                        .getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()), true);
627
            if (prefStatusDisplay.isAllowOverride()){
628
                if (overrideStatusDisplay) {
629
                    displayStatus = PreferencesUtil.displayStatusInChecklistEditor();
630
                }else{
631
                    displayStatus = Messages.Preference_Use_Default;
632
                }
533 633
            } else {
534 634
                this.displayStatus = prefStatusDisplay.getValue();
535 635
            }
536 636
        } else {
537
            displayStatus = PreferencesUtil.displayStatusInChecklistEditor();
538

  
539
            overrideStatusDisplay = PreferencesUtil
540
                    .getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()), true);
541
            prefStatusDisplay = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DisplayOfStatus, PreferencePredicate.DisplayOfStatus.getDefaultValue() != null ?  PreferencePredicate.DisplayOfStatus.getDefaultValue().toString(): null);
637
            if (overrideStatusDisplay){
638
                displayStatus = PreferencesUtil.displayStatusInChecklistEditor();
639
            } else{
640
                displayStatus = Messages.Preference_Use_Default;
641
            }
642
            //prefStatusDisplay = CdmPreference.NewTaxEditorInstance(PreferencePredicate.DisplayOfStatus, PreferencePredicate.DisplayOfStatus.getDefaultValue() != null ?  PreferencePredicate.DisplayOfStatus.getDefaultValue().toString(): null);
542 643
        }
543 644

  
544 645
        prefAreaSort = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.AreasSortedInDistributionEditor);
646
        overrideOrderAreas = PreferencesUtil.getBooleanValue(
647
                PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()), true);
545 648
        if (prefAreaSort != null) {
546

  
547
            if (prefAreaSort.isAllowOverride()) {
548
                orderAreas = PreferencesUtil.getSortNamedAreasInDistributionEditor();
549
                overrideOrderAreas = PreferencesUtil.getBooleanValue(
550
                        PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()), true);
649
            if (prefAreaSort.isAllowOverride()){
650
                if(overrideOrderAreas) {
651
                    orderAreas = PreferencesUtil.getSortNamedAreasInDistributionEditor();
652
                }else{
653
                    orderAreas = Messages.Preference_Use_Default;
654
                }
551 655
            } else {
552 656
                if (prefAreaSort.getValue() != null) {
553 657
                    orderAreas = prefAreaSort.getValue().toString();
......
555 659
                    orderAreas = ((TermOrder) PreferencePredicate.AreasSortedInDistributionEditor.getDefaultValue())
556 660
                            .getKey();
557 661
                }
662

  
558 663
            }
559 664
        } else {
560
            orderAreas = PreferencesUtil.getSortNamedAreasInDistributionEditor();
561
            overrideOrderAreas = PreferencesUtil.getBooleanValue(
562
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()), true);
563
            prefAreaSort = CdmPreference.NewTaxEditorInstance(PreferencePredicate.AreasSortedInDistributionEditor, PreferencePredicate.AreasSortedInDistributionEditor.getDefaultValue() != null ?  PreferencePredicate.AreasSortedInDistributionEditor.getDefaultValue().toString(): null);
665
            if (overrideOrderAreas){
666
                orderAreas = PreferencesUtil.getSortNamedAreasInDistributionEditor();
667
            }else{
668
                orderAreas = Messages.Preference_Use_Default;
669
            }
670
            //prefAreaSort = CdmPreference.NewTaxEditorInstance(PreferencePredicate.AreasSortedInDistributionEditor, PreferencePredicate.AreasSortedInDistributionEditor.getDefaultValue() != null ?  PreferencePredicate.AreasSortedInDistributionEditor.getDefaultValue().toString(): null);
564 671
        }
565 672

  
566 673
        prefRank = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowRankInDistributionEditor);
674
        overrideRank = PreferencesUtil.getBooleanValue(
675
                PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()), true);
567 676
        if (prefRank != null) {
568
            if (prefRank.isAllowOverride()) {
569
                isShowRank = PreferencesUtil.isShowRankInChecklistEditor();
570
                overrideRank = PreferencesUtil.getBooleanValue(
571
                        PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()), true);
677
            if (prefRank.isAllowOverride()){
678
                if(overrideRank) {
679
                    isShowRank = PreferencesUtil.isShowRankInChecklistEditor();
680
                }
681

  
572 682
            } else {
573 683
                this.isShowRank = Boolean.valueOf(prefRank.getValue().toString());
574 684
            }
575 685
        } else {
576
            isShowRank = PreferencesUtil.isShowRankInChecklistEditor();
577
            overrideRank = PreferencesUtil.getBooleanValue(
578
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()), true);
579
            prefRank = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowRankInDistributionEditor, PreferencePredicate.ShowRankInDistributionEditor.getDefaultValue() != null ?  PreferencePredicate.ShowRankInDistributionEditor.getDefaultValue().toString(): null);
686
            if (overrideRank){
687
                isShowRank = PreferencesUtil.isShowRankInChecklistEditor();
688
            } else {
689
                isShowRank = null;
690
            }
691

  
692
            //refRank = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowRankInDistributionEditor, PreferencePredicate.ShowRankInDistributionEditor.getDefaultValue() != null ?  PreferencePredicate.ShowRankInDistributionEditor.getDefaultValue().toString(): null);
580 693
        }
581 694

  
582 695
        prefOwnDescription = PreferencesUtil
......
592 705
            // allowOverrideOwnDescriptionForDistributionEditor = true;
593 706
            overrideOwnDescriptionForDistributionEditor = PreferencesUtil.getBooleanValue(
594 707
                    PreferencesUtil.prefOverrideKey(PreferencePredicate.OwnDescriptionForDistributionEditor.getKey()), true);
595
            prefOwnDescription = CdmPreference.NewTaxEditorInstance(PreferencePredicate.OwnDescriptionForDistributionEditor, PreferencePredicate.OwnDescriptionForDistributionEditor.getDefaultValue() != null ?  PreferencePredicate.OwnDescriptionForDistributionEditor.getDefaultValue().toString(): null);
708
            //prefOwnDescription = CdmPreference.NewTaxEditorInstance(PreferencePredicate.OwnDescriptionForDistributionEditor, PreferencePredicate.OwnDescriptionForDistributionEditor.getDefaultValue() != null ?  PreferencePredicate.OwnDescriptionForDistributionEditor.getDefaultValue().toString(): null);
596 709
        }
597 710

  
598 711
        commandHandlerString = "eu.etaxonomy.taxeditor.store.open.OpenDistributionEditorWizardHandler";
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/IE4PreferencePage.java
17 17
 */
18 18
public interface IE4PreferencePage {
19 19

  
20
    boolean isApply();
20 21
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/NameDetailsViewConfiguration.java
6 6
import org.eclipse.swt.custom.CLabel;
7 7
import org.eclipse.swt.events.SelectionAdapter;
8 8
import org.eclipse.swt.events.SelectionEvent;
9
import org.eclipse.swt.events.SelectionListener;
9 10
import org.eclipse.swt.layout.GridData;
10 11
import org.eclipse.swt.layout.GridLayout;
11 12
import org.eclipse.swt.widgets.Button;
......
20 21
import eu.etaxonomy.taxeditor.preference.menu.CdmPreferencePage;
21 22

  
22 23

  
23
public class NameDetailsViewConfiguration extends CdmPreferencePage {
24
public class NameDetailsViewConfiguration extends CdmPreferencePage implements SelectionListener{
24 25

  
25
    protected boolean isSimpleDetailsViewActivated;
26
    /**
27
     *
28
     */
29
    private static final String DISABLE = "Disable";
30
    /**
31
     *
32
     */
33
    private static final String ENABLE = "Enable";
34
    protected Boolean isSimpleDetailsViewActivated;
26 35
	boolean isUseLocalSettings;
27 36
	protected NameDetailsConfigurator nameDetailsConfig;
28 37
    Composite localSettings ;
......
72 81
    protected Button showHybrid;
73 82
    protected Button showNameApprobiation;
74 83

  
84
    Composite dbSettings;
85

  
75 86
    @Override
76 87
    protected Control createContents(Composite parent) {
77 88
        getValues();
......
86 97
                nameDetailsConfig = new NameDetailsConfigurator(false);
87 98
            }
88 99

  
89
            activateCheckButton = createBooleanCombo(title, "Enable", "Disable", PreferencePredicate.SimpleDetailsViewActivated, Messages.NameDetailsViewConfiguration_activateSimpleDetailsView, isAdminPreference);
100
            activateCheckButton = createBooleanCombo(title, ENABLE, DISABLE, PreferencePredicate.SimpleDetailsViewActivated, Messages.NameDetailsViewConfiguration_activateSimpleDetailsView, isAdminPreference);
90 101
            if (isAdminPreference){
91 102
                allowLocalPreference = createAllowOverrideButton(title);
92 103

  
......
104 115
                });
105 116

  
106 117
            }
107
            Composite dbSettings  = new Composite(parent, SWT.NONE);
118
            dbSettings = new Composite(parent, SWT.NONE);
108 119

  
109 120
//            activateCheckButton.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, true, 1, 1));
110 121
//            activateCheckButton.setText(Messages.NameDetailsViewConfiguration_activateSimpleDetailsView);
111 122
            isSimpleDetailsViewActivated = nameDetailsConfig.isSimpleDetailsViewActivated();
112 123

  
113
            activateCheckButton.addSelectionListener(new SelectionAdapter(){
114
                @Override
115
                public void widgetSelected(SelectionEvent e) {
116
                    setApply(true);
117
                    isSimpleDetailsViewActivated = activateCheckButton.getSelectionIndex() == 0? true:false;
118
                    nameDetailsConfig.setSimpleDetailsViewActivated(isSimpleDetailsViewActivated);
119
                    dbSettings.setEnabled(isSimpleDetailsViewActivated);
120
                    PreferencesUtil.recursiveSetEnabled(dbSettings, isSimpleDetailsViewActivated);
121
                    if (isSimpleDetailsViewActivated){
122
                        showSecDetail.setEnabled(isShowTaxon);
123
                        secEnabled.setEnabled(isShowTaxon);
124
                    }
125

  
126
                 }
127
             });
124
            activateCheckButton.addSelectionListener(this);
125
//            new SelectionAdapter(){
126
//                @Override
127
//                public void widgetSelected(SelectionEvent e) {
128
//                    setApply(true);
129
//                    isSimpleDetailsViewActivated = activateCheckButton.getSelectionIndex() == 0? true:false;
130
//                    nameDetailsConfig.setSimpleDetailsViewActivated(isSimpleDetailsViewActivated);
131
//                    dbSettings.setEnabled(isSimpleDetailsViewActivated);
132
//                    PreferencesUtil.recursiveSetEnabled(dbSettings, isSimpleDetailsViewActivated);
133
//                    if (isSimpleDetailsViewActivated){
134
//                        showSecDetail.setEnabled(isShowTaxon);
135
//                        secEnabled.setEnabled(isShowTaxon);
136
//                    }
137
//
138
//                 }
139
//             });
128 140

  
129 141

  
130 142
            dbSettings.setLayout(new GridLayout());
......
426 438
    }
427 439

  
428 440
    protected void setButtonSelections(){
429
        int index = isSimpleDetailsViewActivated?0:1;
441

  
442
        int index = 0;
443
        if (isSimpleDetailsViewActivated != null){
444
            if (isSimpleDetailsViewActivated){
445
                index = 1;
446
            }else{
447
                index = 2;
448
            }
449
        }
430 450
        activateCheckButton.select(index);
431 451
        if (isAdminPreference){
432 452
            allowLocalPreference.setSelection(isAllowOverride);
......
479 499
        super.performDefaults();
480 500
    }
481 501

  
502
    /**
503
     * {@inheritDoc}
504
     */
505
    @Override
506
    public void widgetSelected(SelectionEvent e) {
507
        if (e.getSource().equals(activateCheckButton)){
508
            String text = activateCheckButton.getText();
509
            if(text.equals(Messages.Preference_Use_Default)){
510
                isSimpleDetailsViewActivated = null;
511
                if (isAdminPreference){
512
                    nameDetailsPref.setAllowOverride(true);
513
                    allowLocalPreference.setSelection(true);
514
                }
515
                return;
516
            }
517
            if (text.equals(ENABLE)){
518
                isSimpleDetailsViewActivated = true;
519
            }else{
520
                isSimpleDetailsViewActivated = false;
521
            }
522
            dbSettings.setEnabled(isSimpleDetailsViewActivated);
523
            PreferencesUtil.recursiveSetEnabled(dbSettings, isSimpleDetailsViewActivated);
524
            if (isSimpleDetailsViewActivated){
525
              showSecDetail.setEnabled(isShowTaxon);
526
              secEnabled.setEnabled(isShowTaxon);
527
            }
528
        }
529

  
530

  
531
    }
532

  
533
    /**
534
     * {@inheritDoc}
535
     */
536
    @Override
537
    public void widgetDefaultSelected(SelectionEvent e) {
538
        // TODO Auto-generated method stub
539

  
540
    }
541

  
482 542
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/PreferencesUtil.java
134 134
        CdmPreference pref = getDBPreferenceValue(name);
135 135
        String prefValue = null;
136 136
        String overrideKey =  createPreferenceString(createOverridePreferenceString(name));
137
        boolean override = true;
138
        if (getPreferenceStore().contains(overrideKey)){
139
            override = getPreferenceStore().getBoolean(overrideKey);
140
        }
137
        boolean override = getPreferenceStore().getBoolean(overrideKey);
138

  
141 139
        if (local || pref == null || (pref != null && pref.isAllowOverride() && override)){
142 140
            String dbSpecific = prefKey(name);
143 141
            if (getPreferenceStore().contains(dbSpecific)){
......
217 215
            CdmPreference pref = getDBPreferenceValue(name);
218 216

  
219 217
            String overrideKey =  createPreferenceString(createOverridePreferenceString(name));
220
            boolean override = true;
221
            if (getPreferenceStore().contains(overrideKey)){
222
                override = getPreferenceStore().getBoolean(overrideKey);
223
            }
218
            boolean override = getPreferenceStore().getBoolean(overrideKey);
219

  
224 220
            if (local || pref == null || (pref != null && pref.isAllowOverride() && override)){
225 221
                String dbSpecific = prefKey(name);
226 222
                return getPreferenceStore().getBoolean(dbSpecific);
......
459 455

  
460 456
        return prefs;
461 457

  
458
    }
459

  
460
	public static void setPreferencesToDB(CdmPreference preference, boolean setDefault){
461
        ICdmRepository controller;
462

  
463

  
464
        try{
465
            if(CdmStore.isActive()){
466
                controller = CdmStore.getCurrentApplicationConfiguration();
467

  
468
                if (setDefault){
469
                    controller.getPreferenceService().remove(preference.getKey());
470
                }else{
471
                    controller.getPreferenceService().set(preference);
472
                }
473
            }
474
        }catch(Exception e){
475
            e.printStackTrace();
476
        }
477

  
478

  
479

  
462 480
    }
463 481

  
464 482
	public static CdmPreference getPreferenceFromDB(PrefKey key){
......
761 779
		getPreferenceStore().setDefault(TAXON_SERVICE_CONFIGURATOR_COMMON_NAMES, true);
762 780

  
763 781
		//Distribution Editor:
764
		getPreferenceStore().setDefault(createPreferenceString(PreferencePredicate.DistributionEditorActivated.getKey()), Boolean.valueOf(PreferencePredicate.DistributionEditorActivated.getDefaultValue().toString()));
782
//		getPreferenceStore().setDefault(createPreferenceString(PreferencePredicate.DistributionEditorActivated.getKey()), Boolean.valueOf(PreferencePredicate.DistributionEditorActivated.getDefaultValue().toString()));
765 783
//		getPreferenceStore().setDefault(createPreferenceString(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), PreferencePredicate.DisplayOfAreasInDistributionEditor.getDefaultValue().toString());
766 784
//		getPreferenceStore().setDefault(createPreferenceString(PreferencePredicate.DisplayOfStatus.getKey()), PreferencePredicate.DisplayOfStatus.getDefaultValue().toString());
767 785

  
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/SpecimenOrObservationPreferences.java
37 37
    private static final String LOCAL_SETTINGS_NOT_ALLOWED = Messages.SpecimenOrObservationPreferences_0;
38 38
    private static final String DESCRIPTION = Messages.SpecimenOrObservationPreferences_1;
39 39

  
40
    protected boolean isShowSpecimenRelatedIssues;
40
    protected Boolean isShowSpecimenRelatedIssues;
41 41
    protected boolean allowOverrideShowSpecimenRelatedIssues;
42 42
    protected boolean overrideShowSpecimenRelatedIssues;
43
    protected boolean isShowCollectingAreaInGeneralSection;
43
    protected Boolean isShowCollectingAreaInGeneralSection;
44 44
    protected boolean allowOverrideShowCollectingAreaInGeneralSection;
45 45
    protected boolean overrideShowCollectionAreaInGeneralSection;
46
    protected boolean isDeterminationOnlyForFieldUnits;
46
    protected Boolean isDeterminationOnlyForFieldUnits;
47 47
    protected boolean allowOverrideDeterminationOnlyForFieldUnits;
48 48
    protected boolean overrideDeterminationOnlyForFieldUnits;
49
    protected boolean isShowTaxonAssociation;
49
    protected Boolean isShowTaxonAssociation;
50 50
    protected boolean allowOverrideShowTaxonAssociation;
51 51
    protected boolean overrideShowTaxonAssociation;
52
    protected boolean isShowLifeForm;
52
    protected Boolean isShowLifeForm;
53 53
    protected boolean allowOverrideShowLifeForm;
54 54
    protected boolean overrideShowLifeForm;
55 55
    Composite composite;
......
92 92
        boolean isEditingAllowed = true;
93 93
        if(!isAdminPreference){
94 94
            CdmPreferenceCache cache = CdmPreferenceCache.instance();
95
            PrefKey key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowSpecimen);
96
            CdmPreference showSpecimenPref = cache.findBestMatching(key);
95

  
97 96
            if (showSpecimenPref != null){
98 97
                if (!showSpecimenPref.isAllowOverride() ){
99
                    Label label = new Label(parent, SWT.NONE);
100
                    label.setText(LOCAL_SETTINGS_NOT_ALLOWED);
98

  
101 99
                    isEditingAllowed = false;
102 100

  
103 101
                }
104 102
            }
105 103
        }
106

  
107
        Label label = new Label(parent, SWT.NONE);
108
        label.setText(DESCRIPTION);
104
        if (isEditingAllowed){
105
            Label label = new Label(parent, SWT.NONE);
106
            label.setText(DESCRIPTION);
107
        }else{
108
            Label label = new Label(parent, SWT.NONE);
109
            label.setText(LOCAL_SETTINGS_NOT_ALLOWED);
110
            this.noDefaultAndApplyButton();
111
            return parent;
112
        }
109 113
        Composite titleComp = createComposite(parent);
110 114
        GridData gridData = createTextGridData();
111 115

  
......
115 119
        showSpecimenButton = createBooleanCombo(titleComp, Messages.GeneralPreference_yes, Messages.GeneralPreference_no, PreferencePredicate.ShowSpecimen, Messages.DatabasePreferncesPage_Show_Specimen, isAdminPreference);
116 120

  
117 121
        showSpecimenButton.addSelectionListener(this);
118
        if (isShowSpecimenRelatedIssues){
119
            showSpecimenButton.select(0);
120
        }else{
121
            showSpecimenButton.select(1);
122
        int index = 0;
123
        for (String itemLabel : showSpecimenButton.getItems()) {
124
            if (isShowSpecimenRelatedIssues == null && itemLabel.equals(Messages.Preference_Use_Default)) {
125
                showSpecimenButton.select(index);
126
                break;
127
            }
128
            if (isShowSpecimenRelatedIssues != null && itemLabel.equals(Messages.GeneralPreference_yes) && isShowSpecimenRelatedIssues){
129
                showSpecimenButton.select(index);
130
                break;
131
            }
132
            if (isShowSpecimenRelatedIssues != null && itemLabel.equals(Messages.GeneralPreference_no) && !isShowSpecimenRelatedIssues){
133
                showSpecimenButton.select(index);
134
                break;
135
            }
136
            index++;
122 137
        }
123

  
138
        showSpecimenButton.setEnabled(isEditingAllowed);
124 139

  
125 140
        if (isAdminPreference){
126 141
            allowOverrideIsShowSpecimenRelatedIssuesButton = createAllowOverrideButton(titleComp);
......
144 159
        showCollectingAreaInGeneralSectionButton = createBooleanCombo(composite, Messages.GeneralPreference_yes, Messages.GeneralPreference_no, PreferencePredicate.ShowCollectingAreasInGeneralSection, Messages.DatabasePreferncesPage_Show_Collecting_Areas_in_general_section, isAdminPreference);
145 160

  
146 161
        showCollectingAreaInGeneralSectionButton.addSelectionListener(this);
147
        if (isShowCollectingAreaInGeneralSection){
148
            showCollectingAreaInGeneralSectionButton.select(0);
149
        }else{
150
            showCollectingAreaInGeneralSectionButton.select(1);
162
        index = 0;
163
        for (String itemLabel : showCollectingAreaInGeneralSectionButton.getItems()) {
164
            if (isShowCollectingAreaInGeneralSection == null && itemLabel.equals(Messages.Preference_Use_Default)) {
165
                showCollectingAreaInGeneralSectionButton.select(index);
166
                break;
167
            }
168
            if (isShowCollectingAreaInGeneralSection != null && itemLabel.equals(Messages.GeneralPreference_yes) && isShowCollectingAreaInGeneralSection){
169
                showCollectingAreaInGeneralSectionButton.select(index);
170
                break;
171
            }
172
            if (isShowCollectingAreaInGeneralSection != null && itemLabel.equals(Messages.GeneralPreference_no) && !isShowCollectingAreaInGeneralSection){
173
                showCollectingAreaInGeneralSectionButton.select(index);
174
                break;
175
            }
176
            index++;
151 177
        }
152 178
        if (isAdminPreference){
153 179
            allowOverrideShowCollectingAreaButton = createAllowOverrideButton(composite);
......
160 186
                }
161 187
            });
162 188
        }
163

  
189
        if (showCollectingAreaInGeneralSection != null && !showCollectingAreaInGeneralSection.isAllowOverride() ){
190
               isEditingAllowed = false;
191
        }
192
        showCollectingAreaInGeneralSectionButton.setEnabled(isEditingAllowed);
164 193
        determinationOnlyForFieldUnitsButton = createBooleanCombo(composite, Messages.GeneralPreference_yes, Messages.GeneralPreference_no, PreferencePredicate.DeterminationOnlyForFieldUnits, Messages.DatabasePreferncesPage_Determination_only_for_field_unnits, isAdminPreference);
165 194

  
166 195

  
167 196
        determinationOnlyForFieldUnitsButton.addSelectionListener(this);
168
        if (isDeterminationOnlyForFieldUnits){
169
            determinationOnlyForFieldUnitsButton.select(0);
170
        }else{
171
            determinationOnlyForFieldUnitsButton.select(1);
197
        index = 0;
198
        for (String itemLabel : determinationOnlyForFieldUnitsButton.getItems()) {
199
            if (isDeterminationOnlyForFieldUnits == null && itemLabel.equals(Messages.Preference_Use_Default)) {
200
                determinationOnlyForFieldUnitsButton.select(index);
201
                break;
202
            }
203
            if (isDeterminationOnlyForFieldUnits != null && itemLabel.equals(Messages.GeneralPreference_yes) && isDeterminationOnlyForFieldUnits){
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff