gtkmm provides four basic types of buttons:

Push buttons

Gtk::Button. Standard buttons, usually marked with a label or picture. Pushing one triggers an action. See the Button section.

Toggle buttons

Gtk::ToggleButton. Unlike a normal Button, which springs back up, a ToggleButton stays down until you press it again. It might be useful as an on/off switch. See the ToggleButton section.

Check buttons

Gtk::CheckButton. These act like ToggleButtons, but show their state in small squares, with their label at the side. They should be used in most situations which require an on/off setting. See the CheckButton section.

Radio buttons

Named after the station selectors on old car radios, these buttons are used in groups for options which are mutually exclusive. Pressing one causes all the others in its group to turn off. They are similar to ToggleButtons or CheckButtons (a small widget with a label at the side), but usually look different. There is no separate radio button class. Check buttons and toggle buttons can act as radio buttons. See the Radio Button section.

Note that, due to GTK's theming system, the appearance of these widgets will vary. In the case of check buttons and radio buttons, they may vary considerably.