Tool Frameworks
Now that I'm starting to get somewhere with building machines and having a nice variety of objects to build with, I need some way to do the building. This brings up the inevitable requirement to either write your own extensive UI framework, or decide to use an external framework. The choices are pretty diverse, ranging from managed to unmanaged, OS specific to cross platform, very specific to very general. In the end, my choice boiled down to the fact that I'm a single developer working on this project. My choice: MFC!
There are quite a few people out there that don't like MFC, but there are several reasons that I am going to go with it. First of all, it's a native code framework meaning that I don't have to do any black magic about marshalling or PInvoking or whatever else (don't get me wrong - managed languages are great for their respective areas, but my engine is native making the choice clear). Also, since it is windows specific, it's pretty easy to tie into D3D and since I'm a lone developer easy is a good thing.
The only other real choice (that I know of) would be to use the in engine GUI, but I don't really have the time or patience to implement all of the functionality that MFC would provide right out of the box. So the decision is made (unless someone has a compelling alternative!).
Learning MFC (again)
I've used MFC in the past for a tool here and there, but I never took the time to actually learn a lot about the framework. So I picked up a copy of Programming Windows with MFC for only $13.95 + shipping. It's a huge book, and at least the first few chapters are very well written. Of course I'll be sharing the developments as they come, so stay tuned (if you don't hate me for using MFC!).