Hacker News new | ask | show | jobs
by coryrc 6367 days ago
wxWidgets is "big" because it has features. Considering it meets all your other criteria (aka features), in addition to ones you'll only find out you need halfway through a project, I would look closer at it. Use wxGlade and wxPython if you want easy, C++ if you demand compiled. Use dabo (http://www.dabodev.com) if you are interfacing with databases.
4 comments

I have been using wxWidgets for about 5 years now with C++. At first, it was really difficult to do everything in code, hard to change GUI when you need to, very time consuming. But still it was the best option, our project was cross platform. It was also difficult to understand how to build and link.

However, once you get the basics it's quite fast and also have threads, networking, file streaming etc, so you don't need a zillion of libraries to do every little thing. Oh, and it has a great OpenGL support (see my projects at http://www.ccsoft.com.tr for screenshots)

With the help of wxFormBuilder (a free design tool), now design and modfications are very much faster.

Besides, it's been there for about 15 years. There is a decent documentation, a book, a large community to answer your questions.

My only plan is to do a project on wxPython and polish my python knowledge and see which (C++ or Python) suits me better.

I ran into a project where I needed a cross platform GUI kit (needed Windows and Mac) and settled on wxWidgets after talking to a few developers. It's been great to work with, although some of the other libraries that are compatible with it don't work as well as the core.

The really wonderful part of the experience is that even after not programming in C++ for about 10+ years I was able to get things working pretty quickly and I'm productive with it. A lot of that is due to the wxWidgets documentation and it's well developed structure.

My only real problem is when I have to switch back and forth between Erlang and C++. Those days suck :-)

I am thinking of using wxWidgets as well for my current project, although it doesn't require much of a GUI. All the guts of my app are in cross-platform C++ (by cross-platform I mean Linux, Mac, and Windows). I have connected a small GUI to it in Windows using WTL, but could easily change it to wxWdigets so I have one GUI to maintain and not three.
I've used wxWidgets for 7+ years now and loved it even in the early days when the GUI tools sucked and the OpenGL support was poor, but now it's very well polished and my choice for GUI development under linux. If my app needs to be ported to Windows, I just re-compile and it's all nice if I use the wxWidgets version of the network libs, etc ...