class CustomSimpleButton extends SimpleButton {
private var upColor:uint = 0xFFCC00;
private var overColor:uint = 0xCCFF00;
private var downColor:uint = 0x00CCFF;
private var size:uint = 1000;
[Embed(source="../images/start.gif")]
private var startImage:Class;
public function CustomSimpleButton() {
// down state will show the image
downState = new startImage();
//new ButtonDisplayState(downColor, size);
overState = new ButtonDisplayState(overColor, size);
upState = new ButtonDisplayState(upColor, size);
hitTestState = new ButtonDisplayState(upColor, size * 2);
hitTestState.x = -(size / 4);
hitTestState.y = hitTestState.x;
useHandCursor = true;
}
}
class ButtonDisplayState extends Shape {
private var bgColor:uint;
private var size:uint;
[Embed(source="../images/start.gif")]
private var startImage:Class;
//public var className:String;
public function ButtonDisplayState(bgColor:uint, size:uint) {
this.bgColor = bgColor;
this.size = size;
draw();
}
private function draw():void {
//if(className == null) {
// className = describeType(this).@name.toXMLString();
// }
//var imgRef:Class = getDefinitionByName(“startImage”) as Class;
var img:Bitmap = new startImage();
//graphics.beginFill(bgColor);
// graphics.beginBitmapFill(img.bitmapData, null, true);
graphics.beginFill(bgColor);
graphics.drawRect(0, 0, size, size);
graphics.endFill();
}
}