Windows XP Theme Manager is a suite of three classes which enable access to Windows XP theme support from Delphi and Borland C++ Builder applications. At the time of creating the name of this suite Windows XP was the only Windows with the new theme support. However, since the support for theming remains the same in Windows Vista, the component works also there, just like on XP.
TThemeServices is a wrapper around the themes APIs and allows an application or control to use theme functions without worrying about managing theme data and listen to theme changes in the system. It has a very small memory footprint and does not appear on the component palette.
TThemeManager is a component that takes important measures to allow VCL applications to work with Windows XP themes and modifies some controls to match the general theme look. It does not need to modify any VCL units nor to change code in an application. It is indeed a drop-and-forget component. Internally a TThemeServices instance is used for painting, which is also exposed as property, so an application does not need to create an own one if it needs to paint theme elements.
TThemeManagerDB is the third class in the bundle and is an enhanced TThemeManager class which takes care for DB controls. It is located in an own unit because it has to import database units which are not of general interest in all applications.
Overview:
License:
Windows XP Theme Manager is freeware. You may freely use it in any software, including commercial software, provided you accept the following conditions:
Although it is not required it would be a nice move to recognize my work by adding a citation to the application's about box or a similar place.
Installation:
Theme Manager comes with an own setup program that makes installation extremely simple. Thanks to Jim Kueneman (www.mustangpeak.net), who created the initial version and helped me so very much to finally get my own installer done. With this installer not only is it simple to install the Delphi package but also C++ Builder users have a much easier time. Note: The demo application (Theme Explorer) has been created using Delphi 7. The form files are stored however as binary. When opening the project with Delphi 6/BCB 6 or lower you might get some warnings about unknown properties. Simply ignore these messages. Additionally, there might still be units, which are not known to Delphi/BCB versions earlier than 7. Simply remove these references from the uses clauses whenever they are mentioned by the compiler.
Note also that the DB aware demo application needs DBDEMOS to work properly.
Known issues:
The theme manager cannot fix everything. Particularly controls which are fully drawn by the VCL remain as they are (exception: TSpeedButton), because the paint code would have to be copied out from the VCL source code for modification, which is not allowed.
The following controls are VCL only and need full rework for themed painting or are not intended to work with themes:
Other controls:
Third party and special controls:
Downloads:
| Theme Manager main package. | |
| Version: 1.10.1 | Last change: 03. Feb 2007 |
| Download count: 226357 | Size: 917 KB |
| Author: Mike Lischke | Website: www.soft-gems.net |
| Platform: Delphi 4 - 6, BCB 4 - 6 | Type of download: Delphi source + demo + help |
| Compiled Theme Explorer demo application. | |
| Version: n/a | Last change: 03. Feb 2007 |
| Download count: 191267 | Size: 1,147 KB |
| Author: Mike Lischke | Website: www.soft-gems.net |
| Platform: Windows 9x / Me, Windows NT / 2K / XP | Type of download: Application |
| Resource file containing a generic XML manifest that can be used to enable Windows XP theme support for your application. | |
| Version: n/a | Last change: 03. Feb 2007 |
| Download count: 146605 | Size: 1 KB |
| Author: Mike Lischke | Website: www.soft-gems.net |
| Platform: Delphi 4 - 7, BCB 4 - 7 | Type of download: Binary data |
| Implementation of a special button showing typcial images as used for close buttons in windows etc. | |
| Version: 1.0 | Last change: 03. Feb 2007 |
| Download count: 65831 | Size: 334 KB |
| Author: Mike Reith | Website: www.tetzel.com/CocoR |
| Platform: Delphi 5 - 6 | Type of download: Delphi source + demo |
| Compiled HTML help file. | |
| Version: n/a | Last change: 03. Feb 2007 |
| Download count: 51069 | Size: 225 KB |
| Author: Mike Lischke | Website: www.soft-gems.net |
| Platform: Any platform / OS | Type of download: Plain HTML help |
| A stripped down Theme Manager package containing only the pure source code. | |
| Version: 1.10.1 | Last change: 03. Feb 2007 |
| Download count: 28099 | Size: 158 KB |
| Author: Mike Lischke | Website: www.soft-gems.net |
| Platform: Delphi 4 - 6, BCB 4 - 6 | Type of download: Delphi component |
For collaborative development I use Google Code since a while. At the time being only Virtual Treeview is hosted there.
If you want to register in the Soft Gems forums please do so but additionally send me an e-mail, so I can activate your account. This countermeasure is necessary to fight spammers.
The VIP code to use for registration is 33209.