ref #8489: adapt commonname named area voc selection to other voc preferences
authorKatja Luther <k.luther@bgbm.org>
Fri, 13 Sep 2019 09:22:26 +0000 (11:22 +0200)
committerKatja Luther <k.luther@bgbm.org>
Fri, 13 Sep 2019 09:22:26 +0000 (11:22 +0200)
eu.etaxonomy.taxeditor.store/plugin.xml
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/CommonNameVocabularyAdminPreference.java [deleted file]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/CommonNameVocabularyAdminPreferencePage.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/CommonNameVocabularyPreference.java [deleted file]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/CommonNameVocabularyPreferencePage.java [new file with mode: 0755]

index af07e083636e9b88061f64cc0edcddb67f03d2b4..8c85146097484bcc66ab7a7c7efcaf115165d226 100755 (executable)
    </page>
       <page
             category="eu.etaxonomy.taxeditor.preferences.description"
-            class="eu.etaxonomy.taxeditor.preference.CommonNameVocabularyPreference"
+            class="eu.etaxonomy.taxeditor.preference.CommonNameVocabularyPreferencePage"
             id="eu.etaxonomy.taxeditor.store.vocabularyPreference"
             name="%page.name.47">
       </page>
    </page>
    <page
          category="eu.etaxonomy.taxeditor.preferences.description"
-         class="eu.etaxonomy.taxeditor.databaseAdmin.preferencePage.CommonNameVocabularyAdminPreference"
+         class="eu.etaxonomy.taxeditor.databaseAdmin.preferencePage.CommonNameVocabularyAdminPreferencePage"
          id="eu.etaxonomy.taxeditor.store.vocabularyAdminPreference"
          name="%page.name.47">
    </page>
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/CommonNameVocabularyAdminPreference.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/CommonNameVocabularyAdminPreference.java
deleted file mode 100755 (executable)
index 76730b6..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-/**
-* Copyright (C) 2018 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 java.util.List;
-import java.util.UUID;
-
-import eu.etaxonomy.cdm.api.service.IVocabularyService;
-import eu.etaxonomy.cdm.model.metadata.CdmPreference;
-import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
-import eu.etaxonomy.cdm.model.term.TermType;
-import eu.etaxonomy.taxeditor.preference.CommonNameVocabularyPreference;
-import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
-import eu.etaxonomy.taxeditor.store.CdmStore;
-
-/**
- * @author k.luther
- * @since 05.10.2018
- *
- */
-public class CommonNameVocabularyAdminPreference extends CommonNameVocabularyPreference implements IE4AdminPreferencePage {
-
-
-
-
-    @Override
-    public boolean performOk() {
-        if (!isApply()){
-            return true;
-        }
-        PreferencesUtil.setPreferenceToDB(pref);
-        PreferencesUtil.updateDBPreferences();
-
-        return true;
-
-    }
-
-    @Override
-    protected void performDefaults() {
-        pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.CommonNameAreaVocabularies, null);
-        pref.setAllowOverride(true);
-
-        super.performDefaults();
-    }
-
-    @Override
-    public void getValues() {
-        this.isAdminPreference = true;
-        setPreferenceStore(PreferencesUtil.getPreferenceStore());
-        pref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.CommonNameAreaVocabularies);
-        if (pref != null){
-            allowOverride = pref.isAllowOverride();
-            if (pref.getValue() != null){
-                List<UUID> uuids = PreferencesUtil.createUuidList(pref.getValue());
-                vocabularies = CdmStore.getService(IVocabularyService.class).findVocabularyDtoByVocabularyUuids(uuids);
-            }else{
-                vocabularies = CdmStore.getService(IVocabularyService.class).findVocabularyDtoByTermType(TermType.NamedArea);
-            }
-
-        }else{
-            pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.CommonNameAreaVocabularies, "");
-            allowOverride = true;
-            vocabularies = CdmStore.getService(IVocabularyService.class).findVocabularyDtoByTermType(TermType.NamedArea);
-        }
-    }
-}
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/CommonNameVocabularyAdminPreferencePage.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/CommonNameVocabularyAdminPreferencePage.java
new file mode 100755 (executable)
index 0000000..cc21f7e
--- /dev/null
@@ -0,0 +1,31 @@
+/**
+* Copyright (C) 2018 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.PreferencePredicate;
+import eu.etaxonomy.cdm.model.term.TermType;
+import eu.etaxonomy.taxeditor.preference.CommonNameVocabularyPreferencePage;
+
+/**
+ * @author k.luther
+ * @since 05.10.2018
+ *
+ */
+public class CommonNameVocabularyAdminPreferencePage extends CommonNameVocabularyPreferencePage implements IE4AdminPreferencePage {
+
+
+    public CommonNameVocabularyAdminPreferencePage(){
+        isAdminPreference = true;
+        setPredicate(PreferencePredicate.CommonNameAreaVocabularies);
+        type = TermType.NamedArea;
+
+    }
+
+
+}
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/CommonNameVocabularyPreference.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/CommonNameVocabularyPreference.java
deleted file mode 100755 (executable)
index 13b88db..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-/**
-* Copyright (C) 2018 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.preference;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-
-import eu.etaxonomy.cdm.api.application.ICdmRepository;
-import eu.etaxonomy.cdm.api.service.IPreferenceService;
-import eu.etaxonomy.cdm.model.metadata.CdmPreference;
-import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
-import eu.etaxonomy.cdm.persistence.dto.TermVocabularyDto;
-import eu.etaxonomy.taxeditor.l10n.Messages;
-import eu.etaxonomy.taxeditor.store.CdmStore;
-import eu.etaxonomy.taxeditor.ui.element.CommandHandlerButton;
-
-/**
- * @author k.luther
- * @since 05.10.2018
- *
- */
-public class CommonNameVocabularyPreference extends AbstractVocabularySelectionPreference implements IE4PreferencePage {
-
-    protected boolean allowOverride;
-    protected CdmPreference pref = null;
-
-
-    @Override
-    protected Control createContents(Composite parent) {
-
-        Composite composite = createComposite(parent);
-        getValues();
-        final CLabel commonNameAreaSelectionLabel = new CLabel(composite, SWT.NULL);
-        commonNameAreaSelectionLabel.setText("Actually selected vocabularies, for editing the selection use the button below");
-        createTable(composite);
-        final CLabel commonNameAreaLabel = new CLabel(composite, SWT.NULL);
-        commonNameAreaLabel.setText(Messages.VokabularyAdminPreferences_SELECT_VOCABULARY_TEXT);
-
-        GridData gridData = new GridData();
-        gridData.horizontalSpan = 2;
-        commonNameAreaLabel.setLayoutData(gridData);
-
-        final CommandHandlerButton button_opencommonNameAreaWizard = new CommandHandlerButton(composite, SWT.PUSH,
-                "eu.etaxonomy.taxeditor.handler.e4.OpenCommonNameAreaWizardHandler"); //$NON-NLS-1$
-
-
-        button_opencommonNameAreaWizard.setEnabled(true);
-        button_opencommonNameAreaWizard.setText(Messages.GeneralPreference_open_common_name_area_selection);
-
-
-        return composite;
-    }
-
-    @Override
-    public boolean performOk() {
-        if (pref == null){
-            return true;
-        }
-        ICdmRepository controller = CdmStore.getCurrentApplicationConfiguration();
-
-        if(controller!=null){
-            IPreferenceService service = controller.getPreferenceService();
-
-            CdmPreference pref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.CommonNameAreaVocabularies);
-            if(pref==null){
-                pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.CommonNameAreaVocabularies, "");
-            }
-            pref.setAllowOverride(allowOverride);
-            if ( pref.getValue() == null && allowOverride){
-                service.remove(pref.getKey());
-            }else{
-                service.set(pref);
-            }
-
-            PreferencesUtil.updateDBPreferences();
-        }
-        return true;
-
-    }
-
-
-
-    @Override
-    protected void performDefaults() {
-        pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.CommonNameAreaVocabularies, null);
-        allowOverride = true;
-
-        super.performDefaults();
-    }
-    @Override
-    public void createTableRow(CdmPreference pref) {
-        String namedAreaString = null;
-
-        for (TermVocabularyDto voc: vocabularies){
-            TableItem item = new TableItem(table, SWT.NONE);
-            item.setText(0, voc.getRepresentations().iterator().next().getLabel());
-        }
-
-
-//
-    }
-
-
-    @Override
-    public boolean isApply() {
-
-        return super.isApply();
-    }
-
-    public void createTable(Composite composite) {
-        table = new Table(
-                composite, SWT.BORDER /*| SWT.CHECK */| SWT.FULL_SELECTION | SWT.SINGLE
-        );
-
-        table.setLinesVisible(true);
-        table.setHeaderVisible(true);
-        GridData tableGrid = createTextGridData();
-        table.setLayoutData(tableGrid);
-
-
-        TableColumn column = new TableColumn(table, SWT.NONE);
-        column.setText("Vocabulary");
-        column.setWidth(500);
-
-        if (pref.getValue() != null){
-            createTableRow(pref);
-        }
-
-
-    }
-
-    @Override
-    public void getValues() {
-        this.isAdminPreference = false;
-        pref = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.CommonNameAreaVocabularies);
-
-        if (pref != null){
-            allowOverride = pref.isAllowOverride();
-        }else{
-            pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.CommonNameAreaVocabularies, "");
-            allowOverride = true;
-        }
-        fillVocabularies(pref);
-
-    }
-
-
-}
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/CommonNameVocabularyPreferencePage.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/CommonNameVocabularyPreferencePage.java
new file mode 100755 (executable)
index 0000000..1fb18f9
--- /dev/null
@@ -0,0 +1,38 @@
+/**
+* Copyright (C) 2018 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.preference;
+
+import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
+import eu.etaxonomy.cdm.model.term.TermType;
+import eu.etaxonomy.taxeditor.preference.wizard.GeneralVocabularyPreferencePage;
+
+/**
+ * @author k.luther
+ * @since 05.10.2018
+ *
+ */
+public class CommonNameVocabularyPreferencePage extends GeneralVocabularyPreferencePage implements IE4PreferencePage {
+
+
+    public CommonNameVocabularyPreferencePage(){
+        isAdminPreference = false;
+        setPredicate(PreferencePredicate.CommonNameAreaVocabularies);
+        type = TermType.NamedArea;
+
+    }
+
+
+
+
+
+
+
+
+
+}