As we'd discussed earlier, here's a cut at giving our Style class explicit
accessors for the various property attributes.

(Not that it matters, but the only thing I *really* hate about our
checkstyle alphabetization is that it splits clear/get/setFoo apart.  C'est
la vie.)

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

Index: user/src/com/google/gwt/dom/client/Style.java
===================================================================
--- user/src/com/google/gwt/dom/client/Style.java	(revision 5099)
+++ user/src/com/google/gwt/dom/client/Style.java	(working copy)
@@ -1,12 +1,12 @@
 /*
  * Copyright 2008 Google Inc.
- * 
+ *
  * Licensed under the Apache License, Version 2.0 (the "License"); you may not
  * use this file except in compliance with the License. You may obtain a copy of
  * the License at
- * 
+ *
  * http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -17,17 +17,724 @@
 
 import com.google.gwt.core.client.JavaScriptObject;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * Provides programmatic access to properties of the style object.
- * 
+ *
  * @see Element#getStyle()
  */
 public class Style extends JavaScriptObject {
 
+  /**
+   * Enum for the border-style property.
+   */
+  public static enum BorderStyle {
+     NONE,
+     HIDDEN,
+     DOTTED,
+     DASHED,
+     SOLID;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, BorderStyle> map = new HashMap<String, BorderStyle>();
+    static {
+      map.put("none", NONE);
+      map.put("hidden", HIDDEN);
+      map.put("dotted", DOTTED);
+      map.put("dashed", DASHED);
+      map.put("solid", SOLID);
+    }
+  }
+
+  /**
+   * Enum for the cursor property.
+   */
+  public static enum Cursor {
+     DEFAULT,
+     AUTO,
+     CROSSHAIR,
+     POINTER,
+     MOVE,
+     E_RESIZE,
+     NE_RESIZE,
+     NW_RESIZE,
+     N_RESIZE,
+     SE_RESIZE,
+     SW_RESIZE,
+     S_RESIZE,
+     W_RESIZE,
+     TEXT,
+     WAIT,
+     HELP,
+     COL_RESIZE,
+     ROW_RESIZE;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, Cursor> map = new HashMap<String, Cursor>();
+    static {
+      map.put("default", DEFAULT);
+      map.put("auto", AUTO);
+      map.put("crosshair", CROSSHAIR);
+      map.put("pointer", POINTER);
+      map.put("move", MOVE);
+      map.put("e-resize", E_RESIZE);
+      map.put("ne-resize", NE_RESIZE);
+      map.put("nw-resize", NW_RESIZE);
+      map.put("n-resize", N_RESIZE);
+      map.put("se-resize", SE_RESIZE);
+      map.put("sw-resize", SW_RESIZE);
+      map.put("s-resize", S_RESIZE);
+      map.put("w-resize", W_RESIZE);
+      map.put("text", TEXT);
+      map.put("wait", WAIT);
+      map.put("help", HELP);
+      map.put("col-resize", COL_RESIZE);
+      map.put("row-resize", ROW_RESIZE);
+    }
+  }
+
+  /**
+   * Enum for the display property.
+   */
+  public static enum Display {
+     NONE,
+     BLOCK,
+     INLINE,
+     INLINE_BLOCK;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, Display> map = new HashMap<String, Display>();
+    static {
+      map.put("none", NONE);
+      map.put("block", BLOCK);
+      map.put("inline", INLINE);
+      map.put("inline-block", INLINE_BLOCK);
+    }
+  }
+
+  /**
+   * Enum for the font-style property.
+   */
+  public static enum FontStyle {
+     NORMAL,
+     ITALIC,
+     OBLIQUE;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, FontStyle> map = new HashMap<String, FontStyle>();
+    static {
+      map.put("normal", NORMAL);
+      map.put("italic", ITALIC);
+      map.put("oblique", OBLIQUE);
+    }
+  }
+
+  /**
+   * Enum for the font-weight property.
+   */
+  public static enum FontWeight {
+     NORMAL,
+     BOLD,
+     BOLDER,
+     LIGHTER;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, FontWeight> map = new HashMap<String, FontWeight>();
+    static {
+      map.put("normal", NORMAL);
+      map.put("bold", BOLD);
+      map.put("bolder", BOLDER);
+      map.put("lighter", LIGHTER);
+    }
+  }
+
+  /**
+   * Enum for the list-style-type property.
+   */
+  public static enum ListStyleType {
+     NONE,
+     DISC,
+     CIRCLE,
+     SQUARE,
+     DECIMAL,
+     LOWER_ALPHA,
+     UPPER_ALPHA,
+     LOWER_ROMAN,
+     UPPER_ROMAN;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, ListStyleType> map = new HashMap<String, ListStyleType>();
+    static {
+      map.put("none", NONE);
+      map.put("disc", DISC);
+      map.put("circle", CIRCLE);
+      map.put("square", SQUARE);
+      map.put("decimal", DECIMAL);
+      map.put("lower-alpha", LOWER_ALPHA);
+      map.put("upper-alpha", UPPER_ALPHA);
+      map.put("lower-roman", LOWER_ROMAN);
+      map.put("upper-roman", UPPER_ROMAN);
+    }
+  }
+
+  /**
+   *  Enum for the overflow property.
+   */
+  public static enum Overflow {
+     VISIBLE,
+     HIDDEN,
+     SCROLL,
+     AUTO;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, Overflow> map = new HashMap<String, Overflow>();
+    static {
+      map.put("visible", VISIBLE);
+      map.put("hidden", HIDDEN);
+      map.put("scroll", SCROLL);
+      map.put("auto", AUTO);
+    }
+  }
+
+  /**
+   * Enum for the position property.
+   */
+  public static enum Position {
+     STATIC,
+     RELATIVE,
+     ABSOLUTE,
+     FIXED;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, Position> map = new HashMap<String, Position>();
+    static {
+      map.put("static", STATIC);
+      map.put("relative", RELATIVE);
+      map.put("absolute", ABSOLUTE);
+      map.put("fixed", FIXED);
+    }
+  }
+
+  /**
+   * Enum for the text-decoration property.
+   */
+  public static enum TextDecoration {
+     NONE,
+     UNDERLINE,
+     OVERLINE,
+     LINE_THROUGH;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, TextDecoration> map = new HashMap<String, TextDecoration>();
+    static {
+      map.put("none", NONE);
+      map.put("underline", UNDERLINE);
+      map.put("overline", OVERLINE);
+      map.put("line-through", LINE_THROUGH);
+    }
+  }
+
+  /**
+   * Enum for the visibility property.
+   */
+  public static enum Visibility {
+     VISIBLE,
+     HIDDEN;
+    // Map because Enum.valueOf does not work in GWT
+    static Map<String, Visibility> map = new HashMap<String, Visibility>();
+    static {
+      map.put("visible", VISIBLE);
+      map.put("hidden", HIDDEN);
+    }
+  }
+
   protected Style() {
   }
 
   /**
+   * Clear the background-color css property.
+   */
+  public final native void clearBackgroundColor() /*-{
+    this.backgroundColor = "";
+  }-*/;
+
+  /**
+   * Clear the background-image css property.
+   */
+  public final native void clearBackgroundImage() /*-{
+    this.backgroundImage = "";
+  }-*/;
+
+  /**
+   * Clear the border-color css property.
+   */
+  public final native void clearBorderColor() /*-{
+    this.borderColor = "";
+  }-*/;
+
+  /**
+   * Clear the border-style css property.
+   */
+  public final native void clearBorderStyle() /*-{
+    this.borderStyle = "";
+  }-*/;
+
+  /**
+   * Clear the border-width css property.
+   */
+  public final native void clearBorderWidth() /*-{
+    this.borderWidth = "";
+  }-*/;
+
+  /**
+   * Clear the bottom css property.
+   */
+  public final native void clearBottom() /*-{
+    this.bottom = "";
+  }-*/;
+
+  /**
+   * Clear the color css property.
+   */
+  public final native void clearColor() /*-{
+    this.color = "";
+  }-*/;
+
+  /**
+   * Clear the cursor css property.
+   */
+  public final native void clearCursor() /*-{
+    this.cursor = "";
+  }-*/;
+
+  /**
+   * Clear the display css property.
+   */
+  public final native void clearDisplay() /*-{
+    this.display = "";
+  }-*/;
+
+  /**
+   * Clear the font-size css property.
+   */
+  public final native void clearFontSize() /*-{
+    this.fontSize = "";
+  }-*/;
+
+  /**
+   * Clear the font-style css property.
+   */
+  public final native void clearFontStyle() /*-{
+    this.fontStyle = "";
+  }-*/;
+
+  /**
+   * Clear the font-weight css property.
+   */
+  public final native void clearFontWeight() /*-{
+    this.fontWeight = "";
+  }-*/;
+
+  /**
+   * Clear the height css property.
+   */
+  public final native void clearHeight() /*-{
+    this.height = "";
+  }-*/;
+
+  /**
+   * Clear the left css property.
+   */
+  public final native void clearLeft() /*-{
+    this.left = "";
+  }-*/;
+
+  /**
+   * Clear the list-style-type css property.
+   */
+  public final native void clearListStyleType() /*-{
+    this.listStyleType = "";
+  }-*/;
+
+  /**
+   * Clear the margin css property.
+   */
+  public final native void clearMargin() /*-{
+    this.margin = "";
+  }-*/;
+
+  /**
+   * Clear the margin-bottom css property.
+   */
+  public final native void clearMarginBottom() /*-{
+    this.marginBottom = "";
+  }-*/;
+
+  /**
+   * Clear the margin-left css property.
+   */
+  public final native void clearMarginLeft() /*-{
+    this.marginLeft = "";
+  }-*/;
+
+  /**
+   * Clear the margin-right css property.
+   */
+  public final native void clearMarginRight() /*-{
+    this.marginRight = "";
+  }-*/;
+
+  /**
+   * Clear the margin-top css property.
+   */
+  public final native void clearMarginTop() /*-{
+    this.marginTop = "";
+  }-*/;
+
+  /**
+   * Clear the opacity css property.
+   */
+  public final native void clearOpacity() /*-{
+    this.opacity = "";
+  }-*/;
+
+  /**
+   * Clear the overflow css property.
+   */
+  public final native void clearOverflow() /*-{
+    this.overflow = "";
+  }-*/;
+
+  /**
+   * Clear the padding css property.
+   */
+  public final native void clearPadding() /*-{
+    this.padding = "";
+  }-*/;
+
+  /**
+   * Clear the padding-bottom css property.
+   */
+  public final native void clearPaddingBottom() /*-{
+    this.paddingBottom = "";
+  }-*/;
+
+  /**
+   * Clear the padding-left css property.
+   */
+  public final native void clearPaddingLeft() /*-{
+    this.paddingLeft = "";
+  }-*/;
+
+  /**
+   * Clear the padding-right css property.
+   */
+  public final native void clearPaddingRight() /*-{
+    this.paddingRight = "";
+  }-*/;
+
+  /**
+   * Clear the padding-top css property.
+   */
+  public final native void clearPaddingTop() /*-{
+    this.paddingTop = "";
+  }-*/;
+
+  /**
+   * Clear the position css property.
+   */
+  public final native void clearPosition() /*-{
+    this.position = "";
+  }-*/;
+
+  /**
+   * Clear the right css property.
+   */
+  public final native void clearRight() /*-{
+    this.right = "";
+  }-*/;
+
+  /**
+   * Clear the text-decoration css property.
+   */
+  public final native void clearTextDecoration() /*-{
+    this.textDecoration = "";
+  }-*/;
+
+  /**
+   * Clear the top css property.
+   */
+  public final native void clearTop() /*-{
+    this.top = "";
+  }-*/;
+
+  /**
+   * Clear the visibility css property.
+   */
+  public final native void clearVisibility() /*-{
+    this.visibility = "";
+  }-*/;
+
+  /**
+   * Clear the width css property.
+   */
+  public final native void clearWidth() /*-{
+    this.width = "";
+  }-*/;
+
+  /**
+   * Clear the z-index css property.
+   */
+  public final native void clearZIndex() /*-{
+    this.zIndex = "";
+  }-*/;
+
+  /**
+   * Get the background-color css property.
+   */
+  public final native String getBackgroundColor() /*-{
+    return this.backgroundColor;
+  }-*/;
+
+  /**
+   * Get the background-image css property.
+   */
+  public final native String getBackgroundImage() /*-{
+    return this.backgroundImage;
+  }-*/;
+
+  /**
+   * Get the border-color css property.
+   */
+  public final native String getBorderColor() /*-{
+    return this.borderColor;
+  }-*/;
+
+  /**
+   * Get the border-style css property as an enum value.
+   */
+  public final BorderStyle getBorderStyle() {
+    return BorderStyle.map.get(getBorderStyleAsString());
+  }
+
+  /**
+   * Get the border-style css property.
+   */
+  public final native String getBorderStyleAsString() /*-{
+    return this.borderStyle;
+  }-*/;
+
+  /**
+   * Get the border-width css property.
+   */
+  public final native String getBorderWidth() /*-{
+    return this.borderWidth;
+  }-*/;
+
+  /**
+   * Get the bottom css property.
+   */
+  public final native String getBottom() /*-{
+    return this.bottom;
+  }-*/;
+
+  /**
+   * Get the color css property.
+   */
+  public final native String getColor() /*-{
+    return this.color;
+  }-*/;
+
+  /**
+   * Get the cursor css property as an enum value.
+   */
+  public final Cursor getCursor() {
+    return Cursor.map.get(getCursorAsString());
+  }
+
+  /**
+   * Get the cursor css property.
+   */
+  public final native String getCursorAsString() /*-{
+    return this.cursor;
+  }-*/;
+
+  /**
+   * Get the display css property as an enum value.
+   */
+  public final Display getDisplay() {
+    return Display.map.get(getDisplayAsString());
+  }
+
+  /**
+   * Get the display css property.
+   */
+  public final native String getDisplayAsString() /*-{
+    return this.display;
+  }-*/;
+
+  /**
+   * Get the font-size css property.
+   */
+  public final native String getFontSize() /*-{
+    return this.fontSize;
+  }-*/;
+
+  /**
+   * Get the font-style css property as an enum value.
+   */
+  public final FontStyle getFontStyle() {
+    return FontStyle.map.get(getFontStyleAsString());
+  }
+
+  /**
+   * Get the font-style css property.
+   */
+  public final native String getFontStyleAsString() /*-{
+    return this.fontStyle;
+  }-*/;
+
+  /**
+   * Get the font-weight css property as an enum value.
+   */
+  public final FontWeight getFontWeight() {
+    return FontWeight.map.get(getFontWeightAsString());
+  }
+
+  /**
+   * Get the font-weight css property.
+   */
+  public final native String getFontWeightAsString() /*-{
+    return this.fontWeight;
+  }-*/;
+
+  /**
+   * Get the height css property.
+   */
+  public final native String getHeight() /*-{
+    return this.height;
+  }-*/;
+
+  /**
+   * Get the left css property.
+   */
+  public final native String getLeft() /*-{
+    return this.left;
+  }-*/;
+
+  /**
+   * Get the list-style-type css property as an enum value.
+   */
+  public final ListStyleType getListStyleType() {
+    return ListStyleType.map.get(getListStyleTypeAsString());
+  }
+
+  /**
+   * Get the list-style-type css property.
+   */
+  public final native String getListStyleTypeAsString() /*-{
+    return this.listStyleType;
+  }-*/;
+
+  /**
+   * Get the margin css property.
+   */
+  public final native String getMargin() /*-{
+    return this.margin;
+  }-*/;
+
+  /**
+   * Get the margin-bottom css property.
+   */
+  public final native String getMarginBottom() /*-{
+    return this.marginBottom;
+  }-*/;
+
+  /**
+   * Get the margin-left css property.
+   */
+  public final native String getMarginLeft() /*-{
+    return this.marginLeft;
+  }-*/;
+
+  /**
+   * Get the margin-right css property.
+   */
+  public final native String getMarginRight() /*-{
+    return this.marginRight;
+  }-*/;
+
+  /**
+   * Get the margin-top css property.
+   */
+  public final native String getMarginTop() /*-{
+    return this.marginTop;
+  }-*/;
+
+  /**
+   * Get the opacity css property.
+   */
+  public final native String getOpacity() /*-{
+    return this.opacity;
+  }-*/;
+
+  /**
+   * Get the overflow css property as an enum value.
+   */
+  public final Overflow getOverflow() {
+    return Overflow.map.get(getOverflowAsString());
+  }
+
+  /**
+   * Get the overflow css property.
+   */
+  public final native String getOverflowAsString() /*-{
+    return this.overflow;
+  }-*/;
+
+  /**
+   * Get the padding css property.
+   */
+  public final native String getPadding() /*-{
+    return this.padding;
+  }-*/;
+
+  /**
+   * Get the padding-bottom css property.
+   */
+  public final native String getPaddingBottom() /*-{
+    return this.paddingBottom;
+  }-*/;
+
+  /**
+   * Get the padding-left css property.
+   */
+  public final native String getPaddingLeft() /*-{
+    return this.paddingLeft;
+  }-*/;
+
+  /**
+   * Get the padding-right css property.
+   */
+  public final native String getPaddingRight() /*-{
+    return this.paddingRight;
+  }-*/;
+
+  /**
+   * Get the padding-top css property.
+   */
+  public final native String getPaddingTop() /*-{
+    return this.paddingTop;
+  }-*/;
+
+  /**
+   * Get the position css property as an enum value.
+   */
+  public final Position getPosition() {
+    return Position.map.get(getPositionAsString());
+  }
+
+  /**
+   * Get the position css property.
+   */
+  public final native String getPositionAsString() /*-{
+    return this.position;
+  }-*/;
+
+  /**
    * Gets the value of a named property.
    */
   public final String getProperty(String name) {
@@ -36,6 +743,686 @@
   }
 
   /**
+   * Get the right css property.
+   */
+  public final native String getRight() /*-{
+    return this.right;
+  }-*/;
+
+  /**
+   * Get the text-decoration css property as an enum value.
+   */
+  public final TextDecoration getTextDecoration() {
+    return TextDecoration.map.get(getTextDecorationAsString());
+  }
+
+  /**
+   * Get the text-decoration css property.
+   */
+  public final native String getTextDecorationAsString() /*-{
+    return this.textDecoration;
+  }-*/;
+
+  /**
+   * Get the top css property.
+   */
+  public final native String getTop() /*-{
+    return this.top;
+  }-*/;
+
+  /**
+   * Get the visibility css property as an enum value.
+   */
+  public final Visibility getVisibility() {
+    return Visibility.map.get(getVisibilityAsString());
+  }
+
+  /**
+   * Get the visibility css property.
+   */
+  public final native String getVisibilityAsString() /*-{
+    return this.visibility;
+  }-*/;
+
+  /**
+   * Get the width css property.
+   */
+  public final native String getWidth() /*-{
+    return this.width;
+  }-*/;
+
+  /**
+   * Get the z-index css property.
+   */
+  public final native String getZIndex() /*-{
+    return this.zIndex;
+  }-*/;
+
+  /**
+   * Set the background-color css property.
+   */
+  public final native void setBackgroundColor(String value) /*-{
+    this.backgroundColor = value;
+  }-*/;
+
+  /**
+   * Set the background-image css property.
+   */
+  public final native void setBackgroundImage(String value) /*-{
+    this.backgroundImage = value;
+  }-*/;
+
+  /**
+   * Set the border-color css property.
+   */
+  public final native void setBorderColor(String value) /*-{
+    this.borderColor = value;
+  }-*/;
+
+  /**
+   * Set the border-style css property.
+   */
+  public final native void setBorderStyle(BorderStyle value) /*-{
+    this.borderStyle =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
+   * Set the border-width css property.
+   */
+  public final native void setBorderWidth(String value) /*-{
+    this.borderWidth = value;
+  }-*/;
+
+  /**
+   * Set the border-width css property.
+   */
+  public final native void setBorderWidthEm(double value) /*-{
+    this.borderWidth = value + "em";
+  }-*/;
+
+  /**
+   * Set the border-width css property.
+   */
+  public final native void setBorderWidthEx(double value) /*-{
+    this.borderWidth = value + "ex";
+  }-*/;
+
+  /**
+   * Set the border-width css property.
+   */
+  public final native void setBorderWidthPt(double value) /*-{
+    this.borderWidth = value + "pt";
+  }-*/;
+
+  /**
+   * Set the border-width css property.
+   */
+  public final native void setBorderWidthPx(int value) /*-{
+    this.borderWidth = value + "px";
+  }-*/;
+
+  /**
+   * Set the bottom css property.
+   */
+  public final native void setBottom(String value) /*-{
+    this.bottom = value;
+  }-*/;
+
+  /**
+   * Set the bottom css property.
+   */
+  public final native void setBottomEm(double value) /*-{
+    this.bottom = value + "em";
+  }-*/;
+
+  /**
+   * Set the bottom css property.
+   */
+  public final native void setBottomEx(double value) /*-{
+    this.bottom = value + "ex";
+  }-*/;
+
+  /**
+   * Set the bottom css property.
+   */
+  public final native void setBottomPt(double value) /*-{
+    this.bottom = value + "pt";
+  }-*/;
+
+  /**
+   * Set the bottom css property.
+   */
+  public final native void setBottomPx(int value) /*-{
+    this.bottom = value + "px";
+  }-*/;
+
+  /**
+   * Set the color css property.
+   */
+  public final native void setColor(String value) /*-{
+    this.color = value;
+  }-*/;
+
+  /**
+   * Set the cursor css property.
+   */
+  public final native void setCursor(Cursor value) /*-{
+    this.cursor =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
+   * Set the display css property.
+   */
+  public final native void setDisplay(Display value) /*-{
+    this.display =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
+   * Set the font-size css property.
+   */
+  public final native void setFontSize(String value) /*-{
+    this.fontSize = value;
+  }-*/;
+
+  /**
+   * Set the font-size css property.
+   */
+  public final native void setFontSizeEm(double value) /*-{
+    this.fontSize = value + "em";
+  }-*/;
+
+  /**
+   * Set the font-size css property.
+   */
+  public final native void setFontSizeEx(double value) /*-{
+    this.fontSize = value + "ex";
+  }-*/;
+
+  /**
+   * Set the font-size css property.
+   */
+  public final native void setFontSizePt(double value) /*-{
+    this.fontSize = value + "pt";
+  }-*/;
+
+  /**
+   * Set the font-size css property.
+   */
+  public final native void setFontSizePx(int value) /*-{
+    this.fontSize = value + "px";
+  }-*/;
+
+  /**
+   * Set the font-style css property.
+   */
+  public final native void setFontStyle(FontStyle value) /*-{
+    this.fontStyle =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
+   * Set the font-weight css property.
+   */
+  public final native void setFontWeight(FontWeight value) /*-{
+    this.fontWeight =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
+   * Set the height css property.
+   */
+  public final native void setHeight(String value) /*-{
+    this.height = value;
+  }-*/;
+
+  /**
+   * Set the height css property.
+   */
+  public final native void setHeightEm(double value) /*-{
+    this.height = value + "em";
+  }-*/;
+
+  /**
+   * Set the height css property.
+   */
+  public final native void setHeightEx(double value) /*-{
+    this.height = value + "ex";
+  }-*/;
+
+  /**
+   * Set the height css property.
+   */
+  public final native void setHeightPt(double value) /*-{
+    this.height = value + "pt";
+  }-*/;
+
+  /**
+   * Set the height css property.
+   */
+  public final native void setHeightPx(int value) /*-{
+    this.height = value + "px";
+  }-*/;
+
+  /**
+   * Set the left css property.
+   */
+  public final native void setLeft(String value) /*-{
+    this.left = value;
+  }-*/;
+
+  /**
+   * Set the left css property.
+   */
+  public final native void setLeftEm(double value) /*-{
+    this.left = value + "em";
+  }-*/;
+
+  /**
+   * Set the left css property.
+   */
+  public final native void setLeftEx(double value) /*-{
+    this.left = value + "ex";
+  }-*/;
+
+  /**
+   * Set the left css property.
+   */
+  public final native void setLeftPt(double value) /*-{
+    this.left = value + "pt";
+  }-*/;
+
+  /**
+   * Set the left css property.
+   */
+  public final native void setLeftPx(int value) /*-{
+    this.left = value + "px";
+  }-*/;
+
+  /**
+   * Set the list-style-type css property.
+   */
+  public final native void setListStyleType(ListStyleType value) /*-{
+    this.listStyleType =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
+   * Set the margin css property.
+   */
+  public final native void setMargin(String value) /*-{
+    this.margin = value;
+  }-*/;
+
+  /**
+   * Set the margin-bottom css property.
+   */
+  public final native void setMarginBottom(String value) /*-{
+    this.marginBottom = value;
+  }-*/;
+
+  /**
+   * Set the margin-bottom css property.
+   */
+  public final native void setMarginBottomEm(double value) /*-{
+    this.marginBottom = value + "em";
+  }-*/;
+
+  /**
+   * Set the margin-bottom css property.
+   */
+  public final native void setMarginBottomEx(double value) /*-{
+    this.marginBottom = value + "ex";
+  }-*/;
+
+  /**
+   * Set the margin-bottom css property.
+   */
+  public final native void setMarginBottomPt(double value) /*-{
+    this.marginBottom = value + "pt";
+  }-*/;
+
+  /**
+   * Set the margin-bottom css property.
+   */
+  public final native void setMarginBottomPx(int value) /*-{
+    this.marginBottom = value + "px";
+  }-*/;
+
+  /**
+   * Set the margin css property.
+   */
+  public final native void setMarginEm(double value) /*-{
+    this.margin = value + "em";
+  }-*/;
+
+  /**
+   * Set the margin css property.
+   */
+  public final native void setMarginEx(double value) /*-{
+    this.margin = value + "ex";
+  }-*/;
+
+  /**
+   * Set the margin-left css property.
+   */
+  public final native void setMarginLeft(String value) /*-{
+    this.marginLeft = value;
+  }-*/;
+
+  /**
+   * Set the margin-left css property.
+   */
+  public final native void setMarginLeftEm(double value) /*-{
+    this.marginLeft = value + "em";
+  }-*/;
+
+  /**
+   * Set the margin-left css property.
+   */
+  public final native void setMarginLeftEx(double value) /*-{
+    this.marginLeft = value + "ex";
+  }-*/;
+
+  /**
+   * Set the margin-left css property.
+   */
+  public final native void setMarginLeftPt(double value) /*-{
+    this.marginLeft = value + "pt";
+  }-*/;
+
+  /**
+   * Set the margin-left css property.
+   */
+  public final native void setMarginLeftPx(int value) /*-{
+    this.marginLeft = value + "px";
+  }-*/;
+
+  /**
+   * Set the margin css property.
+   */
+  public final native void setMarginPt(double value) /*-{
+    this.margin = value + "pt";
+  }-*/;
+
+  /**
+   * Set the margin css property.
+   */
+  public final native void setMarginPx(int value) /*-{
+    this.margin = value + "px";
+  }-*/;
+
+  /**
+   * Set the margin-right css property.
+   */
+  public final native void setMarginRight(String value) /*-{
+    this.marginRight = value;
+  }-*/;
+
+  /**
+   * Set the margin-right css property.
+   */
+  public final native void setMarginRightEm(double value) /*-{
+    this.marginRight = value + "em";
+  }-*/;
+
+  /**
+   * Set the margin-right css property.
+   */
+  public final native void setMarginRightEx(double value) /*-{
+    this.marginRight = value + "ex";
+  }-*/;
+
+  /**
+   * Set the margin-right css property.
+   */
+  public final native void setMarginRightPt(double value) /*-{
+    this.marginRight = value + "pt";
+  }-*/;
+
+  /**
+   * Set the margin-right css property.
+   */
+  public final native void setMarginRightPx(int value) /*-{
+    this.marginRight = value + "px";
+  }-*/;
+
+  /**
+   * Set the margin-top css property.
+   */
+  public final native void setMarginTop(String value) /*-{
+    this.marginTop = value;
+  }-*/;
+
+  /**
+   * Set the margin-top css property.
+   */
+  public final native void setMarginTopEm(double value) /*-{
+    this.marginTop = value + "em";
+  }-*/;
+
+  /**
+   * Set the margin-top css property.
+   */
+  public final native void setMarginTopEx(double value) /*-{
+    this.marginTop = value + "ex";
+  }-*/;
+
+  /**
+   * Set the margin-top css property.
+   */
+  public final native void setMarginTopPt(double value) /*-{
+    this.marginTop = value + "pt";
+  }-*/;
+
+  /**
+   * Set the margin-top css property.
+   */
+  public final native void setMarginTopPx(int value) /*-{
+    this.marginTop = value + "px";
+  }-*/;
+
+  /**
+   * Set the opacity css property.
+   */
+  public final native void setOpacity(double value) /*-{
+    this.opacity = value + "";
+  }-*/;
+
+  /**
+   * Set the overflow css property.
+   */
+  public final native void setOverflow(Overflow value) /*-{
+    this.overflow =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
+   * Set the padding css property.
+   */
+  public final native void setPadding(String value) /*-{
+    this.padding = value;
+  }-*/;
+
+  /**
+   * Set the padding-bottom css property.
+   */
+  public final native void setPaddingBottom(String value) /*-{
+    this.paddingBottom = value;
+  }-*/;
+
+  /**
+   * Set the padding-bottom css property.
+   */
+  public final native void setPaddingBottomEm(double value) /*-{
+    this.paddingBottom = value + "em";
+  }-*/;
+
+  /**
+   * Set the padding-bottom css property.
+   */
+  public final native void setPaddingBottomEx(double value) /*-{
+    this.paddingBottom = value + "ex";
+  }-*/;
+
+  /**
+   * Set the padding-bottom css property.
+   */
+  public final native void setPaddingBottomPt(double value) /*-{
+    this.paddingBottom = value + "pt";
+  }-*/;
+
+  /**
+   * Set the padding-bottom css property.
+   */
+  public final native void setPaddingBottomPx(int value) /*-{
+    this.paddingBottom = value + "px";
+  }-*/;
+
+  /**
+   * Set the padding css property.
+   */
+  public final native void setPaddingEm(double value) /*-{
+    this.padding = value + "em";
+  }-*/;
+
+  /**
+   * Set the padding css property.
+   */
+  public final native void setPaddingEx(double value) /*-{
+    this.padding = value + "ex";
+  }-*/;
+
+  /**
+   * Set the padding-left css property.
+   */
+  public final native void setPaddingLeft(String value) /*-{
+    this.paddingLeft = value;
+  }-*/;
+
+  /**
+   * Set the padding-left css property.
+   */
+  public final native void setPaddingLeftEm(double value) /*-{
+    this.paddingLeft = value + "em";
+  }-*/;
+
+  /**
+   * Set the padding-left css property.
+   */
+  public final native void setPaddingLeftEx(double value) /*-{
+    this.paddingLeft = value + "ex";
+  }-*/;
+
+  /**
+   * Set the padding-left css property.
+   */
+  public final native void setPaddingLeftPt(double value) /*-{
+    this.paddingLeft = value + "pt";
+  }-*/;
+
+  /**
+   * Set the padding-left css property.
+   */
+  public final native void setPaddingLeftPx(int value) /*-{
+    this.paddingLeft = value + "px";
+  }-*/;
+
+  /**
+   * Set the padding css property.
+   */
+  public final native void setPaddingPt(double value) /*-{
+    this.padding = value + "pt";
+  }-*/;
+
+  /**
+   * Set the padding css property.
+   */
+  public final native void setPaddingPx(int value) /*-{
+    this.padding = value + "px";
+  }-*/;
+
+  /**
+   * Set the padding-right css property.
+   */
+  public final native void setPaddingRight(String value) /*-{
+    this.paddingRight = value;
+  }-*/;
+
+  /**
+   * Set the padding-right css property.
+   */
+  public final native void setPaddingRightEm(double value) /*-{
+    this.paddingRight = value + "em";
+  }-*/;
+
+  /**
+   * Set the padding-right css property.
+   */
+  public final native void setPaddingRightEx(double value) /*-{
+    this.paddingRight = value + "ex";
+  }-*/;
+
+  /**
+   * Set the padding-right css property.
+   */
+  public final native void setPaddingRightPt(double value) /*-{
+    this.paddingRight = value + "pt";
+  }-*/;
+
+  /**
+   * Set the padding-right css property.
+   */
+  public final native void setPaddingRightPx(int value) /*-{
+    this.paddingRight = value + "px";
+  }-*/;
+
+  /**
+   * Set the padding-top css property.
+   */
+  public final native void setPaddingTop(String value) /*-{
+    this.paddingTop = value;
+  }-*/;
+
+  /**
+   * Set the padding-top css property.
+   */
+  public final native void setPaddingTopEm(double value) /*-{
+    this.paddingTop = value + "em";
+  }-*/;
+
+  /**
+   * Set the padding-top css property.
+   */
+  public final native void setPaddingTopEx(double value) /*-{
+    this.paddingTop = value + "ex";
+  }-*/;
+
+  /**
+   * Set the padding-top css property.
+   */
+  public final native void setPaddingTopPt(double value) /*-{
+    this.paddingTop = value + "pt";
+  }-*/;
+
+  /**
+   * Set the padding-top css property.
+   */
+  public final native void setPaddingTopPx(int value) /*-{
+    this.paddingTop = value + "px";
+  }-*/;
+
+  /**
+   * Set the position css property.
+   */
+  public final native void setPosition(Position value) /*-{
+    this.position =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
    * Sets the value of a named property.
    */
   public final void setProperty(String name, String value) {
@@ -45,7 +1432,7 @@
 
   /**
    * Sets the value of a named property, in pixels.
-   * 
+   *
    * This is shorthand for <code>value + "px"</code>.
    */
   public final void setPropertyPx(String name, int value) {
@@ -54,8 +1441,136 @@
   }
 
   /**
+   * Set the right css property.
+   */
+  public final native void setRight(String value) /*-{
+    this.right = value;
+  }-*/;
+
+  /**
+   * Set the right css property.
+   */
+  public final native void setRightEm(double value) /*-{
+    this.right = value + "em";
+  }-*/;
+
+  /**
+   * Set the right css property.
+   */
+  public final native void setRightEx(double value) /*-{
+    this.right = value + "ex";
+  }-*/;
+
+  /**
+   * Set the right css property.
+   */
+  public final native void setRightPt(double value) /*-{
+    this.right = value + "pt";
+  }-*/;
+
+  /**
+   * Set the right css property.
+   */
+  public final native void setRightPx(int value) /*-{
+    this.right = value + "px";
+  }-*/;
+
+  /**
+   * Set the text-decoration css property.
+   */
+  public final native void setTextDecoration(TextDecoration value) /*-{
+    this.textDecoration =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
+   * Set the top css property.
+   */
+  public final native void setTop(String value) /*-{
+    this.top = value;
+  }-*/;
+
+  /**
+   * Set the top css property.
+   */
+  public final native void setTopEm(double value) /*-{
+    this.top = value + "em";
+  }-*/;
+
+  /**
+   * Set the top css property.
+   */
+  public final native void setTopEx(double value) /*-{
+    this.top = value + "ex";
+  }-*/;
+
+  /**
+   * Set the top css property.
+   */
+  public final native void setTopPt(double value) /*-{
+    this.top = value + "pt";
+  }-*/;
+
+  /**
+   * Set the top css property.
+   */
+  public final native void setTopPx(int value) /*-{
+    this.top = value + "px";
+  }-*/;
+
+  /**
+   * Set the visibility css property.
+   */
+  public final native void setVisibility(Visibility value) /*-{
+    this.visibility =
+        @com.google.gwt.dom.client.Style::enumToCssValue(Ljava/lang/Enum;)(value);
+  }-*/;
+
+  /**
+   * Set the width css property.
+   */
+  public final native void setWidth(String value) /*-{
+    this.width = value;
+  }-*/;
+
+  /**
+   * Set the width css property.
+   */
+  public final native void setWidthEm(double value) /*-{
+    this.width = value + "em";
+  }-*/;
+
+  /**
+   * Set the width css property.
+   */
+  public final native void setWidthEx(double value) /*-{
+    this.width = value + "ex";
+  }-*/;
+
+  /**
+   * Set the width css property.
+   */
+  public final native void setWidthPt(double value) /*-{
+    this.width = value + "pt";
+  }-*/;
+
+  /**
+   * Set the width css property.
+   */
+  public final native void setWidthPx(int value) /*-{
+    this.width = value + "px";
+  }-*/;
+
+  /**
+   * Set the z-index css property.
+   */
+  public final native void setZIndex(int value) /*-{
+    this.zIndex = value + "";
+  }-*/;
+
+  /**
    * Assert that the specified property does not contain a hyphen.
-   * 
+   *
    * @param name the property name
    */
   private void assertCamelCase(String name) {
@@ -79,7 +1594,7 @@
 
   /**
    * Sets the value of a named property, in pixels.
-   * 
+   *
    * This is shorthand for <code>value + "px"</code>.
    */
   private native void setPropertyPxImpl(String name, int value) /*-{

Reply via email to