Subversion Repository Public Repository

litesoft

Diff Revisions 636 vs 637 for /trunk/GWT_Sandbox/FormEngine/src/com/temp/client/foundation/widget/input/fieldsupport/AbstractNonProxyInputField.java

Diff revisions: vs.
  @@ -127,14 +127,14 @@
127 127
128 128 @Override
129 129 public final void reset() {
130 - checkRunMode("reset").getInput().setValue(null);
130 + updateCurrentValue( checkRunMode( "reset" ), null );
131 131 }
132 132
133 133 @Override
134 134 public final T setCurrentValue(T value) {
135 - InputWidgetChangeFilter<T> input = checkRunMode("setCurrentValue").getInput();
136 - input.setValue(value);
137 - return input.getValue();
135 + CompleteInputFieldAccessor<T> fieldAccessor = checkRunMode( "setCurrentValue" );
136 + updateCurrentValue( fieldAccessor, value );
137 + return fieldAccessor.getInput().getValue();
138 138 }
139 139
140 140 @Override
  @@ -149,8 +149,18 @@
149 149
150 150 @Override
151 151 public final void revert() {
152 - InputWidgetChangeFilter<T> input = checkRunMode("revert").getInput();
153 - input.setValue(input.getBaseValue());
152 + CompleteInputFieldAccessor<T> fieldAccessor = checkRunMode( "revert" );
153 + updateCurrentValue( fieldAccessor, fieldAccessor.getInput().getBaseValue() );
154 + }
155 +
156 + protected final void updateCurrentValue(CompleteInputFieldAccessor<T> fieldAccessor, T value) {
157 + fieldAccessor.getInput().setValue( value );
158 + clearError(fieldAccessor);
159 + }
160 +
161 + protected final void clearError( CompleteInputFieldAccessor<T> fieldAccessor )
162 + {
163 + updateErrorLabel( fieldAccessor.getErrorLabel(), null );
154 164 }
155 165
156 166 @Override
  @@ -251,7 +261,9 @@
251 261 }
252 262
253 263 protected void processDataChanged() {
254 - updateStyle(checkRunMode("processDataChanged"));
264 + CompleteInputFieldAccessor<T> fieldAccessor = checkRunMode( "processDataChanged" );
265 + updateStyle( fieldAccessor );
266 + clearError( fieldAccessor );
255 267 notifyChangeListeners();
256 268 }
257 269