 			notifyFilterChanged();
 		}
 	}
-	
-	public function clone():BitmapFilter
+
+	//--------------------------------------------------------------------------
+	//
+	//  Methods
+	//
+	//--------------------------------------------------------------------------
+    
+    /**
+     * @private
+     * Notify of a change to our filter, so that filter stack is ultimately 
+     * re-applied by the framework.
+     */ 	
+	private function notifyFilterChanged():void
+	{
+		dispatchEvent(new Event(Event.CHANGE));
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  IFlexBitmapFilter 
+	//
+	//--------------------------------------------------------------------------	
+
+	/**
+	 *  Creates a flash.filters.ColorMatrixFilter instance using the current 
+	 *  property values. 
+	 * 
+	 *  @return flash.filters.ColorMatrixFilter instance
+	 */	
+	public function createBitmapFilter():BitmapFilter 
 	{
 		return new flash.filters.ColorMatrixFilter(_matrix);
 	}
-	
 }
 }


package mx.filters
{
import flash.filters.BitmapFilter;
import flash.filters.ColorMatrixFilter;

/**
 *  @review 

 * 
 *  @see flash.filters.ColorMatrixFilter
 */
public class ColorMatrixFilter extends EventDispatcher implements IFlexBitmapFilter
{
	include "../core/Version.as";

    //--------------------------------------------------------------------------
    //
    //  Constructor
    //
    //--------------------------------------------------------------------------
    	
	/**
	 * @copy flash.filters.ColorMatrixFilter
	 */ 
	public function ColorMatrixFilter(matrix:Object = null)
	{
		super();
		
		if (matrix != null)
		{
			this.matrix = matrix;
		} 
	}
	
	//--------------------------------------------------------------------------
	//
	//  Properties
	//
	//--------------------------------------------------------------------------	
	
	//----------------------------------
    //  matrix
    //----------------------------------
	
	private var _matrix:Array =  [1,0,0,0,0,
								  0,1,0,0,0,
								  0,0,1,0,0,
								  0,0,0,1,0];
	
	/**
	 *  @review
