/// <summary> /// Number of children in the DisplayObjectContainer /// </summary> /// <param name="do">DisplayObject</param> /// <param name="recursive">Deep count</param> public static int ChildrenCount(DisplayObject @do, bool recursive = true) { dynamic ddo = @do; if (!ddo.children) return 0; int count = ddo.children.length; if (recursive) { for (var i = 0; i < ddo.children.length; i++) { count += ChildrenCount(ddo.children[i]); } } return count; }
/// <summary> /// Removes a child from the container. /// </summary> /// <param name="child">The DisplayObject to remove</param> public void RemoveChild(DisplayObject child) { }
private static void ApplyRatio(DisplayObject displayObj, float ratio, int depth=0) { if (ratio == 1f) return; displayObj.position.x = displayObj.position.x * ratio; displayObj.position.y = displayObj.position.y * ratio; displayObj.scale.x = displayObj.scale.x * ratio; displayObj.scale.y = displayObj.scale.y * ratio; //if (depth >= 1) // return; //DisplayObjectContainer doc = (DisplayObjectContainer)displayObj; //for (var i = 0; i < doc.children.Length; i++) //{ // ApplyRatio(doc.children[i], ratio, ++depth); //} }
/// <summary> /// Adds a child to the container at a specified index. If the index is out of bounds an error will be thrown /// </summary> /// <param name="child">The child to add</param> /// <param name="index">The index to place the child in</param> public void AddChildAt(DisplayObject child, int index) { }