int GetItemAt (Point loc) { if (loc.Y > (last_item - top_item) * item_height + item_height) return -1; int retval = loc.Y / item_height; retval += top_item; return retval; }