tooltip - Tooltip management
package require Tcl 8.5
package require msgcat 1.3
package require tooltip ?1.6?
::tooltip::tooltip command ?options?
::tooltip::tooltip pathName ?option value?
message
This package provides tooltips, small text messages that can be
displayed when the mouse hovers over a widget, menu item, canvas item,
listbox or ttk::treeview item, ttk::notebook tab or text widget tag.
- ::tooltip::tooltip command ?options?
- Manage the tooltip package using the following subcommands.
- clear
?pattern?
- Prevents the specified widgets from showing tooltips. pattern is a
glob pattern and defaults to matching all widgets.
- configure
?option ?value option value ...??
- Queries or modifies the configuration options of the tooltip. The
supported options are -backgroud, -foreground and
-font. If no option is specified, returns a dictionary of
the option values. If one option is specified with no value,
returns the value of that option. Otherwise, sets the given options
to the corresponding values.
- delay
?millisecs?
- Query or set the hover delay. This is the interval that the pointer must
remain over the widget before the tooltip is displayed. The delay is
specified in milliseconds and must be greater than or equal to 50 ms. With
no argument the current delay is returned.
- fade
?boolean?
- Enable or disable fading of the tooltip. The fading is enabled by default
on Win32 and Aqua. The tooltip will fade away on Leave events instead
disappearing.
- disable
- off
- Disable all tooltips
- enable
- on
- Enables tooltips for defined widgets.
- ::tooltip::tooltip pathName ?option value?
message
- This command arranges for widget pathName to display a tooltip with
message message. The tooltip uses a late-binding msgcat call on the
passed in message to allow for on-the-fly language changes in an
application. If the widget specified is a menu, canvas, listbox,
ttk::treeview, ttk::notebook or text widget then additional options are
used to tie the tooltip to specific menu, canvas, listbox or ttk::treeview
items, ttk::notebook tabs or text widget tags.
- -index
index
- This option is used to set a tooltip on a menu item. The index may be
either the entry index or the entry label. The widget must be a menu
widget but the entries do not have to exist when the tooltip is set.
- -items
items
- This option is used to set a tooltip for canvas, listbox or ttk::treview
items. For the canvas widget, the item must already be present in the
canvas and will be found with a find withtag lookup. For listbox
and ttk::treview widgets the item(s) may be created later but the
programmer is responsible for managing the link between the listbox or
ttk::treview item index and the corresponding tooltip. If the listbox or
ttk::treview items are re-ordered, the tooltips will need amending.
If the widget is not a canvas, listbox or ttk::treview then an
error is raised.
- -tab
tabId
- The -tab option can be used to set a tooltip for a ttk::notebook
tab. The tab should already be present when this command is called, or an
error will be returned. The widget must be a ttk::notebook widget.
- -tag name
- The -tag option can be used to set a tooltip for a text widget tag.
The tag should already be present when this command is called, or an error
will be returned. The widget must be a text widget.
- --
- The -- option marks the end of options. The argument following this
one will be treated as message even if it starts with a -.
# Demonstrate widget tooltip
package require tooltip
pack [label .l -text "label"]
tooltip::tooltip .l "This is a label widget"
# Demonstrate menu tooltip
package require tooltip
. configure -menu [menu .menu]
.menu add cascade -label Test -menu [menu .menu.test -tearoff 0]
.menu.test add command -label Tooltip
tooltip::tooltip .menu.test -index 0 "This is a menu tooltip"
# Demonstrate canvas item tooltip
package require tooltip
pack [canvas .c]
set item [.c create rectangle 10 10 80 80 -fill red]
tooltip::tooltip .c -item $item "Canvas item tooltip"
# Demonstrate listbox item tooltip
package require tooltip
pack [listbox .lb]
.lb insert 0 "item one"
tooltip::tooltip .lb -item 0 "Listbox item tooltip"
# Demonstrate ttk::notebook tab tooltip
package require tooltip
pack [ttk::notebook .nb]
.nb add [frame .nb.f1 -height 50] -text "First tab"
.nb add [frame .nb.f2 -height 50] -text "Second tab"
tooltip::tooltip .nb -tab 0 "Tooltip for the 1st notebook tab"
tooltip::tooltip .nb -tab 1 "Tooltip for the 2nd notebook tab"
# Demonstrate text tag tooltip
package require tooltip
pack [text .txt]
.txt tag configure TIP-1 -underline 1
tooltip::tooltip .txt -tag TIP-1 "tooltip one text"
.txt insert end "An example of a " {} "tooltip" TIP-1 " tag.\n" {}
This document, and the package it describes, will undoubtedly
contain bugs and other problems. Please report such in the category
tooltip of the Tklib Trackers
[http://core.tcl.tk/tklib/reportlist]. Please also report any ideas for
enhancements you may have for either package and/or documentation.
balloon, help, hover, tooltip
Copyright (c) 1996-2008, Jeffrey Hobbs