デバッグ用

by nyamogera
♥0 | Line 107 | Modified 2009-05-17 05:10:58 | MIT License
play

ActionScript3 source code

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

package {
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.utils.getTimer;

    public class FlashTest extends Sprite {
        
        private var test:DebugTest;
        [SWF(width="465", height="465", backgroundColor="0x222222", frameRate="30")] 
        public function FlashTest() {
            // write as3 code here..
            test = new DebugTest("test");
            test.Add( "key1", "test1" );
			
            addChild( test );
            addEventListener( Event.ENTER_FRAME, EnterFrame );
        }
        
 	private function EnterFrame(e:Event):void 
	{
	    test.Add("aa", "move");
            test.Add( "time", getTimer().toString());
	}
    }
 }

import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.text.TextField;
import flash.utils.Dictionary;

class DebugTest extends Sprite
{
    private var barField:TextField;
    private var openField:TextField;
    private var debugField:TextField;
    private var dictionary:Dictionary;
		
    public function DebugTest(title:String) 
    {
	dictionary = new Dictionary(true);
	
	barField = new TextField();
	openField = new TextField();
	debugField = new TextField();
			
	barField.text = title;
	openField.text = "▲";	//	上三角
		
	barField.background = true;
	barField.backgroundColor = 0x00000;
	barField.textColor = 0xffffff;
	barField.x = 20;
	barField.height = 20;
	barField.addEventListener( MouseEvent.MOUSE_DOWN, StartMove);
	barField.addEventListener( MouseEvent.MOUSE_UP, EndMove);
	barField.border = true;
	barField.selectable= false;
	
	openField.background = true;
	openField.backgroundColor = 0x00000;
	openField.textColor = 0xffffff;
	openField.height = 20;
	openField.width = 20;
	openField.selectable= false;
	openField.border = true;
        openField.mouseEnabled = true;
	openField.addEventListener( MouseEvent.CLICK, SwitchVisible);

	debugField.border = true;
			
	debugField.y = 20;
			
	addChild( barField );
	addChild( openField );
	addChild( debugField );
			
	Update();
    }
		
    //	すいっち
   private function SwitchVisible(e:MouseEvent):void 
   {
        debugField.visible = !debugField.visible;

        if ( debugField.visible ) 
        {
	    openField.text = "▲"
	}
        else
	{
	    openField.text = "▼"
       	}
	    
    }
		
    //	
    private function EndMove(e:MouseEvent):void 
    {
        stopDrag();
    }

	
    //	
    private function StartMove(e:MouseEvent):void 
    {
        startDrag();
    }
    //	更新
    private function Update():void
    {
        var w:Number = Math.max( barField.textWidth + 20, debugField.textWidth  ) + 4 ;
        barField.width = w - 20;
        debugField.width = w;
    		
        debugField.height = debugField.textHeight + 4;
    }
    	
    public function Add(key:String, str:String) : void
    {
        dictionary[key] = str;
        debugField.text = "";
    	
        for ( var s:String in dictionary )
	{
	    debugField.appendText( s + ":" + dictionary[s] + "\n" );
	}
			
        Update();
    }
		
    public function Remove(key:String) : void
    {
        dictionary[key] = null;
        delete dictionary[key];
    	
        Update();
    }
 }

Forked