2 * Copyright (C) 2014 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
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.
9 package eu
.etaxonomy
.taxeditor
.preference
;
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
;
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
.cdm
.model
.metadata
.TermOrder
;
30 import eu
.etaxonomy
.taxeditor
.l10n
.Messages
;
31 import eu
.etaxonomy
.taxeditor
.preference
.menu
.CdmPreferencePage
;
32 import eu
.etaxonomy
.taxeditor
.ui
.element
.CommandHandlerButton
;
39 public class ChecklistEditorGeneralPreference
extends CdmPreferencePage
implements SelectionListener
{
41 protected boolean isEditorActivated
;
43 protected boolean overrideActivated
;
45 protected boolean isShowRank
;
46 protected String orderAreas
;
47 protected String displayStatus
;
48 protected String displayArea
;
49 protected boolean ownDescriptionForDistributionEditor
;
51 protected boolean overrideOwnDescriptionForDistributionEditor
;
52 protected boolean overrideAreaVoc
;
53 protected boolean overrideRank
;
54 protected boolean overrideOrderAreas
;
55 protected boolean overrideAreaDisplay
;
56 protected boolean overrideStatusDisplay
;
58 protected Combo areaOrderSelectionCombo
;
59 protected Button allowOverrideOrderAreasButton
;
60 protected Combo statusDisplaySelectionCombo
;
61 protected Button allowOverrideStatusDisplayButton
;
62 protected Combo areaDisplaySelectionCombo
;
63 protected Button allowOverrideAreaDisplayButton
;
64 protected String commandHandlerString
;
65 protected String commandHandlerStringStatus
;
67 protected CdmPreference distributionEditorPref
;
68 protected CdmPreference prefStatus
;
69 protected CdmPreference prefAreaVoc
;
70 protected CdmPreference prefAreaDisplay
;
71 protected CdmPreference prefStatusDisplay
;
72 protected CdmPreference prefAreaSort
;
73 protected CdmPreference prefRank
;
74 protected CdmPreference prefOwnDescription
;
77 protected Combo activateCombo
;
78 protected Button allowOverrideActivatedButton
;
79 final String ENABLE
= "Enable";
80 final String DISABLE
= "Disable";
82 protected Combo activateRankCombo
;
83 protected Button allowOverrideRankButton
;
84 final String SHOW_RANK
= "Show Rank";
85 final String NO_RANK
= "No Rank";
87 protected CdmPreference areaVocPref
= null;
88 protected CdmPreference statusPref
= null;
89 private CommandHandlerButton button_openSelectAreaVocabularies
;
91 private CommandHandlerButton button_openStatusWizard
;
94 protected Control
createContents(Composite parent
) {
96 Composite composite
= new Composite(parent
, SWT
.NULL
);
97 composite
.setLayout(new GridLayout());
98 if (!isAdminPreference
&& !distributionEditorPref
.isAllowOverride()&& !isEditorActivated
) {
99 Label label
= new Label(composite
, SWT
.NONE
);
101 "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.");
102 this.setDefaultButtonActivated(false);
104 Composite activateComp
= createComposite(composite
);
105 Label separator
= new Label(activateComp
, SWT
.HORIZONTAL
| SWT
.SEPARATOR
);
106 GridData sepGrid
= createTextGridData();
107 separator
.setLayoutData(sepGrid
);
108 separator
.setVisible(false);
109 CdmPreference dbPref
;
110 GridData textGrid
= createTextGridData();
111 textGrid
.verticalSpan
= 2;
112 separator
.setLayoutData(sepGrid
);
114 activateCombo
= createBooleanCombo(activateComp
, ENABLE
, DISABLE
, PreferencePredicate
.DistributionEditorActivated
, Messages
.ChecklistEditorGeneralPreference_enable
, isAdminPreference
);
115 if (isEditorActivated
) {
116 activateCombo
.select(0);
118 activateCombo
.select(1);
121 activateCombo
.addSelectionListener(this);
122 if (isAdminPreference
) {
123 allowOverrideActivatedButton
= createAllowOverrideButton(activateComp
);
124 allowOverrideActivatedButton
.setSelection(this.distributionEditorPref
.isAllowOverride());
125 allowOverrideActivatedButton
.addSelectionListener(new SelectionAdapter() {
127 public void widgetSelected(SelectionEvent e
) {
129 distributionEditorPref
.setAllowOverride(!distributionEditorPref
.isAllowOverride());
133 child
= createComposite(composite
);
135 if (!isAdminPreference
) {
136 child
.setEnabled(isEditorActivated
);
138 separator
= new Label(child
, SWT
.HORIZONTAL
| SWT
.SEPARATOR
);
139 sepGrid
= createTextGridData();
140 separator
.setLayoutData(sepGrid
);
142 activateRankCombo
= createBooleanCombo(child
, SHOW_RANK
, NO_RANK
,
143 PreferencePredicate
.ShowRankInDistributionEditor
, Messages
.ChecklistEditorGeneralPreference_show_rank
, isAdminPreference
);
146 activateRankCombo
.select(0);
148 activateRankCombo
.select(1);
150 activateRankCombo
.addSelectionListener(this);
151 if (isAdminPreference
) {
152 allowOverrideRankButton
= createAllowOverrideButton(child
);
153 allowOverrideRankButton
.setSelection(prefRank
.isAllowOverride());
154 allowOverrideRankButton
.addSelectionListener(new SelectionAdapter() {
156 public void widgetSelected(SelectionEvent e
) {
158 prefRank
.setAllowOverride(allowOverrideRankButton
.getSelection());
163 GridData gridData
= new GridData();
164 gridData
= new GridData(GridData
.BEGINNING
, GridData
.CENTER
, true, false);
166 areaOrderSelectionCombo
= createCombo(child
, TermOrder
.values(), PreferencePredicate
.AreasSortedInDistributionEditor
, Messages
.ChecklistEditorGeneralPreference_Configure_area_order
, isAdminPreference
);
171 if (orderAreas
!= null) {
172 areaOrder
= TermOrder
.valueOf(orderAreas
);
174 areaOrder
= TermOrder
.IdInVoc
;
176 } catch (IllegalArgumentException e
) {
177 areaOrder
= TermOrder
.IdInVoc
;
179 for (String itemLabel
: areaOrderSelectionCombo
.getItems()) {
180 if (itemLabel
.startsWith(areaOrder
.getLabel())) {
181 areaOrderSelectionCombo
.select(index
);
187 areaOrderSelectionCombo
.addSelectionListener(this);
189 if (isAdminPreference
) {
190 allowOverrideOrderAreasButton
= createAllowOverrideButton(child
);
191 allowOverrideOrderAreasButton
.setSelection(prefAreaSort
.isAllowOverride());
192 allowOverrideOrderAreasButton
.addSelectionListener(new SelectionAdapter() {
194 public void widgetSelected(SelectionEvent e
) {
196 prefAreaSort
.setAllowOverride(allowOverrideOrderAreasButton
.getSelection());
201 separator
= new Label(child
, SWT
.HORIZONTAL
| SWT
.SEPARATOR
);
202 separator
.setLayoutData(sepGrid
);
203 areaDisplaySelectionCombo
= createCombo(child
, TermDisplayEnum
.values(), PreferencePredicate
.DisplayOfAreasInDistributionEditor
, Messages
.ChecklistEditorGeneralPreference_Configure_display_of_Areas
, isAdminPreference
);
206 if (PreferencesUtil
.getStringValue(PreferencePredicate
.DistributionEditorActivated
.getKey()) != null) {
207 TermDisplayEnum areaDisplay
;
209 if (displayArea
!= null) {
210 areaDisplay
= TermDisplayEnum
.byKey(displayArea
);
212 areaDisplay
= TermDisplayEnum
.Title
;
214 } catch (IllegalArgumentException e
) {
215 areaDisplay
= TermDisplayEnum
.Title
;
218 for (String itemLabel
: areaDisplaySelectionCombo
.getItems()) {
219 if (itemLabel
.startsWith(areaDisplay
.getLabel())) {
220 areaDisplaySelectionCombo
.select(index
);
226 areaDisplaySelectionCombo
.addSelectionListener(this);
228 if (isAdminPreference
) {
229 allowOverrideAreaDisplayButton
= createAllowOverrideButton(child
);
230 allowOverrideAreaDisplayButton
.setSelection(prefAreaDisplay
.isAllowOverride());
231 allowOverrideAreaDisplayButton
.addSelectionListener(new SelectionAdapter() {
233 public void widgetSelected(SelectionEvent e
) {
235 prefAreaDisplay
.setAllowOverride(allowOverrideOrderAreasButton
.getSelection());
240 statusDisplaySelectionCombo
= createCombo(child
, TermDisplayEnum
.values(), PreferencePredicate
.DisplayOfStatus
, Messages
.ChecklistEditorGeneralPreference_Configure_display_of_Status
, isAdminPreference
);
243 if (displayStatus
!= null) {
244 TermDisplayEnum statusDisplay
;
246 statusDisplay
= TermDisplayEnum
.byKey(displayStatus
);
247 } catch (IllegalArgumentException e
) {
248 statusDisplay
= TermDisplayEnum
.Title
;
250 for (String itemLabel
: statusDisplaySelectionCombo
.getItems()) {
251 if (itemLabel
.startsWith(statusDisplay
.getLabel())) {
252 statusDisplaySelectionCombo
.select(index
);
259 statusDisplaySelectionCombo
.addSelectionListener(this);
261 if (isAdminPreference
) {
262 allowOverrideStatusDisplayButton
= createAllowOverrideButton(child
);
263 allowOverrideStatusDisplayButton
.setSelection(prefStatusDisplay
.isAllowOverride());
264 allowOverrideStatusDisplayButton
.addSelectionListener(new SelectionAdapter() {
266 public void widgetSelected(SelectionEvent e
) {
268 prefStatusDisplay
.setAllowOverride(allowOverrideStatusDisplayButton
.getSelection());
273 final CLabel labelStatus
= new CLabel(child
, SWT
.NULL
);
274 labelStatus
.setText(Messages
.DistributionAdminPreferences_SELECT_STATUS
);
275 labelStatus
.setLayoutData(textGrid
);
277 button_openStatusWizard
= new CommandHandlerButton(child
, SWT
.PUSH
, commandHandlerStringStatus
);
279 button_openStatusWizard
.setText(Messages
.Distribution_status_selection
);
280 button_openStatusWizard
.addListener(SWT
.Selection
, new Listener() {
282 public void handleEvent(Event e
) {
291 final CLabel label
= new CLabel(child
, SWT
.NULL
);
292 label
.setText(Messages
.ChecklistEditorGeneralPreference_open_wizard
);
293 label
.setLayoutData(textGrid
);
295 button_openSelectAreaVocabularies
= new CommandHandlerButton(child
, SWT
.PUSH
, commandHandlerString
);
296 button_openSelectAreaVocabularies
297 .setText(Messages
.ChecklistEditorGeneralPreference_open_distribution_selection
);
299 if (!isAdminPreference
) {
300 PreferencesUtil
.recursiveSetEnabled(child
, isEditorActivated
);
301 if (distributionEditorPref
!= null && !distributionEditorPref
.isAllowOverride()){
302 activateComp
.setEnabled(false);
305 if (prefAreaVoc
!= null && !prefAreaVoc
.isAllowOverride()) {
306 button_openSelectAreaVocabularies
.setButtonEnabled(false);
308 if (prefStatus
!= null && !prefStatus
.isAllowOverride()) {
309 button_openStatusWizard
.setButtonEnabled(false);
311 if (prefRank
!= null && !prefRank
.isAllowOverride()) {
312 activateRankCombo
.setEnabled(false);
314 if (prefAreaSort
!= null && !prefAreaSort
.isAllowOverride()) {
315 areaOrderSelectionCombo
.setEnabled(false);
316 //allowOverrideOrderAreasButton.setEnabled(false);
318 if (prefAreaDisplay
!= null && !prefAreaDisplay
.isAllowOverride()) {
319 areaDisplaySelectionCombo
.setEnabled(false);
321 if (prefStatusDisplay
!= null && !prefStatusDisplay
.isAllowOverride()) {
322 statusDisplaySelectionCombo
.setEnabled(false);
332 public boolean performOk() {
333 // if (distributionEditorPref == null || this.distributionEditorPref.isAllowOverride()) {
335 PreferencesUtil
.setBooleanValue(PreferencePredicate
.DistributionEditorActivated
.getKey(),
338 if (distributionEditorPref
== null
339 || isEditorActivated
!= Boolean
.parseBoolean(distributionEditorPref
.getValue())) {
340 PreferencesUtil
.setBooleanValue(
341 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.DistributionEditorActivated
.getKey()),
344 PreferencesUtil
.setSortNamedAreasInDistributionEditor(orderAreas
);
345 if (prefAreaSort
== null || orderAreas
!= prefAreaSort
.getValue()) {
346 PreferencesUtil
.setBooleanValue(
347 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.AreasSortedInDistributionEditor
.getKey()),
350 PreferencesUtil
.setShowRankInChecklistEditor(isShowRank
);
351 if (prefRank
== null || isShowRank
!= Boolean
.parseBoolean(prefRank
.getValue())) {
352 PreferencesUtil
.setBooleanValue(
353 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.ShowRankInDistributionEditor
.getKey()),
356 PreferencesUtil
.setDisplayStatusInChecklistEditor(displayStatus
);
357 if (prefStatusDisplay
== null || displayStatus
!= prefStatusDisplay
.getValue()) {
358 PreferencesUtil
.setBooleanValue(
359 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.DisplayOfStatus
.getKey()),
362 PreferencesUtil
.setAreaDisplayInChecklistEditor(displayArea
);
363 if (prefAreaDisplay
== null || displayArea
!= prefAreaDisplay
.getValue()) {
364 PreferencesUtil
.setBooleanValue(PreferencesUtil
.prefOverrideKey(
365 PreferencePredicate
.DisplayOfAreasInDistributionEditor
.getKey()), overrideAreaDisplay
);
367 PreferencesUtil
.setOwnDescriptionForChecklistEditor(ownDescriptionForDistributionEditor
);
368 PreferencesUtil
.setBooleanValue(
369 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.OwnDescriptionForDistributionEditor
.getKey()),
372 // if (statusPref != null){
373 // PreferencesUtil.setStringValue(PreferencePredicate.AvailableDistributionStatus.getKey(),
375 // //PreferencesUtil.setStringValue(PreferencePredicate.AvailableDistributionStatus.getKey(),
376 // statusPref.getValue());
377 // PreferencesUtil.setBooleanValue(PreferencesUtil.createOverridePreferenceString(PreferencePredicate.AvailableDistributionStatus.getKey()),true);
380 // if (areaVocPref != null){
381 // PreferencesUtil.setStringValue(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey(),
383 // PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey()),
386 PreferencesUtil
.firePreferencesChanged(this.getClass());
396 public void widgetSelected(SelectionEvent e
) {
398 if (e
.getSource().equals(statusDisplaySelectionCombo
)) {
399 String text
= statusDisplaySelectionCombo
.getText();
400 for (TermDisplayEnum display
: TermDisplayEnum
.values()) {
401 if (text
.startsWith(display
.getLabel())) {
402 displayStatus
= display
.getKey();
407 if (e
.getSource().equals(areaDisplaySelectionCombo
)) {
408 String text
= areaDisplaySelectionCombo
.getText();
409 for (TermDisplayEnum display
: TermDisplayEnum
.values()) {
410 if (text
.startsWith(display
.getLabel())) {
411 displayArea
= display
.getKey();
416 if (e
.getSource().equals(areaOrderSelectionCombo
)) {
417 String text
= areaOrderSelectionCombo
.getText();
418 for (TermOrder display
: TermOrder
.values()) {
419 if (text
.startsWith(display
.getLabel())) {
420 orderAreas
= display
.getKey();
425 if (e
.getSource().equals(this.activateRankCombo
)) {
426 String text
= activateRankCombo
.getText();
427 text
= text
.replace(" (Default)", "");
428 if (text
.equals(SHOW_RANK
)){
435 if (e
.getSource().equals(this.activateCombo
)) {
436 String text
= activateCombo
.getText();
437 text
= text
.replace(" (Default)", "");
438 if (text
.equals(ENABLE
)){
439 isEditorActivated
= true;
441 isEditorActivated
= false;
444 PreferencesUtil
.recursiveSetEnabled(child
, isEditorActivated
);
451 public void widgetDefaultSelected(SelectionEvent e
) {
452 // TODO Auto-generated method stub
460 public void getValues() {
461 isAdminPreference
= false;
462 setPreferenceStore(PreferencesUtil
.getPreferenceStore());
463 distributionEditorPref
= PreferencesUtil
.getPreferenceFromDB(PreferencePredicate
.DistributionEditorActivated
);
465 if (distributionEditorPref
!= null) {
466 // isAllowOverride = distributionEditorPref.isAllowOverride();
468 if (distributionEditorPref
.isAllowOverride() ) {
469 isEditorActivated
= PreferencesUtil
470 .getBooleanValue(PreferencePredicate
.DistributionEditorActivated
.getKey(), true);
473 isEditorActivated
= Boolean
.valueOf(distributionEditorPref
.getValue());
476 overrideActivated
= PreferencesUtil
.getBooleanValue(
477 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.DistributionEditorActivated
.getKey()), true);
479 isEditorActivated
= PreferencesUtil
480 .getBooleanValue(PreferencePredicate
.DistributionEditorActivated
.getKey(), true);
481 // isAllowOverride = true;
482 overrideActivated
= PreferencesUtil
.getBooleanValue(
483 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.DistributionEditorActivated
.getKey()), true);
484 distributionEditorPref
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.DistributionEditorActivated
, PreferencePredicate
.DistributionEditorActivated
.getDefaultValue() != null ? PreferencePredicate
.DistributionEditorActivated
.getDefaultValue().toString(): null);
487 prefAreaVoc
= PreferencesUtil
.getPreferenceFromDB(PreferencePredicate
.AvailableDistributionAreaVocabularies
);
488 if (prefAreaVoc
== null){
489 prefAreaVoc
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.AvailableDistributionAreaVocabularies
, PreferencePredicate
.AvailableDistributionAreaVocabularies
.getDefaultValue() != null ? PreferencePredicate
.AvailableDistributionAreaVocabularies
.getDefaultValue().toString(): null);
493 prefStatus
= PreferencesUtil
.getPreferenceFromDB(PreferencePredicate
.AvailableDistributionStatus
);
494 if (prefStatus
== null){
495 prefStatus
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.AvailableDistributionStatus
, PreferencePredicate
.AvailableDistributionStatus
.getDefaultValue() != null ? PreferencePredicate
.AvailableDistributionStatus
.getDefaultValue().toString(): null);
499 prefAreaDisplay
= PreferencesUtil
.getPreferenceFromDB(PreferencePredicate
.DisplayOfAreasInDistributionEditor
);
500 if (prefAreaDisplay
!= null) {
502 if (prefAreaDisplay
.isAllowOverride()) {
503 displayArea
= PreferencesUtil
.displayAreaInChecklistEditor();
504 overrideAreaDisplay
= PreferencesUtil
.getBooleanValue(PreferencesUtil
505 .prefOverrideKey(PreferencePredicate
.DisplayOfAreasInDistributionEditor
.getKey()), true);
507 displayArea
= prefAreaDisplay
.getValue();
510 displayArea
= PreferencesUtil
.displayAreaInChecklistEditor();
512 overrideAreaDisplay
= PreferencesUtil
.getBooleanValue(
513 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.DisplayOfAreasInDistributionEditor
.getKey()), true);
514 prefAreaDisplay
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.DisplayOfAreasInDistributionEditor
, PreferencePredicate
.DisplayOfAreasInDistributionEditor
.getDefaultValue() != null ? PreferencePredicate
.DisplayOfAreasInDistributionEditor
.getDefaultValue().toString(): null);
517 prefStatusDisplay
= PreferencesUtil
.getPreferenceFromDB(PreferencePredicate
.DisplayOfStatus
);
518 if (prefStatusDisplay
!= null) {
520 if (prefStatusDisplay
.isAllowOverride()) {
521 displayStatus
= PreferencesUtil
.displayStatusInChecklistEditor();
522 overrideStatusDisplay
= PreferencesUtil
523 .getBooleanValue(PreferencesUtil
.prefOverrideKey(PreferencePredicate
.DisplayOfStatus
.getKey()), true);
525 this.displayStatus
= prefStatusDisplay
.getValue();
528 displayStatus
= PreferencesUtil
.displayStatusInChecklistEditor();
530 overrideStatusDisplay
= PreferencesUtil
531 .getBooleanValue(PreferencesUtil
.prefOverrideKey(PreferencePredicate
.DisplayOfStatus
.getKey()), true);
532 prefStatusDisplay
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.DisplayOfStatus
, PreferencePredicate
.DisplayOfStatus
.getDefaultValue() != null ? PreferencePredicate
.DisplayOfStatus
.getDefaultValue().toString(): null);
535 prefAreaSort
= PreferencesUtil
.getPreferenceFromDB(PreferencePredicate
.AreasSortedInDistributionEditor
);
536 if (prefAreaSort
!= null) {
538 if (prefAreaSort
.isAllowOverride()) {
539 orderAreas
= PreferencesUtil
.getSortNamedAreasInDistributionEditor();
540 overrideOrderAreas
= PreferencesUtil
.getBooleanValue(
541 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.AreasSortedInDistributionEditor
.getKey()), true);
543 if (prefAreaSort
.getValue() != null) {
544 orderAreas
= prefAreaSort
.getValue().toString();
546 orderAreas
= ((TermOrder
) PreferencePredicate
.AreasSortedInDistributionEditor
.getDefaultValue())
551 orderAreas
= PreferencesUtil
.getSortNamedAreasInDistributionEditor();
552 overrideOrderAreas
= PreferencesUtil
.getBooleanValue(
553 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.AreasSortedInDistributionEditor
.getKey()), true);
554 prefAreaSort
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.AreasSortedInDistributionEditor
, PreferencePredicate
.AreasSortedInDistributionEditor
.getDefaultValue() != null ? PreferencePredicate
.AreasSortedInDistributionEditor
.getDefaultValue().toString(): null);
557 prefRank
= PreferencesUtil
.getPreferenceFromDB(PreferencePredicate
.ShowRankInDistributionEditor
);
558 if (prefRank
!= null) {
559 if (prefRank
.isAllowOverride()) {
560 isShowRank
= PreferencesUtil
.isShowRankInChecklistEditor();
561 overrideRank
= PreferencesUtil
.getBooleanValue(
562 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.ShowRankInDistributionEditor
.getKey()), true);
564 this.isShowRank
= Boolean
.valueOf(prefRank
.getValue().toString());
567 isShowRank
= PreferencesUtil
.isShowRankInChecklistEditor();
568 overrideRank
= PreferencesUtil
.getBooleanValue(
569 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.ShowRankInDistributionEditor
.getKey()), true);
570 prefRank
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.ShowRankInDistributionEditor
, PreferencePredicate
.ShowRankInDistributionEditor
.getDefaultValue() != null ? PreferencePredicate
.ShowRankInDistributionEditor
.getDefaultValue().toString(): null);
573 prefOwnDescription
= PreferencesUtil
574 .getPreferenceFromDB(PreferencePredicate
.OwnDescriptionForDistributionEditor
);
575 if (prefOwnDescription
!= null) {
576 if (prefOwnDescription
.isAllowOverride()) {
577 ownDescriptionForDistributionEditor
= PreferencesUtil
.isOwnDescriptionForChecklistEditor();
579 ownDescriptionForDistributionEditor
= Boolean
.valueOf(prefOwnDescription
.getValue().toString());
582 ownDescriptionForDistributionEditor
= PreferencesUtil
.isShowRankInChecklistEditor();
583 // allowOverrideOwnDescriptionForDistributionEditor = true;
584 overrideOwnDescriptionForDistributionEditor
= PreferencesUtil
.getBooleanValue(
585 PreferencesUtil
.prefOverrideKey(PreferencePredicate
.OwnDescriptionForDistributionEditor
.getKey()), true);
586 prefOwnDescription
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.OwnDescriptionForDistributionEditor
, PreferencePredicate
.OwnDescriptionForDistributionEditor
.getDefaultValue() != null ? PreferencePredicate
.OwnDescriptionForDistributionEditor
.getDefaultValue().toString(): null);
589 commandHandlerString
= "eu.etaxonomy.taxeditor.store.open.OpenDistributionEditorWizardHandler";
590 commandHandlerStringStatus
= "eu.etaxonomy.taxeditor.store.open.OpenDistributionStatusWizardHandler";
594 protected void performDefaults() {
595 if (isAdminPreference
){
596 isEditorActivated
= (Boolean
) PreferencePredicate
.DistributionEditorActivated
.getDefaultValue();
598 isEditorActivated
= Boolean
.parseBoolean(distributionEditorPref
.getValue().toString());
600 if (isEditorActivated
) {
601 activateCombo
.select(0);
603 activateCombo
.select(1);
606 if (isAdminPreference
){
607 displayArea
= ((TermDisplayEnum
) PreferencePredicate
.DisplayOfAreasInDistributionEditor
.getDefaultValue())
610 displayArea
= prefAreaDisplay
.getValue().toString();
613 TermDisplayEnum areaDisplay
;
615 if (displayArea
!= null) {
616 areaDisplay
= TermDisplayEnum
.byKey(displayArea
);
618 areaDisplay
= TermDisplayEnum
.Title
;
620 } catch (IllegalArgumentException e
) {
621 areaDisplay
= TermDisplayEnum
.Title
;
624 for (String itemLabel
: areaDisplaySelectionCombo
.getItems()) {
625 if (itemLabel
.equalsIgnoreCase(areaDisplay
.getLabel())) {
626 areaDisplaySelectionCombo
.select(index
);
632 if (isAdminPreference
){
633 displayStatus
= ((TermDisplayEnum
) PreferencePredicate
.DisplayOfStatus
.getDefaultValue()).getKey();
635 displayStatus
= prefStatusDisplay
.getValue().toString();
638 TermDisplayEnum statusDisplay
;
640 if (displayStatus
!= null) {
641 statusDisplay
= TermDisplayEnum
.byKey(displayStatus
);
643 statusDisplay
= TermDisplayEnum
.Title
;
645 } catch (IllegalArgumentException e
) {
646 statusDisplay
= TermDisplayEnum
.Title
;
649 for (String itemLabel
: statusDisplaySelectionCombo
.getItems()) {
650 if (itemLabel
.equalsIgnoreCase(statusDisplay
.getLabel())) {
651 statusDisplaySelectionCombo
.select(index
);
656 if (isAdminPreference
){
657 orderAreas
= ((TermOrder
) PreferencePredicate
.AreasSortedInDistributionEditor
.getDefaultValue()).getKey();
659 orderAreas
= prefAreaSort
.getValue().toString();
663 if (PreferencesUtil
.getStringValue(PreferencePredicate
.DistributionEditorActivated
.getKey()) != null) {
666 if (orderAreas
!= null) {
667 areaOrder
= TermOrder
.valueOf(orderAreas
);
669 areaOrder
= TermOrder
.IdInVoc
;
671 } catch (IllegalArgumentException e
) {
672 areaOrder
= TermOrder
.IdInVoc
;
674 for (String itemLabel
: areaOrderSelectionCombo
.getItems()) {
675 if (itemLabel
.equalsIgnoreCase(areaOrder
.getLabel())) {
676 areaOrderSelectionCombo
.select(index
);
683 if (isAdminPreference
){
684 isShowRank
= Boolean
.valueOf(PreferencePredicate
.ShowRankInDistributionEditor
.getDefaultValue().toString());
686 isShowRank
= Boolean
.parseBoolean(prefRank
.getValue().toString());
690 activateRankCombo
.select(0);
692 activateRankCombo
.select(1);
695 ownDescriptionForDistributionEditor
= Boolean
696 .valueOf(PreferencePredicate
.OwnDescriptionForDistributionEditor
.getDefaultValue().toString());
698 allowOverrideActivatedButton
.setSelection(true);
699 overrideActivated
= true;
701 overrideAreaDisplay
= true;
702 allowOverrideAreaDisplayButton
.setSelection(true);
704 overrideStatusDisplay
= true;
705 allowOverrideStatusDisplayButton
.setSelection(true);
707 overrideOrderAreas
= true;
708 allowOverrideOrderAreasButton
.setSelection(true);
711 allowOverrideRankButton
.setSelection(true);
713 overrideOwnDescriptionForDistributionEditor
= true;
715 this.statusPref
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.AvailableDistributionStatus
, null);
716 this.areaVocPref
= CdmPreference
.NewTaxEditorInstance(PreferencePredicate
.AvailableDistributionAreaVocabularies
,
718 if (!isAdminPreference
) {
719 PreferencesUtil
.recursiveSetEnabled(child
, isEditorActivated
);
721 if (!prefAreaVoc
.isAllowOverride()) {
722 button_openSelectAreaVocabularies
.setButtonEnabled(false);
724 if (!prefStatus
.isAllowOverride()) {
725 button_openStatusWizard
.setButtonEnabled(false);
727 if (!prefRank
.isAllowOverride()) {
728 activateRankCombo
.setEnabled(false);
730 if (!prefAreaSort
.isAllowOverride()) {
731 areaOrderSelectionCombo
.setEnabled(false);
732 allowOverrideOrderAreasButton
.setEnabled(false);
734 if (!prefAreaDisplay
.isAllowOverride()) {
735 allowOverrideAreaDisplayButton
.setEnabled(false);
737 if (!prefStatusDisplay
.isAllowOverride()) {
738 allowOverrideStatusDisplayButton
.setEnabled(false);
741 super.performDefaults();