Author: hlship
Date: Sat Sep  8 14:57:31 2007
New Revision: 573914

URL: http://svn.apache.org/viewvc?rev=573914&view=rev
Log:
TAPESTRY-1417: CSS classes on text input fields are discarded when field is in 
error

Modified:
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/ValidationDecorator.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractField.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractTextField.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Checkbox.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Select.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Submit.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/FieldValidatorImpl.java
    
tapestry/tapestry5/trunk/tapestry-upload/src/main/java/org/apache/tapestry/upload/components/Upload.java

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/ValidationDecorator.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/ValidationDecorator.java?rev=573914&r1=573913&r2=573914&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/ValidationDecorator.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/ValidationDecorator.java
 Sat Sep  8 14:57:31 2007
@@ -43,6 +43,9 @@
 
     /**
      * Invoked at a point where the decorator may write additional attributes 
into the field.
+     * Generally speaking, you will want to
+     * [EMAIL PROTECTED] 
ComponentResources#renderInformalParameters(MarkupWriter) render informal 
parameters}
+     * <strong>before</strong> invoking this method.
      * 
      * @param field
      */

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractField.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractField.java?rev=573914&r1=573913&r2=573914&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractField.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractField.java
 Sat Sep  8 14:57:31 2007
@@ -32,6 +32,7 @@
 import org.apache.tapestry.annotations.Mixin;
 import org.apache.tapestry.annotations.Parameter;
 import org.apache.tapestry.annotations.SetupRender;
+import org.apache.tapestry.annotations.SupportsInformalParameters;
 import org.apache.tapestry.corelib.mixins.DiscardBody;
 import org.apache.tapestry.corelib.mixins.RenderDisabled;
 import org.apache.tapestry.corelib.mixins.RenderInformals;
@@ -42,6 +43,7 @@
  * Provides initialization of the clientId and elementName properties. In 
addition, adds the
  * [EMAIL PROTECTED] RenderInformals}, [EMAIL PROTECTED] RenderDisabled} and 
[EMAIL PROTECTED] DiscardBody} mixins.
  */
[EMAIL PROTECTED]
 public abstract class AbstractField implements Field
 {
     /**
@@ -60,10 +62,6 @@
      */
     @Parameter("false")
     private boolean _disabled;
-
-    @SuppressWarnings("unused")
-    @Mixin
-    private RenderInformals _renderInformals;
 
     @SuppressWarnings("unused")
     @Mixin

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractTextField.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractTextField.java?rev=573914&r1=573913&r2=573914&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractTextField.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractTextField.java
 Sat Sep  8 14:57:31 2007
@@ -141,6 +141,8 @@
         writeFieldTag(writer, value);
 
         _validate.render(writer);
+        
+        _resources.renderInformalParameters(writer);
 
         getValidationDecorator().insideField(this);
     }

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Checkbox.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Checkbox.java?rev=573914&r1=573913&r2=573914&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Checkbox.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Checkbox.java
 Sat Sep  8 14:57:31 2007
@@ -15,6 +15,7 @@
 package org.apache.tapestry.corelib.components;
 
 import org.apache.tapestry.Binding;
+import org.apache.tapestry.ComponentResources;
 import org.apache.tapestry.MarkupWriter;
 import org.apache.tapestry.annotations.AfterRender;
 import org.apache.tapestry.annotations.BeginRender;
@@ -37,6 +38,9 @@
     @Parameter(required = true)
     private boolean _value;
 
+    @Inject
+    private ComponentResources _resources;
+
     Binding defaultValue()
     {
         return createDefaultParameterBinding("value");
@@ -55,6 +59,8 @@
                 getClientId(),
                 "checked",
                 _value ? "checked" : null);
+
+        _resources.renderInformalParameters(writer);
 
         getValidationDecorator().insideField(this);
     }

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Select.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Select.java?rev=573914&r1=573913&r2=573914&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Select.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Select.java
 Sat Sep  8 14:57:31 2007
@@ -142,7 +142,9 @@
     {
         writer.element("select", "name", getElementName(), "id", 
getClientId());
 
-        // Disabled, informals via mixins
+        _resources.renderInformalParameters(writer);
+        
+        // Disabled via mixin
     }
 
     @SuppressWarnings("unchecked")

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Submit.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Submit.java?rev=573914&r1=573913&r2=573914&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Submit.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Submit.java
 Sat Sep  8 14:57:31 2007
@@ -65,6 +65,8 @@
     void beginRender(MarkupWriter writer)
     {
         writer.element("input", "type", "submit", "name", getElementName(), 
"id", getClientId());
+
+        _resources.renderInformalParameters(writer);
     }
 
     void afterRender(MarkupWriter writer)

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/FieldValidatorImpl.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/FieldValidatorImpl.java?rev=573914&r1=573913&r2=573914&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/FieldValidatorImpl.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/FieldValidatorImpl.java
 Sat Sep  8 14:57:31 2007
@@ -60,7 +60,7 @@
     @SuppressWarnings("unchecked")
     public void render(MarkupWriter writer)
     {
-        // TODO: Skip this step if the Form's clientValidatio parameter is 
false?
+        // TODO: Skip this step if the Form's clientValidation parameter is 
false?
 
         _validator.render(_field, _constraintValue, _messageFormatter, writer, 
_pageRenderSupport);
     }

Modified: 
tapestry/tapestry5/trunk/tapestry-upload/src/main/java/org/apache/tapestry/upload/components/Upload.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-upload/src/main/java/org/apache/tapestry/upload/components/Upload.java?rev=573914&r1=573913&r2=573914&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-upload/src/main/java/org/apache/tapestry/upload/components/Upload.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-upload/src/main/java/org/apache/tapestry/upload/components/Upload.java
 Sat Sep  8 14:57:31 2007
@@ -46,7 +46,7 @@
     private UploadedFile _value;
 
     /**
-     * The object that will peform input validation. The "validate:" binding 
prefix is generally
+     * The object that will perform input validation. The "validate:" binding 
prefix is generally
      * used to provide this object in a declarative fashion.
      */
     @Parameter(defaultPrefix = "validate")
@@ -139,6 +139,9 @@
         writer.element("input", "type", "file", "name", getElementName(), 
"id", getClientId());
 
         _validate.render(writer);
+        
+        _resources.renderInformalParameters(writer);
+        
         getValidationDecorator().insideField(this);
     }
 


Reply via email to