- set CdmFormFactory.createTermComboElement() to deprecated
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / supplemental / RightsElement.java
1 /**
2 *
3 */
4 package eu.etaxonomy.taxeditor.ui.section.supplemental;
5
6 import org.eclipse.swt.events.SelectionListener;
7
8 import eu.etaxonomy.cdm.model.agent.AgentBase;
9 import eu.etaxonomy.cdm.model.common.TermType;
10 import eu.etaxonomy.cdm.model.media.Rights;
11 import eu.etaxonomy.cdm.model.media.RightsType;
12 import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
13 import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
14 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
15 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
16 import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
17 import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement;
18 import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
19
20 /**
21 * <p>
22 * RightsElement class.
23 * </p>
24 *
25 * @author n.hoffmann
26 * @created Nov 16, 2009
27 * @version 1.0
28 */
29 public class RightsElement extends AbstractEntityCollectionElement<Rights> {
30
31 private TermComboElement<RightsType> combo_rightsType;
32 private EntitySelectionElement<AgentBase> selection_agent;
33 private TextWithLabelElement text;
34
35 /**
36 * <p>
37 * Constructor for RightsElement.
38 * </p>
39 *
40 * @param formElement
41 * a {@link eu.etaxonomy.taxeditor.ui.element.AbstractFormSection}
42 * object.
43 * @param element
44 * a {@link eu.etaxonomy.cdm.model.media.Rights} object.
45 * @param removeListener
46 * a {@link org.eclipse.swt.events.SelectionListener} object.
47 * @param style
48 * a int.
49 * @param cdmFormFactory
50 * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory}
51 * object.
52 */
53 public RightsElement(CdmFormFactory cdmFormFactory,
54 AbstractFormSection formElement, Rights element,
55 SelectionListener removeListener, int style) {
56 super(cdmFormFactory, formElement, element, removeListener, null, style);
57 }
58
59
60 /*
61 * (non-Javadoc)
62 *
63 * @see
64 * eu.etaxonomy.taxeditor.forms.entitysections.AbstractEntitySetElementComposite
65 * #createControls(org.eclipse.swt.widgets.Composite, int)
66 */
67 /** {@inheritDoc} */
68 @Override
69 public void createControls(ICdmFormElement element, int style) {
70 combo_rightsType = formFactory.createDefinedTermComboElement(TermType.RightsType, this, "Rights Type", null, style);
71 selection_agent = formFactory.createSelectionElement(
72 AgentBase.class, getConversationHolder(), this, "Agent",
73 null, EntitySelectionElement.ALL, style);
74 text = formFactory.createMultilineTextWithLabel(this, "Text", 100,
75 style);
76 }
77
78 /*
79 * (non-Javadoc)
80 *
81 * @see
82 * eu.etaxonomy.taxeditor.forms.entitysections.AbstractEntitySetElementComposite
83 * #setElement(eu.etaxonomy.cdm.model.common.VersionableEntity)
84 */
85 /** {@inheritDoc} */
86 @Override
87 public void setEntity(Rights element) {
88 this.entity = element;
89 combo_rightsType.setSelection(element.getType());
90 selection_agent.setEntity(element.getAgent());
91 text.setText(element.getText());
92 }
93
94 /*
95 * (non-Javadoc)
96 *
97 * @see
98 * eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#handleEvent
99 * (java.lang.Object)
100 */
101 /** {@inheritDoc} */
102 @Override
103 public void handleEvent(Object eventSource) {
104 if (eventSource == combo_rightsType) {
105 entity.setType(combo_rightsType.getSelection());
106 } else if (eventSource == selection_agent) {
107 entity.setAgent(selection_agent.getSelection());
108 } else if (eventSource == text) {
109 entity.setText(text.getText());
110 }
111 }
112
113 }