Glade Interface Designer
Glade Interface Designer is a graphical user interface builder for GTK, with additional components for GNOME. In its third version, Glade is programming language-independent, and does not produce code for events, but rather an XML file that is then used with an appropriate binding. See List of language bindings for GTK for the available ones.
Glade is free and open-source software distributed under the GNU General Public License.
History and development
The first Glade release, version 0.1, was made on 18 April 1998.Glade 3 was released on 12 August 2006. According to the Glade Web site, the most noticeable differences for the end-user are:
- Undo and redo support in all operations.
- Support for multiple open projects.
- Removal of code generation.
- Contextual help system with Devhelp
- Catalogs of "pluggable" widgets. This means that external libraries can provide their set of widgets at runtime and Glade will detect them. In fact, Glade 3 supports only standard GTK widgets; GNOME UI and DB widgets are provided separately.
- The various Glade Tools are implemented as widgets. This allows for easier integration in like Anjuta, and makes it easier to change the Glade UI.
- Glade 3.8: That includes all support for GTK+ up till version 2.24. This version is to serve as a decent migration path for older projects migrating to GTK+ 3.0.
- Glade 3.10: That includes support only for widgets that are still included in GTK+ 3.0 and additionally drops support for Libglade.
GtkBuilder
GtkBuilder is the XML format that the Glade Interface Designer uses to save its forms. These documents can then be used in conjunction with the GtkBuilder object to instantiate the form using GTK. GladeXML is the XML format that was used with conjunction with libglade, which is now deprecated.Glade Interface Designer automatically generates all the source code for a graphical control element.
The "Gtk.Builder class" allows user interfaces to be designed without writing code. The class describes the interface in an Extensible Markup Language file and then loads the XML description at runtime and creating the objects automatically. The Glade Interface Designer allows creation of the user interface in a WYSIWYG manner. The description of the user interface is independent from the programming language being used.
Code sketching
Code sketchers are software applications that help a user create source code from a GladeXML file. Most code sketchers create source code which uses libglade and a GladeXML file to create the GUI. Some sketchers are able to create raw code that does not need the GladeXML file. The table below compares basic information about GladeXML code sketcher packages.Name | Author | Programming languages | Software license |
Daniel Elphick | Eiffel | Eiffel Forum License | |
Christopher Pax and Charles Edward Pax | Perl, Python, Ruby | GPLv3 | |
Bill Allen | Python | LGPL | |
Masao Mutoh | Ruby | ||
Sandino Flores Moreno | Python | LGPL | |
Thomas Freiherr | FreeBASIC | GPLv3 | |
Arnel Borja | FreeBASIC | GPLv3 | |
F. J. Fabien | Ada | MIT License |