WoW API: MouseIsOver

From AddOn Studio
Revision as of 03:27, 29 May 2020 by Bear (talk | contribs)
Jump to navigation Jump to search

WoW API < MouseIsOver

"I" iconThis function is implemented in Lua here FrameXML/UIParent.lua.

Determines whether or not the mouse is over the specified frame.

isOver = MouseIsOver(frame, topOffset, bottomOffset, leftOffset, rightOffset);

Parameters

Arguments

(frame, [topOffset, bottomOffset, leftOffset, rightOffset])
  • frame (Frame) - The frame (or frame-derived object such as Buttons, etc) to test with
  • topOffset (number) - distance from the top to include in calculations. optional
  • bottomOffset (number) - distance from the bottom to include in calculations. optional
  • leftOffset (number) - distance from the left to include in calculations. optional
  • rightOffset (number) - distance from the right to include in calculations. optional

Returns

  • isOver (boolean) - A 'true' value if the mouse is over the frame, 'false<' otherwise.

Example

You can determine whether or not the mouse is over the minimap using the below.

if (MouseIsOver(MinimapCluster)) then
   -- do something
end

Details

It doesn't matter if the frame is hidden or not, if the mouse would be over it when you :Show() it then this function does return true.

Most importantly, it will still return true if the frame in question has its mouse response disabled using EnableMouse(false). Hence, MouseIsOver is what you need for rollover effects not interfering with the player's world clicks.