Top |
Functions
Properties
gboolean | is-important | Read / Write |
gboolean | visible-horizontal | Read / Write |
gboolean | visible-vertical | Read / Write |
Object Hierarchy
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkContainer ╰── GtkBin ╰── GtkToolItem ├── GtkToolButton ╰── GtkSeparatorToolItem
Description
GtkToolItems are widgets that can appear on a toolbar. To
create a toolbar item that contain something else than a button, use
gtk_tool_item_new()
. Use gtk_container_add()
to add a child
widget to the tool item.
For toolbar items that contain buttons, see the GtkToolButton, GtkToggleToolButton and GtkRadioToolButton classes.
See the GtkToolbar class for a description of the toolbar widget, and GtkToolShell for a description of the tool shell interface.
Functions
gtk_tool_item_set_homogeneous ()
void gtk_tool_item_set_homogeneous (GtkToolItem *tool_item
,gboolean homogeneous
);
Sets whether tool_item
is to be allocated the same size as other
homogeneous items. The effect is that all homogeneous items will have
the same width as the widest of the items.
Since 2.4
gtk_tool_item_get_homogeneous ()
gboolean
gtk_tool_item_get_homogeneous (GtkToolItem *tool_item
);
Returns whether tool_item
is the same size as other homogeneous
items. See gtk_tool_item_set_homogeneous()
.
Since 2.4
gtk_tool_item_set_expand ()
void gtk_tool_item_set_expand (GtkToolItem *tool_item
,gboolean expand
);
Sets whether tool_item
is allocated extra space when there
is more room on the toolbar then needed for the items. The
effect is that the item gets bigger when the toolbar gets bigger
and smaller when the toolbar gets smaller.
Since 2.4
gtk_tool_item_get_expand ()
gboolean
gtk_tool_item_get_expand (GtkToolItem *tool_item
);
Returns whether tool_item
is allocated extra space.
See gtk_tool_item_set_expand()
.
Since 2.4
gtk_tool_item_set_tooltip_text ()
void gtk_tool_item_set_tooltip_text (GtkToolItem *tool_item
,const gchar *text
);
Sets the text to be displayed as tooltip on the item.
See gtk_widget_set_tooltip_text()
.
Since 2.12
gtk_tool_item_set_tooltip_markup ()
void gtk_tool_item_set_tooltip_markup (GtkToolItem *tool_item
,const gchar *markup
);
Sets the markup text to be displayed as tooltip on the item.
See gtk_widget_set_tooltip_markup()
.
Since 2.12
gtk_tool_item_set_use_drag_window ()
void gtk_tool_item_set_use_drag_window (GtkToolItem *tool_item
,gboolean use_drag_window
);
Sets whether tool_item
has a drag window. When TRUE
the
toolitem can be used as a drag source through gtk_drag_source_set()
.
When tool_item
has a drag window it will intercept all events,
even those that would otherwise be sent to a child of tool_item
.
Since 2.4
gtk_tool_item_get_use_drag_window ()
gboolean
gtk_tool_item_get_use_drag_window (GtkToolItem *tool_item
);
Returns whether tool_item
has a drag window. See
gtk_tool_item_set_use_drag_window()
.
Since 2.4
gtk_tool_item_set_visible_horizontal ()
void gtk_tool_item_set_visible_horizontal (GtkToolItem *tool_item
,gboolean visible_horizontal
);
Sets whether tool_item
is visible when the toolbar is docked horizontally.
Since 2.4
gtk_tool_item_get_visible_horizontal ()
gboolean
gtk_tool_item_get_visible_horizontal (GtkToolItem *tool_item
);
Returns whether the tool_item
is visible on toolbars that are
docked horizontally.
Since 2.4
gtk_tool_item_set_visible_vertical ()
void gtk_tool_item_set_visible_vertical (GtkToolItem *tool_item
,gboolean visible_vertical
);
Sets whether tool_item
is visible when the toolbar is docked
vertically. Some tool items, such as text entries, are too wide to be
useful on a vertically docked toolbar. If visible_vertical
is FALSE
tool_item
will not appear on toolbars that are docked vertically.
Parameters
tool_item |
||
visible_vertical |
whether |
Since 2.4
gtk_tool_item_get_visible_vertical ()
gboolean
gtk_tool_item_get_visible_vertical (GtkToolItem *tool_item
);
Returns whether tool_item
is visible when the toolbar is docked vertically.
See gtk_tool_item_set_visible_vertical()
.
Since 2.4
gtk_tool_item_set_is_important ()
void gtk_tool_item_set_is_important (GtkToolItem *tool_item
,gboolean is_important
);
Sets whether tool_item
should be considered important. The GtkToolButton
class uses this property to determine whether to show or hide its label
when the toolbar style is GTK_TOOLBAR_BOTH_HORIZ
. The result is that
only tool buttons with the “is_important” property set have labels, an
effect known as “priority text”
Since 2.4
gtk_tool_item_get_is_important ()
gboolean
gtk_tool_item_get_is_important (GtkToolItem *tool_item
);
Returns whether tool_item
is considered important. See
gtk_tool_item_set_is_important()
Since 2.4
gtk_tool_item_get_ellipsize_mode ()
PangoEllipsizeMode
gtk_tool_item_get_ellipsize_mode (GtkToolItem *tool_item
);
Returns the ellipsize mode used for tool_item
. Custom subclasses of
GtkToolItem should call this function to find out how text should
be ellipsized.
Since 2.20
gtk_tool_item_get_icon_size ()
GtkIconSize
gtk_tool_item_get_icon_size (GtkToolItem *tool_item
);
Returns the icon size used for tool_item
. Custom subclasses of
GtkToolItem should call this function to find out what size icons
they should use.
Since 2.4
gtk_tool_item_get_orientation ()
GtkOrientation
gtk_tool_item_get_orientation (GtkToolItem *tool_item
);
Returns the orientation used for tool_item
. Custom subclasses of
GtkToolItem should call this function to find out what size icons
they should use.
Since 2.4
gtk_tool_item_get_toolbar_style ()
GtkToolbarStyle
gtk_tool_item_get_toolbar_style (GtkToolItem *tool_item
);
Returns the toolbar style used for tool_item
. Custom subclasses of
GtkToolItem should call this function in the handler of the
GtkToolItem::toolbar_reconfigured signal to find out in what style
the toolbar is displayed and change themselves accordingly
Possibilities are:
GTK_TOOLBAR_BOTH
, meaning the tool item should show both an icon and a label, stacked verticallyGTK_TOOLBAR_ICONS
, meaning the toolbar shows only iconsGTK_TOOLBAR_TEXT
, meaning the tool item should only show textGTK_TOOLBAR_BOTH_HORIZ
, meaning the tool item should show both an icon and a label, arranged horizontally
Since 2.4
gtk_tool_item_get_relief_style ()
GtkReliefStyle
gtk_tool_item_get_relief_style (GtkToolItem *tool_item
);
Returns the relief style of tool_item
. See gtk_button_set_relief()
.
Custom subclasses of GtkToolItem should call this function in the handler
of the “toolbar_reconfigured” signal to find out the
relief style of buttons.
Since 2.4
gtk_tool_item_get_text_alignment ()
gfloat
gtk_tool_item_get_text_alignment (GtkToolItem *tool_item
);
Returns the text alignment used for tool_item
. Custom subclasses of
GtkToolItem should call this function to find out how text should
be aligned.
Since 2.20
gtk_tool_item_get_text_orientation ()
GtkOrientation
gtk_tool_item_get_text_orientation (GtkToolItem *tool_item
);
Returns the text orientation used for tool_item
. Custom subclasses of
GtkToolItem should call this function to find out how text should
be orientated.
Since 2.20
gtk_tool_item_retrieve_proxy_menu_item ()
GtkWidget *
gtk_tool_item_retrieve_proxy_menu_item
(GtkToolItem *tool_item
);
Returns the GtkMenuItem that was last set by
gtk_tool_item_set_proxy_menu_item()
, ie. the GtkMenuItem
that is going to appear in the overflow menu.
Returns
The GtkMenuItem that is going to appear in the
overflow menu for tool_item
.
[transfer none]
Since 2.4
gtk_tool_item_get_proxy_menu_item ()
GtkWidget * gtk_tool_item_get_proxy_menu_item (GtkToolItem *tool_item
,const gchar *menu_item_id
);
If menu_item_id
matches the string passed to
gtk_tool_item_set_proxy_menu_item()
return the corresponding GtkMenuItem.
Custom subclasses of GtkToolItem should use this function to
update their menu item when the GtkToolItem changes. That the
menu_item_ids
must match ensures that a GtkToolItem
will not inadvertently change a menu item that they did not create.
Returns
The GtkMenuItem passed to
gtk_tool_item_set_proxy_menu_item()
, if the menu_item_ids
match.
[transfer none]
Since 2.4
gtk_tool_item_set_proxy_menu_item ()
void gtk_tool_item_set_proxy_menu_item (GtkToolItem *tool_item
,const gchar *menu_item_id
,GtkWidget *menu_item
);
Sets the GtkMenuItem used in the toolbar overflow menu. The
menu_item_id
is used to identify the caller of this function and
should also be used with gtk_tool_item_get_proxy_menu_item()
.
Parameters
tool_item |
||
menu_item_id |
a string used to identify |
|
menu_item |
a GtkMenuItem to be used in the overflow menu |
Since 2.4
gtk_tool_item_rebuild_menu ()
void
gtk_tool_item_rebuild_menu (GtkToolItem *tool_item
);
Calling this function signals to the toolbar that the
overflow menu item for tool_item
has changed. If the
overflow menu is visible when this function it called,
the menu will be rebuilt.
The function must be called when the tool item changes what it will do in response to the “create-menu-proxy” signal.
Since 2.6
gtk_tool_item_toolbar_reconfigured ()
void
gtk_tool_item_toolbar_reconfigured (GtkToolItem *tool_item
);
Emits the signal “toolbar_reconfigured” on tool_item
.
GtkToolbar and other GtkToolShell implementations use this function
to notify children, when some aspect of their configuration changes.
Since 2.14
gtk_tool_item_get_text_size_group ()
GtkSizeGroup *
gtk_tool_item_get_text_size_group (GtkToolItem *tool_item
);
Returns the size group used for labels in tool_item
.
Custom subclasses of GtkToolItem should call this function
and use the size group for labels.
Since 2.20
Types and Values
struct GtkToolItem
struct GtkToolItem;
The GtkToolItem struct contains only private data. It should only be accessed through the functions described below.
struct GtkToolItemClass
struct GtkToolItemClass { GtkBinClass parent_class; /* signals */ gboolean (* create_menu_proxy) (GtkToolItem *tool_item); void (* toolbar_reconfigured) (GtkToolItem *tool_item); };
Members
GtkBinClass |
The parent class. |
|
Signal emitted when the toolbar needs information from tool_item about whether the item should appear in the toolbar overflow menu. |
||
Signal emitted when some property of the toolbar that the item is a child of changes. |
Property Details
The “is-important”
property
“is-important” gboolean
Whether the toolbar item is considered important. When TRUE, toolbar buttons show text in GTK_TOOLBAR_BOTH_HORIZ mode.
Flags: Read / Write
Default value: FALSE
The “visible-horizontal”
property
“visible-horizontal” gboolean
Whether the toolbar item is visible when the toolbar is in a horizontal orientation.
Flags: Read / Write
Default value: TRUE
The “visible-vertical”
property
“visible-vertical” gboolean
Whether the toolbar item is visible when the toolbar is in a vertical orientation.
Flags: Read / Write
Default value: TRUE
Signal Details
The “create-menu-proxy”
signal
gboolean user_function (GtkToolItem *tool_item, gpointer user_data)
This signal is emitted when the toolbar needs information from tool_item
about whether the item should appear in the toolbar overflow menu. In
response the tool item should either
call
gtk_tool_item_set_proxy_menu_item()
with aNULL
pointer and returnTRUE
to indicate that the item should not appear in the overflow menucall
gtk_tool_item_set_proxy_menu_item()
with a new menu item and returnTRUE
, orreturn
FALSE
to indicate that the signal was not handled by the item. This means that the item will not appear in the overflow menu unless a later handler installs a menu item.
The toolbar may cache the result of this signal. When the tool item changes
how it will respond to this signal it must call gtk_tool_item_rebuild_menu()
to invalidate the cache and ensure that the toolbar rebuilds its overflow
menu.
Parameters
tool_item |
the object the signal was emitted on |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
The “toolbar-reconfigured”
signal
void user_function (GtkToolItem *tool_item, gpointer user_data)
This signal is emitted when some property of the toolbar that the item is a child of changes. For custom subclasses of GtkToolItem, the default handler of this signal use the functions
gtk_tool_shell_get_orientation()
gtk_tool_shell_get_style()
gtk_tool_shell_get_icon_size()
gtk_tool_shell_get_relief_style() to find out what the toolbar should look like and change themselves accordingly.
Parameters
tool_item |
the object the signal was emitted on |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last