[COMCTL32] Sync with Wine Staging 2.16. CORE-13762
[reactos.git] / reactos / dll / win32 / comctl32 / toolbar.c
index 63d54fd..12d16f1 100644 (file)
@@ -1377,7 +1377,7 @@ TOOLBAR_CalcStrings (const TOOLBAR_INFO *infoPtr, LPSIZE lpSize)
     SelectObject (hdc, hOldFont);
     ReleaseDC (infoPtr->hwndSelf, hdc);
 
-    TRACE("max string size %d x %d!\n", lpSize->cx, lpSize->cy);
+    TRACE("max string size %d x %d\n", lpSize->cx, lpSize->cy);
 }
 
 /***********************************************************************
@@ -1914,13 +1914,13 @@ TOOLBAR_InternalHitTest (const TOOLBAR_INFO *infoPtr, const POINT *lpPt, BOOL *b
 
        if (btnPtr->fsStyle & BTNS_SEP) {
            if (PtInRect (&btnPtr->rect, *lpPt)) {
-               TRACE(" ON SEPARATOR %d!\n", i);
+               TRACE(" ON SEPARATOR %d\n", i);
                return -i;
            }
        }
        else {
            if (PtInRect (&btnPtr->rect, *lpPt)) {
-               TRACE(" ON BUTTON %d!\n", i);
+               TRACE(" ON BUTTON %d\n", i);
                 if (button)
                     *button = TRUE;
                return i;
@@ -1928,7 +1928,7 @@ TOOLBAR_InternalHitTest (const TOOLBAR_INFO *infoPtr, const POINT *lpPt, BOOL *b
        }
     }
 
-    TRACE(" NOWHERE!\n");
+    TRACE(" NOWHERE\n");
     return TOOLBAR_NOWHERE;
 }
 
@@ -2074,7 +2074,6 @@ TOOLBAR_RelayEvent (HWND hwndTip, HWND hwndMsg, UINT uMsg,
     SendMessageW (hwndTip, TTM_RELAYEVENT, 0, (LPARAM)&msg);
 }
 
-
 static void
 TOOLBAR_TooltipAddTool(const TOOLBAR_INFO *infoPtr, const TBUTTON_INFO *button)
 {
@@ -2735,7 +2734,7 @@ TOOLBAR_CustomizeDialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
                btnInfo = (PCUSTOMBUTTON)SendDlgItemMessageW (hwnd, wParam, LB_GETITEMDATA, lpdis->itemID, 0);
                if (btnInfo == NULL)
                {
-                   FIXME("btnInfo invalid!\n");
+                   FIXME("btnInfo invalid\n");
                    return TRUE;
                }
 
@@ -2917,18 +2916,22 @@ TOOLBAR_AddBitmap (TOOLBAR_INFO *infoPtr, INT count, const TBADDBITMAP *lpAddBmp
         switch (lpAddBmp->nID)
         {
             case IDB_STD_SMALL_COLOR:
+            case 2:
                info.nButtons = 15;
                info.nID = IDB_STD_SMALL;
                break;
             case IDB_STD_LARGE_COLOR:
+            case 3:
                info.nButtons = 15;
                info.nID = IDB_STD_LARGE;
                break;
             case IDB_VIEW_SMALL_COLOR:
+            case 6:
                info.nButtons = 12;
                info.nID = IDB_VIEW_SMALL;
                break;
             case IDB_VIEW_LARGE_COLOR:
+            case 7:
                info.nButtons = 12;
                info.nID = IDB_VIEW_LARGE;
                break;
@@ -2941,10 +2944,11 @@ TOOLBAR_AddBitmap (TOOLBAR_INFO *infoPtr, INT count, const TBADDBITMAP *lpAddBmp
                info.nID = IDB_HIST_LARGE;
                break;
            default:
+                WARN("unknown bitmap id, %ld\n", lpAddBmp->nID);
                return -1;
        }
 
-       TRACE ("adding %d internal bitmaps!\n", info.nButtons);
+        TRACE ("adding %d internal bitmaps\n", info.nButtons);
 
        /* Windows resize all the buttons to the size of a newly added standard image */
        if (lpAddBmp->nID & 1)
@@ -2965,7 +2969,7 @@ TOOLBAR_AddBitmap (TOOLBAR_INFO *infoPtr, INT count, const TBADDBITMAP *lpAddBmp
        info.nButtons = count;
        info.hInst = lpAddBmp->hInst;
        info.nID = lpAddBmp->nID;
-       TRACE("adding %d bitmaps!\n", info.nButtons);
+       TRACE("adding %d bitmaps\n", info.nButtons);
     }
     
     /* check if the bitmap is already loaded and compute iSumButtons */
@@ -2980,7 +2984,7 @@ TOOLBAR_AddBitmap (TOOLBAR_INFO *infoPtr, INT count, const TBADDBITMAP *lpAddBmp
 
     if (!infoPtr->cimlDef) {
        /* create new default image list */
-       TRACE ("creating default image list!\n");
+        TRACE ("creating default image list\n");
 
         himlDef = ImageList_Create (infoPtr->nBitmapWidth, infoPtr->nBitmapHeight,
                                     ILC_COLOR32 | ILC_MASK, info.nButtons, 2);
@@ -3013,7 +3017,7 @@ TOOLBAR_AddBitmap (TOOLBAR_INFO *infoPtr, INT count, const TBADDBITMAP *lpAddBmp
 static LRESULT
 TOOLBAR_AddButtonsT(TOOLBAR_INFO *infoPtr, INT nAddButtons, const TBBUTTON* lpTbb, BOOL fUnicode)
 {
-    TRACE("adding %d buttons (unicode=%d)!\n", nAddButtons, fUnicode);
+    TRACE("adding %d buttons (unicode=%d)\n", nAddButtons, fUnicode);
 
     return TOOLBAR_InternalInsertButtonsT(infoPtr, -1, nAddButtons, lpTbb, fUnicode);
 }
@@ -3139,7 +3143,7 @@ TOOLBAR_AddStringA (TOOLBAR_INFO *infoPtr, HINSTANCE hInstance, LPARAM lParam)
 static LRESULT
 TOOLBAR_AutoSize (TOOLBAR_INFO *infoPtr)
 {
-    TRACE("auto sizing, style=%x!\n", infoPtr->dwStyle);
+    TRACE("auto sizing, style=%#x\n", infoPtr->dwStyle);
     TRACE("nRows: %d, infoPtr->nButtonHeight: %d\n", infoPtr->nRows, infoPtr->nButtonHeight);
 
     if (!(infoPtr->dwStyle & CCS_NORESIZE))
@@ -3336,7 +3340,7 @@ TOOLBAR_DeleteButton (TOOLBAR_INFO *infoPtr, INT nIndex)
     TOOLBAR_TooltipDelTool(infoPtr, &infoPtr->buttons[nIndex]);
 
     if (infoPtr->nNumButtons == 1) {
-       TRACE(" simple delete!\n");
+       TRACE(" simple delete\n");
         free_string( infoPtr->buttons );
        Free (infoPtr->buttons);
        infoPtr->buttons = NULL;
@@ -3344,7 +3348,7 @@ TOOLBAR_DeleteButton (TOOLBAR_INFO *infoPtr, INT nIndex)
     }
     else {
        TBUTTON_INFO *oldButtons = infoPtr->buttons;
-        TRACE("complex delete! [nIndex=%d]\n", nIndex);
+        TRACE("complex delete [nIndex=%d]\n", nIndex);
 
        infoPtr->nNumButtons--;
        infoPtr->buttons = Alloc (sizeof (TBUTTON_INFO) * infoPtr->nNumButtons);
@@ -4660,7 +4664,7 @@ TOOLBAR_SetCmdId (TOOLBAR_INFO *infoPtr, INT nIndex, INT nId)
 
     if (infoPtr->hwndToolTip) {
 
-       FIXME("change tool tip!\n");
+       FIXME("change tool tip\n");
 
     }
 
@@ -5343,7 +5347,7 @@ TOOLBAR_GetStringW (const TOOLBAR_INFO *infoPtr, WPARAM wParam, LPWSTR str)
 static LRESULT TOOLBAR_SetBoundingSize(HWND hwnd, WPARAM wParam, LPARAM lParam)
 {
     SIZE * pSize = (SIZE*)lParam;
-    FIXME("hwnd=%p, wParam=0x%08lx, size.cx=%d, size.cy=%d stub!\n", hwnd, wParam, pSize->cx, pSize->cy);
+    FIXME("hwnd=%p, wParam=0x%08lx, size.cx=%d, size.cy=%d stub\n", hwnd, wParam, pSize->cx, pSize->cy);
     return 0;
 }
 
@@ -6596,7 +6600,7 @@ TOOLBAR_SetRedraw (TOOLBAR_INFO *infoPtr, WPARAM wParam)
 static LRESULT
 TOOLBAR_Size (TOOLBAR_INFO *infoPtr)
 {
-    TRACE("sizing toolbar!\n");
+    TRACE("sizing toolbar\n");
 
     if (infoPtr->dwExStyle & TBSTYLE_EX_HIDECLIPPEDBUTTONS)
     {
@@ -7177,6 +7181,10 @@ static HIMAGELIST TOOLBAR_InsertImageList(PIMLENTRY **pies, INT *cies, HIMAGELIS
     /* Check if the entry already exists */
     c = TOOLBAR_GetImageListEntry(*pies, *cies, id);
 
+    /* Don't add new entry for NULL imagelist */
+    if (!c && !himl)
+        return NULL;
+
     /* If this is a new entry we must create it and insert into the array */
     if (!c)
     {