I've come to a point in the development of uxtheme where configuration options will be needed, and am looking for feedback on how this should be done. I currently forsee the following options needed:
EnableTheme ="Y|N" ThemeMethod = "XP|GTK|KDE|..." GTK, KDE, etc are conceivable, but wont be in initial implementation, will default to XP ThemeName="name of theme" for example "Luna" if ThemeMethod=="XP" and the default XP theme is installed
These should probably go into the [Tweak.Layout] section (possibly only enabled with a "WineLook"="WinXP") and of course needs the ability for application specific settings
The theme API also has a function EnableTheming(BOOL) which under XP turns theming on/off for all applications immediately (all applications are redrawn), and it is persistant across reboots. I havent checked up on if I can update the EnableTheme config option from code, or if I would need to possibly store this value elsewhere in the registry
Another possible option would simply be to only apply that call to the current running app, and not make it persistant..but that would deviate from how windows handles it
Thanks Kevin
On October 6, 2003 08:45 pm, Kevin Koltzau wrote:
EnableTheme ="Y|N" ThemeMethod = "XP|GTK|KDE|..." GTK, KDE, etc are conceivable, but wont be in initial implementation, will default to XP
So let's not add it until we actually need it.
ThemeName="name of theme" for example "Luna" if ThemeMethod=="XP" and the default XP theme is installed
Should we take no theme name as meaning theming disabled?
--- "Dimitrie O. Paun" dpaun@rogers.com wrote:
Should we take no theme name as meaning theming disabled?
Is there a way we can merge the winelook option in to the themeing support? The work I have been doing to port comdlg32 is kind of stalled because of tweak_winelook being incompleate in this dll. It would be nice if we could plan on moving all of this stuff together post 1.0
Thanks Steven
__________________________________ Do you Yahoo!? The New Yahoo! Shopping - with improved product search http://shopping.yahoo.com
On Tue, 7 Oct 2003, Steven Edwards wrote:
Is there a way we can merge the winelook option in to the themeing support? The work I have been doing to port comdlg32 is kind of stalled because of tweak_winelook being incompleate in this dll. It would be nice if we could plan on moving all of this stuff together post 1.0
Yes, I'd hope we can move the different tweaks to a theme. The tweaking should just just go away: we should have one look, and where people don't like that, they can run whatever theme they want instead.
I'm not very familiar with how the winelook is handled in code, what does it do exactly? if it simply affects system metrics & colors that would be easily merged with themes, if its more then that (like for example different common dialogs) it may be more difficult
Full blown theming in windows uses a combination of .theme files and .msstyles files.
.theme files I believe existed before XP and do not use uxtheme.dll. They primarilly just define system metrics and colors (along with icons for things like My Computer, etc and mouse cursors).
.msstyles files are the basis of uxtheme.dll, and allow much broader theming support as seen in WinXP, as well as defining system metrics & colors (but do not define icons & cursors).
The two theme formats are coupled very loosely, they can be used together (primarily to enable defining icons & cursors with a graphical theme) or seperate. When used together, any metrics & colors defined in the msstyles override those defined in the .theme
Alexandre has requested I use the registry keys that windows uses to define theme configuration, in which case under XP those keys are located in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes and HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ThemeManager
The configuration seems to be split between those two locations, with a couple options in both. HKCU primarily contains configuration related to XP's msstyles method of theming, HKLM looks to primarilly define theming with .theme files (although there is some slight crossover between the two).
On Tuesday 07 October 2003 10:45 am, Dimitrie O. Paun wrote:
On Tue, 7 Oct 2003, Steven Edwards wrote:
Is there a way we can merge the winelook option in to the themeing support? The work I have been doing to port comdlg32 is kind of stalled because of tweak_winelook being incompleate in this dll. It would be nice if we could plan on moving all of this stuff together post 1.0
Yes, I'd hope we can move the different tweaks to a theme. The tweaking should just just go away: we should have one look, and where people don't like that, they can run whatever theme they want instead.
--- Kevin Koltzau kevin@plop.org wrote:
I'm not very familiar with how the winelook is handled in code, what does it do exactly? if it simply affects system metrics & colors that would be easily merged with themes, if its more then that (like for example different common dialogs) it may be more difficult
For the most part this is all it seems to do. Differnt mertics and Windows styles. You can see examples of this by looking at the sources for the edit control. With the common diaglogs there is code that implements a Win31 theme if a you want to use it with a Win32 app. I was just going to submit a patch to rm -fr this code but if people want to use a 3.1 style on a new app I guess we should figure a way to do this in the theme support.
Full blown theming in windows uses a combination of .theme files and .msstyles files.
.theme files I believe existed before XP and do not use uxtheme.dll. They primarilly just define system metrics and colors (along with icons for things like My Computer, etc and mouse cursors).
.msstyles files are the basis of uxtheme.dll, and allow much broader theming support as seen in WinXP, as well as defining system metrics & colors (but do not define icons & cursors).
The two theme formats are coupled very loosely, they can be used together (primarily to enable defining icons & cursors with a graphical theme) or seperate. When used together, any metrics & colors defined in the msstyles override those defined in the .theme
Alexandre has requested I use the registry keys that windows uses to define theme configuration, in which case under XP those keys are located in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes and
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ThemeManager
The configuration seems to be split between those two locations, with a couple options in both. HKCU primarily contains configuration related to XP's msstyles method of theming, HKLM looks to primarilly define theming with .theme files (although there is some slight crossover between the two).
I dont know what the best method is going to be to handle the old Winelook option. I think it should just go to /dev/null but I dont know what the result will be on older Win16 apps running with a 9x Winelook. Can anyone comment on this? Is there still a large number of people that want to keep this around?
Thanks Steven
__________________________________ Do you Yahoo!? The New Yahoo! Shopping - with improved product search http://shopping.yahoo.com
On Wed, 8 Oct 2003, Steven Edwards wrote:
For the most part this is all it seems to do. Differnt mertics and Windows styles. You can see examples of this by looking at the sources for the edit control. With the common diaglogs there is code that implements a Win31 theme if a you want to use it with a Win32 app. I was just going to submit a patch to rm -fr this code but if people want to use a 3.1 style on a new app I guess we should figure a way to do this in the theme support.
ALl this UI teaking is just a PITA. The Windows codebase is obviously immune to L&F changes (since each version of Windows sports another L&F), so it's not like we _need_ it for compatibility. At which point it just creates more work for us to maintain... I'd just get rid if it. We should have *one* Wine look (which does not need to match any Windows look), and have all the others be themes, if anything.
Steven Edwards steven_ed4153@yahoo.com writes:
I dont know what the best method is going to be to handle the old Winelook option. I think it should just go to /dev/null but I dont know what the result will be on older Win16 apps running with a 9x Winelook. Can anyone comment on this? Is there still a large number of people that want to keep this around?
/dev/null is the right place for it IMO.
--- Alexandre Julliard julliard@winehq.com wrote:
Steven Edwards steven_ed4153@yahoo.com writes:
I dont know what the best method is going to be to handle the old Winelook option. I think it should just go to /dev/null but I dont
know
what the result will be on older Win16 apps running with a 9x
Winelook.
Can anyone comment on this? Is there still a large number of people that want to keep this around?
/dev/null is the right place for it IMO.
Thanks m8. This will make our work on the ReactOS controls and dialogs so much simpler. Currently in our fork we have had to just comment out or remove all of this stuff anyway. I will try to get with the rest of the ReactOS people and see if we can do a merge of the controls and common dialogs before our next release to get some help on this.
Thanks Steven
P.S. You were right at LinuxWorld. the controls should have "just worked" and most do now, our windowing code was a little buggy.
__________________________________ Do you Yahoo!? The New Yahoo! Shopping - with improved product search http://shopping.yahoo.com
Kevin Koltzau kevin@plop.org writes:
These should probably go into the [Tweak.Layout] section (possibly only enabled with a "WineLook"="WinXP") and of course needs the ability for application specific settings
Theming can be configured under Windows too, so we should use the same method. We shouldn't need anything in the Wine config.