// walk queue from front to back looking for hits
for ( int i = m_queue.psize; --i >= 0; ) {
VisualItem vi = m_queue.pitems[i];
if ( !vi.isValid() ) continue; // in case tuple went invalid
Renderer r = vi.getRenderer();
if (r!=null && vi.isInteractive() && r.locatePoint(p2, vi)) {
return vi;
}
}
return null;
}