add checkbox for additional team members
authorKatja Luther <k.luther@bgbm.org>
Thu, 4 Jun 2015 09:09:52 +0000 (09:09 +0000)
committerKatja Luther <k.luther@bgbm.org>
Thu, 4 Jun 2015 09:09:52 +0000 (09:09 +0000)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/agent/TeamDetailElement.java

index f338bc217ba0e62edc1a965b76c18327e838c651..5210c9dd806ca03a3d3b776dd8ef89c9d14c9786 100644 (file)
@@ -10,6 +10,7 @@
 
 package eu.etaxonomy.taxeditor.ui.section.agent;
 
+import java.awt.Checkbox;
 import java.util.Arrays;
 
 import org.eclipse.ui.forms.widgets.ExpandableComposite;
@@ -17,6 +18,7 @@ import org.eclipse.ui.forms.widgets.ExpandableComposite;
 import eu.etaxonomy.cdm.model.agent.Team;
 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.element.LayoutConstants;
 import eu.etaxonomy.taxeditor.ui.element.ToggleableTextElement;
@@ -34,6 +36,7 @@ import eu.etaxonomy.taxeditor.ui.section.AbstractIdentifiableEntityDetailElement
 public class TeamDetailElement extends AbstractIdentifiableEntityDetailElement<Team> {
 
        private ToggleableTextElement toggleable_nomenclaturalTitleCache;
+       private CheckboxElement hasAdditionalMembers;
 
        private TeamMemberSection section_teamMembers;
 
@@ -62,6 +65,7 @@ public class TeamDetailElement extends AbstractIdentifiableEntityDetailElement<T
 
         toggleable_cache = formFactory.createToggleableTextField(formElement, "Title Cache", entity.getTitleCache(), entity.isProtectedTitleCache(), style);
         toggleable_nomenclaturalTitleCache = formFactory.createToggleableTextField(formElement, "Abbrev. Title", entity.getNomenclaturalTitle(), entity.isProtectedNomenclaturalTitleCache(), style);
+        hasAdditionalMembers = formFactory.createCheckbox(formElement, "Additional Members", false, style);
         section_teamMembers = formFactory.createTeamMemberSection(getConversationHolder(), formElement, ExpandableComposite.EXPANDED);
         section_teamMembers.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
     }
@@ -70,15 +74,15 @@ public class TeamDetailElement extends AbstractIdentifiableEntityDetailElement<T
        @Override
        protected void updateContent() {
                super.updateContent();
-
+               
                toggleable_cache.setEnabled(getEntity().isProtectedTitleCache());
                toggleable_nomenclaturalTitleCache.setEnabled(getEntity()
                                .isProtectedNomenclaturalTitleCache());
                setIrrelevant(
                                toggleable_cache.getState(),
                                Arrays.asList(new Object[] { toggleable_cache,
-                                               toggleable_nomenclaturalTitleCache }));
-
+                                               toggleable_nomenclaturalTitleCache , hasAdditionalMembers}));
+               
                section_teamMembers.setEntity(getEntity());
 
        }
@@ -88,17 +92,20 @@ public class TeamDetailElement extends AbstractIdentifiableEntityDetailElement<T
        public void handleEvent(Object eventSource) {
                if (eventSource == toggleable_cache) {
                        handleToggleableCacheField();
+                       
                } else if (eventSource == toggleable_nomenclaturalTitleCache) {
                        getEntity().setNomenclaturalTitle(
                                        toggleable_nomenclaturalTitleCache.getText(),
                                        toggleable_nomenclaturalTitleCache.getState());
                        setIrrelevant(
                                        toggleable_nomenclaturalTitleCache.getState(),
-                                       Arrays.asList(new Object[] { toggleable_nomenclaturalTitleCache }));
+                                       Arrays.asList(new Object[] { toggleable_nomenclaturalTitleCache, hasAdditionalMembers }));
                } else if (eventSource == section_teamMembers) {
                        toggleable_cache.setText(getEntity().getTitleCache());
                        toggleable_nomenclaturalTitleCache.setText(getEntity()
                                        .getNomenclaturalTitle());
+               } else if (eventSource == hasAdditionalMembers){
+                       getEntity().setHasMoreMembers(hasAdditionalMembers.getSelection());
                }
 
                firePropertyChangeEvent(new CdmPropertyChangeEvent(this, null));