Project

General

Profile

Download (3.59 KB) Statistics
| Branch: | Tag: | Revision:
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.swt.events.ModifyEvent;
14

    
15
import eu.etaxonomy.cdm.model.common.LanguageString;
16
import eu.etaxonomy.taxeditor.store.CdmStore;
17

    
18
/**
19
 * <p>LanguageStringWithLabelElement class.</p>
20
 *
21
 * @author n.hoffmann
22
 * @created Mar 25, 2010
23
 * @version 1.0
24
 */
25
public class LanguageStringWithLabelElement extends TextWithLabelElement {
26

    
27
	private LanguageString languageString;
28

    
29
	/**
30
	 * <p>Constructor for LanguageStringWithLabelElement.</p>
31
	 *
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.
36
	 * @param style a int.
37
	 */
38
	protected LanguageStringWithLabelElement(CdmFormFactory formFactory,
39
			ICdmFormElement parentElement, String labelString,
40
			LanguageString languageString, int style) {
41
		this(formFactory, parentElement, labelString, languageString, null, style);
42
	}
43

    
44
	/**
45
	 * <p>Constructor for LanguageStringWithLabelElement.</p>
46
	 *
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.
52
	 * @param style a int.
53
	 */
54
	protected LanguageStringWithLabelElement(CdmFormFactory formFactory,
55
			ICdmFormElement parentElement, String labelString,
56
			LanguageString languageString, Integer height, int style) {
57
		this(formFactory, parentElement, labelString, languageString, height, true, style);
58
	}
59

    
60
	protected LanguageStringWithLabelElement(CdmFormFactory formFactory,
61
	        ICdmFormElement parentElement, String labelString,
62
	        LanguageString languageString, Integer height, boolean isMultiLine, int style) {
63
	    super(formFactory, parentElement, labelString, null, height, isMultiLine, style);
64

    
65
	    setLanguageString(languageString);
66

    
67
	}
68

    
69
	/**
70
	 * <p>Getter for the field <code>languageString</code>.</p>
71
	 *
72
	 * @return a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
73
	 */
74
	public LanguageString getLanguageString() {
75
		return languageString;
76
	}
77

    
78
	public LanguageString updateLanguageString(LanguageString ls) {
79
	    if(ls == null){
80
            ls = LanguageString.NewInstance("", CdmStore.getDefaultLanguage());
81
        }
82
	    ls.setText(text.getText());
83
	    return ls;
84
	}
85

    
86
	/** {@inheritDoc} */
87
	@Override
88
	public void modifyText(ModifyEvent e) {
89
		if(languageString == null){
90
			languageString = LanguageString.NewInstance("", CdmStore.getDefaultLanguage());
91
		}
92

    
93
		languageString.setText(text.getText());
94
		super.modifyText(e);
95
	}
96

    
97
	/** {@inheritDoc} */
98
	@Override
99
	public void setText(String text) {
100
		if(text != null){
101
			languageString.setText(text);
102
			super.setText(text);
103
		}
104
	}
105

    
106
	/**
107
	 * <p>Setter for the field <code>languageString</code>.</p>
108
	 *
109
	 * @param languageString a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
110
	 */
111
	public void setLanguageString(LanguageString languageString) {
112
		this.languageString = languageString;
113
		super.setText(languageString != null ? languageString.getText() : "");
114
	}
115
}
(27-27/42)