      *  @playerversion AIR 2.5 
      *  @productversion Flex 4.5
      */
-    public var symbolIcon:Object;
+    private var _symbolIcon:DisplayObject;
+    
+    /**
+     *  Read-only button symbol graphic. Use commitCurrentState() to specify
+     *  a symbol graphic per-state.
+     * 
+     *  @see #commitCurrentState()
+     */
+    public function get symbolIcon():DisplayObject
+    {
+        return _symbolIcon;
+    }
     
     //--------------------------------------------------------------------------
     //

                // no current symbol exists
                // or is existing symbol different than the current symbol
                if ((currentSymbolClass == null)
                    || !(symbolObj is currentSymbolClass))
                {
                    removeChild(DisplayObject(symbolObj));
                    invalidateDisplayList();
                }
            }
            
            // add the current symbol
            if (currentSymbolClass != null)
            {
                symbolIcon = new currentSymbolClass();
                addChild(DisplayObject(symbolIcon));
                
                invalidateDisplayList();
            }
        }
    }

        graphics.endFill();
        
        // position the symbols to align with the background "icon"
        if (_symbolIcon)
        {
            var currentIcon:DisplayObject = getIconDisplay();
            setElementPosition(_symbolIcon, currentIcon.x, currentIcon.y);
        }
    }
}
