ButtonContent#

class ButtonContent(**properties: Any)#

Superclasses: Widget, InitiallyUnowned, Object

Implemented Interfaces: Accessible, Buildable, ConstraintTarget

A helper widget for creating buttons.

https://gnome.pages.gitlab.gnome.org/libadwaita/doc/1-latest/button-content.png

AdwButtonContent is a box-like widget with an icon and a label.

It’s intended to be used as a direct child of Button, MenuButton or SplitButton, when they need to have both an icon and a label, as follows:

<object class="GtkButton">
  <property name="child">
    <object class="AdwButtonContent">
      <property name="icon-name">document-open-symbolic</property>
      <property name="label" translatable="yes">_Open</property>
      <property name="use-underline">True</property>
    </object>
  </property>
</object>

AdwButtonContent handles style classes and connecting the mnemonic to the button automatically.

CSS nodes#

buttoncontent
╰── box
    ├── image
    ╰── label

AdwButtonContent's CSS node is called buttoncontent. It contains a box subnode that serves as a container for the image and label nodes.

When inside a GtkButton or AdwSplitButton, the button will receive the .image-text-button style class. When inside a GtkMenuButton, the internal GtkButton will receive it instead.

Accessibility#

AdwButtonContent uses the GTK_ACCESSIBLE_ROLE_GROUP role.

Constructors#

class ButtonContent
classmethod new() Widget#

Creates a new AdwButtonContent.

Methods#

class ButtonContent
get_can_shrink() bool#

gets whether the button can be smaller than the natural size of its contents.

Added in version 1.4.

get_icon_name() str#

Gets the name of the displayed icon.

get_label() str#

Gets the displayed label.

get_use_underline() bool#

Gets whether an underline in the text indicates a mnemonic.

set_can_shrink(can_shrink: bool) None#

Sets whether the button can be smaller than the natural size of its contents.

If set to TRUE, the label will ellipsize.

See set_can_shrink.

Added in version 1.4.

Parameters:

can_shrink – whether the button can shrink

set_icon_name(icon_name: str) None#

Sets the name of the displayed icon.

If empty, the icon is not shown.

Parameters:

icon_name – the new icon name

set_label(label: str) None#

Sets the displayed label.

Parameters:

label – the new label

set_use_underline(use_underline: bool) None#

Sets whether an underline in the text indicates a mnemonic.

The mnemonic can be used to activate the parent button.

See label.

Parameters:

use_underline – whether an underline in the text indicates a mnemonic

Properties#

class ButtonContent
props.can_shrink: bool#

The type of the None singleton.

Added in version 1.4.

props.icon_name: str#

The type of the None singleton.

props.label: str#

The type of the None singleton.

props.use_underline: bool#

The type of the None singleton.