ButtonSwitch is a class derived from the Buttons class (in GTK+, GtkSwitch is not a sub class of GtkButton but it is a subclass of GtkWidget).
A such object is a widget that has two states: on or off. The user can control which state should be active by clicking the empty area, or by dragging the handle.
All parents functions can be used too by any ButtonSwitch object.
If the client host works on GTK+ 2.x, you can call it, but all this api always return nil and no widgets is created. This api is really available only with GTK+ 3.x or above. To know the GTK+ used version, you should call _gtk2Xenabled function.
These are commons at this class and sub classes.