public static bool RecurseMouseWheel(int X, int Y, Gump g, int mX, int mY, int Delta) { if (g.Visible && (g.m_NonRestrictivePicking || (((mX >= X) && (mX < (X + g.Width))) && ((mY >= Y) && (mY < (Y + g.Height)))))) { Gump[] gumpArray = g.Children.ToArray(); for (int i = gumpArray.Length - 1; i >= 0; i--) { Gump gump = gumpArray[i]; if (RecurseMouseWheel(X + gump.X, Y + gump.Y, gump, mX, mY, Delta)) { return true; } } if (!g.m_NonRestrictivePicking || (((mX >= X) && (mX < (X + g.Width))) && ((mY >= Y) && (mY < (Y + g.Height))))) { if ((m_Modal == null) && g.HitTest(mX - X, mY - Y)) { g.OnMouseWheel(Delta); return true; } if (((m_Modal != null) && g.IsChildOf(m_Modal)) && g.HitTest(mX - X, mY - Y)) { g.OnMouseWheel(Delta); return true; } } } return false; }