3 * Copyright (C) 2013 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.
10 package eu
.etaxonomy
.taxeditor
.ui
.campanula
.basicFields
;
12 import org
.eclipse
.swt
.events
.ModifyEvent
;
13 import org
.eclipse
.swt
.widgets
.Text
;
15 import eu
.etaxonomy
.cdm
.model
.common
.LanguageString
;
16 import eu
.etaxonomy
.taxeditor
.store
.CdmStore
;
17 import eu
.etaxonomy
.taxeditor
.ui
.campanula
.compatibility
.ICdmFormElement
;
18 import eu
.etaxonomy
.taxeditor
.ui
.element
.CdmFormFactory
;
25 public class LanguageTextFieldController
extends TextFieldController
{
27 private LanguageString languageString
;
30 * <p>Constructor for LanguageStringWithLabelElement.</p>
32 * @param formFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
33 * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
34 * @param labelString a {@link java.lang.String} object.
35 * @param languageString a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
38 public LanguageTextFieldController(Text controlledText
, CdmFormFactory formFactory
,
39 ICdmFormElement parentElement
,
40 LanguageString languageString
) {
41 this(controlledText
, formFactory
, parentElement
, languageString
, null);
45 * <p>Constructor for LanguageStringWithLabelElement.</p>
47 * @param formFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
48 * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
49 * @param labelString a {@link java.lang.String} object.
50 * @param languageString a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
51 * @param height a int.
54 protected LanguageTextFieldController(Text controlledText
, CdmFormFactory formFactory
,
55 ICdmFormElement parentElement
,
56 LanguageString languageString
, Integer height
) {
57 super(controlledText
, formFactory
, parentElement
, null, height
);
59 setLanguageString(languageString
);
63 * <p>Getter for the field <code>languageString</code>.</p>
65 * @return a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
67 public LanguageString
getLanguageString() {
68 return languageString
;
73 public void modifyText(ModifyEvent e
) {
74 if(languageString
== null){
75 languageString
= LanguageString
.NewInstance("", CdmStore
.getDefaultLanguage());
78 languageString
.setText(text
.getText());
84 public void setText(String text
) {
85 if(text
!= null && languageString
!=null){
86 languageString
.setText(text
);
92 * <p>Setter for the field <code>languageString</code>.</p>
94 * @param languageString a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
96 public void setLanguageString(LanguageString languageString
) {
97 this.languageString
= languageString
;
98 super.setText(languageString
!= null ? languageString
.getText() : "");