home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 2004 May
/
PCWorld_2004-05_cd.bin
/
software
/
temacd
/
winamp
/
winamp503_snowpatrol.exe
/
Plugins
/
tooltips.m
< prev
next >
Wrap
Text File
|
2003-10-31
|
1KB
|
35 lines
#include <lib/std.mi>
Global Group tipGroup;
Global Text tipText;
System.onScriptLoaded() {
tipGroup = getScriptGroup();
tipText = tipGroup.getObject("tooltip.text");
}
// When text is changed, resize the group accordingly and make sure it's fully visible
tipText.onTextChanged(String newtext) {
int x = getMousePosX();
int y = getMousePosY()-tipGroup.getHeight(); // move above mouse by default
int vpleft = getViewportLeftFromPoint(x, y);
int vptop = getViewportTopFromPoint(x, y);
int vpright = vpleft+getViewportWidthFromPoint(x, y);
int vpbottom = vptop+getViewportHeightFromPoint(x, y);
int w = getTextWidth()+20;
int h = tipGroup.getHeight();
if (x + w > vpright) x = vpright - w;
if (x < vpleft) x = vpleft;
if (x + w > vpright) { w = vpright-vpleft-64; x = 32; }
if (y + h > vpbottom) y = vpbottom - h;
if (y < vptop) y = vptop + 32; // avoid mouse
if (y + h > vpbottom) { h = vpbottom-vptop-64; y = 32; }
tipGroup.resize(x, y, w, h);
}