User interface builder
Encyclopedia
A graphical user interface builder (or GUI builder), also known as GUI designer, is a software development tool that simplifies the creation of GUIs
by allowing the designer to arrange widgets using a drag-and-drop
WYSIWYG
editor. Without a GUI builder, a GUI must be built by manually specifying each widget's parameters in code, with no visual feedback until the program is run.
User interfaces are commonly programmed using an event-driven architecture
, so GUI builders also simplify creating event-driven code. This supporting code connects widgets with the outgoing and incoming events
that trigger the functions providing the application logic.
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...
by allowing the designer to arrange widgets using a drag-and-drop
Drag-and-drop
In computer graphical user interfaces, drag-and-drop is the action of selecting a virtual object by "grabbing" it and dragging it to a different location or onto another virtual object...
WYSIWYG
WYSIWYG
WYSIWYG is an acronym for What You See Is What You Get. The term is used in computing to describe a system in which content displayed onscreen during editing appears in a form closely corresponding to its appearance when printed or displayed as a finished product...
editor. Without a GUI builder, a GUI must be built by manually specifying each widget's parameters in code, with no visual feedback until the program is run.
User interfaces are commonly programmed using an event-driven architecture
Event-driven programming
In computer programming, event-driven programming or event-based programming is a programming paradigm in which the flow of the program is determined by events—i.e., sensor outputs or user actions or messages from other programs or threads.Event-driven programming can also be defined as an...
, so GUI builders also simplify creating event-driven code. This supporting code connects widgets with the outgoing and incoming events
Event (computing)
In computing an event is an action that is usually initiated outside the scope of a program and that is handled by a piece of code inside the program. Typically events are handled synchronous with the program flow, that is, the program has one or more dedicated places where events are handled...
that trigger the functions providing the application logic.
Programs
- Antetype
- AutoItAutoItAutoIt is a freeware automation language for Microsoft Windows. In its earliest release, the software was primarily intended to create automation scripts for Microsoft Windows programs but has since grown to include enhancements in both programming language design and overall functionality.With...
- Axure RPAxure RPAxure RP Pro is a wireframing, rapid prototyping, and specification software tool aimed at web and desktop applications. It offers capabilities typically found in diagramming tools like drag and drop placement, resizing, and formatting of widgets...
- CocoaCocoa (API)Cocoa is Apple's native object-oriented application programming interface for the Mac OS X operating system and—along with the Cocoa Touch extension for gesture recognition and animation—for applications for the iOS operating system, used on Apple devices such as the iPhone, the iPod Touch, and...
/OpenStepOpenStepOpenStep was an object-oriented application programming interface specification for an object-oriented operating system that used a non-NeXTSTEP operating system as its core, principally developed by NeXT with Sun Microsystems. OPENSTEP was a specific implementation of the OpenStep API developed...
- Interface BuilderInterface BuilderInterface Builder is a software development application for Apple's Mac OS X operating system. It is part of Xcode , the Apple Developer Connection developer's toolset. Interface Builder allows Cocoa and Carbon developers to create interfaces for applications using a graphical user...
- Interface Builder
- Embedded WizardEmbedded WizardEmbedded Wizard is a graphical user interface tool developed and distributed by TARA Systems GmbH for creating graphical user interface applications mainly for embedded systems. It provides a WYSIWYG front-end for editing graphics, effects and logic of the user interface and generates ANSI C code...
a commercial development tool focussed on user interface applications for embedded systems. - Fast, Light ToolkitFLTKFLTK is a cross-platform GUI library developed by Bill Spitzak and others. Made with 3D graphics programming in mind, it has an interface to OpenGL, but it is also suitable for general GUI programming....
- FLUIDFLUIDFLUID is a graphical editor that is used to produce FLTK source code. FLUID edits and saves its state in text .fl files, which can be edited in a text editor for finer control over display and behavior.After designing the application, FLUID compiles the .fl file into a .cxx file, which defines all...
- FLUID
- GNUstepGNUstepGNUstep is a free software implementation of Cocoa Objective-C libraries , widget toolkit, and application development tools not only for Unix-like operating systems, but also for Microsoft Windows. It is part of the GNU Project.GNUstep features a cross-platform, object-oriented development...
- GormGorm (computing)Gorm is a graphical interface builder application. It is part of the developer tools of GNUstep. Gorm is the equivalent of Interface Builder that was originally found on NeXTSTEP, then OPENSTEP, and finally on Mac OS X.Gorm and Project Center represent the heart of the suite for GNUstep...
- Gorm
- GEMGraphical Environment ManagerGEM was a windowing system created by Digital Research, Inc. for use with the CP/M operating system on the Intel 8088 and Motorola 68000 microprocessors...
- Resource construction setResource construction setThe resource construction set is a GUI Builder for GEM applications. It was written by Digital Research.RCS was widely used on the Atari ST, Atari STe, Atari TT, Atari MEGA ST, Atari MEGA STE and Atari Falcon platforms....
- Interface by Shift Computer
- ORCS (Otto's RCS)
- K-Resource
- Resource Master
- Annabel Junior
- WERCS by HiSoft
- Resource construction set
- GTK+GTK+GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...
- Glade Interface DesignerGlade Interface DesignerGlade 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 .Glade is...
- Gazpacho
- Crow Designer
- SteticSteticStetic is a GTK# GUI designer used in MonoDevelop to develop Forms, or windows, to run on the Mono implementation of the Microsoft.NET framework. It has been included since version 0.1 of Monodevelop. Stetic is very similar to Glade Interface Designer but is integrated into Monodevelop with...
- Glade Interface Designer
- GUI Builder
- IntrinsicsIntrinsicsX Toolkit Intrinsics is a library used in the X Window System. More precisely, it is a library that uses the low-level Xlib library and provides a friendly API to develop X11 software with graphical widgets...
- Justinmind PrototyperJustinmind PrototyperJustinmind Prototyper is an authoring tool for software prototypes and high-fidelity website wireframes. It was created by the European startup Justinmind and is currently on version 4.0 . It offers capabilities typically found in diagramming tools like drag and drop placement, resizing, formatting...
- MotifMotif (widget toolkit)In computing, Motif refers to both a graphical user interface specification and the widget toolkit for building applications that follow that specification under the X Window System on Unix and other POSIX-compliant systems. It emerged in the 1980s as Unix workstations were on the rise, as a...
- Builder Xcessory
- Easymotif
- ixbuild
- UIMX
- X-Designer
- Motif
- LucidChartLucidChartLucidChart is a web-based diagramming software. This software is notable because it is built on web standards such as HTML5 and Javascript and provides real-time collaboration for the creation of graphical content...
- Object PascalObject PascalObject Pascal refers to a branch of object-oriented derivatives of Pascal, mostly known as the primary programming language of Embarcadero Delphi.-Early history at Apple:...
- Lazarus
- fpGUI UI Designer (included with fpGUI ToolkitFpGUIfpGUI, the Free Pascal GUI toolkit, is a cross-platform graphical user interface toolkit developed by Graeme Geldenhuys. fpGUI is open source and free software, licensed under a Modified LGPL license...
)
- OpenWindowsOpenWindowsOpenWindows was a desktop environment for Sun Microsystems workstations which handled SunView, NeWS, and X Window System protocols. OpenWindows was included in later releases of the operating systems SunOS 4 and Solaris, until its removal in Solaris 9 in favor of Common Desktop Environment and...
- guide (GUI builder)
- Pencil Project
- QtQt (toolkit)Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...
- ScaleformScaleformScaleform Corporation is a developer providing middleware for use in the video game industry. Their most recent software, Scaleform GFx, is a vector graphics rendering engine used to display Adobe Flash-based user interfaces, HUDs, and animated textures for games for Microsoft Windows, Mac OS X,...
- Tk (framework)Tk (framework)Tk is an open source, cross-platform widget toolkit that provides a library of basic elements for building a graphical user interface in many different programming languages....
- GUI Builder
- ActiveState KomodoActiveState KomodoKomodo Edit is a highly regarded free text editor for dynamic programming languages. Introduced in January 2007, with the release of version 4.3, Komodo Edit is built on top of the Open Komodo project...
- Visual Tcl (dead project)
- PureTkGUI
- WavemakerWavemakerWaveMaker is an open source software development platform that automates much of the process for creating Java web and cloud applications. WaveMaker provides a visual rapid application development platform and is available as a free open source software download...
open source, browser-based development platform for Ajax development based on Dojo, Spring, Hibernate - Windows Presentation FoundationWindows Presentation FoundationDeveloped by Microsoft, the Windows Presentation Foundation is a computer-software graphical subsystem for rendering user interfaces in Windows-based applications. WPF, previously known as "Avalon", was initially released as part of .NET Framework 3.0. Rather than relying on the older GDI...
- Microsoft Expression Blend
- wxWidgetsWxWidgetswxWidgets is a widget toolkit for creating graphical user interfaces for cross-platform applications. wxWidgets enables a program's GUI code to compile and run on several computer platforms with minimal or no code changes...
- wxGladeWxGladewxGlade is a program for creating wxWidgets GUIs. It can generate layout code for C++, Lisp, Python and Perl.wxGlade is a GUI designer written in Python with the popular GUI toolkit wxPython which helps create wxWidgets/wxPython user interfaces. At the moment it can generate Python, C++, Lisp, Perl...
- wxFormBuilderWxFormBuilderwxFormBuilder is an open source GUI designer application for wxWidgets toolkit, which allows creating cross-platform applications. A streamlined, easy to use interface enables faster development and easier maintenance of software. It is written in C++....
- wxDesigner
- wxGlade
- XForms (toolkit)XForms (toolkit)XForms is a GUI toolkit based on Xlib for the X Window System. It features a rich set of objects, such as buttons, scrollbars, and menus etc. In addition, the library is extensible and new objects can easily be created and added to the library....
- fdesign
- Crank Storyboard SuiteCrank Storyboard SuiteCrank Storyboard Suite is an Eclipse-based graphical user interface builder called Storyboard Designer and a target runtime called Storyboard Engine.- History and development :...
IDE Plugins
- NetBeans GUI design tool, formerly known as Matisse.
- Visual Editor - A free (Eclipse Public License) plugin for Eclipse Eclipse (software)Eclipse is a multi-language software development environment comprising an integrated development environment and an extensible plug-in system...
on MS Windows and Linux (GTK and Motif). - Jigloo - A free for non-commercial use plugin for Eclipse Eclipse (software)Eclipse is a multi-language software development environment comprising an integrated development environment and an extensible plug-in system...
on MS Windows, Linux (gtk) and Mac OSX. - WxSmith - A Code::BlocksCode::BlocksCode::Blocks is a free and open source, cross-platform IDE which supports multiple compilers including GCC and MSVC. It is developed in C++ using wxWidgets as the GUI toolkit. Using a plugin architecture, its capabilities and features are defined by the provided plugins.Currently, Code::Blocks is...
plug-in for RAD editing of wxWidgetsWxWidgetswxWidgets is a widget toolkit for creating graphical user interfaces for cross-platform applications. wxWidgets enables a program's GUI code to compile and run on several computer platforms with minimal or no code changes...
applications.
- Himalia Guilder (Only for Visual Studio 2005; no release since December '06.)
IDEs with GUI builders
- ActiveState KomodoActiveState KomodoKomodo Edit is a highly regarded free text editor for dynamic programming languages. Introduced in January 2007, with the release of version 4.3, Komodo Edit is built on top of the Open Komodo project...
- Adobe Flash Builder
- AnjutaAnjutaAnjuta is an integrated development environment for the C, C++, Java, JavaScript, Python and Vala computer programming languages, written for the GNOME project...
- Ares
- BBjBBjBBj is a software development framework which consists of a dynamic programming language by the same name, an integrated development environment, a GUI forms designer, a Rapid Application Development tool called for generating database-driven graphical applications.BBj is Java-integrated and...
- CodeGear RAD StudioBorland DelphiEmbarcadero Delphi is an integrated development environment for console, desktop graphical, web, and mobile applications.Delphi's compilers use its own Object Pascal dialect of Pascal and generate native code for 32- and 64-bit Windows operating systems, as well as 32-bit Mac OS X and iOS...
(former Borland Development Studio) - Clarion
- Code::BlocksCode::BlocksCode::Blocks is a free and open source, cross-platform IDE which supports multiple compilers including GCC and MSVC. It is developed in C++ using wxWidgets as the GUI toolkit. Using a plugin architecture, its capabilities and features are defined by the provided plugins.Currently, Code::Blocks is...
- Ebase XiEbase XiIn computing, Ebase Xi is a commercial rapid application development platform developed and distributed by Ebase Technology. Ebase Xi provides a software development framework that combines web browser-based user interface development, business process management and data integration into a...
- EclipseEclipse (software)Eclipse is a multi-language software development environment comprising an integrated development environment and an extensible plug-in system...
- GambasGambasGambas is the name of an object-oriented dialect of the BASIC programming language as well as the integrated development environment that accompanies it. Designed to run on Linux and other Unix-like computer operating systems, its name is a recursive acronym for Gambas Almost Means Basic...
- Just BASICJust BASICJust BASIC is a dialect of the highly popular programming language BASIC of the 1970s, for 32-bit computer systems using Windows. It's the freeware version of Liberty BASIC, popular since 1992. Just BASIC development began in 2001; first public release was in 2004...
/Liberty BASICLiberty BASICLiberty BASIC is a commercial computer programming language and integrated development environment . It has an interpreter developed in Smalltalk, which recognizes its own dialect of the BASIC programming language... - KDevelopKDevelopKDevelop is a free software integrated development environment for the KDE Platform on Unix-like computer operating systems. KDevelop includes no compiler. Instead, it uses an external compiler such as gcc to produce executable code....
- LazarusLazarus (software)Lazarus is a free cross-platform IDE which provides a Delphi-like development experience for Pascal and Object Pascal developers. It is developed for, and supported by, the Free Pascal compiler. Since early 2008, Lazarus has been available for Microsoft Windows, several Linux distributions,...
- Microsoft Visual StudioMicrosoft Visual StudioMicrosoft Visual Studio is an integrated development environment from Microsoft. It is used to develop console and graphical user interface applications along with Windows Forms applications, web sites, web applications, and web services in both native code together with managed code for all...
- MonoDevelopMonoDevelopMonoDevelop is an open source integrated development environment for the Linux platform, Mac OS X, and Microsoft Windows, primarily targeted for the development of software that uses both the Mono and Microsoft .NET frameworks...
- MSEide+MSEgui
- MyEclipseMyEclipseMyEclipse is a commercially available Java EE and Ajax IDE created and maintained by the company Genuitec, a founding member of the Eclipse Foundation....
- NetBeansNetBeansNetBeans refers to both a platform framework for Java desktop applications, and an integrated development environment for developing with Java, JavaScript, PHP, Python, Groovy, C, C++, Scala, Clojure, and others...
- Qt CreatorQt CreatorQt Creator is a cross-platform C++ integrated development environment which is part of the Qt SDK. It includes a visual debugger and an integrated GUI layout and forms designer. The editor's features includes syntax highlighting and autocompletion, but not tabs. Qt Creator uses the C++ compiler...
- REALbasicREALbasicRealbasic is the object-oriented dialect of the BASIC programming language used in Real Studio, a programming environment, developed and commercially marketed by Real Software, Inc of Austin, Texas for Mac OS X, Microsoft Windows, 32-bit x86 Linux and the web.- Language features :RB is a strongly...
- SharpDevelopSharpDevelopSharpDevelop is a free and open source integrated development environment for the Microsoft .NET, Mono, Gtk# and Glade# platforms, and supports development in C#, Visual Basic .NET, Boo, F#, IronPython and IronRuby programming languages.It was designed as a free and lightweight alternative to...
- Softwell MakerSoftwell Maker- Softwell Maker :The Softwell Maker is an environment for developing corporate Rich Internet Application . The focus of this tool is high productivity in software development, better interaction between the developers and their customers in the development process, and a technological independence...
- WinDevWinDevWinDev is an integrated development environment fourth generation language , first published by PC SOFT in 1993, which is based upon a run-time engine . It uses a 4GL known as WLanguage. The tools enables a predetermined set of standard forms and algorithms to be used in an automated fashion to...
- wxDev-C++WxDev-C++wxDev-C++ is a free integrated development environment that is based on the popular Dev-C++.There are various features not found in the original Dev-C++. One of these is a visual RAD designer that works like C++ Builder to create wxWidgets applications...
- XCodeXcodeXcode is a suite of tools, developed by Apple, for developing software for Mac OS X and iOS. Xcode 4.2, the latest major version, is available on the Mac App Store for free for Mac OS X 10.7 , and on the Apple Developer Connection website for free to registered developers Xcode is a suite of tools,...
(Contains Interface Builder, formally a separate application)