Commit Graph

314 Commits

Author SHA1 Message Date
Mikołaj Zalewski 9ec280c258 comctl32: toolbar: The string should be included in the height of a button-less toolbar only if there is a string in the pool. 2006-11-02 12:29:50 +01:00
Mikołaj Zalewski d57a61f831 comctl32: toolbar: Add support for WM_SETFONT. 2006-11-02 12:29:32 +01:00
Oleg Krylov 32caf30f9c comctl32: Create tooltip windows with WS_POPUP style. 2006-10-25 20:21:34 +02:00
Alexandre Julliard 7cca856315 comctl32: Properly handle negative coordinates for mouse events. 2006-10-25 17:41:48 +02:00
Mikołaj Zalewski 39c4bbe56a comctl32: toolbar: Fix the tests and handling of TB_SETHOTITEM on a disabled button. 2006-10-19 14:00:55 +02:00
Oleg Krylov 2d6b9cafc6 comctl32: toolbar: Create tooltip on TB_GETTOOLTIPS message if not yet created. 2006-10-19 13:47:08 +02:00
Mikołaj Zalewski 76b162067f comctl32: toolbar: Test and improve TB_SETHOTITEM. 2006-10-14 20:43:03 +02:00
Mikołaj Zalewski 010f31f413 comctl32: toolbar: Use nHotItem not nOldHit for the hot item in MouseLeave. 2006-10-14 20:42:36 +02:00
Mikołaj Zalewski d929cec671 comctl32: toolbar: Don't try to redraw buttons outside of the clipping rect. 2006-10-14 20:42:21 +02:00
Mikołaj Zalewski 992310e4be comctl32: toolbar: Change the dwData from DWORD to DWORD_PTR. 2006-10-14 20:41:48 +02:00
Michael Ploujnikov 1c16d83379 comctl32: Win64 printf format warning fixes. 2006-10-14 20:17:06 +02:00
Mikołaj Zalewski e998f9a498 comctl32: toolbar: Store dwBaseCustDraw and dwItemCDFlag in local variables. 2006-10-12 12:56:23 +02:00
Mikołaj Zalewski 79433e1bda comctl32: toolbar: Merge TOOLBAR_InsertButtonA and TOOLBAR_InsertButtonW. 2006-10-12 12:56:07 +02:00
Mikołaj Zalewski c95aa8228a comctl32: toolbar: Passing a string pointer in TB_INSERTBUTTON shouldn't change the strings table (with test case). 2006-10-12 12:55:56 +02:00
Mikołaj Zalewski 4cf682b8c4 comctl32: toolbar: Remove dwItemCustDraw from TOOLBAR_INFO and store it as a local variable. 2006-10-12 12:55:40 +02:00
Mikołaj Zalewski e0e2d7482c comctl32: toolbar: Don't send NM_CUSTOMDRAW for separators. 2006-10-12 12:55:28 +02:00
Mikołaj Zalewski 241956101e comctl32: toolbar: Fix the TB_ADDSTRING from resources for a NUL delimiter. 2006-10-09 20:53:15 +02:00
Mikołaj Zalewski 869c3bb74b comctl32: toolbar: Merge AddButtonsA and AddButtonsW into AddButtonsT. 2006-10-09 20:52:48 +02:00
Mikołaj Zalewski 81050ccaff comctl32: toolbar: Create the tooltip control during WM_MOUSEMOVE so that the NM_TOOLTIPSCREATE is not sent too early. 2006-10-09 20:52:28 +02:00
Mikołaj Zalewski 7b899eabe9 comctl32: toolbar: Move add/remove/setrect tooltip code to separate functions. 2006-10-09 20:52:18 +02:00
Mikołaj Zalewski c7d034219e comctl32: toolbar: Small fix in TOOLBAR_StyleChanged. 2006-09-29 14:42:20 +02:00
Mikołaj Zalewski 764c5b3b35 comctl32: toolbar: Set correcly hwndTrack in TrackMouseEvent call. 2006-09-29 14:42:08 +02:00
Mikołaj Zalewski 5db5744c5b comctl32: toolbar: Test and fix TB_ADDSTRING from resource. 2006-09-27 20:21:00 +02:00
Mikołaj Zalewski 8cbca5dcfd comctl32: toolbar: If wParam in TB_ADDBUTTON is large, enlarge the
bitmap before ImageList_AddMasked rather then call
ImageList_SetImagesCount after.
2006-09-26 11:38:35 +02:00
Mikołaj Zalewski c77890d4f3 comctl32: toolbar: Resize the imagelist icons after a TB_SETBITMAPSIZE. 2006-09-26 11:37:47 +02:00
Mikołaj Zalewski 2fa45673f8 comctl32: toolbar: Fix the return code of TB_ADDBITMAP. 2006-09-21 17:42:44 +02:00
Mikołaj Zalewski 12d3235edc comctl32: toolbar: Simplify the TOOLBAR_AddButton. 2006-09-21 17:42:34 +02:00
Mikołaj Zalewski 9e390091db comctl32: toolbar: Fix IDB_STD_VIEW_* icons count (with testcase). 2006-09-21 17:41:36 +02:00
Mikołaj Zalewski d457b37d82 comctl32: toolbar: Use correctly wParam in TB_ADDBITMAP. 2006-09-21 17:41:20 +02:00
Mikołaj Zalewski 5facde470e comctl32: toolbar: Don't leak the intoPtr->bitmaps during resizing and destruction. 2006-09-20 11:21:57 +02:00
Andrew Talbot cc90540c9b comctl32: Cast-qual warnings fix. 2006-09-07 10:16:34 +02:00
Oleg Krylov 21b94d4cf4 comctl32: Correctly map toolbar bitmap mask color in case of non-default color scheme. 2006-08-18 21:17:34 +02:00
Oleg Krylov 3e68a1f1ff comctl32: toolbar: Use HOT imagelist for buttons in CHECKED state. 2006-08-17 11:19:47 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
qingdoa daoo d2f59fe455 comctl32: Fix an unsigned comparison to zero. 2006-04-20 15:37:48 +02:00
Michael Kaufmann e9310da57b Handle WM_PRINTCLIENT.
Don't use SelectClipRgn in WM_PRINTCLIENT.
2005-11-08 12:52:35 +00:00
Krzysztof Foltman 364c3aa449 Separators with group style set don't separate toolbar radio groups
anymore (which broke tool selection in Front Panel Designer).
2005-10-21 15:45:11 +00:00
Robert Shearman 2c6ab0dba5 - Add support for navigating a toolbar with the arrow keys.
- Fix WrapToolbar in the case of no parent window.
- Use the newly added NMTBINITCUSTOMIZE for sending the
  TBN_INITCUSTOMIZE so that it is safe on 64-bit platforms.
2005-09-14 19:16:03 +00:00
Marcus Meissner bd7ec9aca5 The last argument to MultiByteToWideChar is wide character count and
not the buffer size in bytes. Fixed all places where it was wrong.
2005-09-12 22:07:53 +00:00
Frank Richter 9e57091ffa Fix warnings in 64bit. 2005-08-30 10:07:17 +00:00
Yuri Kozlov dc21c5e45a Set default size for toolbar bitmap if not specified. 2005-08-29 09:39:04 +00:00
Frank Richter 464f562a3a Add theming for toolbar control. 2005-08-12 11:17:14 +00:00
Robert Shearman 3e03bc1d73 - Call SetBkMode with the correct value from the NMTBCUSTOMDRAW
structure.
- Don't fill the NMTBCUSTOMDRAW structure in again for
  CDDS_POSTPAINT.
- Remove redundant bBtnTransprnt value.
2005-07-22 19:57:44 +00:00
Robert Shearman 87dacfffc2 - Height is now calculated based on the number of rows, not on the
bounding rect.
- Only call CalcToolbar in AutoSize if it has TBSTYLE_WRAPABLE or
  TBSTYLE_EX_UNDOC1 set.
- Remove a bad test in SetButtonWidth that fixes a regression from the
  above change in IE.
- Remove unnecessary nHeight data.
- Remove duplicated code in Size by calling AutoSize.
- Remove unnecessary bAutoSize value because SetWindowPos doesn't
  generate WM_SIZE when there is nothing to do on both Windows and
  Wine.
2005-07-22 19:55:54 +00:00
Robert Shearman 05f2506c06 TBSTATE_INDETERMINATE only takes effect if the button is enabled,
otherwise it should just appear like any other disabled button.
2005-07-22 19:54:17 +00:00
Robert Shearman 481d189508 Native autosizes on inserting/adding buttons, so we should too. 2005-07-22 19:52:05 +00:00
Robert Shearman 8b086842c3 The IsValidImageList test is not needed because if it isn't a valid
image list we will have set the bitmap width and height to 1 and it
does the wrong thing when no buttons are present.
2005-07-22 19:48:07 +00:00
Robert Shearman 2e0a42ec2c The calculated button height should include the text height when no
buttons are present.
2005-07-22 18:28:46 +00:00
Aric Stewart cd6fd67dcb When adding an image copy the full previous buffer.
Implement replacing an icon with one from a resource.
2005-07-15 09:57:21 +00:00
Robert Shearman 389f9d55d9 - Document how the native lays out the internal components of
buttons.
- Fix control to follow these rules.
- Don't redraw disabled buttons.
- Padding is never less that GetSystemMetrics(SM_{CX,CY}EDGE).
- Change default iListGap value to 4 to match native.
2005-06-25 17:55:40 +00:00
Francois Gouget f5c9da6860 Assorted spelling fixes. 2005-05-06 15:44:31 +00:00
Robert Shearman a3b4e20503 Fix TB_GETBUTTONSIZE to return the correct width/height for no
buttons.
2005-04-15 14:09:05 +00:00
Dimitrie O. Paun 8df71a6cfa Use {Alloc,ReAlloc,Free}() instead of Heap{Alloc,ReAlloc,Free}(). 2005-03-25 20:49:00 +00:00
Dimitrie O. Paun ecc850c460 Fix a memory leak in toolbar. Avoid casts. 2005-03-25 10:27:00 +00:00
Dimitrie O. Paun e912c6a931 Complete unicodification of the toolbar common control.
Move a header comment for consistency with the other controls.
Very small alignment fixes.
2005-03-23 10:24:06 +00:00
Thomas Weidenmueller e8e42e4614 When a toolbar doesn't have the TBSTYLE_FLAT style redrawing the
buttons when moving the mouse is not necessary.
2005-01-28 17:19:29 +00:00
Francois Gouget da8b3dd7f2 Assorted spelling fixes. 2005-01-26 21:09:04 +00:00
Tinus aee4f25ed6 Properly allow removing toolbar bitmaps by changing it into 0. 2005-01-24 18:59:13 +00:00
Eric Pouech cf1d00bb08 Removed excessive statement (break after return or goto, not useful
break, not needed vars...)
2005-01-09 16:42:53 +00:00
Michael Stefaniuc 5ad7d858e0 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2004-12-23 17:06:43 +00:00
Robert Shearman d7dd3e37c8 Store the new style before redrawing and repositioning the control. 2004-11-30 17:28:10 +00:00
Robert Shearman b98b7dd65d - Set cache bitmap dimensions correctly when a 0x0 image list is used.
- Optimize WM_STYLECHANGED handler to only redraw when a CCS_* style
  is changed, like native.
2004-11-10 01:30:47 +00:00
Robert Shearman a9b1aa28b3 - bNtfUnicode is a dup' of bUnicode so remove it and fix the few
places where it was used.
- Remove a load of useless NULL infoPtr checks.
- Hardcode the default padding like native instead of using a wacky formula.
- Replace some tabs with spaces and remove NMHDR casts.
2004-11-08 22:17:02 +00:00
Robert Shearman 75314f474f Implement TBN_RESTORE notification. 2004-11-06 03:45:38 +00:00
Dmitry Timoshkov 99a6afcd6c Do not retrieve infoPtr twice in ToolbarWindowProc entry. 2004-11-01 21:07:43 +00:00
Robert Shearman e0f1444d4e - Don't fill in any more information than native does for notifications.
- Store hit code in a signed integer so that we can see whether it is
  less than zero.
2004-10-25 21:45:14 +00:00
Thorsten Kani c0a142ccee Don't add extra OFFSET_X/Y to the calculation of rcBitmap.top/left,
just use GetSystemMetrics.
2004-10-21 20:58:43 +00:00
Robert Shearman 18f0bf732d - Draw with ILD_TRANSPARENT instead of ILD_NORMAL to draw bitmaps from
the native shell image list properly (reported by Thorsten Kani).
- Rewrite TOOLBAR_NotifyFormat to avoid side-effects.
2004-10-21 19:52:16 +00:00
Robert Shearman a16223e302 - TBN_DELETINGBUTTON sends the command ID, not the index.
- Fill in tbButton structure for TBN_DELETINGBUTTON notification.
- Document TBN_QUERY* sending indices.
2004-10-18 19:39:22 +00:00
Filip Navara b6153a1165 Add note about unimplemented TB_SAVERESTORE message. 2004-09-23 22:51:14 +00:00
Robert Shearman 56b9d3c739 - Fix some TRACEs
- More A->W conversions missed by previous patch.
- Fix off-by-one error in validating drag-n-drop from available
  buttons list box to actual buttons list box.
- Unicode flag should be based on the notification window.
2004-09-20 19:10:05 +00:00
Robert Shearman defcfc85db Use Unicode window messages. 2004-09-16 19:06:12 +00:00
Robert Shearman d087c578b6 - Make customization list boxes into drag list boxes.
- Order available buttons in the same way as the native version.
2004-09-14 01:06:30 +00:00
Robert Shearman 8f870346cb - Obey TBCDRF_NOOFFSET for the button text.
- Make anchor highlighting behave more like native version.
- Don't recalculate toolbar in TOOLBAR_Unkwn460.
- Obey WM_SETREDRAW for the WM_ERASEBKGND message as well as
  WM_PAINT.
2004-09-06 21:26:25 +00:00
Hans Leidekker 411fc5f164 Fix signed/unsigned comparison warnings. 2004-09-02 23:00:53 +00:00
Robert Shearman 4d7892f886 TB_MARKITEM should redraw button. 2004-08-30 18:36:55 +00:00
Robert Shearman b18e158636 - Send NM_LDOWN notification.
- NM_RDBLCLK only needs to send a NMHDR structure.
- On mouse notifications returning 0 DefWndProc should be called.
2004-08-25 02:16:32 +00:00
Robert Shearman f1ae41c7eb Fix regression with IE's Menu Bar. 2004-08-24 18:41:27 +00:00
Robert Shearman 4c1438a70e - Implement insert marks.
- Rearrange TOOLBAR_INFO.
2004-08-19 19:58:49 +00:00
Robert Shearman 9a7cda1048 - Fix anchor highlighting.
- Remove redundant test in TOOLBAR_DrawButton.
2004-08-19 19:02:59 +00:00
Filip Navara 1076286020 Fix TOOLBAR_DrawMasked to correctly use image list mask. 2004-08-09 23:37:54 +00:00
Filip Navara cbe79616bd Use system metrics values in TOOLBAR_DrawPattern instead of hardcoded
values.
2004-07-19 19:32:16 +00:00
Filip Navara 6a9cc38d9e Make the pattern drawing in TOOLBAR_DrawPattern look better. 2004-07-16 23:20:55 +00:00
Robert Shearman 5c5a0608e5 - Clean up the mask drawing code.
- Improve bitmap not found message.
2004-06-28 20:29:00 +00:00
Ulrich Czekalla 0178c1116b Handle case when item text is empty.
According to MSDN, length should be returned when lParam is NULL.
2004-06-02 21:34:05 +00:00
Robert Shearman b81934c2c7 Don't draw whole button pressed when separate dropdown pressed, just
the separate dropdown itself.
2004-06-02 00:36:00 +00:00
Robert Shearman 01a528817c - TBN_DRAGOUT and NM_RDBLCLK notifications.
- Remove unneeded member of private toolbar struct.
2004-05-18 00:44:47 +00:00
Maxime Bellengé 7c46a5eaa5 Add DT_END_ELLIPSIS as defaut style for text. 2004-05-12 23:03:03 +00:00
Maxime Bellengé 7507ad2ac5 Add NM_RCLICK notification support for toolbars. 2004-05-04 02:54:11 +00:00
Maxime Bellengé 199877a6d7 Fix the size of the listview items in the customize dialog. 2004-05-03 20:05:43 +00:00
Maxime Bellengé ee1c578017 Fix TB_GETSTYLE message to return the style of the toolbar and not the
style of a button.
2004-05-02 04:21:01 +00:00
Robert Shearman 9509912e41 - Optimise accessing toolbar style by storing it in the TOOLBAR_INFO
structure.
- Replace {Get,Set}WindowLong by {Get,Set}WindowLongPtr where
  appropriate.
2004-04-19 02:57:38 +00:00
Huw Davies 8e106f2f7b Fix dumb error from rev. 1.158. 2004-04-07 19:05:55 +00:00
Robert Shearman e2d6529d9c - Fix LButtonDown from previous change.
- Don't use BF_ADJUST flag for dropdown buttons.
- Fix LButtonDblClk.
2004-04-01 20:59:59 +00:00
Robert Shearman f92bb4b76a - Add cursor resource.
- Implement TB_MOVEBUTTON.
- Implement drag customise.
- Send TBN_TOOLBARCHANGE and TBN_DELETINGBUTTON.
2004-03-23 23:04:08 +00:00
Robert Shearman 838a1ea09d - Fix SetBitmapSize.
- Fix SetButtonInfo.
2004-03-18 04:01:02 +00:00
Robert Shearman a49b8a5eed - Documentation update.
- Better hot item handling.
- Fix DrawMasked to always use the right image list and bitmap index.
2004-03-17 20:46:57 +00:00
Robert Shearman 7d22cc16d9 - Document completeness.
- Finish tooltip support.
2004-03-15 20:20:01 +00:00
Robert Shearman 9eb33c82f3 - Honour WM_SETREDRAW.
- Fix all calls of InvalidateRect.
2004-03-15 20:06:33 +00:00
Robert Shearman 39689d715c - Implement TB_LOADIMAGES, TB_MAPACCELERATOR{A,W}, TB_MARKBUTTON and
undocumented message 0x460.
- Better debug output of undocumented message 0x45D.
2004-03-13 19:23:41 +00:00