User interface (UI)
A software user interface facilitates the interaction between the human and the computer.
Elements of interaction in graphical user interfaces (GUI) are called widgets. Some widgets are so common and have been around so long that their (expected) behaviour has been quasi standardized.
Widgets
- Button: The user can hover over this widget and it can react by e.g. changing its shade. When the user hovers over & presses it, the button should indicate that it's being pressed. When the user releases the press, the button should trigger and return to its original state.
- Checkboxes: Used for toggling a boolean state. Their behaviour is similar to buttons.
- Radio Buttons: These are checkboxes that are grouped together and control mutually-exclusive states. Turning one radio button on turns all the other radio buttons in the group off.
- Sliders: Normally used for changing a variable in a range, e.g. a float from 0 to 1 or an integer from 0 to 255.
- Textfield/Textbox: A widget for string inputs. The user can select text with the mouse or arrow keys and a lot of behaviour is expected when it comes to keyboard shortcuts.
- Scrollbars: A slider that is used specifically for scrolling.