4ed1f7895b612587243defa575588822aa14532d
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / supplemental / MarkerSection.java
1 package eu.etaxonomy.taxeditor.ui.section.supplemental;
2
3 import java.util.Collection;
4
5 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
6 import eu.etaxonomy.cdm.model.common.AnnotatableEntity;
7 import eu.etaxonomy.cdm.model.common.Marker;
8 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
9 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
10 import eu.etaxonomy.taxeditor.ui.section.occurrence.dna.AbstractUnboundEntityCollectionSection;
11
12 /**
13 * <p>MarkerSection class.</p>
14 *
15 * @author nho
16 * @version $Id: $
17 */
18 public class MarkerSection extends AbstractUnboundEntityCollectionSection<AnnotatableEntity, Marker> {
19
20 /**
21 * <p>Constructor for MarkerSection.</p>
22 *
23 * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
24 * @param style a int.
25 * @param cdmFormFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
26 * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
27 */
28 public MarkerSection(CdmFormFactory cdmFormFactory, ConversationHolder conversation, ICdmFormElement parentElement, int style) {
29 super(cdmFormFactory, conversation, parentElement, "Marker", style);
30 }
31
32 /** {@inheritDoc} */
33 @Override
34 public Marker createNewElement() {
35 Marker marker = Marker.NewInstance();
36 marker.setFlag(true);
37 return marker;
38 }
39
40 /** {@inheritDoc} */
41 @Override
42 public String getEmptyString() {
43 return "No markers yet.";
44 }
45
46 /** {@inheritDoc} */
47 @Override
48 protected String getTooltipString() {
49 return "Create a new marker";
50 }
51
52 /** {@inheritDoc} */
53 @Override
54 public void addElement(Marker element) {
55 getEntity().addMarker(element);
56 }
57
58 /** {@inheritDoc} */
59 @Override
60 public void removeElement(Marker element) {
61 getEntity().removeMarker(element);
62 }
63
64 @Override
65 protected Collection<Marker> getEntityCollection(AnnotatableEntity entity) {
66 return entity.getMarkers();
67 }
68
69 /**
70 * {@inheritDoc}
71 */
72 @Override
73 public Marker addExisting() {
74 // TODO Auto-generated method stub
75 return null;
76 }
77
78 /**
79 * {@inheritDoc}
80 */
81 @Override
82 public boolean allowAddExisting() {
83 // TODO Auto-generated method stub
84 return false;
85 }
86
87 }