RemoveFromParent() 공개 메소드

public RemoveFromParent ( ) : void
리턴 void
예제 #1
0
		/// <summary>
		/// 
		/// </summary>
		/// <param name="child"></param>
		/// <param name="index"></param>
		/// <returns></returns>
		public DisplayObject AddChildAt(DisplayObject child, int index)
		{
			int count = _children.Count;
			if (index >= 0 && index <= count)
			{
				if (child.parent == this)
				{
					SetChildIndex(child, index);
				}
				else
				{
					child.RemoveFromParent();
					if (index == count)
						_children.Add(child);
					else
						_children.Insert(index, child);
					child.InternalSetParent(this);

					if (stage != null)
					{
						if (child is Container)
							child.BroadcastEvent("onAddedToStage", null);
						else
							child.DispatchEvent("onAddedToStage", null);
					}
				}
				return child;
			}
			else
			{
				throw new Exception("Invalid child index");
			}
		}
 static public int RemoveFromParent(IntPtr l)
 {
     try {
         FairyGUI.DisplayObject self = (FairyGUI.DisplayObject)checkSelf(l);
         self.RemoveFromParent();
         pushValue(l, true);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
예제 #3
0
        public DisplayObject AddChildAt(DisplayObject child, int index)
        {
            int count = _children.Count;

            if (index >= 0 && index <= count)
            {
                if (child.parent == this)
                {
                    SetChildIndex(child, index);
                }
                else
                {
                    child.RemoveFromParent();
                    if (index == count)
                    {
                        _children.Add(child);
                    }
                    else
                    {
                        _children.Insert(index, child);
                    }
                    child.SetParent(this);
                    child.tmpZ = 0;

                    if (stage != null)
                    {
                        if (child is Container)
                        {
                            child.onAddedToStage.BroadcastCall();
                        }
                        else
                        {
                            child.onAddedToStage.Call();
                        }
                    }

                    InvalidateBatchingState();
                }
                return(child);
            }
            else
            {
                throw new Exception("Invalid child index");
            }
        }
예제 #4
0
        public DisplayObject AddChildAt(DisplayObject child, int index)
        {
            int count = _children.Count;
            if (index >= 0 && index <= count)
            {
                if (child.parent == this)
                {
                    SetChildIndex(child, index);
                }
                else
                {
                    child.RemoveFromParent();
                    if (index == count)
                        _children.Add(child);
                    else
                        _children.Insert(index, child);
                    child.SetParent(this);

                    if (stage != null)
                    {
                        if (child is Container)
                            child.onAddedToStage.BroadcastCall();
                        else
                            child.onAddedToStage.Call();
                    }

                    InvalidateBatchingState(true);
                }
                return child;
            }
            else
            {
                throw new Exception("Invalid child index");
            }
        }