ref #7849: add correct handling for restoreDefaults in DB preference pages
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / preference / ChecklistEditorGeneralPreference.java
1 /**
2 * Copyright (C) 2014 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.custom.CLabel;
13 import org.eclipse.swt.events.SelectionAdapter;
14 import org.eclipse.swt.events.SelectionEvent;
15 import org.eclipse.swt.events.SelectionListener;
16 import org.eclipse.swt.layout.GridData;
17 import org.eclipse.swt.layout.GridLayout;
18 import org.eclipse.swt.widgets.Button;
19 import org.eclipse.swt.widgets.Combo;
20 import org.eclipse.swt.widgets.Composite;
21 import org.eclipse.swt.widgets.Control;
22 import org.eclipse.swt.widgets.Event;
23 import org.eclipse.swt.widgets.Label;
24 import org.eclipse.swt.widgets.Listener;
25
26 import eu.etaxonomy.cdm.model.metadata.CdmPreference;
27 import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
28 import eu.etaxonomy.cdm.model.metadata.TermDisplayEnum;
29 import eu.etaxonomy.taxeditor.l10n.Messages;
30 import eu.etaxonomy.taxeditor.preference.menu.CdmPreferencePage;
31 import eu.etaxonomy.taxeditor.ui.element.CommandHandlerButton;
32
33 /**
34 * @author a.oppermann
35 * @date 21.07.2014
36 *
37 */
38 public class ChecklistEditorGeneralPreference extends CdmPreferencePage implements SelectionListener {
39
40 protected boolean isEditorActivated;
41 protected boolean allowOverrideActivated;
42 protected boolean overrideActivated;
43 boolean isUseLocal;
44 protected boolean isShowRank;
45 protected String orderAreas;
46 protected String displayStatus;
47 protected String displayArea;
48 protected boolean ownDescriptionForDistributionEditor;
49 protected boolean allowOverrideOwnDescriptionForDistributionEditor;
50 protected boolean overrideOwnDescriptionForDistributionEditor;
51 protected boolean allowOverrideAreaVoc;
52 protected boolean overrideAreaVoc;
53 protected boolean allowOverrideRank;
54 protected boolean overrideRank;
55 protected boolean allowOverrideOrderAreas;
56 protected boolean overrideOrderAreas;
57 protected boolean allowOverrideAreaDisplay;
58 protected boolean overrideAreaDisplay;
59 protected boolean allowOverrideStatusDisplay;
60 protected boolean overrideStatusDisplay;
61
62 protected boolean allowOverrideStatus;
63 protected Combo areaOrderSelectionCombo;
64 protected Button allowOverrideOrderAreasButton;
65 protected Combo statusDisplaySelectionCombo;
66 protected Button allowOverrideStatusDisplayButton;
67 protected Combo areaDisplaySelectionCombo;
68 protected Button allowOverrideAreaDisplayButton;
69 protected String commandHandlerString;
70 protected String commandHandlerStringStatus;
71
72
73
74 protected CdmPreference distributionEditorPref;
75 Composite child ;
76 protected boolean isAllowOverride;
77
78 protected Button activateCheckButton;
79 protected Button allowOverrideActivatedButton;
80
81 protected Button activateRankButton;
82 protected Button allowOverrideRankButton;
83
84 @Override
85 protected Control createContents(Composite parent) {
86 getValues();
87 Composite composite = new Composite(parent, SWT.NULL);
88 composite.setLayout(new GridLayout());
89 if(!isAdminPreference && !isEditorActivated && !isAllowOverride){
90 Label label = new Label(composite, SWT.NONE);
91 label.setText("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.");
92
93 }else{
94 Composite activateComp = createComposite(composite);
95 Label separator= new Label(activateComp, SWT.HORIZONTAL | SWT.SEPARATOR);
96 GridData sepGrid = createTextGridData();
97 separator.setLayoutData(sepGrid);
98 separator.setVisible(false);
99 activateCheckButton = new Button(activateComp, SWT.CHECK);
100 activateCheckButton.setText(Messages.ChecklistEditorGeneralPreference_enable);
101 activateCheckButton.setSelection(isEditorActivated);
102 activateCheckButton.addSelectionListener(new SelectionAdapter(){
103 @Override
104 public void widgetSelected(SelectionEvent e) {
105 setApply(true);
106 isEditorActivated = activateCheckButton.getSelection();
107 if(!isAdminPreference){
108 overrideActivated = true;
109 child.setEnabled(isEditorActivated);
110 PreferencesUtil.recursiveSetEnabled(child, isEditorActivated);
111 }
112
113
114
115
116 }
117 });
118 allowOverrideActivatedButton = createAllowOverrideButton(activateComp);
119 if (isAdminPreference){
120 allowOverrideActivatedButton.setSelection(allowOverrideActivated);
121 allowOverrideActivatedButton.addSelectionListener(new SelectionAdapter(){
122 @Override
123 public void widgetSelected(SelectionEvent e) {
124 setApply(true);
125 allowOverrideActivated = allowOverrideActivatedButton.getSelection();
126 }
127 });
128 }else{
129 allowOverrideActivatedButton.setSelection(overrideActivated);
130 allowOverrideActivatedButton.addSelectionListener(new SelectionAdapter(){
131 @Override
132 public void widgetSelected(SelectionEvent e) {
133 setApply(true);
134 overrideActivated = allowOverrideActivatedButton.getSelection();
135 }
136 });
137 }
138
139
140 child = createComposite(composite);
141
142 if(!isAdminPreference){
143 child.setEnabled(isEditorActivated);
144 }
145 separator= new Label(child, SWT.HORIZONTAL | SWT.SEPARATOR);
146 sepGrid = createTextGridData();
147
148 GridData textGrid = createTextGridData();
149 textGrid.verticalSpan = 2;
150 separator.setLayoutData(sepGrid);
151
152
153 activateRankButton = new Button(child, SWT.CHECK);
154 activateRankButton.setText(Messages.ChecklistEditorGeneralPreference_show_rank);
155 activateRankButton.setSelection(isShowRank);
156 activateRankButton.addSelectionListener(new SelectionAdapter(){
157 @Override
158 public void widgetSelected(SelectionEvent e) {
159 setApply(true);
160 isShowRank = activateRankButton.getSelection();
161 }
162 });
163 allowOverrideRankButton = createAllowOverrideButton(child);
164 if (isAdminPreference){
165 allowOverrideRankButton.setSelection(allowOverrideRank);
166 allowOverrideRankButton.addSelectionListener(new SelectionAdapter(){
167 @Override
168 public void widgetSelected(SelectionEvent e) {
169 setApply(true);
170 allowOverrideRank = allowOverrideRankButton.getSelection();
171 }
172 });
173 }else{
174 allowOverrideRankButton.setSelection(overrideRank);
175 allowOverrideRankButton.addSelectionListener(new SelectionAdapter(){
176 @Override
177 public void widgetSelected(SelectionEvent e) {
178 setApply(true);
179 overrideRank = !overrideRank;
180 }
181 });
182
183 }
184
185 final CLabel areaOrderLabel = new CLabel(child, SWT.NULL);
186 areaOrderLabel.setText(Messages.ChecklistEditorGeneralPreference_Configure_area_order);
187 areaOrderLabel.setLayoutData(textGrid);
188
189
190 GridData gridData = new GridData();
191 gridData = new GridData(GridData.BEGINNING, GridData.CENTER, true, false);
192 areaOrderSelectionCombo = new Combo(child, SWT.BORDER| SWT.READ_ONLY);
193 areaOrderSelectionCombo.setLayoutData(gridData);
194
195 for(TermOrder display: TermOrder.values()){
196 areaOrderSelectionCombo.add(display.getLabel());
197 }
198 int index = 0;
199 if (PreferencesUtil.getStringValue(PreferencePredicate.DistributionEditorActivated.getKey()) != null){
200 TermOrder areaOrder;
201 try{
202 if (orderAreas != null){
203 areaOrder = TermOrder.valueOf(orderAreas);
204 }else{
205 areaOrder = TermOrder.IdInVoc;
206 }
207 }catch(IllegalArgumentException e){
208 areaOrder = TermOrder.IdInVoc;
209 }
210 for (String itemLabel : areaOrderSelectionCombo.getItems()){
211 if (itemLabel.equalsIgnoreCase(areaOrder.getLabel())){
212 areaOrderSelectionCombo.select(index);
213 break;
214 }
215 index++;
216 }
217 }
218 areaOrderSelectionCombo.addSelectionListener(this);
219
220
221
222 // final Button sortNamedAreaByVocabularyOrder = new Button(child, SWT.CHECK);
223 // sortNamedAreaByVocabularyOrder.setText(Messages.ChecklistEditorGeneralPreference_sort_areas);
224 // sortNamedAreaByVocabularyOrder.setSelection(isSortByVocabularyOrder);
225 // sortNamedAreaByVocabularyOrder.addSelectionListener(new SelectionAdapter(){
226 // @Override
227 // public void widgetSelected(SelectionEvent e) {
228 // setApply(true);
229 // isSortByVocabularyOrder = sortNamedAreaByVocabularyOrder.getSelection();
230 // }
231 // });
232 allowOverrideOrderAreasButton = createAllowOverrideButton(child);
233 if (isAdminPreference){
234 allowOverrideOrderAreasButton.setSelection(allowOverrideOrderAreas);
235 allowOverrideOrderAreasButton.addSelectionListener(new SelectionAdapter(){
236 @Override
237 public void widgetSelected(SelectionEvent e) {
238 setApply(true);
239 allowOverrideOrderAreas = allowOverrideOrderAreasButton.getSelection();
240 }
241 });
242 }else{
243 allowOverrideOrderAreasButton.setSelection(overrideOrderAreas);
244 allowOverrideOrderAreasButton.addSelectionListener(new SelectionAdapter(){
245 @Override
246 public void widgetSelected(SelectionEvent e) {
247 setApply(true);
248 overrideOrderAreas = allowOverrideOrderAreasButton.getSelection();
249 }
250 });
251
252 }
253
254 // final Button ownDescription = new Button(child, SWT.CHECK);
255 // ownDescription.setText(Messages.ChecklistEditorGeneralPreference_own_Description);
256 // ownDescription.setToolTipText(Messages.ChecklistEditorGeneralPreference_own_DescriptionToolTip);
257 // ownDescription.setSelection(ownDescriptionForDistributionEditor);
258 // ownDescription.addSelectionListener(new SelectionAdapter(){
259 // @Override
260 // public void widgetSelected(SelectionEvent e) {
261 // setApply(true);
262 // ownDescriptionForDistributionEditor = ownDescription.getSelection();
263 // }
264 // });
265 // Button allowOverrideDescription = createAllowOverrideButton(child);
266 // if (isAdminPreference){
267 // allowOverrideDescription.setSelection(allowOverrideOwnDescriptionForDistributionEditor);
268 // allowOverrideDescription.addSelectionListener(new SelectionAdapter(){
269 // @Override
270 // public void widgetSelected(SelectionEvent e) {
271 // setApply(true);
272 // allowOverrideOwnDescriptionForDistributionEditor = allowOverrideDescription.getSelection();
273 // }
274 // });
275 // }else{
276 // allowOverrideDescription.setSelection(overrideOwnDescriptionForDistributionEditor);
277 // allowOverrideDescription.addSelectionListener(new SelectionAdapter(){
278 // @Override
279 // public void widgetSelected(SelectionEvent e) {
280 // setApply(true);
281 // overrideOwnDescriptionForDistributionEditor = allowOverrideDescription.getSelection();
282 // }
283 // });
284 // if (!allowOverrideOwnDescriptionForDistributionEditor){
285 // ownDescription.setEnabled(false);
286 // allowOverrideDescription.setEnabled(false);
287 // }
288 // }
289
290
291 separator= new Label(child, SWT.HORIZONTAL | SWT.SEPARATOR);
292 separator.setLayoutData(sepGrid);
293
294 //
295
296 final CLabel description = new CLabel(child, SWT.NULL);
297 description.setText(Messages.ChecklistEditorGeneralPreference_Configure_display_of_Areas);
298 description.setLayoutData(textGrid);
299
300
301 //gridData.horizontalIndent = 5;
302
303
304 areaDisplaySelectionCombo = new Combo(child, SWT.BORDER| SWT.READ_ONLY);
305 areaDisplaySelectionCombo.setLayoutData(gridData);
306
307 for(TermDisplayEnum display: TermDisplayEnum.values()){
308 areaDisplaySelectionCombo.add(display.getLabel());
309 }
310 index = 0;
311 if (PreferencesUtil.getStringValue(PreferencePredicate.DistributionEditorActivated.getKey()) != null){
312 TermDisplayEnum areaDisplay;
313 try{
314 if (displayArea != null){
315 areaDisplay = TermDisplayEnum.byKey(displayArea);
316 }else{
317 areaDisplay = TermDisplayEnum.Title;
318 }
319 }catch(IllegalArgumentException e){
320 areaDisplay = TermDisplayEnum.Title;
321 }
322
323 for (String itemLabel : areaDisplaySelectionCombo.getItems()){
324 if (itemLabel.equalsIgnoreCase(areaDisplay.getLabel())){
325 areaDisplaySelectionCombo.select(index);
326 break;
327 }
328 index++;
329 }
330 }
331 areaDisplaySelectionCombo.addSelectionListener(this);
332 allowOverrideAreaDisplayButton = createAllowOverrideButton(child);
333 if (isAdminPreference){
334 allowOverrideAreaDisplayButton.setSelection(allowOverrideAreaDisplay);
335 allowOverrideAreaDisplayButton.addSelectionListener(new SelectionAdapter(){
336 @Override
337 public void widgetSelected(SelectionEvent e) {
338 setApply(true);
339 allowOverrideAreaDisplay = allowOverrideAreaDisplayButton.getSelection();
340 }
341 });
342 }else{
343 allowOverrideAreaDisplayButton.setSelection(overrideAreaDisplay);
344 allowOverrideAreaDisplayButton.addSelectionListener(new SelectionAdapter(){
345 @Override
346 public void widgetSelected(SelectionEvent e) {
347 setApply(true);
348 overrideAreaDisplay = allowOverrideAreaDisplayButton.getSelection();
349 }
350 });
351 if (!allowOverrideAreaDisplay){
352 areaDisplaySelectionCombo.setEnabled(false);
353 allowOverrideAreaDisplayButton.setEnabled(false);
354 }
355 }
356
357 final CLabel descriptionStatus = new CLabel(child, SWT.NULL);
358 descriptionStatus.setText(Messages.ChecklistEditorGeneralPreference_Configure_display_of_Status);
359 descriptionStatus.setLayoutData(textGrid);
360
361
362
363 statusDisplaySelectionCombo = new Combo(child, SWT.BORDER| SWT.READ_ONLY);
364 statusDisplaySelectionCombo.setLayoutData(gridData);
365
366 for(TermDisplayEnum display: TermDisplayEnum.values()){
367 statusDisplaySelectionCombo.add(display.getLabel());
368 }
369 index = 0;
370 if (displayStatus != null){
371 TermDisplayEnum statusDisplay = TermDisplayEnum.byKey(displayStatus);
372 for (String itemLabel : statusDisplaySelectionCombo.getItems()){
373 if (itemLabel.equalsIgnoreCase(statusDisplay.getLabel())){
374 statusDisplaySelectionCombo.select(index);
375 break;
376 }
377 index++;
378 }
379 }
380
381 statusDisplaySelectionCombo.addSelectionListener(this);
382 allowOverrideStatusDisplayButton = createAllowOverrideButton(child);
383 if (isAdminPreference){
384 allowOverrideStatusDisplayButton.setSelection(allowOverrideStatusDisplay);
385 allowOverrideStatusDisplayButton.addSelectionListener(new SelectionAdapter(){
386 @Override
387 public void widgetSelected(SelectionEvent e) {
388 setApply(true);
389 allowOverrideStatusDisplay = allowOverrideStatusDisplayButton.getSelection();
390 }
391 });
392 }else{
393 allowOverrideStatusDisplayButton.setSelection(overrideStatusDisplay);
394 allowOverrideStatusDisplayButton.addSelectionListener(new SelectionAdapter(){
395 @Override
396 public void widgetSelected(SelectionEvent e) {
397 setApply(true);
398 overrideStatusDisplay = allowOverrideStatusDisplayButton.getSelection();
399 }
400 });
401 if (!allowOverrideStatusDisplay){
402 statusDisplaySelectionCombo.setEnabled(false);
403 allowOverrideStatusDisplayButton.setEnabled(false);
404 }
405 }
406
407
408 final CLabel labelStatus = new CLabel(child, SWT.NULL);
409 labelStatus.setText(Messages.DistributionAdminPreferences_SELECT_STATUS);
410 labelStatus.setLayoutData(textGrid);
411
412 final CommandHandlerButton button_openStatusWizard = new CommandHandlerButton(child, SWT.PUSH,
413 commandHandlerStringStatus);
414
415 button_openStatusWizard.setText(Messages.Distribution_status_selection);
416 button_openStatusWizard.addListener(SWT.Selection, new Listener() {
417 @Override
418 public void handleEvent(Event e) {
419 switch (e.type) {
420 case SWT.Selection:
421 setApply(true);
422 break;
423 }
424 }
425 });
426
427
428 final CLabel label = new CLabel(child, SWT.NULL);
429 label.setText(Messages.ChecklistEditorGeneralPreference_open_wizard);
430 label.setLayoutData(textGrid);
431
432 final CommandHandlerButton button_openSelectAreas = new CommandHandlerButton(child, SWT.PUSH,
433 commandHandlerString);
434 button_openSelectAreas.setText(Messages.ChecklistEditorGeneralPreference_open_distribution_selection);
435
436
437
438
439 // if(isEditorActivated){
440 // child.setEnabled(true);
441 // }else{
442 // child.setEnabled(false);
443 // }
444 if (!isAdminPreference){
445 PreferencesUtil.recursiveSetEnabled(child, isEditorActivated);
446 }
447 if (!isAdminPreference){
448 if (!allowOverrideAreaVoc){
449 button_openSelectAreas.setButtonEnabled(false);
450 }
451 if (!allowOverrideStatus){
452 button_openStatusWizard.setButtonEnabled(false);
453 }
454 if (!allowOverrideRank){
455 activateRankButton.setEnabled(false);
456 allowOverrideRankButton.setEnabled(false);
457 }
458 if (!allowOverrideOrderAreas){
459 areaOrderSelectionCombo.setEnabled(false);
460 allowOverrideOrderAreasButton.setEnabled(false);
461 }
462 if (!allowOverrideAreaDisplay){
463
464 allowOverrideAreaDisplayButton.setEnabled(false);
465 }
466 if (!allowOverrideStatusDisplay){
467
468 allowOverrideStatusDisplayButton.setEnabled(false);
469 }
470 }
471 }
472
473
474 setValid(true);
475 return composite;
476 }
477
478
479
480
481
482
483
484
485
486 @Override
487 public boolean performOk() {
488 if (isAllowOverride){
489
490 PreferencesUtil.setBooleanValue(PreferencePredicate.DistributionEditorActivated.getKey(), isEditorActivated);
491 PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()), overrideActivated);
492 PreferencesUtil.setSortNamedAreasInDistributionEditor(orderAreas);
493 PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()), overrideOrderAreas);
494 PreferencesUtil.setShowRankInChecklistEditor(isShowRank);
495 PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()), overrideRank);
496 PreferencesUtil.setDisplayStatusInChecklistEditor(displayStatus);
497 PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()), overrideStatusDisplay);
498 PreferencesUtil.setAreaDisplayInChecklistEditor(displayArea);
499 PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), overrideAreaDisplay);
500 PreferencesUtil.setOwnDescriptionForChecklistEditor(ownDescriptionForDistributionEditor);
501 PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.OwnDescriptionForDistributionEditor.getKey()), overrideOwnDescriptionForDistributionEditor);
502
503
504
505
506 }
507 return true;
508 }
509
510 /**
511 * {@inheritDoc}
512 */
513 @Override
514 public void widgetSelected(SelectionEvent e) {
515 setApply(true);
516 if (e.getSource().equals(statusDisplaySelectionCombo)){
517 String text = statusDisplaySelectionCombo.getText();
518 for (TermDisplayEnum display: TermDisplayEnum.values()){
519 if (display.getLabel().equals(text)){
520 displayStatus = display.getKey();
521 break;
522 }
523 }
524 }
525 if (e.getSource().equals(areaDisplaySelectionCombo)){
526 String text = areaDisplaySelectionCombo.getText();
527 for (TermDisplayEnum display: TermDisplayEnum.values()){
528 if (display.getLabel().equals(text)){
529 displayArea = display.getKey();
530 break;
531 }
532 }
533 }
534 if (e.getSource().equals(areaOrderSelectionCombo)){
535 String text = areaOrderSelectionCombo.getText();
536 for (TermOrder display: TermOrder.values()){
537 if (display.getLabel().equals(text)){
538 orderAreas = display.getKey();
539 break;
540 }
541 }
542 }
543
544 }
545
546 /**
547 * {@inheritDoc}
548 */
549 @Override
550 public void widgetDefaultSelected(SelectionEvent e) {
551 // TODO Auto-generated method stub
552
553 }
554
555
556 /**
557 * {@inheritDoc}
558 */
559 @Override
560 public void getValues() {
561 isAdminPreference = false;
562 setPreferenceStore(PreferencesUtil.getPreferenceStore());
563 distributionEditorPref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DistributionEditorActivated);
564
565
566 if (distributionEditorPref != null){
567 isAllowOverride = distributionEditorPref.isAllowOverride();
568
569 if (isAllowOverride && PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()))){
570 isEditorActivated = PreferencesUtil.getBooleanValue(PreferencePredicate.DistributionEditorActivated.getKey());
571 overrideActivated = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()));
572 }else{
573 isEditorActivated = Boolean.valueOf(distributionEditorPref.getValue());
574 }
575 }else{
576 isEditorActivated = PreferencesUtil.getBooleanValue(PreferencePredicate.DistributionEditorActivated.getKey());
577 isAllowOverride = true;
578 overrideActivated = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()));
579 }
580
581 CdmPreference prefStatus = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.AvailableDistributionAreaVocabularies);
582 allowOverrideAreaVoc = prefStatus != null?prefStatus.isAllowOverride():true;
583
584 prefStatus = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.AvailableDistributionStatus);
585 allowOverrideStatus = prefStatus != null?prefStatus.isAllowOverride():true;
586
587 CdmPreference pref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DisplayOfAreasInDistributionEditor);
588 if (pref != null){
589 this.allowOverrideAreaDisplay = pref.isAllowOverride();
590 if (allowOverrideAreaDisplay){
591 displayArea = PreferencesUtil.displayAreaInChecklistEditor();
592 overrideAreaDisplay = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()));
593 }else{
594 displayArea = pref.getValue();
595 }
596 }else{
597 displayArea = PreferencesUtil.displayAreaInChecklistEditor();;
598 this.allowOverrideAreaDisplay = true;
599 overrideAreaDisplay = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()));
600 }
601
602 pref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DisplayOfStatus);
603 if (pref != null){
604 this.allowOverrideStatusDisplay = pref.isAllowOverride();
605 if (allowOverrideStatusDisplay){
606 displayStatus = PreferencesUtil.displayStatusInChecklistEditor();
607 overrideStatusDisplay = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()));
608 }else{
609 this.displayStatus = pref.getValue();
610 }
611 }else{
612 displayStatus = PreferencesUtil.displayStatusInChecklistEditor();
613 this.allowOverrideStatusDisplay = true;
614 overrideStatusDisplay = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()));
615 }
616
617 pref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.AreasSortedInDistributionEditor);
618 if (pref != null){
619
620 this.allowOverrideOrderAreas = pref.isAllowOverride();
621 if (allowOverrideOrderAreas){
622 orderAreas = PreferencesUtil.getSortNamedAreasInDistributionEditor();
623 overrideOrderAreas = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()));
624 }else{
625 if (pref.getValue() != null){
626 orderAreas = pref.getValue().toString();
627 }else{
628 orderAreas = PreferencePredicate.AreasSortedInDistributionEditor.getDefaultValue().toString();
629 }
630 }
631 }else{
632 orderAreas = PreferencesUtil.getSortNamedAreasInDistributionEditor();
633 this.allowOverrideOrderAreas = true;
634 overrideOrderAreas = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()));
635 }
636
637 pref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowRankInDistributionEditor);
638 if (pref != null){
639
640 allowOverrideRank = pref.isAllowOverride();
641 if (allowOverrideRank){
642 isShowRank = PreferencesUtil.isShowRankInChecklistEditor();
643 overrideRank = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()));
644 }else{
645 this.isShowRank = Boolean.valueOf(pref.getValue().toString());
646 }
647 }else{
648 isShowRank = PreferencesUtil.isShowRankInChecklistEditor();
649 this.allowOverrideRank = true;
650 overrideRank = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()));
651 }
652
653 pref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.OwnDescriptionForDistributionEditor);
654 if (pref != null){
655
656 allowOverrideOwnDescriptionForDistributionEditor = pref.isAllowOverride();
657 if (allowOverrideOwnDescriptionForDistributionEditor){
658 ownDescriptionForDistributionEditor = PreferencesUtil.isOwnDescriptionForChecklistEditor();
659 }else{
660 ownDescriptionForDistributionEditor = Boolean.valueOf(pref.getValue().toString());
661 }
662 }else{
663 ownDescriptionForDistributionEditor = PreferencesUtil.isShowRankInChecklistEditor();
664 allowOverrideOwnDescriptionForDistributionEditor = true;
665 overrideOwnDescriptionForDistributionEditor = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.OwnDescriptionForDistributionEditor.getKey()));
666 }
667
668
669 commandHandlerString = "eu.etaxonomy.taxeditor.store.open.OpenDistributionEditorWizardHandler";
670 commandHandlerStringStatus = "eu.etaxonomy.taxeditor.store.open.OpenDistributionStatusWizardHandler";
671
672
673 }
674
675
676 }