Commit Graph

289 Commits

Author SHA1 Message Date
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
Robert Shearman 23983b8f83 - Add support for a toolbar global iListGap.
- Make TOOLBAR_CalcToolbar and TOOLBAR_DrawButton not rely on "magic
  numbers" and calculate sizes and positions more like native.
2004-03-12 20:24:05 +00:00
Ge van Geldorp c11d8b00d6 Explicitly ask for image list with screen depth as ILC_COLOR can/will
limit the depth to 4bpp now.
2004-03-11 22:46:51 +00:00
Robert Shearman 90323a1b8a Rewrite drawing code. 2004-03-11 03:50:10 +00:00
Robert Shearman 490fbd84fb Don't allocate space for text when nMaxTextRows = 0. 2004-03-07 03:13:26 +00:00
Robert Shearman cc08578577 - Support custom check background.
- Reduce number of parameters needed for DrawString function.
2004-03-03 05:26:01 +00:00
Huw Davies 9af2de85ea If TBSTYLE_EX_HIDECLIPPEDBUTTONS is set then invalidate the area that
changes in a resize.
Don't call SWP unless we're actually adjusting anything.
2004-02-20 19:56:52 +00:00
Robert Shearman 41596e8031 - Fix some traces.
- The TBM_GET*HOTLIST functions take imagelist ID in wParam.
- Implement TBM_GETSTRING{A,W}.
- Implement undocumented 0x462 message.
2004-02-17 20:28:19 +00:00
Huw Davies 951b0a2271 Only redraw button in PressButton and Indeterminate if its state has
changed.
2004-02-11 05:26:30 +00:00
Huw Davies e722167e0d Honour TB_SETMAXTEXTROWS. 2004-02-11 04:02:29 +00:00
Ulrich Czekalla 54b6ccd501 Add support for BTNS_WHOLEDROPDOWN.
Populate button rect when sending TBN_DROPDOWN.
2004-02-10 20:08:45 +00:00
Dmitry Timoshkov e6f01981fc Add partial support for some undocumented toolbar messages. 2004-02-10 01:34:47 +00:00
Huw Davies a1edb9204f TB_ADDBUTTONS can pass a string ptr instead of an index.
TB_GETBUTTONINFO only returns a string if it's not in the internal
string list.
2004-02-09 21:47:01 +00:00
Huw Davies 89ef25e218 Use the BTNS_* toolbar button style defines rather than the outdated
TBSTYLE_*.
2004-02-09 21:01:10 +00:00
Huw Davies 6b27cde3a2 Add a missing return. 2004-02-07 01:28:10 +00:00
Jon Griffiths ed39e7c039 Draw disabled toolbar buttons correctly. 2004-02-03 00:08:34 +00:00
Ge van Geldorp adeaa30555 Discard mouse button up events if no button is currently pressed. 2004-01-23 20:46:47 +00:00
Robert Shearman 7d6afc5ddc - Add support for TBSTYLE_EX_MIXEDBUTTONS.
- Add support for TBSTYLE_EX_HIDECLIPPEDBUTTONS.
- Replace 'magic numbers' with #define'd constants.
- Fix TBN_INITCUSTOMIZE.
- Add support for TBN_CUSTHELP and TBN_RESET.
- Fix TB_SETEXTENDEDSTYLE (it appears it should or the new style,
  rather than set).
- Fix TB_SETSTYLE (this is meant to be for setting the control style,
  not the button style).
2003-11-26 22:05:02 +00:00
Rein Klazes 8ba9b5fc7e Use button face color for the image mask when adding a bitmap to the
toolbar, not the color of the top left pixel of the image.
2003-11-25 01:45:50 +00:00
Rein Klazes 7f7cde0eee Fix some confusion between number of bitmaps and number of buttons in
TOOLBAR_ReplaceBitmap().
2003-11-21 21:30:48 +00:00
Dimitrie O. Paun c594043316 Make the controls send notifications to the parent window passed to
them in CREATESTRUCT.  Based on a treeview patch by Igor Grahek.
2003-11-20 22:04:13 +00:00
Rein Klazes 56121b7161 Correctly place a toolbar with CCS_BOTTOM style at the bottom, not the
top.
2003-11-05 00:35:28 +00:00
Robert Shearman 90f3057b41 - Use the style returned in custom draw structure to draw the button,
as apps may modify the style this way.
- Disabled buttons can become hot.
- Retrieve image list for drawing after getting image list ID (in
  I_IMAGECALLBACK case).
2003-10-31 00:08:39 +00:00
Francois Gouget f405629e8e Weekly spelling fixes. 2003-10-28 21:45:30 +00:00
Dimitrie O. Paun 7de279a73a Rename COMCTL32_{Alloc,ReAlloc,Free} to {Alloc,ReAlloc,Free}. 2003-09-22 21:32:33 +00:00
Alexandre Julliard f5cb3dde17 Moved undocumented functions out of the exported commctrl.h. 2003-09-17 20:15:21 +00:00