Chapter 34 Example 3

by actionscriptbible
♥0 | Line 34 | Modified 2010-02-09 02:25:56 | MIT License
play

ActionScript3 source code

/**
 * Copyright actionscriptbible ( http://wonderfl.net/user/actionscriptbible )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/kyyT
 */

package {
  import flash.display.Loader;
  import flash.display.Sprite;
  import flash.events.MouseEvent;
  import flash.geom.ColorTransform;
  import flash.net.URLRequest;
  public class ch34ex3 extends Sprite {
    protected var l:Loader;
    protected var mode:int;
    public function ch34ex3() {
      l = new Loader();
      //photo   (CC-BY) Roger Braunstein
      //source  http://www.flickr.com/photos/rogerimp/3712472723/
      l.load(new URLRequest("http://actionscriptbible.com/files/caviar.jpg"));
      addChild(l);
      l.addEventListener(MouseEvent.CLICK, clickHandler);
      l.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
    }
    protected function mouseMoveHandler(event:MouseEvent):void {
      var value:Number = l.mouseY / l.height;
      var colorTransform:ColorTransform = l.transform.colorTransform;
      switch (mode) {
        case 0: colorTransform.redMultiplier = value; break;
        case 1: colorTransform.greenMultiplier = value; break;
        case 2: colorTransform.blueMultiplier = value; break;
        case 3: colorTransform.alphaMultiplier = value; break;
      }
      l.transform.colorTransform = colorTransform;
    }
    protected function clickHandler(event:MouseEvent):void {
      if(++mode == 4) {
        mode = 0;
      }
    }
  }
}