GUI widget

GUI widget
Various widgets.
Example of enabled and disabled widgets; the frame at the bottom is disabled.

In computer programming, a widget (or control) is an element of a graphical user interface (GUI) that displays an information arrangement changeable by the user, such as a window or a text box. The defining characteristic of a widget is to provide a single interaction point for the direct manipulation of a given kind of data. In other words, widgets are basic visual building blocks which, combined in an application, hold all the data processed by the application and the available interactions on this data.

Contents

History and use

A family of common reusable widgets has evolved for holding general information based on the Palo Alto Research Center Inc. research for the Xerox Alto User Interface. Different implementations of these generic widgets are often packaged together in widget toolkits, which programmers use to build graphical user interfaces (GUIs). Most operating systems include a set of ready-to-tailor widgets that a programmer can incorporate in an application, specifying how it is to behave. Each type of widgets generally is defined as a class by object-oriented programming (OOP). Therefore, many widgets are derived from class inheritance.

In the context of an application, a widget may be enabled or disabled at a given point in time. An enabled widget has the capacity to respond to events, such as keystrokes or mouse actions. A widget that cannot respond to such events is considered disabled. The appearance of disabled widget is typically different from an enabled widget; the disabled widget may be drawn in a lighter color, or may be visually obscured in some way. See the image to the right for an example.

Widgets are sometimes qualified as virtual to distinguish them from their physical counterparts, e.g. virtual buttons that can be clicked with a mouse cursor, vs. physical buttons that can be pressed with a finger.

A related (but different) concept is the desktop widget, a small specialized GUI application that provides some visual information and/or easy access to frequently used functions such as clocks, calendars, news aggregators, calculators and desktop notes. These kinds of widgets are hosted by a widget engine.

Etymology

“Widget” entered American English around 1920 as a generic term for any useful device, particularly a product manufactured for sale. In computer use it has been borrowed as a shortened form of “window gadget”, and as such was first applied to user interface elements during Project Athena in 1988. The word was chosen because "all other common terms were overloaded with inappropriate connotations" and – since the project's Intrinsics toolkit associated each widget with a window of the underlying X Window System – because of the common prefix with the word window.[1]

List of common generic widgets

  • Selection and display of collections
    • Button – control which can be clicked upon to perform an action
      • Check box – control which can be clicked upon to select or deselect an option. Multiple check boxes in a group may be selected
      • Radio button – control which can be clicked upon to select an option. Only one radio button in a group may be selected
    • Slider – control which can be moved up and down or right and left to select a value
    • List box
    • Spinner – control which has up and down buttons to scroll through a range of values
    • Drop-down list
    • Menu – control which can be clicked upon to choose a selection to activate
      • Context menu – a type of menu whose contents depend on the context or state in effect when the menu is invoked
      • Pie menu
      • Ribbon
    • Menu bar
    • Toolbar
    • Combo box (text box with attached menu or List box)
    • Icon
    • Tree view
    • Grid view

See also

  • Graphical user interface elements
  • Metawidgets are widgets for controlling the operation of other widgets within a GUI.
  • Widget engine for mostly unrelated, physically inspired "widgets"
  • Widget toolkit for the implementations of widget programming interfaces

References

  1. ^ Ralph R. Swick, Mark S. Ackerman (1988). "The X Toolkit: More Bricks for Building User-Interfaces, or, Widgets for Hire". USENIX Winter. pp. 221–228. http://www-ftp.lip6.fr/pub/distributed_systems/athena/xtk.PS.gz. Retrieved 2007-01-03. 

Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • Widget — may refer to: * Widget (economics), a placeholder name for an object or, more specifically, a mechanical or other manufactured device * Widget (beer), a coil like device placed in the bottom of cans and bottles of beer to aid in the generation of …   Wikipedia

  • Widget engine — Not to be confused with widget toolkit. In computer software, a widget engine is a software service available to users for running and displaying applets on a graphical user interface, such as that of the desktop. The widget model in widget… …   Wikipedia

  • Widget toolkit — A widget toolkit, widget library, or GUI toolkit is a set of widgets for use in designing applications with graphical user interfaces (GUIs). The toolkit itself is a piece of software that is generally provided with an operating system, windowing …   Wikipedia

  • GUI software testing — In computer science, GUI software testing is the process of testing a product that uses a graphical user interface, to ensure it meets its written specifications. This is normally done through the use of a variety of test cases.Testing GUI… …   Wikipedia

  • Widget (GUI) — Ein Steuerelement (engl. widget oder control) ist ein Interaktionselement in einer grafischen Benutzeroberfläche (GUI), beispielsweise eine Schaltfläche oder eine Bildlaufleiste. Die englische Bezeichnung widget ist ein Kofferwort, gebildet aus… …   Deutsch Wikipedia

  • Widget — En informática, un widget es una pequeña aplicación o programa, usualmente presentado en archivos o ficheros pequeños que son ejecutados por un motor de widgets o Widget Engine. Entre sus objetivos están dar fácil acceso a funciones… …   Wikipedia Español

  • GUI — KDE 4.2 – eine Benutzeroberfläche für Unix Betriebssysteme Eine grafische Benutzeroberfläche ist eine Software Komponente, die dem Benutzer eines Computers die Interaktion mit der Maschine über grafische Symbole erlaubt. Die Darstellungen und… …   Deutsch Wikipedia

  • Widget — Un widget es un componente gráfico, o control, con el cual el usuario interactúa, como por ejemplo, una ventana o una caja de texto. Los widgets a veces se califican de virtuales para distinguirlos de sus equivalentes físicos. Por ejemplo: los… …   Enciclopedia Universal

  • Widget toolkit — Toolkit oder auch Toolbox (englisch für „Werkzeugsatz“) ist ein Begriff aus der elektronischen Datenverarbeitung. Er bezeichnet allgemein eine Sammlung von Bibliotheken, Klassen und Schnittstellen, die das Erstellen von Computerprogrammen… …   Deutsch Wikipedia

  • Software widget — A software widget is a generic type of software application comprising portable code intended for one or more different software platforms. The term often implies that either the application, user interface, or both, are light, meaning relatively …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”