fix for #3557
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / taxon / TaxonRelationshipDetailElement.java
index 7b04da49ee4a53311788e35f97fabc2f7aa40265..9cdcf2ce6df306e49a7d95d786730010e285df1c 100644 (file)
@@ -1,9 +1,9 @@
 // $Id$
 /**
 * Copyright (C) 2009 EDIT
-* European Distributed Institute of Taxonomy 
+* 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.
 */
@@ -18,6 +18,7 @@ import eu.etaxonomy.taxeditor.store.StoreUtil;
 import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
 import eu.etaxonomy.taxeditor.ui.element.CdmPropertyChangeEvent;
+import eu.etaxonomy.taxeditor.ui.element.CheckboxElement;
 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
 import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
 import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
@@ -30,9 +31,11 @@ import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
 public class TaxonRelationshipDetailElement extends AbstractCdmDetailElement<TaxonRelationship> {
 
        private TermComboElement<TaxonRelationshipTypeInverseContainer> combo_taxonRelationshipType;
-       
+
        private EntitySelectionElement<Taxon> selection_relatedTaxon;
-       
+
+       private CheckboxElement checkBoxDoubtful;
+
        public TaxonRelationshipDetailElement(CdmFormFactory formFactory,
                        ICdmFormElement formElement) {
                super(formFactory, formElement);
@@ -42,16 +45,17 @@ public class TaxonRelationshipDetailElement extends AbstractCdmDetailElement<Tax
        protected void createControls(ICdmFormElement formElement,
                        TaxonRelationship entity, int style) {
                combo_taxonRelationshipType = formFactory.createTermComboElement(
-                               TaxonRelationshipTypeInverseContainer.class, 
-                               formElement, "Relationship Type", 
+                               TaxonRelationshipTypeInverseContainer.class,
+                               formElement, "Relationship Type",
                                getTaxonRelationshipTypeInverseContainer(), style);
                combo_taxonRelationshipType.setEnabled(false);
                selection_relatedTaxon = formFactory.createSelectionElement(
-                               Taxon.class, getConversationHolder(), 
-                               formElement, "Related Taxon", getRelatedTaxon(), 
+                               Taxon.class, getConversationHolder(),
+                               formElement, "Related Taxon", getRelatedTaxon(),
                                EntitySelectionElement.SELECTABLE, style);
+               checkBoxDoubtful = formFactory.createCheckbox(formElement, "Relation is doubtful", entity.isDoubtful(), style);
        }
-       
+
        private Taxon getRelatedTaxon() {
                return TaxonRelationshipTypeInverseContainer.RelatedTaxon(getSourceTaxon(), getEntity());
        }
@@ -59,7 +63,7 @@ public class TaxonRelationshipDetailElement extends AbstractCdmDetailElement<Tax
        private TaxonRelationshipTypeInverseContainer getTaxonRelationshipTypeInverseContainer(){
                return TaxonRelationshipTypeInverseContainer.CreateFromSource(getSourceTaxon(), getEntity());
        }
-       
+
        private Taxon getSourceTaxon(){
                IEditorInput editorInput = StoreUtil.getActiveEditorInput();
                return (Taxon) editorInput.getAdapter(Taxon.class);
@@ -76,6 +80,9 @@ public class TaxonRelationshipDetailElement extends AbstractCdmDetailElement<Tax
                                getEntity().setToTaxon(relatedTaxon);
                        }
                }
+               else if(eventSource==checkBoxDoubtful){
+                   getEntity().setDoubtful(checkBoxDoubtful.getSelection());
+               }
                firePropertyChangeEvent(new CdmPropertyChangeEvent(this, null));
        }
 }