             // End any show or hide effects that might be playing on it.
             EffectManager.endEffectsForTarget(currentToolTip);
 
-			if (dispatchEvent(new Event("removeChild", false, true)))
+            var e:DynamicEvent = new DynamicEvent("removeChild", false, true);
+            e.sm = currentToolTip.systemManager;
+            e.toolTip = currentToolTip;
+		    if (dispatchEvent(e))
 			{
 				// Remove it.
 				var sm:ISystemManager = currentToolTip.systemManager as ISystemManager;

     */
    public function destroyToolTip(toolTip:IToolTip):void
    {
		if (dispatchEvent(new Event("removeChild", false, true)))
		{
			// Remove it.
			var sm:ISystemManager = toolTip.systemManager as ISystemManager;

                                          FlexGlobals.topLevelApplication.systemManager as ISystemManager;

		
        var event:DynamicEvent = new DynamicEvent("addChild", false, true);
        event.sm = sm;
        event.toolTip = toolTip;
		if (dispatchEvent(event))
		{
		    sm.topLevelSystemManager.toolTipChildren.addChild(toolTip as DisplayObject);
		}
