(no commit message)
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / media / MediaSection.java
1 /**
2 *
3 */
4 package eu.etaxonomy.taxeditor.ui.section.media;
5
6 import java.util.Collection;
7
8
9 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
10 import eu.etaxonomy.cdm.model.media.IdentifiableMediaEntity;
11 import eu.etaxonomy.cdm.model.media.Media;
12 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
13 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
14 import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
15
16 /**
17 * <p>MediaSection class.</p>
18 *
19 * @author nho
20 * @version $Id: $
21 */
22 public class MediaSection extends AbstractEntityCollectionSection<IdentifiableMediaEntity, Media>{
23
24 /**
25 * <p>Constructor for MediaSection.</p>
26 *
27 * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
28 * @param style a int.
29 * @param cdmFormFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
30 * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
31 */
32 public MediaSection(CdmFormFactory cdmFormFactory, ConversationHolder conversation, ICdmFormElement parentElement, int style) {
33 super(cdmFormFactory, conversation, parentElement, "Media", style);
34 }
35
36 /** {@inheritDoc} */
37 @Override
38 public Media createNewElement() {
39 return Media.NewInstance();
40 }
41
42 /** {@inheritDoc} */
43 @Override
44 public Collection<Media> getCollection(IdentifiableMediaEntity entity) {
45 return entity.getMedia();
46 }
47
48 /** {@inheritDoc} */
49 @Override
50 public String getEmptyString() {
51 return "No media yet.";
52 }
53
54 /** {@inheritDoc} */
55 @Override
56 protected String getTooltipString() {
57 return "Create new media";
58 }
59
60 /** {@inheritDoc} */
61 @Override
62 public void addElement(Media element) {
63 getEntity().addMedia(element);
64 }
65
66 /** {@inheritDoc} */
67 @Override
68 public void removeElement(Media element) {
69 getEntity().removeMedia(element);
70 }
71
72 }