module els{ export class ButtonRenderer extends Renderer{ private _up: egret.Bitmap; private _down: egret.Bitmap; private _disable: egret.Bitmap; private _currentState: egret.Bitmap; touchEnabled: boolean; upUrl: string; downUrl: string; disableUrl: string; constructor() { super(); this._up = new egret.Bitmap(); this._down = new egret.Bitmap(); this._disable = new egret.Bitmap(); } onAwake() { this._currentState = (this.touchEnabled) ? this._up : this._disable; this._renderer.addChild(this._currentState); } onPropertyChanged(oldProp: { name: string, value: any }, currentProp: { name: string, value: any }): void { if (currentProp.name === "upUrl") { } } protected onTouchEvent(event: egret.TouchEvent): void { super.onTouchEvent(event); switch (event.type) { case egret.TouchEvent.TOUCH_BEGIN: this._currentState = (this.touchEnabled) ? this._down : this._disable; break; } } clone(): ButtonRenderer { let component: ButtonRenderer = new ButtonRenderer(); component.enabled = this.enabled; component.touchEnabled = this.touchEnabled; component.upUrl = this.upUrl; component.downUrl = this.downUrl; component.disableUrl = this.disableUrl; return component; } } }