package com.senocular.display
{
    import flash.display.BlendMode;
    import flash.events.Event;
    import flash.geom.Point;
    
    public class TransformToolOutline extends TransformToolInternalControl {
    
    function TransformToolOutline( name: String ) 
    {
        super( name );
        this.blendMode = BlendMode.NORMAL;
    }

    override public function draw( event: Event = null ): void 
    {
        var topLeft:Point = _transformTool.boundsTopLeft;
        var topRight:Point = _transformTool.boundsTopRight;
        var bottomRight:Point = _transformTool.boundsBottomRight;
        var bottomLeft:Point = _transformTool.boundsBottomLeft;
        
        graphics.clear( );
        
        graphics.lineStyle( 0, getStyle( "outlineStrokeColor", 0x000000 ), getStyle( "outlineStrokeAlpha", 1 ) );
        graphics.moveTo( topLeft.x, topLeft.y );
        graphics.lineTo( topRight.x, topRight.y );
        graphics.lineTo( bottomRight.x, bottomRight.y );
        graphics.lineTo( bottomLeft.x, bottomLeft.y );
        graphics.lineTo( topLeft.x, topLeft.y );
        
        blendMode = getStyle( "outlineBlendMode", BlendMode.NORMAL );
    }
    
    override public function position( event: Event = null ): void 
    {
        draw( event );
    }
        
    private function getStyle( name: String, _default: * ): *
    {
        if( transformTool.getStyle( name ) == null )
        {
            return _default;
        }
        
        return transformTool.getStyle( name );
    }
}


    
}