merging in latest changes from trunk
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / element / KeyStatementElement.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.element;
12
13 import org.eclipse.jface.util.PropertyChangeEvent;
14
15 import eu.etaxonomy.cdm.model.description.KeyStatement;
16
17 /**
18 * @author n.hoffmann
19 * @created Dec 3, 2010
20 * @version 1.0
21 */
22 public class KeyStatementElement extends MultilanguageTextElement {
23
24 private KeyStatement keyStatement;
25
26 /**
27 * @param formFactory
28 * @param formElement
29 */
30 public KeyStatementElement(CdmFormFactory formFactory,
31 ICdmFormElement formElement, String labelString,
32 KeyStatement keyStatement, int textHeight, int style) {
33 super(formFactory, formElement, labelString, null, textHeight, style);
34 setKeyStatement(keyStatement);
35 }
36
37 /**
38 * @param keyStatement
39 * the keyStatement to set
40 */
41 public void setKeyStatement(KeyStatement keyStatement) {
42 this.keyStatement = keyStatement;
43 if (keyStatement != null) {
44 setMultilanguageText(keyStatement.getLabel());
45 }
46 }
47
48 /**
49 * @return the keyStatement
50 */
51 public KeyStatement getKeyStatement() {
52 return keyStatement;
53 }
54
55 /*
56 * (non-Javadoc)
57 *
58 * @see
59 * eu.etaxonomy.taxeditor.ui.forms.MultilanguageTextElement#propertyChange
60 * (org.eclipse.jface.util.PropertyChangeEvent)
61 */
62 @Override
63 public void propertyChange(PropertyChangeEvent event) {
64 if (event == null) {
65 return;
66 }
67 if (keyStatement == null) {
68 Object eventSource = event.getSource();
69 if (eventSource == element_languageString) {
70 setKeyStatement(KeyStatement.NewInstance());
71 }
72 }
73 super.propertyChange(event);
74 }
75
76 }