// Quick hack implementation of a fix for NGUI failing to clip colliders in UIPanels.
UIPanel parentPanel = NGUITools.FindInParents<UIPanel>(gameObject);
float panelTop = parentPanel.GetSides(parentPanel.transform)[1].y;
float panelBottom = parentPanel.GetSides(parentPanel.transform)[3].y;
BoxCollider[] childColliders = GetComponentsInChildren<BoxCollider>();
foreach(BoxCollider thisCol in childColliders)
{
Bounds goBounds = thisCol.GetComponent<BoxCollider>().bounds;
float objBottom = parentPanel.transform.InverseTransformPoint(goBounds.min).y;
float objTop = parentPanel.transform.InverseTransformPoint(goBounds.max).y;
thisCol.enabled = (objBottom < panelTop && objTop > panelBottom);
}