wxWidgets / Win32 IDE Question

Moderator: Project members

Post Reply
Message
Author
Dresk
500 Command not understood
Posts: 4
Joined: 2005-07-06 00:50

wxWidgets / Win32 IDE Question

#1 Post by Dresk » 2005-07-06 01:02

Hello all,

I am as of recent an MFC coder at my work environment, given how quickly Visual Studio can create class-based GUI programs with a visual editor and actually useful ClassWizard. My question is simple: I do not like being restricted to MFC, nor do I really like MSVC6 (or .NET), yet I cannot determine a suitable replacement through all of the software I have found.

I firstly tried wx-DevCPP but ultimately found the IDE to be resource hungry, sluggish and ungodly unstable (crashes here and everywhere!). The other problem was the lack of precompiled wxWidgets headers, requiring my compilation times to span up to 10-15 seconds.

The next program on my list was MinGW Developer Studio. I actually found this program very appealing, with its efficient footprint, streamlined interface and package for Win32 including precompiled wxWidgets headers. Unfortunately, aside from these boons, the IDE supported a primitive version of "autocompletion" or "codetips", as it did not dynamically support the recognition of new classes, structures, other datatypes, etc. The resource editor was also a tad confusing, since I do not think the editor was for wxWidgets GUI creation, rather standard Win32 RC. To top it all off, the project is NOT opensource, and allows for no contributions by users.

The last program on my list, and I have yet to really try, is Code::Blocks. Something about this IDE just seems shady (although I could be completely wrong), and I utterly hate those Wiki interfaces (for the webpage at least, heh). Along with MinGW DevStudio, the IDE itself is free, but not opensource.

Some programs do exist purely for the creation of wxWidgets dialogs, such as wxGlade, but again I am ultimately looking for something with integrated / native UI creation support. I am not doubting the capabilities of the software, I am simply bringing time-to-create as the ultimate judge.

So, again, my main requirement is to have an IDE that is light on resources and responsive (ie. not Dev-CPP), supportive of autocompletion features (ie. not MinGW DevStudio), and above all things has a visual designer for wxWidgets (wx-DevCPP is a good example of one supporting this, but lord is it sluggish and bloated). Additional nice features could include simple support for precompiled wxWidgets headers, some kind of "class autogeneration" for the wxWidgets resources and any other handy utilities that Microsoft actually got right.

I apologize if my post sounds too belligerant or arrogant, I know I mainly ranted on the negatives of otherwise fine pieces of software. Any help would be greatly appreciated.

Thanks,
Dresk

User avatar
botg
Site Admin
Posts: 35562
Joined: 2004-02-23 20:49
First name: Tim
Last name: Kosse

#2 Post by botg » 2005-07-06 21:18

Switching to a different gui library and/or a new development environment is always difficult and in the end you'll have to find your own solution.
But I can at least give you some hints.

Since you've already decided to try something new, you should go even a step further.
Start from scratch with a completely new system, for example Linux. I recommend Gentoo as distribution. It takes some time to set up, but installing Gentoo will already teach you a lot about how Linux works, especially since you're a developer.
As development environment you could try out KDevelop and Anjuta, perhaps even Eclipse (but I don't know how good it is for C++).

To edit the xrc resources for wxWidgets, I use XRCed (http://xrced.sf.net). It gets some time to get used to it, but I think it is extremely useful. As a sidenode, I plan to write a couple of patches for XRCed to add a few features.

But even with an IDE, you'll have to write plenty of scripts and some tasks still have to be done manually. Personally I have a huge collection of scripts. These scripts are very specify to me and my system, if I would lose them I would need a long and unproductive time to rewrite them.
The scripts perform tasks no IDE could ever do and even simplify some tasks which are possible with some IDEs.

For example class template generation, I recently finished a nice shell script for it, and everything works just the way I like it. No IDE did ever generate the class stubs the way I wanted them to be.

Of course, it is a very steep learning curve and will take a lot of time, but being able to do cross-platform development is a huge asset.
You could basically develop under a single platform and the cross platform version is just a by-product. With very little effort you get an application which runs under all major operating systems: Windows, Linux and Mac OS. There will be problems with the different flavours of Linux distributions, kernel versions and library versions/availability if you're distributing closed source binary applications, but I have no experience with that.

Post Reply