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 user interface
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!
{{Short description|User interface allowing interaction through graphical icons and visual indicators}} {{Redirect|GUI|other uses|Gui (disambiguation)}} {{More citations needed|date=May 2022}} [[File:Example of a GUI.png|thumb|240px|A graphical user interface (GUI) showing various elements: radio buttons, checkboxes, and other elements]] A '''graphical user interface''', or '''GUI'''{{efn|{{IPAc-en|ˈ|ɡ|u:|i}},<ref>{{cite book |last=Wells |first=John |author-link=John C. Wells |title=Longman Pronunciation Dictionary |publisher=Pearson Longman |edition=3rd |year=2009 |isbn=978-1-4058-8118-0}}</ref><ref>{{Cite web|url=https://dictionary.cambridge.org/us/pronunciation/english/gui|title=How to pronounce GUI in English|website=Cambridge Dictionary |language=en-US|access-date=2020-04-03}}</ref> {{Respell|GOO|ee}}; {{IPAc-en|ˈ|dʒ|iː|j|uː|aɪ}}, {{Respell|JEE|YOO|AI}}<ref>{{Cite MW|GUI|access-date=2024-12-07}}</ref>}}, is a form of [[user interface]] that allows [[user (computing)|users]] to [[human–computer interaction|interact with electronic devices]] through [[Graphics|graphical]] [[icon (computing)|icons]] and visual indicators such as [[secondary notation]]. In many applications, GUIs are used instead of [[text-based user interface|text-based UI]]s, which are based on typed command labels or text navigation. GUIs were introduced in reaction to the perceived steep [[learning curve]] of [[command-line interface]]s (CLIs),<ref name="computerhope.com">{{Cite web|url=https://www.computerhope.com/issues/ch000619.htm|title=Command line vs. GUI|website=Computer Hope |language=en|access-date=2020-04-03}}</ref><ref>{{cite web |date=2007-03-12 |url=https://learn.microsoft.com/en-us/archive/blogs/mscom/the-gui-versus-the-command-line-which-is-better-part-1 |title=The GUI versus the Command Line: Which is better? (Part 1) |department=Microsoft.com Operations |website=[[Microsoft Learn]] |access-date=2024-01-30 }}</ref><ref>{{Cite web |date=2007-03-26 |url=https://learn.microsoft.com/en-us/archive/blogs/mscom/the-gui-versus-the-command-line-which-is-better-part-2 |title=The GUI versus the Command Line: Which is better? (Part 2) |department=Microsoft.com Operations |website=[[Microsoft Learn]] |access-date=2024-01-30}}</ref> which require commands to be typed on a [[computer keyboard]]. The actions in a GUI are usually performed through [[direct manipulation interface|direct manipulation]] of the graphical elements.<ref>{{Cite web|url=https://www.sciencedaily.com/terms/graphical_user_interface.htm|title=Graphical user interface|website=ScienceDaily|language=en|access-date=2019-05-09}}</ref><ref>Levy, Steven. "[https://www.britannica.com/technology/graphical-user-interface Graphical User Interface (GUI)]". Britannica.com. Retrieved 2019-06-12.</ref><ref>{{cite encyclopedia |url=https://www.pcmag.com/encyclopedia/term/44001/gui |title=GUI |access-date=2019-06-12|encyclopedia=PC Magazine Encyclopedia. pcmag.com}}</ref> Beyond computers, GUIs are used in many handheld [[mobile device]]s such as [[MP3]] players, portable media players, gaming devices, [[smartphone]]s and smaller household, office and [[Distributed control system|industrial controls]]. The term ''GUI'' tends not to be applied to other lower-[[display resolution]] [[User interface#Types|types of interfaces]], such as [[video game]]s (where [[Heads-up display (video games)|head-up displays]] (''HUDs'')<ref>{{cite web|url=http://www.gamasutra.com/features/20060203/wilson_01.shtml|title=Off with Their HUDs!: Rethinking the Heads-Up Display in Console Game Design|author=Greg Wilson|year=2006|work=[[Gamasutra]]|url-status=dead|archive-url=https://web.archive.org/web/20100119031340/http://www.gamasutra.com/features/20060203/wilson_01.shtml|archive-date=January 19, 2010|access-date=February 14, 2006}}</ref> are preferred), or not including flat screens like [[volumetric display]]s<ref>{{cite web |url=http://www.linfo.org/gui.html |title=GUI definition |access-date=12 November 2008 |work=Linux Information Project |date=October 1, 2004}}</ref> because the term is restricted to the scope of [[Two-dimensional Euclidean space|2D]] display screens able to describe generic information, in the tradition of the [[computer science]] research at the [[PARC (company)|Xerox Palo Alto Research Center]]. == GUI and interaction design == [[File:Linux kernel INPUT OUPUT evdev gem USB framebuffer.svg|thumb|350px|The GUI is presented (displayed) on the computer screen. It is the result of processed user input and usually the main interface for human-machine interaction. The [[touch user interface|touch UI]]s popular on small mobile devices are an overlay of the visual output to the visual input.]] Designing the visual composition and temporal behavior of a GUI is an important part of [[software application]] programming in the area of [[human–computer interaction]]. Its goal is to enhance the efficiency and ease of use for the underlying logical design of a stored [[computer program|program]], a design discipline named ''[[usability]]''. Methods of user-centered design are used to ensure that the visual language introduced in the design is well-tailored to the tasks. The visible graphical interface features of an application are sometimes referred to as ''chrome'' or ''GUI''.<ref>{{Cite web|url=http://www.catb.org/~esr/jargon/html/C/chrome.html|title=chrome|website=www.catb.org|access-date=2020-04-03}}</ref><ref>{{cite web|url=http://www.useit.com/alertbox/ui-chrome.html|title=Browser and GUI Chrome|author=Nielsen, Jakob |date=January 29, 2012|website=Nngroup|access-date=May 20, 2012|archive-date=August 25, 2012|archive-url=https://web.archive.org/web/20120825022734/http://www.useit.com/alertbox/ui-chrome.html|url-status=dead}}</ref><ref>{{Cite journal|last=Martinez|first=Wendy L.|date=2011-02-23|title=Graphical user interfaces: Graphical user interfaces|url=https://onlinelibrary.wiley.com/doi/10.1002/wics.150|journal=Wiley Interdisciplinary Reviews: Computational Statistics|language=en|volume=3|issue=2|pages=119–133|doi=10.1002/wics.150|s2cid=60467930 |url-access=subscription}}</ref> Typically, users interact with information by manipulating visual [[Widget (GUI)|widgets]] that allow for interactions appropriate to the kind of data they hold. The widgets of a well-designed interface are selected to support the actions necessary to achieve the goals of users. A [[model–view–controller]] allows flexible structures in which the interface is independent of and indirectly linked to application functions, so the GUI can be customized easily. This allows users to select or design a different ''skin'' or ''[[theme (computing)|theme]]'' at will, and eases the designer's work to change the interface as user needs evolve. Good GUI design relates to users more, and to system architecture less. Large widgets, such as [[Window (computing)|windows]], usually provide a frame or container for the main presentation content such as a web page, email message, or drawing. Smaller ones usually act as a user-input tool. A GUI may be designed for the requirements of a [[vertical market]] as application-specific GUIs. Examples include [[automated teller machine]]s (ATM), [[point of sale]] (POS) touchscreens at restaurants,<ref>Bisson, Giselle. [http://www.atarimagazines.com/startv2n6/gettingdowntobusiness.html "The ViewTouch restaurant system".]</ref> [[self-checkout|self-service checkouts]] used in a retail store, airline self-ticket and check-in, information kiosks in a public space, like a train station or a museum, and monitors or control screens in an embedded industrial application which employ a [[real-time operating system]] (RTOS). [[Mobile phone|Cell phones]] and handheld game systems also employ application specific touchscreen GUIs. Newer automobiles use GUIs in their navigation systems and multimedia centers, or navigation multimedia center combinations. == Examples == <gallery mode=nolines widths="180px" heights="180" caption="Sample graphical environments"> File:GNOME Shell.png|[[GNOME Shell]] File:KDE_Plasma_6.3_desktop_screenshot.webp|[[KDE Plasma 6]] File:Ubuntu Mate 18.04.1 with MATE 1.20.1.png|[[MATE (software)|MATE]] File:Wayland demo 2.png|Windows on an example [[Wayland (display server protocol)#Wayland compositors|Wayland compositor]] File:XFCE-4.12-Desktop-standard.png|[[Xfce]] File:E17 bw screenshot.png|[[Enlightenment (software)|Enlightenment]] File:Sugar-home-view-0.82.jpg|[[Sugar (software)|Sugar]] File:X-Window-System.png|A [[twm]] [[X Window System]] environment File:Dwm-shot.png|The [[dwm]] [[tiling window manager]] File:Linux Mint 19.1 "Tessa" (Cinnamon).png|[[Cinnamon (desktop environment)|Cinnamon]] File:Phosh 0.14.0.png|[[Phosh]] </gallery> == Components == [[File:Schema of the layers of the graphical user interface.svg|thumb|300px|Layers of a GUI based on a [[windowing system]]]] {{Main|List of graphical user interface elements}} {{Further|WIMP (computing)|Window manager|Desktop environment}} A GUI uses a combination of technologies and devices to provide a platform that users can interact with, for the tasks of gathering and producing information. A series of elements conforming a [[visual language]] have evolved to represent information stored in computers. This makes it easier for people with few computer skills to work with and use computer software. The most common combination of such elements in GUIs is the ''windows, icons, text fields, canvases, menus, pointer'' ([[WIMP (computing)|WIMP]]) paradigm, especially in [[personal computer]]s.<ref>{{Cite web|title=What is a graphical user interface (GUI)?|url=https://www.ionos.com/digitalguide/websites/web-development/what-is-a-gui/|access-date=2022-02-25|website=IONOS Digitalguide|date=14 September 2020 |language=en}}</ref> The WIMP style of interaction uses a virtual [[input device]] to represent the position of a [[pointing device|pointing device's interface]], most often a [[computer mouse|mouse]], and presents [[information]] organized in windows and represented with [[Icon (computing)|icons]]. Available commands are compiled together in menus, and actions are performed making gestures with the pointing device. A [[window manager]] facilitates the interactions between windows, [[Application software|applications]], and the [[windowing system]]. The windowing system handles hardware devices such as pointing devices, graphics hardware, and positioning of the pointer. In [[personal computer]]s, all these elements are modeled through a [[desktop metaphor]] to produce a simulation called a [[desktop environment]] in which the display represents a desktop, on which documents and folders of documents can be placed. Window managers and other software combine to simulate the desktop environment with varying degrees of realism. Entries may appear in a list to make space for text and details, or in a grid for compactness and larger icons with little space underneath for text. Variations in between exist, such as a list with multiple columns of items and a grid of items with rows of text extending sideways from the icon.<ref>{{cite web |last1=Babich |first1=Nick |title=Mobile UX Design: List View and Grid View |url=https://uxplanet.org/mobile-ux-design-list-view-and-grid-view-8f129b56fd5b |website=Medium |access-date=4 September 2021 |language=en |date=30 May 2020}}</ref> Multi-row and multi-column layouts commonly found on the web are "shelf" and "waterfall". The former is found on [[image search engine]]s, where images appear with a fixed height but variable length, and is typically implemented with the CSS property and parameter <code>display: inline-block;</code>. A waterfall layout found on [[Imgur]] and [[TweetDeck]] with fixed width but variable height per item is usually implemented by specifying <code>column-width:</code>. == Post-WIMP interface == {{Main|Post-WIMP}} Smaller app mobile devices such as [[personal digital assistant]]s (PDAs) and [[smartphone]]s typically use the WIMP elements with different unifying metaphors, due to constraints in space and available input devices. Applications for which WIMP is not well suited may use newer [[interaction technique]]s, collectively termed ''[[post-WIMP]]'' UIs.<ref>{{cite journal | url=https://doi.org/10.1109/38.814559 | doi=10.1109/38.814559 | title=Beyond WIMP | year=2000 | last1=Van Dam | first1=A. | journal=IEEE Computer Graphics and Applications | volume=20 | pages=50–51 | url-access=subscription }}</ref> As of 2011, some touchscreen-based operating systems such as Apple's [[iOS]] ([[iPhone]]) and [[Android (operating system)|Android]] use the class of GUIs named post-WIMP. These support styles of interaction using more than one finger in contact with a display, which allows actions such as pinching and rotating, which are unsupported by one pointer and mouse.<ref>[https://www.cs.tufts.edu/~jacob/papers/chi08.pdf "Reality-Based Interaction: A Framework for Post-WIMP Interfaces".]</ref> == Interaction == [[Human interface device]]s, for the efficient interaction with a GUI include a [[computer keyboard]], especially used together with [[keyboard shortcut]]s, [[pointing device]]s for the [[Cursor (user interface)|cursor]] (or rather [[Pointer (user interface)|pointer]]) control: [[mouse (computing)|mouse]], [[pointing stick]], [[touchpad]], [[trackball]], [[joystick]], [[virtual keyboard]]s, and [[head-up display]]s (translucent information devices at the eye level). There are also actions performed by programs that affect the GUI. For example, there are components like [[inotify]] or [[D-Bus]] to facilitate communication between computer programs. == History == {{Main|History of the graphical user interface}} === Early efforts === [[Ivan Sutherland]] developed [[Sketchpad]] in 1963, widely held as the first graphical [[computer-aided design]] program. It used a [[light pen]] to create and manipulate objects in engineering drawings in realtime with coordinated graphics. In the late 1960s, researchers at the [[SRI International|Stanford Research Institute]], led by [[Douglas Engelbart]], developed the [[NLS (computer system)|On-Line System]] (NLS), which used text-based [[hyperlink]]s manipulated with a then-new device: the [[Computer mouse|mouse]]. (A 1968 demonstration of NLS became known as "[[The Mother of All Demos]]".) In the 1970s, Engelbart's ideas were further refined and extended to graphics by researchers at [[Xerox PARC]] and specifically [[Alan Kay]], who went beyond text-based hyperlinks and used a GUI as the main interface for the [[Smalltalk|Smalltalk programming language]], which ran on the [[Xerox Alto]] [[computer]], released in 1973. Most modern general-purpose GUIs are derived from this system. The Xerox PARC GUI consisted of graphical elements such as [[window (computing)|windows]], [[menu (computing)|menus]], [[radio button]]s, and [[check box]]es. The concept of [[icon (computing)|icons]] was later introduced by [[David Canfield Smith]], who had written a thesis on the subject under the guidance of Kay.<ref name="MIT">Lieberman, Henry. [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.125.4685&rep=rep1&type=pdf "A Creative Programming Environment, Remixed"], MIT Media Lab, Cambridge.</ref><ref name="Nader">Salha, Nader. [http://www.sierke-verlag.de/shop/index.php/aesthetics-and-art-in-the-early-development-of-human-computer-interfaces-648.html "Aesthetics and Art in the Early Development of Human-Computer Interfaces"] {{Webarchive|url=https://web.archive.org/web/20200807092951/https://www.sierke-verlag.de/shop/index.php/aesthetics-and-art-in-the-early-development-of-human-computer-interfaces-648.html |date=2020-08-07 }}, October 2012.</ref><ref name="Pygmalion">Smith, David (1975). [https://books.google.com/books/about/Pygmalion.html?id=mihHAAAAIAAJ "Pygmalion: A Creative Programming Environment".]</ref> The PARC GUI employs a [[pointing device]] along with a keyboard. These aspects can be emphasized by using the alternative term and acronym for ''windows, icons, menus, [[pointing device]]'' ([[WIMP (computing)|WIMP]]). This effort culminated in the 1973 [[Xerox Alto]], the first computer with a GUI, though the system never reached commercial production. The first commercially available computer with a GUI was the 1979 [[PERQ|PERQ workstation]], manufactured by Three Rivers Computer Corporation. Its design was heavily influenced by the work at Xerox PARC. In 1981, Xerox eventually commercialized the ideas from the Alto in the form of a new and enhanced system – the Xerox 8010 Information System – more commonly known as the [[Xerox Star]].<ref>[http://www.catb.org/~esr/writings/taouu/html/ch02s05.html The first GUIs<!-- Bot generated title -->]</ref><ref>[https://www.youtube.com/watch?v=Cn4vC80Pv6Q Xerox Star user interface demonstration, 1982]</ref> These early systems spurred many other GUI efforts, including [[Lisp machine]]s by [[Symbolics]] and other manufacturers, the [[Apple Lisa]] (which presented the concept of [[menu bar]] and [[Window manager|window controls]]) in 1983, the [[Apple Computer|Apple]] [[Macintosh 128K]] in 1984, and the [[Atari ST]] with [[Digital Research]]'s [[Graphics Environment Manager|GEM]], and Commodore [[Amiga]] in 1985. [[Visi On]] was released in 1983 for the [[IBM PC compatible]] computers, but was never popular due to its high hardware demands.<ref>{{cite web|url=http://toastytech.com/guis/vision.html|title=VisiCorp Visi On|quote=The Visi On product was not intended for the home user. It was designed and priced for high-end corporate workstations. The hardware it required was quite a bit for 1983. It required a minimum of 512k of ram and a hard drive (5 megs of space).}}</ref> Nevertheless, it was a crucial influence on the contemporary development of [[Microsoft Windows]].<ref>{{cite book|url=https://books.google.com/books?id=oaFAwSLi2GUC&pg=PA52|title=A Windows Retrospective, PC Magazine Jan 2009|publisher=Ziff Davis|date=January 2009}}</ref> Apple, Digital Research, IBM and Microsoft used many of Xerox's ideas to develop products, and IBM's [[IBM Common User Access|Common User Access]] specifications formed the basis of the GUIs used in Microsoft Windows, IBM [[OS/2]] [[Presentation Manager]], and the Unix [[Motif (software)|Motif]] toolkit and [[window manager]]. These ideas evolved to create the interface found in current versions of Microsoft Windows, and in various [[desktop environment]]s for [[Unix-like]] [[operating system]]s, such as macOS and [[Linux]]. Thus most current GUIs have largely common idioms. [[File:Apple Lisa Computer.jpg|thumb|An Apple Lisa (1983) demonstrating the Lisa Office System (LisaOS), which featured Apple Computer's first commercially available GUI]] === Popularization === [[File:Hewlett Packard 200LX.jpg|thumb|[[System Manager (HP LX)|HP LX System Manager]] running on a [[HP 200LX]]]] GUIs were a hot topic in the early 1980s. The [[Apple Lisa]] was released in 1983, and various windowing systems existed for [[DOS]] operating systems (including [[Graphics Environment Manager|PC GEM]] and [[GEOS (16-bit operating system)|PC/GEOS]]). Individual applications for many platforms presented their own GUI variants.<ref>{{cite web|url=http://toastytech.com/guis/magdesk.html|title=Magic Desk I for Commodore 64}}</ref> Despite the GUI's advantages, many reviewers questioned the value of the entire concept,<ref>{{cite news|url=https://www.nytimes.com/1984/12/25/science/value-of-windowing-is-questioned.html|title=Value of Windowing is Questioned|newspaper=The New York Times|date=1984-12-25|last1=Sandberg-Diment|first1=Erik}}</ref> citing hardware limits and problems in finding compatible software. In 1984, Apple [[1984 (advertisement)|released a television commercial]] which introduced the Apple Macintosh during the telecast of [[Super Bowl XVIII]] by [[CBS]],<ref>{{cite web|url=http://www.duke.edu/~tlove/mac.htm |title=Apple's 1984: The Introduction of the Macintosh in the Cultural History of Personal Computers |archive-url=https://web.archive.org/web/19991005015117/http://www.duke.edu/~tlove/mac.htm |archive-date=October 5, 1999 |first=Ted |last=Friedman |date=October 1997 |url-status=dead }}</ref> with [[allusion]]s to [[George Orwell]]'s noted novel ''[[Nineteen Eighty-Four]]''. The goal of the commercial was to make people think about computers, identifying the user-friendly interface as a personal computer which departed from prior business-oriented systems,<ref name=friedman>{{cite book |chapter-url=http://tedfriedman.com/electric-dreams/chapter-5-apples-1984/ |title=Electric Dreams: Computers in American Culture |chapter=Chapter 5: 1984 |access-date=October 6, 2011 |last=Friedman |first= Ted |year=2005 |publisher= [[New York University Press]]|isbn=978-0-8147-2740-9}}</ref> and becoming a signature representation of Apple products.<ref>{{cite web |title= Review of ''Pirates of Silicon Valley'' Movie |url=http://www.dotjournal.com/review-pirates-silicon-valley-movie |archive-url=https://web.archive.org/web/20061107170215/http://www.dotjournal.com/review-pirates-silicon-valley-movie |archive-date= November 7, 2006 |date= October 29, 2006 |publisher= DotJournal.com |first= Patrick |last= Grote |access-date= January 24, 2014}}</ref> In 1985, [[Commodore International|Commodore]] released the [[Amiga 1000]], along with [[Workbench (AmigaOS)#Workbench 1.x|Workbench]] and [[Kickstart (Amiga)#Versions|Kickstart 1.0]] (which contained [[Intuition (Amiga)|Intuition]]). This interface ran as a separate task, meaning it was very responsive and, unlike other GUIs of the time, it didn't freeze up when a program was busy. Additionally, it was the first GUI to introduce something resembling [[Virtual desktop#Amiga|Virtual Desktops]]. [[Windows 95]], accompanied by an extensive marketing campaign,<ref name="WinHype">{{cite news |last=Washington Post |title=With Windows 95's Debut, Microsoft Scales Heights of Hype |url=https://www.washingtonpost.com/wp-srv/business/longterm/microsoft/stories/1995/debut082495.htm |access-date=November 8, 2013 |newspaper=Washington Post |date=August 24, 1995}}</ref> was a major success in the marketplace at launch and shortly became the most popular desktop operating system.<ref>{{Cite web|url=http://www.computerhistory.org/timeline/computers/|title=Computers {{!}} Timeline of Computer History {{!}} Computer History Museum|website=www.computerhistory.org|language=en|access-date=2017-04-02}}</ref> In 2007, with the [[iPhone]]<ref>Mather, John. [https://web.archive.org/web/20070303032701/http://www.rrj.ca/online/658/ iMania], ''[[Ryerson Review of Journalism]]'', (February 19, 2007) Retrieved February 19, 2007</ref> and later in 2010 with the introduction of the [[iPad]],<ref>"the iPad could finally spark demand for the hitherto unsuccessful tablet PC" --Eaton, Nick [http://blog.seattlepi.com/microsoft/archives/199045.asp The iPad/tablet PC market defined?] {{Webarchive|url=https://web.archive.org/web/20110201221303/http://blog.seattlepi.com/microsoft/archives/199045.asp |date=2011-02-01 }}, ''Seattle Post-Intelligencer'', 2010</ref> Apple popularized the post-WIMP style of interaction for [[multi-touch]] screens, and those devices were considered to be milestones in the development of [[mobile device]]s.<ref name='BallStillDoesnt2010'>Bright, Peter [https://arstechnica.com/microsoft/news/2010/07/ballmer-and-microsoft-still-doesnt-get-the-ipad.ars Ballmer (and Microsoft) still doesn't get the iPad], [[Ars Technica]], 2010</ref><ref name="infoworld">{{cite magazine|url=http://www.infoworld.com/d/mobile-technology/the-ipads-victory-in-defining-the-tablet-what-it-means-431|title=The iPad's victory in defining the tablet: What it means|magazine=[[InfoWorld]]|date=2011-07-05}}</ref> The GUIs familiar to most people as of the mid-late 2010s are [[Microsoft Windows]], [[macOS]], and the [[X Window System]] interfaces for desktop and laptop computers, and [[Android (operating system)|Android]], Apple's [[iOS]], [[Symbian]], [[BlackBerry OS]], [[Windows Phone]]/[[Windows 10 Mobile]], [[Tizen]], [[WebOS]], and [[Firefox OS]] for handheld ([[smartphone]]) devices.<ref>{{Cite journal|last=Hanson|first=Cody W.|date=2011-03-17|title=Chapter 2: Mobile Devices in 2011|url=https://journals.ala.org/index.php/ltr/article/view/4477|journal=Library Technology Reports|volume=47|issue=2|pages=11–23|issn=0024-2586}}</ref><ref>{{Cite web|title=What is a Graphical User Interface? Definition and FAQs {{!}} OmniSci|url=https://www.omnisci.com/technical-glossary/graphical-user-interface|access-date=2022-01-26|website=omnisci.com}}</ref> == Comparison to other interfaces == {{quote|People said it's more of a right-brain machine and all that—I think there is some truth to that. I think there is something to dealing in a graphical interface and a more kinetic interface—you're really ''moving'' information around, you're seeing it move as though it had substance. And you don't see that on a PC. The PC is very much of a conceptual machine; you move information around the way you move formulas, elements on either side of an equation. I think there's a difference.|[[Andrew Fluegelman]] on the Macintosh, 1985<ref name="microtimes198505">{{Cite magazine |last=Erokan |first=Dennis |date=May 1985 |title=Andrew Fluegelman - PC-Talk and Beyond |url=https://archive.org/details/microtimes00donh/page/n17/mode/1up?view=theater |access-date=2025-03-12 |magazine=MicroTimes |pages=19–26}}</ref>}} === Command-line interfaces === [[File:Bash screenshot.png|thumb|A modern Command-Line Interface (CLI)]] Since the commands available in command line interfaces can be many, complex operations can be performed using a short sequence of words and symbols. Custom functions may be used to facilitate access to frequent actions. Command-line interfaces are more [[minimalism (computing)|lightweight]], as they only recall information necessary for a task; for example, no preview thumbnails or graphical rendering of web pages. This allows greater efficiency and productivity once many commands are learned.<ref name="computerhope.com" /> But reaching this level takes some time because the command words may not be easily discoverable or [[mnemonic]]. Also, using the command line can become slow and error-prone when users must enter long commands comprising many parameters or several different filenames at once. However, ''windows, icons, menus, pointer'' ([[WIMP (computing)|WIMP]]) interfaces present users with many [[Widget (GUI)|widgets]] that represent and can trigger some of the system's available commands. GUIs can be made quite hard when dialogs are buried deep in a system or moved about to different places during redesigns. Also, icons and dialog boxes are usually harder for users to script. WIMPs extensively use [[mode (user interface)|modes]], as the meaning of all keys and clicks on specific positions on the screen are redefined all the time. Command-line interfaces use modes only in limited forms, such as for current directory and [[environment variable]]s. Most modern [[operating system]]s provide both a GUI and some level of a CLI, although the GUIs usually receive more attention. === GUI wrappers === GUI wrappers find a way around the [[command-line interface]] versions (CLI) of (typically) [[Linux]] and [[Unix-like]] software applications and their [[text-based user interface|text-based UI]]s or typed command labels. While command-line or text-based applications allow users to run a program non-interactively, GUI wrappers atop them avoid the steep [[learning curve]] of the command-line, which requires commands to be typed on the [[Computer keyboard|keyboard]]. By starting a GUI wrapper, [[user (computing)|users]] can intuitively [[human–computer interaction|interact]] with, start, stop, and change its working parameters, through graphical [[icon (computing)|icons]] and visual indicators of a [[desktop environment]], for example. Applications may also provide both interfaces, and when they do the GUI is usually a WIMP wrapper around the command-line version. This is especially common with applications designed for [[Unix-like]] operating systems. The latter used to be implemented first because it allowed the developers to focus exclusively on their product's functionality without bothering about interface details such as designing icons and placing buttons. Designing programs this way also allows users to run the program in a [[shell script]]. == Three-dimensional graphical user interface == {{About|uniquely software 3D UIs|both software and hardware 3D input/output devices|3D UIs|section=yes}} Many environments and games use the methods of [[3D graphics]] to project 3D GUI objects onto the screen. The use of 3D graphics has become increasingly common in mainstream operating systems (ex. [[Windows Aero]], and [[Aqua (user interface)|Aqua]] (macOS)) to create attractive interfaces, termed eye candy (which includes, for example, the use of [[drop shadow]]s underneath windows and the [[Cursor (user interface)|cursor]]), or for functional purposes only possible using three dimensions. For example, user switching is represented by rotating a cube with faces representing each user's workspace, and window management is represented via a [[Rolodex]]-style flipping mechanism in [[Windows Vista]] (see [[Windows Flip 3D]]). In both cases, the operating system transforms windows on-the-fly while continuing to update the content of those windows. The GUI is usually WIMP-based, although occasionally other metaphors surface, such as those used in [[Microsoft Bob]], 3dwm, File System Navigator, [[File System Visualizer]], 3D Mailbox,<ref>{{Cite web |date= |title=3D Mailbox – 3-Dimensional Email Software. Bring e-mail to life! Email just got cool and fun. |url=http://www.3dmailbox.com/ |url-status=usurped |archive-url=https://web.archive.org/web/20190721225321/http://www.3dmailbox.com/ |archive-date=2019-07-21 |access-date=2022-07-14 |website=3dmailbox.com}}</ref><ref>{{Cite web |title=3D Mailbox |url=https://download.cnet.com/3D-Mailbox/3000-2367_4-10699471.html |access-date=2022-07-14 |website=Download.com |date=14 February 2017 |language=en}}</ref> and [[GopherVR]]. [[zooming user interface|Zooming]] (ZUI) is a related technology that promises to deliver the representation benefits of 3D environments without their usability drawbacks of orientation problems and hidden objects. In 2006, [[Hillcrest Labs]] introduced the first ZUI for television.<ref name="Moren">''Macworld.com'' November 11, 2006. Dan Moren. [http://gadgets.macworld.com/video/ces_unveiledny_07_point_and_cl.php CES Unveiled@NY ‘07: Point and click coming to set-top boxes?] {{webarchive|url=https://web.archive.org/web/20111108015801/http://gadgets.macworld.com/video/ces_unveiledny_07_point_and_cl.php|date=2011-11-08}}</ref> Other innovations include the menus on the [[PlayStation 2]]; the menus on the [[Xbox (console)|Xbox]]; Sun's [[Project Looking Glass]]; [[Metisse]], which was similar to Project Looking Glass;<ref>{{cite web |date=29 June 2004 |title=Metisse – New Looking Glass Alternative |url=https://developers.slashdot.org/story/04/06/29/229243/metisse---new-looking-glass-alternative |access-date=2 July 2020}}</ref> [[BumpTop]], where users can manipulate documents and windows with realistic movement and physics as if they were physical documents; [[Croquet OS]], which is built for collaboration;<ref>{{Cite web |last1=Smith |first1=David A. |last2=Kay |first2=Alan |last3=Raab |first3=Andreas |last4=Reed |first4=David P. |date= |title=Croquet – A Collaboration System Architecture |url=http://www.croquetconsortium.org/images/2/2b/2003_Croquet_Collab_Arch.pdf |url-status=dead |archive-url=https://web.archive.org/web/20070927082900/http://www.croquetconsortium.org/images/2/2b/2003_Croquet_Collab_Arch.pdf |archive-date=2007-09-27 |access-date=2022-09-17 |website=croquetconsortium.org |quote=The efforts at Xerox PARC under the leadership of Alan Kay that drove the development of [...] powerful bit-mapped display based user interfaces was key. In some ways, all we are doing here is extending this model to 3D and adding a new robust object collaboration model.}}</ref> and [[compositing window manager]]s such as [[Enlightenment (software)|Enlightenment]] and [[Compiz]]. [[Augmented reality]] and [[virtual reality]] also make use of 3D GUI elements.<ref>{{Cite web |last=Purwar |first=Sourabh |date=2019-03-04 |title=Designing User Experience for Virtual Reality (VR) applications |url=https://uxplanet.org/designing-user-experience-for-virtual-reality-vr-applications-fc8e4faadd96 |access-date=2022-05-06 |website=Medium |language=en}}</ref> === In science fiction === 3D GUIs have appeared in [[science fiction]] literature and [[Science fiction film|films]], even before certain technologies were feasible or in common use.<ref>{{cite web |last=Dayton |first=Tom |title=Object-Oriented GUIs are the Future |url=http://openmct.blogspot.com/2012/08/object-oriented-guis-are-future.html |url-status=dead |archive-url=https://web.archive.org/web/20140810170239/http://openmct.blogspot.com/2012/08/object-oriented-guis-are-future.html |archive-date=10 August 2014 |access-date=23 August 2012 |work=OpenMCT Blog}}</ref> * In prose fiction, 3D GUIs have been portrayed as immersible environments, [[coined term|coined]] as [[William Gibson]]'s "[[cyberspace]]" and [[Neal Stephenson]]'s "[[metaverse]]" and "[[avatar (computing)|avatars]]". * The 1993 American film ''[[Jurassic Park (film)|Jurassic Park]]'' features [[Silicon Graphics]]' 3D file manager File System Navigator, a real-life file manager for [[Unix]] operating systems. * The film [[Minority Report (film)|''Minority Report'']] has scenes of police officers using specialized 3D data systems. == See also == {{div col |colwidth=22em}} * ''[[Apple Computer, Inc. v. Microsoft Corp.]]'' * [[Console user interface]] * [[Computer icon]] * [[Distinguishable interfaces]] * [[General Graphics Interface]] (software project) * [[GUI tree]] * [[Human factors and ergonomics]] * [[Look and feel]] * [[Natural user interface]] * [[Ncurses]] * [[Object-oriented user interface]] * [[Organic user interface]] * [[Rich web application]] * [[Skeuomorph]] * [[Text entry interface]] * [[Transportable Applications Environment]] * [[User experience design]] * [[User interface design]] * [[Vector-based graphical user interface]] {{div col end}} == Notes == {{Noteslist}} == References == {{Reflist|30em}} == External links == {{Wiktionary|graphical user interface}} {{Commons category}} * [http://www.slideshare.net/rajeshlal/evolution-of-user-interface-26414802 Evolution of Graphical User Interface in last 50 years] by Raj Lal * [https://web.archive.org/web/20110816031619/http://www.computeractive.co.uk/pcw/pc-help/1925325/the-invented-gui The men who really invented the GUI] by Clive Akass * [http://toastytech.com/guis/index.html Graphical User Interface Gallery], screenshots of various GUIs * [http://www.guidebookgallery.org/ Marcin Wichary's GUIdebook], Graphical User Interface gallery: over 5500 screenshots of GUI, application and icon history * [https://web.archive.org/web/20040309225129/http://www.sitepoint.com/article/real-history-gui The Real History of the GUI] by Mike Tuck * [https://web.archive.org/web/20090605174302/http://www.nealstephenson.com/command/ In The Beginning Was The Command Line] by Neal Stephenson * [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.103.5038&rep=rep1&type=pdf 3D Graphical User Interfaces] (PDF) by Farid BenHajji and Erik Dybner, Department of Computer and Systems Sciences, Stockholm University * [http://hdl.handle.net/10045/51725 Topological Analysis of the Gibbs Energy Function (Liquid-Liquid Equilibrium Correlation Data). Including a Thermodinamic Review and a Graphical User Interface (GUI) for Surfaces/Tie-lines/Hessian matrix analysis] – University of Alicante (Reyes-Labarta et al. 2015–18) * [https://cllax.com/innovative-ways-to-use-information-visualization-across-a-variety-of-fields.html Innovative Ways to Use Information Visualization across a Variety of Fields] {{Webarchive|url=https://web.archive.org/web/20240620150613/https://cllax.com/innovative-ways-to-use-information-visualization-across-a-variety-of-fields.html |date=2024-06-20 }} by Ryan Erwin Digital marketing specialist (CLLAX) (2022-05) {{User interfaces}} {{Authority control}} [[Category:Graphical user interfaces| ]] [[Category:Software architecture]] [[Category:American inventions]] [[Category:3D GUIs]]
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)
Pages transcluded onto the current version of this page
(
help
)
:
Template:About
(
edit
)
Template:Authority control
(
edit
)
Template:Cite book
(
edit
)
Template:Cite encyclopedia
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite magazine
(
edit
)
Template:Cite news
(
edit
)
Template:Cite web
(
edit
)
Template:Commons category
(
edit
)
Template:Div col
(
edit
)
Template:Div col end
(
edit
)
Template:Efn
(
edit
)
Template:Further
(
edit
)
Template:Main
(
edit
)
Template:More citations needed
(
edit
)
Template:Noteslist
(
edit
)
Template:Quote
(
edit
)
Template:Redirect
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:User interfaces
(
edit
)
Template:Webarchive
(
edit
)
Template:Wiktionary
(
edit
)