Glade Interface Designer
   HOME

TheInfoList



OR:

Glade Interface Designer is a
graphical user interface builder A graphical user interface builder (or GUI builder), also known as GUI designer or sometimes RAD IDE, is a software development tool that simplifies the creation of GUIs by allowing the designer to arrange graphical control elements (often cal ...
for
GTK GTK (formerly GIMP ToolKit and GTK+) is a free software cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both Free software, free and ...
, with additional components for
GNOME A gnome () is a mythological creature and diminutive spirit in Renaissance magic and alchemy, introduced by Paracelsus in the 16th century and widely adopted by authors, including those of modern fantasy literature. They are typically depict ...
. In its third version, Glade is
programming language A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
–independent, and does not produce code for events, but rather an
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding electronic document, documents in a format that is both human-readable and Machine-r ...
file that is then used with an appropriate binding (such as GtkAda for use with the Ada programming language). Glade is
free and open-source software Free and open-source software (FOSS) is software available under a license that grants users the right to use, modify, and distribute the software modified or not to everyone free of charge. FOSS is an inclusive umbrella term encompassing free ...
distributed under the
GNU General Public License The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first ...
. Glade's development and maintenance ceased in 2022, with the final release on 10 August 2022.


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 Most of the difference is in the internals. Glade-3 is a complete rewrite, in order to take advantage of the new features of GTK+ 2 and the
GObject The GLib Object System, or GObject, is a free software, free software library providing a portable object system and transparent cross-language interoperability. GObject is designed for use both directly in C (programming language), C programs ...
system (Glade-3 was started when Glade-1 hadn't yet been ported to GTK+ 2). Therefore, the Glade-3 codebase is smaller and allows new interesting things, including: * 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 (palette, editor, etc.) are implemented as widgets. This allows for easier integration in like Anjuta, and makes it easier to change the Glade UI. On 5 April 2011, two parallel installable stable Glade versions were released: * 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. On 11 June 2015 Glade 3.19.0 was released. It depends at least on GTK+ 3.16.0. Among many bug fixes this version is the first to support the widgets GtkStack, GtkHeaderBar and GtkSidebar.


GtkBuilder

''GtkBuilder'' is the
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding electronic document, documents in a format that is both human-readable and Machine-r ...
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 GTK (formerly GIMP ToolKit and GTK+) is a free software cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both Free software, free and ...
. ''GladeXML'' is the
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding electronic document, documents in a format that is both human-readable and Machine-r ...
format that was used with conjunction with libglade, which is now deprecated. Glade Interface Designer automatically generates all the
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
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 Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. The Wor ...
(XML) 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 In computing, WYSIWYG ( ), an acronym for what you see is what you get, refers to software that allows content to be edited in a form that resembles its appearance when printed or displayed as a finished product, such as a printed document, web ...
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.


Cambalache

Cambalache ( /kambaˈlat͡ʃe/) is a
free and open-source Free and open-source software (FOSS) is software available under a Software license, license that grants users the right to use, modify, and distribute the software modified or not to everyone free of charge. FOSS is an inclusive umbrella term ...
rapid application development (RAD) tool designed for creating
user interfaces In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine fro ...
with GTK 4. It is designed as a successor to Glade, with a focus on supporting the GTK 4 library while maintaining compatibility with GTK 3. Cambalache is geared toward developers working within the GNOME ecosystem. Cambalache's
design A design is the concept or proposal for an object, process, or system. The word ''design'' refers to something that is or has been intentionally created by a thinking agent, and is sometimes used to refer to the inherent nature of something ...
emphasizes the Model-View-Controller (MVC) architecture, ensuring separation between the UI components and the
business logic In computer software, business logic or domain logic is the part of the program that encodes the real-world business rules that determine how data can be created, stored, and changed. It is contrasted with the remainder of the software that might ...
of applications.

The UI editing workspace is driven by a separate
process A process is a series or set of activities that interact to produce a result; it may occur once-only or be recurrent or periodic. Things called a process include: Business and management * Business process, activities that produce a specific s ...
called Merengue which interfaces with Casilda, a Wayland compositor embedded in a
GTK GTK (formerly GIMP ToolKit and GTK+) is a free software cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both Free software, free and ...
widget. This architectural choice improves stability by separating the
user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine fro ...
preview from the main application. This separation enables the system to handle different
GTK GTK (formerly GIMP ToolKit and GTK+) is a free software cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both Free software, free and ...
versions efficiently, ensuring the rendered UI accurately mirrors the application's appearance and behavior. File:Cambalache in dark mode.png File:Camabalache's interface.png


See also

* List of language bindings for GTK *
Interface Builder Interface Builder is a software development application for Apple's macOS operating system. It is part of Xcode (formerly Project Builder), the Apple Developer developer's toolset. Interface Builder allows Cocoa and Carbon developers to crea ...
*
Microsoft Blend Microsoft Blend for Visual Studio (formerly Microsoft Expression Blend) is a User interface builder, user interface design tool developed and sold by Microsoft for creating graphical interfaces for web and desktop applications that blend the fea ...
* Qt Designer * XUL


References


External links

* *
Old binaries for OS X
{{GUI builders Free computer libraries GNOME Developer Tools GTK Software that uses GTK User interface builders User interface markup languages