Project

General

Profile

Download (11.8 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2018 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9
package eu.etaxonomy.taxeditor.preference;
10

    
11
import org.eclipse.swt.SWT;
12
import org.eclipse.swt.events.SelectionAdapter;
13
import org.eclipse.swt.events.SelectionEvent;
14
import org.eclipse.swt.widgets.Button;
15
import org.eclipse.swt.widgets.Composite;
16
import org.eclipse.swt.widgets.Control;
17

    
18
import eu.etaxonomy.cdm.model.metadata.CdmPreference;
19
import eu.etaxonomy.taxeditor.l10n.Messages;
20
import eu.etaxonomy.taxeditor.preference.menu.CdmPreferencePage;
21

    
22
/**
23
 * @author k.luther
24
 * @since 29.05.2018
25
 *
26
 */
27
public class GeneralPreferencePage extends CdmPreferencePage {
28

    
29

    
30
    protected boolean isShowIOMenu;
31
//    protected boolean isShowMediaView;
32
    protected boolean isShowCheckListPerspective;
33
    protected boolean isShowTaxonNodeWizard;
34
    protected boolean isAllowOverrideShowIOMenu;
35
    protected boolean isAllowOverrideShowMediaView;
36
    protected boolean isAllowOverrideShowCheckListPerspective;
37
    protected boolean isAllowOverrideShowTaxonNodeWizard;
38
    protected boolean isOverrideShowIOMenu;
39
    protected boolean isOverrideShowMediaView;
40
    protected boolean isOverrideShowCheckListPerspective;
41
    protected boolean isOverrideShowTaxonNodeWizard;
42

    
43
    /**
44
     * {@inheritDoc}
45
     */
46
    @Override
47
    protected Control createContents(Composite parent) {
48
        getValues();
49
        final Composite composite = createComposite(parent);
50

    
51

    
52
        final Button showIOMenuButton = new Button(composite, SWT.CHECK);
53
        showIOMenuButton.setText(Messages.DatabasePreferncesPage_Show_IOMenu);
54
        showIOMenuButton.setSelection(isShowIOMenu);
55
        showIOMenuButton.addSelectionListener(new SelectionAdapter(){
56
             @Override
57
             public void widgetSelected(SelectionEvent e) {
58
                 isShowIOMenu = showIOMenuButton.getSelection();
59
                 setApply(true);
60
              }
61
         });
62
        Button allowOverrideShowIOMenuButton = createAllowOverrideButton(composite);
63
        if (isAdminPreference){
64
            allowOverrideShowIOMenuButton.setSelection(isAllowOverrideShowIOMenu);
65
            allowOverrideShowIOMenuButton.addSelectionListener(new SelectionAdapter(){
66
                @Override
67
                public void widgetSelected(SelectionEvent e) {
68
                    isAllowOverrideShowIOMenu = allowOverrideShowIOMenuButton.getSelection();
69
                    setApply(true);
70
                }
71
            });
72
        }else{
73
            allowOverrideShowIOMenuButton.setSelection(isOverrideShowIOMenu);
74
            allowOverrideShowIOMenuButton.addSelectionListener(new SelectionAdapter(){
75
                @Override
76
                public void widgetSelected(SelectionEvent e) {
77
                    isOverrideShowIOMenu = allowOverrideShowIOMenuButton.getSelection();
78
                    setApply(true);
79
                }
80
            });
81
            if (!isAllowOverrideShowIOMenu){
82
                showIOMenuButton.setEnabled(false);
83
                allowOverrideShowIOMenuButton.setEnabled(false);
84
            }
85
        }
86

    
87
//        final Button showMediaViewButton = new Button(composite, SWT.CHECK);
88
//        showMediaViewButton.setText(Messages.DatabasePreferncesPage_Show_MediaView);
89
//        showMediaViewButton.setSelection(isShowMediaView);
90
//        showMediaViewButton.addSelectionListener(new SelectionAdapter(){
91
//             @Override
92
//             public void widgetSelected(SelectionEvent e) {
93
//                 isShowMediaView = showIOMenuButton.getSelection();
94
//              }
95
//         });
96
//
97
//        Button allowOverrideShowMediaViewButton = createAllowOverrideButton(composite);
98
//        if (isAdminPreference){
99
//            allowOverrideShowMediaViewButton.setSelection(isAllowOverrideShowMediaView);
100
//            allowOverrideShowMediaViewButton.addSelectionListener(new SelectionAdapter(){
101
//                @Override
102
//                public void widgetSelected(SelectionEvent e) {
103
//                    isAllowOverrideShowMediaView = allowOverrideShowMediaViewButton.getSelection();
104
//                }
105
//            });
106
//        }else{
107
//            allowOverrideShowMediaViewButton.setSelection(isOverrideShowMediaView);
108
//            allowOverrideShowMediaViewButton.addSelectionListener(new SelectionAdapter(){
109
//                @Override
110
//                public void widgetSelected(SelectionEvent e) {
111
//                    isOverrideShowMediaView = allowOverrideShowMediaViewButton.getSelection();
112
//                }
113
//            });
114
//            if (!isAllowOverrideShowMediaView){
115
//                showMediaViewButton.setEnabled(false);
116
//                allowOverrideShowMediaViewButton.setEnabled(false);
117
//            }
118
//        }
119

    
120
        final Button showChecklistPerspectiveButton = new Button(composite, SWT.CHECK);
121
        showChecklistPerspectiveButton.setText(Messages.DatabasePreferncesPage_Show_ChecklistPerspective);
122
        showChecklistPerspectiveButton.setSelection(isShowCheckListPerspective);
123
        showChecklistPerspectiveButton.addSelectionListener(new SelectionAdapter(){
124
             @Override
125
             public void widgetSelected(SelectionEvent e) {
126
                 isShowCheckListPerspective = showChecklistPerspectiveButton.getSelection();
127
                 setApply(true);
128
              }
129
         });
130

    
131
        Button allowOverrideShowChecklistButton = createAllowOverrideButton(composite);
132
        if (isAdminPreference){
133
            allowOverrideShowChecklistButton.setSelection(isAllowOverrideShowCheckListPerspective);
134
            allowOverrideShowChecklistButton.addSelectionListener(new SelectionAdapter(){
135
                @Override
136
                public void widgetSelected(SelectionEvent e) {
137
                    isAllowOverrideShowCheckListPerspective = allowOverrideShowChecklistButton.getSelection();
138
                    setApply(true);
139
                }
140
            });
141
        }else{
142
            allowOverrideShowChecklistButton.setSelection(isOverrideShowCheckListPerspective);
143
            allowOverrideShowChecklistButton.addSelectionListener(new SelectionAdapter(){
144
                @Override
145
                public void widgetSelected(SelectionEvent e) {
146
                    isOverrideShowCheckListPerspective = allowOverrideShowChecklistButton.getSelection();
147
                    setApply(true);
148
                }
149
            });
150
            if (!isAllowOverrideShowCheckListPerspective){
151
                showChecklistPerspectiveButton.setEnabled(false);
152
                allowOverrideShowChecklistButton.setEnabled(false);
153
            }
154
        }
155

    
156
        final Button showTaxonNodeWizardButton = new Button(composite, SWT.CHECK);
157
        showTaxonNodeWizardButton.setText(Messages.DatabasePreferncesPage_Show_TaxonNodeWizard);
158
        showTaxonNodeWizardButton.setSelection(isShowTaxonNodeWizard);
159
        showTaxonNodeWizardButton.addSelectionListener(new SelectionAdapter(){
160
             @Override
161
             public void widgetSelected(SelectionEvent e) {
162
                 isShowTaxonNodeWizard = showTaxonNodeWizardButton.getSelection();
163
                 setApply(true);
164
              }
165
         });
166

    
167
        Button allowOverrideShowTaxonNodeWizardButton = createAllowOverrideButton(composite);
168
        if (isAdminPreference){
169
            allowOverrideShowTaxonNodeWizardButton.setSelection(isAllowOverrideShowTaxonNodeWizard);
170
            allowOverrideShowTaxonNodeWizardButton.addSelectionListener(new SelectionAdapter(){
171
                @Override
172
                public void widgetSelected(SelectionEvent e) {
173
                    isAllowOverrideShowTaxonNodeWizard = allowOverrideShowTaxonNodeWizardButton.getSelection();
174
                    setApply(true);
175
                }
176
            });
177
        }else{
178
            allowOverrideShowTaxonNodeWizardButton.setSelection(isOverrideShowTaxonNodeWizard);
179
            allowOverrideShowTaxonNodeWizardButton.addSelectionListener(new SelectionAdapter(){
180
                @Override
181
                public void widgetSelected(SelectionEvent e) {
182
                    isOverrideShowTaxonNodeWizard = allowOverrideShowTaxonNodeWizardButton.getSelection();
183
                    setApply(true);
184
                }
185
            });
186
            if (!isAllowOverrideShowTaxonNodeWizard){
187
                showTaxonNodeWizardButton.setEnabled(false);
188
                allowOverrideShowTaxonNodeWizardButton.setEnabled(false);
189
            }
190
        }
191

    
192

    
193
        return composite;
194
    }
195

    
196

    
197

    
198
    @Override
199
    public boolean performOk() {
200
        if (isAllowOverrideShowCheckListPerspective){
201
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(EditorPreferencePredicate.ShowChecklistPerspective.getKey()), isOverrideShowCheckListPerspective);
202
            PreferencesUtil.setBooleanValue(EditorPreferencePredicate.ShowChecklistPerspective.getKey(), isShowCheckListPerspective);
203
        }
204
        if (isAllowOverrideShowIOMenu){
205
            PreferencesUtil.setBooleanValue(EditorPreferencePredicate.ShowImportExportMenu.getKey(), isShowIOMenu);
206
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(EditorPreferencePredicate.ShowImportExportMenu.getKey()), isOverrideShowIOMenu);
207
        }
208
//        if (isAllowOverrideShowMediaView){
209
//            PreferencesUtil.setBooleanValue(EditorPreferencePredicate.ShowMediaView.getKey(), isShowMediaView);
210
//        }
211
        if (isAllowOverrideShowTaxonNodeWizard){
212
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(EditorPreferencePredicate.ShowTaxonNodeWizard.getKey()), isOverrideShowTaxonNodeWizard);
213
            PreferencesUtil.setBooleanValue(EditorPreferencePredicate.ShowTaxonNodeWizard.getKey(), isShowTaxonNodeWizard);
214
        }
215

    
216
       return true;
217
   }
218
    @Override
219
    protected void getValues(){
220
        isAdminPreference = false;
221

    
222
        CdmPreferenceCache cache = CdmPreferenceCache.instance();
223
        isShowIOMenu = PreferencesUtil.getBooleanValue(EditorPreferencePredicate.ShowImportExportMenu.getKey());
224
        isOverrideShowIOMenu = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(EditorPreferencePredicate.ShowImportExportMenu.getKey()));
225
        CdmPreference pref = cache.get(EditorPreferencePredicate.ShowImportExportMenu.getKey());
226
        if (pref != null){
227
            isAllowOverrideShowIOMenu = pref.isAllowOverride();
228
        }else{
229
            isAllowOverrideShowIOMenu = true;
230
        }
231
//        isShowMediaView = PreferencesUtil.getBooleanValue(EditorPreferencePredicate.ShowMediaView.getKey());
232
//        pref = cache.get(EditorPreferencePredicate.ShowMediaView.getKey());
233
//        if (pref != null){
234
//            isAllowOverrideShowMediaView = pref.isAllowOverride();
235
//        }else{
236
//            isAllowOverrideShowMediaView = true;
237
//        }
238
        isShowCheckListPerspective = PreferencesUtil.getBooleanValue(EditorPreferencePredicate.ShowChecklistPerspective.getKey());
239
        isOverrideShowCheckListPerspective = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(EditorPreferencePredicate.ShowChecklistPerspective.getKey()));
240
        pref = cache.get(EditorPreferencePredicate.ShowChecklistPerspective.getKey());
241
        if (pref != null){
242
            isAllowOverrideShowCheckListPerspective = pref.isAllowOverride();
243
        }else{
244
            isAllowOverrideShowCheckListPerspective = true;
245
        }
246
        isShowTaxonNodeWizard = PreferencesUtil.getBooleanValue(EditorPreferencePredicate.ShowTaxonNodeWizard.getKey());
247
        isOverrideShowTaxonNodeWizard = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(EditorPreferencePredicate.ShowTaxonNodeWizard.getKey()));
248
        pref = cache.get(EditorPreferencePredicate.ShowTaxonNodeWizard.getKey());
249
        if (pref != null){
250
            isAllowOverrideShowTaxonNodeWizard = pref.isAllowOverride();
251
        }else{
252
            isAllowOverrideShowTaxonNodeWizard = true;
253
        }
254
    }
255

    
256
}
(8-8/30)