GtkToolShell: GTK+ 4 Reference Manual

## GtkToolShell GtkToolShell — Interface for containers containing GtkToolItem widgets |

## Functions

PangoEllipsizeMode | gtk_tool_shell_get_ellipsize_mode ()
GtkIconSize | gtk_tool_shell_get_icon_size ()
GtkOrientation | gtk_tool_shell_get_orientation ()
GtkToolbarStyle | gtk_tool_shell_get_style ()
gfloat | gtk_tool_shell_get_text_alignment ()
GtkOrientation | gtk_tool_shell_get_text_orientation ()
void | gtk_tool_shell_rebuild_menu ()
GtkSizeGroup * | gtk_tool_shell_get_text_size_group ()

## Types and Values

| GtkToolShell
struct | GtkToolShellIface

## Object Hierarchy

        GInterface
        ╰── GtkToolShell

## Prerequisites

GtkToolShell requires GtkWidget.

## Known Implementations

GtkToolShell is implemented by GtkToolItemGroup and GtkToolbar.

## Includes

    #include <gtk/gtk.h>

## Description

The GtkToolShell interface allows container widgets to provide additional information when embedding GtkToolItem widgets.

## Functions

### gtk_tool_shell_get_ellipsize_mode ()

    PangoEllipsizeMode
    gtk_tool_shell_get_ellipsize_mode (GtkToolShell *shell);

Retrieves the current ellipsize mode for the tool shell. Tool items must not call this function directly, but rely on `gtk_tool_item_get_ellipsize_mode()` instead.

#### Parameters

shell | a GtkToolShell |

#### Returns

the current ellipsize mode of `shell`

Since: 2.20

### gtk_tool_shell_get_icon_size ()

    GtkIconSize
    gtk_tool_shell_get_icon_size (GtkToolShell *shell);

Retrieves the icon size for the tool shell. Tool items must not call this function directly, but rely on `gtk_tool_item_get_icon_size()` instead.

#### Parameters

shell | a GtkToolShell |

#### Returns

the current size (GtkIconSize) for icons of `shell` .

[type int]

Since: 2.14

### gtk_tool_shell_get_orientation ()

    GtkOrientation
    gtk_tool_shell_get_orientation (GtkToolShell *shell);

Retrieves the current orientation for the tool shell. Tool items must not call this function directly, but rely on `gtk_tool_item_get_orientation()` instead.

#### Parameters

shell | a GtkToolShell |

#### Returns

the current orientation of `shell`

Since: 2.14

### gtk_tool_shell_get_style ()

    GtkToolbarStyle
    gtk_tool_shell_get_style (GtkToolShell *shell);

Retrieves whether the tool shell has text, icons, or both. Tool items must not call this function directly, but rely on `gtk_tool_item_get_toolbar_style()` instead.

#### Parameters

shell | a GtkToolShell |

#### Returns

the current style of `shell`

Since: 2.14

### gtk_tool_shell_get_text_alignment ()

    gfloat
    gtk_tool_shell_get_text_alignment (GtkToolShell *shell);

Retrieves the current text alignment for the tool shell. Tool items must not call this function directly, but rely on `gtk_tool_item_get_text_alignment()` instead.

#### Parameters

shell | a GtkToolShell |

#### Returns

the current text alignment of `shell`

Since: 2.20

### gtk_tool_shell_get_text_orientation ()

    GtkOrientation
    gtk_tool_shell_get_text_orientation (GtkToolShell *shell);

Retrieves the current text orientation for the tool shell. Tool items must not call this function directly, but rely on `gtk_tool_item_get_text_orientation()` instead.

#### Parameters

shell | a GtkToolShell |

#### Returns

the current text orientation of `shell`

Since: 2.20

### gtk_tool_shell_rebuild_menu ()

    void
    gtk_tool_shell_rebuild_menu (GtkToolShell *shell);

Calling this function signals the tool shell that the overflow menu item for tool items have changed. If there is an overflow menu and if it is visible when this function it called, the menu will be rebuilt.

Tool items must not call this function directly, but rely on `gtk_tool_item_rebuild_menu()` instead.

#### Parameters

shell | a GtkToolShell |

Since: 2.14

### gtk_tool_shell_get_text_size_group ()

    GtkSizeGroup *
    gtk_tool_shell_get_text_size_group (GtkToolShell *shell);

Retrieves the current text size group for the tool shell. Tool items must not call this function directly, but rely on `gtk_tool_item_get_text_size_group()` instead.

#### Parameters

shell | a GtkToolShell |

#### Returns

the current text size group of `shell` .

[transfer none]

Since: 2.20

## Types and Values

### GtkToolShell

    typedef struct _GtkToolShell GtkToolShell;

Dummy structure for accessing instances of GtkToolShellIface.

### struct GtkToolShellIface

    struct GtkToolShellIface {
      GtkIconSize        (*get_icon_size)        (GtkToolShell *shell);
      GtkOrientation     (*get_orientation)      (GtkToolShell *shell);
      GtkToolbarStyle    (*get_style)            (GtkToolShell *shell);
      void               (*rebuild_menu)         (GtkToolShell *shell);
      GtkOrientation     (*get_text_orientation) (GtkToolShell *shell);
      gfloat             (*get_text_alignment)   (GtkToolShell *shell);
      PangoEllipsizeMode (*get_ellipsize_mode)   (GtkToolShell *shell);
      GtkSizeGroup *     (*get_text_size_group)  (GtkToolShell *shell);
    };

Virtual function table for the GtkToolShell interface.

#### Members

`get_icon_size` () | mandatory implementation of `gtk_tool_shell_get_icon_size()`. |
`get_orientation` () | mandatory implementation of `gtk_tool_shell_get_orientation()`. |
`get_style` () | mandatory implementation of `gtk_tool_shell_get_style()`. |
`rebuild_menu` () | optional implementation of `gtk_tool_shell_rebuild_menu()`. |
`get_text_orientation` () | optional implementation of `gtk_tool_shell_get_text_orientation()`. |
`get_text_alignment` () | optional implementation of `gtk_tool_shell_get_text_alignment()`. |
`get_ellipsize_mode` () | optional implementation of `gtk_tool_shell_get_ellipsize_mode()`. |
`get_text_size_group` () | optional implementation of `gtk_tool_shell_get_text_size_group()`. |

## See Also

GtkToolbar, GtkToolItem