Fixes issue #1005; TreeItem.setState(true) no longer throws an exception if the item has no parent.

Found by: dave.rodgman
Review by: knorton


git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@1057 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/user/client/ui/TreeItem.java b/user/src/com/google/gwt/user/client/ui/TreeItem.java
index be27ae3..4b4df5c 100644
--- a/user/src/com/google/gwt/user/client/ui/TreeItem.java
+++ b/user/src/com/google/gwt/user/client/ui/TreeItem.java
@@ -248,7 +248,7 @@
    * 
    * @return the containing tree
    */
-  public Tree getTree() {
+  public final Tree getTree() {
     return tree;
   }
 
@@ -370,7 +370,7 @@
     this.open = open;
     updateState();
 
-    if (fireEvents) {
+    if (fireEvents && tree != null) {
       tree.fireStateChanged(this);
     }
   }
@@ -533,7 +533,7 @@
       // Ensure contentElem is empty.
       DOM.setInnerHTML(contentElem, "");
       contentPanel = new ContentPanel(contentElem);
-      if (getTree() != null) {
+      if (tree != null) {
         tree.adopt(contentPanel);
       }
     }