merged/implemented cdm3.3 model adaptations
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / key / ScopeRestrictionSection.java
1 /**
2 *
3 */
4 package eu.etaxonomy.taxeditor.ui.section.key;
5
6 import java.util.Collection;
7
8 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
9 import eu.etaxonomy.cdm.model.common.DefinedTerm;
10 import eu.etaxonomy.cdm.model.common.TermType;
11 import eu.etaxonomy.cdm.model.description.PolytomousKey;
12 import eu.etaxonomy.taxeditor.ui.campanula.compatibility.ICdmFormElement;
13 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
14 import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
15
16 /**
17 * @author n.hoffmann
18 *
19 */
20 public class ScopeRestrictionSection extends AbstractEntityCollectionSection<PolytomousKey, DefinedTerm> {
21
22 public ScopeRestrictionSection(CdmFormFactory formFactory,
23 ConversationHolder conversation, ICdmFormElement parentElement, int style) {
24 super(formFactory, conversation, parentElement, "Scope Restriction", style);
25 }
26
27 @Override
28 public Collection<DefinedTerm> getCollection(PolytomousKey entity) {
29 return entity.getScopeRestrictions();
30 }
31
32 @Override
33 public DefinedTerm createNewElement() {
34 return DefinedTerm.NewInstance(TermType.Scope,"","Untitled","");
35
36 }
37
38 @Override
39 public void addElement(DefinedTerm element) {
40 getEntity().addScopeRestriction(element);
41 }
42
43 @Override
44 public void removeElement(DefinedTerm element) {
45 getEntity().removeScopeRestriction(element);
46 }
47
48 @Override
49 public String getEmptyString() {
50 return "No scope restrictions yet.";
51 }
52
53 @Override
54 protected String getTooltipString() {
55 return "Add a scope restriction";
56 }
57
58 }