Revision: 45299
Updated Code
at April 28, 2011 23:35 by burnandbass
Updated Code
package bassta.debug {
import com.greensock.transform.TransformManager;
import com.greensock.events.TransformEvent;
import com.greensock.transform.TransformItem;
import flash.display.DisplayObject;
import flash.display.DisplayObjectContainer;
import flash.display.Sprite;
///demo http://burnandbass.com/demo15/
public class MagicDebugger {
private static var t:TransformManager;
private static var c:Vector.<DisplayObjectContainer> = new Vector.<DisplayObjectContainer>
public function MagicDebugger() {
throw new Error("Use only with it's static methods");
}
public static function create(debuggedObject:DisplayObjectContainer):void{
if(c.indexOf(debuggedObject) == -1){
c.push(debuggedObject);
t = new TransformManager();
t.allowDelete = true;
t.allowMultiSelect = true;
t.arrowKeysMove = true;
t.forceSelectionToFront = false;
t.lockScale = false;
t.scaleFromCenter = false;
var i:int = debuggedObject.numChildren;
for ( i >= 0; i--; ) {
var s:DisplayObject = debuggedObject.getChildAt(i);
t.addItem(s);
t.getItem(s).addEventListener(TransformEvent.FINISH_INTERACTIVE_MOVE, outputChange);
t.getItem(s).addEventListener(TransformEvent.FINISH_INTERACTIVE_ROTATE, outputChange);
t.getItem(s).addEventListener(TransformEvent.FINISH_INTERACTIVE_SCALE, outputChange);
t.getItem(s).addEventListener(TransformEvent.MOVE, outputChange);
}
} else {
trace("Duplication Found");
}
}
private static function outputChange(event:TransformEvent):void{
var currentItem:TransformItem = (event.currentTarget as TransformItem);
trace("Child [ " + currentItem.targetObject.name + " ] with bounds: { x: "
+ Math.ceil(currentItem.x)
+ ", y:" + Math.ceil(currentItem.y)
+ ", width: " + Math.ceil(currentItem.width)
+ ", height: " + Math.ceil(currentItem.height)
+ ", rotation: " + Math.ceil(currentItem.rotation) + " }");
}
public static function releaseManager():void{
t.destroy();
c.splice(0,c.length);
}
//getter, return the manager
public static function manager():TransformManager{
return t;
}
}//end
}
Revision: 45298
Updated Code
at April 28, 2011 23:24 by burnandbass
Updated Code
package bassta.debug {
import com.greensock.transform.TransformManager;
import com.greensock.events.TransformEvent;
import com.greensock.transform.TransformItem;
import flash.display.DisplayObject;
import flash.display.DisplayObjectContainer;
import flash.display.Sprite;
public class MagicDebugger {
private static var t:TransformManager;
private static var c:Vector.<DisplayObjectContainer> = new Vector.<DisplayObjectContainer>
public function MagicDebugger() {
throw new Error("Use only with it's static methods");
}
public static function create(debuggedObject:DisplayObjectContainer):void{
if(c.indexOf(debuggedObject) == -1){
c.push(debuggedObject);
t = new TransformManager();
t.allowDelete = true;
t.allowMultiSelect = true;
t.arrowKeysMove = true;
t.forceSelectionToFront = false;
t.lockScale = false;
t.scaleFromCenter = false;
var i:int = debuggedObject.numChildren;
for ( i >= 0; i--; ) {
var s:DisplayObject = debuggedObject.getChildAt(i);
t.addItem(s);
t.getItem(s).addEventListener(TransformEvent.FINISH_INTERACTIVE_MOVE, outputChange);
t.getItem(s).addEventListener(TransformEvent.FINISH_INTERACTIVE_ROTATE, outputChange);
t.getItem(s).addEventListener(TransformEvent.FINISH_INTERACTIVE_SCALE, outputChange);
t.getItem(s).addEventListener(TransformEvent.MOVE, outputChange);
}
} else {
trace("Duplication Found");
}
}
private static function outputChange(event:TransformEvent):void{
var currentItem:TransformItem = (event.currentTarget as TransformItem);
trace("Child [ " + currentItem.targetObject.name + " ] with bounds: { x: "
+ Math.ceil(currentItem.x)
+ ", y:" + Math.ceil(currentItem.y)
+ ", width: " + Math.ceil(currentItem.width)
+ ", height: " + Math.ceil(currentItem.height)
+ ", rotation: " + Math.ceil(currentItem.rotation) + " }");
}
public static function releaseManager():void{
t.destroy();
c.splice(0,c.length);
}
//getter, return the manager
public static function manager():TransformManager{
return t;
}
}//end
}
Revision: 45297
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at April 28, 2011 06:36 by burnandbass
Initial Code
package bassta.debug {
import bassta.structure.Initializer;
import com.greensock.transform.TransformManager;
import com.greensock.events.TransformEvent;
import com.greensock.transform.TransformItem;
import flash.display.DisplayObject;
import flash.display.DisplayObjectContainer;
import flash.display.Sprite;
import bassta.display.*;
//
import flash.utils.ByteArray;
import flash.net.FileReference;
import com.greensock.plugins.VolumePlugin;
public class MagicDebugger {
private static var t:TransformManager;
public function MagicDebugger() {
throw new Error("Use only with it's static methods");
}
public static function create(debuggedObject:DisplayObjectContainer):void{
t = new TransformManager();
t.allowDelete = true;
t.allowMultiSelect = true;
t.arrowKeysMove = true;
t.forceSelectionToFront = false;
t.lockScale = false;
t.scaleFromCenter = false;
var i:int = debuggedObject.numChildren;
for ( i >= 0; i--; ) {
var s:DisplayObject = debuggedObject.getChildAt(i);
t.addItem(s);
t.getItem(s).addEventListener(TransformEvent.FINISH_INTERACTIVE_MOVE, outputChange);
t.getItem(s).addEventListener(TransformEvent.FINISH_INTERACTIVE_ROTATE, outputChange);
t.getItem(s).addEventListener(TransformEvent.FINISH_INTERACTIVE_SCALE, outputChange);
t.getItem(s).addEventListener(TransformEvent.MOVE, outputChange);
}
}
private static function outputChange(event:TransformEvent):void{
var currentItem:TransformItem = (event.currentTarget as TransformItem);
trace("Child [ " + currentItem.targetObject.name + " ] with bounds: { x: "
+ Math.ceil(currentItem.x)
+ ", y:" + Math.ceil(currentItem.y)
+ ", width: " + Math.ceil(currentItem.width)
+ ", height: " + Math.ceil(currentItem.height)
+ ", rotation: " + Math.ceil(currentItem.rotation) + " }");
}
public static function releaseManager():void{
t.destroy();
}
//getter, return the manager
public static function manager():TransformManager{
return t;
}
}//end
}
Initial URL
http://burnandbass.com/demo15/
Initial Description
You need the greensock's TransformManager class, it is paid, but worth it. I use this class for debugging purposes, to move at runtime objects at the scene. Use MagicDevugger.create(passSomeSprite); and you can transform all children of passSomeSprite
Initial Title
Drag/drop/scale/move DebugUtil with TransformManager
Initial Tags
Initial Language
ActionScript 3