Graphical Interface Development with Glade2
Author: Rikke D. Giles
Copyright: 2003, Rikke D. Giles
Glade is written by Damon Chaplin
Glade is a program designed to enable the quick building of graphical user
interfaces for GTK+ and Gnome applications. However, it can be used with any
desktop environment in linux, as long as the gtk+ and/or gnome libaries are
installed.
Glade can be downloaded from glade.gnome.org. It is also included with
all the major distributions of Linux in various formats. The latest version
of Glade, as of April 2003, is 1.1.3. It is supposed to be the last version
before Glade 2.0.
Glade is used in two ways:
- To create the GUI with Glade itself
- To load *.glade files (xml) with libglade and create the GUI on the fly
- Glade develops the GUI and associated code
- It creates empty callbacks and signal handlers to link the frontend GUI
with the backend of the application
- Glade doesn't develop the 'backend' of your application
- Glade is not a complete IDE, in other words it does not include a
compiler, editor or debugger. It is used in conjunction with these, for
example with gvim as the editor, gcc as the compiler and gdb as the debugger.
There are several IDEs for Linux that work with, or attempt to work with
Glade. Anjuta is one.
- Frontend/Gui: The graphical interface that a user sees and interacts
with in a windowing environment. The 'eye candy'.
- Backend/Guts: The part of the application that actual does something,
manipulates input from the user, provides output, does computations etc. By
and large this part of the application should be completely invisible to
the user.
- Widget: One of several or many elements used to build a window. It can
be as simple as a label, or as complex as a multi-limbed data tree.
- Callback/Signal Handler/Signal: The widget will emit a 'signal'
depending upon certain user actions (a mouse button press on the X in the
upper right hand corner of the window, for example). The signal handler
or callback is the function that responds to that signal. It is managed
by gtk_main(). As a developer with Glade, all you have to do is tell
that callback what to do if that signal is emitted. Note that this is not
always as easy as it sounds.