| Maintainer | [email protected] |
|---|---|
| Stability | provisional |
| Portability | portable (depends on GHC) |
| Safe Haskell | None |
| Language | Haskell98 |
Graphics.UI.Gtk.Misc.Tooltip
Description
Add tips to your widgets
- Module available since Gtk+ version 2.12
- data Tooltip
- class GObjectClass o => TooltipClass o
- castToTooltip :: GObjectClass obj => obj -> Tooltip
- toTooltip :: TooltipClass o => o -> Tooltip
- tooltipSetMarkup :: (TooltipClass self, GlibString markup) => self -> Maybe markup -> IO ()
- tooltipSetText :: (TooltipClass self, GlibString string) => self -> Maybe string -> IO ()
- tooltipSetIcon :: TooltipClass self => self -> Maybe Pixbuf -> IO ()
- tooltipSetIconFromStock :: (TooltipClass self, GlibString string) => self -> Maybe string -> IconSize -> IO ()
- tooltipSetIconFromIconName :: (TooltipClass self, GlibString string) => self -> Maybe string -> IconSize -> IO ()
- tooltipSetCustom :: (TooltipClass self, WidgetClass widget) => self -> Maybe widget -> IO ()
- tooltipTriggerTooltipQuery :: Display -> IO ()
- tooltipSetTipArea :: TooltipClass self => self -> Rectangle -> IO ()
- tooltipSetIconFromGIcon :: TooltipClass self => self -> Maybe Icon -> IconSize -> IO ()
Detail
Tooltip belongs to the new tooltips API that was introduced in Gtk+
2.12 and which deprecates the old Tooltips API.
Basic tooltips can be realized simply by using widgetTooltipText or
widgetTooltipMarkup without any explicit tooltip object.
When you need a tooltip with a little more fancy contents, like adding an
image, or you want the tooltip to have different contents per TreeView row
or cell, you will have to do a little more work:
- Set the
hasTooltipproperty toTrue, this will make GTK+ monitor the widget for motion and related events which are needed to determine when and where to show a tooltip. - Connect to the
queryTooltipsignal. This signal will be emitted when a tooltip is supposed to be shown. One of the arguments passed to the signal handler is aTooltipobject. This is the object that we are about to display as a tooltip, and can be manipulated in your callback using functions liketooltipSetIcon. There are functions for setting the tooltip's markup, setting an image from a stock icon, or even putting in a custom widget. - Return
Truefrom your query-tooltip handler. This causes the tooltip to be show. If you returnFalse, it will not be shown.
In the probably rare case where you want to have even more control over the tooltip that is about to
be shown, you can set your own Window which will be used as tooltip window. This works as
follows:
- Set
hasTooltipand connect toqueryTooltipas before. - Use
widgetSetTooltipWindowto set aWindowcreated by you as tooltip window. - In the
queryTooltipcallback you can access your window usingwidgetGetTooltipWindowand manipulate as you wish. The semantics of the return value are exactly as before, returnTrueto show the window,Falseto not show it.
Class Hierarchy
| GObject
| +----Tooltip
Types
class GObjectClass o => TooltipClass o Source #
Instances
castToTooltip :: GObjectClass obj => obj -> Tooltip Source #
toTooltip :: TooltipClass o => o -> Tooltip Source #
Methods
Arguments
| :: (TooltipClass self, GlibString markup) | |
| => self | |
| -> Maybe markup |
|
| -> IO () |
Sets the text of the tooltip to be markup, which is marked up with the
Pango text markup language. If markup is Nothing, the label will be hidden.
Arguments
| :: (TooltipClass self, GlibString string) | |
| => self | |
| -> Maybe string |
|
| -> IO () |
Sets the text of the tooltip to be text. If text is Nothing
the label will be hidden. See also tooltipSetMarkup.
Sets the icon of the tooltip (which is in front of the text) to be
pixbuf. If pixbuf is Nothing the image will be hidden.
tooltipSetIconFromStock Source #
Arguments
| :: (TooltipClass self, GlibString string) | |
| => self | |
| -> Maybe string |
|
| -> IconSize |
|
| -> IO () |
Sets the icon of the tooltip (which is in front of the text) to be the
stock item indicated by stockId with the size indicated by size. If
stockId is Nothing the image will be hidden.
tooltipSetIconFromIconName Source #
Arguments
| :: (TooltipClass self, GlibString string) | |
| => self | |
| -> Maybe string |
|
| -> IconSize |
|
| -> IO () |
Sets the icon of the tooltip (which is in front of the text) to be the
icon indicated by iconName with the size indicated by size. If
iconName is Nothing the image will be hidden.
- Available since Gtk+ version 2.14
Arguments
| :: (TooltipClass self, WidgetClass widget) | |
| => self | |
| -> Maybe widget |
|
| -> IO () |
Replaces the widget packed into the tooltip with customWidget.
customWidget does not get destroyed when the tooltip goes away. By default
a box with a Image and Label is embedded in the tooltip, which can be
configured using tooltipSetMarkup and tooltipSetIcon.
tooltipTriggerTooltipQuery Source #
Triggers a new tooltip query on display, in order to update the current
visible tooltip, or to show/hide the current tooltip. This function is
useful to call when, for example, the state of the widget changed by a key
press.
tooltipSetTipArea :: TooltipClass self => self -> Rectangle -> IO () Source #
Sets the area of the widget, where the contents of this tooltip apply, to
be rect (in widget coordinates). This is especially useful for properly
setting tooltips on TreeView rows and cells, IconView
For setting tooltips on TreeView, please refer to the convenience
functions for this: treeViewSetTooltipRow and treeViewSetTooltipCell.
tooltipSetIconFromGIcon Source #
Arguments
| :: TooltipClass self | |
| => self | |
| -> Maybe Icon |
|
| -> IconSize | |
| -> IO () |
Sets the icon of the tooltip (which is in front of the text) to be the icon indicated by gicon with
the size indicated by size. If gicon is Nothing, the image will be hidden.