package com.zehfernando.ui { import flash.display.DisplayObject; import flash.display.MovieClip; import flash.display.Sprite; /** * @author Zeh Fernando - z at zeh.com.br */ public class PageContainer extends MovieClip { // Properties protected var items:Array; // Instances protected var container:Sprite; // ================================================================================================================ // CONSTRUCTOR ---------------------------------------------------------------------------------------------------- public function PageContainer() { items = []; container = new Sprite(); super.addChild(container); } // ================================================================================================================ // INSTANCE functions --------------------------------------------------------------------------------------------- // ================================================================================================================ // SUPER functions ------------------------------------------------------------------------------------------------ override public function addChild(__child:DisplayObject): DisplayObject { items.push(__child); container.addChild(__child); return __child; } override public function removeChild(__child:DisplayObject): DisplayObject { container.removeChild(__child); var ii:int = getChildIndex(__child); items.splice(ii, 1); return __child; } override public function getChildIndex(__child:DisplayObject): int { return items.indexOf(__child); } override public function getChildAt(__index:int): DisplayObject { return items[__index]; } public function removeAllChildren(): void { for (var i:uint = 0; i < items.length; i++) { container.removeChild(items[i]); } items = []; } override public function get numChildren(): int { return items.length; } } }