Revision: 1108
Author:   jhoskens
Date:     2006-05-02 05:06:57 -0700 (Tue, 02 May 2006)
ViewCVS:  http://svn.sourceforge.net/spring-rich-c/?rev=1108&view=rev

Log Message:
-----------
- Added error listener for isCommittable Property
- changed isValidating() method to include enabled check (thanks to ollie for 
the use case)
Now disabling validating is possible while formmodel is enabled.

Modified Paths:
--------------
    
trunk/spring-richclient/support/src/main/java/org/springframework/binding/form/support/DefaultFormModel.java
Modified: 
trunk/spring-richclient/support/src/main/java/org/springframework/binding/form/support/DefaultFormModel.java
===================================================================
--- 
trunk/spring-richclient/support/src/main/java/org/springframework/binding/form/support/DefaultFormModel.java
        2006-05-02 07:55:44 UTC (rev 1107)
+++ 
trunk/spring-richclient/support/src/main/java/org/springframework/binding/form/support/DefaultFormModel.java
        2006-05-02 12:06:57 UTC (rev 1108)
@@ -60,7 +60,7 @@
     private final Map bindingErrorMessages = new HashMap();
 
     private boolean validating = true;
-
+    
     private boolean oldValidating = true;
 
     private Validator validator;
@@ -112,14 +112,20 @@
 
             public void propertyChange(PropertyChangeEvent evt)
             {
-                setValidating(evt.getNewValue() == Boolean.TRUE ? true : 
false);                
+                validatingUpdated();                
             }
             
         });
+        
validationResultsModel.addPropertyChangeListener(ValidationResultsModel.HAS_ERRORS_PROPERTY,
 new PropertyChangeListener(){
+
+            public void propertyChange(PropertyChangeEvent evt)
+            {
+                committableUpdated();
+            }});
     }
 
     public boolean isValidating() {
-        return validating;
+        return validating && isEnabled();
     }
 
     public void setValidating(boolean validating) {
@@ -146,7 +152,7 @@
     }
 
     public void validate() {
-        if (validating) {
+        if (isValidating()) {
             validateAfterPropertyChanged(null);
         }
     }
@@ -199,7 +205,7 @@
      * known/available.
      */
     protected void validateAfterPropertyChanged(String formProperty) {
-        if (validating) {
+        if (isValidating()) {
             Validator validator = getValidator();
             if (validator != null) {
                 DefaultValidationResults validationResults = new 
DefaultValidationResults(bindingErrorMessages.values());
@@ -219,7 +225,7 @@
         ValidationMessage oldValidationMessage = 
(ValidationMessage)bindingErrorMessages.get(valueModel);
         ValidationMessage newValidationMessage = 
getBindingErrorMessage(valueModel.getFormProperty(), valueBeingSet, e);
         bindingErrorMessages.put(valueModel, newValidationMessage);
-        if (validating) {
+        if (isValidating()) {
             validationResultsModel.replaceMessage(oldValidationMessage, 
newValidationMessage);
         }
     }
@@ -242,7 +248,7 @@
      */
     protected void raiseValidationMessage(ValidationMessage validationMessage) 
{
         additionalValidationResults.addMessage(validationMessage);
-        if (validating) {
+        if (isValidating()) {
             validationResultsModel.addMessage(validationMessage);
         }
     }
@@ -254,7 +260,7 @@
      */
     protected void clearValidationMessage(ValidationMessage validationMessage) 
{
         additionalValidationResults.removeMessage(validationMessage);
-        if (validating) {
+        if (isValidating()) {
             validationResultsModel.removeMessage(validationMessage);
         }
     }


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
spring-rich-c-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/spring-rich-c-cvs

Reply via email to