TipDisplay¶
- structure TipDisplay¶
A
TipDisplay
widget is a special case kind ofLabel
widget you can put inside Box objects viaBOX:ADDTIPDISPLAY
.In order to show tooltips in a kOS GUI, you need to place a TipDisplay Widget somewhere in your GUI window. Tooltips will not just appear in a hovering little window next to the mouse pointer like you may be used to seeing in most GUI systems. Instead to make them appear you need to define a location within the GUI window where you want them to show up. The
TipDisplay
is how you do that.It is generally good practice to only have one
TipDisplay
per GUI window.A good place to put a
TipDisplay
is either in a line by itself across the top of the window, or in a line by itself across the bottom of the window, although it’s up to you where you want to put it.A
TipDisplay
is aLabel
in every way, using the same suffixes thatLabel
has. The only special thing it does is that it:Has its own style, called “tipDisplay”, which can get seperate style settings.
Has its
TEXT
value automatically populated by the Tooltips of the other widgets you hover over, within limits. If no such hover text is avaiable, or the mouse isn’t over a supported widget type, then theTEXT
field will be an empty string (""
).
Please be aware that Unity3d’s IMGUI system does not support Tooltips for all widget types. Generally they exist for any widget you see here which is derived from
Label
like Labels and Buttons. But they don’t exist for the other types of widget. The best you can do is to have a tooltip on the label of the widget in those cases.Also,
TEXTFIELD
has a limitation to its tooltip type, which is explained on its page:TEXTFIELD:TOOLTIP
.Suffix
Type
Description
Every suffix of
Label
Example - This small program draws a little GUI window in which the buttons have tooltips that appear at the bottom of the window when you hover the mouse over the buttons:
local done is false. local g is gui(200). local tiptext is g:addtipdisplay(). local buttonsBox is g:addhbox(). local b1 is buttonsBox:addbutton("low"). set b1:tooltip to "Makes low pitch note.". set b1:onclick to {getvoice(0):play(note(200,0.5)).}. local b2 is buttonsBox:addbutton("medium"). set b2:tooltip to "Makes medium pitch note.". set b2:onclick to {getvoice(0):play(note(300,0.5)).}. local b3 is buttonsBox:addbutton("high"). set b3:tooltip to "Makes high pitch note.". set b3:onclick to {getvoice(0):play(note(400,0.5)).}. local bClose is g:addbutton("Close"). set bClose:tooltip to "Ends program.". set bClose:onclick to {set done to true.}. g:show(). wait until done. g:dispose().