XML elements

The Widget XML schema is one method to construct user interface widgets when initializing the game and each AddOn. This should be read in conjunction with the following pages:
 * Widget API - Functions to program each widget while the game is running
 * Widget Handlers - Handlers for responding to user interaction and game-state changes
 * Category:Widgets - Articles about each widget type, describing alternate methods to construct them
 * Category:XML elements - Alphabetical list of all articles about XML elements

FrameXML defines this schema in  which is archived at Townlong-Yak.

UI
See also:

The document root that all other tags must reside in

Include
See also:

Loads another XML or Lua (.lua) file. Customarily near the top of an XML file so the dependence is clear.

Script
See also:

Loads a Lua (.lua) file. Customarily near the top of an XML file so the dependence is clear.

CheckButton
Clicking adds or remove check mark. Commonly used for option panels.

CheckButton has all the attributes of plus the following:
 * checked  Source: DefaultUI - FrameXML\TutorialFrame.xmlElement name:  TutorialFrameCheckButton

CheckButton has all the tags of plus the following:
 * checkedtexture  Source: DefaultUI - FrameXML\ActionButtonTemplate.xmlElement name:  ActionButtonTemplate
 * disabledcheckedtexture  Source: DefaultUI - FrameXML\FriendsFrame.xmlElement name:  GuildControlPopupFrameCheckboxTemplate

ColorSelect
Allows the user to choose a color. Commonly used for customizing the appearance of a UI element.

ColorSelect has all the attributes of.

Known Tags:
 * size  Source: DefaultUI - FrameXML\ColorPickerFrame.xmlElement name:  ColorPickerFrame
 * anchors  Source: DefaultUI - FrameXML\ColorPickerFrame.xmlElement name:  ColorPickerFrame
 * backdrop  Source: DefaultUI - FrameXML\ColorPickerFrame.xmlElement name:  ColorPickerFrame
 * layers  Source: DefaultUI - FrameXML\ColorPickerFrame.xmlElement name:  ColorPickerFrame
 * frames  Source: DefaultUI - FrameXML\ColorPickerFrame.xmlElement name:  ColorPickerFrame
 * scripts <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  ColorPickerFrame
 * colorwheeltexture <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  ColorPickerFrame
 * colorwheelthumbtexture <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  ColorPickerFrame
 * colorvaluetexture <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  ColorPickerFrame
 * colorvaluethumbtexture <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  ColorPickerFrame

Cooldown
Used for spell and action buttons to show its cooldown state.

Cooldown has all the attributes of plus the following:
 * reverse <BR /> Source: DefaultUI - FrameXML\TargetFrame.xml<BR />Element name:  $parentCooldown

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\ActionButtonTemplate.xml<BR />Element name:  $parentCooldown
 * anchors <BR /> Source: DefaultUI - FrameXML\ActionButtonTemplate.xml<BR />Element name:  $parentCooldown

EditBox
Used to type in any kind of text.

EditBox has all the attributes of plus the following:
 * letters <BR /> Source: DefaultUI - FrameXML\ArenaRegistrarFrame.xml<BR />Element name:  ArenaRegistrarFrameEditBox
 * historylines <BR /> Source: DefaultUI - FrameXML\ArenaRegistrarFrame.xml<BR />Element name:  ArenaRegistrarFrameEditBox
 * ignorearrows <BR /> Source: DefaultUI - FrameXML\ChatFrame.xml<BR />Element name:  ChatFrameEditBoxTemplate
 * autofocus <BR /> Source: DefaultUI - FrameXML\FriendsFrame.xml<BR />Element name:  WhoFrameEditBox
 * multiline <BR /> Source: DefaultUI - FrameXML\FriendsFrame.xml<BR />Element name:  GuildInfoEditBox
 * numeric <BR /> Source: DefaultUI - FrameXML\MoneyInputFrame.xml<BR />Element name:  $parentGold

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\ArenaRegistrarFrame.xml<BR />Element name:  ArenaRegistrarFrameEditBox
 * anchors <BR /> Source: DefaultUI - FrameXML\ArenaRegistrarFrame.xml<BR />Element name:  ArenaRegistrarFrameEditBox
 * layers <BR /> Source: DefaultUI - FrameXML\ArenaRegistrarFrame.xml<BR />Element name:  ArenaRegistrarFrameEditBox
 * scripts <BR /> Source: DefaultUI - FrameXML\ArenaRegistrarFrame.xml<BR />Element name:  ArenaRegistrarFrameEditBox
 * fontstring <BR /> Source: DefaultUI - FrameXML\ArenaRegistrarFrame.xml<BR />Element name:  ArenaRegistrarFrameEditBox
 * frames <BR /> Source: DefaultUI - FrameXML\ChatFrame.xml<BR />Element name:  ChatFrameEditBoxTemplate

GameTooltip
Displays a frame at the position of the cursor, whose contents typically depend on what is being moused over.

GameTooltip has all the attributes of.

Known Tags:
 * scripts <BR /> Source: DefaultUI - FrameXML\GameTooltip.xml<BR />Element name:  GameTooltip
 * backdrop <BR /> Source: DefaultUI - FrameXML\GameTooltipTemplate.xml<BR />Element name:  GameTooltipTemplate
 * layers <BR /> Source: DefaultUI - FrameXML\GameTooltipTemplate.xml<BR />Element name:  GameTooltipTemplate
 * frames <BR /> Source: DefaultUI - FrameXML\GameTooltipTemplate.xml<BR />Element name:  GameTooltipTemplate
 * size <BR /> Source: DefaultUI - FrameXML\ItemRef.xml<BR />Element name:  ItemRefTooltip
 * anchors <BR /> Source: DefaultUI - FrameXML\ItemRef.xml<BR />Element name:  ItemRefTooltip

MessageFrame
A window like a frame, but for storing messages.

MessageFrame has all the attributes of plus the following:
 * insertmode <BR /> Source: DefaultUI - FrameXML\RaidWarning.xml<BR />Element name:  RaidWarningFrame
 * displayduration <BR /> Source: DefaultUI - FrameXML\UIErrorsFrame.xml<BR />Element name:  UIErrorsFrame

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\RaidWarning.xml<BR />Element name:  RaidWarningFrame
 * anchors <BR /> Source: DefaultUI - FrameXML\RaidWarning.xml<BR />Element name:  RaidWarningFrame
 * scripts <BR /> Source: DefaultUI - FrameXML\RaidWarning.xml<BR />Element name:  RaidWarningFrame
 * fontstring <BR /> Source: DefaultUI - FrameXML\RaidWarning.xml<BR />Element name:  RaidWarningFrame

Minimap
This is specific element for a radar showing you detailed map with units/resources on it

Minimap has all the attributes of plus the following:
 * minimapplayermodel <BR /> Source: DefaultUI - FrameXML\Minimap.xml<BR />Element name:  Minimap
 * minimaparrowmodel <BR /> Source: DefaultUI - FrameXML\Minimap.xml<BR />Element name:  Minimap

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\Minimap.xml<BR />Element name:  Minimap
 * anchors <BR /> Source: DefaultUI - FrameXML\Minimap.xml<BR />Element name:  Minimap
 * frames <BR /> Source: DefaultUI - FrameXML\Minimap.xml<BR />Element name:  Minimap
 * scripts <BR /> Source: DefaultUI - FrameXML\Minimap.xml<BR />Element name:  Minimap

Model
Displays a 3D model.

Model has all the attributes of plus the following:
 * file <BR /> Source: DefaultUI - FrameXML\MainMenuBarBagButtons.xml<BR />Element name:  ItemAnimTemplate

Known Tags:
 * scripts <BR /> Source: DefaultUI - FrameXML\MainMenuBarBagButtons.xml<BR />Element name:  ItemAnimTemplate
 * anchors <BR /> Source: DefaultUI - FrameXML\MainMenuBarBagButtons.xml<BR />Element name:  $parentItemAnim
 * size <BR /> Source: DefaultUI - FrameXML\Minimap.xml<BR />Element name:  MiniMapPing

DressUpModel
Needs more testing. Used for checking how some linked item will look on character.

DressUpModel has all the attributes of.

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\DressUpFrame.xml<BR />Element name:  DressUpModel
 * anchors <BR /> Source: DefaultUI - FrameXML\DressUpFrame.xml<BR />Element name:  DressUpModel
 * scripts <BR /> Source: DefaultUI - FrameXML\DressUpFrame.xml<BR />Element name:  DressUpModel
 * frames <BR /> Source: DefaultUI - FrameXML\DressUpFrame.xml<BR />Element name:  DressUpModel

PlayerModel
Displays a 3D model of a player character. The model can preview items.

PlayerModel has all the attributes of.

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\PaperDollFrame.xml<BR />Element name:  CharacterModelFrame
 * anchors <BR /> Source: DefaultUI - FrameXML\PaperDollFrame.xml<BR />Element name:  CharacterModelFrame
 * scripts <BR /> Source: DefaultUI - FrameXML\PaperDollFrame.xml<BR />Element name:  CharacterModelFrame
 * frames <BR /> Source: DefaultUI - FrameXML\PaperDollFrame.xml<BR />Element name:  CharacterModelFrame

TabardModel
Displays tabard.

TabardModel has all the attributes of.

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\TabardFrame.xml<BR />Element name:  TabardModel
 * anchors <BR /> Source: DefaultUI - FrameXML\TabardFrame.xml<BR />Element name:  TabardModel
 * frames <BR /> Source: DefaultUI - FrameXML\TabardFrame.xml<BR />Element name:  TabardModel
 * scripts <BR /> Source: DefaultUI - FrameXML\TabardFrame.xml<BR />Element name:  TabardModel

ScrollFrame
Window that allows to scroll in up/down to show more info.

ScrollFrame has all the attributes of.

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\BattlefieldFrame.xml<BR />Element name:  BattlefieldListScrollFrame
 * anchors <BR /> Source: DefaultUI - FrameXML\BattlefieldFrame.xml<BR />Element name:  BattlefieldListScrollFrame
 * layers <BR /> Source: DefaultUI - FrameXML\BattlefieldFrame.xml<BR />Element name:  BattlefieldListScrollFrame
 * scripts <BR /> Source: DefaultUI - FrameXML\BattlefieldFrame.xml<BR />Element name:  BattlefieldListScrollFrame
 * scrollchild <BR /> Source: DefaultUI - FrameXML\FriendsFrame.xml<BR />Element name:  GuildInfoFrameScrollFrame
 * frames <BR /> Source: DefaultUI - FrameXML\UIPanelTemplates.xml<BR />Element name:  UIPanelScrollFrameTemplate

ScrollingMessageFrame
Same as ScrollFrame but for messages only.

ScrollingMessageFrame has all the attributes of plus the following:
 * displayduration <BR /> Source: DefaultUI - FrameXML\ChatFrame.xml<BR />Element name:  ChatFrameTemplate
 * maxlines <BR /> Source: DefaultUI - FrameXML\ChatFrame.xml<BR />Element name:  ChatFrameTemplate

Known Tags:
 * scripts <BR /> Source: DefaultUI - FrameXML\ChatFrame.xml<BR />Element name:  ChatFrameTemplate
 * fontstring <BR /> Source: DefaultUI - FrameXML\ChatFrame.xml<BR />Element name:  ChatFrameTemplate
 * size <BR /> Source: DefaultUI - FrameXML\FloatingChatFrame.xml<BR />Element name:  FloatingChatFrameTemplate
 * anchors <BR /> Source: DefaultUI - FrameXML\FloatingChatFrame.xml<BR />Element name:  FloatingChatFrameTemplate
 * titleregion <BR /> Source: DefaultUI - FrameXML\FloatingChatFrame.xml<BR />Element name:  FloatingChatFrameTemplate
 * resizebounds <BR /> Source: DefaultUI - FrameXML\FloatingChatFrame.xml<BR />Element name:  FloatingChatFrameTemplate
 * layers <BR /> Source: DefaultUI - FrameXML\FloatingChatFrame.xml<BR />Element name:  FloatingChatFrameTemplate
 * frames <BR /> Source: DefaultUI - FrameXML\FloatingChatFrame.xml<BR />Element name:  FloatingChatFrameTemplate

SimpleHTML
Shows up a window with content organized as in html file. Still only some common tags of html are supported, so it's impossible to load html pages inside it.

SimpleHTML has all the attributes of.

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\ItemTextFrame.xml<BR />Element name:  ItemTextPageText
 * anchors <BR /> Source: DefaultUI - FrameXML\ItemTextFrame.xml<BR />Element name:  ItemTextPageText
 * fontstring <BR /> Source: DefaultUI - FrameXML\ItemTextFrame.xml<BR />Element name:  ItemTextPageText

Slider
A scroll bar for scrolling elements.

Slider has all the attributes of plus the following:
 * orientation <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * minvalue <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * maxvalue <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * valuestep <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * defaultvalue <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * anchors <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * backdrop <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * layers <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * scripts <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * thumbtexture <BR /> Source: DefaultUI - FrameXML\ColorPickerFrame.xml<BR />Element name:  OpacitySliderFrame
 * hitrectinsets <BR /> Source: DefaultUI - FrameXML\OptionsFrameTemplates.xml<BR />Element name:  OptionsSliderTemplate
 * frames <BR /> Source: DefaultUI - FrameXML\UIPanelTemplates.xml<BR />Element name:  UIPanelScrollBarTemplate

StatusBar
Needs more testing. Used in casing bar.

StatusBar has all the attributes of plus the following:
 * drawlayer <BR /> Source: DefaultUI - FrameXML\CastingBarFrame.xml<BR />Element name:  CastingBarFrameTemplate
 * inherits <BR /> Source: DefaultUI - FrameXML\CastingBarFrame.xml<BR />Element name:  CastingBarFrame
 * minvalue <BR /> Source: DefaultUI - FrameXML\HonorFrame.xml<BR />Element name:  HonorFrameProgressBar
 * maxvalue <BR /> Source: DefaultUI - FrameXML\HonorFrame.xml<BR />Element name:  HonorFrameProgressBar
 * defaultvalue <BR /> Source: DefaultUI - FrameXML\HonorFrame.xml<BR />Element name:  HonorFrameProgressBar

Known Tags:
 * layers <BR /> Source: DefaultUI - FrameXML\CastingBarFrame.xml<BR />Element name:  CastingBarFrameTemplate
 * scripts <BR /> Source: DefaultUI - FrameXML\CastingBarFrame.xml<BR />Element name:  CastingBarFrameTemplate
 * bartexture <BR /> Source: DefaultUI - FrameXML\CastingBarFrame.xml<BR />Element name:  CastingBarFrameTemplate
 * barcolor <BR /> Source: DefaultUI - FrameXML\CastingBarFrame.xml<BR />Element name:  CastingBarFrameTemplate
 * size <BR /> Source: DefaultUI - FrameXML\CastingBarFrame.xml<BR />Element name:  CastingBarFrame
 * anchors <BR /> Source: DefaultUI - FrameXML\CastingBarFrame.xml<BR />Element name:  CastingBarFrame
 * frames <BR /> Source: DefaultUI - FrameXML\HonorFrame.xml<BR />Element name:  HonorFrameProgressBar
 * hitrectinsets <BR /> Source: DefaultUI - FrameXML\ReputationFrame.xml<BR />Element name:  ReputationBarTemplate

TaxiRouteFrame
Shows a frame with the current continent's flight routes.

TaxiRouteFrame has all the attributes of.

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\TaxiFrame.xml<BR />Element name:  TaxiRouteMap
 * anchors <BR /> Source: DefaultUI - FrameXML\TaxiFrame.xml<BR />Element name:  TaxiRouteMap

WorldFrame
Defined in default interface and contains all graphics information. Any addon placed inside this one will be always visible.

WorldFrame has all the attributes of.

Known Tags:
 * layers <BR /> Source: DefaultUI - FrameXML\WorldFrame.xml<BR />Element name:  WorldFrame
 * frames <BR /> Source: DefaultUI - FrameXML\WorldFrame.xml<BR />Element name:  WorldFrame
 * scripts <BR /> Source: DefaultUI - FrameXML\WorldFrame.xml<BR />Element name:  WorldFrame

Texture
Stores path for graphic file used for drawing elements.

Texture has all the attributes of plus the following:
 * file <BR /> Source: DefaultUI - FrameXML\ActionButtonTemplate.xml<BR />Element name:  $parentFlash
 * alphamode <BR /> Source: DefaultUI - FrameXML\ActionButtonTemplate.xml<BR />Element name:  $parentBorder

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\ActionButtonTemplate.xml<BR />Element name:  $parentBorder
 * anchors <BR /> Source: DefaultUI - FrameXML\ActionButtonTemplate.xml<BR />Element name:  $parentBorder
 * texcoords <BR /> Source: DefaultUI - FrameXML\ArenaRegistrarFrame.xml<BR />Element name:  $parentMiddle
 * color <BR /> Source: DefaultUI - FrameXML\CastingBarFrame.xml<BR />Element name:

FontString
This one show a text you cannot edit.

FontString has all the attributes of and  plus the following:
 * text <BR /> Source: DefaultUI - FrameXML\ArenaFrame.xml<BR />Element name:  $parentFrameLabel
 * nonspacewrap <BR /> Source: DefaultUI - FrameXML\BasicControls.xml<BR />Element name:  ScriptErrors_Message
 * bytes <BR /> Source: DefaultUI - FrameXML\ChatFrame.xml<BR />Element name:
 * maxlines <BR /> Source: DefaultUI - FrameXML\SpellBookFrame.xml<BR />Element name:  $parentSpellName

Known Tags:
 * size <BR /> Source: DefaultUI - FrameXML\ActionButtonTemplate.xml<BR />Element name:  $parentHotKey
 * anchors <BR /> Source: DefaultUI - FrameXML\ActionButtonTemplate.xml<BR />Element name:  $parentHotKey
 * color <BR /> Source: DefaultUI - FrameXML\CharacterFrame.xml<BR />Element name:  CharacterNameText
 * fontheight <BR /> Source: DefaultUI - FrameXML\ZoneText.xml<BR />Element name:  AutoFollowStatusText

AnimationGroup
See also:

AnimationGroup has all the attributes of.

Animation
See also:

Animation has all the attributes of.