void DiagramBox::mouseOver( BPoint point, uint32 transit) { D_MOUSE(("DiagramBox::mouseOver()\n")); DiagramItem *last = lastItemUnder(); if (last && (transit == B_EXITED_VIEW)) { last->mouseOver(point, B_EXITED_VIEW); resetItemUnder(); } else { DiagramItem *item = itemUnder(point); if (item) { if (item != last) { if (last) last->mouseOver(point, B_EXITED_VIEW); item->mouseOver(point, B_ENTERED_VIEW); } else { item->mouseOver(point, B_INSIDE_VIEW); } } else if (last) { last->mouseOver(point, B_EXITED_VIEW); } } }