Sets our main struct and passes it to the parent class.
Creates a new GtkButton containing a label. If characters in label are preceded by an underscore, they are underlined. If you need a literal underscore character in a label, use '__' (two underscores). The first underlined character represents a keyboard accelerator called a mnemonic. Pressing Alt and that key activates the button.
Creates a new GtkButton containing the image and text from a stock item. Some stock ids have preprocessor macros like GTK_STOCK_OK and GTK_STOCK_APPLY. If stock_id is unknown, then it will be treated as a mnemonic label (as for gtk_button_new_with_mnemonic()).
Creates a new #GtkButton widget. To add a child widget to the button, use gtk_container_add().
Creates a new button containing an icon from the current icon theme.
The ::activate signal on GtkButton is an action signal and emitting it causes the button to animate press then release. Applications should never connect to this signal, but use the #GtkButton::clicked signal.
Emitted when the button has been activated (pressed and released).
Emitted when the pointer enters the button.
Emitted when the pointer leaves the button.
Emitted when the button is pressed.
Emitted when the button is released.
Emits a #GtkButton::clicked signal to the given #GtkButton.
Emits a #GtkButton::enter signal to the given #GtkButton.
Gets the alignment of the child in the button.
Returns whether the button will ignore the #GtkSettings:gtk-button-images setting and always show the image, if available.
Get the main Gtk struct
Returns the button’s event window if it is realized, %NULL otherwise. This function should be rarely needed.
Returns whether the button grabs focus when it is clicked with the mouse. See gtk_button_set_focus_on_click().
Gets the widget that is currenty set as the image of @button. This may have been explicitly set by gtk_button_set_image() or constructed by gtk_button_new_from_stock().
Gets the position of the image relative to the text inside the button.
Fetches the text from the label of the button, as set by gtk_button_set_label(). If the label text has not been set the return value will be %NULL. This will be the case if you create an empty button with gtk_button_new() to use as a container.
Returns the current relief style of the given #GtkButton.
the main Gtk struct as a void*
Returns whether the button label is a stock item.
Returns whether an embedded underline in the button label indicates a mnemonic. See gtk_button_set_use_underline ().
Emits a #GtkButton::leave signal to the given #GtkButton.
Emits a #GtkButton::pressed signal to the given #GtkButton.
Emits a #GtkButton::released signal to the given #GtkButton.
Sets the alignment of the child. This property has no effect unless the child is a #GtkMisc or a #GtkAlignment.
If %TRUE, the button will ignore the #GtkSettings:gtk-button-images setting and always show the image, if available.
Sets whether the button will grab focus when it is clicked with the mouse. Making mouse clicks not grab focus is useful in places like toolbars where you don’t want the keyboard focus removed from the main area of the application.
Set the image of @button to the given widget. The image will be displayed if the label text is %NULL or if #GtkButton:always-show-image is %TRUE. You don’t have to call gtk_widget_show() on @image yourself.
Sets the position of the image relative to the text inside the button.
Sets the text of the label of the button to @str. This text is also used to select the stock item if gtk_button_set_use_stock() is used.
Sets the relief style of the edges of the given #GtkButton widget. Two styles exist, %GTK_RELIEF_NORMAL and %GTK_RELIEF_NONE. The default style is, as one can guess, %GTK_RELIEF_NORMAL. The deprecated value %GTK_RELIEF_HALF behaves the same as %GTK_RELIEF_NORMAL.
If %TRUE, the label set on the button is used as a stock id to select the stock item for the button.
If true, an underline in the text of the button label indicates the next character should be used for the mnemonic accelerator key.
the main Gtk struct
the main Gtk struct
Get the main Gtk struct
the main Gtk struct as a void*
Gets the child of the #GtkBin, or %NULL if the bin contains no child widget. The returned widget does not have a reference added, so you do not need to unref it.
Get the main Gtk struct
the main Gtk struct as a void*
Gets the action name for @actionable.
Gets the current target value of @actionable.
Specifies the name of the action with which this widget should be associated. If @action_name is %NULL then the widget will be unassociated from any previous action.
Sets the target value of an actionable widget.
Sets the action-name and associated string target value of an actionable widget.
Get the main Gtk struct
the main Gtk struct as a void*
This is a utility function for #GtkActivatable implementors.
Gets the related #GtkAction for @activatable.
Gets whether this activatable should reset its layout and appearance when setting the related action or when the action changes appearance.
Sets the related action on the @activatable object.
Sets whether this activatable should reset its layout and appearance when setting the related action or when the action changes appearance
This is called to update the activatable completely, this is called internally when the #GtkActivatable:related-action property is set or unset and by the implementing class when #GtkActivatable:use-action-appearance changes.
The #GtkButton widget is generally used to trigger a callback function that is called when the button is pressed. The various signals and how to use them are outlined below.
The #GtkButton widget can hold any valid child widget. That is, it can hold almost any other standard #GtkWidget. The most commonly used child is the #GtkLabel.
CSS nodes
GtkButton has a single CSS node with name button. The node will get the style classes .image-button or .text-button, if the content is just an image or label, respectively. It may also receive the .flat style class.
Other style classes that are commonly used with GtkButton include .suggested-action and .destructive-action. In special cases, buttons can be made round by adding the .circular style class.
Button-like widgets like #GtkToggleButton, #GtkMenuButton, #GtkVolumeButton, #GtkLockButton, #GtkColorButton, #GtkFontButton or #GtkFileChooserButton use style classes such as .toggle, .popup, .scale, .lock, .color, .font, .file to differentiate themselves from a plain GtkButton.