Cursor (computers)
Encyclopedia
In computing, a cursor is an indicator used to show the position on a computer monitor or other display device
that will respond to input from a text input or pointing device
. The flashing text cursor may be referred to as a caret in some cases. The mouse cursor may be referred to as a mouse pointer, owing to its arrow shape on some systems.
s or text editor
s, the text cursor or caret navigation
, is an underscore
, a solid rectangle, or a vertical line, which may be flashing or steady, indicating where text will be placed when entered (the insertion point). In text mode
displays, it was not possible to show a vertical bar between characters to show where the new text would be inserted, so an underscore or block cursor was used instead. In situations where a block was used, the block was usually created by inverting the pixels of the character using the boolean math exclusive or function. On text editor
s and word processor
s of modern design on bitmap
ped displays, the vertical bar is typically used instead. Some details of the vertical bar's origins have been described in Bill Moggridge
's Designing Interactions (ISBN 0262134748).
The blinking of the text cursor is usually temporarily suspended when it is being moved; otherwise, the cursor may change position when it is not visible, making its location difficult to follow.
Some interfaces use an underscore or thin vertical bar to indicate that the user is in insert mode, a mode
where text will be inserted
in the middle of the existing text, and a larger block to indicate that the user is in overtype
mode, where inserted text will overwrite existing text. In this way, a block cursor may be seen as a piece of selected text one character wide, since typing will replace the text "in" the cursor with the new text.
, and is thus usually known among programmers as a 'bidi cursor'. In some cases, the cursor may split into two parts, each indicating where left-to-right and right-to-left text would be inserted.
's On-Line System originally referred to the cursor as a "bug" or "tracking spot". In the On-Line System, the cursor appearance alternated "between the characters uparrow and plus". On modern systems the default mouse cursor is an arrow pointing up and to the left, and is called the "mouse pointer".
In text user interface
s, including the Linux
console and many MS-DOS
programs, this cursor is frequently a solid rectangle; depending on the interface, the rectangle may always be a single color, or may be the opposite color of whatever lies "below" it. Graphical user interface
s usually use an arrow-like pointer to show the mouse position.
Many TUI
s and GUI
s give the user the option to turn off the mouse cursor when text is being typed.
In many GUIs, the mouse cursor changes shape depending on the circumstances. For example:
The mouse cursor hotspot is the mouse cursor's pixel used to click. A hotspot is normally along the cursor edges or in its center, though it may reside at any location in the cursor icon.
operating system
s to enhance the visibility of the mouse cursor. Although disabled by default, pointer trails have been an option in every version of Microsoft Windows since Windows 3.1.
When pointer trails are active and the mouse is moved, the system waits a moment before removing the mouse pointer image from the old location on the screen. A copy of the mouse pointer persists at every point that the mouse has visited in that moment, resulting in a snake-like trail of mouse pointer icons that follow the actual pointer. When the user stops moving the mouse, the trails disappear and the mouse pointer returns to normal.
Mouse pointer trails have been provided as a feature mainly for users with poor vision
and for screens where low visibility may become an issue, such as LCD screens
in bright sunlight.
In Windows, pointer trails may be enabled in the Control Panel
, usually under the Mouse
applet.
Introduced with Windows NT
, an animated cursor was a small looping animation that was played at the location of the mouse cursor. This is used, for example, to provide a visual cue that the computer is busy with a task. After their introduction, many animated cursors became available for download from third party suppliers. Unfortunately, animated cursors are not without their problems. In addition to imposing a small additional load on the CPU, the animated cursor routines did introduce a security vulnerability. A client-side
exploit known as the Windows Animated Cursor Remote Code Execution Vulnerability used a buffer overflow
vulnerability to load malicious code via the animated cursor load routine of Windows.
environment. Blender
, for instance, uses a 3D cursor to determine where future operations are to take place.
Display device
A display device is an output device for presentation of information in visual or tactile form...
that will respond to input from a text input or pointing device
Pointing device
A pointing device is an input interface that allows a user to input spatial data to a computer...
. The flashing text cursor may be referred to as a caret in some cases. The mouse cursor may be referred to as a mouse pointer, owing to its arrow shape on some systems.
Text cursor
In most command-line interfaceCommand-line interface
A command-line interface is a mechanism for interacting with a computer operating system or software by typing commands to perform specific tasks...
s or text editor
Text editor
A text editor is a type of program used for editing plain text files.Text editors are often provided with operating systems or software development packages, and can be used to change configuration files and programming language source code....
s, the text cursor or caret navigation
Caret navigation
In computing, caret navigation is a kind of keyboard navigation where a caret is used to navigate within a text document...
, is an underscore
Underscore
The underscore [ _ ] is a character that originally appeared on the typewriter and was primarily used to underline words...
, a solid rectangle, or a vertical line, which may be flashing or steady, indicating where text will be placed when entered (the insertion point). In text mode
Text mode
Text mode is a kind of computer display mode in which the content of the screen is internally represented in terms of characters rather than individual pixels. Typically, the screen consists of a uniform rectangular grid of character cells, each of which contains one of the characters of a...
displays, it was not possible to show a vertical bar between characters to show where the new text would be inserted, so an underscore or block cursor was used instead. In situations where a block was used, the block was usually created by inverting the pixels of the character using the boolean math exclusive or function. On text editor
Text editor
A text editor is a type of program used for editing plain text files.Text editors are often provided with operating systems or software development packages, and can be used to change configuration files and programming language source code....
s and word processor
Word processor
A word processor is a computer application used for the production of any sort of printable material....
s of modern design on bitmap
Bitmap
In computer graphics, a bitmap or pixmap is a type of memory organization or image file format used to store digital images. The term bitmap comes from the computer programming terminology, meaning just a map of bits, a spatially mapped array of bits. Now, along with pixmap, it commonly refers to...
ped displays, the vertical bar is typically used instead. Some details of the vertical bar's origins have been described in Bill Moggridge
Bill Moggridge
William Moggridge, an industrial and interaction designer, is co-founder of the Silicon Valley-based design firm IDEO and the current director of the Smithsonian Institution's Cooper-Hewitt, National Design Museum in New York. He designed what was the first laptop computer, the GRiD Compass...
's Designing Interactions (ISBN 0262134748).
The blinking of the text cursor is usually temporarily suspended when it is being moved; otherwise, the cursor may change position when it is not visible, making its location difficult to follow.
Some interfaces use an underscore or thin vertical bar to indicate that the user is in insert mode, a mode
Mode (computer interface)
In user interface design, a mode is a distinct setting within a computer program or any physical machine interface, in which the same user input will produce perceived different results than it would in other settings....
where text will be inserted
Insert key
The Insert key is a key commonly found on computer keyboards.It is primarily used to switch between the two text-entering modes on a personal computer or word processor. The first is overtype mode, in which the cursor, when typing, overwrites any text that is present on and after its current...
in the middle of the existing text, and a larger block to indicate that the user is in overtype
Insert key
The Insert key is a key commonly found on computer keyboards.It is primarily used to switch between the two text-entering modes on a personal computer or word processor. The first is overtype mode, in which the cursor, when typing, overwrites any text that is present on and after its current...
mode, where inserted text will overwrite existing text. In this way, a block cursor may be seen as a piece of selected text one character wide, since typing will replace the text "in" the cursor with the new text.
Bi-directional text
A vertical line text cursor with a small left-pointing or right-pointing appendage are for indicating the direction of text flow on systems that support bi-directional textBi-directional text
Bi-directional text is text containing text in both text directionalities, both right-to-left and left-to-right . It generally involves text containing different types of alphabets, but may also refer to boustrophedon, which is changing text directionality in each row.Some writing systems of the...
, and is thus usually known among programmers as a 'bidi cursor'. In some cases, the cursor may split into two parts, each indicating where left-to-right and right-to-left text would be inserted.
Mouse cursor
Interfaces driven by a computer mouse or other pointing device add a second cursor to show the current position of the mouse pointer. Douglas EngelbartDouglas Engelbart
Douglas Carl Engelbart is an American inventor, and an early computer and internet pioneer. He is best known for his work on the challenges of human-computer interaction, resulting in the invention of the computer mouse, and the development of hypertext, networked computers, and precursors to GUIs...
's On-Line System originally referred to the cursor as a "bug" or "tracking spot". In the On-Line System, the cursor appearance alternated "between the characters uparrow and plus". On modern systems the default mouse cursor is an arrow pointing up and to the left, and is called the "mouse pointer".
In text user interface
Text user interface
TUI short for: Text User Interface or Textual User Interface , is a retronym that was coined sometime after the invention of graphical user interfaces, to distinguish them from text-based user interfaces...
s, including the Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
console and many MS-DOS
MS-DOS
MS-DOS is an operating system for x86-based personal computers. It was the most commonly used member of the DOS family of operating systems, and was the main operating system for IBM PC compatible personal computers during the 1980s to the mid 1990s, until it was gradually superseded by operating...
programs, this cursor is frequently a solid rectangle; depending on the interface, the rectangle may always be a single color, or may be the opposite color of whatever lies "below" it. Graphical user interface
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...
s usually use an arrow-like pointer to show the mouse position.
Many TUI
Text user interface
TUI short for: Text User Interface or Textual User Interface , is a retronym that was coined sometime after the invention of graphical user interfaces, to distinguish them from text-based user interfaces...
s and GUI
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...
s give the user the option to turn off the mouse cursor when text is being typed.
In many GUIs, the mouse cursor changes shape depending on the circumstances. For example:
- In text that the user can select or edit, the cursor changes to a vertical bar with little cross-bars (or curved serifSerifIn typography, serifs are semi-structural details on the ends of some of the strokes that make up letters and symbols. A typeface with serifs is called a serif typeface . A typeface without serifs is called sans serif or sans-serif, from the French sans, meaning “without”...
-like extensions) at the top and bottom — sometimes called an "I-beam" since it resembles the cross-section of the construction detail of the same name. - When displaying a document, the cursor can appear as a hand with all fingers extended allowing scrolling by "pushing" the displayed page around.
- Graphics-editing cursors such as brushes, pencils or paint buckets may display when the user edits an image.
- On an edge or corner of a windowWindow (computing)In computing, a window is a visual area containing some kind of user interface. It usually has a rectangular shape that can overlap with the area of other windows...
the cursor usually changes into a double arrow (horizontal, vertical, or diagonal) indicating that the user can drag the edge/corner in an indicated direction in order to adjust the size and shape of the window. - While a computer process is performing tasks and cannot accept user input, a wait cursor (an hourglassHourglassAn hourglass measures the passage of a few minutes or an hour of time. It has two connected vertical glass bulbs allowing a regulated trickle of material from the top to the bottom. Once the top bulb is empty, it can be inverted to begin timing again. The name hourglass comes from historically...
in WindowsMicrosoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
before VistaWindows VistaWindows Vista is an operating system released in several variations developed by Microsoft for use on personal computers, including home and business desktops, laptops, tablet PCs, and media center PCs...
and many other systems, spinning ring in Windows VistaWindows VistaWindows Vista is an operating system released in several variations developed by Microsoft for use on personal computers, including home and business desktops, laptops, tablet PCs, and media center PCs...
, watchWatchA watch is a small timepiece, typically worn either on the wrist or attached on a chain and carried in a pocket, with wristwatches being the most common type of watch used today. They evolved in the 17th century from spring powered clocks, which appeared in the 15th century. The first watches were...
in classic Mac OSMac OSMac OS is a series of graphical user interface-based operating systems developed by Apple Inc. for their Macintosh line of computer systems. The Macintosh user experience is credited with popularizing the graphical user interface...
, or spinning ballSpinning wait cursorThe spinning wait cursor is a cursor in Apple's Mac OS X that indicates an application is not responding to system events.The Apple Human Interface Guidelines officially refers to it as the "spinning wait cursor"...
in Mac OS XMac OS XMac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
) is displayed when the mouse cursor is in the corresponding window. - When the cursor hovers over a hyperlinkHyperlinkIn computing, a hyperlink is a reference to data that the reader can directly follow, or that is followed automatically. A hyperlink points to a whole document or to a specific element within a document. Hypertext is text with hyperlinks...
, a mouseoverMouseoverIn computing a mouseover, mouse hover or hover box refers to a GUI event that is raised when the user moves or "hovers" the cursor over a particular area of the GUI. The technique is particularly common in web browsers where the URL of a hyperlink can be viewed in the status bar...
event changes the cursor into a hand with an outstretched index finger. Often some informative text about the link may pop up in a tooltipTooltipThe tooltip or infotip is a common graphical user interface element. It is used in conjunction with a cursor, usually a mouse pointer. The user hovers the cursor over an item, without clicking it, and a tooltip may appear—a small "hover box" with information about the item being hovered...
, which disappears when the user moves the cursor away. The tooltips revealed in the box depend on the implementation of the web browserWeb browserA web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...
; many web browsers will display the "title" of the element, the "alt" attribute, or the non-standard "tooltips" attribute. This cursor shape was first used for hyperlinks in Apple Computer's HyperCardHyperCardHyperCard is an application program created by Bill Atkinson for Apple Computer, Inc. that was among the first successful hypermedia systems before the World Wide Web. It combines database capabilities with a graphical, flexible, user-modifiable interface. HyperCard also features HyperTalk, written...
. - The mouseover or hover gesture can also present information about what the cursor is hovering over; the information is a description of what selecting an active element is for or what it will do, it appears only when stationary over content. A common use of viewing the information is when browsing the internet to know the destination of a linkHyperlinkIn computing, a hyperlink is a reference to data that the reader can directly follow, or that is followed automatically. A hyperlink points to a whole document or to a specific element within a document. Hypertext is text with hyperlinks...
before selecting it, if the URL of the text is not recognisable.
The mouse cursor hotspot is the mouse cursor's pixel used to click. A hotspot is normally along the cursor edges or in its center, though it may reside at any location in the cursor icon.
Pointer trails and animation
Pointer trails are a feature of graphical user interfaceGraphical 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...
operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
s to enhance the visibility of the mouse cursor. Although disabled by default, pointer trails have been an option in every version of Microsoft Windows since Windows 3.1.
When pointer trails are active and the mouse is moved, the system waits a moment before removing the mouse pointer image from the old location on the screen. A copy of the mouse pointer persists at every point that the mouse has visited in that moment, resulting in a snake-like trail of mouse pointer icons that follow the actual pointer. When the user stops moving the mouse, the trails disappear and the mouse pointer returns to normal.
Mouse pointer trails have been provided as a feature mainly for users with poor vision
Visual perception
Visual perception is the ability to interpret information and surroundings from the effects of visible light reaching the eye. The resulting perception is also known as eyesight, sight, or vision...
and for screens where low visibility may become an issue, such as LCD screens
Liquid crystal display
A liquid crystal display is a flat panel display, electronic visual display, or video display that uses the light modulating properties of liquid crystals . LCs do not emit light directly....
in bright sunlight.
In Windows, pointer trails may be enabled in the Control Panel
Control Panel (Windows)
The Control Panel is a part of the Microsoft Windows graphical user interface which allows users to view and manipulate basic system settings and controls via applets, such as adding hardware, adding and removing software, controlling user accounts, and changing accessibility options...
, usually under the Mouse
Mouse (computing)
In computing, a mouse is a pointing device that functions by detecting two-dimensional motion relative to its supporting surface. Physically, a mouse consists of an object held under one of the user's hands, with one or more buttons...
applet.
Introduced with Windows NT
Windows NT
Windows NT is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. It was a powerful high-level-language-based, processor-independent, multiprocessing, multiuser operating system with features comparable to Unix. It was intended to complement...
, an animated cursor was a small looping animation that was played at the location of the mouse cursor. This is used, for example, to provide a visual cue that the computer is busy with a task. After their introduction, many animated cursors became available for download from third party suppliers. Unfortunately, animated cursors are not without their problems. In addition to imposing a small additional load on the CPU, the animated cursor routines did introduce a security vulnerability. A client-side
Client-side
Client-side refers to operations that are performed by the client in a client–server relationship in a computer network.Typically, a client is a computer application, such as a web browser, that runs on a user's local computer or workstation and connects to a server as necessary...
exploit known as the Windows Animated Cursor Remote Code Execution Vulnerability used a buffer overflow
Buffer overflow
In computer security and programming, a buffer overflow, or buffer overrun, is an anomaly where a program, while writing data to a buffer, overruns the buffer's boundary and overwrites adjacent memory. This is a special case of violation of memory safety....
vulnerability to load malicious code via the animated cursor load routine of Windows.
3D cursor
The idea of a cursor being used as a marker or insertion point for new data or transformations, such as rotation, can be extended to a 3D modeling3D modeling
In 3D computer graphics, 3D modeling is the process of developing a mathematical representation of any three-dimensional surface of object via specialized software. The product is called a 3D model...
environment. Blender
Blender (software)
Blender is a free and open-source 3D computer graphics software product used for creating animated films, visual effects, interactive 3D applications or video games. The current release version is 2.60, and was released on October 19, 2011...
, for instance, uses a 3D cursor to determine where future operations are to take place.