Tag Archives: wxPython

Flame Version 1.2.0 — Windows Installers made easy?

Flame is a tool I wrote last year to take the nightmare that is working with WIX and make it easy to create a nice looking installer on windows with some important features (Shortcuts, Registry, File types, Custom Branding). I absolutely detest writing their inane xml by hand and generating then looking up GUIDs makes me want to hurt someone. So, instead of all that nonsense, you can simple run Flame and create a .kflame file for your project. You pick your files and some simple options, set up shortcuts and registry entries, and it does the rest. You don’t even have to run any of the wix exes, it does it all for you. Next time you want to make the installer, you just open the file with Flame, hit go, and you’re done. No retyping, no looking up GUIDs, no insanity.

This week I needed to create an installer for one of my other projects and decided it would be a good time to dust off Flame, fix the bugs, and add some features. Behold, the fruits of my labor, version 1.2.0. It successfully built its own installer, as well as some test ones, with no problems. However, due to the vast differences in how developers set up their projects, it would be incredibly helpful to get some real world testing done and get feedback on success/failure.

Here is the keeyai.com page for Flame, and here is the sourceforge page where you can actually get the files. Good luck, and may you spend your precious time developing instead of pulling your hair out over WIX’s inanities.

DirTreeCtrl – wxPython tree widget for directories

As I was writing Flame (a GUI for Wix) I really wanted to show the contents of a directory in a tree, JUST like the GenericDirCtrl in wxPython. I tried using the GenericDirCtrl initially, but you really can’t customize it at all, most importantly you cannot set the directory you want to use – it always shows everything from the base drives out. I need this tree control for selecting files that go into an installer, so showing files outside of the relevant directory will be annoying for the experienced users and disastrous for the inexperienced. After a LOT of looking and hacking I didn’t find or create a working solution to the problem, so I started over and wrote the DirTreeCtrl below. It is simply a wx.TreeCtrl with some extra functionality related to the filesystem. When you pass the tree a directory, it gets the directory contents and displays them, querying the OS to get any file extension icons available. The file structure is loaded virtually to minimize memory usage and there is an option in the widget to remove loaded directory data if memory use is critical for you. More features below:

DirTreeCtrl — wxPython widget for displaying directories
Features:

  • Automatically loads files in the given directory
  • File lists loaded on the fly when nodes are expanded so you only load what you need
  • Gets the OS icons used for files when it can to emulate file explorer as much as possible
  • Easily use your own icons for any file extension
  • Automatically loads the correct icon if file shown is a .ico file
  • Does NOT require win32 libraries or anything else outside of normal wxPython install

Check it out here: DirTreeCtrl – wxPython widget for displaying directories