FrameXML Functions API
This skill documents the FrameXML layer of the WoW API — global Lua functions defined by Blizzard's interface code, shared XML utility modules, mixin system, object pools, and game utility modules. These are distinct from the C-based Widget API.
Source of truth: https://warcraft.wiki.gg/wiki/FrameXML_functions FrameXML source: https://github.com/Gethe/wow-ui-source/tree/live/Interface/FrameXML SharedXML source: https://github.com/Gethe/wow-ui-source/tree/live/Interface/SharedXML Current as of: Patch 12.0.0 — Retail only.
When to Use This Skill
Use this skill when you need to:
-
Toggle standard UI panels (ToggleCharacter , ShowUIPanel , ToggleSpellBook )
-
Use standard UI dialogs (StaticPopup_Show ) or context menus (EasyMenu )
-
Use the Mixin / Object Pool system (CreateFromMixins , CreateFramePool )
-
Filter or extend chat messages (ChatFrame_AddMessageEventFilter )
-
Format numbers, money, or time (SecondsToTime , FormatLargeNumber , GetMoneyString )
-
Use table utilities (tContains , tDeleteItem , tInvert , CopyTable )
-
Use math utilities (Lerp , Clamp , Round , CalculateDistance )
-
Create texture/atlas markup for FontStrings (CreateAtlasMarkup , CreateTextureMarkup )
-
Build tooltips with helpers (GameTooltip_AddNormalLine , GameTooltip_SetTitle )
-
Handle pixel-perfect UI (PixelUtil.SetSize , PixelUtil.SetPoint )
-
Use event convenience functions (EventUtil.ContinueOnAddOnLoaded )
-
Register/animate frames (UIFrameFadeIn , ScriptAnimationUtil.ShakeFrameRandom )
-
Manage bags (OpenAllBags , ToggleBag , IsBagOpen )
-
Preview items/mounts in dressing room (DressUpItemLink )
-
Query player/class/spec info (PlayerUtil.GetCurrentSpecID , GetClassColor )
-
Work with quest icons, map utils, communities, transmog, or other game utilities
References
Reference Contents
UIPARENT.md UI panel toggles, ShowUIPanel , CloseSpecialWindows , MouseIsOver , number abbreviation
MIXINS-AND-POOLS.md Mixin system, CreateFromMixins , CreateColor , object/frame/texture pools
SHAREDXML-DATA-UTILS.md TableUtil, MathUtil, TimeUtil, FormattingUtil, ColorUtil, CvarUtil, EasingUtil, EventUtil, EventRegistry, FunctionUtil, LinkUtil, Flags, AuraUtil, UnitUtil
SHAREDXML-UI-UTILS.md FrameUtil, TextureUtil, PixelUtil, AnchorUtil, NineSlice, RegionUtil, ScriptAnimationUtil, GameTooltipTemplate, TooltipUtil, UIFrameFadeIn/Out
FRAMEXML-GAME-UTILS.md AchievementUtil, ActionButtonUtil, AzeriteUtil, CalendarUtil, CampaignUtil, CommunitiesUtil, DifficultyUtil, ItemRef/ItemUtil, MapUtil, PlayerUtil, PVPUtil, PartyUtil, QuestUtils, TransmogUtil, and more
CHATFRAME-CONTAINERS.md ChatFrame functions, bag open/close/toggle, DressUpFrames, StaticPopup_Show, EasyMenu