## TeplPanelContainer TeplPanelContainer — Side or bottom panel container |

## Functions

TeplPanelContainer * | tepl_panel_container_new ()
GList * | tepl_panel_container_get_items ()
TeplPanelItem * | tepl_panel_container_get_active_item ()
const gchar * | tepl_panel_container_get_active_item_name ()
void | tepl_panel_container_set_active_item_name ()
gboolean | tepl_panel_container_has_several_items ()

## Signals

void | changed | Run First

## Types and Values

struct | TeplPanelContainer

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkBin
                        ╰── TeplPanelContainer

## Implemented Interfaces

TeplPanelContainer implements AtkImplementorIface, GtkBuildable and TeplPanel.

## Includes

    #include <tepl/tepl.h>

## Description

TeplPanelContainer is an implementation of the TeplPanel interface.

TeplPanelContainer contains API useful to implement a switcher widget, like TeplPanelSwitcherMenu.

## Functions

### tepl_panel_container_new ()

    TeplPanelContainer *
    tepl_panel_container_new (void);

#### Returns

a new TeplPanelContainer.

[transfer floating]

Since: 6.8

### tepl_panel_container_get_items ()

    GList *
    tepl_panel_container_get_items (TeplPanelContainer *container);

#### Parameters

container | a TeplPanelContainer. |

#### Returns

all the items of `container` .

[transfer full][element-type TeplPanelItem]

Since: 6.8

### tepl_panel_container_get_active_item ()

    TeplPanelItem *
    tepl_panel_container_get_active_item (TeplPanelContainer *container);

#### Parameters

container | a TeplPanelContainer. |

#### Returns

the TeplPanelItem currently shown in `container` .

[transfer none][nullable]

Since: 6.8

### tepl_panel_container_get_active_item_name ()

    const gchar *
    tepl_panel_container_get_active_item_name
                                   (TeplPanelContainer *container);

#### Parameters

container | a TeplPanelContainer. |

#### Returns

the name of the TeplPanelItem currently shown in `container` .

[nullable]

Since: 6.8

### tepl_panel_container_set_active_item_name ()

    void
    tepl_panel_container_set_active_item_name
                                   (TeplPanelContainer *container,
                                    const gchar *name);

Calls `tepl_panel_set_active()` with the TeplPanelItem named `name` (if found).

#### Parameters

container | a TeplPanelContainer. |
name | a name. |

Since: 6.8

### tepl_panel_container_has_several_items ()

    gboolean
    tepl_panel_container_has_several_items
                                   (TeplPanelContainer *container);

Convenience function. Useful to implement a switcher widget.

#### Parameters

container | a TeplPanelContainer. |

#### Returns

whether `container` has more than one TeplPanelItem.

Since: 6.8

## Types and Values

### struct TeplPanelContainer

    struct TeplPanelContainer;

## Signal Details

### The `“changed”` signal

    void
    user_function (TeplPanelContainer *container,
                   gpointer            user_data)

The ::changed signal is emitted when:

- A TeplPanelItem is added or removed from `container` .

- The active TeplPanelItem of `container` has changed.

#### Parameters

container | the TeplPanelContainer emitting the signal. |
user_data | user data set when the signal handler was connected. |

Flags: Run First

Since: 6.8