Synchronize with trunk's revision r57652.
[reactos.git] / win32ss / user / ntuser / msgqueue.c
index 084f04d..0ae8612 100644 (file)
@@ -145,6 +145,15 @@ UserSetCursor(
         if (NewCursor)
         {
             /* Call GDI to set the new screen cursor */
+#ifdef NEW_CURSORICON
+            GreSetPointerShape(hdcScreen,
+                               NewCursor->aFrame[0].hbmMask,
+                               NewCursor->aFrame[0].hbmColor,
+                               NewCursor->ptlHotspot.x,
+                               NewCursor->ptlHotspot.y,
+                               gpsi->ptCursor.x,
+                               gpsi->ptCursor.y);
+#else
             GreSetPointerShape(hdcScreen,
                                NewCursor->IconInfo.hbmMask,
                                NewCursor->IconInfo.hbmColor,
@@ -152,6 +161,7 @@ UserSetCursor(
                                NewCursor->IconInfo.yHotspot,
                                gpsi->ptCursor.x,
                                gpsi->ptCursor.y);
+#endif
         }
         else /* Note: OldCursor != NewCursor so we have to hide cursor */
         {
@@ -571,13 +581,23 @@ co_MsqInsertMouseMessage(MSG* Msg, DWORD flags, ULONG_PTR dwExtraInfo, BOOL Hook
                if(CurInfo->CurrentCursorObject != MessageQueue->CursorObject)
                {
                    /* Call GDI to set the new screen cursor */
+#ifdef NEW_CURSORICON
                    GreSetPointerShape(hdcScreen,
+                                      MessageQueue->CursorObject->aFrame[0].hbmMask,
+                                      MessageQueue->CursorObject->aFrame[0].hbmColor,
+                                      MessageQueue->CursorObject->ptlHotspot.x,
+                                      MessageQueue->CursorObject->ptlHotspot.y,
+                                      gpsi->ptCursor.x,
+                                      gpsi->ptCursor.y);
+#else
+                    GreSetPointerShape(hdcScreen,
                                       MessageQueue->CursorObject->IconInfo.hbmMask,
                                       MessageQueue->CursorObject->IconInfo.hbmColor,
                                       MessageQueue->CursorObject->IconInfo.xHotspot,
                                       MessageQueue->CursorObject->IconInfo.yHotspot,
                                       gpsi->ptCursor.x,
                                       gpsi->ptCursor.y);
+#endif
                } else
                    GreMovePointer(hdcScreen, Msg->pt.x, Msg->pt.y);
            }