ref #8562: add admin preference page for multilanguage support
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / preference / wizard / AbstractAdminTermSelectionWizardPage.java
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.wizard;
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.widgets.Button;
15 import org.eclipse.swt.widgets.Composite;
16
17 import eu.etaxonomy.cdm.model.metadata.CdmPreference;
18 import eu.etaxonomy.cdm.model.term.TermType;
19 import eu.etaxonomy.cdm.persistence.dto.AbstractTermDto;
20 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
21
22
23 /**
24 * @author k.luther
25 * @since 22.11.2018
26 *
27 */
28 public abstract class AbstractAdminTermSelectionWizardPage<T extends AbstractTermDto> extends AbstractTermSelectionWizardPage{
29 //private boolean localPrefExist = true;
30
31 /**
32 * @param pageName
33 * @param type
34 */
35 protected AbstractAdminTermSelectionWizardPage(String pageName, TermType type, CdmPreference pref) {
36 super(pageName, type);
37 this.pref = pref;
38 if (localPref){
39 this.override = PreferencesUtil.getBooleanValue(PreferencesUtil.createOverridePreferenceString(pref.getPredicate()));
40 }else{
41 this.override = pref != null? this.pref.isAllowOverride(): true;
42 }
43
44 }
45
46 // CdmPreference pref;
47 // boolean override;
48
49 /**
50 * {@inheritDoc}
51 * @return
52 */
53
54 @Override
55 protected Button createAllowOverrideButton(Composite parent) {
56 Button activateCheckButton = new Button(parent, SWT.CHECK);
57 if (localPref){
58 activateCheckButton.setText("Override");
59
60 }else{
61 activateCheckButton.setText("Allow Override");
62
63 }
64
65 activateCheckButton.setSelection(override);
66
67 activateCheckButton.addSelectionListener(new SelectionAdapter(){
68 @Override
69 public void widgetSelected(SelectionEvent e) {
70 pref.setAllowOverride(activateCheckButton.getSelection());
71 override = activateCheckButton.getSelection();
72
73 }
74 });
75 return activateCheckButton;
76 }
77
78 // public boolean isLocalPrefExist() {
79 // return localPrefExist;
80 // }
81 //
82 // public void setLocalPrefExist(boolean localPrefExist) {
83 // this.localPrefExist = localPrefExist;
84 // }
85
86 @Override
87 public CdmPreference getPreference(){
88 return pref;
89 }
90
91 public void setPreference(CdmPreference pref){
92 this.pref = pref;
93 }
94
95 }