Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Graphical widget
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Usage<span class="anchor" id="greyed out"></span>== [[Image:GUI Frame.svg|thumb|upright|Example of enabled and disabled widgets; the [[frame (GUI)|frame]] at the bottom is disabled, they are grayed out.]] Any widget displays an information arrangement changeable by the user, such as a [[window (computing)|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. GUI widgets are graphical elements used to build the human-machine-interface of a program. GUI widgets are implemented like [[software component]]s. Widget toolkits and software frameworks, like e.g. [[GTK+]] or [[Qt (software)|Qt]], contain them in [[software library|software libraries]] so that programmers can use them to build GUIs for their programs. A family of common reusable widgets has evolved for holding general information based on the [[PARC (company)|Palo Alto Research Center Inc.]] research for the [[Xerox Alto]] User Interface. Various implementations of these generic widgets are often packaged together in [[widget toolkit]]s, 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.<ref>{{Cite web|title=What is widget? - Definition from WhatIs.com|url=https://whatis.techtarget.com/definition/widget|access-date=2020-06-03|website=WhatIs.com|language=en}}</ref> Each type of widget generally is defined as a class by object-oriented programming ([[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 a widget typically differs depending on whether it is enabled or disabled; when disabled, a widget may be drawn in a lighter color ("'''grayed out'''") or be obscured visually in some way. See the adjacent image for an example. The benefit of disabling unavailable controls rather than hiding them entirely is that users are shown that the control exists but is currently unavailable (with the implication that changing some other control may make it available), instead of possibly leaving the user uncertain about where to find the control at all. On pop-up dialogues, buttons might appear greyed out shortly after appearance to prevent accidental clicking or inadvertent double-tapping. Widgets are sometimes qualified as ''[[Virtuality|virtual]]'' to distinguish them from their physical counterparts, e.g. [[button (computing)|''virtual'' buttons]] that can be clicked with a [[pointer (computing WIMP)|pointer]], vs. physical [[button (control)|buttons]] that can be pressed with a finger (such as those on a [[computer mouse]]). 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]].
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)