Skip to content

2.5.2 Consolidated UI Changes

Daniel Yates edited this page Aug 30, 2021 · 19 revisions

Contents

Notable Changes

  • The interface version is 20502.
  • The client has had various changes from patch 9.1.0 merged in.
  • The client now additionally supports the _TBC.toc suffix for TOC files specific to the BCC client. Support for the existing -BCC.toc suffix remains.
  • The UI source from both the Classic Era and BCC clients has been merged and is present in the Interface_Vanilla and Interface_TBC trees at the root of the game directory.
  • The Guild Bank UI and its associated APIs have been implemented.
  • The original Looking For Group UI and a set of C_LFGList APIs have been implemented.
  • The UnitGetIncomingHeals function has been added.
  • The string.format function will no longer error for the %x, %u, or %o specifiers when supplied numeric values outside of a signed 32-bit integer range.

API Changes by Category

C_LFGList

Some functions may behave slightly different to their existing Retail counterparts with regards to parameters, return values, or structure layouts.

The LfgEntryData and LfgSearchResultData structures have been altered to account for the BCC group finder allowing a group to be listed for multiple activities at once. As such, the activityID field on both of these structures has been replaced by activityIDs, which is a table of up-to three activity IDs as numbers. In addition, many other fields present on these structures may not be present on the BCC client.

C_VoiceChat

Global APIs

Enum Changes

A large number of enums from patch 9.1 have added to the client, however most are irrelevant for the gameplay features present in BCC. The following list is shortened to only include relevant enums.

The following enumerations have been converted from LE_* style global constants to the new Enum.* format, and names have undergone casing changes.

  • Moved: LE_ITEM_ARMOR_*Enum.ItemArmorSubclass.*
  • Moved: LE_ITEM_CLASS_*Enum.ItemClass.*
  • Moved: LE_ITEM_GEM_*Enum.ItemGemSubclass.*
  • Moved: LE_ITEM_MISCELLANEOUS_*Enum.ItemMiscellaneousSubclass.*
  • Moved: LE_ITEM_RECIPE_*Enum.ItemRecipeSubclass.*
  • Moved: LE_ITEM_WEAPON_*Enum.ItemWeaponSubclass.*

Event Changes

FrameXML Changes

Builds generally contain a significant number of FrameXML API changes; only notable additions or removals have been listed below.

Widget API Changes

AnimationGroup

Frame

  • Added: Frame:SetFrameBuffer - If set, causes a frame to be rendered in its own framebuffer. Can be used to work around alpha-related issues.

XML Changes

Attributes

Resources