Commit Graph

225 Commits

Author SHA1 Message Date
Alexandre Julliard 8f1853a309 comctl32/imagelist: Clear pixels that fall outside the mask when generating an alpha channel. 2010-05-19 20:11:48 +02:00
Alexandre Julliard 15efbc892b comctl32/imagelist: Don't pre-multiply the stored image, do it only at blending time. 2010-05-18 18:42:06 +02:00
Alexandre Julliard 3915cfbd02 comctl32/imagelist: Fix the allocated size of the has_alpha array. 2010-05-17 12:42:25 +02:00
Alexandre Julliard 45fd49bab6 comctl32/imagelist: Generate the mask from the alpha channel if present. 2010-05-16 18:23:04 +02:00
Alexandre Julliard f2b993d414 comctl32/imagelist: Pre-multiply the colors by the alpha channel when storing an image with alpha. 2010-05-16 18:22:53 +02:00
Alexandre Julliard 91948f9ce8 comctl32: Always alpha blend images for 32-bpp imagelists. 2010-05-14 16:17:56 +02:00
Alexandre Julliard 33e7d0282b comctl32: Store an alpha channel present flag for each image in an imagelist. 2010-05-14 16:17:56 +02:00
Alexandre Julliard 528722e4e1 comctl32: Also generate an alpha channel when replacing an image or icon in an imagelist. 2010-05-14 16:17:56 +02:00
Alexandre Julliard f02adf3e2b comctl32: Generate an alpha channel if necessary when adding images to a 32-bit imagelist. 2010-05-14 16:17:36 +02:00
Alexandre Julliard f75c7b5f71 comctl32: Make ImageList_AddMasked call ImageList_Add instead of duplicating the functionality. 2010-05-14 13:37:04 +02:00
Michael Stefaniuc a712a29201 comctl32: Update some ImageList comments. 2010-05-11 11:06:16 +02:00
Alexandre Julliard 8ea1f3385a comctl32: Apply the imagelist mask when alpha blending. 2010-05-10 18:20:20 +02:00
Alexandre Julliard 599531b7d9 comctl32: Add support for alpha blending in ImageList_DrawIndirect. 2010-05-05 12:47:24 +02:00
Dmitry Timoshkov 93437fc963 comctl32: Do not use width of the passed to ImageList_Add bitmap as an icon width. 2010-04-07 13:51:45 +02:00
Michael Stefaniuc 223603cc1c comctl32: Use IS_INTRESOURCE instead of HIWORD to check a resource. 2010-01-26 12:13:51 +01:00
Michael Stefaniuc 4376ccf3fc comctl32: Use FAILED instead of !SUCCEEDED. 2009-12-01 13:04:36 +01:00
Owen Rudge 341e6ed533 comctl32: Implement imagelist drag functions, GetOverlayImage. 2009-11-17 15:14:53 +01:00
Owen Rudge 2e9a6e96e3 comctl32: Implement GetImageRect, Get/SetIconSize, Get/SetBkColor. 2009-11-17 15:14:53 +01:00
Nikolay Sivov 7caa61fde6 comctl32/imagelist: Make ImageList_Destroy just decrease refcount. Move actual destruction to ::Release. 2009-11-16 15:02:02 +01:00
Nikolay Sivov 3e20458aca comctl32/imagelist: Get rid of magic field, use vtable pointer instead. Keep original layout. 2009-11-16 15:01:27 +01:00
Owen Rudge 76c7f28050 comctl32: Implement Copy, Merge and Clone methods in IImageList. 2009-11-16 13:30:01 +01:00
Owen Rudge 8a4a761683 comctl32: Implement SetOverlayImage, Replace, AddMasked, Draw, Remove, GetImageInfo. 2009-11-16 13:29:01 +01:00
Owen Rudge dff6be098e comctl32: Implement Add, ReplaceIcon, GetImageCount, SetImageCount in IImageList. 2009-11-16 13:27:37 +01:00
Marcus Meissner c2e0226d2f comctl32: Removed useless NULL check (Coverity). 2009-11-16 12:43:07 +01:00
Owen Rudge a4f2ab9d14 comctl32: Add basic structure for IImageList interface. 2009-11-13 12:14:40 +01:00
Owen Rudge 956a52bd7f comctl32: Add stubs for image list functions introduced in Vista. 2009-08-13 15:51:16 +02:00
Michael Stefaniuc da6d7920de comctl32: Remove superfluous pointer casts. 2009-02-13 13:00:25 +01:00
Michael Stefaniuc 092b892f54 comctl32: HGDIOBJ is interchangeable with other handle types so don't cast. 2008-10-27 11:29:46 +01:00
Michael Stefaniuc b723e6f6b6 comctl32: Remove the superfluous casting of the LPVOID returned by Alloc(). 2008-10-24 14:24:59 +02:00
Michael Stefaniuc 15e5f6844a comctl32: Use FAILED instead of !SUCCEEDED. 2008-10-08 13:42:47 +02:00
Gerald Pfeifer 1cdb06c69c comctl32: Remove unused parameter from _read_bitmap(). 2008-07-29 13:53:42 +02:00
Andrew Talbot b7cc9c66b3 comctl32: Remove unneeded address-of operators from array names. 2008-07-08 10:47:43 +02:00
Gerald Pfeifer 7b306c57bd comctl32: Remove check which never triggers. 2007-11-15 12:49:23 +01:00
Alexandre Julliard a4c9d96aca comctl32: Fixed handling of monochrome icons in image lists. 2007-11-14 12:38:35 +01:00
Misha Koshelev fc5a746104 comctl32: imagelist: Fix simultaneous selection of one bitmap into two device contexts. 2007-06-01 12:43:40 +02:00
Aric Stewart df0d77b007 comctl32: Trying to blend an image without a mask causes problem, especially if the background is white. 2007-05-18 14:42:30 +02:00
Dmitry Timoshkov 83f51d08df comctl32: Add more image list tests, fix one problem found. 2007-04-24 11:53:59 +02:00
Dmitry Timoshkov 8c5cf0cbae comctl32: Add an image list storage test, make it pass under Wine. 2007-04-23 13:58:15 +02:00
Dmitry Timoshkov e0195ca4ef comctl32: Fix an off by one error in ImageList_Remove. 2007-04-23 13:57:02 +02:00
Dmitry Timoshkov 79909e7e5a comctl32: Change internal imagelist bitmap storage in the way applications with pre-compiled imagelists expect it. 2007-02-15 14:19:32 +01:00
Dmitry Timoshkov 74950a9e1f comctl32: Implement ImageList_GetFlags. 2007-02-13 12:08:41 +01:00
Dmitry Timoshkov 369749dcb2 comctl32: Make ImageList_Read and ImageList_Write compatible with each other, simplify the code. 2007-02-12 14:12:48 +01:00
Felix Nawothnig 306718152c comctl32: Degrade ERR to WARN. 2007-01-25 11:05:56 +01:00
Peter Oberndorfer d119fd44fe comctl32: Fix imagelist regression from "comctl32: Remove Nx1 assumptions in ImageList_Read". 2006-12-11 12:18:39 +01:00
Alexandre Julliard 1e6786699d Revert "comctl32: Fix a potential regression in ImageList_ReplaceIcon()."
This reverts commit 9e772d1369.
2006-11-15 11:33:35 +01:00
Mike McCormack f3c6114d75 comctl32: Remove a redundant variable. 2006-11-14 11:35:31 +01:00
Mike McCormack 9e772d1369 comctl32: Fix a potential regression in ImageList_ReplaceIcon(). 2006-11-14 11:35:24 +01:00
Mike McCormack 2614e0ee91 comctl32: When removing an image, move the remaining images one forward, not one backwards. 2006-11-14 11:35:18 +01:00
Paul Vriens d4796304ad comctl32: Remove deadcode (Coverity). 2006-11-13 14:51:20 +01:00
Mike McCormack 7486f47b19 comctl32: Fix a regression in ImageList_AddMasked(). 2006-11-08 15:51:35 +01:00
Mike McCormack e74b0ee910 comctl32: Remove Nx1 assumptions in ImageList_Read. 2006-11-08 11:26:12 +01:00
Mike McCormack dfb41b35c4 comctl32: Switch to a Nx4 tiling. 2006-11-06 12:23:10 +01:00
Mike McCormack 6772873396 comctl32: Remove a Nx1 assuption in ImageList_AddMasked(). 2006-11-06 12:21:24 +01:00
Mike McCormack 49df0467b1 comctl32: Check if GetObject fails on bitmaps passed to us. 2006-11-06 12:21:14 +01:00
Mike McCormack 6a9209da8f comctl32: Fix Nx1 assumptions when adding multiple bitmaps with ImageList_Add. 2006-11-06 12:20:52 +01:00
Mike McCormack ba73cac961 comctl32: Fix an Nx1 in ImageList_DrawIndirect(). 2006-11-06 12:20:43 +01:00
Mike McCormack 4e5f56a8e0 comctl32: Remove another Nx1 assumption from ImageList_Remove(). 2006-11-06 12:20:32 +01:00
Mike McCormack ca6be70819 comctl32: Remove Nx1 assumptions in ImageList_Merge. 2006-11-06 12:20:22 +01:00
Mike McCormack 9cd86dddf1 comctl32: Remove Nx1 assumptions in ImageList_GetIcon(). 2006-11-06 12:20:13 +01:00
Mike McCormack 1328ca572b comctl32: Use imagelist_copy_images() in ImageList_SetImageCount(). 2006-11-06 12:19:59 +01:00
Mike McCormack 7370fc0e70 comctl32: Create a helper function to copy a block of images. 2006-11-06 12:19:26 +01:00
Mike McCormack 83149b1d2c comctl32: Fix a regression. 2006-11-06 12:13:19 +01:00
Mike McCormack f97bf3e6e0 comctl32: imagelist: Remove more 1xN assumptions. 2006-11-02 12:24:08 +01:00
Mike McCormack 5f89960a56 comctl32: Remove a redundant variable. 2006-11-02 12:24:01 +01:00
Mike McCormack 83a66a981f imagelist: Move Nx1 assumptions about bitmaps dimensions into a single function. 2006-11-01 13:38:25 +01:00
Mike McCormack d9598c383c comctl32: Remove some more Nx1 assumptions. 2006-10-31 11:46:54 +01:00
Mike McCormack b0499bf71b comctl32: Move code assuming Nx1 into ImageList_CreateImage. 2006-10-27 12:01:13 +02:00
Mike McCormack 11f4fb2dd5 comctl32: Create a point from index function and use it. 2006-10-25 12:14:36 +02:00
Michael Ploujnikov 1c16d83379 comctl32: Win64 printf format warning fixes. 2006-10-14 20:17:06 +02:00
Mikołaj Zalewski 89f537dd57 comctl32: imagelist: SetImageCount can be used to decrease image count (with testcase). 2006-09-21 17:41:05 +02:00
Oleg Krylov 496d634735 comctl32: Fix ImageList_Replace function to correctly apply image mask. 2006-08-18 11:34:21 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Mike Hearn 1740fe0fe6 comctl32: Add OOM codepath in imagelist control. 2006-04-07 20:04:19 +02:00
Markus Amsler 996e594240 Reformat "see" section, to match c2man requirements. 2005-11-14 11:20:10 +00:00
Frank Richter 9e57091ffa Fix warnings in 64bit. 2005-08-30 10:07:17 +00:00
Robert Shearman ec167634f9 Handle CopyImage and other functions failing by not adding the icon
and notifying the caller.
2005-07-14 10:15:59 +00:00
Francois Gouget f5c9da6860 Assorted spelling fixes. 2005-05-06 15:44:31 +00:00
Dimitrie O. Paun 8df71a6cfa Use {Alloc,ReAlloc,Free}() instead of Heap{Alloc,ReAlloc,Free}(). 2005-03-25 20:49:00 +00:00
Huw Davies b675c1a92e The depth of the colour bitmap needs to match that of the screen. 2005-03-24 15:07:40 +00:00
Michael Stefaniuc 443f9273b1 - ImageList_LoadImage{A,W} were basicaly a cut'n'paste of each
other. Removed the A variant and did a A->W translation.
- ImageList_LoadImageW: get the bitmap size from the image itself and
  not from the mask (ImageList_LoadImageA did that).
2005-02-24 12:46:57 +00:00
Mike McCormack 07aa50bc48 Fix image list mask and blending. 2005-01-10 14:29:20 +00:00
James Hawkins 88aeb475c0 Fixed a few memory leaks. 2004-11-30 17:33:27 +00:00
Robert Shearman 684197178a Implement ImageList_SetColorTable. 2004-10-18 19:36:13 +00:00
Jon Griffiths ce0fbb5b28 ImageList_Merge should not fail if indices are bad.
Add tests for this case, a visible test mode and fix DrawIndirect test
under some native comctl32.dll's.
2004-10-07 17:34:56 +00:00
Francois Gouget 486d020c1b Don't define COBJMACROS in objbase.h.
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Michael Stefaniuc fd306fb5d1 - native ImageList_Remove dosn't spit out an error message when
deleting an index out of range so don't do that either
- add 2 ImageList_Remove tests
2004-09-28 19:17:43 +00:00
Michael Stefaniuc 4cfe5286f9 - Fix hotspot handling
- Remove unused flag from the InternalDrag struct.
2004-08-22 01:59:29 +00:00
Jon Griffiths fb50426533 Make pattern brush data const. 2004-08-13 19:44:49 +00:00
Filip Navara 2d63dae1d9 Set the palette for image list DIBs that has 8 or less bits per
pixel.
2004-06-28 23:52:51 +00:00
Robert Shearman 57cc6f58ba Update common control function documentation. 2004-02-27 04:40:08 +00:00
Maxime Bellengé 820aa3762f Fix a regression in ImageList_Create when creating a dibsection. 2004-02-24 00:58:59 +00:00
Ulrich Czekalla 5a864b2f70 Use dibsections for the images. 2004-02-20 19:57:09 +00:00
Vincent Béron 7b11e537b0 Get rid of a W->A cross call in ImageList_LoadImageW. 2004-01-16 02:01:46 +00:00
Huw Davies 50c9ff030f Fix some weird logic in ImageList_Write. 2003-11-12 22:41:44 +00:00
Huw Davies 3ce815e7f3 Fix a fixme. 2003-11-04 04:22:07 +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
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
Mike Hearn b79fc16577 Avoid division by zero when the imagelist is created with a width of
zero (ie no images).
2003-08-29 22:10:25 +00:00
Filip Navara 1ccaaa1a82 Fixed prototypes of CreateStatusWindowA/W, ImageList_Copy,
ImageList_EndDrag, ImageList_SetImageCount.
2003-08-22 23:51:15 +00:00