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.taxeditor.l10n.Messages;
22
import eu.etaxonomy.taxeditor.preference.menu.CdmPreferencePage;
23

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

    
31

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

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

    
53
        GridData gridData = createTextGridData();
54

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

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

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

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

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

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

    
198

    
199
        return composite;
200
    }
201

    
202

    
203

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

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

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

    
262
}
(12-12/40)