Project

General

Profile

Download (12.3 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
    protected Button showIOMenuButton;
47
    protected Button allowOverrideShowIOMenuButton;
48
    protected Button showChecklistPerspectiveButton;
49
    protected Button allowOverrideShowChecklistButton;
50
    protected Button showTaxonNodeWizardButton;
51
    protected Button allowOverrideShowTaxonNodeWizardButton;
52
    /**
53
     * {@inheritDoc}
54
     */
55
    @Override
56
    protected Control createContents(Composite parent) {
57
        getValues();
58
        final Composite composite = createComposite(parent);
59

    
60
        GridData gridData = createTextGridData();
61

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

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

    
133
        showChecklistPerspectiveButton = new Button(composite, SWT.CHECK);
134
        showChecklistPerspectiveButton.setText(Messages.DatabasePreferncesPage_Show_ChecklistPerspective);
135
        showChecklistPerspectiveButton.setSelection(isShowCheckListPerspective);
136
        showChecklistPerspectiveButton.addSelectionListener(new SelectionAdapter(){
137
             @Override
138
             public void widgetSelected(SelectionEvent e) {
139
                 isShowCheckListPerspective = showChecklistPerspectiveButton.getSelection();
140
                 setApply(true);
141
              }
142
         });
143

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

    
169
        showTaxonNodeWizardButton = new Button(composite, SWT.CHECK);
170
        showTaxonNodeWizardButton.setText(Messages.DatabasePreferncesPage_Show_TaxonNodeWizard);
171
        showTaxonNodeWizardButton.setSelection(isShowTaxonNodeWizard);
172
        showTaxonNodeWizardButton.addSelectionListener(new SelectionAdapter(){
173
             @Override
174
             public void widgetSelected(SelectionEvent e) {
175
                 isShowTaxonNodeWizard = showTaxonNodeWizardButton.getSelection();
176
                 setApply(true);
177
              }
178
         });
179

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

    
205

    
206
        return composite;
207
    }
208

    
209

    
210

    
211
    @Override
212
    public boolean performOk() {
213
        if (isAllowOverrideShowCheckListPerspective){
214
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowChecklistPerspective.getKey()), isOverrideShowCheckListPerspective);
215
            PreferencesUtil.setBooleanValue(PreferencePredicate.ShowChecklistPerspective.getKey(), isShowCheckListPerspective);
216
        }
217
        if (isAllowOverrideShowIOMenu){
218
            PreferencesUtil.setBooleanValue(PreferencePredicate.ShowImportExportMenu.getKey(), isShowIOMenu);
219
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowImportExportMenu.getKey()), isOverrideShowIOMenu);
220
        }
221
//        if (isAllowOverrideShowMediaView){
222
//            PreferencesUtil.setBooleanValue(PreferencePredicate.ShowMediaView.getKey(), isShowMediaView);
223
//        }
224
        if (isAllowOverrideShowTaxonNodeWizard){
225
            PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowTaxonNodeWizard.getKey()), isOverrideShowTaxonNodeWizard);
226
            PreferencesUtil.setBooleanValue(PreferencePredicate.ShowTaxonNodeWizard.getKey(), isShowTaxonNodeWizard);
227
        }
228

    
229
       return true;
230
   }
231
    @Override
232
    protected void getValues(){
233
        isAdminPreference = false;
234

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

    
269
}
(12-12/41)