PCT Maker

Short for "ProfessionalColorTable Maker", this was an old program I made when I still primarily used WinForms. The idea was that PCT Maker would provide a visual and easy-to-understand way to create custom themes for a program's menus and toolbars. By setting the Renderer property of a ToolStrip, ToolBar, or Menu control (or by setting ToolStripManager.Renderer, you could use the custom theme that you created in this app.

PCT Maker does certainly work. It also includes a "preview" function to show you how the resulting theme will look. However, there is a major bug: if you set an item to a custom color, returning to edit the item will set the custom color back to white. This can make experimentation hard. I tried to fix the bug a year after I made the program, but I was still relatively inexperienced at that time as well.

At this point, I could probably go in and fix the issue (as well as fix some other bugs), but it really comes down to if I'll find the time to do so.

How to use

It's a pretty simple program.

On the left hand side is a basic list of all the individual properties you can customize. On the right side, it shows the property you've currently selected, giving a brief description (which probably isn't the most helpful) and showing your color selection for that property. You can set a property to "use base color", which means it should use the default color, or "use custom color", which allows you to set the color you want to use.

You can click the "Show Test Window" button to get a preview of how the resulting theme will look. The test window contains two toolbars and a menu bar, which allows you to see how the color theme will affect all of the controls. The window does update automatically as you make changes.

When you're done, set the language you want to export to in the top-right corner (either VB.NET or C#), and then click "Export to Code File".


PCT Maker currently only exists in an executable form, and I am releasing it under the MIT license - as close as I can reasonably get to being completely unlicensed.

I don't believe I used any obfuscation, so it should be a matter of just using a program like ILSpy to get the source code back. (and in C#, no less!) I may come back and write an update that fixes the aforementioned major bug and maybe does some other things, at which point I'll also release the source code, but there is absolutely no guarantees.

The code files generated using PCT Maker can be used for any purpose and applied with any license.