+
+ int state = 0;
+ if (::GetKeyState(VK_SHIFT) != 0)
+ state |= MK_SHIFT;
+ if (::GetKeyState(VK_CONTROL) != 0)
+ state |= MK_CONTROL;
+
+ // Unfortunately the mouse button and keyboard state may have changed
+ // by the time the OnIdle function is called, so 'state' may be
+ // meaningless.
+
+ MSWOnMouseLeave(pt.x, pt.y, state);