 ////////////////////////////////////////////////////////////////////////////////
 package mx.effects
 {
-import flash.display.Bitmap;
 import flash.display.BitmapData;
-import flash.display.DisplayObject;
 import flash.display.IBitmapDrawable;
-import flash.display.Shader;
-import flash.display.ShaderData;
-import flash.display.ShaderInput;
 import flash.display.Sprite;
 import flash.geom.Matrix;
-import flash.geom.Point;
 import flash.geom.Rectangle;
 import flash.utils.ByteArray;
 
+import mx.core.IUIComponent;
 import mx.effects.effectClasses.FxAnimateShaderTransitionInstance;
 import mx.graphics.graphicsClasses.GraphicElement;
-import mx.utils.ObjectUtil;
 
 /**
  * This effect animates a transition between two bitmaps,

 * that object when it does not exist.</p>
 * 
 * <p>This effect can only be run on targets that are either 
 * DisplayObjects or GraphicElements, since capturing the bitmap
 * of the object requires information about the object that only
 * exists in these classes.</p>
 * 
 * @see mx.graphics.GraphicElement
 * @see flash.display.DisplayObject

        animateShaderTransitionInstance.bitmapFrom = bitmapFrom;
        animateShaderTransitionInstance.bitmapTo = bitmapTo;

        if (!shaderCode)
            // User should always supply a shader, but if they don't just 
            // pass it on
            animateShaderTransitionInstance.shaderCode = null;
        else
            animateShaderTransitionInstance.shaderCode = 
                (shaderCode is ByteArray) ?
                ByteArray(shaderCode) :
                new shaderCode();
        animateShaderTransitionInstance.shaderProperties = shaderProperties;
    }
}
