I just decided to try switching over the front end of my project to Qt. I was trying to make an immediate mode GUI before, but it turns out that’s actually a terrible idea. There’s a couple of reasons why:
- major GUI toolkits have had a lot of people, time, and attention given to them, so they have many more features than you could hope to implement on your own.
- major GUI toolkits also have a tremendous amount of HCI wisdom and knowledge embedded in them. If you use a good GUI toolkit, your program will probably be somewhat more usable even if you don’t know the first thing about usability.
- immediate mode GUIs scale poorly to more complicated interfaces. They don’t have hierarchical layouts and more complex reactive functionality has to be hand coded.
I figured I should throw something up and warn people away from the siren’s call.