ref #6190 removing svn property place holder in first line of code - java files
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / occurrence / AbstractEventDetailElement.java
1 /**
2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 *
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
8 */
9
10 package eu.etaxonomy.taxeditor.ui.section.occurrence;
11
12 import org.eclipse.swt.events.SelectionListener;
13
14 import eu.etaxonomy.cdm.model.agent.AgentBase;
15 import eu.etaxonomy.cdm.model.common.EventBase;
16 import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
17 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
18 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
19 import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
20 import eu.etaxonomy.taxeditor.ui.element.TimePeriodElement;
21 import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement;
22 import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
23
24 /**
25 * <p>
26 * Abstract AbstractEventDetailElement class.
27 * </p>
28 *
29 * @author n.hoffmann
30 * @created Oct 14, 2010
31 * @version 1.0
32 */
33 public abstract class AbstractEventDetailElement<T extends EventBase> extends
34 AbstractEntityCollectionElement<T> {
35
36 protected EntitySelectionElement<AgentBase> selection_agent;
37 protected TextWithLabelElement text_description;
38 protected TimePeriodElement element_timePeriod;
39
40 /**
41 * <p>
42 * Constructor for AbstractEventDetailElement.
43 * </p>
44 *
45 * @param formFactory
46 * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory}
47 * object.
48 * @param section
49 * a {@link eu.etaxonomy.taxeditor.ui.element.AbstractFormSection}
50 * object.
51 * @param entity
52 * a T object.
53 * @param removeListener
54 * a {@link org.eclipse.swt.events.SelectionListener} object.
55 * @param style
56 * a int.
57 * @param <T>
58 * a T object.
59 */
60 public AbstractEventDetailElement(CdmFormFactory formFactory,
61 AbstractFormSection section, T entity,
62 SelectionListener removeListener, int style) {
63 super(formFactory, section, entity, removeListener, null, style);
64 }
65
66 /*
67 * (non-Javadoc)
68 *
69 * @see
70 * eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#setEntity
71 * (java.lang.Object)
72 */
73 /** {@inheritDoc} */
74 @Override
75 public void setEntity(T entity) {
76 selection_agent.setEntity(entity.getActor());
77 text_description.setText(entity.getDescription());
78 element_timePeriod.setEntity(entity.getTimeperiod());
79 }
80
81 /*
82 * (non-Javadoc)
83 *
84 * @see
85 * eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#createControls
86 * (eu.etaxonomy.taxeditor.forms.ICdmFormElement, int)
87 */
88 /** {@inheritDoc} */
89 @Override
90 public void createControls(ICdmFormElement element, int style) {
91 selection_agent = formFactory
92 .createSelectionElement(AgentBase.class,
93 getConversationHolder(), element, "Actor", null,
94 EntitySelectionElement.ALL, style);
95 element_timePeriod = formFactory.createTimePeriodElement(element,
96 "Time Period", null, style);
97 text_description = formFactory.createTextWithLabelElement(element,
98 "Description", null, style);
99 }
100
101 }