Commit Graph

178 Commits

Author SHA1 Message Date
Mikołaj Zalewski e4f3689513 comctl32: header: Remove the nOldWidth. 2006-09-20 11:21:32 +02:00
Mikołaj Zalewski bd7f9321a0 comctl32: header: Send new values in notifies during resize and drag-drop instead of the old ones.
This also fixes the notify format of HDN_ITEMCLICKED(A/W).
2006-09-20 11:21:22 +02:00
Mikołaj Zalewski f85ceb1be3 comctl32: header: Merge the simple delete and complex delete. 2006-09-20 11:21:05 +02:00
Mikołaj Zalewski d98b9a4655 comctl32: header: Simplify the insert/delete code by using ReAlloc. 2006-09-20 11:20:30 +02:00
Mikołaj Zalewski 8ab78e18c6 comctl32: header: Test the header order-management code and fix some bugs. 2006-09-20 11:19:30 +02:00
Paul Vriens ddf0049e9c comctl32/header: Check Null before accessing struct member. 2006-06-02 11:22:26 +02:00
Mikołaj Zalewski baea6498dd comctl32: header: Update the rects in HEADER_Refresh if needed. 2006-06-01 11:08:09 +02:00
Mikołaj Zalewski 414128eb94 comctl32: header: Ignore out-of-range iOrder in SetItemT. 2006-05-30 19:30:51 +02:00
Mikołaj Zalewski ee430bf7b8 comctl32: header: Put the new item in place of the hot divider instead of swapping. 2006-05-26 12:00:57 +02:00
Mikołaj Zalewski 7ab41112ae comctl32: header: Draw the drag image and hot dividers while dragging an item. 2006-05-26 12:00:29 +02:00
Mikołaj Zalewski 89b62b48c6 comctl32: header: Fix an order-related bug in HEADER_InternalHitTest. 2006-05-26 11:59:11 +02:00
Mikołaj Zalewski 7e461db203 comctl32: header: Implement HDM_SETHOTDIVIDER. 2006-05-26 11:58:28 +02:00
Mikołaj Zalewski 4301543533 comctl32: header: Implement HDM_CREATEDRAGIMAGE. 2006-05-26 11:58:08 +02:00
Mikołaj Zalewski b8da6f2751 comctl32: header: Don't try to draw items outside the clipping rect. 2006-05-23 17:53:08 +02:00
Mikołaj Zalewski 64e5779c16 comctl32: header: Make the column resizing smooth in full drag mode.
Make the column resizing smooth in full drag mode even for listview
with lots of elements by redrawing only the resized column and calling
UpdateWindow.
2006-05-23 17:52:57 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Mikołaj Zalewski 4b25b346ee comctl32: header: Make sure no message is sent between PrepareCallbackItems/FreeCallbackItems. 2006-05-20 14:09:03 +02:00
Mikołaj Zalewski c932852bd4 comctl32: header: Don't erase the background in HEADER_Refresh. 2006-05-20 14:08:44 +02:00
Mikołaj Zalewski c054c1fe0e comctl32: header: The border size is 4 not 3. 2006-05-20 14:08:27 +02:00
Mikołaj Zalewski 3897015580 comctl32: header: Don't erase the left header egde. 2006-05-17 21:01:54 +02:00
Mikołaj Zalewski 28e3ba552e comctl32: header: Send the width in HDN_BEGINTRACK. 2006-05-17 21:01:39 +02:00
Mikołaj Zalewski 36a8e5fba3 comctl32: header: Fix INSERTITEM on a zero mask and GETITEM on a mask with unknown fields.
INSERTITEM should fail on a zero mask. If in GETITEM the mask has an
unknown field it should store only the comctl32 4.0 fields (with test
case).
2006-05-16 20:23:39 +02:00
Mikołaj Zalewski bf346b240d comctl32: header: Copy some fields on INSERTITEM even if they are not in the mask. 2006-05-16 20:22:27 +02:00
Mikołaj Zalewski 3eccdfcca7 comctl32: header: Automatically set some format fields. 2006-05-16 20:22:11 +02:00
Mikołaj Zalewski 74c3b366d3 comctl32: header: Correct HDN_GETDISPINFO. Use it during drawing.
Improve HEADER_SendHeaderDispInfoNotify and rename it to
HEADER_PrepareCallbackItems. The new HEADER_FreeCallbackItems frees
the buffers allocated by it. GetItemT and DrawItem calls these
functions.
2006-05-15 14:46:11 +02:00
Mikołaj Zalewski 96190f77b9 comctl32: header: Mark the callback items in a mask.
Mark the callback items in the callbackMask HEADER_ITEM field. The
pszText for callback texts is now NULL what simplifies some
checks. Checks for lpItem->pszText==emptyString are also not needed as
emptyString is not stored in lpItem but used as a parameter to
Str_SetPtr (I haven't noticed it).
2006-05-15 14:45:24 +02:00
Mikołaj Zalewski 25d66de358 comctl32 header: Free the old string also when the new one is LPSTR_TEXTCALLBACK. 2006-05-15 14:44:22 +02:00
Mikołaj Zalewski 16fefcd6d9 comctl32: header: Don't modify the user supplied HDITEM during Set/InsertItem. 2006-05-15 14:43:48 +02:00
Mikołaj Zalewski e3467de964 comctl32: header: Move common code from SetItemT/InsertItemT into a new function. 2006-05-15 14:41:01 +02:00
Mikołaj Zalewski 15e71a0a86 comctl32: header: Don't send HDN_GETDISPINFO during HDM_SET/INSERTITEM. 2006-05-15 14:40:27 +02:00
Mikołaj Zalewski 9865869902 comctl32: header: Don't check lpItem for NULL in GetItemT. 2006-05-15 14:40:08 +02:00
Mikołaj Zalewski b82156586e comctl32: header: Avoid freeing invalid pointers. 2006-04-20 11:34:13 +02:00
Mikołaj Zalewski 50d8c80fda comctl32: header: Send correct notify after HDM_SETITEM.
The HDN_ITEMCHANGING notify should have the new data instead of the
old one.  Both HDN_ITEMCHANGING and HDN_ITEMCHANGED now have the text
field if it changed.
2006-04-19 19:25:09 +02:00
Mikołaj Zalewski a49da0b719 comctl32: header: Remove the unused bUnicode. 2006-04-18 21:16:54 +02:00
Mikołaj Zalewski 7a7f80e9d1 comctl32: header: Correct WM_[GS]ETUNICODEFORMAT. 2006-04-18 21:16:33 +02:00
Mikołaj Zalewski 84c3189445 comctl32: Send Unicode notifications if required in header control. 2006-04-18 11:16:44 +02:00
Mikołaj Zalewski c63f5f095a comctl32: Fix listview column resize.
Fix the HDS_FULLDRAG headers notifications, invalidate such a control
after a mouse move.
2006-04-12 19:51:44 +02:00
Phil Krylov 1b9fc2a170 comctl32: Fix emitting of NM_CUSTOMDRAW header notifications.
Emit NM_CUSTOMDRAW header notifications for all headers, not only
ownerdrawn. Allow to change item text and background colors in an
application's NM_CUSTOMDRAW handler.
2006-01-10 19:58:24 +01:00
Vitaliy Margolen def2bb6798 Return false if index is out of bounds in GetItemT. 2005-11-17 11:06:18 +00:00
Raphael Junqueira e3d53b4722 Implement implement header callback support (HDN_GETDISPINFO notification):
- better factorisation
- unicode fixes
2005-11-15 16:54:41 +00:00
Michael Kaufmann e9310da57b Handle WM_PRINTCLIENT.
Don't use SelectClipRgn in WM_PRINTCLIENT.
2005-11-08 12:52:35 +00:00
Vitaliy Margolen c258430643 Unify HEADER_GetItem[A/W] into one function. 2005-10-29 11:08:20 +00:00
Vitaliy Margolen 89a4918218 Unify HEADER_InsertItem[A/W] into one function. 2005-10-28 10:40:27 +00:00
Vitaliy Margolen 05905cc526 Unify HEADER_SetItem[A/W] into one function. 2005-10-27 10:19:29 +00:00
Ge van Geldorp c00ded589a Do some bounds checking on iOrder. 2005-09-18 12:29:35 +00:00
Frank Richter 9e57091ffa Fix warnings in 64bit. 2005-08-30 10:07:17 +00:00
Phil Krylov 682dd707c8 Improved header control performance by maintaining an internal order
array.
2005-08-29 12:17:42 +00:00
Phil Krylov 030dbe2d98 Draw header control items only within the header client area. 2005-08-25 19:18:14 +00:00
Frank Richter 07f8690718 Add hottracking support for the header control. 2005-08-03 11:45:19 +00:00
Frank Richter d219a54e80 Since OpenThemeData() should return 0 in case theming is disabled
globally or for the application we don't need to check that when
calling OpenThemeData().
2005-07-27 15:16:09 +00:00
Filip Navara 52cf1851b8 Use ReleaseDC instead of DeleteDC on DC handle. 2005-07-26 18:25:46 +00:00
Frank Richter 564872cd81 Add theming support for header controls. 2005-07-25 11:09:09 +00:00
Vitaliy Margolen 4f403edd03 Send CDDS_ITEMPOSTERASE | CDDS_PREPAINT notify. 2005-06-30 18:11:19 +00:00
Felix Nawothnig e9e6f13996 Rewrote item layouting - new code fixes bitmap/image position for
non-left-aligned text, prevents jumping when resizing non-left-aligned
text, implements clipping for images and correctly aligns bitmaps when
an image is already there.
2005-05-14 11:03:17 +00:00
Francois Gouget 93416cdaf7 Assorted spelling fixes. 2005-03-23 13:15:18 +00:00
Dimitrie O. Paun 4904c8b52b Complete unicodification of the header common control. 2005-03-23 10:23:06 +00:00
Maxime Bellengé f28afa1047 Correctly displays the text with ellipsis when there is not enough
room in a header item and an image from an imagelist is displayed on
the right of the text.
2005-02-23 12:41:43 +00:00
Maxime Bellengé 7462a8f53f Fix SetItem so that items don't get wrongly re-ordered. 2005-02-21 18:34:17 +00:00
Evan Deaubl c84832160c GetItemA/W on header controls should handle message even if index is
invalid.
2005-01-10 14:25:30 +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
Robert Shearman 8d28e0314c Remove unnecessary WNDPROC casts. 2004-11-06 03:49:03 +00:00
Vitaliy Margolen 4cf764f503 Send correct tracing notification messages. 2004-09-13 18:05:02 +00:00
Hans Leidekker 411fc5f164 Fix signed/unsigned comparison warnings. 2004-09-02 23:00:53 +00:00
Robert Shearman cdb263e588 Replace GetWindowLong by GetWindowLongPtr. 2004-08-25 17:33:01 +00:00
Francois Gouget cfc3943c5f Make our ascii strings static const.
Remove a couple string variables that were used only once and use the
string literal directly.
2004-05-04 04:13:05 +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
Maxime Bellengé 5b99b3df29 - Implemented HEADER_SetBitmapMargin and HEADER_GetBitmapMargin.
- Get rid of some magic numbers in HEADER_DrawItem.
- Fixed the drawing of images from imagelist when the
  HDF_BITMAP_ON_RIGHT flag is set.
2003-10-14 20:13:42 +00:00
Daniel Marmier ee1eb63b31 Fixed warnings with gcc option "-Wwrite-strings". 2003-10-07 03:30:47 +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 9d61596624 SLOWORD and SHIWORD do not exist on Win32 (reported by Filip Navara). 2003-09-17 04:28:28 +00:00
Alexandre Julliard cf52644a1c Removed the A/W constants for builtin cursors, icons and resource
types since they don't exist on Windows, and added typecasts
everywhere instead.
2003-09-10 03:56:47 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Robert Shearman f644c787ee Update ordering on insertion of an item. 2003-05-22 03:34:54 +00:00
Francois Gouget d2667a4ce3 Removed unnecessary HANDLE typecasts. 2002-12-02 18:10:57 +00:00
Carlos 9fa51e4172 Fixed duplicated arrows in header control. 2002-10-23 23:31:35 +00:00
Michael Stefaniuc 353529b2c8 - fix the "int format, HANDLE arg" type of warnings for comctl32
- compile the comctl32 dll with -DSTRICT
2002-10-23 22:19:10 +00:00
Dimitrie O. Paun d664540782 Bring header's height more inline with native's. 2002-10-22 00:41:45 +00:00
Dimitrie O. Paun f8514f5b3c Fix notification from header, on item changed.
Small indentation fixes.
2002-10-21 18:22:51 +00:00
Martin Fuchs fe7d46a221 pszText is stored as Unicode, so call DrawTextW() instead of
DrawTextA().
2002-10-18 00:20:04 +00:00
Bill Medland 69f18275d5 Correction to header order maintenance when a dummy first item is
added and then deleted (as suggested by MSDN to handle the fact that
the first column of a listview is left justified).  Also removed
redundant casts.
2002-07-16 01:14:46 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Huw D M Davies b3b0ddb859 Fix off by one error in HEADER_InsertItemW. 2002-04-03 22:43:27 +00:00
Duane Clark f730157ce6 Test bUnicode and call appropriate DrawText routine. 2002-03-11 01:08:29 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Andreas Mohr 2295e87be8 Fixed some more missing parenthesis issues. 2002-02-02 18:06:03 +00:00
Mike McCormack 7c1db50c2f Ignore negative widths in HEADER_SetItemBounds. 2001-09-17 20:25:52 +00:00
Gerard Patel 66226d80f3 Set background mode to transparent before calling owner-drawn user
handling.
2001-04-04 00:09:05 +00:00
Ulrich Czekalla 361eebb1ba Mark width as valid when we send HDN_ENDTRACKA. 2000-12-15 20:54:41 +00:00
Alexandre Julliard f6168db690 Fixed some warnings. 2000-12-13 20:03:53 +00:00
Eric Kohl 4718b6d09d Fixed crash of WinZip 8.0 due to invalid image list handle. 2000-12-13 01:52:23 +00:00
Alexandre Julliard 24a62ab9b0 Got rid of the Wine internal lstrcpy* functions and of winestring.h. 2000-11-28 22:40:56 +00:00
Eric Kohl 40f29eeab7 Added notification format handling. 2000-11-25 03:07:01 +00:00
Ulrich Czekalla f235a7ba04 Send HDN_ITEMCHANGING and HDN_ITEMCHANGED when resizing. 2000-11-25 01:25:46 +00:00
Eric Kohl dbbc224f11 Added header control cursors and drag list arrow icon. 2000-11-09 20:26:34 +00:00
Uwe Bonnes 018c6545dc Draw text and icons, implement ordering functions, allow reordering
with mouse and fix the WM_NOTIFY target.
2000-10-19 22:26:17 +00:00
Serge Ivanov 7a9a2aa104 Simple NULL check. 2000-10-12 23:08:19 +00:00
Alexandre Julliard 072dfb57e3 Removed inclusion of wine/winestring.h from winbase.h and added it to
the C files that need it.
2000-09-25 23:30:56 +00:00
Alexandre Julliard c7e7df8b17 Replaced all lstr* calls from inside Wine code by their str* equivalent. 2000-08-14 14:41:19 +00:00
Alexandre Julliard 70c9e095ef Removed all non-standard common control headers from the include
directory.
2000-08-09 00:41:17 +00:00
Aric Stewart 3054b7625a We were not properly masking the item that was sent with the message
and also we where not sending the notification at the proper times.
2000-06-11 20:39:14 +00:00