WoW:Event API: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
No edit summary
m (Move page script moved page Event API to Event API without leaving a redirect)
 
(25 intermediate revisions by 24 users not shown)
Line 1: Line 1:
{{eventlinks}}{{eventapi}}
Events are a basic and important message passing system for WoW and its UI. The [[Event API]] and the WoW UI are built around these messages being recieved by [[XML/Frame|Frames]] from WoW, through the use of event handlers, and by expressly registering for messages for a frame. An OnLoad event fires for a Frame during load, allowing it register for these event messages. The [[Events A-Z (full list)|List of all Events]] details this event API by providing a reference for each of these messages.


== Reference ==
* [[Events A-Z (full list)|List of all events]]
* [[Events/Communication|Communication events]]
* [[Events from disassembly]] - includes Glue Events
* [[AddOn loading process]] - includes events that fire during the loading process
== Guides ==
* [[Handling events]] - a tutorial on how to set up event handling in your addon.
* [[Parsing event messages]] - extracting information from events with textual parameters.
== Summary ==
From a UI perspective, [[Events]] in WoW are messages sent by the WoW client to the UI Frames (via frame script handlers), mostly in reaction to things occurring in the game world.
The World of Warcraft interface is entirely event driven: all interface code is invoked in response to an event (or OnUpdate "events"). All script execution must be completed before a frame is rendered; therefore, event processing code that takes too long or contains an infinite loop will freeze the client.
You can register your Frame-derived widget to receive an event using the '''frame:[[API_Frame_RegisterEvent|RegisterEvent]]("eventName")''' function. When the events occur, they will be delivered to the OnEvent script handler, which can be set using '''frame:[[API_Frame_SetScript|SetScript]]("OnEvent", handlerFunc)'''. To unregister an event, use '''frame:[[API_Frame_UnregisterEvent|UnregisterEvent]]("eventName")'''.
[[Category:Event API| ]]
[[Category:API events| Events]]

Latest revision as of 04:48, 15 August 2023

Events are a basic and important message passing system for WoW and its UI. The Event API and the WoW UI are built around these messages being recieved by Frames from WoW, through the use of event handlers, and by expressly registering for messages for a frame. An OnLoad event fires for a Frame during load, allowing it register for these event messages. The List of all Events details this event API by providing a reference for each of these messages.

Reference[edit]

Guides[edit]

Summary[edit]

From a UI perspective, Events in WoW are messages sent by the WoW client to the UI Frames (via frame script handlers), mostly in reaction to things occurring in the game world.

The World of Warcraft interface is entirely event driven: all interface code is invoked in response to an event (or OnUpdate "events"). All script execution must be completed before a frame is rendered; therefore, event processing code that takes too long or contains an infinite loop will freeze the client.

You can register your Frame-derived widget to receive an event using the frame:RegisterEvent("eventName") function. When the events occur, they will be delivered to the OnEvent script handler, which can be set using frame:SetScript("OnEvent", handlerFunc). To unregister an event, use frame:UnregisterEvent("eventName").