     }
 
     /**
-     *  Processes the properties set on the component.
+     *  Processes the properties set on the element.
      *  This is an advanced method that you might override
-     *  when creating a subclass of UIComponent.
+     *  when creating a subclass.
      *
      *  <p>You do not call this method directly.
      *  Flex calls the <code>commitProperties()</code> method when you
-     *  use the <code>addChild()</code> method to add a component to a container,
-     *  or when you call the <code>invalidateProperties()</code> method of the component.
+     *  use the <code>addItem()</code> method to add an element to the group,
+     *  or when you call the <code>invalidateProperties()</code> method of the element.
      *  Calls to the <code>commitProperties()</code> method occur before calls to the
      *  <code>measure()</code> method. This lets you set property values that might
      *  be used by the <code>measure()</code> method.</p>
      *
-     *  <p>Some components have properties that affect the number or kinds
-     *  of child objects that they need to create, or have properties that
-     *  interact with each other, such as the <code>horizontalScrollPolicy</code>
-     *  and <code>horizontalScrollPosition</code> properties.
+     *  <p>Some elements have properties that
+     *  interact with each other.
      *  It is often best at startup time to process all of these
      *  properties at one time to avoid duplicating work.</p>
      */

        // Our size has changed, parent has to resize and run layout code
        invalidateParentSizeAndDisplayList();
    }

    /**
     *  @private
     */
    private function measureSizes():Boolean
    {
        var changed:Boolean = false;

        // TODO EGeorgie: Optimize. We don't always need to
        // call measure() when we have explicit sizes.
        measure();

        // TODO EGeorgie: Optimize. Detect when the size has changed.
        changed = true;
        return changed;
    }

    /**
     *  Calculates the default size, and optionally the default minimum size,
     *  of the component. This is an advanced method that you might override when
     *  creating a subclass of UIComponent.
     *
     *  <p>You do not call this method directly. Flex calls the
     *  <code>measure()</code> method when the component is added to a container
     *  using the <code>addChild()</code> method, and when the component's
     *  <code>invalidateSize()</code> method is called. </p>
     *
     *  <p>When you set a specific height and width of a component,
     *  Flex does not call the <code>measure()</code> method,
     *  even if you explicitly call the <code>invalidateSize()</code> method.
     *  That is, Flex only calls the <code>measure()</code> method if
     *  the <code>explicitWidth</code> property or the <code>explicitHeight</code>
     *  property of the component is NaN. </p>
     *
     *  <p>In your override of this method, you must set the
     *  <code>measuredWidth</code> and <code>measuredHeight</code> properties
     *  to define the default size.
     *  You may optionally set the <code>measuredMinWidth</code> and
     *  <code>measuredMinHeight</code> properties to define the default
     *  minimum size.</p>
     *
     *  <p>Most components calculate these values based on the content they are
     *  displaying, and from the properties that affect content display.
     *  A few components simply have hard-coded default values. </p>
     *
     *  <p>The conceptual point of <code>measure()</code> is for the component to provide
     *  its own natural or intrinsic size as a default. Therefore, the
     *  <code>measuredWidth</code> and <code>measuredHeight</code> properties
     *  should be determined by factors such as:</p>
     *  <ul>
     *     <li>The amount of text the component needs to display.</li>
     *     <li>The styles, such as <code>fontSize</code>, for that text.</li>
     *     <li>The size of a JPEG image that the component displays.</li>
     *     <li>The measured or explicit sizes of the component's children.</li>
     *     <li>Any borders, margins, and gaps.</li>
     *  </ul>
     *
     *  <p>In some cases, there is no intrinsic way to determine default values.
     *  For example, a simple GreenCircle component might simply set
     *  measuredWidth = 100 and measuredHeight = 100 in its <code>measure()</code> method to
     *  provide a reasonable default size. In other cases, such as a TextArea,
     *  an appropriate computation (such as finding the right width and height

    }

    /**
     *  Draws the element and/or sizes and positions its content.
     *  This is an advanced method that you might override
     *  when creating a subclass of GraphicElement.
     *
     *  <p>You do not call this method directly. Flex calls the
     *  <code>updateDisplayList()</code> method when the component is added 
     *  to a group using the <code>addItem()</code> method, and when the element's
     *  <code>invalidateDisplayList()</code> method is called. </p>
     *
     *  <p>This method is where you would do programmatic drawing
     *  using methods on the elements's displayObject
     *  such as <code>graphics.drawRect()</code>.</p>
     *
     *  @param unscaledWidth Specifies the width of the component, in pixels,
     *  in the component's coordinates, regardless of the value of the
