     private var nonRepeatSourceCreated:Boolean = false;
     private var bitmapDataCreated:Boolean = false;
     
-	//--------------------------------------------------------------------------
-	//
-	//  Properties
-	//
-	//--------------------------------------------------------------------------
+    //--------------------------------------------------------------------------
+    //
+    //  Properties
+    //
+    //--------------------------------------------------------------------------
 
     //----------------------------------
     //  alpha

            }
            
            setBitmapData(bitmapData, bitmapCreated);
            			
			dispatchFillChangedEvent("source", oldValue, value);
        }
	}

	//----------------------------------
	//  smooth
	//----------------------------------

	private var _smooth:Boolean = false;
	
	[Inspectable(category="General")]
	[Bindable("propertyChange")]	
	
	/**
	 *  A flag indicating whether to smooth the bitmap data
	 *  when filling with it.
	 *
	 *  @default false
	 *  
	 *  @langversion 3.0
	 *  @playerversion Flash 9
	 *  @playerversion AIR 1.1
	 *  @productversion Flex 3
	 */
	public function get smooth():Boolean
	{
		return _smooth;
	}
	
	public function set smooth(value:Boolean):void
	{
		var oldValue:Boolean = _smooth;
		if (value != oldValue)
		{
			_smooth = value;
			dispatchFillChangedEvent("smooth", oldValue, value);
		}
	}
	
	//----------------------------------
    //  transformX
    //----------------------------------
    

        if (nonRepeatAlphaSource)
            sourceAsBitmapData = nonRepeatAlphaSource;
        
        target.beginBitmapFill(sourceAsBitmapData, transformMatrix, repeatFill, smooth);
    }
    
    /**
     *  @private
     */
    public function end(target:Graphics):void
    {
        target.endFill();
    }
    
    /**
     *  @private
     */
    private function dispatchFillChangedEvent(prop:String, oldValue:*,
                                              value:*):void
    {
        dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, prop,
                                                            oldValue, value));
        regenerateNonRepeatSource = true;
    }
    
    /**
     *  @private
