--- /dev/null
+// $Id$\r
+/**\r
+* Copyright (C) 2009 EDIT\r
+* European Distributed Institute of Taxonomy \r
+* http://www.e-taxonomy.eu\r
+* \r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+package eu.etaxonomy.taxeditor.ui.section.vocabulary;\r
+\r
+import java.net.URISyntaxException;\r
+\r
+import eu.etaxonomy.cdm.model.common.Language;\r
+import eu.etaxonomy.cdm.model.common.Representation;\r
+import eu.etaxonomy.cdm.model.location.NamedArea;\r
+import eu.etaxonomy.cdm.model.location.NamedAreaLevel;\r
+import eu.etaxonomy.cdm.model.location.NamedAreaType;\r
+import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;\r
+import eu.etaxonomy.taxeditor.ui.forms.CdmFormFactory;\r
+import eu.etaxonomy.taxeditor.ui.forms.ICdmFormElement;\r
+import eu.etaxonomy.taxeditor.ui.forms.TimePeriodElement;\r
+\r
+/**\r
+ * @author l.morris\r
+ * @date 20 Dec 2011\r
+ *\r
+ */\r
+public class NamedAreaDetailElement extends DefinedTermDetailElement<NamedArea> {\r
+\r
+ // level\r
+ // type\r
+ private TermComboElement<NamedAreaType> combo_namedAreaType;\r
+ private TermComboElement<NamedAreaLevel> combo_namedAreaLevel;\r
+ // validPeriod\r
+ private TimePeriodElement timePeriod_validPeriod;\r
+ \r
+ /**\r
+ * @param formFactory\r
+ * @param formElement\r
+ */\r
+ public NamedAreaDetailElement(CdmFormFactory formFactory,\r
+ ICdmFormElement formElement) {\r
+ super(formFactory, formElement);\r
+ }\r
+ \r
+ public void createControls(ICdmFormElement formElement, NamedArea entity, int style) {\r
+ super.createControls(formElement, entity, style);\r
+ \r
+ timePeriod_validPeriod = formFactory.createTimePeriodElement(formElement, "Valid Period", getEntity().getValidPeriod(), style);\r
+ combo_namedAreaType = formFactory.createTermComboElement(NamedAreaType.class, formElement, "Named Area Type", getEntity().getType(), style);\r
+ combo_namedAreaLevel = formFactory.createTermComboElement(NamedAreaLevel.class, formElement, "Named Area Level", getEntity().getLevel(), style);\r
+ \r
+ }\r
+\r
+ /* (non-Javadoc)\r
+ * @see eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement#handleEvent(java.lang.Object)\r
+ */\r
+ @Override\r
+ public void handleEvent(Object eventSource) {\r
+ \r
+ if (eventSource == text_label) {\r
+ getEntity().setLabel(text_label.getText());\r
+ getEntity().setTitleCache(null);\r
+ } else if (eventSource == text_description) {\r
+ \r
+ Representation representation = getEntity().getRepresentation(Language.DEFAULT());\r
+ representation.setText(text_description.getText());\r
+ \r
+ } else if (eventSource == uri_uri) {\r
+ \r
+ try {\r
+ getEntity().setUri(uri_uri.getUri());\r
+ } catch (URISyntaxException e) {\r
+ \r
+ e.printStackTrace();\r
+ }\r
+ } else if (eventSource == timePeriod_validPeriod) {\r
+ getEntity().setValidPeriod(timePeriod_validPeriod.getTimePeriod());\r
+ } else if (eventSource == combo_namedAreaType) {\r
+ getEntity().setType(combo_namedAreaType.getSelection());\r
+ } else if (eventSource == combo_namedAreaLevel) {\r
+ getEntity().setLevel(combo_namedAreaLevel.getSelection());\r
+ }\r
+ \r
+ \r
+ }\r
+\r
+ \r
+}\r