## GtkStackSwitcher

GtkStackSwitcher — A controller for GtkStack

## Synopsis

    #include <gtk/gtk.h>

    struct              GtkStackSwitcher;
    GtkWidget *         gtk_stack_switcher_new              (void);
    void                gtk_stack_switcher_set_stack        (GtkStackSwitcher *switcher,
                                                             GtkStack *stack);
    GtkStack *          gtk_stack_switcher_get_stack        (GtkStackSwitcher *switcher);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkWidget
                   +----GtkContainer
                         +----GtkBox
                               +----GtkStackSwitcher

## Implemented Interfaces

GtkStackSwitcher implements AtkImplementorIface, GtkBuildable and GtkOrientable.

## Properties

      "stack"                    GtkStack*             : Read / Write / Construct

## Description

The GtkStackSwitcher widget acts as a controller for a GtkStack; it shows a row of buttons to switch between the various pages of the associated stack widget.

All the content for the buttons comes from the child properties of the GtkStack.

It is possible to associate multiple GtkStackSwitcher widgets with the same stack widget.

The GtkStackSwitcher widget was added in 3.10.

## Details

### struct GtkStackSwitcher

    struct GtkStackSwitcher;

### gtk_stack_switcher_new ()

    GtkWidget *         gtk_stack_switcher_new              (void);

Create a new GtkStackSwitcher.

Returns : | a new GtkStackSwitcher.

Since 3.10

### gtk_stack_switcher_set_stack ()

    void                gtk_stack_switcher_set_stack        (GtkStackSwitcher *switcher,
                                                             GtkStack *stack);

Sets the stack to control.

`switcher` : | a GtkStackSwitcher
`stack` : | a GtkStack. [allow-none]

Since 3.10

### gtk_stack_switcher_get_stack ()

    GtkStack *          gtk_stack_switcher_get_stack        (GtkStackSwitcher *switcher);

Retrieves the stack. See `gtk_stack_switcher_set_stack()`.

`switcher` : | a GtkStackSwitcher
Returns : | the stack, or `NULL` if none has been set explicitly. [transfer none]

Since 3.10

## Property Details

### The `"stack"` property

      "stack"                    GtkStack*             : Read / Write / Construct

Stack.

## See Also

GtkStack