Rob Shearman : comctl32: Add names for now documented toolbar messages.

Alexandre Julliard julliard at winehq.org
Fri Jan 2 08:25:51 CST 2009


Module: wine
Branch: master
Commit: 76b805dad48680ab6653f953748b9acb9376ae86
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=76b805dad48680ab6653f953748b9acb9376ae86

Author: Rob Shearman <robertshearman at gmail.com>
Date:   Fri Jan  2 12:14:30 2009 +0000

comctl32: Add names for now documented toolbar messages.

---

 dlls/comctl32/toolbar.c |   51 +++++++++++++++++++++-------------------------
 dlls/user32/spy.c       |    7 +++--
 include/commctrl.h      |   10 +++++---
 3 files changed, 33 insertions(+), 35 deletions(-)

diff --git a/dlls/comctl32/toolbar.c b/dlls/comctl32/toolbar.c
index 2437d97..a233b39 100644
--- a/dlls/comctl32/toolbar.c
+++ b/dlls/comctl32/toolbar.c
@@ -5242,12 +5242,11 @@ static LRESULT TOOLBAR_Unkwn45D(HWND hwnd, WPARAM wParam, LPARAM lParam)
 }
 
 
-/* UNDOCUMENTED MESSAGE: This is an extended version of the
- * TB_SETHOTITEM message. It allows the caller to specify a reason why the
- * hot item changed (rather than just the HICF_OTHER that TB_SETHOTITEM
- * sends). */
+/* This is an extended version of the TB_SETHOTITEM message. It allows the
+ * caller to specify a reason why the hot item changed (rather than just the
+ * HICF_OTHER that TB_SETHOTITEM sends). */
 static LRESULT
-TOOLBAR_Unkwn45E (HWND hwnd, WPARAM wParam, LPARAM lParam)
+TOOLBAR_SetHotItem2 (HWND hwnd, WPARAM wParam, LPARAM lParam)
 {
     TOOLBAR_INFO *infoPtr = TOOLBAR_GetInfoPtr(hwnd);
     INT nOldHotItem = infoPtr->nHotItem;
@@ -5268,18 +5267,15 @@ TOOLBAR_Unkwn45E (HWND hwnd, WPARAM wParam, LPARAM lParam)
     return (nOldHotItem < 0) ? -1 : (LRESULT)nOldHotItem;
 }
 
-/* UNDOCUMENTED MESSAGE: This sets the toolbar global iListGap parameter
- * which controls the amount of spacing between the image and the text
- * of buttons for TBSTYLE_LIST toolbars. */
-static LRESULT TOOLBAR_Unkwn460(HWND hwnd, WPARAM wParam, LPARAM lParam)
+/* Sets the toolbar global iListGap parameter which controls the amount of
+ * spacing between the image and the text of buttons for TBSTYLE_LIST
+ * toolbars. */
+static LRESULT TOOLBAR_SetListGap(HWND hwnd, WPARAM wParam, LPARAM lParam)
 {
     TOOLBAR_INFO *infoPtr = TOOLBAR_GetInfoPtr(hwnd);
 
     TRACE("hwnd=%p iListGap=%ld\n", hwnd, wParam);
     
-    if (lParam != 0)
-        FIXME("lParam = 0x%08lx. Please report\n", lParam);
-    
     infoPtr->iListGap = (INT)wParam;
 
     InvalidateRect(hwnd, NULL, TRUE);
@@ -5287,9 +5283,9 @@ static LRESULT TOOLBAR_Unkwn460(HWND hwnd, WPARAM wParam, LPARAM lParam)
     return 0;
 }
 
-/* UNDOCUMENTED MESSAGE: This returns the number of maximum number
- * of image lists associated with the various states. */
-static LRESULT TOOLBAR_Unkwn462(HWND hwnd, WPARAM wParam, LPARAM lParam)
+/* Returns the number of maximum number of image lists associated with the
+ * various states. */
+static LRESULT TOOLBAR_GetImageListCount(HWND hwnd, WPARAM wParam, LPARAM lParam)
 {
     TOOLBAR_INFO *infoPtr = TOOLBAR_GetInfoPtr(hwnd);
 
@@ -5299,7 +5295,7 @@ static LRESULT TOOLBAR_Unkwn462(HWND hwnd, WPARAM wParam, LPARAM lParam)
 }
 
 static LRESULT
-TOOLBAR_Unkwn463 (HWND hwnd, WPARAM wParam, LPARAM lParam)
+TOOLBAR_GetIdealSize (HWND hwnd, WPARAM wParam, LPARAM lParam)
 {
     TOOLBAR_INFO *infoPtr = TOOLBAR_GetInfoPtr (hwnd);
     LPSIZE lpsize = (LPSIZE)lParam;
@@ -5314,7 +5310,7 @@ TOOLBAR_Unkwn463 (HWND hwnd, WPARAM wParam, LPARAM lParam)
      *   lParam    pointer to SIZE structure
      *
      */
-    TRACE("[0463] wParam %ld, lParam 0x%08lx -> 0x%08x 0x%08x\n",
+    TRACE("wParam %ld, lParam 0x%08lx -> 0x%08x 0x%08x\n",
 	  wParam, lParam, lpsize->cx, lpsize->cy);
 
     switch(wParam) {
@@ -5341,11 +5337,10 @@ TOOLBAR_Unkwn463 (HWND hwnd, WPARAM wParam, LPARAM lParam)
 	lpsize->cy = infoPtr->rcBound.bottom - infoPtr->rcBound.top;
 	break;
     default:
-	ERR("Unknown wParam %ld for Toolbar message [0463]. Please report\n",
-	    wParam);
+	FIXME("Unknown wParam %ld\n", wParam);
 	return 0;
     }
-    TRACE("[0463] set to -> 0x%08x 0x%08x\n",
+    TRACE("set to -> 0x%08x 0x%08x\n",
 	  lpsize->cx, lpsize->cy);
     return 1;
 }
@@ -6920,17 +6915,17 @@ ToolbarWindowProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 	case TB_UNKWN45D:
 	    return TOOLBAR_Unkwn45D(hwnd, wParam, lParam);
 
-	case TB_UNKWN45E:
-	    return TOOLBAR_Unkwn45E (hwnd, wParam, lParam);
+	case TB_SETHOTITEM2:
+	    return TOOLBAR_SetHotItem2 (hwnd, wParam, lParam);
 
-	case TB_UNKWN460:
-	    return TOOLBAR_Unkwn460(hwnd, wParam, lParam);
+	case TB_SETLISTGAP:
+	    return TOOLBAR_SetListGap(hwnd, wParam, lParam);
 
-	case TB_UNKWN462:
-	    return TOOLBAR_Unkwn462(hwnd, wParam, lParam);
+	case TB_GETIMAGELISTCOUNT:
+	    return TOOLBAR_GetImageListCount(hwnd, wParam, lParam);
 
-	case TB_UNKWN463:
-	    return TOOLBAR_Unkwn463 (hwnd, wParam, lParam);
+	case TB_GETIDEALSIZE:
+	    return TOOLBAR_GetIdealSize (hwnd, wParam, lParam);
 
 	case TB_UNKWN464:
 	    return TOOLBAR_Unkwn464(hwnd, wParam, lParam);
diff --git a/dlls/user32/spy.c b/dlls/user32/spy.c
index 59fa410..beb21fc 100644
--- a/dlls/user32/spy.c
+++ b/dlls/user32/spy.c
@@ -1511,9 +1511,10 @@ static const USER_MSG toolbar_array[] = {
           USM(TB_GETSTRINGW            ,0),
           USM(TB_GETSTRINGA            ,0),
           USM(TB_UNKWN45D              ,8),
-          USM(TB_UNKWN45E              ,0),
-          USM(TB_UNKWN460              ,0),
-          USM(TB_UNKWN463              ,8),
+          USM(TB_SETHOTITEM2           ,0),
+          USM(TB_SETLISTGAP            ,0),
+          USM(TB_GETIMAGELISTCOUNT     ,0),
+          USM(TB_GETIDEALSIZE          ,8),
           USM(TB_UNKWN464              ,0),
           {0,0,0} };
 
diff --git a/include/commctrl.h b/include/commctrl.h
index 046e13f..9f68edd 100644
--- a/include/commctrl.h
+++ b/include/commctrl.h
@@ -1213,12 +1213,14 @@ static const WCHAR TOOLBARCLASSNAMEW[] = { 'T','o','o','l','b','a','r',
 #define TB_GETSTRING             WINELIB_NAME_AW(TB_GETSTRING)
 
 /* undocumented messages in Toolbar */
+#ifdef __WINESRC__
 #define TB_UNKWN45D              (WM_USER+93)
-#define TB_UNKWN45E              (WM_USER+94)
-#define TB_UNKWN460              (WM_USER+96)
-#define TB_UNKWN462              (WM_USER+98)
-#define TB_UNKWN463              (WM_USER+99)
+#define TB_SETHOTITEM2           (WM_USER+94)
+#define TB_SETLISTGAP            (WM_USER+96)
+#define TB_GETIMAGELISTCOUNT     (WM_USER+98)
+#define TB_GETIDEALSIZE          (WM_USER+99)
 #define TB_UNKWN464              (WM_USER+100)
+#endif
 
 #define TB_GETMETRICS            (WM_USER+101)
 #define TB_SETMETRICS            (WM_USER+102)




More information about the wine-cvs mailing list