wxWidgets removed some UXtheme functions in version 3.1.1. OllyDbg proposed a patch in the forum
http://forums.codeblocks.org/index.php/topic,22421.msg152637.html#msg152637
but this patch only removes the call to the function. For proper theming support I propose this patch.
Removed spurious "defined" from the patch
Do you mean that the uxtheme library always exist in the windows gcc compiler?
Last edit: ollydbg 2018-02-22
wxWidgets was linking with it until V3.1.1, so it should exist in all Windows GCC who were able to compile wxWidgets.
This library didn't exist before XP, but those OSes are not supported anyway.
Can someone show what is the visual difference with and without using the patch?
The first part of the code (SetSelection...) changes three protected variables that are not used anywhere (except for comparison purposes in operator ==), so I think it's safe to remove it.
The second part changes m_borderColour to dark violet opposed to black. Not a big difference.
This last patch removes uxtheme completely.
Remove also all unused vars/methods.
Hi, Miguel Gimenez, thanks for the patch. I see in your latest patch (remove_all_uxtheme.patch), the uxtheme related code is totally removed from C::B. Which is expected from my point of view, since wx3.1.1 has remove the uxtheme too.
But my question is similar like Teodor Petrov said, I'm not sure there are some visual difference changes, since I'm not familar with the uxtheme related thing. I just read a webpage here: [url=https://msdn.microsoft.com/en-us/library/windows/desktop/hh270423(v=vs.85).aspx]Visual Styles Overview (Windows)[/url], but still don't know why we already have such uxtheme related code in C::B.
In the patch, I see:
You see, the original commiter has already have the comments that why we need those code here.
Thanks.
Probably the original commiter wanted to force selection-related colours so changing visual styles didn't mess them, due to ugly or unreadable combinations . I think Alatar is not the original commiter and he was wondering about this as we are doing now.
@ollydbg: Are you going to commit this?
I can't test this patch to see what is the visual difference with or without the patch for wx2.8.12 based C::B. For wx 3.x based C::B, I think this patch certainly fix the build error, and should be put in the trunk.
What's your idea? We just commit it?
BTW: Do we still need to maintain the wx2.8 related code for C::B, I think we should go directly to wx3.
Yes, we still maintain wx2.8.
What I think is the correct patch. Tim S.
http://forums.codeblocks.org/index.php/topic,22421.msg152637.html#msg152637
Last edit: Tim Stahlhut 2018-05-01
killerbot fixed this issue in r11396, so this ticket can be closed.
Hi, Miguel Gimenez, killerbot just fix the build error when he built against wx 3.1.1, maybe, we still need your patch if we need to totally remove the uxtheme support.
Do we still need this patch/changes?
Last edit: Teodor Petrov 2018-09-10
Do we still need this patch?
No