|
|
Home » U++ Library support » Look and Chameleon Technology » Very strange issue with WindowBlinds
Very strange issue with WindowBlinds [message #13641] |
Fri, 18 January 2008 16:33  |
cbpporter
Messages: 1427 Registered: September 2007
|
Ultimate Contributor |
|
|
Hi!
I was trying to determine how to obtain the skin from the OS (under Windows), so I though that I'd install WindowBlinds, try out some skins and determine the limits of U++'s Chameleon.
Everything went pretty good and most stuff got skined somewhere between good and great (except for menus, which where universally very bad), but I have run into serious issues with the skin Classic, from Stardock Design (included in the evaluation package of WindowBlinds).
Using this skin, all U++ applications lock up after a time, except the IDE. You can load up any app, and after playing a lot with the interface and especially dragging other windows on top of the U++ application freezes it. I noticed that if you put your cursor over the window border buttons, the are not animated, like in other apps, and almost inevitably freeze the application again. Also, windows have text which is not visible when window is focused. And the strangest part is, TheIDE is immune to these issues. Window caption is present and buttons are animated. Does U++ touch window drawing. Does TheIDE have some extra code for it's windows?
The Classic skin was the only one I found that triggered this bugs. It could be that there is something wrong with it. Still, other applications have no problems with it, and it would be great if U++ apps would not lock up if there is something wrong with the theme (considering the myriad of user themes on the Internet). I was using Windows Vista.
PS: I'm trying to find out how U++ obtains the skining information. Could you direct me in the right direction? I'm trying to get the look of some controls which U++ does not cover.
|
|
|
Re: Very strange issue with WindowBlinds [message #13654 is a reply to message #13641] |
Sat, 19 January 2008 11:45   |
 |
mirek
Messages: 14255 Registered: November 2005
|
Ultimate Member |
|
|
cbpporter wrote on Fri, 18 January 2008 10:33 | Hi!
I was trying to determine how to obtain the skin from the OS (under Windows), so I though that I'd install WindowBlinds, try out some skins and determine the limits of U++'s Chameleon.
Everything went pretty good and most stuff got skined somewhere between good and great (except for menus, which where universally very bad)
|
Screenshot? Have you tried latest sources? A lot of effort went into this over recent weeks.
Quote: |
, but I have run into serious issues with the skin Classic, from Stardock Design (included in the evaluation package of WindowBlinds).
|
Any way how to try this?
Quote: |
Using this skin, all U++ applications lock up after a time, except the IDE. You can load up any app, and after playing a lot with the interface and especially dragging other windows on top of the U++ application freezes it. I noticed that if you put your cursor over the window border buttons, the are not animated, like in other apps, and almost inevitably freeze the application again. Also, windows have text which is not visible when window is focused. And the strangest part is, TheIDE is immune to these issues. Window caption is present and buttons are animated. Does U++ touch window drawing. Does TheIDE have some extra code for it's windows?
|
No.
Maybe it is debug vs release or compiler dependent? ("retail" IDE is build with MSC).
Quote: |
The Classic skin was the only one I found that triggered this bugs. It could be that there is something wrong with it. Still, other applications have no problems with it, and it would be great if U++ apps would not lock up if there is something wrong with the theme (considering the myriad of user themes on the Internet). I was using Windows Vista.
|
Definitely.
Quote: |
PS: I'm trying to find out how U++ obtains the skining information. Could you direct me in the right direction? I'm trying to get the look of some controls which U++ does not cover.
|
For Win32, it is concentrated in CtrlLib/ChWin32.cpp.
Mirek
|
|
|
Re: Very strange issue with WindowBlinds [message #13657 is a reply to message #13654] |
Sat, 19 January 2008 14:53   |
cbpporter
Messages: 1427 Registered: September 2007
|
Ultimate Contributor |
|
|
Quote: | Screenshot? Have you tried latest sources? A lot of effort went into this over recent weeks.
|
I can post a screenshot, but it seems there are huge differences between Vista and XP. I have only XP home, so you'll have to wait till Monday for Vista screenshot. Under Vista, the cursor of menus is drawn correctly, but the rest of the menu looks strange. Under XP the menu looks normal, only the cursor is not skined, but changes color.
This is in 712-dev1:
Quote: | Any way how to try this?
|
Sure! Google WindowBlinds, download evaluation version.
Quote: | Using this skin, all U++ applications lock up after a time, except the IDE. You can load up any app, and after playing a lot with the interface and especially dragging other windows on top of the U++ application freezes it. I noticed that if you put your cursor over the window border buttons, the are not animated, like in other apps, and almost inevitably freeze the application again. Also, windows have text which is not visible when window is focused. And the strangest part is, TheIDE is immune to these issues. Window caption is present and buttons are animated. Does U++ touch window drawing. Does TheIDE have some extra code for it's windows?
|
Again, on my home XP, this issue does not appear.
In the end, you must decide how far do you go with skining. A lot of cross platform or not win32 native apps have poor support in this area.
I'll post some other screenshots, but I can only put one per post (could you increase this to 3 or something?)
-
Attachment: untitled.PNG
(Size: 22.91KB, Downloaded 1236 times)
|
|
|
|
Re: Very strange issue with WindowBlinds [message #13659 is a reply to message #13641] |
Sat, 19 January 2008 15:04   |
cbpporter
Messages: 1427 Registered: September 2007
|
Ultimate Contributor |
|
|
Quote: | Another thing related to bar is that after the new Chameleon style that was introduced lately, if you use ToolButton outside of a ToolBar, it has a different look. It border is a lot thicker. A little diversity doesn't hurt, but during my summer hollyday, I installed U++ on a computer, where these borders where extremely thick. No other application had such thick buttons, so I don't think it was related directly to some custom windows skin. I'm sorry, but I forgot about the issue back then, and I didn't take a screenshot.
|
I said this in another post. Since then I was able to reproduce it, with the exact same bad look. It seems that ToolButtons outside of a toolbar are almost completely immune to system skin changes, the only thing that changes visually is the presence or absence of the ugly look. Here's a screenshot:
|
|
|
Re: Very strange issue with WindowBlinds [message #13678 is a reply to message #13659] |
Mon, 21 January 2008 16:43   |
cbpporter
Messages: 1427 Registered: September 2007
|
Ultimate Contributor |
|
|
Quote: | Using this skin, all U++ applications lock up after a time, except the IDE. You can load up any app, and after playing a lot with the interface and especially dragging other windows on top of the U++ application freezes it. I noticed that if you put your cursor over the window border buttons, the are not animated, like in other apps, and almost inevitably freeze the application again. Also, windows have text which is not visible when window is focused. And the strangest part is, TheIDE is immune to these issues. Window caption is present and buttons are animated. Does U++ touch window drawing. Does TheIDE have some extra code for it's windows?
|
Quote: | Again, on my home XP, this issue does not appear.
|
Good news (can be bad news actually, depending on how you see it). I managed to reproduce in a non-reliable way the issue under XP too. Same skin, same problem, TheIDE still not affected.
But I did manage to lock up TheIDE just once, when it was running and I changed the system skin while TheIDE was running an application.
|
|
|
|
Re: Very strange issue with WindowBlinds [message #13715 is a reply to message #13709] |
Thu, 24 January 2008 08:58   |
cbpporter
Messages: 1427 Registered: September 2007
|
Ultimate Contributor |
|
|
luzr wrote on Wed, 23 January 2008 21:40 | Well, I have tested WindowBlinds classic in Win Vista 64 and have not encountered U++ crash, only Windows explorer crashed... (which is not very encouraging w.r.t. finding a bug in U++ 
Have you tried to debug to catch the bug? If U++ app crashes in debug mode, should be easy to identify...
Mirek
|
Explorer pretty much crashes quite often for me too.
U++ apps don't crash, they just most often but not always have no title text, and in 99% of cases lock up, as in they don't react to any events only after my mouse has entered the non-client area. I suppose I could try to debug it, and I had to go pretty low level, to see if there is not something preventing WM_NCXXXX events from being processed correctly.
And it happens both in DEBUG and Optimal mode, with MSC7 (or 7.1) and MINGW.
PS: How about the chameleon bugs? Could you reproduce those?
|
|
|
|
Re: Very strange issue with WindowBlinds [message #13894 is a reply to message #13726] |
Thu, 31 January 2008 15:51   |
cbpporter
Messages: 1427 Registered: September 2007
|
Ultimate Contributor |
|
|
I must say that poking into Chameleon code is one of my least pleasant activities in U++. But it seems that slowly I'm getting the hang of it.
Quote: | It seems that ToolButtons outside of a toolbar are almost completely immune to system skin changes, the only thing that changes visually is the presence or absence of the ugly look.
|
I use a lot of ToolButtons because U++ lacks a good flat button. It seems that somehow the button does not manage to access the correct style, probably because setting up the styles is left to ToolBar. This fixes the issue:
ToolButton::ToolButton()
{
Reset();
checked = false;
paint_checked = false;
SetStyle(ToolBar::StyleDefault().buttonstyle);
Transparent();
}
[Updated on: Thu, 31 January 2008 15:52] Report message to a moderator
|
|
|
|
|
|
|
Goto Forum:
Current Time: Fri Apr 25 11:57:27 CEST 2025
Total time taken to generate the page: 0.01075 seconds
|
|
|