ref #6190 removing svn property place holder in first line of code - java files
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / element / LanguageStringWithLabelElement.java
1 /**
2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 *
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
8 */
9
10 package eu.etaxonomy.taxeditor.ui.element;
11
12 import org.eclipse.swt.events.ModifyEvent;
13
14 import eu.etaxonomy.cdm.model.common.LanguageString;
15 import eu.etaxonomy.taxeditor.store.CdmStore;
16
17 /**
18 * <p>LanguageStringWithLabelElement class.</p>
19 *
20 * @author n.hoffmann
21 * @created Mar 25, 2010
22 * @version 1.0
23 */
24 public class LanguageStringWithLabelElement extends TextWithLabelElement {
25
26 private LanguageString languageString;
27
28 /**
29 * <p>Constructor for LanguageStringWithLabelElement.</p>
30 *
31 * @param formFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
32 * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
33 * @param labelString a {@link java.lang.String} object.
34 * @param languageString a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
35 * @param style a int.
36 */
37 protected LanguageStringWithLabelElement(CdmFormFactory formFactory,
38 ICdmFormElement parentElement, String labelString,
39 LanguageString languageString, int style) {
40 this(formFactory, parentElement, labelString, languageString, null, style);
41 }
42
43 /**
44 * <p>Constructor for LanguageStringWithLabelElement.</p>
45 *
46 * @param formFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
47 * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
48 * @param labelString a {@link java.lang.String} object.
49 * @param languageString a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
50 * @param height a int.
51 * @param style a int.
52 */
53 protected LanguageStringWithLabelElement(CdmFormFactory formFactory,
54 ICdmFormElement parentElement, String labelString,
55 LanguageString languageString, Integer height, int style) {
56 this(formFactory, parentElement, labelString, languageString, height, true, style);
57 }
58
59 protected LanguageStringWithLabelElement(CdmFormFactory formFactory,
60 ICdmFormElement parentElement, String labelString,
61 LanguageString languageString, Integer height, boolean isMultiLine, int style) {
62 super(formFactory, parentElement, labelString, null, height, isMultiLine, style);
63
64 setLanguageString(languageString);
65
66 }
67
68 /**
69 * <p>Getter for the field <code>languageString</code>.</p>
70 *
71 * @return a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
72 */
73 public LanguageString getLanguageString() {
74 return languageString;
75 }
76
77 public LanguageString updateLanguageString(LanguageString ls) {
78 if(ls == null){
79 ls = LanguageString.NewInstance("", CdmStore.getDefaultLanguage());
80 }
81 ls.setText(text.getText());
82 return ls;
83 }
84
85 /** {@inheritDoc} */
86 @Override
87 public void modifyText(ModifyEvent e) {
88 if(languageString == null){
89 languageString = LanguageString.NewInstance("", CdmStore.getDefaultLanguage());
90 }
91
92 languageString.setText(text.getText());
93 super.modifyText(e);
94 }
95
96 /** {@inheritDoc} */
97 @Override
98 public void setText(String text) {
99 if(text != null){
100 languageString.setText(text);
101 super.setText(text);
102 }
103 }
104
105 /**
106 * <p>Setter for the field <code>languageString</code>.</p>
107 *
108 * @param languageString a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
109 */
110 public void setLanguageString(LanguageString languageString) {
111 this.languageString = languageString;
112 super.setText(languageString != null ? languageString.getText() : "");
113 }
114 }