Show
Ignore:
Timestamp:
07/03/08 15:33:30 (5 months ago)
Author:
suztomo
Message:

lang/actionscript/FPazzle : Implemented rotation for assignment.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/actionscript/FPazzle/trunk/src/net/suztomo/FPazzle/RotateController.as

    r14949 r15097  
    44        import flash.display.Sprite; 
    55        import flash.events.*; 
     6         
     7        import mx.managers.CursorManager; 
    68 
    79        public class RotateController extends Sprite 
     
    1921                private var arrow1:RotationArrow; 
    2022                private var arrow2:RotationArrow; 
     23                private var type:int; 
     24                 
     25                private const ON_OUT_ALPHA:Number = 0.0; 
    2126 
    22  
    23                 public function RotateController(_target:DisplayObject, p_width:Number, p_height:Number) 
     27                public function RotateController(_target:DisplayObject, p_width:Number, p_height:Number, _type:int = 0) 
    2428                { 
    2529                        super(); 
    2630                        target = _target; 
    2731                        init_rot = target.rotation; 
     32                        type = _type; 
    2833                        //addEventListener(MouseEvent.MOUSE_DOWN, onClick); 
    2934                        //addEventListener(MouseEvent.MOUSE_UP, onRelese); 
     
    3136                        //this.x = - target.width / 2; 
    3237                        //this.y = - target.height / 2; 
    33                         x = + p_width / 2; 
    34                         y = + p_height / 2; 
    35  
     38                        if (type == 0 || type == 3) { 
     39                                x = + p_width / 2;                               
     40                        } else { 
     41                                x = - p_width / 2; 
     42                        } 
     43                         
     44                        if (type == 0 || type == 1) { 
     45                                y = + p_height / 2; 
     46                        } else { 
     47                                y = - p_height / 2; 
     48                        } 
     49                         
     50                        rotation = 90 * type; 
     51                         
    3652                        graphics.beginFill(0xFFFFFF, 1); 
    3753                        graphics.drawCircle(0, 0, 20); 
     
    4864                        addEventListener(MouseEvent.MOUSE_OUT, onOut); 
    4965                         
    50                         arrow1.addEventListener(MouseEvent.CLICK, rotate90); 
    51                         arrow2.addEventListener(MouseEvent.CLICK, rotate270); 
     66                        arrow1.addEventListener(MouseEvent.MOUSE_DOWN, rotate90); 
     67                        arrow2.addEventListener(MouseEvent.MOUSE_DOWN, rotate270); 
    5268                         
    53                         alpha = 0.5; 
     69                        alpha = ON_OUT_ALPHA; 
    5470                } 
    5571                 
     
    5773                { 
    5874                        alpha = 1.0; 
     75                        CursorManager.removeAllCursors(); 
     76                        event.stopPropagation(); 
    5977                } 
    6078                 
    6179                private function onOut(e:Event):void 
    6280                { 
    63                         alpha = 0.5; 
     81                        alpha = ON_OUT_ALPHA; 
    6482                } 
    6583 
     
    8199                { 
    82100                        target.rotation += 90; 
     101                        e.stopPropagation(); 
    83102                } 
    84103                 
     
    86105                { 
    87106                        target.rotation -= 90; 
     107                        e.stopPropagation(); 
    88108                } 
    89109