LibrAlign dependency version updated.
[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.element.CdmFormFactory;
13 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
14 import eu.etaxonomy.taxeditor.ui.section.occurrence.dna.AbstractUnboundEntityCollectionSection;
15
16 /**
17 * @author n.hoffmann
18 *
19 */
20 public class ScopeRestrictionSection extends AbstractUnboundEntityCollectionSection<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
28 @Override
29 protected Collection<DefinedTerm> getEntityCollection(PolytomousKey entity) {
30 return entity.getScopeRestrictions();
31 }
32
33 @Override
34 public DefinedTerm createNewElement() {
35 return DefinedTerm.NewInstance(TermType.Scope,"","Untitled","");
36
37 }
38
39 @Override
40 public void addElement(DefinedTerm element) {
41 getEntity().addScopeRestriction(element);
42 }
43
44 @Override
45 public void removeElement(DefinedTerm element) {
46 getEntity().removeScopeRestriction(element);
47 }
48
49 @Override
50 public String getEmptyString() {
51 return "No scope restrictions yet.";
52 }
53
54 @Override
55 protected String getTooltipString() {
56 return "Add a scope restriction";
57 }
58
59 }