Sign in to follow this  
  • entries
    67
  • comments
    89
  • views
    51527

Bing!

Sign in to follow this  
LachlanL

279 views

Wading through MFC


Okay, after a lot of hacking at my code like a dead piece of shrubbery, I've got the "edit tesselation level" stuff working in my app. I have a few more simple functions to plug in, but basically it works now. All the afore-mentioned memory leaks are gone and there was peace upon the land...

However, I am finally fed-up with MFC. I have decided that the amount of bloat and cryptic problems it introduces far outweighs it's conveniences. I've decided to port my editor to something else and redo some of the UI, stripping out some of the less-usefull stuff along the way.

So yeah, I'm looking for something nice to switch to. My code is in Cpp and needs support for dialogs, splitter windows and basic menus. Initial investigations have led me to .Net and WTL. WTL requires me to implement a whole bunch of things myself, but basically it looks very clean and minimal and is curretly what I'm leaning towards. .Net is something I do not have too much experience with, but I'm wary of jumping into it because my bat-sense is detecting oncoming bloat (but then, what has bat-sense ever gotten me?). Unfortunately, you need to do a little bit of jiggery-pokery to get WTL working on VS2005 Express (which is what I'll be switching to for the purpose of this port), but it's nothing I can't handle.

If anyone's made level-editors (the standard 3d/top/left/front-view type) in something other than MFC and wants to sing its praises, I'm all ears!
Sign in to follow this  


2 Comments


Recommended Comments

In order to use .Net(or just WinForms) you'll have to use managed C++( C++/CLI, not the first crappy hacked up version ), or switch to C#. Out of the two it would probably be easier to switch to managed C++ to use WinForms and leave the rest of the C++ code alone.

If you want to stick with unmanaged C++ there's wxWidgets. I've only used wxWidgets and Win32 so there are other options, but I'd rather stab myself in the face several times then use Win32 again. Plus wxWidgets has a nice built-in OpenGL control, if you're using OpenGL. You can still use Direct3D of course, but that requires the usual setup.

Edit: Should have checked my PMs first, ugh.

Anyway I don't know what all this talk of bloat is about. Under a modern system a couple extra hundred kilobytes on a exe or some extra DLLs isn't that big of deal. As a general rule, the higher level your code is the bigger it's going to be. The only way your fight bloat is to use low level APIs( like the one's you're fed up with...).

Share this comment


Link to comment
If you want something that will make the GUI work feel nice and smooth, then opt for WinForms/.NET (and C#, if possible). If you want to leverage your existing unmanaged C++ code, then play with Win32 (aaah!) or perhaps give C++Builder a go if you're able.

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now