- added supportsXYZ flags for Features (#3207)
authorPatric Plitzner <p.plitzner@bgbm.org>
Mon, 28 Oct 2013 08:27:43 +0000 (08:27 +0000)
committerPatric Plitzner <p.plitzner@bgbm.org>
Mon, 28 Oct 2013 08:27:43 +0000 (08:27 +0000)
.gitattributes
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/FeatureDetailElement.java [new file with mode: 0644]

index d7e6941d9eba1c8e7a6ca7d697e136847945de66..63eab2f12103def5cb9306beaaee6e2f9771e2aa 100644 (file)
@@ -1482,6 +1482,7 @@ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/use
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/AbstractTermBaseDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/DefinedTermDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/DefinedTermDetailSection.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/FeatureDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/NamedAreaDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/NamedAreaDetailSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/NamedAreaLevelDetailSection.java -text
index 57681c96a4eb17b0cfacd5801b2b9c03e2f1d3e8..3b471942af7ad20177d0a916f616ad156049a344 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * 
+ *
  */
 package eu.etaxonomy.taxeditor.ui.element;
 
@@ -247,6 +247,7 @@ import eu.etaxonomy.taxeditor.ui.section.userecords.UseRecordDetailElement;
 import eu.etaxonomy.taxeditor.ui.section.userecords.UseRecordDetailSection;
 import eu.etaxonomy.taxeditor.ui.section.vocabulary.DefinedTermDetailElement;
 import eu.etaxonomy.taxeditor.ui.section.vocabulary.DefinedTermDetailSection;
+import eu.etaxonomy.taxeditor.ui.section.vocabulary.FeatureDetailElement;
 import eu.etaxonomy.taxeditor.ui.section.vocabulary.NamedAreaDetailSection;
 import eu.etaxonomy.taxeditor.ui.section.vocabulary.TermVocabularyDetailElement;
 import eu.etaxonomy.taxeditor.ui.section.vocabulary.TermVocabularyDetailSection;
@@ -258,7 +259,7 @@ import eu.etaxonomy.taxeditor.ui.selection.TaxonNodeSelectionElement;
  * <p>
  * CdmFormFactory class.
  * </p>
- * 
+ *
  * @author n.hoffmann
  * @created Feb 24, 2010
  * @version 1.0
@@ -283,9 +284,9 @@ public class CdmFormFactory extends FormToolkit {
                        return true;
                }
        };
-       
+
        /**
-        * 
+        *
         * @author n.hoffmann
         * @date Jan 25, 2010
         *
@@ -298,7 +299,7 @@ public class CdmFormFactory extends FormToolkit {
        }
 
        /**
-        * 
+        *
         * @author n.hoffmann
         * @date Jan 25, 2010
         *
@@ -324,7 +325,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * Constructor for CdmFormFactory.
         * </p>
-        * 
+        *
         * @param display
         *            a {@link org.eclipse.swt.widgets.Display} object.
         * @param selectionProvider
@@ -340,7 +341,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * Constructor for CdmFormFactory.
         * </p>
-        * 
+        *
         * @param display
         *            a {@link org.eclipse.swt.widgets.Display} object.
         */
@@ -350,7 +351,7 @@ public class CdmFormFactory extends FormToolkit {
        }
 
        /**
-        * 
+        *
         */
        private void init() {
                boldFontHolder2 = new BoldFontHolder2();
@@ -360,10 +361,10 @@ public class CdmFormFactory extends FormToolkit {
 
        /**
         * Creates an instance initialized with the correct selectionProvider
-        * 
+        *
         * Make sure to remove the instance when the entityComposite disposes via
         * destroySelectionArbitrator(..)
-        * 
+        *
         * @param entityElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.IEntityElement}
         *            object.
@@ -382,7 +383,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * destroySelectionArbitrator
         * </p>
-        * 
+        *
         * @param selectionArbitrator
      *            a
      *            {@link eu.etaxonomy.taxeditor.ui.element.SelectionArbitrator}
@@ -410,7 +411,7 @@ public class CdmFormFactory extends FormToolkit {
      * Adapts the {@link AbstractCdmFormElement}:<br>
      * - sets the {@link IPropertyChangeListener}s handled by this class
         * </p>
-        * 
+        *
         * @param formElement
         *            a
         *            {@link eu.etaxonomy.taxeditor.ui.element.AbstractCdmFormElement}
@@ -433,7 +434,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * destroyElement
         * </p>
-        * 
+        *
         * @param formElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -474,7 +475,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createEmptyCell
         * </p>
-        * 
+        *
         * @param parent
         *            a {@link org.eclipse.swt.widgets.Composite} object.
         * @return a {@link org.eclipse.swt.widgets.Label} object.
@@ -487,7 +488,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createMultilineTextWithLabel
         * </p>
-        * 
+        *
         * @param labelString
         *            a {@link java.lang.String} object.
         * @param textHeight
@@ -512,7 +513,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createMultiLanguageTextElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -550,7 +551,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createTextWithLabelElement
         * </p>
-        * 
+        *
         * @param labelString
         *            a {@link java.lang.String} object.
         * @param initialText
@@ -597,7 +598,7 @@ public class CdmFormFactory extends FormToolkit {
        }
 
        /**
-        * 
+        *
         * @param parentElement
         * @param labelString
         * @param conversationEnabled
@@ -617,7 +618,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createIntegerTextWithLabelElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -646,7 +647,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createLanguageStringWithLabelElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -673,7 +674,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createLanguageStringWithLabelElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -702,7 +703,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createTextElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -724,7 +725,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createKeyValueViewerElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -749,7 +750,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createTermComboElement
         * </p>
-        * 
+        *
         * @param termComboType
         *            a
         *            {@link eu.eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.TermComboType}
@@ -767,7 +768,7 @@ public class CdmFormFactory extends FormToolkit {
         * @return a {@link eu.etaxonomy.taxeditor.ui.combo.TermComboElement}
         *         object.
         */
-       
+
     public <T extends DefinedTermBase> TermComboElement<T> createTermComboElement(Class<T> termComboType,
             ICdmFormElement parentElement, String labelString, T selection, int style) {
         TermComboElement<T> element = new TermComboElement<T>(this, parentElement, termComboType, labelString,
@@ -776,12 +777,12 @@ public class CdmFormFactory extends FormToolkit {
                parentElement.addElement(element);
                return element;
        }
-       
+
        /**
         * <p>
         * createTermComboElement
         * </p>
-        * 
+        *
         * @param termComboType
         *            a
         *            {@link eu.eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.TermComboType}
@@ -799,12 +800,12 @@ public class CdmFormFactory extends FormToolkit {
         * @return a {@link eu.etaxonomy.taxeditor.ui.combo.TermComboElement}
         *         object.
         */
-       
+
        public <T extends DefinedTermBase> TermComboElement<T> createDefinedTermComboElement(
-                       TermType termType, 
+                       TermType termType,
                        ICdmFormElement parentElement,
-                       String labelString, 
-                       T selection, 
+                       String labelString,
+                       T selection,
                        int style) {
                TermComboElement<T> element = new TermComboElement<T>(this, parentElement, termType, labelString, selection, style);
                adapt(element);
@@ -816,7 +817,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createEnumComboElement
         * </p>
-        * 
+        *
         * @param enumComboType
         *            a
         *            {@link eu.eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.EnumComboType}
@@ -842,7 +843,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createBrowserElement
         * </p>
-        * 
+        *
         * @param imageUri
         *            a {@link java.net.URI} object.
         * @param style
@@ -864,7 +865,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createImageElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -885,7 +886,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createTextActionElement
         * </p>
-        * 
+        *
         * @param labelString
         *            a {@link java.lang.String} object.
         * @param initialText
@@ -913,7 +914,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createCheckbox
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -935,7 +936,7 @@ public class CdmFormFactory extends FormToolkit {
 
        /**
         * Creates a section as a part of the form.
-        * 
+        *
         * @return the section widget
         * @param section
      *            a
@@ -1003,7 +1004,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createToggleableTextField
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1031,7 +1032,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createTimePeriodElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1051,12 +1052,12 @@ public class CdmFormFactory extends FormToolkit {
                parentElement.addElement(element);
                return element;
        }
-       
+
        /**
         * <p>
         * createGatheringEventUnitElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1070,15 +1071,15 @@ public class CdmFormFactory extends FormToolkit {
         *         object.
         */
        public GatheringEventUnitElement createGatheringEventUnitElement(
-                       ICdmFormElement parentElement, 
+                       ICdmFormElement parentElement,
                        String labelString,
-                       DerivedUnitFacade gatheringEvent, 
-                       MinMaxTextSection.UnitType unitType,                    
+                       DerivedUnitFacade gatheringEvent,
+                       MinMaxTextSection.UnitType unitType,
                        int style) {
-               GatheringEventUnitElement element = new GatheringEventUnitElement(this, 
+               GatheringEventUnitElement element = new GatheringEventUnitElement(this,
                                parentElement,
-                               labelString, 
-                               gatheringEvent, 
+                               labelString,
+                               gatheringEvent,
                                unitType,
                                style);
                adapt(element);
@@ -1090,7 +1091,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createPointElement
         * </p>
-        * 
+        *
         * @param style
         *            a int.
         * @param parentElement
@@ -1111,7 +1112,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createDateDetailSection
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1126,12 +1127,12 @@ public class CdmFormFactory extends FormToolkit {
                adapt(section);
                return section;
        }
-       
+
        /**
         * <p>
         * createDateDetailSection
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1151,7 +1152,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createPartialElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1176,7 +1177,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * addSelectionListener
         * </p>
-        * 
+        *
         * @param listener
         *            a {@link org.eclipse.swt.events.SelectionListener} object.
         */
@@ -1188,7 +1189,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * removeSelectionListener
         * </p>
-        * 
+        *
         * @param listener
         *            a {@link org.eclipse.swt.events.SelectionListener} object.
         */
@@ -1205,7 +1206,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * addPropertyChangeListener
         * </p>
-        * 
+        *
         * @param listener
         *            a {@link org.eclipse.jface.util.IPropertyChangeListener}
         *            object.
@@ -1221,7 +1222,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * removePropertyChangeListener
         * </p>
-        * 
+        *
         * @param listener
         *            a {@link org.eclipse.jface.util.IPropertyChangeListener}
         *            object.
@@ -1234,7 +1235,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createHorizontalSeparator
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1252,7 +1253,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createVersionElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1271,7 +1272,7 @@ public class CdmFormFactory extends FormToolkit {
                parentElement.addElement(element);
                return element;
        }
-       
+
        /**
         * @param cdmBaseSection
         * @param object
@@ -1290,7 +1291,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createVersionSection
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1306,7 +1307,7 @@ public class CdmFormFactory extends FormToolkit {
                adapt(section);
                return section;
        }
-       
+
        /**
         * @param parent
         * @param i
@@ -1323,7 +1324,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createEmptyElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1340,7 +1341,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createHeadlineSection
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1359,7 +1360,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createParsingMessageElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -1385,32 +1386,35 @@ public class CdmFormFactory extends FormToolkit {
 
         AbstractFormSection section = new DefinedTermDetailSection(this, definedTermClass, conversation, parentElement,
                 selectionProvider, style);
-       
+
                parentElement.addElement(section);
                adapt(section);
                return section;
-               
+
        }
-       
-       /**
-        * @param definedTermClass
-        * @param formElement
-        * @param style
-        * @return
-        */
-    public AbstractCdmDetailElement createDefinedTermDetailElement(Class definedTermClass, AbstractCdmDetailSection parentElement, int style) {
-               AbstractCdmDetailElement element = null;
-               
-               if (NamedArea.class.isAssignableFrom(definedTermClass)){
-                       element = new eu.etaxonomy.taxeditor.ui.section.vocabulary.NamedAreaDetailElement(this, parentElement);
+
+    /**
+     * @param definedTermClass
+     * @param formElement
+     * @param style
+     * @return
+     */
+    public AbstractCdmDetailElement createDefinedTermDetailElement(Class definedTermClass,
+            AbstractCdmDetailSection parentElement, int style) {
+        AbstractCdmDetailElement element = null;
+
+        if (NamedArea.class.isAssignableFrom(definedTermClass)) {
+            element = new eu.etaxonomy.taxeditor.ui.section.vocabulary.NamedAreaDetailElement(this, parentElement);
+        } else if (definedTermClass.equals(Feature.class)) {
+            element = new FeatureDetailElement(this, parentElement);
         } else {
-                       element = new DefinedTermDetailElement(this, parentElement);
-               }
-               
-               adapt(element);
-               parentElement.addElement(element);
-               return element;
-       }
+            element = new DefinedTermDetailElement(this, parentElement);
+        }
+
+        adapt(element);
+        parentElement.addElement(element);
+        return element;
+    }
 
 
     //--------DetailSections---------
@@ -1624,7 +1628,7 @@ public class CdmFormFactory extends FormToolkit {
         addAndAdaptSection(parentElement, section);
         return section;
                }
-               
+
     public GatheringEventDetailSection createGatheringSection(ConversationHolder conversation, ICdmFormElement parentElement, ISelectionProvider selectionProvider, int style){
         GatheringEventDetailSection section = new GatheringEventDetailSection(this, conversation, parentElement, selectionProvider, style);
         addAndAdaptSection(parentElement, section);
@@ -1817,8 +1821,8 @@ public class CdmFormFactory extends FormToolkit {
         addAndAdaptElement(parentElement, element);
         return element;
     }
-       
-       
+
+
     public GeneralDetailElement createGeneralDetailElement(ICdmFormElement parentElement){
         GeneralDetailElement element = new GeneralDetailElement(this, parentElement);
         addAndAdaptElement(parentElement, element);
@@ -2061,7 +2065,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createEntityCollectionElement
         * </p>
-        * 
+        *
         * @param removeListener
         *            a {@link org.eclipse.swt.events.SelectionListener} object.
         * @param style
@@ -2119,24 +2123,24 @@ public class CdmFormFactory extends FormToolkit {
                } else if (entity instanceof DefinedTerm) {
                        switch(((DefinedTerm)entity).getTermType()) {
                                case Scope:
-                                       element = new ScopeElement(this, 
-                                                       parentElement, 
+                                       element = new ScopeElement(this,
+                                                       parentElement,
                                                        (DefinedTerm) entity,
-                                                       removeListener, 
+                                                       removeListener,
                                                        style);
                                        break;
                                case Modifier:
-                                       element = new ModifierElement(this, 
+                                       element = new ModifierElement(this,
                                                        parentElement,
-                                                       (DefinedTerm) entity, 
-                                                       removeListener, 
+                                                       (DefinedTerm) entity,
+                                                       removeListener,
                                                        style);
                                        break;
                                default:
                                        //FIXME : Actually we should through an exception here
                                        element = null;
                                        break;
-                       
+
                        }
                } else if (entity instanceof Reference) {
             element = new DescriptionSourceElement(this, parentElement, (Reference) entity, removeListener, style);
@@ -2159,19 +2163,19 @@ public class CdmFormFactory extends FormToolkit {
                                case LivingSpecimen:
                                case PreservedSpecimen:
                                case OtherSpecimen:
-                                       element = new SpecimenCollectionDetailElement(this, 
+                                       element = new SpecimenCollectionDetailElement(this,
                                                                parentElement,
-                                                               (DerivedUnit) entity, 
-                                                               removeListener, 
+                                                               (DerivedUnit) entity,
+                                                               removeListener,
                                                                style);
                                        break;
                                default:
-                                       element = new DerivedUnitElement(this, 
+                                       element = new DerivedUnitElement(this,
                                                                parentElement,
-                                                               (DerivedUnit) entity, 
-                                                               removeListener, 
+                                                               (DerivedUnit) entity,
+                                                               removeListener,
                                                                style);
-                       }                       
+                       }
 
                } else if (entity instanceof NamedArea) {
             element = new NamedAreaDetailElement(this, parentElement, (NamedArea) entity, removeListener, style);
@@ -2225,9 +2229,9 @@ public class CdmFormFactory extends FormToolkit {
      * <li>{@link NomenclaturalAuthorTeamSelectionElement} see
      * {@link #createNomenclaturalAuthorTeamSelectionElement(ConversationHolder, ICdmFormElement, String, Team, int, int)}
      * </li>
-        *      </ul>   
+        *      </ul>
         * </p>
-        * 
+        *
         * @param clazz
      *            a {@link Class} object of the type that you want the selection
      *            element to handle
@@ -2253,7 +2257,7 @@ public class CdmFormFactory extends FormToolkit {
                parentElement.addElement(element);
                return element;
        }
-       
+
     public TaxonNodeSelectionElement createTaxonNodeSelectionElement(ConversationHolder conversation,
             ICdmFormElement parentElement, String labelString, TaxonNode selection, int mode, int style) {
         TaxonNodeSelectionElement element = new TaxonNodeSelectionElement(this, conversation, parentElement,
@@ -2262,7 +2266,7 @@ public class CdmFormFactory extends FormToolkit {
                parentElement.addElement(element);
                return element;
        }
-       
+
        public NomenclaturalAuthorTeamSelectionElement createNomenclaturalAuthorTeamSelectionElement(
             ConversationHolder conversation, ICdmFormElement parentElement, String labelString, Team selection,
             int mode, int style) {
@@ -2272,8 +2276,8 @@ public class CdmFormFactory extends FormToolkit {
                parentElement.addElement(element);
                return element;
        }
-       
-       
+
+
        /** {@inheritDoc} */
        public LabelElement createLabel(ICdmFormElement parentElement, String text) {
                LabelElement labelElement = new LabelElement(this, parentElement, text);
@@ -2286,7 +2290,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * Getter for the field <code>selectionProvider</code>.
         * </p>
-        * 
+        *
         * @return a {@link org.eclipse.jface.viewers.ISelectionProvider} object.
         */
        public ISelectionProvider getSelectionProvider() {
@@ -2297,7 +2301,7 @@ public class CdmFormFactory extends FormToolkit {
         * <p>
         * createDetailedDescriptionDetailElement
         * </p>
-        * 
+        *
         * @param parentElement
         *            a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
         *            object.
@@ -2346,7 +2350,7 @@ public class CdmFormFactory extends FormToolkit {
 
        /**
         * Creates a styled text as a part of the form.
-        * 
+        *
         * @param parent
         *            the text parent
         * @param value
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/FeatureDetailElement.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/FeatureDetailElement.java
new file mode 100644 (file)
index 0000000..ee5f287
--- /dev/null
@@ -0,0 +1,85 @@
+// $Id$\r
+/**\r
+* Copyright (C) 2009 EDIT\r
+* European Distributed Institute of Taxonomy\r
+* http://www.e-taxonomy.eu\r
+*\r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+package eu.etaxonomy.taxeditor.ui.section.vocabulary;\r
+\r
+import eu.etaxonomy.cdm.model.description.Feature;\r
+import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;\r
+import eu.etaxonomy.taxeditor.ui.element.CheckboxElement;\r
+import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;\r
+\r
+/**\r
+ * @author l.morris\r
+ * @date 20 Dec 2011\r
+ *\r
+ */\r
+public class FeatureDetailElement extends DefinedTermDetailElement<Feature> {\r
+\r
+    private CheckboxElement supportsTextData;\r
+\r
+    private CheckboxElement supportsQuantitativeData;\r
+\r
+    private CheckboxElement supportsDistribution;\r
+\r
+    private CheckboxElement supportsIndividualAssociation;\r
+\r
+    private CheckboxElement supportsTaxonInteraction;\r
+\r
+    private CheckboxElement supportsCategoricalData;\r
+\r
+       /**\r
+        * @param formFactory\r
+        * @param formElement\r
+        */\r
+       public FeatureDetailElement(CdmFormFactory formFactory,\r
+                       ICdmFormElement formElement) {\r
+               super(formFactory, formElement);\r
+       }\r
+\r
+       /* (non-Javadoc)\r
+        * @see eu.etaxonomy.taxeditor.ui.section.vocabulary.AbstractTermBaseDetailElement#createControls(eu.etaxonomy.taxeditor.ui.element.ICdmFormElement, eu.etaxonomy.cdm.model.common.TermBase, int)\r
+        */\r
+       @Override\r
+       protected void createControls(ICdmFormElement formElement, Feature entity, int style) {\r
+           super.createControls(formElement, entity, style);\r
+           supportsTextData = formFactory.createCheckbox(formElement, "Supports Text Data", entity.isSupportsTextData(), style);\r
+           supportsQuantitativeData = formFactory.createCheckbox(formElement, "Supports Quantitive Data", entity.isSupportsQuantitativeData(), style);\r
+           supportsDistribution = formFactory.createCheckbox(formElement, "Supports Distribution", entity.isSupportsDistribution(), style);\r
+           supportsIndividualAssociation = formFactory.createCheckbox(formElement, "Supports Individual Association", entity.isSupportsIndividualAssociation(), style);\r
+           supportsTaxonInteraction = formFactory.createCheckbox(formElement, "Supports Taxon Interaction", entity.isSupportsTaxonInteraction(), style);\r
+           supportsCategoricalData = formFactory.createCheckbox(formElement, "Supports Categorical Data", entity.isSupportsCategoricalData(), style);\r
+       }\r
+\r
+       /* (non-Javadoc)\r
+        * @see eu.etaxonomy.taxeditor.ui.section.vocabulary.DefinedTermDetailElement#handleEvent(java.lang.Object)\r
+        */\r
+       @Override\r
+       public void handleEvent(Object eventSource) {\r
+           super.handleEvent(eventSource);\r
+           if(eventSource == supportsTextData){\r
+               getEntity().setSupportsTextData(supportsTextData.getSelection());\r
+           }\r
+           else if(eventSource == supportsQuantitativeData){\r
+               getEntity().setSupportsQuantitativeData(supportsQuantitativeData.getSelection());\r
+           }\r
+           else if(eventSource == supportsDistribution){\r
+               getEntity().setSupportsDistribution(supportsDistribution.getSelection());\r
+           }\r
+           else if(eventSource == supportsIndividualAssociation){\r
+               getEntity().setSupportsIndividualAssociation(supportsIndividualAssociation.getSelection());\r
+           }\r
+           else if(eventSource == supportsTaxonInteraction){\r
+               getEntity().setSupportsTaxonInteraction(supportsTaxonInteraction.getSelection());\r
+           }\r
+           else if(eventSource == supportsCategoricalData){\r
+               getEntity().setSupportsCategoricalData(supportsCategoricalData.getSelection());\r
+           }\r
+       }\r
+\r
+}\r