code: in as
class com.site.ToolTip
{
var oldOnRollOver, toolTipText, toolTipDelay, oldOnRollOut;
static var _text, __get__text, label, _cont, _caller, __get__caller, _mouseListener, intervalID, shadow, bg, __get__active, __set__caller, __set__text;
function ToolTip()
{
} // End of the function
static function set text(_t)
{
_text = _t;
//return (com.site.ToolTip.text());
null;
} // End of the function
static function get text()
{
return (com.site.ToolTip.label.text);
} // End of the function
static function get active()
{
return (com.site.ToolTip._cont._visible);
} // End of the function
static function set caller(_c)
{
_caller = _c;
//return (com.site.ToolTip.caller());
null;
} // End of the function
static function get caller()
{
return (com.site.ToolTip._caller);
} // End of the function
static function show(_t, time)
{
if (time && time > 0)
{
com.site.ToolTip.setText(_t ? (_t) : (com.site.ToolTip._text));
com.site.ToolTip._mouseListener.show = mx.utils.Delegate.create(com.site.ToolTip.getInstance(), com.site.ToolTip.show);
intervalID = setInterval(com.site.ToolTip._mouseListener, "show", time);
return;
} // end if
clearInterval(com.site.ToolTip.intervalID);
Mouse.addListener(com.site.ToolTip._mouseListener);
com.site.ToolTip._mouseListener.onMouseMove = mx.utils.Delegate.create(com.site.ToolTip.getInstance(), com.site.ToolTip.setToolTipToMouse);
com.site.ToolTip.setToolTipToMouse();
com.site.ToolTip._cont._visible = true;
} // End of the function
static function hide()
{
Mouse.removeListener(com.site.ToolTip._mouseListener);
delete com.site.ToolTip._mouseListener.onMouseMove;
com.site.ToolTip._cont._visible = false;
clearInterval(com.site.ToolTip.intervalID);
} // End of the function
static function getInstance()
{
if (com.site.ToolTip._instance == undefined)
{
_instance = new com.site.ToolTip();
com.site.ToolTip.init();
} // end if
return (com.site.ToolTip._instance);
} // End of the function
static function init()
{
_cont = _root.createEmptyMovieClip("__tooltip_mc", 9000);
shadow = com.site.ToolTip._cont.createEmptyMovieClip("shadow", 1);
bg = com.site.ToolTip._cont.createEmptyMovieClip("bg", 2);
com.site.ToolTip._cont.createTextField("label", 3, 5, 0, 5, 20);
label = com.site.ToolTip._cont.label;
com.site.ToolTip.label.autoSize = "left";
com.site.ToolTip.label.html = true;
com.site.ToolTip.label.selectable = false;
com.site.ToolTip.label.multiline = true;
_mouseListener = new Object();
com.site.ToolTip.hide();
} // End of the function
static function setText(_t)
{
com.site.ToolTip.label.htmlText = "<font face=\"Verdana\" size=\"10\">" + _t + "</font>";
com.site.ToolTip.resetBG();
} // End of the function
static function setToolTipToMouse(Void)
{
com.site.ToolTip._cont._x = _root._xmouse + 15;
com.site.ToolTip._cont._y = _root._ymouse;
if (com.site.ToolTip._cont._x + com.site.ToolTip._cont._width > Stage.width)
{
com.site.ToolTip._cont._x = _root._xmouse - com.site.ToolTip._cont._width - 5;
} // end if
if (com.site.ToolTip._cont._y + com.site.ToolTip._cont._height > Stage.height)
{
com.site.ToolTip._cont._y = _root._ymouse - com.site.ToolTip._cont._height - 5;
} // end if
updateAfterEvent();
} // End of the function
static function resetBG(Void)
{
var _loc2 = com.site.ToolTip.label.textWidth + 12;
var _loc1 = com.site.ToolTip.label.textHeight + 4;
com.site.ToolTip.bg.clear();
com.site.ToolTip.bg.lineStyle(0, 3355443, 80);
com.site.ToolTip.bg.beginFill(16777164, 80);
com.site.ToolTip.bg.moveTo(0, 0);
com.site.ToolTip.bg.lineTo(0, _loc1);
com.site.ToolTip.bg.lineTo(_loc2, _loc1);
com.site.ToolTip.bg.lineTo(_loc2, 0);
com.site.ToolTip.bg.lineTo(0, 0);
com.site.ToolTip.bg.endFill();
com.site.ToolTip.shadow.clear();
com.site.ToolTip.shadow.beginFill(3355443, 60);
com.site.ToolTip.shadow.moveTo(2, 2);
com.site.ToolTip.shadow.lineTo(2, _loc1 + 2);
com.site.ToolTip.shadow.lineTo(_loc2 + 2, _loc1 + 2);
com.site.ToolTip.shadow.lineTo(_loc2 + 2, 2);
com.site.ToolTip.shadow.lineTo(2, 2);
com.site.ToolTip.shadow.endFill();
} // End of the function
static function install(mc, text, delay)
{
trace ("install ToolTip on " + mc);
mc.toolTipText = text ? (text) : ("");
mc.toolTipDelay = delay ? (delay) : (500);
mc.oldOnRollOver = mc.onRollOver;
mc.onRollOver = function ()
{
if (oldOnRollOver)
{
this.oldOnRollOver();
} // end if
if (toolTipText != "")
{
com.site.ToolTip.show(toolTipText, toolTipDelay);
} // end if
};
mc.oldOnRollOut = mc.onRollOut;
mc.onRollOut = function ()
{
if (oldOnRollOut)
{
this.oldOnRollOut();
} // end if
com.site.ToolTip.hide();
};
} // End of the function
static var _instance = com.site.ToolTip.getInstance();
} // End of Class