3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
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.
11 package eu
.etaxonomy
.taxeditor
.ui
.element
;
13 import org
.eclipse
.jface
.util
.PropertyChangeEvent
;
15 import eu
.etaxonomy
.cdm
.model
.description
.KeyStatement
;
19 * @created Dec 3, 2010
22 public class KeyStatementElement
extends MultilanguageTextElement
{
24 private KeyStatement keyStatement
;
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
);
39 * the keyStatement to set
41 public void setKeyStatement(KeyStatement keyStatement
) {
42 this.keyStatement
= keyStatement
;
43 if (keyStatement
!= null) {
44 setMultilanguageText(keyStatement
.getLabel());
49 * @return the keyStatement
51 public KeyStatement
getKeyStatement() {
59 * eu.etaxonomy.taxeditor.ui.forms.MultilanguageTextElement#propertyChange
60 * (org.eclipse.jface.util.PropertyChangeEvent)
63 public void propertyChange(PropertyChangeEvent event
) {
68 if (keyStatement
== null) {
69 Object eventSource
= event
.getSource();
70 if (eventSource
== element_languageString
) {
72 if(element_languageString
.getLanguageString() != null) {
73 // for the case when the user copy / pastes text into the
74 // (LanguageStringWithLabelElement) element_languageString text field
75 setKeyStatement(KeyStatement
.NewInstance(element_languageString
.getLanguageString().getLanguage(),
76 element_languageString
.getLanguageString().getText()));
78 setKeyStatement(KeyStatement
.NewInstance());
83 super.propertyChange(event
);