Recently I downloaded Picasa from Google to manage my huge collection of photographs, I was totally blown away by the great experience of using such a great piece of software. Everything was so intuit, and the UI was really slick and well organized. Being a developer the first thing that came to my mind was to see what toolkit they were using, I looked at the application directory to see if there were any obvious clues, not finding any I fired up the trusty Spy++ and found to my surprise that the whole Picasa UI is just one big window with a class name of “ytWindow”. This means that they custom draw everything i.e. use their own GUI toolkit.
Personally I would have never gone in for such a solution but now taking a look at how well the application has come out, I am definitely going to give this option a more thorough analysis.
In the process of finding the UI toolkit for Picasa I researched a lot of other UI toolkits. Seems like QT is a good option these days but is ridiculously expensive for anyone other than big enterprisey clients, GTK 2 seems to be the best among the open source alternatives. Also I read some good reviews on FLTK, might be interesting to take a look at it for developing prototypes.