Selection (user interface)
# Selection (user interface)

In computing and user interface engineering, a selection is a list of items on which user operations will take place. The user typically adds items to the list manually, although the computer may create a selection automatically.

Selections are enacted through combinations of key presses on a keyboard, with a precision pointing device (mouse or touchpad and cursor, stylus), or by hand on a touchscreen device. The simultaneous selection of a group of items (either a subset of elements in a list, or discontinuous regions in a text) is called a multiple selection.

Context menus will usually include actions related to the objects included in the current selection - the selection provides the "context" for the menu.

## Types

### Uses

* Text selection is associated with the cut, copy and paste operations and done with a cursor, caret navigation or touch.
* Image editing applications can feature specialized graphical tools for the selection and modification of areas and shapes or to interact with colours, such as the magic wand selection tool, the lasso selection tool, the marquee selection (bounding box), or the color picker. The border of a selected area in an image is often animated with the marching ants effect to help the user to distinguish the selection border from the image background.
* Video editing programs may utilise dynamic controls and advanced digital effects on the selected region.
* Files and other interface components can be selected and used with the advent of GUIs.
* Selection and manipulation in 3D virtual environments

### Range selection

A variation to facilitate the selection of a range of items in a long list on touch screen devices is range selection, sparing the user from tapping each item individually.

It is implemented since early versions of ES File Explorer, where only two listed items (file or directory) need to be highlighted to select all in-between, in resemblance to the shift key selection of desktop file managers such as Windows Explorer and Nemo file manager.

Ideally, the two list items are navigated to with a draggable scroll bar.

## Simultaneous editing

Simultaneous editing is a technique in End-user development research to edit all items in a multiple selection. It allows the user to manipulate all the selected items at once through direct manipulation. The technique also appears in data wrangling tools, allowing the user to make the same changes to several records of the same kind in a table.

The term simultaneous editing is also used to describe collaborative editing in collaborative real-time editors.

### Column selection

A column selection is a text selection feature found in text editors which allows the user to select characters in a grid-like fashion, selecting characters in several lines at the same columns. This is usually initiated by pressing the alt key (instead of the shift key, which creates a continuous selection) to select text when dragging. Some applications also enable text to be typed in multiple lines at once using this method as a limited form of simultaneous editing.

The feature is known by different names in different applications:

* block selection - LibreOffice Writer, Kate
* column selection - EditPlus, vi, Emacs
* non-linear text selection - TextEdit
* rectangular selection - jEdit
* column block selection - Microsoft Visual Studio
* column mode editing - Notepad++

### Free-form simultaneous editing

The Lapis text editor, Mozilla's Firefox developer tools, and the multi edit plugin for gedit are examples of the simultaneous editing technique that work on discontinuous regions through direct manipulation. The Lapis editor can also create an automatic multiple selection based on an example item.

