## HdyHeaderGroup

HdyHeaderGroup

## Functions

HdyHeaderGroup * | hdy_header_group_new ()
void | hdy_header_group_add_header_bar ()
GtkHeaderBar * | hdy_header_group_get_focus ()
void | hdy_header_group_set_focus ()
GSList * | hdy_header_group_get_header_bars ()
void | hdy_header_group_remove_header_bar ()

## Properties

GtkHeaderBar * | focus | Read / Write

## Types and Values

#define | HDY_TYPE_HEADER_GROUP
struct | HdyHeaderGroupClass
| HdyHeaderGroup

## Object Hierarchy

        GObject
        ╰── HdyHeaderGroup

## Implemented Interfaces

HdyHeaderGroup implements GtkBuildable.

## Description

## Functions

### hdy_header_group_new ()

    HdyHeaderGroup *
    hdy_header_group_new (void);

### hdy_header_group_add_header_bar ()

    void
    hdy_header_group_add_header_bar (HdyHeaderGroup *self,
                                     GtkHeaderBar *header_bar);

Adds a header bar to a HdyHeaderGroup. The decoration layout of the widgets will be edited depending on their position in the composite header bar, the start widget displaying only the start of the user's decoration layout and the end widget displaying only its end while widgets in the middle won't display anything. A header bar can be set as having the focus to display all the decorations. See `gtk_header_bar_set_decoration_layout()`.

When the widget is destroyed or no longer referenced elsewhere, it will be removed from the header group.

#### Parameters

self | a HdyHeaderGroup |
header_bar | the GtkHeaderBar to add |

### hdy_header_group_get_focus ()

    GtkHeaderBar *
    hdy_header_group_get_focus (HdyHeaderGroup *self);

#### Parameters

self | a HdyHeaderGroup |

#### Returns

The currently focused header bar.

[nullable][transfer none]

### hdy_header_group_set_focus ()

    void
    hdy_header_group_set_focus (HdyHeaderGroup *self,
                                GtkHeaderBar *header_bar);

Sets the the currently focused header bar. If `header_bar` is `NULL`, the decoration will be spread as if the header bars of the group were only one, otherwise `header_bar` will be the only one to receive the decoration.

#### Parameters

self | a HdyHeaderGroup |
header_bar | a GtkHeaderBar of `self` , or `NULL`. | [nullable]

### hdy_header_group_get_header_bars ()

    GSList *
    hdy_header_group_get_header_bars (HdyHeaderGroup *self);

Returns the list of headerbars associated with `self` .

#### Parameters

self | a HdyHeaderGroup |

#### Returns

a GSList of headerbars. The list is owned by libhandy and should not be modified.

[element-type GtkHeaderBar][transfer none]

### hdy_header_group_remove_header_bar ()

    void
    hdy_header_group_remove_header_bar (HdyHeaderGroup *self,
                                        GtkHeaderBar *header_bar);

Removes a widget from a HdyHeaderGroup

#### Parameters

self | a HdyHeaderGroup |
header_bar | the GtkHeaderBar to remove |

## Types and Values

### HDY_TYPE_HEADER_GROUP

    #define HDY_TYPE_HEADER_GROUP (hdy_header_group_get_type())

### struct HdyHeaderGroupClass

    struct HdyHeaderGroupClass {
      GObjectClass parent_class;
    };

#### Members

### HdyHeaderGroup

    typedef struct _HdyHeaderGroup HdyHeaderGroup;

## Property Details

### The `“focus”` property

      “focus”                    GtkHeaderBar *

The the currently focused header bar. If `NULL`, the decoration will be spread as if the header bars of the group were only one, otherwise the focused header bar will be the only one to receive the decoration.

Owner: HdyHeaderGroup

Flags: Read / Write