4 package eu
.etaxonomy
.taxeditor
.ui
.section
.key
;
6 import eu
.etaxonomy
.cdm
.model
.description
.PolytomousKeyNode
;
7 import eu
.etaxonomy
.taxeditor
.ui
.forms
.CdmFormFactory
;
8 import eu
.etaxonomy
.taxeditor
.ui
.forms
.CdmFormFactory
.SelectionType
;
9 import eu
.etaxonomy
.taxeditor
.ui
.forms
.ICdmFormElement
;
10 import eu
.etaxonomy
.taxeditor
.ui
.forms
.KeyStatementElement
;
11 import eu
.etaxonomy
.taxeditor
.ui
.forms
.NumberWithLabelElement
;
12 import eu
.etaxonomy
.taxeditor
.ui
.section
.AbstractCdmDetailElement
;
13 import eu
.etaxonomy
.taxeditor
.ui
.selection
.FeatureSelectionElement
;
14 import eu
.etaxonomy
.taxeditor
.ui
.selection
.PolytomousKeyNodeSelectionElement
;
15 import eu
.etaxonomy
.taxeditor
.ui
.selection
.PolytomousKeySelectionElement
;
16 import eu
.etaxonomy
.taxeditor
.ui
.selection
.TaxonSelectionElement
;
22 public class PolytomousKeyNodeDetailElement
extends
23 AbstractCdmDetailElement
<PolytomousKeyNode
> {
25 private KeyStatementElement element_statement
;
27 private FeatureSelectionElement selection_feature
;
29 private TaxonSelectionElement selection_taxon
;
31 private PolytomousKeySelectionElement selection_subkey
;
33 private PolytomousKeyNodeSelectionElement selection_otherNode
;
35 private KeyStatementElement element_question
;
37 public PolytomousKeyNodeDetailElement(CdmFormFactory formFactory
,
38 ICdmFormElement formElement
) {
39 super(formFactory
, formElement
);
43 protected void createControls(ICdmFormElement formElement
,
44 PolytomousKeyNode entity
, int style
) {
45 if (!entity
.isLeaf()) {
46 NumberWithLabelElement number_nodeNumber
= formFactory
47 .createIntegerTextWithLabelElement(formElement
,
48 "Node Number", entity
.getNodeNumber(), style
);
49 number_nodeNumber
.setEnabled(false);
52 element_question
= formFactory
.createKeyStatementElement(formElement
,
53 "Question", entity
.getQuestion(), 50, style
);
55 selection_feature
= (FeatureSelectionElement
) formFactory
56 .createSelectionElement(SelectionType
.FEATURE
,
57 getConversationHolder(), formElement
, "Feature",
58 entity
.getFeature(), FeatureSelectionElement
.DEFAULT
,
61 if (entity
.isLeaf()) {
62 selection_taxon
= (TaxonSelectionElement
) formFactory
63 .createSelectionElement(SelectionType
.TAXON
,
64 getConversationHolder(), formElement
, "Taxon",
65 entity
.getTaxon(), TaxonSelectionElement
.DELETABLE
,
69 selection_subkey
= (PolytomousKeySelectionElement
) formFactory
70 .createSelectionElement(SelectionType
.POLYTOMOUS_KEY
,
71 getConversationHolder(), formElement
, "Subkey",
73 PolytomousKeySelectionElement
.DEFAULT
, style
);
75 selection_otherNode
= (PolytomousKeyNodeSelectionElement
) formFactory
76 .createSelectionElement(SelectionType
.POLYTOMOUS_KEY_NODE
,
77 getConversationHolder(), formElement
, "Other Node",
78 entity
.getOtherNode(),
79 PolytomousKeyNodeSelectionElement
.DEFAULT
, style
);
81 formFactory
.createMultiLanguageTextElement(formElement
,
82 "Modifying Text", entity
.getModifyingText(), 50, style
);
84 element_statement
= formFactory
.createKeyStatementElement(formElement
,
85 "Statement", entity
.getStatement(), 50, style
);
92 * eu.etaxonomy.taxeditor.section.AbstractCdmDetailElement#handleEvent(java
96 public void handleEvent(Object eventSource
) {
97 if (eventSource
== element_question
) {
98 getEntity().setQuestion(element_question
.getKeyStatement());
99 } else if (eventSource
== element_statement
) {
100 getEntity().setStatement(element_statement
.getKeyStatement());
101 } else if (eventSource
== selection_feature
) {
102 getEntity().setFeature(selection_feature
.getEntity());
103 } else if (eventSource
== selection_taxon
) {
104 getEntity().setTaxon(selection_taxon
.getEntity());
105 } else if (eventSource
== selection_subkey
) {
106 getEntity().setSubkey(selection_subkey
.getEntity());
107 } else if (eventSource
== selection_otherNode
) {
108 getEntity().setOtherNode(selection_otherNode
.getEntity());