## GtkStackSwitcher GtkStackSwitcher — A controller for GtkStack |

## Functions

GtkWidget * | gtk_stack_switcher_new ()
void | gtk_stack_switcher_set_stack ()
GtkStack * | gtk_stack_switcher_get_stack ()

## Properties

GtkStack * | stack | Read / Write / Construct

## Types and Values

| GtkStackSwitcher

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkStackSwitcher

## Implemented Interfaces

GtkStackSwitcher implements GtkAccessible, GtkBuildable and GtkConstraintTarget.

## Includes

    #include <gtk/gtk.h>

## 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; the button visibility in a GtkStackSwitcher widget is controlled by the visibility of the child in the GtkStack.

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

### CSS nodes

GtkStackSwitcher has a single CSS node named stackswitcher and style class .stack-switcher.

When circumstances require it, GtkStackSwitcher adds the .needs-attention style class to the widgets representing the stack pages.

## Functions

### gtk_stack_switcher_new ()

    GtkWidget *
    gtk_stack_switcher_new (void);

Create a new GtkStackSwitcher.

#### Returns

a new GtkStackSwitcher.

### gtk_stack_switcher_set_stack ()

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

Sets the stack to control.

#### Parameters

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

### gtk_stack_switcher_get_stack ()

    GtkStack *
    gtk_stack_switcher_get_stack (GtkStackSwitcher *switcher);

Retrieves the stack. See `gtk_stack_switcher_set_stack()`.

#### Parameters

switcher | a GtkStackSwitcher |

#### Returns

the stack, or `NULL` if none has been set explicitly.

[nullable][transfer none]

## Types and Values

### GtkStackSwitcher

    typedef struct _GtkStackSwitcher GtkStackSwitcher;

## Property Details

### The `“stack”` property

      “stack”                    GtkStack *

Stack.

Owner: GtkStackSwitcher

Flags: Read / Write / Construct

## See Also

GtkStack