David Webster wrote: > > I am wanting to start some GUI development but I am having a hard time > figuring out just what the GUI development is? I see that the GTK > libaraires are the base C++ GUI class libraries, but I also see stuff > like Gnome and qt* and Glib, and other stuff.
Gnome is based on the GTK toolkit. Glib is a part of GTK, and isn't related to GUI stuff, its got linked-lists and whatnot. GTK is a GUI toolkit for C. Qt is a C++ library. (No wrappers that I know of -- it is much harder to "wrap" an OO-library, unless you're wrapping in another OO language...) Gnome is not a GUI library, its a whole integrated desktop system. So is KDE. KDE uses Qt is its GUI toolkit. > Is there any online > documentation that sorts all this stuff out? You can try http://www.theoffice.net/guitool, which lists a dizzying array of GUI tools. You will also find a huge repository of useful programming info (not just GUI) at http://www.iro.umontreal.ca/~ratib/code/. (It isn't organized by tool type, so you'll have to click on the language you like, and look for GUI tools there.) > What are the compliments > in the Linux/X11 world to MFC/IOCL in the Win32 world? What about > resource editors and stuff like that??? There is no "standard" GUI toolkit for Linux. Motif used to be standard (for UNIX in general), but that was only because it was the only one around. Since it is a commercial product and began to stale, eventually alternatives began to emerge. Now, you have many to choose from. Here is a short list, to get you started. - GTK (C) - Best choice if you want to program in C. Basis of Gnome. Wrappers exist for many other languages, for example GTK-- is a C++ wrapper. - http://www.gtk.org - wxWindows (C++) - This one is my favorite. Quite mature. - It's a cross-platform tool, and the one for Linux is based on top of GTK. - The main page is at http://web.ukonline.co.uk/julian.smart/wxwin - The GTK version's page is at http://wesley.informatik.uni-freiburg.de/~wxxt/ - V (C++) - Simpler than wxWindows, easier to learn. I've only experimented with it briefly, but it seems pretty nice if your needs are modest. - http://objectcentral.com - Qt (C++) - Troll Tech's infamous library. Basis for the KDE project. I personally have never used it, but I gather it is very nice (though C++ purists dislike some of their design choices!) - http://www.troll.no - There is a MFC port to Linux, I believe, though I don't know anything about and I do not want to know. - Java's AWT (Java) - The AWT is getting better. "Write once, debug everywhere!" - YACL (C++) - I've heard good things about this, but never used it or even read much about it. - http://www.cs.sc.edu/~sridhar/yacl/ That's only a start, though I think I got most of the "popular" GUI toolkits for Linux. I'd recommend wxWindows if you will be programming in C++, or maybe V. Both exist as Debian packages, though a new major version of wxWindows (2.0) will soon be released. I expect it will be debianized soon after. (If not, maybe I will do it!) Qt is also .deb'ed, and is coincidentally also approaching 2.0. I hope this clears things up rather than making it more confusing... Kirk