Commit Graph

4476 Commits

Author SHA1 Message Date
Gabriel Ivăncescu 4b85740ebf comctl32/button: Implement NM_CUSTOMDRAW for Push Buttons.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=10531
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-07 17:54:14 +01:00
Michael Stefaniuc e0419391d7 comctl32/tests: Remove redundant not-NULL check (coccinellery).
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 12:26:11 +01:00
Gabriel Ivăncescu 44e6fff010 comctl32/listbox: Implement LBS_NODATA for multi-selection listboxes.
Use a byte array to store selection state of items, since we don't need any
other data for LBS_NODATA multi-selection listboxes. This improves memory
usage dramatically for large lists, and performance boosts are nice too.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:30 +01:00
Gabriel Ivăncescu a853301e7a comctl32/listbox: Use a helper to get the size of an item.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:30 +01:00
Huw Davies b60108e022 comctl32/listbox.c Use helper functions for item initialization.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:30 +01:00
Vijay Kiran Kamuju 7a6b00dc25 user32: Add DlgDirList wildcard checks.
Based on a patch from Christian Lupien.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=8226
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-27 22:21:17 +01:00
Gabriel Ivăncescu 874c5508ee comctl32/listbox: Rewrite FindString to use helpers and avoid the macro.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-27 16:29:37 +01:00
Gabriel Ivăncescu 2fddd6211e comctl32/listbox: Use a helper to set item data by index.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-27 16:29:35 +01:00
Nikolay Sivov 71004a825f comctl32/propsheet: Avoid posting uninitialized data (Valgrind).
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46691
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 12:51:21 +01:00
Gabriel Ivăncescu 170f59e574 comctl32/listbox: Use is_item_selected in GetSelCount and GetSelItems.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 12:51:21 +01:00
Michael Stefaniuc e4f66b0483 comctl32: Avoid using the comma operator.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-22 12:27:20 +01:00
Austin English b4a9f3f3f3 comctl32: Fix a memory leak (valgrind).
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-21 16:07:38 +01:00
Gabriel Ivăncescu 7ec954988c comctl32/tests: Test negative counts in LB_SETCOUNT.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 15:54:07 +01:00
Gabriel Ivăncescu 1b7886edaf comctl32/listbox: Implement LBS_NODATA for single-selection listboxes.
The LBS_NODATA style's purpose is to drastically improve performance and
memory usage on very large lists, since they should function as virtual
lists. Thus, don't store any data for single-selection listboxes (descr->items
always NULL).

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=32374
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 15:54:05 +01:00
Gabriel Ivăncescu e98d4b4502 comctl32/listbox: Move the item data removal into a separate function.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 15:54:03 +01:00
Gabriel Ivăncescu bd2cc1342b comctl32/listbox: Move the item data insertion into a separate function.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 15:54:01 +01:00
Gabriel Ivăncescu e0984d4013 comctl32/listbox: Use a helper to set item height by index.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 15:53:56 +01:00
Gabriel Ivăncescu 249c09f4b1 comctl32/listbox: Use a helper to retrieve item height by index.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 15:53:54 +01:00
Nikolay Sivov cfc323db26 comctl32/updown: Make sure buttons rectangles are consistent with each other.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-18 16:02:54 +01:00
Nikolay Sivov f3775ed2ac comctl32/toolbar: Send BN_CLICKED for button that was pressed, not released.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=35516
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-18 16:02:35 +01:00
Nikolay Sivov f037019e5d comctl32/toolbar: Draw button in idle state when mouse is captured.
When captured moving cursor over other buttons should not produce hot item
feedback, only pressed button appearance changes. Hot item notifications are
still delivered.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-18 16:02:32 +01:00
Gabriel Ivăncescu 7d1350491e comctl32/listbox: Send LB_RESETCONTENT from RemoveItem rather than DeleteItem.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 11:43:30 +01:00
Gabriel Ivăncescu 7834e40989 comctl32/listbox: Use a helper to set the selected item state.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 11:43:27 +01:00
Gabriel Ivăncescu c033748c66 comctl32/listbox: Use is_item_selected in more places.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 11:43:24 +01:00
Gabriel Ivăncescu d1b0626c81 comctl32/listbox: Use a helper to retrieve item string by index.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 11:43:21 +01:00
Gabriel Ivăncescu e16d591dc8 comctl32/listbox: Use a helper to retrieve item data by index.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 11:43:18 +01:00
Gabriel Ivăncescu b00482e2a4 comctl32/tests: Test changing the selection styles after listbox creation.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 11:43:15 +01:00
Gabriel Ivăncescu 1f062e386f comctl32/listbox: Use descr->selected_item for single-selection listboxes when checking selection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 11:43:10 +01:00
Gabriel Ivăncescu 012b7669f7 comctl32/listbox: Repaint the old selected item after setting the item selection.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 11:43:07 +01:00
Gabriel Ivăncescu eed36af54b comctl32/listbox: Resize the entire item array at once in SetCount.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 11:43:04 +01:00
Nikolay Sivov f1f7b7b509 comctl32/listview: Remove duplicated handle check.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Nikolay Sivov 5b397df631 comctl32/listview: Take care of scrolling offset when repositioning header.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Gabriel Ivăncescu f69a1807e8 comctl32/tests: Add tests for LB_INITSTORAGE.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 22:44:15 +01:00
Gabriel Ivăncescu 77cba36331 comctl32/listbox: Return proper value for LB_INITSTORAGE.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 22:44:09 +01:00
Gabriel Ivăncescu ff87384048 comctl32/listbox: Shrink the item array with resize_storage.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 22:44:04 +01:00
Gabriel Ivăncescu 3afbda2ae2 comctl32/listbox: Use a helper to expand the item array.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 22:43:49 +01:00
Gabriel Ivăncescu 98ece04660 comctl32/listbox: Check for out of bounds using the index when painting the item.
Needed for LBS_NODATA.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 22:43:40 +01:00
Nikolay Sivov fc87823654 comctl32/rebar: Do not use global variable for debug buffer (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-28 10:25:54 +01:00
Nikolay Sivov 620a25ef1d comctl32/progress: Handle min == max case in PBM_STEPIT.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46485
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:05:10 +01:00
Andrey Gusev 535ef08b67 comctl32/tests: Remove redundant assignment.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-04 17:03:39 +01:00
Huw Davies 76a9f965fd comctl32/tests: Move the cursor over the treeview to avoid random mouse move messages.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45719
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-03 12:49:49 +01:00
Dmitry Timoshkov 4ee173dfdd comctl32: Don't ignore page creation error for a non-modal propery sheet.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-18 20:49:56 +01:00
Dmitry Timoshkov ca41fd8904 comctl32/tests: Add a test for passing dialog template with bad control class to PropertySheet.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-18 20:49:51 +01:00
Alexandre Julliard 0e166d998d comctl32/tests: Avoid a structure initialization warning.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-14 18:33:34 +01:00
Dmitry Timoshkov bf4304211c comctl32/tests: Add a test to check built-in comctl32 classes.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-14 18:24:46 +01:00
Dmitry Timoshkov 685a4b5062 comctl32/tests: Fix a test failure under Windows 7.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-14 18:24:46 +01:00
Eberhard Beilharz f760079a71 comctl32/imagelist: Fix crash with large number of images.
Fix a crash that occurred when reading a imagelist with a large number
of images. In the particular case we read a cMaxImage value of 1032,
but allocated only 40 or so images. This lead to memory corruption in
ImageList_Read.  This change allows to run TntConnect.

Signed-off-by: Eberhard Beilharz <eb1@sil.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-12 19:43:12 +01:00
Nikolay Sivov cb7a426ceb comctl32/tests: Use actual text width for ideal button size tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-11 14:45:02 +01:00
Waritnan Sookbuntherng 0f12fa1e43 comctl32/status: Checking size grip bounds in x-axis only.
Signed-off-by: Waritnan Sookbuntherng <lion328@hotmail.co.th>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-10 14:59:46 +01:00
Waritnan Sookbuntherng 1bb95af322 comctl32/status: Hide size grip when the parent window is maximized.
Signed-off-by: Waritnan Sookbuntherng <lion328@hotmail.co.th>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-10 14:59:45 +01:00
Waritnan Sookbuntherng d8428406c6 comctl32/tests: Test status bar size grip behavior and bounds.
Signed-off-by: Waritnan Sookbuntherng <lion328@hotmail.co.th>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-10 14:59:42 +01:00
Nikolay Sivov e6a91103a0 comctl32/listview: Fix NM_CLICK notification when clicking on checkboxes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-05 22:33:43 +01:00
Michael Stefaniuc f98f01b368 comctl32/tests: Use SetRect() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-05 09:24:20 +01:00
Alistair Leslie-Hughes 929058a2ef comctl32/edit: Don't set caret position when we don't have focus.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-05 09:23:43 +01:00
Alex Henrie baf6adfef7 comctl32: Make constant 'mdays' static.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 16:13:05 +01:00
Gabriel Ivăncescu ece6dfe52c comctl32/listbox: Store the items array size instead of using HeapSize().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 12:12:57 +01:00
Gabriel Ivăncescu 423ea9790b comctl32/tests: Also include LBS_NODATA cases when testing ownerdraw.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 12:12:29 +01:00
Gabriel Ivăncescu 79bb84d20d comctl32/listbox: Account for NULL item when painting ownerdrawn list.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 12:52:36 +01:00
Nikolay Sivov 656f3f5b29 comctl32/listbox: Remove duplicated condition.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 12:52:34 +01:00
Nikolay Sivov a27db5169c comctl32/listbox: Use helper to test for selected state on painting.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 12:52:32 +01:00
Gabriel Ivăncescu 54ee4db69a comctl32/listbox: Use a helper function to check the selection state of an item.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 12:52:30 +01:00
Gabriel Ivăncescu 084eb528c1 comctl32/tests: Confirm that emptying the listbox sends LB_RESETCONTENT to itself.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 12:52:29 +01:00
Gabriel Ivăncescu 0b7dbc9e19 comctl32/listbox: Make LBS_NODATA listboxes error on any attempt to find a value.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-14 16:55:01 +01:00
Gabriel Ivăncescu 19f26c35d5 comctl32/listbox: Don't set any data for LBS_NODATA listboxes.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-14 16:54:56 +01:00
Gabriel Ivăncescu 1b17d8c09a comctl32/listbox: Return 0 from LB_GETITEMDATA for LBS_NODATA listboxes.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-14 16:54:53 +01:00
Gabriel Ivăncescu ebe99b92d4 comctl32/listbox: Always retrieve zeros in LB_GETTEXT for LBS_NODATA listboxes.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-14 16:54:47 +01:00
Gabriel Ivăncescu ac174f4cf4 comctl32/listbox: Use ULONG_PTR instead of DWORD when retrieving text without HAS_STRINGS.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-14 16:54:38 +01:00
Gabriel Ivăncescu 2aedcf3f8c comctl32/listbox: Make SetCount fail if LBS_NODATA is not set.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-13 20:54:28 +01:00
Gabriel Ivăncescu 8e13120c80 comctl32/listbox: Disable LBS_NODATA if styles are incompatible with it.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-13 20:54:27 +01:00
Gabriel Ivăncescu 2813b43aeb comctl32/listbox: Clear LBS_OWNERDRAWVARIABLE if LBS_OWNERDRAWFIXED is set.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-12 10:21:52 +01:00
Gabriel Ivăncescu 4c5f38493d comctl32/tests: Test incompatible styles for LBS_NODATA.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-12 10:21:52 +01:00
Gabriel Ivăncescu 9324f89f4b comctl32/tests: Add some tests for LBS_NODATA.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-12 10:21:52 +01:00
Gabriel Ivăncescu ed7804e714 comctl32/tests: Add more Listbox tests for ownerdraw styles.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-12 10:21:52 +01:00
Nikolay Sivov 480731aec3 comctl32/tests: Fix Listbox test failures on some configurations.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-07 17:08:57 +01:00
Zhiyi Zhang 0e795d5382 comctl32/pager: Support header notification conversion.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-01 12:04:34 +01:00
Nikolay Sivov 8bd48fd6d9 comctl32/edit: Handle focused cue text.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-31 16:18:24 +01:00
Nikolay Sivov aa601fdf0c comctl32/edit: Add missing message macros.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-31 16:18:17 +01:00
Sergio Gómez Del Real 0d4a1f7bee comctl32: Implement handling of EM_SETCUEBANNER/EM_GETCUEBANNER messages.
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:52:36 +01:00
Zhiyi Zhang 589cbf3bcc comctl32/taskdialog: Handle button clicks better.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:51:49 +01:00
Zhiyi Zhang d61acf7ec0 comctl32/taskdialog: Add support for TDF_ALLOW_DIALOG_CANCELLATION.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:51:49 +01:00
Zhiyi Zhang dcd5a37b1c comctl32/taskdialog: Fix id casting.
This fix tests on 64bit because id is a signed int.

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:51:49 +01:00
Francois Gouget ab9dccda63 comctl32: Avoid an unneeded lstrlenW() call.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-22 11:12:28 +02:00
Nikolay Sivov 7a54ff7711 comctl32/tests: Remove remaining traces in ListView tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 13:58:03 +02:00
Nikolay Sivov 332062963f comctl32/listview: Simplify iterator helpers that can't fail.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 13:58:02 +02:00
Nikolay Sivov fae75d7961 comctl32/listview: Fix crashing in LVM_GETCOUNTPERPAGE for partially initialize lists.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 13:58:00 +02:00
Nikolay Sivov 39c9fe1d37 comctl32/listview: Skip earlier when creating iterator for empty lists.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 13:57:57 +02:00
Zhiyi Zhang daf3e90707 comctl32/pager: Support tree view notification conversion.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 17:27:53 +02:00
Zhiyi Zhang 2536cbaa29 comctl32/pager: Support list view notification conversion.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 17:27:51 +02:00
Zhiyi Zhang d8f3f1b717 comctl32/pager: Support date time picker notification conversion.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 01:12:20 +02:00
Jim Mussared 4a8a8bddda comctl32/listview: Fix subitem invalidation.
It's wrong to offset by item position, columns could be reordered.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-24 22:41:29 +02:00
Zhiyi Zhang eb317039e0 comctl32/pager: Support comboboxex notification conversion.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-22 00:02:14 +02:00
Zhiyi Zhang d7dcfe032f comctl32/pager: Support tooltip notification conversion.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-22 00:02:14 +02:00
Zhiyi Zhang 76f8ea7501 comctl32/pager: Support toolbar notification conversion.
Fix BibleWorks 10 not displaying toolbar.

Pager always wants Unicode notifications from its children.
And the parent of pager may want ANSI notifications. In this
case, pager need to convert Unicode notifications to ANSI ones
before sending them to parent and convert ANSI notifications
from parent to Unicode before returning the result to its children.

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-22 00:02:14 +02:00
Sven Baars 04847e68f8 comctl32: Add NULL checks to SetWindowSubclass (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-20 15:36:21 +02:00
Nikolay Sivov ec09119f2e comctl32/button: Fix text buffer leak (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-17 15:41:54 +02:00
Fabian Maurer 9a94f55958 comctl32/taskdialog: Use parentheses around & operator.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-17 15:38:07 +02:00
Gabriel Ivăncescu bb116577a3 comctl32/listbox: Update the size in SetColumnWidth before calling UpdatePage.
Some applications don't forward WM_SIZE from DefWindowProc to the control,
but instead only send a LB_SETCOLUMNWIDTH message, even when the column
width doesn't change (but the listbox size does).

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=22440
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-07 13:23:48 +02:00
Zhiyi Zhang 81f6437482 comctl32/button: Support BCM_GETIDEALSIZE message.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=24623
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-05 19:05:46 +02:00
Zhiyi Zhang eb79ebe50c comctl32/button: Support text margin rendering.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-05 19:05:39 +02:00
Zhiyi Zhang c9aa8dab8f comctl32/button: Support imagelist rendering.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40445
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40062
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45246
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-05 19:05:33 +02:00