Revision 3b975922
Added by Katja Luther over 5 years ago
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/GeneralAdminPreferencePage.java | ||
---|---|---|
9 | 9 |
package eu.etaxonomy.taxeditor.databaseAdmin.preferencePage; |
10 | 10 |
|
11 | 11 |
import org.eclipse.swt.SWT; |
12 |
import org.eclipse.swt.events.SelectionAdapter; |
|
13 |
import org.eclipse.swt.events.SelectionEvent; |
|
12 | 14 |
import org.eclipse.swt.layout.GridLayout; |
15 |
import org.eclipse.swt.widgets.Button; |
|
13 | 16 |
import org.eclipse.swt.widgets.Composite; |
14 | 17 |
import org.eclipse.swt.widgets.Control; |
15 | 18 |
|
19 |
import eu.etaxonomy.cdm.api.application.ICdmRepository; |
|
20 |
import eu.etaxonomy.cdm.api.service.IPreferenceService; |
|
21 |
import eu.etaxonomy.cdm.model.metadata.CdmPreference; |
|
22 |
import eu.etaxonomy.cdm.model.metadata.CdmPreference.PrefKey; |
|
23 |
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate; |
|
24 |
import eu.etaxonomy.cdm.model.metadata.PreferenceSubject; |
|
25 |
import eu.etaxonomy.taxeditor.l10n.Messages; |
|
26 |
import eu.etaxonomy.taxeditor.preference.PreferencesUtil; |
|
16 | 27 |
import eu.etaxonomy.taxeditor.preference.menu.CdmPreferencePage; |
28 |
import eu.etaxonomy.taxeditor.store.CdmStore; |
|
17 | 29 |
|
18 | 30 |
/** |
19 | 31 |
* @author k.luther |
... | ... | |
22 | 34 |
*/ |
23 | 35 |
public class GeneralAdminPreferencePage extends CdmPreferencePage implements IE4AdminPreferencePage { |
24 | 36 |
|
37 |
|
|
38 |
boolean isShowIOMenu = true; |
|
25 | 39 |
/** |
26 | 40 |
* {@inheritDoc} |
27 | 41 |
*/ |
... | ... | |
31 | 45 |
|
32 | 46 |
GridLayout gridLayout = new GridLayout(); |
33 | 47 |
composite.setLayout(gridLayout); |
48 |
ICdmRepository controller = CdmStore.getCurrentApplicationConfiguration(); |
|
49 |
if (controller != null){ |
|
50 |
IPreferenceService service = controller.getPreferenceService(); |
|
51 |
PrefKey key = CdmPreference.NewKey(PreferenceSubject.NewDatabaseInstance(), PreferencePredicate.ShowImportExportMenu); |
|
52 |
CdmPreference isShowSpecimenPref = service.find(key); |
|
53 |
if (isShowSpecimenPref != null){ |
|
54 |
this.isShowIOMenu = Boolean.valueOf(isShowSpecimenPref.getValue()); |
|
55 |
} |
|
56 |
} |
|
57 |
final Button showIOMenuButton = new Button(composite, SWT.CHECK); |
|
58 |
|
|
59 |
showIOMenuButton.setText(Messages.DatabasePreferncesPage_Show_IOMenu); |
|
60 |
|
|
61 |
showIOMenuButton.setSelection(isShowIOMenu); |
|
62 |
showIOMenuButton.addSelectionListener(new SelectionAdapter(){ |
|
63 |
@Override |
|
64 |
public void widgetSelected(SelectionEvent e) { |
|
65 |
isShowIOMenu = showIOMenuButton.getSelection(); |
|
66 |
|
|
67 |
} |
|
68 |
}); |
|
34 | 69 |
return composite; |
35 | 70 |
} |
36 | 71 |
|
... | ... | |
40 | 75 |
getControl().setVisible(false); |
41 | 76 |
} |
42 | 77 |
|
78 |
@Override |
|
79 |
public boolean performOk() { |
|
80 |
ICdmRepository controller = CdmStore.getCurrentApplicationConfiguration(); |
|
81 |
if (controller != null){ |
|
82 |
IPreferenceService service = controller.getPreferenceService(); |
|
83 |
|
|
84 |
CdmPreference pref = CdmPreference.NewDatabaseInstance(PreferencePredicate.ShowImportExportMenu, Boolean.toString(this.isShowIOMenu)); |
|
85 |
pref.setAllowOverride(false); |
|
86 |
service.set(pref); |
|
87 |
PreferencesUtil.updateDBPreferences(); |
|
88 |
|
|
89 |
|
|
90 |
} |
|
91 |
return true; |
|
92 |
} |
|
93 |
|
|
43 | 94 |
} |
Also available in: Unified diff
ref #7793: add DB preferences to hide specimen and import issues and smaller changes in db preferences