Adds the clone element to DOM. Reviewed as part of Tree upgrades.
Review by: jgw

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@1948 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/user/client/DOM.java b/user/src/com/google/gwt/user/client/DOM.java
index 76cde13..e6fe9aa 100644
--- a/user/src/com/google/gwt/user/client/DOM.java
+++ b/user/src/com/google/gwt/user/client/DOM.java
@@ -66,6 +66,16 @@
   }
 
   /**
+   * Clones an element.
+   * 
+   * @param elem the element to be cloned
+   * @param deep should children be cloned as well?
+   */
+  public static Element clone(Element elem, boolean deep) {
+    return impl.clone(elem, deep);
+  }
+
+  /**
    * Compares two elements for equality (note that reference equality is not
    * sufficient to determine equality among elements on most browsers).
    * 
diff --git a/user/src/com/google/gwt/user/client/impl/DOMImpl.java b/user/src/com/google/gwt/user/client/impl/DOMImpl.java
index deed7a2..4e7bb0623 100644
--- a/user/src/com/google/gwt/user/client/impl/DOMImpl.java
+++ b/user/src/com/google/gwt/user/client/impl/DOMImpl.java
@@ -30,6 +30,10 @@
     parent.appendChild(child);
   }-*/;
 
+  public native Element clone(Element elem, boolean deep) /*-{
+    return elem.cloneNode(deep);
+  }-*/;
+
   public abstract boolean compare(Element elem1, Element elem2);
 
   public native Element createElement(String tag) /*-{