Revision: 6632
Author: rj...@google.com
Date: Tue Nov  3 20:41:24 2009
Log: Make the alignment parsers field ref friendly

Review by jgw
http://code.google.com/p/google-web-toolkit/source/detail?r=6632

Modified:
   
/trunk/user/src/com/google/gwt/uibinder/parsers/HorizontalAlignmentConstantParser.java
  /trunk/user/src/com/google/gwt/uibinder/parsers/StrictAttributeParser.java
   
/trunk/user/src/com/google/gwt/uibinder/parsers/VerticalAlignmentConstantParser.java
  /trunk/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.ui.xml

=======================================
---  
/trunk/user/src/com/google/gwt/uibinder/parsers/HorizontalAlignmentConstantParser.java
   
Mon Nov  2 12:47:15 2009
+++  
/trunk/user/src/com/google/gwt/uibinder/parsers/HorizontalAlignmentConstantParser.java
   
Tue Nov  3 20:41:24 2009
@@ -24,7 +24,7 @@
   * Parses a
   * {...@link  
com.google.gwt.user.client.ui.HasHorizontalAlignment.HorizontalAlignmentConstant}.
   */
-public class HorizontalAlignmentConstantParser implements AttributeParser {
+public class HorizontalAlignmentConstantParser extends  
StrictAttributeParser {

    private static final HashMap<String, String> values =
      new HashMap<String, String>();
@@ -41,9 +41,9 @@
    public String parse(String value, MortalLogger logger)
        throws UnableToCompleteException {
      String translated = values.get(value);
-    if (translated == null) {
-      logger.die("Invalid value: horizontalAlignment='" + value + "'");
-    }
-    return translated;
+    if (translated != null) {
+      return translated;
+    }
+    return super.parse(value, logger);
    }
  }
=======================================
---  
/trunk/user/src/com/google/gwt/uibinder/parsers/StrictAttributeParser.java      
 
Mon Nov  2 12:47:15 2009
+++  
/trunk/user/src/com/google/gwt/uibinder/parsers/StrictAttributeParser.java      
 
Tue Nov  3 20:41:24 2009
@@ -66,7 +66,7 @@
      try {
        return new FieldReferenceConverter(new  
FieldReferenceDelegate()).convert(value);
      } catch (IllegalFieldReferenceException e) {
-      logger.die("Bad field reference: \"%s\"", value);
+      logger.die("Cannot parse value: \"%s\"", value);
        return null; // Unreachable
      }
    }
=======================================
---  
/trunk/user/src/com/google/gwt/uibinder/parsers/VerticalAlignmentConstantParser.java
     
Mon Nov  2 12:47:15 2009
+++  
/trunk/user/src/com/google/gwt/uibinder/parsers/VerticalAlignmentConstantParser.java
     
Tue Nov  3 20:41:24 2009
@@ -24,7 +24,7 @@
   * Parses a
   * {...@link  
com.google.gwt.user.client.ui.HasVerticalAlignment.VerticalAlignmentConstant}.
   */
-public class VerticalAlignmentConstantParser implements AttributeParser {
+public class VerticalAlignmentConstantParser extends StrictAttributeParser  
{

    private static final HashMap<String, String> values =
      new HashMap<String, String>();
@@ -41,9 +41,9 @@
    public String parse(String value, MortalLogger logger)
        throws UnableToCompleteException {
      String translated = values.get(value);
-    if (translated == null) {
-      logger.die("Invalid value: vorizontalAlignment='%s'", value);
-    }
-    return translated;
+    if (translated != null) {
+      return translated;
+    }
+    return super.parse(value, logger);
    }
  }
=======================================
---  
/trunk/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.ui.xml       
 
Mon Nov  2 21:35:39 2009
+++  
/trunk/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.ui.xml       
 
Tue Nov  3 20:41:24 2009
@@ -278,7 +278,7 @@
          <ui:attribute name="text" description="radio button name"/>
        </demo:PointlessRadioButtonSubclass>

-       <gwt:HorizontalPanel>
+       <gwt:HorizontalPanel horizontalAlignment="ALIGN_LEFT">
          <gwt:Cell><gwt:HTMLPanel>
        <p> ... a StackPanel ... </p>


--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to