void setPeer (ComponentPeer& newPeer, Point<float> screenPos, Time time) { ModifierKeys::updateCurrentModifiers(); if (&newPeer != lastPeer) { setComponentUnderMouse (nullptr, screenPos, time); lastPeer = &newPeer; setComponentUnderMouse (findComponentAt (screenPos), screenPos, time); } }
void setPeer (ComponentPeer* const newPeer, const Point<int>& screenPos, const Time& time) { ModifierKeys::updateCurrentModifiers(); if (newPeer != lastPeer) { setComponentUnderMouse (nullptr, screenPos, time); lastPeer = newPeer; setComponentUnderMouse (findComponentAt (screenPos), screenPos, time); } }
void setScreenPos (Point<float> newScreenPos, Time time, const bool forceUpdate) { if (! isDragging()) setComponentUnderMouse (findComponentAt (newScreenPos), newScreenPos, time); if (newScreenPos != lastScreenPos || forceUpdate) { cancelPendingUpdate(); lastScreenPos = newScreenPos; if (Component* const current = getComponentUnderMouse()) { if (isDragging()) { registerMouseDrag (newScreenPos); sendMouseDrag (*current, newScreenPos + unboundedMouseOffset, time); if (isUnboundedMouseModeOn) handleUnboundedDrag (*current); } else { sendMouseMove (*current, newScreenPos, time); } } revealCursor (false); } }