Only show "Change Type" when more than one type is available #5565
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / description / DescriptionDetailElement.java
index a4b948615669e059bc9a282fb8e07903d592d4a6..f522ca645165522c7cc5e170c466dcfacef1a18c 100644 (file)
@@ -14,12 +14,11 @@ import org.eclipse.swt.SWT;
 
 import eu.etaxonomy.cdm.model.description.DescriptionBase;
 import eu.etaxonomy.cdm.model.description.FeatureTree;
-import eu.etaxonomy.taxeditor.ui.forms.CdmFormFactory;
-import eu.etaxonomy.taxeditor.ui.forms.ICdmFormElement;
-import eu.etaxonomy.taxeditor.ui.forms.TextWithLabelElement;
-import eu.etaxonomy.taxeditor.ui.forms.CdmFormFactory.SelectionType;
+import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
+import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
+import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
 import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
-import eu.etaxonomy.taxeditor.ui.selection.FeatureTreeSelectionElement;
+import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
 
 /**
  * <p>DescriptionDetailElement class.</p>
@@ -31,13 +30,13 @@ import eu.etaxonomy.taxeditor.ui.selection.FeatureTreeSelectionElement;
 public class DescriptionDetailElement extends AbstractCdmDetailElement<DescriptionBase> {
 
        private TextWithLabelElement detailDescription;
-       private FeatureTreeSelectionElement selection_featureTree;
+       private EntitySelectionElement<FeatureTree> selection_featureTree;
 
        /**
         * <p>Constructor for DescriptionDetailElement.</p>
         *
-        * @param cdmFormFactory a {@link eu.etaxonomy.taxeditor.ui.forms.CdmFormFactory} object.
-        * @param formElement a {@link eu.etaxonomy.taxeditor.ui.forms.ICdmFormElement} object.
+        * @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.
         */
        public DescriptionDetailElement(CdmFormFactory cdmFormFactory,
@@ -48,12 +47,16 @@ public class DescriptionDetailElement extends AbstractCdmDetailElement<Descripti
        /** {@inheritDoc} */
        @Override
        protected void createControls(ICdmFormElement formElement, DescriptionBase entity, int style) {
-               detailDescription = formFactory.createMultilineTextWithLabel(this, "Label", 50, SWT.WRAP);
+               detailDescription = formFactory.createMultiLineTextWithLabel(this, "Label", 50, SWT.WRAP);
                detailDescription.setText(entity.getTitleCache());
                
-//             selection_featureTree = (FeatureTreeSelectionElement) formFactory.createSelectionElement(SelectionType.FEATURE_TREE, getConversationHolder(), formElement, "Feature Tree", null, style);
+               // TODO I initially thought that we can handle the entity's descriptive system with a feature tree 
+               // Since descriptiveSystem is a Set of Features that are present or allowed for the current description, 
+               // it is similar to a FeatureTree (you can get this information from a feature tree) but not the same.
+               // Please correct this once it is clear what descriptive system will be used for in CDM
+//             selection_featureTree = formFactory.createSelectionElement(FeatureTree.class, getConversationHolder(), formElement, "Feature Tree", null, EntitySelectionElement.ALL, style);
        }
-       
+               
        /** {@inheritDoc} */
        @Override
        public void handleEvent(Object eventSource) {
@@ -62,7 +65,8 @@ public class DescriptionDetailElement extends AbstractCdmDetailElement<Descripti
                }
                else if(eventSource == selection_featureTree){
                        FeatureTree featureTree = selection_featureTree.getSelection();
-                       getEntity().setDescriptiveSystem(featureTree.getDistinctFeatures());
+                       //descriptive system is not available anymore since v3.3 
+//                     getEntity().setDescriptiveSystem(featureTree.getDistinctFeatures());
                }
        }
 }