Top |
gboolean | has-subtitle | Read / Write |
gint | icon-size | Read / Write |
HdyViewSwitcherPolicy | policy | Read / Write |
GtkStack * | stack | Read / Write |
gchar * | subtitle | Read / Write |
gchar * | title | Read / Write |
gboolean | title-visible | Read |
gboolean | view-switcher-enabled | Read / Write |
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkContainer ╰── GtkBin ╰── HdyViewSwitcherTitle
A widget letting you switch between multiple views offered by a GtkStack, via an HdyViewSwitcher. It is designed to be used as the title widget of a HdyHeaderBar, and will display the window's title when the window is too narrow to fit the view switcher e.g. on mobile phones, or if there are less than two views.
You can conveniently bind the “reveal” property to “title-visible” to automatically reveal the view switcher bar when the title label is displayed in place of the view switcher.
An example of the UI definition for a common use case:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
<object class="GtkWindow"/> <child type="titlebar"> <object class="HdyHeaderBar"> <property name="centering-policy">strict</property> <child type="title"> <object class="HdyViewSwitcherTitle" id="view_switcher_title"> <property name="stack">stack</property> </object> </child> </object> </child> <child> <object class="GtkBox"> <child> <object class="GtkStack" id="stack"/> </child> <child> <object class="HdyViewSwitcherBar"> <property name="stack">stack</property> <property name="reveal" bind-source="view_switcher_title" bind-property="title-visible" bind-flags="sync-create"/> </object> </child> </object> </child> </object> |
HdyViewSwitcherTitle *
hdy_view_switcher_title_new (void
);
Creates a new HdyViewSwitcherTitle widget.
Since: 1.0
HdyViewSwitcherPolicy
hdy_view_switcher_title_get_policy (HdyViewSwitcherTitle *self
);
Gets the policy of self
.
Since: 1.0
void hdy_view_switcher_title_set_policy (HdyViewSwitcherTitle *self
,HdyViewSwitcherPolicy policy
);
Sets the policy of self
.
Since: 1.0
GtkIconSize
hdy_view_switcher_title_get_icon_size (HdyViewSwitcherTitle *self
);
Get the icon size of the images used in the HdyViewSwitcher.
Since: 1.0
void hdy_view_switcher_title_set_icon_size (HdyViewSwitcherTitle *self
,GtkIconSize icon_size
);
Change the icon size hint for the icons in a HdyViewSwitcher.
Since: 1.0
GtkStack *
hdy_view_switcher_title_get_stack (HdyViewSwitcherTitle *self
);
Get the GtkStack being controlled by the HdyViewSwitcher.
Since: 1.0
void hdy_view_switcher_title_set_stack (HdyViewSwitcherTitle *self
,GtkStack *stack
);
Sets the GtkStack to control.
Since: 1.0
const gchar *
hdy_view_switcher_title_get_title (HdyViewSwitcherTitle *self
);
Gets the title of self
. See hdy_view_switcher_title_set_title()
.
Since: 1.0
void hdy_view_switcher_title_set_title (HdyViewSwitcherTitle *self
,const gchar *title
);
Sets the title of self
. The title should give a user additional details. A
good title should not include the application name.
Since: 1.0
const gchar *
hdy_view_switcher_title_get_subtitle (HdyViewSwitcherTitle *self
);
Gets the subtitle of self
. See hdy_view_switcher_title_set_subtitle()
.
Since: 1.0
void hdy_view_switcher_title_set_subtitle (HdyViewSwitcherTitle *self
,const gchar *subtitle
);
Sets the subtitle of self
. The subtitle should give a user additional
details.
Note that HdyViewSwitcherTitle by default reserves room for the subtitle,
even if none is currently set. If this is not desired, set the
“has-subtitle” property to FALSE
.
Since: 1.0
gboolean
hdy_view_switcher_title_get_has_subtitle
(HdyViewSwitcherTitle *self
);
gets whether the view switcher reserves space for a subtitle, regardless if one is currently set or not.
Since: 1.0
void hdy_view_switcher_title_set_has_subtitle (HdyViewSwitcherTitle *self
,gboolean has_subtitle
);
Sets whether the view switcher should reserve space for a subtitle, even if none is currently set.
Since: 1.0
gboolean
hdy_view_switcher_title_get_view_switcher_enabled
(HdyViewSwitcherTitle *self
);
Gets whether self
's view switcher is enabled.
See hdy_view_switcher_title_set_view_switcher_enabled()
.
Since: 1.0
void hdy_view_switcher_title_set_view_switcher_enabled (HdyViewSwitcherTitle *self
,gboolean enabled
);
Make self
enable or disable its view switcher. If it is disabled, the title
will be displayed instead. This allows to programmatically and prematurely
hide the view switcher of self
even if it fits in the available space.
This can be used e.g. to ensure the view switcher is hidden below a certain window width, or any other constraint you find suitable.
Since: 1.0
gboolean
hdy_view_switcher_title_get_title_visible
(HdyViewSwitcherTitle *self
);
Get whether the title label of self
is visible.
Since: 1.0
#define HDY_TYPE_VIEW_SWITCHER_TITLE (hdy_view_switcher_title_get_type())
“has-subtitle”
property“has-subtitle” gboolean
If TRUE
, reserve space for a subtitle, even if none is currently set.
Owner: HdyViewSwitcherTitle
Flags: Read / Write
Default value: TRUE
Since: 1.0
“icon-size”
property“icon-size” gint
Use the "icon-size" property to hint the icons to use, you almost certainly
want to leave this as GTK_ICON_SIZE_BUTTON
.
Owner: HdyViewSwitcherTitle
Flags: Read / Write
Allowed values: >= 0
Default value: 4
Since: 1.0
“policy”
property“policy” HdyViewSwitcherPolicy
The HdyViewSwitcherPolicy the HdyViewSwitcher should use to determine which mode to use.
Owner: HdyViewSwitcherTitle
Flags: Read / Write
Default value: HDY_VIEW_SWITCHER_POLICY_WIDE
Since: 1.0
“stack”
property“stack” GtkStack *
The GtkStack the HdyViewSwitcher controls.
Owner: HdyViewSwitcherTitle
Flags: Read / Write
Since: 1.0
“subtitle”
property“subtitle” gchar *
The subtitle of the HdyViewSwitcher.
Owner: HdyViewSwitcherTitle
Flags: Read / Write
Default value: NULL
Since: 1.0
“title”
property“title” gchar *
The title of the HdyViewSwitcher.
Owner: HdyViewSwitcherTitle
Flags: Read / Write
Default value: NULL
Since: 1.0
“title-visible”
property“title-visible” gboolean
Whether the bar should be revealed or hidden.
Owner: HdyViewSwitcherTitle
Flags: Read
Default value: TRUE
Since: 1.0