[64] White back of read-only edits in packed files props

Bug reports will be moved here when the described bug has been fixed

Moderators: Hacker, petermad, Stefan2, white

User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Great thanks, it works perfect!
Looks right in both classic and Aero themes.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50475
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Thanks! Unfortunately there is a problem with XP themes (e.g. from deviantart) used on Vista/7. The problem is the following:

I use this code to get the right color with themes:

Code: Select all

    xptheme:=OpenThemeData(handle,'Tab');
    if is_vista then
      err:=GetThemeColor(xptheme,TABP_AEROWIZARDBODY, TIS_NORMAL, TMT_FILLCOLORHINT,themecolor)
    else
      err:=GetThemeColor(xptheme,TABP_BODY, TIS_NORMAL, TMT_FILLCOLORHINT,themecolor);
    CloseThemeData(xptheme);
The problem is that TABP_AEROWIZARDBODY only exists in themes created for Vista/7, not for XP. The function returns WHITE in this case, and err is 0. Therefore I have no idea that the color is wrong. Asking the theme for the TABP_BODY color does return the right color!

So does anyone know how to find out programmatically whether a theme supports a certain feature or not?
Author of Total Commander
https://www.ghisler.com
Sob
Power Member
Power Member
Posts: 945
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

It's definitely fixed for Classic theme. Aero also has correct white.

But with other themes I didn't have much success. E.g. with "dEEP 7 3.0" theme (you have it from testing cut off captions in menubar) the tab body background is light gray, but edits are white. But it may be the XP themes problem you describe.
ghisler(Author) wrote:So does anyone know how to find out programmatically whether a theme supports a certain feature or not?
Not tested, but IsThemePartDefined() sounds promising.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50475
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Thanks, I will try that!
Author of Total Commander
https://www.ghisler.com
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50475
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

This should be fixed in beta 4, please test! In the end I had to use GetPixel, because IsThemePartDefined() always returned true on Windows 7, also for these old XP themes.
Author of Total Commander
https://www.ghisler.com
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

ghisler(Author) wrote:In the end I had to use GetPixel, because IsThemePartDefined() always returned true on Windows 7, also for these old XP themes.
Nice idea. :D

It works fine in both Aero and classic themes under W7, I have no other themes (I don't use themes at all) to test.
Sob
Power Member
Power Member
Posts: 945
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

I do have few other themes for testing and I can confirm the fix for all of them.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50475
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Great, thanks for your tests!
Author of Total Commander
https://www.ghisler.com
Post Reply