latest changes from trunk
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / occurrence / DerivedUnitGeneralDetailElement.java
1 // $Id$
2 /**
3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
6 *
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
9 */
10
11 package eu.etaxonomy.taxeditor.ui.section.occurrence;
12
13 import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
14 import eu.etaxonomy.cdm.model.occurrence.Collection;
15 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
16 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
17 import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
18 import eu.etaxonomy.taxeditor.ui.element.ToggleableTextElement;
19 import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
20 import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
21
22 /**
23 * @author n.hoffmann
24 * @created Dec 16, 2010
25 * @version 1.0
26 */
27 public class DerivedUnitGeneralDetailElement extends
28 AbstractCdmDetailElement<DerivedUnitFacade> {
29
30 private ToggleableTextElement toggleableText_titleCache;
31 private EntitySelectionElement<Collection> selection_collection;
32 private TextWithLabelElement text_accessionNumber;
33
34
35
36 /**
37 * @param formFactory
38 * @param formElement
39 */
40 public DerivedUnitGeneralDetailElement(CdmFormFactory formFactory,
41 ICdmFormElement formElement) {
42 super(formFactory, formElement);
43 }
44
45 /*
46 * (non-Javadoc)
47 *
48 * @see
49 * eu.etaxonomy.taxeditor.section.AbstractCdmDetailElement#createControls
50 * (eu.etaxonomy.taxeditor.forms.ICdmFormElement, java.lang.Object, int)
51 */
52 @Override
53 protected void createControls(ICdmFormElement formElement,
54 DerivedUnitFacade entity, int style) {
55 toggleableText_titleCache = formFactory.createToggleableTextField(
56 formElement, "Title Cache", entity.getTitleCache(),
57 entity.isProtectedTitleCache(), style);
58 toggleableText_titleCache.setEnabled(false);
59 selection_collection = formFactory
60 .createSelectionElement(Collection.class,
61 getConversationHolder(), formElement, "Collection",
62 entity.getCollection(),
63 EntitySelectionElement.ALL, style);
64 text_accessionNumber = formFactory.createTextWithLabelElement(
65 formElement, "Accession Number", entity.getAccessionNumber(),
66 style);
67
68 }
69
70 /*
71 * (non-Javadoc)
72 *
73 * @see
74 * eu.etaxonomy.taxeditor.section.AbstractCdmDetailElement#handleEvent(java
75 * .lang.Object)
76 */
77 @Override
78 public void handleEvent(Object eventSource) {
79 if (eventSource == toggleableText_titleCache) {
80 getEntity().setTitleCache(toggleableText_titleCache.getText(),
81 toggleableText_titleCache.getState());
82 }
83 else if (eventSource == selection_collection) {
84 getEntity().setCollection(selection_collection.getSelection());
85 } else if (eventSource == text_accessionNumber) {
86 getEntity().setAccessionNumber(text_accessionNumber.getText());
87 }
88 if (eventSource != toggleableText_titleCache) {
89 toggleableText_titleCache.setText(getEntity().getTitleCache());
90 }
91 }
92
93 }