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();
}
}