home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2011 May / ME_2011_05.iso / Galileo-Video-Tutorial / system / ChromeLINUX.swf / scripts / com / generationk / zinc / CloseButton.as < prev    next >
Encoding:
Text File  |  2010-11-16  |  1.8 KB  |  58 lines

  1. package com.generationk.zinc
  2. {
  3.    import flash.display.DisplayObject;
  4.    import flash.display.MovieClip;
  5.    import flash.display.Sprite;
  6.    import flash.events.MouseEvent;
  7.    
  8.    public class CloseButton extends Sprite
  9.    {
  10.       private var _icon:CloseButtonSkin;
  11.       
  12.       public function CloseButton()
  13.       {
  14.          super();
  15.          buttonMode = true;
  16.          _icon = new CloseButtonSkin();
  17.          _icon.stop();
  18.          addChild(icon);
  19.          addEventListener(MouseEvent.MOUSE_UP,mouseHandler);
  20.          addEventListener(MouseEvent.MOUSE_DOWN,mouseHandler);
  21.          addEventListener(MouseEvent.MOUSE_OVER,mouseHandler);
  22.          addEventListener(MouseEvent.MOUSE_OUT,mouseHandler);
  23.       }
  24.       
  25.       protected function mouseHandler(param1:MouseEvent) : void
  26.       {
  27.          switch(param1.type)
  28.          {
  29.             case MouseEvent.MOUSE_UP:
  30.                (_icon as MovieClip).gotoAndStop("over");
  31.                stage.removeEventListener(MouseEvent.MOUSE_UP,stageHandler);
  32.                break;
  33.             case MouseEvent.MOUSE_DOWN:
  34.                (_icon as MovieClip).gotoAndStop("down");
  35.                stage.addEventListener(MouseEvent.MOUSE_UP,stageHandler);
  36.                break;
  37.             case MouseEvent.MOUSE_OVER:
  38.                (_icon as MovieClip).gotoAndStop("over");
  39.                break;
  40.             case MouseEvent.MOUSE_OUT:
  41.                (_icon as MovieClip).gotoAndStop("default");
  42.          }
  43.       }
  44.       
  45.       public function get icon() : DisplayObject
  46.       {
  47.          return this._icon;
  48.       }
  49.       
  50.       private function stageHandler(param1:MouseEvent) : void
  51.       {
  52.          (icon as MovieClip).gotoAndStop("default");
  53.          stage.removeEventListener(MouseEvent.MOUSE_UP,stageHandler);
  54.       }
  55.    }
  56. }
  57.  
  58.