Revision 8f0f3832
Added by Patrick Plitzner about 10 years ago
- partially added handling of input fields
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/TissueSampleGeneralDetailElement.java | ||
---|---|---|
9 | 9 |
*/ |
10 | 10 |
package eu.etaxonomy.taxeditor.ui.section.occurrence.dna; |
11 | 11 |
|
12 |
import org.apache.log4j.Logger; |
|
13 |
|
|
12 | 14 |
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade; |
15 |
import eu.etaxonomy.cdm.api.facade.MethodNotSupportedByDerivedUnitTypeException; |
|
13 | 16 |
import eu.etaxonomy.cdm.model.agent.AgentBase; |
17 |
import eu.etaxonomy.cdm.model.common.DefinedTerm; |
|
18 |
import eu.etaxonomy.cdm.model.common.TimePeriod; |
|
14 | 19 |
import eu.etaxonomy.cdm.model.occurrence.Collection; |
20 |
import eu.etaxonomy.cdm.model.occurrence.PreservationMethod; |
|
21 |
import eu.etaxonomy.taxeditor.model.AbstractUtility; |
|
22 |
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement; |
|
15 | 23 |
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory; |
16 | 24 |
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement; |
17 | 25 |
import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement; |
... | ... | |
26 | 34 |
*/ |
27 | 35 |
public class TissueSampleGeneralDetailElement extends AbstractCdmDetailElement<DerivedUnitFacade> { |
28 | 36 |
|
37 |
static private final Logger logger = Logger.getLogger(TissueSampleGeneralDetailElement.class); |
|
38 |
|
|
29 | 39 |
//title cache |
30 | 40 |
//sample designation |
31 | 41 |
private TimePeriodElement datePreparation; |
32 | 42 |
private EntitySelectionElement<AgentBase> selectionPreparedBy; |
33 |
private TextWithLabelElement textPreservationMedium;
|
|
43 |
private TermComboElement<DefinedTerm> comboPreservationMedium;
|
|
34 | 44 |
private TimePeriodElement datePreservation; |
35 | 45 |
private EntitySelectionElement<AgentBase> selectionStoredAt; |
36 | 46 |
private EntitySelectionElement<Collection> selectionCollection; |
... | ... | |
55 | 65 |
*/ |
56 | 66 |
@Override |
57 | 67 |
protected void createControls(ICdmFormElement formElement, DerivedUnitFacade entity, int style) { |
68 |
//FIXME handle all parameters here and in handleEvent() |
|
58 | 69 |
datePreparation = formFactory.createTimePeriodElement(formElement, "Preparation date", null, style); |
59 | 70 |
selectionPreparedBy = formFactory.createSelectionElement(AgentBase.class, getConversationHolder(), formElement, "Prepared By", null, EntitySelectionElement.ALL, style); |
60 |
textPreservationMedium = formFactory.createTextWithLabelElement(formElement, "Preservation medium", null, style); |
|
61 |
datePreservation = formFactory.createTimePeriodElement(formElement, "Preservation date", null, style); |
|
71 |
TimePeriod preservationDate = null; |
|
72 |
DefinedTerm preservationMedium = null; |
|
73 |
try { |
|
74 |
if(entity.getPreservationMethod()!=null){ |
|
75 |
preservationDate = entity.getPreservationMethod().getTimeperiod(); |
|
76 |
preservationMedium = entity.getPreservationMethod().getMedium(); |
|
77 |
} |
|
78 |
} catch (MethodNotSupportedByDerivedUnitTypeException e) { |
|
79 |
// we ignore this |
|
80 |
AbstractUtility.info(e.getMessage()); |
|
81 |
} |
|
82 |
comboPreservationMedium = formFactory.createTermComboElement(DefinedTerm.class, formElement, "Preservation medium", preservationMedium, style); |
|
83 |
datePreservation = formFactory.createTimePeriodElement(formElement, "Preservation date", preservationDate, style); |
|
62 | 84 |
selectionStoredAt = formFactory.createSelectionElement(AgentBase.class, getConversationHolder(), formElement, "Stored at", null, EntitySelectionElement.ALL, style); |
63 |
selectionCollection = formFactory.createSelectionElement(Collection.class, getConversationHolder(), formElement, "Collection", null, EntitySelectionElement.ALL, style);
|
|
64 |
textAccessionNumber = formFactory.createTextWithLabelElement(formElement, "Accession Number", null, style);
|
|
65 |
textBarcode = formFactory.createTextWithLabelElement(formElement, "Barcode", null, style);
|
|
85 |
selectionCollection = formFactory.createSelectionElement(Collection.class, getConversationHolder(), formElement, "Collection", entity.getCollection(), EntitySelectionElement.ALL, style);
|
|
86 |
textAccessionNumber = formFactory.createTextWithLabelElement(formElement, "Accession Number", entity.getAccessionNumber(), style);
|
|
87 |
textBarcode = formFactory.createTextWithLabelElement(formElement, "Barcode", entity.getBarcode(), style);
|
|
66 | 88 |
|
67 | 89 |
} |
68 | 90 |
|
... | ... | |
75 | 97 |
*/ |
76 | 98 |
@Override |
77 | 99 |
public void handleEvent(Object eventSource) { |
78 |
} |
|
100 |
try { |
|
101 |
if (eventSource==comboPreservationMedium) { |
|
102 |
PreservationMethod preservationMethod = getEntity().getPreservationMethod(); |
|
103 |
if(preservationMethod==null){ |
|
104 |
preservationMethod = PreservationMethod.NewInstance(); |
|
105 |
getEntity().setPreservationMethod(preservationMethod); |
|
106 |
} |
|
107 |
preservationMethod.setMedium(comboPreservationMedium.getSelection()); |
|
108 |
} |
|
109 |
else if (eventSource==datePreservation) { |
|
110 |
PreservationMethod preservationMethod = getEntity().getPreservationMethod(); |
|
111 |
if(preservationMethod==null){ |
|
112 |
preservationMethod = PreservationMethod.NewInstance(); |
|
113 |
getEntity().setPreservationMethod(preservationMethod); |
|
114 |
} |
|
115 |
preservationMethod.setTimeperiod(datePreservation.getTimePeriod()); |
|
116 |
} |
|
117 |
}catch (MethodNotSupportedByDerivedUnitTypeException e) { |
|
118 |
AbstractUtility.errorDialog("Parameter not available", this, "Could not set preservation parameter!", e); |
|
119 |
} |
|
120 |
if(eventSource==selectionCollection){ |
|
121 |
getEntity().setCollection(selectionCollection.getSelection()); |
|
122 |
} |
|
123 |
else if(eventSource==textAccessionNumber){ |
|
124 |
getEntity().setAccessionNumber(textAccessionNumber.getText()); |
|
125 |
} |
|
126 |
else if(eventSource==textBarcode){ |
|
127 |
getEntity().setBarcode(textBarcode.getText()); |
|
128 |
} |
|
79 | 129 |
|
130 |
} |
|
80 | 131 |
} |
Also available in: Unified diff