ToolButton

#GtkToolButtons are #GtkToolItems containing buttons.

Use gtk_tool_button_new() to create a new #GtkToolButton.

The label of a #GtkToolButton is determined by the properties #GtkToolButton:label-widget, #GtkToolButton:label, and #GtkToolButton:stock-id. If #GtkToolButton:label-widget is non-%NULL, then that widget is used as the label. Otherwise, if #GtkToolButton:label is non-%NULL, that string is used as the label. Otherwise, if #GtkToolButton:stock-id is non-%NULL, the label is determined by the stock item. Otherwise, the button does not have a label.

The icon of a #GtkToolButton is determined by the properties #GtkToolButton:icon-widget and #GtkToolButton:stock-id. If #GtkToolButton:icon-widget is non-%NULL, then that widget is used as the icon. Otherwise, if #GtkToolButton:stock-id is non-%NULL, the icon is determined by the stock item. Otherwise, the button does not have a icon.

CSS nodes

GtkToolButton has a single CSS node with name toolbutton.

Constructors

this
this(GtkToolButton* gtkToolButton, bool ownedRef)

Sets our main struct and passes it to the parent class.

this
this(StockID stockID)
this
this(Widget iconWidget, string label)

Creates a new #GtkToolButton using @icon_widget as contents and @label as label.

this
this(string stockId)

Creates a new #GtkToolButton containing the image and text from a stock item. Some stock ids have preprocessor macros like #GTK_STOCK_OK and #GTK_STOCK_APPLY.

Members

Functions

addOnClicked
gulong addOnClicked(void delegate(ToolButton) dlg, ConnectFlags connectFlags)

This signal is emitted when the tool button is clicked with the mouse or activated with the keyboard.

getIconName
string getIconName()

Returns the name of the themed icon for the tool button, see gtk_tool_button_set_icon_name().

getIconWidget
Widget getIconWidget()

Return the widget used as icon widget on @button. See gtk_tool_button_set_icon_widget().

getLabel
string getLabel()

Returns the label used by the tool button, or %NULL if the tool button doesn’t have a label. or uses a the label from a stock item. The returned string is owned by GTK+, and must not be modified or freed.

getLabelWidget
Widget getLabelWidget()

Returns the widget used as label on @button. See gtk_tool_button_set_label_widget().

getStockId
string getStockId()

Returns the name of the stock item. See gtk_tool_button_set_stock_id(). The returned string is owned by GTK+ and must not be freed or modifed.

getStruct
void* getStruct()

the main Gtk struct as a void*

getToolButtonStruct
GtkToolButton* getToolButtonStruct(bool transferOwnership)

Get the main Gtk struct

getUseUnderline
bool getUseUnderline()

Returns whether underscores in the label property are used as mnemonics on menu items on the overflow menu. See gtk_tool_button_set_use_underline().

setIconName
void setIconName(string iconName)

Sets the icon for the tool button from a named themed icon. See the docs for #GtkIconTheme for more details. The #GtkToolButton:icon-name property only has an effect if not overridden by non-%NULL #GtkToolButton:label-widget, #GtkToolButton:icon-widget and #GtkToolButton:stock-id properties.

setIconWidget
void setIconWidget(Widget iconWidget)

Sets @icon as the widget used as icon on @button. If @icon_widget is %NULL the icon is determined by the #GtkToolButton:stock-id property. If the #GtkToolButton:stock-id property is also %NULL, @button will not have an icon.

setLabel
void setLabel(string label)

Sets @label as the label used for the tool button. The #GtkToolButton:label property only has an effect if not overridden by a non-%NULL #GtkToolButton:label-widget property. If both the #GtkToolButton:label-widget and #GtkToolButton:label properties are %NULL, the label is determined by the #GtkToolButton:stock-id property. If the #GtkToolButton:stock-id property is also %NULL, @button will not have a label.

setLabelWidget
void setLabelWidget(Widget labelWidget)

Sets @label_widget as the widget that will be used as the label for @button. If @label_widget is %NULL the #GtkToolButton:label property is used as label. If #GtkToolButton:label is also %NULL, the label in the stock item determined by the #GtkToolButton:stock-id property is used as label. If #GtkToolButton:stock-id is also %NULL, @button does not have a label.

setStockId
void setStockId(string stockId)

Sets the name of the stock item. See gtk_tool_button_new_from_stock(). The stock_id property only has an effect if not overridden by non-%NULL #GtkToolButton:label-widget and #GtkToolButton:icon-widget properties.

setUseUnderline
void setUseUnderline(bool useUnderline)

If set, an underline in the label property indicates that the next character should be used for the mnemonic accelerator key in the overflow menu. For example, if the label property is “_Open” and @use_underline is %TRUE, the label on the tool button will be “Open” and the item on the overflow menu will have an underlined “O”.

Mixins

__anonymous
mixin ActionableT!(GtkToolButton)
Undocumented in source.

Static functions

getType
GType getType()

Variables

gtkToolButton
GtkToolButton* gtkToolButton;

the main Gtk struct

Inherited Members

From ToolItem

gtkToolItem
GtkToolItem* gtkToolItem;

the main Gtk struct

getToolItemStruct
GtkToolItem* getToolItemStruct(bool transferOwnership)

Get the main Gtk struct

getStruct
void* getStruct()

the main Gtk struct as a void*

__anonymous
mixin ActivatableT!(GtkToolItem)
Undocumented in source.
getType
GType getType()
getEllipsizeMode
PangoEllipsizeMode getEllipsizeMode()

Returns the ellipsize mode used for @tool_item. Custom subclasses of #GtkToolItem should call this function to find out how text should be ellipsized.

getExpand
bool getExpand()

Returns whether @tool_item is allocated extra space. See gtk_tool_item_set_expand().

getHomogeneous
bool getHomogeneous()

Returns whether @tool_item is the same size as other homogeneous items. See gtk_tool_item_set_homogeneous().

getIconSize
GtkIconSize getIconSize()

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.

getIsImportant
bool getIsImportant()

Returns whether @tool_item is considered important. See gtk_tool_item_set_is_important()

getOrientation
GtkOrientation getOrientation()

Returns the orientation used for @tool_item. Custom subclasses of #GtkToolItem should call this function to find out what size icons they should use.

getProxyMenuItem
Widget getProxyMenuItem(string menuItemId)

If @menu_item_id matches the string passed to gtk_tool_item_set_proxy_menu_item() return the corresponding #GtkMenuItem.

getReliefStyle
GtkReliefStyle getReliefStyle()

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 #GtkToolItem::toolbar_reconfigured signal to find out the relief style of buttons.

getTextAlignment
float getTextAlignment()

Returns the text alignment used for @tool_item. Custom subclasses of #GtkToolItem should call this function to find out how text should be aligned.

getTextOrientation
GtkOrientation getTextOrientation()

Returns the text orientation used for @tool_item. Custom subclasses of #GtkToolItem should call this function to find out how text should be orientated.

getTextSizeGroup
SizeGroup getTextSizeGroup()

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.

getToolbarStyle
GtkToolbarStyle getToolbarStyle()

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

getUseDragWindow
bool getUseDragWindow()

Returns whether @tool_item has a drag window. See gtk_tool_item_set_use_drag_window().

getVisibleHorizontal
bool getVisibleHorizontal()

Returns whether the @tool_item is visible on toolbars that are docked horizontally.

getVisibleVertical
bool getVisibleVertical()

Returns whether @tool_item is visible when the toolbar is docked vertically. See gtk_tool_item_set_visible_vertical().

rebuildMenu
void rebuildMenu()

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.

retrieveProxyMenuItem
Widget retrieveProxyMenuItem()

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.

setExpand
void setExpand(bool 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.

setHomogeneous
void setHomogeneous(bool 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.

setIsImportant
void setIsImportant(bool isImportant)

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”

setProxyMenuItem
void setProxyMenuItem(string menuItemId, Widget menuItem)

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().

setTooltipMarkup
void setTooltipMarkup(string markup)

Sets the markup text to be displayed as tooltip on the item. See gtk_widget_set_tooltip_markup().

setTooltipText
void setTooltipText(string text)

Sets the text to be displayed as tooltip on the item. See gtk_widget_set_tooltip_text().

setUseDragWindow
void setUseDragWindow(bool useDragWindow)

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.

setVisibleHorizontal
void setVisibleHorizontal(bool visibleHorizontal)

Sets whether @tool_item is visible when the toolbar is docked horizontally.

setVisibleVertical
void setVisibleVertical(bool visibleVertical)

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.

toolbarReconfigured
void toolbarReconfigured()

Emits the signal #GtkToolItem::toolbar_reconfigured on @tool_item. #GtkToolbar and other #GtkToolShell implementations use this function to notify children, when some aspect of their configuration changes.

addOnCreateMenuProxy
gulong addOnCreateMenuProxy(bool delegate(ToolItem) dlg, ConnectFlags connectFlags)

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

addOnToolbarReconfigured
gulong addOnToolbarReconfigured(void delegate(ToolItem) dlg, ConnectFlags connectFlags)

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.

From ActionableIF

getActionableStruct
GtkActionable* getActionableStruct(bool transferOwnership)

Get the main Gtk struct

getStruct
void* getStruct()

the main Gtk struct as a void*

getType
GType getType()
getActionName
string getActionName()

Gets the action name for @actionable.

getActionTargetValue
Variant getActionTargetValue()

Gets the current target value of @actionable.

setActionName
void setActionName(string actionName)

Specifies the name of the action with which this widget should be associated. If @action_name is %NULL then the widget will be unassociated from any previous action.

setActionTargetValue
void setActionTargetValue(Variant targetValue)

Sets the target value of an actionable widget.

setDetailedActionName
void setDetailedActionName(string detailedActionName)

Sets the action-name and associated string target value of an actionable widget.

Meta