gi-gtk-3.0.33: Gtk bindings
Copyright Will Thompson Iñaki García Etxebarria and Jonas Platte LGPL-2.1 Iñaki García Etxebarria None Haskell2010

Description

GtkHeaderBar is similar to a horizontal Box. It allows children to be placed at the start or the end. In addition, it allows a title and subtitle to be displayed. The title will be centered with respect to the width of the box, even if the children at either side take up different amounts of space. The height of the titlebar will be set to provide sufficient space for the subtitle, even if none is currently set. If a subtitle is not needed, the space reservation can be turned off with headerBarSetHasSubtitle.

GtkHeaderBar can add typical window frame controls, such as minimize, maximize and close buttons, or the window icon.

For these reasons, GtkHeaderBar is the natural choice for use as the custom titlebar widget of a Window (see windowSetTitlebar), as it gives features typical of titlebars while allowing the addition of child widgets.

Synopsis

# Exported types

Memory-managed wrapper type.

Constructors

#### Instances

Instances details
 Source # Instance detailsDefined in GI.Gtk.Objects.HeaderBar Methods Source # Convert HeaderBar to and from GValue with toGValue and fromGValue. Instance detailsDefined in GI.Gtk.Objects.HeaderBar Methods Source # Instance detailsDefined in GI.Gtk.Objects.HeaderBar Methods Source # Instance detailsDefined in GI.Gtk.Objects.HeaderBar Source # Instance detailsDefined in GI.Gtk.Objects.HeaderBar

Type class for types which can be safely cast to HeaderBar, for instance with toHeaderBar.

#### Instances

Instances details
 Source # Instance detailsDefined in GI.Gtk.Objects.HeaderBar

Cast to HeaderBar, for types for which this is known to be safe. For general casts, use castTo.

# Methods

## getCustomTitle

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> m (Maybe Widget) Returns: the custom title widget of the header, or Nothing if none has been set explicitly.

Retrieves the custom title widget of the header. See headerBarSetCustomTitle.

Since: 3.10

## getDecorationLayout

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> m Text Returns: the decoration layout

Gets the decoration layout set with headerBarSetDecorationLayout.

Since: 3.12

## getHasSubtitle

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> m Bool Returns: True if the header bar reserves space for a subtitle

Retrieves whether the header bar reserves space for a subtitle, regardless if one is currently set or not.

Since: 3.12

## getShowCloseButton

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> m Bool Returns: True if the decorations are shown

Returns whether this header bar shows the standard window decorations.

Since: 3.10

## getSubtitle

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> m (Maybe Text) Returns: the subtitle of the header, or Nothing if none has been set explicitly. The returned string is owned by the widget and must not be modified or freed.

Retrieves the subtitle of the header. See headerBarSetSubtitle.

Since: 3.10

## getTitle

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> m (Maybe Text) Returns: the title of the header, or Nothing if none has been set explicitly. The returned string is owned by the widget and must not be modified or freed.

Retrieves the title of the header. See headerBarSetTitle.

Since: 3.10

## new

Arguments

 :: (HasCallStack, MonadIO m) => m HeaderBar Returns: a new HeaderBar

Creates a new HeaderBar widget.

Since: 3.10

## packEnd

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a, IsWidget b) => a bar: A HeaderBar -> b child: the Widget to be added to bar -> m ()

Adds child to bar, packed with reference to the end of the bar.

Since: 3.10

## packStart

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a, IsWidget b) => a bar: A HeaderBar -> b child: the Widget to be added to bar -> m ()

Adds child to bar, packed with reference to the start of the bar.

Since: 3.10

## setCustomTitle

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a, IsWidget b) => a bar: a HeaderBar -> Maybe b titleWidget: a custom widget to use for a title -> m ()

Sets a custom title for the HeaderBar.

The title should help a user identify the current view. This supersedes any title set by headerBarSetTitle or headerBarSetSubtitle. To achieve the same style as the builtin title and subtitle, use the “title” and “subtitle” style classes.

You should set the custom title to Nothing, for the header title label to be visible again.

Since: 3.10

## setDecorationLayout

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> Maybe Text layout: a decoration layout, or Nothing to unset the layout -> m ()

Sets the decoration layout for this header bar, overriding the Settings:gtk-decoration-layout setting.

There can be valid reasons for overriding the setting, such as a header bar design that does not allow for buttons to take room on the right, or only offers room for a single close button. Split header bars are another example for overriding the setting.

The format of the string is button names, separated by commas. A colon separates the buttons that should appear on the left from those on the right. Recognized button names are minimize, maximize, close, icon (the window icon) and menu (a menu button for the fallback app menu).

For example, “menu:minimize,maximize,close” specifies a menu on the left, and minimize, maximize and close buttons on the right.

Since: 3.12

## setHasSubtitle

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> Bool setting: True to reserve space for a subtitle -> m ()

Sets whether the header bar should reserve space for a subtitle, even if none is currently set.

Since: 3.12

## setShowCloseButton

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> Bool setting: True to show standard window decorations -> m ()

Sets whether this header bar shows the standard window decorations, including close, maximize, and minimize.

Since: 3.10

## setSubtitle

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> Maybe Text subtitle: a subtitle, or Nothing -> m ()

Sets the subtitle of the HeaderBar. The title should give a user an additional detail to help him identify the current view.

Note that GtkHeaderBar by default reserves room for the subtitle, even if none is currently set. If this is not desired, set the HeaderBar:has-subtitle property to False.

Since: 3.10

## setTitle

Arguments

 :: (HasCallStack, MonadIO m, IsHeaderBar a) => a bar: a HeaderBar -> Maybe Text title: a title, or Nothing -> m ()

Sets the title of the HeaderBar. The title should help a user identify the current view. A good title should not include the application name.

Since: 3.10

# Properties

## customTitle

No description available in the introspection data.

Set the value of the “custom-title” property to Nothing. When overloading is enabled, this is equivalent to

clear #customTitle


Construct a GValueConstruct with valid value for the “custom-title” property. This is rarely needed directly, but it is used by new.

Get the value of the “custom-title” property. When overloading is enabled, this is equivalent to

get headerBar #customTitle


setHeaderBarCustomTitle :: (MonadIO m, IsHeaderBar o, IsWidget a) => o -> a -> m () Source #

Set the value of the “custom-title” property. When overloading is enabled, this is equivalent to

set headerBar [ #customTitle := value ]


## decorationLayout

The decoration layout for buttons. If this property is not set, the Settings:gtk-decoration-layout setting is used.

See headerBarSetDecorationLayout for information about the format of this string.

Since: 3.12

Set the value of the “decoration-layout” property to Nothing. When overloading is enabled, this is equivalent to

clear #decorationLayout


Construct a GValueConstruct with valid value for the “decoration-layout” property. This is rarely needed directly, but it is used by new.

Get the value of the “decoration-layout” property. When overloading is enabled, this is equivalent to

get headerBar #decorationLayout


Set the value of the “decoration-layout” property. When overloading is enabled, this is equivalent to

set headerBar [ #decorationLayout := value ]


## decorationLayoutSet

Set to True if HeaderBar:decoration-layout is set.

Since: 3.12

Construct a GValueConstruct with valid value for the “decoration-layout-set” property. This is rarely needed directly, but it is used by new.

Get the value of the “decoration-layout-set” property. When overloading is enabled, this is equivalent to

get headerBar #decorationLayoutSet


Set the value of the “decoration-layout-set” property. When overloading is enabled, this is equivalent to

set headerBar [ #decorationLayoutSet := value ]


## hasSubtitle

If True, reserve space for a subtitle, even if none is currently set.

Since: 3.12

Construct a GValueConstruct with valid value for the “has-subtitle” property. This is rarely needed directly, but it is used by new.

Get the value of the “has-subtitle” property. When overloading is enabled, this is equivalent to

get headerBar #hasSubtitle


Set the value of the “has-subtitle” property. When overloading is enabled, this is equivalent to

set headerBar [ #hasSubtitle := value ]


## showCloseButton

Whether to show window decorations.

Which buttons are actually shown and where is determined by the HeaderBar:decoration-layout property, and by the state of the window (e.g. a close button will not be shown if the window can't be closed).

Construct a GValueConstruct with valid value for the “show-close-button” property. This is rarely needed directly, but it is used by new.

Get the value of the “show-close-button” property. When overloading is enabled, this is equivalent to

get headerBar #showCloseButton


Set the value of the “show-close-button” property. When overloading is enabled, this is equivalent to

set headerBar [ #showCloseButton := value ]


## spacing

No description available in the introspection data.

Construct a GValueConstruct with valid value for the “spacing” property. This is rarely needed directly, but it is used by new.

Get the value of the “spacing” property. When overloading is enabled, this is equivalent to

get headerBar #spacing


Set the value of the “spacing” property. When overloading is enabled, this is equivalent to

set headerBar [ #spacing := value ]


## subtitle

No description available in the introspection data.

Set the value of the “subtitle” property to Nothing. When overloading is enabled, this is equivalent to

clear #subtitle


Construct a GValueConstruct with valid value for the “subtitle” property. This is rarely needed directly, but it is used by new.

Get the value of the “subtitle” property. When overloading is enabled, this is equivalent to

get headerBar #subtitle


Set the value of the “subtitle” property. When overloading is enabled, this is equivalent to

set headerBar [ #subtitle := value ]


## title

No description available in the introspection data.

Set the value of the “title” property to Nothing. When overloading is enabled, this is equivalent to

clear #title


Construct a GValueConstruct with valid value for the “title” property. This is rarely needed directly, but it is used by new.

Get the value of the “title” property. When overloading is enabled, this is equivalent to
get headerBar #title

Set the value of the “title” property. When overloading is enabled, this is equivalent to
set headerBar [ #title := value ]