button - Base class for clickable buttons
class button : public frame
A button adds input actions to a frame. When a button contains a label, it will center the label's text in its window. An extra indicator (like a LED) may also be included in a button. When clicked with the left mouse button, the button performs some action. At least, it provides visible feedback to the user. When a mouse button is pressed on a button, its 3D effect is reversed. When the mouse button is released, the 3D effect returns to its original state. Further actions depends on the type of button.
Variaties of buttons:
A touch button has a virtual function: click(). This function is called on a ButtonPress event.
A toggle button overrides the touch button's function click() and overrides the frame's virtual function redraw(). click() reverses the state of the button. redraw() draws the indicator, which depends on the state.