AddOn Studio Wiki
Advertisement

XML UI

XML types are common types used by XML properties and XML attributes to define WoW UI constructs. Types defined here are not the same as a major XML element types like the <Frame> widget, which can be found instead in XML elements.

Reference[]

Below are the 'XML types', wow 'attribute types', 'element types', and 'enumerations'. The 'XML types', wow 'attribute types', and 'enumerations' can be used on attributes. The 'element types' are typically CapitolCase, where 'enumerations' are typically ALLUPPERCASE.

XML simple types[]

  • boolean - a binary value constrained to "true" or "false"
  • int - an integer, a signed number constrained to whole values, like -1, 0, 1, 2... 1000...
  • unsignedInt - an unsigned integer, an unsigned signed number constrained to whole values 0 or greater, like 0, 1, 2... 1000...
  • float - floating point number, a signed number able to contain fractional values, like -1.2, -1, 0.123, 2000.1...
  • string - a list of text characters, like "bob"

Size and Offset[]

Dimension[]

  • AbsDimension - unit based coordinates
  • RelDimension - scalar coordinates
  • x (int) - a unit value thats horizontally opposed
  • y (int) - a unit value thats vertically opposed

AbsDimension[]

  • x (int) - a unit value thats horizontally opposed
  • y (int) - a unit value thats vertically opposed

RelDimension[]

  • x (float) - a scalar value thats horizontally opposed
  • y (float) - a scalar value thats vertically opposed

Value[]

AbsValue[]

  • val (int) - a unit value

RelValue[]

  • val (float) - a scalar value

Inset[]

AbsInset[]

  • left (int)
  • right (int)
  • top (int)
  • bottom (int)

RelInset[]

  • left (float)
  • right (float)
  • top (float)
  • bottom (float)

Layout[]

LayoutFrame[]

  • name (string) - defines the name of the element
  • parentKey (string) - name for a key in the parent element, which will reference this element at runtime.
  • parentArray (string) - name for an array in the parent, to reference this element at runtime.
  • inherits (string) - uses a virtual element as a template
  • virtual (boolean) - marks the as a template, to be inherited from using inherits
  • setAllPoints (boolean) - anchors the TOPLEFT, TOPRIGHT, BOTTOMLEFT and BOTTOMRIGHT points to the parent
  • hidden (boolean) - makes the element hidden by default
  • Size (Dimension)
  • Anchors
  • KeyValues
  • Animations

Anchor[]

  • point (FRAMEPOINT)
  • relativeTo (string)
  • relativeKey (string) - uses a Lua name of reference to make relative to. alternate to 'relativeTo'.
  • relativePoint (FRAMEPOINT)
  • x (int)
  • y (int)
  • Offset (Dimension)

FRAMEPOINT[]

  • TOPLEFT
  • TOPRIGHT
  • BOTTOMLEFT
  • BOTTOMRIGHT
  • TOP
  • BOTTOM
  • LEFT
  • RIGHT
  • CENTER

Appearance[]

Color[]

  • r (float) - red
  • g (float) - green
  • b (float) - blue
  • a (float) - Default is '1.0'.

Gradient[]

ButtonStyle[]

  • style (string) - Name of a font or fontstring for text render.

ORIENTATION[]

  • HORIZONTAL
  • VERTICAL

JUSTIFYV[]

  • TOP
  • MIDDLE
  • BOTTOM

JUSTIFYH[]

  • LEFT
  • CENTER
  • RIGHT

OUTLINE[]

  • NONE
  • NORMAL
  • THICK

ALPHAMODE[]

Defines how colors and textures are blended, and not necessarily alpha as the name would imply.

  • DISABLE - no blend.
  • BLEND - (default) while background fades element gets stronger
  • ALPHAKEY - transparency depends on alpha channel of textures
  • ADD - background and element colors added resulting in bright colors
  • MOD - modulate

Display[]

Layer[]

  • level (DRAWLAYER) - Default is 'ARTWORK'.
  • textureSubLevel (int) - Additional sub-leveling of 'level'. Range of -8 .. 7. Default is '0'.
  • Texture ...
  • FontString ...

Backdrop[]

  • bgFile (string) - texture file for frame background
  • edgeFile (string) - texture file to use as frame edge
  • tile (boolean) - true tile background, otherise is stretched. Default is 'false'.
  • alphaMode (ALPHAMODE) - blend mode for the colors or texture. Default is 'BLEND'.
  • BackgroundInsets (Inset) - offset out from frame to draw backdrop, higher values go outward.
  • EdgeSize (Value) - how large each copy of the edgeFile becomes on-screen
  • TileSize (Value) - how large each copy of the bgFile becomes on-screen
  • Color (Color) - defines a background color
  • BorderColor (Color) - defines a border color

DRAWLAYER[]

  • BACKGROUND
  • BORDER
  • ARTWORK - usual default.
  • OVERLAY
  • HIGHLIGHT

FRAMESTRATA[]

  • PARENT
  • BACKGROUND
  • LOW
  • MEDIUM
  • HIGH
  • DIALOG
  • FULLSCREEN
  • FULLSCREEN_DIALOG
  • TOOLTIP

Animation[]

AnimOrigin[]

  • point (FRAMEPOINT) - relative anchor for the offset.
  • Offset (Dimension) - static initial ofset for the animation origin.

ControlPoint[]

  • name (string)
  • offsetX (float)
  • offsetY (float)

ANIMLOOP[]

  • NONE
  • REPEAT
  • BOUNCE

ANIMSMOOTH[]

  • NONE
  • IN
  • OUT
  • IN_OUT
  • OUT_IN

ANIMCURVE[]

  • NONE
  • SMOOTH

Other Types[]

ATTRIBUTETYPE[]

  • nil
  • boolean
  • number
  • string

FONTALPHABET[]

  • roman
  • korean
  • simplifiedchinese
  • traditionalchinese
  • russian

KEYVALUETYPE[]

  • nil
  • boolean
  • number
  • string
  • global

SCRIPTINHERITTYPE[]

  • prepend
  • append
  • none (default)

SCRIPTINTRINSICORDERTYPE[]

Used on Script elements when defining an 'intrinsic' type

  • precall - called before any regular event scripts, cannot be overridden
  • postcall - called after any regular event scripts, cannot be overridden
  • none (default) - called as regular event script, can be overridden

Ui[]

Parked[]

The below is temporarity parked here while things are restructured, was from the XML Basics, where it didnt really belong

For complete description and properties of each element follow link below. Since there is no official blizzard documentation, and standards change with patches, it's hard to keep this list up to date and accurate.

  • Widgets
    • Button - button you can click
    • CheckButton - This is checkbox, used in options
    • colorselect - You can select color with this element
    • cooldown - Action bars with cooldown
    • dressupmodel - used to check look of an items
    • editbox - You can enter text here
    • FontString - This is just text to read
    • frame - Window for all other elements
    • gametooltip - it's a small window showing hints about anything under cursor
    • messageframe - used for chat
    • minimap - Radar is build with this one
    • model - ???
    • playermodel - ???
    • scrollframe - Used in any window you need to scroll down (quest logs etc.)
    • scrollingmessageframe - Same as message frame but with scrolling
    • simplehtml - used to show htmls (most html tags ignored)
    • slider - it's a scroll bar for scrolling frames
    • statusbar - ???
    • tabardmodel - used to select tabard
    • taxirouteframe - ???
    • worldframe - All 3d rendered inside here
    • uiparent - This is where normally all addons loaded
  • NonWidgets
    • include - You specify another scheme to load here (ones not listed in ToC file)
    • script - Refers to a script file (skipped in ToC file) or contains lua script inside
    • font - Defines a font template (can be used only inside ui tag)
    • texture - Defines a texture template (can be used only inside ui tag)
Advertisement