Adam Strzelecki wrote:
> Hi Stefan,
>
> As I'm feeling bit responsible for missing icons on Windows 2000 I've
> make another but this time complete patch that renders icons on Vista
> natively too without disrupting the visual style and fixes W2K problems.
>
> If it using hints from:
> http://shellrevealed.com/blogs/shellblog/archive/2007/02/06/Vista-Style-Menus_2C00_-Part-1-_2D00_-Adding-icons-to-standard-menus.aspx
>
> However instead WIC it is using GdiPlus (faster) as a PARGB32 conversion
> library.
>
> Please add "gdiplus.lib" to link libraries and "gdiplus.dll" to delayed
> DLLs so it is only loaded on Vista (when needed).
>
> Note that the issue on Windows 2000 with missing icons only exists when
> uFlags of QueryContextMenu is 0 (this is bug in Windows 2000). So I
> tricked the function and I use hbmp(Un)checked only in this case, in
> other cases we may use HBMMENU_CALLBACK as it works okay (i.e. you
> right-click on the folder), and you got full sized icons.
>
> Also note that this method should allow you to use 32bit icons on XP and
> Vista for context menus.
>
> So the most important changes are GdiPlus initialization on Vista and
> IconToBitmapPARGB32 function that creates PARGB32 bitmap from any icon
> for Vista, so it can be used as a handle on popup menu in hbmpItem directly.
>
> I removed also IconToBitmap transparentColor parameter, because actually
> all Windows are treating RGB(255, 255, 255) as transparent color anyway
> for hbmp(Un)checked, so specifing anything other makes no sense.
Thanks a lot for the patch!
Committed in revision 9720.
Stefan
--
___
oo // \\ "De Chelonian Mobile"
(_,\/ \_/ \ TortoiseSVN
\ \_/_\_/> The coolest Interface to (Sub)Version Control
/_/ \_\ http://tortoisesvn.net
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Mon Jun 11 19:53:48 2007