Aligning Editor with 3.3 model changes. First phase commit which updates only the...
[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.description.PolytomousKey;
11 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
12 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
13 import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
14
15 /**
16 * @author n.hoffmann
17 *
18 */
19 public class ScopeRestrictionSection extends AbstractEntityCollectionSection<PolytomousKey, DefinedTerm> {
20
21 public ScopeRestrictionSection(CdmFormFactory formFactory,
22 ConversationHolder conversation, ICdmFormElement parentElement, int style) {
23 super(formFactory, conversation, parentElement, "Scope Restriction", style);
24 }
25
26 @Override
27 public Collection<DefinedTerm> getCollection(PolytomousKey entity) {
28 return entity.getScopeRestrictions();
29 }
30
31 @Override
32 public DefinedTerm createNewElement() {
33 return DefinedTerm.NewInstance();
34 }
35
36 @Override
37 public void addElement(DefinedTerm element) {
38 getEntity().addScopeRestriction(element);
39 }
40
41 @Override
42 public void removeElement(DefinedTerm element) {
43 getEntity().removeScopeRestriction(element);
44 }
45
46 @Override
47 public String getEmptyString() {
48 return "No scope restrictions yet.";
49 }
50
51 @Override
52 protected String getTooltipString() {
53 return "Add a scope restriction";
54 }
55
56 }