id="eu.etaxonomy.taxeditor.preferences.nameFeature"
name="%page.name.59">
</page>
- <page
+ <!--<page
category="eu.etaxonomy.taxeditor.preferences.description"
class="eu.etaxonomy.taxeditor.preference.menu.PresenceAbsenceMenuPreferences"
id="eu.etaxonomy.taxeditor.preferences.distributionStatus"
name="%page.name.2">
- </page>
+ </page>-->
<page
category="eu.etaxonomy.taxeditor.preference.searchPreferences"
class="eu.etaxonomy.taxeditor.preference.SearchDialogPreferences"
</page>
<page
category="eu.etaxonomy.taxeditor.preferences.namePreferences"
- class="eu.etaxonomy.taxeditor.preference.menu.RankMenuPreferences"
+ class="eu.etaxonomy.taxeditor.preference.RankPreference"
id="eu.etaxonomy.taxeditor.preferences.ranks"
name="%page.name.5">
</page>
<page
category="eu.etaxonomy.taxeditor.preferences.namePreferences"
- class="eu.etaxonomy.taxeditor.preference.menu.NomenclaturalStatusTypeMenuPreferences"
+ class="eu.etaxonomy.taxeditor.preference.NomenclaturalStatusTypePreferences"
id="eu.etaxonomy.taxeditor.preferences.nomenclaturalStatusType"
name="%page.name.6">
</page>
class="eu.etaxonomy.taxeditor.databaseAdmin.preferencePage.PublishFlagPreference"
id="eu.etaxonomy.taxeditor.preferences.publishFlagPreference"
name="%page.name.46">
+ </page>
+ <page
+ category="eu.etaxonomy.taxeditor.preferences.general"
+ class="eu.etaxonomy.taxeditor.databaseAdmin.preferencePage.RankAdminPreference"
+ id="eu.etaxonomy.taxeditor.preferences.adminRankPreference"
+ name="%page.name.5">
+ </page>
+ <page
+ category="eu.etaxonomy.taxeditor.preferences.general"
+ class="eu.etaxonomy.taxeditor.databaseAdmin.preferencePage.NomenclaturalStatusTypeAdminPreference"
+ id="eu.etaxonomy.taxeditor.preferences.adminNomenclaturalStatusTypePreference"
+ name="%page.name.6">
</page>
<page
category="eu.etaxonomy.taxeditor.preferences.general"
id="eu.etaxonomy.taxeditor.store.scientificNameDetails"
name="%page.name.61">
</page>
+ <page
+ category="eu.etaxonomy.taxeditor.preferences.general"
+ class="eu.etaxonomy.taxeditor.databaseAdmin.preferencePage.SupplementalDataAdminPreference"
+ id="eu.etaxonomy.taxeditor.store.supplementalDataPreferences"
+ name="%page.name.55">
+ </page>
</extension>
</plugin>
--- /dev/null
+/**
+* Copyright (C) 2019 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.databaseAdmin.preferencePage;
+
+import eu.etaxonomy.cdm.model.metadata.CdmPreference;
+import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
+import eu.etaxonomy.taxeditor.preference.CdmPreferenceCache;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
+import eu.etaxonomy.taxeditor.preference.SupplementalDataPreferences;
+
+/**
+ * @author k.luther
+ * @since 28.06.2019
+ *
+ */
+public class SupplementalDataAdminPreference extends SupplementalDataPreferences {
+
+ CdmPreference prefShowIdNamespace;
+ CdmPreference prefShowNamespace;
+
+
+ @Override
+ public boolean performOk() {
+ if (!isApply()){
+ return true;
+ }
+ boolean setToDefault = false;
+ if (isShowIDNamspace == null){
+ setToDefault = true;
+ isShowIDNamspace = true;
+ }
+ CdmPreference pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowIdInSource, Boolean.toString(this.isShowIDNamspace));
+ pref.setAllowOverride(isAllowOverrideShowIDNamspace);
+ PreferencesUtil.setPreferencesToDB(pref, setToDefault);
+
+ if (isShowNamespace == null){
+ setToDefault = true;
+ isShowNamespace = true;
+ }
+ pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowNamespaceInSource, Boolean.toString(this.isShowNamespace));
+ pref.setAllowOverride(isAllowOverrideShowNamspace);
+ PreferencesUtil.setPreferencesToDB(pref, setToDefault);
+
+ PreferencesUtil.updateDBPreferences();
+
+
+ return true;
+ }
+ @Override
+ protected void getValues(){
+ isAdminPreference = true;
+
+ CdmPreferenceCache cache = CdmPreferenceCache.instance();
+
+ prefShowIdNamespace = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowIdInSource);
+ if (prefShowIdNamespace == null){
+ prefShowIdNamespace = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowIdInSource, null);
+ prefShowIdNamespace.setAllowOverride(true);
+ }
+ isShowIDNamspace = prefShowIdNamespace.getValue()!= null? Boolean.parseBoolean(prefShowIdNamespace.getValue()): null;
+ isAllowOverrideShowIDNamspace = prefShowIdNamespace.isAllowOverride();
+
+
+ prefShowNamespace = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowNamespaceInSource);
+ if (prefShowNamespace == null){
+ prefShowNamespace = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowNamespaceInSource, null);
+ prefShowNamespace.setAllowOverride(true);
+ }
+ isShowNamespace = prefShowNamespace.getValue()!= null? Boolean.parseBoolean(prefShowNamespace.getValue()): null;
+ isAllowOverrideShowNamspace = prefShowNamespace.isAllowOverride();
+ }
+}
setPreferenceStore(PreferencesUtil.getPreferenceStore());\r
distributionEditorPref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DistributionEditorActivated);\r
overrideActivated = PreferencesUtil.getBooleanValue(\r
- PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()), true);\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()), true) != null? PreferencesUtil.getBooleanValue(\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.DistributionEditorActivated.getKey()), true):false;\r
\r
if (distributionEditorPref != null) {\r
if (distributionEditorPref.isAllowOverride() ) {\r
\r
} else {\r
isEditorActivated = Boolean.valueOf(distributionEditorPref.getValue());\r
-\r
}\r
\r
} else {\r
\r
prefAreaDisplay = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DisplayOfAreasInDistributionEditor);\r
overrideAreaDisplay = PreferencesUtil.getBooleanValue(\r
- PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), true);\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), true) != null? PreferencesUtil.getBooleanValue(\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfAreasInDistributionEditor.getKey()), true): false;\r
+\r
if (prefAreaDisplay != null) {\r
if (prefAreaDisplay.isAllowOverride()){\r
if (overrideActivated) {\r
\r
prefStatusDisplay = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DisplayOfStatus);\r
overrideStatusDisplay = PreferencesUtil\r
- .getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()), true);\r
+ .getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()), true) != null? PreferencesUtil\r
+ .getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatus.getKey()), true): false;\r
if (prefStatusDisplay != null) {\r
if (prefStatusDisplay.isAllowOverride()){\r
if (overrideStatusDisplay) {\r
\r
prefStatusDisplayInCombo = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DisplayOfStatusInCombo);\r
overrideStatusDisplayCombo = PreferencesUtil\r
- .getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatusInCombo.getKey()), true);\r
+ .getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatusInCombo.getKey()), true) != null? PreferencesUtil\r
+ .getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.DisplayOfStatusInCombo.getKey()), true): false;\r
if (prefStatusDisplayInCombo != null) {\r
if (prefStatusDisplayInCombo.isAllowOverride()){\r
if (overrideStatusDisplayCombo) {\r
\r
prefAreaSort = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.AreasSortedInDistributionEditor);\r
overrideOrderAreas = PreferencesUtil.getBooleanValue(\r
- PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()), true);\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()), true) != null? PreferencesUtil.getBooleanValue(\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.AreasSortedInDistributionEditor.getKey()), true): false;\r
if (prefAreaSort != null) {\r
if (prefAreaSort.isAllowOverride()){\r
if(overrideOrderAreas) {\r
\r
prefRank = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowRankInDistributionEditor);\r
overrideRank = PreferencesUtil.getBooleanValue(\r
- PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()), true);\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()), true) != null? PreferencesUtil.getBooleanValue(\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowRankInDistributionEditor.getKey()), true): false;\r
if (prefRank != null) {\r
if (prefRank.isAllowOverride()){\r
if(overrideRank) {\r
ownDescriptionForDistributionEditor = PreferencesUtil.isShowRankInChecklistEditor();\r
// allowOverrideOwnDescriptionForDistributionEditor = true;\r
overrideOwnDescriptionForDistributionEditor = PreferencesUtil.getBooleanValue(\r
- PreferencesUtil.prefOverrideKey(PreferencePredicate.OwnDescriptionForDistributionEditor.getKey()), true);\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.OwnDescriptionForDistributionEditor.getKey()), true) != null? PreferencesUtil.getBooleanValue(\r
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.OwnDescriptionForDistributionEditor.getKey()), true): false;\r
//prefOwnDescription = CdmPreference.NewTaxEditorInstance(PreferencePredicate.OwnDescriptionForDistributionEditor, PreferencePredicate.OwnDescriptionForDistributionEditor.getDefaultValue() != null ? PreferencePredicate.OwnDescriptionForDistributionEditor.getDefaultValue().toString(): null);\r
}\r
\r
public class GeneralPreferencePage extends CdmPreferencePage implements SelectionListener{
- protected boolean isShowIOMenu;
+ protected Boolean isShowIOMenu;
// protected boolean isShowMediaView;
- protected boolean isShowCheckListPerspective;
- protected boolean isShowTaxonNodeWizard;
+ protected Boolean isShowCheckListPerspective;
+ protected Boolean isShowTaxonNodeWizard;
protected boolean isAllowOverrideShowIOMenu;
protected boolean isAllowOverrideShowMediaView;
protected boolean isAllowOverrideShowCheckListPerspective;
isAdminPreference);
showIOMenuButton.addSelectionListener(this);
- if (isShowIOMenu){
+
+ if (isShowIOMenu == null || !isOverrideShowIOMenu){
showIOMenuButton.select(0);
- }else{
+ }else if (isShowIOMenu){
showIOMenuButton.select(1);
+ }else{
+ showIOMenuButton.select(2);
}
if (isAdminPreference){
allowOverrideShowIOMenuButton = createAllowOverrideButton(composite);
isAdminPreference);
showChecklistPerspectiveButton.addSelectionListener(this);
- if (isShowCheckListPerspective){
+ if (isShowCheckListPerspective == null || !isOverrideShowCheckListPerspective){
showChecklistPerspectiveButton.select(0);
- }else{
+ }else if (isShowCheckListPerspective){
showChecklistPerspectiveButton.select(1);
+ }else{
+ showChecklistPerspectiveButton.select(2);
}
if (isAdminPreference){
}else{
showTaxonNodeWizardButton.select(1);
}
-
+ if (isShowTaxonNodeWizard == null || !isOverrideShowTaxonNodeWizard){
+ showTaxonNodeWizardButton.select(0);
+ }else if (isShowTaxonNodeWizard){
+ showTaxonNodeWizardButton.select(1);
+ }else{
+ showTaxonNodeWizardButton.select(2);
+ }
showTaxonNodeWizardButton.addSelectionListener(this);
CdmPreferenceCache cache = CdmPreferenceCache.instance();
isShowIOMenu = PreferencesUtil.getBooleanValue(PreferencePredicate.ShowImportExportMenu.getKey(), true);
- isOverrideShowIOMenu = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowImportExportMenu.getKey()), true);
+
+ isOverrideShowIOMenu = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowImportExportMenu.getKey()), true) != null?
+ PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowImportExportMenu.getKey()), true): false;
PrefKey key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowImportExportMenu);
CdmPreference pref = cache.findBestMatching(key);
if (pref != null){
}
isShowCheckListPerspective = PreferencesUtil.getBooleanValue(PreferencePredicate.ShowChecklistPerspective.getKey(), true);
- isOverrideShowCheckListPerspective = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowChecklistPerspective.getKey()), true);
+
+ isOverrideShowCheckListPerspective = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowChecklistPerspective.getKey()), true) != null? PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowChecklistPerspective.getKey()), true): false;
key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowChecklistPerspective);
pref = cache.findBestMatching(key);
if (pref != null){
}
isShowTaxonNodeWizard = PreferencesUtil.getBooleanValue(PreferencePredicate.ShowTaxonNodeWizard.getKey(), true);
- isOverrideShowTaxonNodeWizard = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowTaxonNodeWizard.getKey()), true);
+ isOverrideShowTaxonNodeWizard = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowTaxonNodeWizard.getKey()), true) != null? PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowTaxonNodeWizard.getKey()), true): false;
key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowTaxonNodeWizard);
pref = cache.findBestMatching(key);
if (pref != null){
public void widgetSelected(SelectionEvent e) {
if (e.getSource().equals(this.showIOMenuButton)) {
String text = showIOMenuButton.getText();
- text = text.replace(Messages.Preference_Use_Default, "");
+ if (text.equals(Messages.Preference_Use_Default)){
+ isOverrideShowIOMenu = false;
+ }else{
+ isOverrideShowIOMenu = true;
+ }
if (text.equals(SHOW)){
isShowIOMenu = true;
}else{
}
if (e.getSource().equals(this.showChecklistPerspectiveButton)) {
String text = showChecklistPerspectiveButton.getText();
- text = text.replace(Messages.Preference_Use_Default, "");
+ if (text.equals(Messages.Preference_Use_Default)){
+ isOverrideShowCheckListPerspective = false;
+ }else{
+ isOverrideShowCheckListPerspective = true;
+ }
if (text.equals(SHOW)){
isShowCheckListPerspective = true;
}else{
}
if (e.getSource().equals(this.showTaxonNodeWizardButton)) {
String text = showTaxonNodeWizardButton.getText();
- text = text.replace(Messages.Preference_Use_Default, "");
+ if (text.equals(Messages.Preference_Use_Default)){
+ isOverrideShowTaxonNodeWizard = false;
+ }else{
+ isOverrideShowTaxonNodeWizard = true;
+ }
if (text.equals(SHOW)){
isShowTaxonNodeWizard = true;
}else{
isAllowOverride = nameDetailsPref.isAllowOverride();
}
- isOverride = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.NameDetailsView.getKey()), true);
+ isOverride = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.NameDetailsView.getKey()), true) != null? PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.NameDetailsView.getKey()), true): false;
nameDetailsConfig = PreferencesUtil.getPreferredNameDetailsConfiguration(true);
}
}
}
public static boolean getBooleanValue(String name) {
- return getBooleanValue(name, false);
+ Boolean result = getBooleanValue(name, false);
+ if (result == null){
+ return false;
+ }else{
+ return result;
+ }
+
}
- public static boolean getBooleanValue(String name, boolean local) {
+ public static Boolean getBooleanValue(String name, boolean local) {
if (CdmStore.isActive()){
CdmPreference pref = getDBPreferenceValue(name);
if (local || pref == null || (pref != null && pref.isAllowOverride() && override)){
String dbSpecific = prefKey(name);
- return getPreferenceStore().getBoolean(dbSpecific);
+ if (getPreferenceStore().contains(dbSpecific)){
+ return getPreferenceStore().getBoolean(dbSpecific);
+ }else{
+ return null;
+ }
}else{
return Boolean.valueOf(pref.getValue());
}
public static void setPreferencesToDB(CdmPreference preference, boolean setDefault){
ICdmRepository controller;
-
-
try{
if(CdmStore.isActive()){
controller = CdmStore.getCurrentApplicationConfiguration();
}
public static boolean getFilterCommonNameReferences(){
- return getBooleanValue(PreferencesUtil.FILTER_COMMON_NAME_REFERENCES);
+ Boolean result = getBooleanValue(PreferencesUtil.FILTER_COMMON_NAME_REFERENCES);
+ if (result == null){
+ return false;
+ }
+ return result;
}
public static void updateDBPreferences() {
overrideShowSpecimenRelatedIssues = PreferencesUtil.getBooleanValue(
- PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowSpecimen.getKey()), true);
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowSpecimen.getKey()), true) != null? PreferencesUtil.getBooleanValue(
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowSpecimen.getKey()), true): false;
PrefKey key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowSpecimen);
showSpecimenPref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowSpecimen);
key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowCollectingAreasInGeneralSection);
showCollectingAreaInGeneralSection = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowCollectingAreasInGeneralSection);
overrideShowCollectionAreaInGeneralSection = PreferencesUtil.getBooleanValue(
- PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowCollectingAreasInGeneralSection.getKey()), true);
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowCollectingAreasInGeneralSection.getKey()), true) != null? PreferencesUtil.getBooleanValue(
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowCollectingAreasInGeneralSection.getKey()), true): false;
allowOverrideShowCollectingAreaInGeneralSection = showCollectingAreaInGeneralSection != null ? showCollectingAreaInGeneralSection.isAllowOverride():true;
if (showCollectingAreaInGeneralSection != null) {
if (showCollectingAreaInGeneralSection.isAllowOverride() ) {
key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.DeterminationOnlyForFieldUnits);
showDeterminationOnlyForFieldUnits = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.DeterminationOnlyForFieldUnits);
overrideDeterminationOnlyForFieldUnits = PreferencesUtil.getBooleanValue(
- PreferencesUtil.prefOverrideKey(PreferencePredicate.DeterminationOnlyForFieldUnits.getKey()), true);
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.DeterminationOnlyForFieldUnits.getKey()), true) != null? PreferencesUtil.getBooleanValue(
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.DeterminationOnlyForFieldUnits.getKey()), true): false;
if (showDeterminationOnlyForFieldUnits != null) {
if (showDeterminationOnlyForFieldUnits.isAllowOverride() ) {
if (overrideDeterminationOnlyForFieldUnits){
key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowTaxonAssociations);
showTaxonAssociation = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowTaxonAssociations);
overrideShowTaxonAssociation = PreferencesUtil.getBooleanValue(
- PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowTaxonAssociations.getKey()), true);
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowTaxonAssociations.getKey()), true) != null? PreferencesUtil.getBooleanValue(
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowTaxonAssociations.getKey()), true): false;
if (showTaxonAssociation != null) {
if (showTaxonAssociation.isAllowOverride() ) {
if (overrideShowTaxonAssociation){
key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowLifeForm);
showLifeForm = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowLifeForm);
overrideShowLifeForm = PreferencesUtil.getBooleanValue(
- PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowLifeForm.getKey()), true);
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowLifeForm.getKey()), true) != null? PreferencesUtil.getBooleanValue(
+ PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowLifeForm.getKey()), true): false;
if (showLifeForm != null) {
if (showLifeForm.isAllowOverride() ) {
if (overrideShowLifeForm){
*/
package eu.etaxonomy.taxeditor.preference;
-import org.eclipse.jface.preference.BooleanFieldEditor;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import eu.etaxonomy.cdm.model.metadata.CdmPreference;
+import eu.etaxonomy.cdm.model.metadata.CdmPreference.PrefKey;
+import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
+import eu.etaxonomy.cdm.model.metadata.PreferenceSubject;
import eu.etaxonomy.taxeditor.l10n.Messages;
-import eu.etaxonomy.taxeditor.preference.menu.FieldEditorPreferencePageE4;
+import eu.etaxonomy.taxeditor.preference.menu.CdmPreferencePage;
/**
* @author k.luther
* @since 18.01.2019
*
*/
-public class SupplementalDataPreferences extends FieldEditorPreferencePageE4 {
+public class SupplementalDataPreferences extends CdmPreferencePage implements SelectionListener{
+
+ protected Boolean isShowIDNamspace;
+ protected Boolean isShowNamespace;
+
+ protected boolean isAllowOverrideShowIDNamspace;
+ protected boolean isAllowOverrideShowNamspace;
+
+ protected boolean isOverrideShowIDNamspace;
+ protected boolean isOverrideShowNamspace;
+
+
+ protected Combo showIDNamspaceButton;
+ protected Button allowOverrideShowIDNamspaceButton;
+ protected Combo showNamspaceButton;
+ protected Button allowOverrideNamspaceButton;
+
+ final String SHOW = Messages.GeneralPreference_yes;
+ final String DO_NOT_SHOW = Messages.GeneralPreference_no;
/**
* {@inheritDoc}
*/
@Override
- protected void createFieldEditors() {
- addField(new BooleanFieldEditor(PreferencesUtil.createPreferenceString(IPreferenceKeys.SHOW_DEBUG_INFORMATION),
- Messages.SupplementalDataPreferences_0,
- getFieldEditorParent()));
+ protected Control createContents(Composite parent) {
+ getValues();
+ final Composite composite = createComposite(parent);
+
+ GridData gridData = createTextGridData();
+
+ Label separator= new Label(composite, SWT.HORIZONTAL | SWT.SEPARATOR);
+ separator.setLayoutData(gridData);
+ separator.setVisible(false);
+
+ showIDNamspaceButton = createBooleanCombo(composite, SHOW, DO_NOT_SHOW, PreferencePredicate.ShowIdInSource, "Show ID in Namespace in Source",
+ isAdminPreference);
+
+ showIDNamspaceButton.addSelectionListener(this);
+
+ if (isShowIDNamspace == null || (!isOverrideShowIDNamspace && !isAdminPreference)){
+ showIDNamspaceButton.select(0);
+ }else if (isShowIDNamspace){
+ showIDNamspaceButton.select(1);
+ }else{
+ showIDNamspaceButton.select(2);
+ }
+ if (isAdminPreference){
+ allowOverrideShowIDNamspaceButton = createAllowOverrideButton(composite);
+
+ allowOverrideShowIDNamspaceButton.setSelection(isAllowOverrideShowIDNamspace);
+ allowOverrideShowIDNamspaceButton.addSelectionListener(new SelectionAdapter(){
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ isAllowOverrideShowIDNamspace = allowOverrideShowIDNamspaceButton.getSelection();
+ setApply(true);
+ }
+ });
+ }
+
+
+ showNamspaceButton = createBooleanCombo(composite, SHOW, DO_NOT_SHOW, PreferencePredicate.ShowNamespaceInSource, "Show Namespace in Source",
+ isAdminPreference);
+
+ showNamspaceButton.addSelectionListener(this);
+ if (isShowNamespace == null || (!isOverrideShowNamspace && !isAdminPreference)){
+ showNamspaceButton.select(0);
+ }else if (isShowNamespace){
+ showNamspaceButton.select(1);
+ }else{
+ showNamspaceButton.select(2);
+ }
+
+ if (isAdminPreference){
+ allowOverrideNamspaceButton = createAllowOverrideButton(composite);
+ allowOverrideNamspaceButton.setSelection(isAllowOverrideShowNamspace);
+ allowOverrideNamspaceButton.addSelectionListener(new SelectionAdapter(){
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ isAllowOverrideShowNamspace = allowOverrideNamspaceButton.getSelection();
+ setApply(true);
+ }
+ });
+ }
+ if (!isAllowOverrideShowIDNamspace && !isAdminPreference){
+ showIDNamspaceButton.setEnabled(false);
+ }
+ if (!isAllowOverrideShowNamspace && !isAdminPreference){
+ showNamspaceButton.setEnabled(false);
+ }
+
+
+ return composite;
+ }
+
+
+
+ @Override
+ public boolean performOk() {
+ if (isAllowOverrideShowIDNamspace){
+ PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowIdInSource.getKey()), isOverrideShowIDNamspace);
+ PreferencesUtil.setBooleanValue(PreferencePredicate.ShowIdInSource.getKey(), isShowIDNamspace);
+ }
+ if (isAllowOverrideShowNamspace){
+ PreferencesUtil.setBooleanValue(PreferencePredicate.ShowNamespaceInSource.getKey(), isShowNamespace);
+ PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowNamespaceInSource.getKey()), isOverrideShowNamspace);
+ }
+
+
+ return true;
+ }
+ @Override
+ protected void getValues(){
+ isAdminPreference = false;
+
+ CdmPreferenceCache cache = CdmPreferenceCache.instance();
+ isShowIDNamspace = PreferencesUtil.getBooleanValue(PreferencePredicate.ShowIdInSource.getKey(), true);
+ isOverrideShowIDNamspace = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowIdInSource.getKey()), true) != null?PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowIdInSource.getKey()), true): false;
+ PrefKey key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowIdInSource);
+ CdmPreference pref = cache.findBestMatching(key);
+ if (pref != null){
+ isAllowOverrideShowIDNamspace = pref.isAllowOverride();
+ }else{
+ isAllowOverrideShowIDNamspace = true;
+ }
+
+ isShowNamespace = PreferencesUtil.getBooleanValue(PreferencePredicate.ShowNamespaceInSource.getKey(), true);
+ isOverrideShowNamspace = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowNamespaceInSource.getKey()), true) != null? PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowNamespaceInSource.getKey()), true):false;
+ key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.ShowNamespaceInSource);
+ pref = cache.findBestMatching(key);
+ if (pref != null){
+ isAllowOverrideShowNamspace = pref.isAllowOverride();
+ }else{
+ isAllowOverrideShowNamspace = true;
+ }
+
+
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ if (e.getSource().equals(this.showIDNamspaceButton)) {
+ String text = showIDNamspaceButton.getText();
+ // text = text.replace(Messages.Preference_Use_Default, "");
+ if (text.equals(Messages.Preference_Use_Default)){
+ isOverrideShowIDNamspace = false;
+ }else{
+ isOverrideShowIDNamspace = true;
+ }
+ if (text.equals(SHOW)){
+ isShowIDNamspace = true;
+
+ }else{
+ isShowIDNamspace = false;
+ }
+ }
+ if (e.getSource().equals(this.showNamspaceButton)) {
+ String text = showNamspaceButton.getText();
+ if (text.equals(Messages.Preference_Use_Default)){
+ isOverrideShowNamspace = false;
+ }else{
+ isOverrideShowNamspace = true;
+ }
+ if (text.equals(SHOW)){
+ isShowNamespace = true;
+ }else{
+ isShowNamespace = false;
+ }
+ }
+
+ this.setApply(true);
+
+
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void widgetDefaultSelected(SelectionEvent e) {
+ // TODO Auto-generated method stub
+
}
}
List<T> filteredTerms = new ArrayList<T>();
List<T> terms = TermStore.getTerms(clazz);
- if (uuidList.isEmpty()){
+ if (uuidList == null || uuidList.isEmpty()){
return terms;
}
for (T term : terms){
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionListener;
+import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
import eu.etaxonomy.cdm.model.reference.OriginalSourceBase;
import eu.etaxonomy.cdm.model.reference.OriginalSourceType;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
import eu.etaxonomy.taxeditor.ui.combo.EnumComboElement;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
.createEnumComboElement(OriginalSourceType.class,
formElement, new OriginalSourceTypeComparator(getEntity()), style);
super.createControls(formElement, style);
- text_idInSource = formFactory.createTextWithLabelElement(formElement, "ID in Source", null, style);
- text_idNamespace = formFactory.createTextWithLabelElement(formElement, "ID Namespace", null, style);
+ if (PreferencesUtil.getBooleanValue(PreferencePredicate.ShowIdInSource.getKey())){
+ text_idInSource = formFactory.createTextWithLabelElement(formElement, "ID in Source", null, style);
+ }
+ if (PreferencesUtil.getBooleanValue(PreferencePredicate.ShowNamespaceInSource.getKey())){
+ text_idNamespace = formFactory.createTextWithLabelElement(formElement, "ID Namespace", null, style);
+ }
text_originaleNameString = formFactory.createTextWithLabelElement(
formElement, "Original Information", null, SWT.NULL);
import org.eclipse.swt.events.SelectionListener;
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
+import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
import eu.etaxonomy.taxeditor.store.StoreUtil;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
@Override
public void setEntity(IdentifiableSource entity) {
super.setEntity(entity);
- text_idInSource.setText(entity.getIdInSource());
- text_idNamespace.setText(entity.getIdNamespace());
+ if (PreferencesUtil.getBooleanValue(PreferencePredicate.ShowIdInSource.getKey())){
+ text_idInSource.setText(entity.getIdInSource());
+ }
+ if (PreferencesUtil.getBooleanValue(PreferencePredicate.ShowNamespaceInSource.getKey())){
+ text_idNamespace.setText(entity.getIdNamespace());
+ }
selection_reference.setEntity(entity.getCitation());
text_referenceDetail.setText(entity.getCitationMicroReference());