Revision 2487 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.dynform/org.gvsig.tools.dynform.services/src/main/java/org/gvsig/tools/dynform/services/dynformfield/Text/JDynFormFieldText.java
JDynFormFieldText.java | ||
---|---|---|
23 | 23 |
*/ |
24 | 24 |
package org.gvsig.tools.dynform.services.dynformfield.Text; |
25 | 25 |
|
26 |
import java.awt.event.ContainerEvent; |
|
27 |
import java.awt.event.ContainerListener; |
|
26 | 28 |
import java.util.Objects; |
27 | 29 |
import javax.swing.JTextArea; |
30 |
import javax.swing.event.DocumentEvent; |
|
31 |
import javax.swing.event.DocumentListener; |
|
32 |
import org.apache.commons.lang3.StringUtils; |
|
28 | 33 |
import org.gvsig.tools.dynform.DynFormFieldDefinition; |
29 | 34 |
|
30 | 35 |
import org.gvsig.tools.dynform.JDynFormField; |
... | ... | |
47 | 52 |
Object value |
48 | 53 |
) { |
49 | 54 |
super(serviceManager, componentsFactory, factory, definition, value); |
50 |
this.assignedValue = Objects.toString(value, "");
|
|
55 |
this.assignedValue = Objects.toString(value, null);
|
|
51 | 56 |
} |
52 | 57 |
|
53 | 58 |
@Override |
... | ... | |
61 | 66 |
|
62 | 67 |
@Override |
63 | 68 |
public void initComponent() { |
64 |
this.textArea = this.getComponentsFactory().getJTextArea(this.getDefinition(), null); |
|
69 |
ScrolledComponent<JTextArea> text = this.getComponentsFactory().getJTextArea(this.getDefinition(), null); |
|
70 |
this.textArea = text; |
|
71 |
text.getComponent().getDocument().addDocumentListener(new DocumentListener() { |
|
72 |
@Override |
|
73 |
public void insertUpdate(DocumentEvent e) { |
|
74 |
fireFieldChangedEvent(); |
|
75 |
} |
|
76 |
|
|
77 |
@Override |
|
78 |
public void removeUpdate(DocumentEvent e) { |
|
79 |
fireFieldChangedEvent(); |
|
80 |
} |
|
81 |
|
|
82 |
@Override |
|
83 |
public void changedUpdate(DocumentEvent e) { |
|
84 |
fireFieldChangedEvent(); |
|
85 |
} |
|
86 |
}); |
|
65 | 87 |
this.contents = this.textArea.getScrollPane(); |
66 | 88 |
this.getJTextArea().setLineWrap(true); |
67 | 89 |
this.getJTextArea().setWrapStyleWord(true); |
... | ... | |
76 | 98 |
|
77 | 99 |
@Override |
78 | 100 |
public void setValue(Object value) { |
79 |
String s; |
|
80 |
if (value == null) { |
|
81 |
value = this.getDefinition().getDefaultValue(); |
|
82 |
if (value == null) { |
|
83 |
s = ""; |
|
84 |
} else { |
|
85 |
s = value.toString(); |
|
86 |
} |
|
87 |
} else { |
|
88 |
s = value.toString(); |
|
89 |
} |
|
101 |
String s = Objects.toString(value, ""); |
|
102 |
this.assignedValue = Objects.toString(value, null); |
|
90 | 103 |
this.getJTextArea().setText(s); |
104 |
this.setTranslateEmptyToNull(value == null); |
|
91 | 105 |
} |
92 | 106 |
|
93 | 107 |
@Override |
94 | 108 |
public Object getValue() { |
95 |
Object value; |
|
96 | 109 |
String s = this.getJTextArea().getText(); |
97 |
if (s.trim().length() == 0) { |
|
98 |
value = (String) this.getDefinition().getDefaultValue(); |
|
99 |
} else { |
|
100 |
value = s; |
|
110 |
if (this.translateEmptyToNull() && StringUtils.isBlank(s)) { |
|
111 |
return null; |
|
101 | 112 |
} |
102 |
this.setValue(value); |
|
103 |
return value; |
|
113 |
return s; |
|
104 | 114 |
} |
105 | 115 |
|
106 | 116 |
@Override |
... | ... | |
108 | 118 |
return true; |
109 | 119 |
} |
110 | 120 |
|
111 |
@Override |
|
112 |
public void clear() { |
|
113 |
Object value = this.getDefinition().getDefaultValue(); |
|
114 |
if (value != null) { |
|
115 |
value = value.toString(); |
|
116 |
} else { |
|
117 |
value = ""; |
|
118 |
} |
|
119 |
this.getJTextArea().setText((String) value); |
|
120 |
} |
|
121 |
// @Override |
|
122 |
// public void clear() { |
|
123 |
// Object value = this.getDefinition().getDefaultValue(); |
|
124 |
// String s = Objects.toString(value, ""); |
|
125 |
// this.getJTextArea().setText(s); |
|
126 |
// } |
|
121 | 127 |
} |
Also available in: Unified diff