gtk.toggle_button

Module for ToggleButton class

Types 3

classToggleButton : gtk.button.Button

A gtk.toggle_button.ToggleButton is a button which remains “pressed-in” when clicked.

Clicking again will cause the toggle button to return to its normal state.

A toggle button is created by calling either gtk.toggle_button.ToggleButton.new_ or gtk.toggle_button.ToggleButton.newWithLabel. If using the former, it is advisable to pack a widget, (such as a gtk.label.Label and/or a gtk.image.Image), into the toggle button’s container. (See gtk.button.Button for more information).

The state of a gtk.toggle_button.ToggleButton can be set specifically using gtk.toggle_button.ToggleButton.setActive, and retrieved using gtk.toggle_button.ToggleButton.getActive.

To simply switch the state of a toggle button, use gtk.toggle_button.ToggleButton.toggled.

Grouping

Toggle buttons can be grouped together, to form mutually exclusive groups - only one of the buttons can be toggled at a time, and toggling another one will switch the currently toggled one off.

To add a gtk.toggle_button.ToggleButton to a group, use gtk.toggle_button.ToggleButton.setGroup.

CSS nodes

gtk.toggle_button.ToggleButton has a single CSS node with name button. To differentiate it from a plain gtk.button.Button, it gets the .toggle style class.

Accessibility

gtk.toggle_button.ToggleButton uses the gtk.types.AccessibleRole.ToggleButton role.

Creating two gtk.toggle_button.ToggleButton widgets.

static void
output_state (GtkToggleButton *source,
              gpointer         user_data)
{
  g_print ("Toggle button "%s" is active: %s",
           gtk_button_get_label (GTK_BUTTON (source)),
           gtk_toggle_button_get_active (source) ? "Yes" : "No");
}

static void
make_toggles (void)
{
  GtkWidget *window, *toggle1, *toggle2;
  GtkWidget *box;
  const char *text;

  window = gtk_window_new ();
  box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);

  text = "Hi, I’m toggle button one";
  toggle1 = gtk_toggle_button_new_with_label (text);

  g_signal_connect (toggle1, "toggled",
                    G_CALLBACK (output_state),
                    NULL);
  gtk_box_append (GTK_BOX (box), toggle1);

  text = "Hi, I’m toggle button two";
  toggle2 = gtk_toggle_button_new_with_label (text);
  g_signal_connect (toggle2, "toggled",
                    G_CALLBACK (output_state),
                    NULL);
  gtk_box_append (GTK_BOX (box), toggle2);

  gtk_window_set_child (GTK_WINDOW (window), box);
  gtk_window_present (GTK_WINDOW (window));
}

Methods
GType _gType() @property
ToggleButton self()Returns `this`, for use in `with` statements.
ToggleButtonGidBuilder builder()Get builder for [gtk.toggle_button.ToggleButton] Returns: New builder object
bool active() @propertyGet `active` property. Returns: If the toggle button should be pressed in.
void active(bool propval) @propertySet `active` property. Params: propval = If the toggle button should be pressed in.
void group(gtk.toggle_button.ToggleButton propval) @propertySet `group` property. Params: propval = The toggle button whose group this widget belongs to.
gtk.toggle_button.ToggleButton newWithLabel(string label)Creates a new toggle button with a text label.
gtk.toggle_button.ToggleButton newWithMnemonic(string label)Creates a new [gtk.toggle_button.ToggleButton] containing a label.
bool getActive()Queries a [gtk.toggle_button.ToggleButton] and returns its current state.
void setActive(bool isActive)Sets the status of the toggle button.
void setGroup(gtk.toggle_button.ToggleButton group = null)Adds self to the group of group.
void toggled()Emits the ::toggled signal on the [gtk.toggle_button.ToggleButton].
gulong connectToggled(T)(T callback, Flag!"After" after = No.After) if (isCallable!T && is(ReturnType!T == void) && (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gtk.toggle_button.ToggleButton))) && Parameters!T.length < 2)Connect to `Toggled` signal.
Constructors
this(void * ptr, Flag!"Take" take)
this()Creates a new toggle button.

Fluent builder implementation template for gtk.toggle_button.ToggleButton

Methods
T active(bool propval)Set `active` property. Params: propval = If the toggle button should be pressed in. Returns: Builder instance for fluent chaining
T group(gtk.toggle_button.ToggleButton propval)Set `group` property. Params: propval = The toggle button whose group this widget belongs to. Returns: Builder instance for fluent chaining
Methods
ToggleButton build()Create object from builder. Returns: New object