override public void Dispose() { int cnt = _transitions.Count; for (int i = 0; i < cnt; ++i) { Transition trans = _transitions[i]; trans.Dispose(); } cnt = _controllers.Count; for (int i = 0; i < cnt; ++i) { Controller c = _controllers[i]; c.Dispose(); } if (scrollPane != null) { scrollPane.Dispose(); } base.Dispose(); //Dispose native tree first, avoid DisplayObject.RemoveFromParent call cnt = _children.Count; for (int i = cnt - 1; i >= 0; --i) { GObject obj = _children[i]; obj.InternalSetParent(null); //Avoid GObject.RemoveParent call obj.Dispose(); } }
static int Dispose(IntPtr L) { try { ToLua.CheckArgsCount(L, 1); FairyGUI.ScrollPane obj = (FairyGUI.ScrollPane)ToLua.CheckObject(L, 1, typeof(FairyGUI.ScrollPane)); obj.Dispose(); return(0); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }