torto
Freshman Member
Posts: 50
OS: Gentoo - Windows 1607
Theme: Gentoo: QtCurve - Windows: Classic - Oxygen Gold
|
Post by torto on Jul 18, 2023 11:24:39 GMT -8
The latest version is great, thank you! I just have two remarks : It would be nice to add command line support for the high contrast mode feature. I saw that you added a version for Windows 95, that makes me think of something ; All that's missing is a version for Windows NT4 and Windows 2000. Indeed, Windows 2000 is more or less between XP and 98 on the number of visual effects. NT4 contains more parameters than 95, they are somewhere between 95 and 98 (although it contains some advanced features, which 98 does not have). There is also Windows ME, but it seems to me that it is almost identical to 98 on this plan (I have not tested). You're welcome! Command line support is planned for all those settings, but I didn't add it now as I may change / split that page. And also there are other command line switches planned for the classic style page (saving, removing, importing/exporting to other formats...), and also other new pages. When I reworked most of the code for v1.4 I tried to build for 95 mainly to see if I could make it work using modern tools, and after working out lots of issues it worked. There are build configurations for every version from 95 onwards, but I built and uploaded only the ones I think are most useful, as I doubt many people are using other Windows versions, and if they are they can use a build for a lower version without many missing features. There are lots of variants which can be compiled (every Windows version, 32/64 bit, reduced versions with only the classic style page, reduced height for lower resolutions, different preview (still a work in progress), using undocumented system functions or custom ones...) The NT4 build is almost identical to the 95 one, but using Unicode, so the one for 95 should work on NT in theory (I don't have it installed at the moment to test it). The same goes for 98/2000. ME, 2003 and 8.1 builds are pointless as they are identical to previous versions, so the other "unique" ones are NT4, 2000, Vista and 8. The downside is that the Advanced Settings page looks wrong when options are missing, that also needs more work.
|
|
|
Post by mrdo on Aug 2, 2023 2:03:12 GMT -8
alas not win11 compatible.. cheers anyway for this gem
|
|
|
Post by OrthodoxWin32 on Aug 2, 2023 9:51:35 GMT -8
alas not win11 compatible.. cheers anyway for this gem What worked in Windows 10 and doesn't work anymore in Windows 11 ?
|
|
|
Post by bamajon1974 on Apr 15, 2024 4:39:49 GMT -8
WinClassicThemeConfig v1.5 I would like to save the WinClassicThemeConfig exe and task.xml file in a custom location, such as C:\windows directory, different from the path shown in the cmd file to register the program in control panel. How should the cmd file be modified? Is C:\windows an acceptable directory to copy the files? Do I need to run the cmd file as trusted installer or just as an administrator?
Thanks!
|
|
raminmahzad
Freshman Member
Posts: 33
OS: Windows 7 64bit / Windows 98 SE
Theme: CLassic
CPU: Intel 4710HQ I7
RAM: 16
GPU: Nvidia Geforce 850M - Intel HD 4600
|
Post by raminmahzad on Apr 20, 2024 0:00:22 GMT -8
I made this CPL for taskbar which is very similar to that of Windows 98. But I couldn't do anything for the desk, CPL, because in Windows 7 and later, unlike Windows 98, it is a window box like a folder , not a dialog box, and I only can edit dialog boxes by Resource Hacker.
I found that your project is very similar to what I want. With the difference that I want a dialog box that consists of several tabs like the original windows 98 desk CPL, which has the ability to change the desktop wallpaper in the first tab, in the second tab You ca set Screen savers in the third tab you can turn on or off desktop icons and The fourth tab is exactly what you did and changes the appearance of Windows. and the last tab is for screen resolution and color mode.
Like the pictures below :
|
|
torto
Freshman Member
Posts: 50
OS: Gentoo - Windows 1607
Theme: Gentoo: QtCurve - Windows: Classic - Oxygen Gold
|
Post by torto on Apr 23, 2024 9:18:47 GMT -8
WinClassicThemeConfig v1.5 I would like to save the WinClassicThemeConfig exe and task.xml file in a custom location, such as C:\windows directory, different from the path shown in the cmd file to register the program in control panel. How should the cmd file be modified? Is C:\windows an acceptable directory to copy the files? Do I need to run the cmd file as trusted installer or just as an administrator? Thanks! No need for trusted installer privileges. EDIT: Outdated information; this is now done automatically by the script. If you copied the .exe, for instance, to "C:\Windows\WinClassicThemeConfig.exe", you should replace in the .xml file every instance of "%SystemDrive%\Programs\Classic\Themes.exe" by "C:\Windows\WinClassicThemeConfig.exe". And you should change this line in the .cmd: SET path=C:\Windows\WinClassicThemeConfig The .xml file should be copied to "C:\Windows\WinClassicThemeConfig.xml", or else you can specify its path in the "SET xmlpath=" line in the .cmd.
|
|
torto
Freshman Member
Posts: 50
OS: Gentoo - Windows 1607
Theme: Gentoo: QtCurve - Windows: Classic - Oxygen Gold
|
Post by torto on Apr 23, 2024 9:49:21 GMT -8
I made this CPL for taskbar which is very similar to that of Windows 98. But I couldn't do anything for the desk, CPL, because in Windows 7 and later, unlike Windows 98, it is a window box like a folder , not a dialog box, and I only can edit dialog boxes by Resource Hacker.
I found that your project is very similar to what I want. With the difference that I want a dialog box that consists of several tabs like the original windows 98 desk CPL, which has the ability to change the desktop wallpaper in the first tab, in the second tab You ca set Screen savers in the third tab you can turn on or off desktop icons and The fourth tab is exactly what you did and changes the appearance of Windows. and the last tab is for screen resolution and color mode.
Now the Effects page is a bit more similar. Not in appearance (that's not my goal), but at least in functionality. The Screen Resolution page would be cool, but it is a bit outside the scope of this project, as I'd rather add only themes/appearance related functionality... I had it working before just for switching resolutions with the code from ReactOS, but I would have to make it from scratch using modern APIs to properly support multiple screens and DPI settings, which is a lot of work. Besides, the Display applet from 1511 kind of works on later versions, so I have less incentive to do that
Regarding Background and Screen Savers, yes, that may come in the future, but not soon. I have a couple of features planned for those which are not in the system equivalents.
|
|
torto
Freshman Member
Posts: 50
OS: Gentoo - Windows 1607
Theme: Gentoo: QtCurve - Windows: Classic - Oxygen Gold
|
Post by torto on Apr 23, 2024 10:22:50 GMT -8
After a lot of work I have released new versions. I consider both pages to be feature complete now. Among others, I've implemented many of the features requested, including: It does not read and write color schemes to the usual registry locations. Now, if none are found in the new format, it imports them from the system (in the format depending on the Windows version for which the exe was built). It even supports importing them from Windows 3 from the command line. It will not support exporting them to the old formats though. Would it be possible to save a complete design? By that I mean not only colors, but cursor settings, sounds etc.? Saving not yet, but you could save them with Themes.exe from Windows 2000 and applying them with my program by opening the .Theme file (you could drag the .Theme file to the .exe, or pass it as a parameter, or associate .Theme files with my program). It supports most features in theme files from Windows 1 to 11 (not a typo, you can apply theme settings from a WIN.INI file too). Here is theme file with all values supported. Applying themes respects these registry settings: ThemeSettings.reg (873 B) I do not see User Preference Mask and other options in the latest version. I've replaced the previous Advanced page with an Effects page with the settings in previous system versions and in the "Performance" dialog. It would be nice to add command line support for the high contrast mode feature. Done: Themes.exe @Effects /EnableHighContrast Themes.exe @Effects /DisableHighContrast
I think I should make the preview settings configurable, so that you can change how the scrollbar background looks, if the icons are shown or not, and to include or not extra elements...(trying to show all configurable colors, sizes and fonts really clutters the preview window ) I fished the new preview window, with almost all configurable settings previewed (only the "menu width" setting is missing). You can revert to the classic preview in the context menu shown by right-clicking the preview window. I've reverted some changes in the classic preview, so now it is exactly the same as the one in Windows 98 and later (except for bug fixes when sizes get too large, and on the selected menu item which is not drawn in later Windows versions).
|
|
raminmahzad
Freshman Member
Posts: 33
OS: Windows 7 64bit / Windows 98 SE
Theme: CLassic
CPU: Intel 4710HQ I7
RAM: 16
GPU: Nvidia Geforce 850M - Intel HD 4600
|
Post by raminmahzad on Apr 23, 2024 20:18:31 GMT -8
Now the Effects page is a bit more similar. Not in appearance (that's not my goal), but at least in functionality. The Screen Resolution page would be cool, but it is a bit outside the scope of this project, as I'd rather add only themes/appearance related functionality... I had it working before just for switching resolutions with the code from ReactOS, but I would have to make it from scratch using modern APIs to properly support multiple screens and DPI settings, which is a lot of work. Besides, the Display applet from 1511 kind of works on later versions, so I have less incentive to do that
Regarding Background and Screen Savers, yes, that may come in the future, but not soon. I have a couple of features planned for those which are not in the system equivalents.I understand that we have different goals. My goal is to accurately restore the desktop properties (Desk.cpl) of Windows 98 with exact the same shape and appearance for Windows 7 and above. I don't expect you to change your goal or your project. I Just hope that with your help and guidance, and with your permission, I can find a way to build this Desk.CPL that can replace the windows original desk.cpl by using your cods and knowledge.
|
|
|
Post by OrthodoxWin32 on Apr 24, 2024 3:34:39 GMT -8
torto I just saw your new version. First of all, you have done a superb job, congratulations. Concerning the GUI part, I don't have much to say, it's almost perfect. The only suggestion I would have would be to put the link back to the performance options (like in older versions).
Regarding the command line part for .theme files, I have several questions and comments : - You say that if a section is not mentioned in the .theme file, it is not taken into account. So, I don't really understand the DWORD values that can be used to skip a section; I feel like this is duplicating. - I assume "classic style" refers to the "Classic visual style" part. How is the relationship between modern and classic visual styles articulated, if both are indicated, which takes precedence? Furthermore, I don't really understand why it is possible to display a link in the Classic visual style section. - Is the high contrast applied (System High Contrast mode section) the same as that of the corresponding option in the GUI, or that applied by the system when applying a high contrast theme (with aerolite. msstyle in high contrast mode) ? It might be helpful to have both options. - The parameter that manages the state of DWM causes DWM to completely shut down, or just makes the system believe that it is disabled ? Additionally, there seem to be batch files (as indicated by the registry entry) but I can't find them. - Some modern theme settings are missing, such as applying accent colors to different elements (taskbar, window title bar, etc.).
|
|
torto
Freshman Member
Posts: 50
OS: Gentoo - Windows 1607
Theme: Gentoo: QtCurve - Windows: Classic - Oxygen Gold
|
Post by torto on Apr 24, 2024 14:40:35 GMT -8
Thanks! The registry settings to avoid applying settings are not redundant. Suppose for instance you want to change colors but keep the current high contrast setting (or any other one); in that case you can specify the colors but not the HighContrast= line, as 0 always disables it and 1 always enables it. And there exceptions where not specifying a setting uses default values, like sounds for instance; every value missing or invalid causes the default sound to be used, so you can prevent changing any sound via the registry. The same goes for the screensaver, icons and wallpaper. Also you may have complete themes but want to keep certain things configured the way they are without modifying the file. The idea is similar to the settings in Plus! The high contrast setting is exactly the same as the GUI option. Is there any difference with system high constrast themes? I think it should be the same; the aerolite style is used and the high contrast mode enabled (any HighContrast value greater than 0 enables it). Regarding DWM, the setting just runs the command in the registry, nothing more. If it is currently enabled and Composition=1, it runs the command to disable it, and vise-versa. I did not provide any batch files, the paths in the .reg file are just examples. The same goes for enabling or disabling the classic style. The enable classic style command is run if no "Path" is given in the "VisualStyles" section, similar to how previous Windows versions worked. In that case the scheme specified in "ColorStyle" and "Size" is applied. I should clarify that in the example later, as those may be interpreted as different settings. And I may remove the ability to specify a classic scheme by name, as it confusing and colors and metrics are overridden by other sections... the idea is that the same theme file could be applied by the system on Win7 for instance Some modern theme settings are missing, such as applying accent colors to different elements (taskbar, window title bar, etc.). I'm not aware of those settings being in .theme files.. I think the only modern settings missing are "WindowsSpotlight", and the slideshow format with the huge strings of letters and numbers.
|
|
|
Post by OrthodoxWin32 on Apr 24, 2024 15:14:04 GMT -8
Thanks! The registry settings to avoid applying settings are not redundant. Suppose for instance you want to change colors but keep the current high contrast setting (or any other one); in that case you can specify the colors but not the HighContrast= line, as 0 always disables it and 1 always enables it. And there exceptions where not specifying a setting uses default values, like sounds for instance; every value missing or invalid causes the default sound to be used, so you can prevent changing any sound via the registry. The same goes for the screensaver, icons and wallpaper. Also you may have complete themes but want to keep certain things configured the way they are without modifying the file. The idea is similar to the settings in Plus! The high contrast setting is exactly the same as the GUI option. Is there any difference with system high constrast themes? I think it should be the same; the aerolite style is used and the high contrast mode enabled (any HighContrast value greater than 0 enables it). Regarding DWM, the setting just runs the command in the registry, nothing more. If it is currently enabled and Composition=1, it runs the command to disable it, and vise-versa. I did not provide any batch files, the paths in the .reg file are just examples. The same goes for enabling or disabling the classic style. The enable classic style command is run if no "Path" is given in the "VisualStyles" section, similar to how previous Windows versions worked. In that case the scheme specified in "ColorStyle" and "Size" is applied. I should clarify that in the example later, as those may be interpreted as different settings. And I may remove the ability to specify a classic scheme by name, as it confusing and colors and metrics are overridden by other sections... the idea is that the same theme file could be applied by the system on Win7 for instanceAZ I'm not aware of those settings being in .theme files.. I think the only modern settings missing are "WindowsSpotlight", and the slideshow format with the huge strings of letters and numbers. Thank you for the clarification. The way to activate the classic theme seems very logical to me once you understand how it works. Regarding high contrast, I'm afraid the result will be different. I will detail this in a future post.
Regarding theme settings , you are right, these settings are not present in .theme files ; This is an oversight by Microsoft. If you want, I can detail the associated registry keys.
|
|
torto
Freshman Member
Posts: 50
OS: Gentoo - Windows 1607
Theme: Gentoo: QtCurve - Windows: Classic - Oxygen Gold
|
Post by torto on Apr 24, 2024 19:13:12 GMT -8
The transparency setting also isn't on theme files anymore. It is on Vista/7, but I reused it for taskbar transparency. I did not add anything new to the format, except for the "FlatMenus" setting because the OS insists on enabling that when applying themes for no reason.
But yes, it makes sense that a theme could change where colors are applied. I know which values to change and messages to send, as I've made a program to change those settings before. I could also allow setting the window color independently of the accent color, even though that is pointless for newer versions.
|
|
|
Post by OrthodoxWin32 on Apr 25, 2024 4:00:00 GMT -8
The transparency setting also isn't on theme files anymore. It is on Vista/7, but I reused it for taskbar transparency. I did not add anything new to the format, except for the "FlatMenus" setting because the OS insists on enabling that when applying themes for no reason. But yes, it makes sense that a theme could change where colors are applied. I know which values to change and messages to send, as I've made a program to change those settings before. I could also allow setting the window color independently of the accent color, even though that is pointless for newer versions. It doesn't matter if there aren't these additional colorization options, since they are not included in the .theme files. Concerning the DWM section, I imagine that it is possible to point the file to a script which activates the basic theme without deactivating DWM. Indeed, this has the advantage of not creating additional instabilities on the system (while disabling DWM is difficult on the most recent Windows). For high contrast mod, I have to try the option.
|
|
torto
Freshman Member
Posts: 50
OS: Gentoo - Windows 1607
Theme: Gentoo: QtCurve - Windows: Classic - Oxygen Gold
|
Post by torto on Apr 25, 2024 5:47:33 GMT -8
Nice, I didn't know that program. Yes, you could add its path to the registry to "disable DWM", and to a script which kills that process to "enable" it.
|
|
|
Post by OrthodoxWin32 on Apr 25, 2024 15:10:01 GMT -8
As planned, I tested applying a theme. For the moment, almost everything seems to work well, it even seems more efficient than with the default theme engine ! The only problem I noticed is the high contrast. I took the “High Contrast With” theme as an example, but the same thing happens for the other themes. By applying the theme with the theme engine of the system, I get this: By applying the theme with your program, I get this: - UWP apps/elements display correctly - The DWM window frames appears to use aerolite in high contrast mode, but with the colors of the previous theme (which was simply defaut aero theme) - Win32 items (include the basic window frame) don't display in high contrast mode at all, it's aerolite without high contrast that displays Overall, it's not the same high contrast as checking the corresponding option in the GUI, but it's also not the same high contrast as the system's theme engine. However, I find this "issue" visually interesting; Even if you fix the issue, maybe you can keep this as an option.
Nothing to do with it, but I discovered a difference with the old versions in the GUI part. In older versions, the borders were thick, as in all property page type windows. In the latest version, the borders appear thin, which is inconsistent with the other property pages (file explorer options, mouse, keyboard, sounds...)
|
|
torto
Freshman Member
Posts: 50
OS: Gentoo - Windows 1607
Theme: Gentoo: QtCurve - Windows: Classic - Oxygen Gold
|
Post by torto on Apr 25, 2024 20:03:58 GMT -8
OrthodoxWin32 Thanks for testing! Interesting... Windows seems to do something special with colors before applying high contrast AeroLite themes. I didn't pay close attention. I've found that if you change any color from the Windows 8 "Color and Appearance" applet after applying a high contrast theme with my program, colors are displayed as they should. But that basically creates a new high contrast theme with different colors and applies it. I think that should be fixed, because that's not the intended look, and all high contrast themes end up looking similar. And that's basically the normal AeroLite but with a wrong title bar color which can't be changed... Regarding the window borders, good catch! It does not use border padding at all. No idea why it changed though, that was not intentional. I change only the things that need to be changed, to avoid windows flickering when it is not necessary. But the main thing that may give that impression is that I don't cover the screen while every window is being redrawn. (But I think it will do that for high contrast themes once I fix them)
|
|
torto
Freshman Member
Posts: 50
OS: Gentoo - Windows 1607
Theme: Gentoo: QtCurve - Windows: Classic - Oxygen Gold
|
Post by torto on Apr 26, 2024 14:21:23 GMT -8
Both issues fixed. Changing from / to high-contrast themes now takes a while, but I can't think of a better way.
|
|
|
Post by OrthodoxWin32 on Apr 27, 2024 1:53:31 GMT -8
Both issues fixed. Changing from / to high-contrast themes now takes a while, but I can't think of a better way. It work, thank you !
|
|
|
Post by OrthodoxWin32 on Apr 27, 2024 15:06:01 GMT -8
I tested a classic theme (not ported, but rather modified trying to respect the specifications) by pointing to an activation script, again according to the specifications. Nothing happens, I have the impression that the script is not launching at all ; However, there may be something I'm doing wrong.
|
|