Project

General

Profile

Download (12.1 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.layout.GridData;
15
import org.eclipse.swt.widgets.Button;
16
import org.eclipse.swt.widgets.Composite;
17
import org.eclipse.swt.widgets.Control;
18
import org.eclipse.swt.widgets.Label;
19

    
20
import eu.etaxonomy.cdm.model.metadata.CdmPreference;
21
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
22
import eu.etaxonomy.taxeditor.l10n.Messages;
23
import eu.etaxonomy.taxeditor.preference.menu.CdmPreferencePage;
24

    
25
/**
26
 * @author k.luther
27
 * @since 29.05.2018
28
 *
29
 */
30
public class GeneralPreferencePage extends CdmPreferencePage {
31

    
32

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

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

    
54
        GridData gridData = createTextGridData();
55

    
56
        Label separator= new Label(composite, SWT.HORIZONTAL | SWT.SEPARATOR);
57
        separator.setLayoutData(gridData);
58
        separator.setVisible(false);
59
        final Button showIOMenuButton = new Button(composite, SWT.CHECK);
60
        showIOMenuButton.setText(Messages.DatabasePreferncesPage_Show_IOMenu);
61
        showIOMenuButton.setSelection(isShowIOMenu);
62
        showIOMenuButton.addSelectionListener(new SelectionAdapter(){
63
             @Override
64
             public void widgetSelected(SelectionEvent e) {
65
                 isShowIOMenu = showIOMenuButton.getSelection();
66
                 setApply(true);
67
              }
68
         });
69
        Button allowOverrideShowIOMenuButton = createAllowOverrideButton(composite);
70
        if (isAdminPreference){
71
            allowOverrideShowIOMenuButton.setSelection(isAllowOverrideShowIOMenu);
72
            allowOverrideShowIOMenuButton.addSelectionListener(new SelectionAdapter(){
73
                @Override
74
                public void widgetSelected(SelectionEvent e) {
75
                    isAllowOverrideShowIOMenu = allowOverrideShowIOMenuButton.getSelection();
76
                    setApply(true);
77
                }
78
            });
79
        }else{
80
            allowOverrideShowIOMenuButton.setSelection(isOverrideShowIOMenu);
81
            allowOverrideShowIOMenuButton.addSelectionListener(new SelectionAdapter(){
82
                @Override
83
                public void widgetSelected(SelectionEvent e) {
84
                    isOverrideShowIOMenu = allowOverrideShowIOMenuButton.getSelection();
85
                    setApply(true);
86
                }
87
            });
88
            if (!isAllowOverrideShowIOMenu){
89
                showIOMenuButton.setEnabled(false);
90
                allowOverrideShowIOMenuButton.setEnabled(false);
91
            }
92
        }
93

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

    
127
        final Button showChecklistPerspectiveButton = new Button(composite, SWT.CHECK);
128
        showChecklistPerspectiveButton.setText(Messages.DatabasePreferncesPage_Show_ChecklistPerspective);
129
        showChecklistPerspectiveButton.setSelection(isShowCheckListPerspective);
130
        showChecklistPerspectiveButton.addSelectionListener(new SelectionAdapter(){
131
             @Override
132
             public void widgetSelected(SelectionEvent e) {
133
                 isShowCheckListPerspective = showChecklistPerspectiveButton.getSelection();
134
                 setApply(true);
135
              }
136
         });
137

    
138
        Button allowOverrideShowChecklistButton = createAllowOverrideButton(composite);
139
        if (isAdminPreference){
140
            allowOverrideShowChecklistButton.setSelection(isAllowOverrideShowCheckListPerspective);
141
            allowOverrideShowChecklistButton.addSelectionListener(new SelectionAdapter(){
142
                @Override
143
                public void widgetSelected(SelectionEvent e) {
144
                    isAllowOverrideShowCheckListPerspective = allowOverrideShowChecklistButton.getSelection();
145
                    setApply(true);
146
                }
147
            });
148
        }else{
149
            allowOverrideShowChecklistButton.setSelection(isOverrideShowCheckListPerspective);
150
            allowOverrideShowChecklistButton.addSelectionListener(new SelectionAdapter(){
151
                @Override
152
                public void widgetSelected(SelectionEvent e) {
153
                    isOverrideShowCheckListPerspective = allowOverrideShowChecklistButton.getSelection();
154
                    setApply(true);
155
                }
156
            });
157
            if (!isAllowOverrideShowCheckListPerspective){
158
                showChecklistPerspectiveButton.setEnabled(false);
159
                allowOverrideShowChecklistButton.setEnabled(false);
160
            }
161
        }
162

    
163
        final Button showTaxonNodeWizardButton = new Button(composite, SWT.CHECK);
164
        showTaxonNodeWizardButton.setText(Messages.DatabasePreferncesPage_Show_TaxonNodeWizard);
165
        showTaxonNodeWizardButton.setSelection(isShowTaxonNodeWizard);
166
        showTaxonNodeWizardButton.addSelectionListener(new SelectionAdapter(){
167
             @Override
168
             public void widgetSelected(SelectionEvent e) {
169
                 isShowTaxonNodeWizard = showTaxonNodeWizardButton.getSelection();
170
                 setApply(true);
171
              }
172
         });
173

    
174
        Button allowOverrideShowTaxonNodeWizardButton = createAllowOverrideButton(composite);
175
        if (isAdminPreference){
176
            allowOverrideShowTaxonNodeWizardButton.setSelection(isAllowOverrideShowTaxonNodeWizard);
177
            allowOverrideShowTaxonNodeWizardButton.addSelectionListener(new SelectionAdapter(){
178
                @Override
179
                public void widgetSelected(SelectionEvent e) {
180
                    isAllowOverrideShowTaxonNodeWizard = allowOverrideShowTaxonNodeWizardButton.getSelection();
181
                    setApply(true);
182
                }
183
            });
184
        }else{
185
            allowOverrideShowTaxonNodeWizardButton.setSelection(isOverrideShowTaxonNodeWizard);
186
            allowOverrideShowTaxonNodeWizardButton.addSelectionListener(new SelectionAdapter(){
187
                @Override
188
                public void widgetSelected(SelectionEvent e) {
189
                    isOverrideShowTaxonNodeWizard = allowOverrideShowTaxonNodeWizardButton.getSelection();
190
                    setApply(true);
191
                }
192
            });
193
            if (!isAllowOverrideShowTaxonNodeWizard){
194
                showTaxonNodeWizardButton.setEnabled(false);
195
                allowOverrideShowTaxonNodeWizardButton.setEnabled(false);
196
            }
197
        }
198

    
199

    
200
        return composite;
201
    }
202

    
203

    
204

    
205
    @Override
206
    public boolean performOk() {
207
        if (isAllowOverrideShowCheckListPerspective){
208
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowChecklistPerspective.getKey()), isOverrideShowCheckListPerspective);
209
            PreferencesUtil.setBooleanValue(PreferencePredicate.ShowChecklistPerspective.getKey(), isShowCheckListPerspective);
210
        }
211
        if (isAllowOverrideShowIOMenu){
212
            PreferencesUtil.setBooleanValue(PreferencePredicate.ShowImportExportMenu.getKey(), isShowIOMenu);
213
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowImportExportMenu.getKey()), isOverrideShowIOMenu);
214
        }
215
//        if (isAllowOverrideShowMediaView){
216
//            PreferencesUtil.setBooleanValue(PreferencePredicate.ShowMediaView.getKey(), isShowMediaView);
217
//        }
218
        if (isAllowOverrideShowTaxonNodeWizard){
219
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowTaxonNodeWizard.getKey()), isOverrideShowTaxonNodeWizard);
220
            PreferencesUtil.setBooleanValue(PreferencePredicate.ShowTaxonNodeWizard.getKey(), isShowTaxonNodeWizard);
221
        }
222

    
223
       return true;
224
   }
225
    @Override
226
    protected void getValues(){
227
        isAdminPreference = false;
228

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

    
263
}
(12-12/41)