fix #6198 Remove synonymrelationships in TaxEditor
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / taxon / TaxonBaseDetailElement.java
index 8c956f1111db6679aecb39feee13ea2ab2b34856..eab5fabfe7ee584fdea4d872e8fc4634ca538d90 100644 (file)
@@ -15,13 +15,17 @@ import java.util.Arrays;
 import org.eclipse.jface.util.PropertyChangeEvent;
 import org.eclipse.swt.SWT;
 
+import eu.etaxonomy.cdm.model.common.TermType;
 import eu.etaxonomy.cdm.model.reference.Reference;
+import eu.etaxonomy.cdm.model.taxon.Synonym;
+import eu.etaxonomy.cdm.model.taxon.SynonymType;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
 import eu.etaxonomy.cdm.persistence.hibernate.permission.Role;
 import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 import eu.etaxonomy.taxeditor.store.CdmStore;
+import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
 import eu.etaxonomy.taxeditor.ui.element.CheckboxElement;
 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
@@ -30,10 +34,6 @@ import eu.etaxonomy.taxeditor.ui.section.AbstractIdentifiableEntityDetailElement
 import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
 
 /**
- * <p>
- * TaxonBaseDetailElement class.
- * </p>
- *
  * @author n.hoffmann
  * @created Feb 26, 2010
  * @version 1.0
@@ -52,20 +52,10 @@ public class TaxonBaseDetailElement extends AbstractIdentifiableEntityDetailElem
 
        private CheckboxElement checkbox_published;
 
-//     private SynonymRelationshipDetailSection sectionSynonymRelationship;
-
-       /**
-        * <p>
-        * Constructor for TaxonBaseDetailElement.
-        * </p>
-        *
-        * @param cdmFormFactory
-        *        a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
-        * @param formElement
-        *        a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
-        * @param style
-        *            a int.
-        */
+    private TermComboElement<SynonymType> combo_relationshipType;
+    private CheckboxElement checkProParte;
+    private CheckboxElement checkPartial;
+
        public TaxonBaseDetailElement(CdmFormFactory cdmFormFactory,
                        ICdmFormElement formElement, int style) {
                super(cdmFormFactory, formElement);
@@ -113,12 +103,11 @@ public class TaxonBaseDetailElement extends AbstractIdentifiableEntityDetailElem
                                        "Taxon is published", ((Taxon) entity).isPublish(), style);
                }
 
-//#5974
-//             if(entity instanceof Synonym){
-//                 sectionSynonymRelationship = formFactory.createSynonymRelationshipDetailSection(getConversationHolder(), formElement, ExpandableComposite.TWISTIE);
-//                 sectionSynonymRelationship.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
-//                 sectionSynonymRelationship.setEntity((Synonym) entity);
-//             }
+               if(entity instanceof Synonym){
+                   combo_relationshipType = formFactory.createDefinedTermComboElement(TermType.SynonymType, formElement, "Synonym Type", ((Synonym) entity).getType(), style);
+               checkProParte = formFactory.createCheckbox(formElement, "Pro Parte Synonym", null, style);
+               checkPartial= formFactory.createCheckbox(formElement, "Partial Synonym", null, style);
+               }
        }
 
     private void updateCheckboxPublish() {
@@ -164,11 +153,17 @@ public class TaxonBaseDetailElement extends AbstractIdentifiableEntityDetailElem
                        getEntity().setSec(selection_secundum.getSelection());
                } else if (eventSource == text_appendedPhrase) {
                        getEntity().setAppendedPhrase(text_appendedPhrase.getText());
-               }else if (eventSource == text_secundum_microreference) {
+               } else if (eventSource == text_secundum_microreference) {
             getEntity().setSecMicroReference(text_secundum_microreference.getText());
                } else if (eventSource == checkbox_published) {
                    ((Taxon)getEntity()).setPublish(checkbox_published.getSelection());
-               }
+               } else if(eventSource == combo_relationshipType){
+            ((Synonym) getEntity()).setType(combo_relationshipType.getSelection());
+        } else if(eventSource == checkPartial){
+            ((Synonym) getEntity()).setPartial(checkPartial.getSelection());
+        } else if(eventSource == checkProParte){
+            ((Synonym) getEntity()).setProParte(checkProParte.getSelection());
+        }
        }
        @Override
        protected void handleToggleableCacheField() {