code: @Override
      public void setParent(View parent)
      {
          super.setParent(parent);
          if (parent != null)
          {
              setPropertiesFromAttributes(getElement().getAttributes());
              refreshAttributes = true;
              refreshProperties = false;
          }
          else
          {
              // we are removed from a hierarchy
              attributes = null;
              box = null;
              refreshAttributes = true;
              refreshProperties = false;
          }
      }
docs: Establishes the parent view for this view. This is guaranteed to be
  called before any other methods if the parent view is functioning
  properly.
  <p>
  This is implemented to forward to the superclass as well as call the
  setPropertiesFromAttributes() method to set the paragraph properties from
  the css attributes. The call is made at this time to ensure the ability
  to resolve upward through the parents view attributes.
  
  Establishes the parent view for this view. This is guaranteed to be
  called before any other methods if the parent view is functioning
  properly. This is also the last method called, since it is called to
  indicate the view has been removed from the hierarchy as well. When this
  method is called to set the parent to null, this method does the same for
  each of its children, propogating the notification that they have been
  disconnected from the view tree. If this is reimplemented,
  <code>super.setParent()</code> should be called.
  
  @param parent
  the new parent, or <code>null</code> if the view is being
  removed from a parent