Click to See Complete Forum and Search --> : Fast GUI


jwj
01-27-2003, 08:40 PM
What is the best solution for GUI programming in Linux - e.g. if I would like to make a file manager?

I would like a GUI library that is:

1) fast (as windows some times can be - sorry.
And faster than KDE/GNOME)
2) stabil (MUCH more than windows is)
3) well documented (docs, tutorials...)
4) and supports commen GUI elements (TextField, DropDownBox, Table, Button, Menu...)
5) Have C++ interface
6) and FREE

I'm a bit confused because I can't found out what depends on what - is this true:

- x11
| > xFree86
| | > (Window Managers)
| | > Enlightenment
| | > Blackbox
| | > AfterStep
| | > Window Maker
| | > fvwm
| | > twm...
| | > (Desktop Environments)
| | > KDE
| | > GNOME
| > Qt

And what about NeXTStep, Gkt++...

What library I should use? Have you any experience with above libraries?

I don't know where to start - can you help me?

bwkaz
01-27-2003, 10:45 PM
The layout of the dependencies should look more like:

XFree86 (which is a free implementation of X11)
|-KDE (if you use it)
| |-kwin
| |-any other window manager
|-Gnome
| |-Any window manager (I'm not sure what the default is)
|-kwin
|-Afterstep
|-twm
|-Enlightenment
|-fvwm
|-Blackbox/Fluxbox/etc.
|-Others

The X11R6 programmer's interface, Xlib
|-Qt, a C++ toolkit
| |-KDE uses Qt, but so do other individual programs
|-Gtk, a C toolkit, and Gtk++, the "next version"
| |-Gtkmm (C++ bindings for Gtk)
| |-Gnome uses Gtk, but again, so do other programs (like the Gimp)
|-Athena (aka Xaw/Xaw3d)
|-Other widget sets There is always a window manager running, but not always a DE.

As far as what you use for your program, you'll want to look at the toolkits, not the window managers. Qt is pretty good, and has great documentation at www.trolltech.com. Gtk is simpler initially I think, and some say it looks better. I don't know about documentation, but it's most likely out there somewhere. They're both stable, and they both have all the common GUI elements (plus Qt has a bunch of nonstandard ones that are really useful, like QGLWidget, an OpenGL-enabled box).

Qt comes with Qt Designer, which is an IDE a lot like VC++. For Gtk, there is Glade, but I've never used it so I'm not quite sure how good it is.