Print Page | Close Window

ComCtl32 broken in v12!

Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Toolkit Pro
Forum Description: Topics Related to Codejock Toolkit Pro
URL: http://forum.codejock.com/forum_posts.asp?TID=10462
Printed Date: 15 November 2025 at 12:29am
Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com


Topic: ComCtl32 broken in v12!
Posted By: znakeeye
Subject: ComCtl32 broken in v12!
Date Posted: 02 May 2008 at 5:45pm
Ok, I just confirmed this bug! The icons look ok in XTP 11.2.2, but jagged in XTP 12.0.0.
 
Please fix this as soon as possible!
 
*********
Since I upgraded to v12 my alpha-blended icons (imported and added into a CImageList with ILC_COLOR32|ILC_MASK style) are jagged with that classical black border (no alpha blending). I did not change my source code, except XTP (running XP SP3 + VS 2008). Could this be a ComCtl32-bug in XTP 12? I know this is a issue with ComCtl32 5.x...
 
The manifest is correctly defined, and in the debug window I can see that the DLL is indeed loaded. What could be wrong?



Replies:
Posted By: Oleg
Date Posted: 05 May 2008 at 1:17am
Hello,
 
Need to test what you do to answer. But I very not recommend use CImageList+ILC_COLOR32 to import to ImageManager. ILC_COLOR32 only supported in WindowsXP, but ImageMaanger support Alpha icons for all OS. better add icons directly
 
XTPImageManager()->SetIcons(...);


-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: znakeeye
Date Posted: 05 May 2008 at 4:42am
Can you do that with the report control? In any way, XTP 12 has broken some kind of alpha-support (perhaps you removed/changed the manifest?).
 


Posted By: Oleg
Date Posted: 05 May 2008 at 4:55am

Hello,

Give me bitmap you use, code  you have to set it. etc. we need to test it.
 
 
p.s. Add in your app
 
BOOL bSupported = XTPImageManager()->IsAlphaIconsImageListSupported();
bSupported  is TRUE ?


-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: znakeeye
Date Posted: 05 May 2008 at 6:19am
Will test it later. However, I just recalled this:
 
I have a ribbon application where I set the icon of an item using SetCustomIcon. The icon is a general 32bit-icon loaded via the ExtractIcons-API found here:
http://www.codeproject.com/KB/cpp/GetIconsfromExeorDLLs.aspx - http://www.codeproject.com/KB/cpp/GetIconsfromExeorDLLs.aspx
 
Great function by the way. Download it and apply this patch:
Line 479 in ExtractIcon.cpp:
if( (magic[1] == MAGIC_ICON || magic[1] == MAGIC_CUR ) &&
should be:
if( (magic[1] == MAGIC_ICO1 || magic[1] == MAGIC_CUR ) &&
I can make a sample later, but this should not be too hard to test.


Posted By: Oleg
Date Posted: 06 May 2008 at 1:55am
Hi,
 
We have own LoadAlphaIcon code in our ImageManager....
 
also try set breakpoint after line
if (CXTPImageManager::IsAlphaIconsImageListSupported() && GetIconInfo(hHandle.m_hIcon, &iconInfo))
if it was not executed - you don't have manifest.


-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS



Print Page | Close Window

Forum Software by Web Wiz Forums® version 12.04 - http://www.webwizforums.com
Copyright ©2001-2021 Web Wiz Ltd. - https://www.webwiz.net