Cursor (user interface)
In computer user interfaces, a cursor is an indicator used to show the current position for user interaction on a computer monitor or other display device that will respond to input from a text input or pointing device. The flashing cursor, where text will appear when typed, may be called a caret, as in caret browsing. The mouse cursor is also called a pointer, owing to its resemblance in usage to a pointing stick.
Origin of the term
Cursor is Latin for 'runner.' A cursor is the name given to the transparent slide engraved with a hairline that is used for marking a point on a slide rule. The term was then transferred to computers through analogy.
In most command-line interfaces or text editors, 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 editors and word processors of modern design on bitmapped displays, the vertical bar is typically used instead.
In a typical text editing application, the cursor can be moved by pressing any of the four arrow keys, or by moving the pointer to a different location in the document and clicking. The latter method is more efficient if more than a few arrow-key presses would be required to move the cursor to the desired location. The moment immediately after the click is typically the only time that the cursor and the pointer will be at the exact same location on the display.
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.
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 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.
The pointer or mouse cursor echoes movements of the pointing device, commonly a mouse, touchpad or trackball. This kind of cursor is used to manipulate elements of graphical user interfaces such as menus, buttons, scrollbars or any other widget. It may be called a "mouse pointer," because the mouse is the dominant type of pointing device used with desktop computers.
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 modeling environment. Blender, for instance, uses a 3D cursor to determine where future operations are to take place.
- Susan Kare, designer of several of the common cursor shapes
|Wikimedia Commons has media related to Cursor.|