Skip to content
everloot

Lore archive · Warcraft Wiki, 2023 dump

1.10.0 consolidated changes (Iriel)

Last wiki revision 2020-04-23

This is a consolidated list of the announced (and sometimes observed) changes in the User Interface API's and functionality for the 1.10 change. Please note that this thread is to discuss the upcoming changes and any clarifications or features that are a direct result of those changes, or things which we've been asked to remind slouken of. It is NOT an appropriate place for general feature requests, they should have their own threads (or be in the suggestions forum).

  • New Font objects for on-the-fly font configuration.
  • Can create new UI Frames, Textures, and FontStrings at runtime
  • It will no longer be possible to replace Blizzard interface files (FrameXML/)
  • You can no longer hook blizzard movement or mouse action functions.
  • AddOns can no longer use RegisterForSave (Will be disabled for 1.10 release).
  • NEW: texture = Frame:CreateTexture(["name"] [,"layer"]) -- Create a new Texture object as a child of a frame.
  • NEW: fontstring = Frame:CreateFontString(["name"] [,"layer"]) -- Create a new FontString object as a child of a frame.
  • NEW: numRegions = Frame:GetNumRegions -- Return the number of regions (Textures/FontStrings) attached to a frame.
  • NEW: a, b, c, ... = Frame:GetRegions -- Return the regions attached to a frame.

NEW: type = Frame:GetObjectType -- Behaves as Frame:GetFrameType does today.

  • NEW: isType = Frame:IsObjectType("type") -- Behaves as Frame:IsFrameType("type") does today.
  • numPoints = LayoutFrame:GetNumPoints -- Returns the number of anchor points
  • "point",relativeObject,"relativePoint",xOfs,yOfs = LayoutFrame:GetPoint(index) -- Returns details of an anchor point
  • LayoutFrame:SetPoint("point",relativeObject,"relativePoint",xOfs,yOfs) -- New form, in addition to all existing ones (relative object instead of name)
  • parent = Texture:GetParent
  • Texture:SetParent(parent or "parent")
  • layer = Texture:GetDrawLayer
  • Texture:SetDrawLayer("layer")
  • blendMode = Texture:GetBlendMode
  • Texture:SetBlendMode("blendMode") -- blendMode is one of "DISABLE", "BLEND", "ALPHAKEY", "ADD", "MOD"
  • r,g,b,a = Texture:GetVertexColor
  • type = Texture:GetObjectType -- Returns "Texture"
  • isType = Texture:IsObjectType("type") -- Returns whether "type" is "Texture"
  • x,y = Texture:GetCenter;
  • x = Texture:GetLeft;
  • x = Texture:GetRight;
  • y = Texture:GetTop;
  • y = Texture:GetBottom;
  • Texture:SetAllPoints("frame");
  • isFound = Texture:SetTexture("path") -- Now returns true if the path was found, nil if not.
  • parent = FontString:GetParent
  • FontString:SetParent(parent or "parent")
  • layer = FontString:GetDrawLayer
  • FontString:SetDrawLayer("layer")
  • a = FontString:GetAlpha
  • type = FontString:GetObjectType -- Returns "FontString"
  • isType = FontString:IsObjectType("type") -- Returns whether "type" is "FontString"
  • x,y = FontString:GetCenter;
  • x = FontString:GetLeft;
  • x = FontString:GetRight;
  • y = FontString:GetTop;
  • y = FontString:GetBottom;
  • FontString:SetAllPoints("frame");

For each of FontString, MessageFrame, ScrollingMessageFrame, and EditBox the following methods (some may already be present in 1.9):

  • font = Frame:GetFontObject
  • Frame:SetFontObject(font or nil)
  • fontFile, fontHeight, flags = Frame:GetFont
  • wasFound = Frame:SetFont("fontFile", fontHeight [, flags]) -- Returns true if specified font was valid, and nil if it was not (the change will not occur).
  • r,g,b,a = Frame:GetTextColor
  • Frame:SetTextColor(r, g, b [, a])
  • r,g,b,a = Frame:GetShadowColor
  • Frame:SetShadowColor(r, g, b [, a])
  • x,y = Frame:GetShadowOffset
  • Frame:SetShadowOffset(x, y)
  • spacing = Frame:GetSpacing
  • Frame:SetSpacing(spacing)
  • justifyh = Frame:GetJustifyH
  • Frame:SetJustifyH("LEFT" or "CENTER" or "RIGHT")
  • justfiyv = Frame:GetJustifyV
  • Frame:SetJustifyV("TOP" or "MIDDLE" or "BOTTOM")
  • NEW ScrollingMessageFrame:SetFading(isFading) -- Renamed from ScrollingMessageFrame:EnableFading
  • NEW isFading = ScrollingMessageFrame:GetFading
  • NEW duration = ScrollingMessageFrame:GetFadeDuration -- Get time it takes for lines to fade once they start fading.
  • NEW visTime = ScrollingMessageFrame:GetTimeVisible -- Get time it takes before a line starts fading.
  • UPDATED ScrollingMessageFrame:SetTimeVisible(visTime) -- Will affect visible lines as well as new ones.
  • UPDATED ScrollingMessageFrame:SetFadeDuration(duration) -- Will affect visible lines as well as new ones.

("header" is "H1" "H2" or "H3")

  • font = SimpleHTMLGetFontObject(["header",])
  • SimpleHTMLSetFontObject(["header",]font or nil)
  • fontFile, fontHeight, flags = SimpleHTMLGetFont(["header",])
  • wasFound = SimpleHTMLSetFont(["header",]"fontFile", fontHeight [, flags]) -- Returns true if specified font was valid, and nil if it was not (the change will not occur).
  • r,g,b,a = SimpleHTMLGetTextColor(["header",])
  • SimpleHTMLSetTextColor(["header",]r, g, b [, a])
  • r,g,b,a = SimpleHTMLGetShadowColor(["header",])
  • SimpleHTMLSetShadowColor(["header",]r, g, b [, a])
  • x,y = SimpleHTMLGetShadowOffset(["header",])
  • SimpleHTMLSetShadowOffset(["header",]x, y)
  • spacing = SimpleHTMLGetSpacing(["header",])
  • SimpleHTMLSetSpacing(["header",]spacing)
  • justifyh = Font:GetJustifyH(["header",])
  • SimpleHTMLSetJustifyH(["header",]"LEFT" or "CENTER" or "RIGHT")
  • justfiyv = SimpleHTMLGetJustifyV(["header",])
  • SimpleHTMLSetJustifyV(["header",]"TOP" or "MIDDLE" or "BOTTOM")
  • name = Font:GetName
  • a = Font:GetAlpha
  • Font:SetAlpha(a)
  • font = Font:GetFontObject -- Get the 'parent' of the Font.
  • Font:SetFontObject(font or nil) -- Set the 'parent' of the Font.
  • Font:CopyFontObject(font) -- Set this Font's attributes to be the same as those of font.
  • fontFile, fontHeight, flags = Font:GetFont
  • wasFound = Font:SetFont("fontFile", fontHeight [, flags]) -- Returns true if specified font was valid, and nil if it was not (the change will not occur).
  • r,g,b,a = Font:GetTextColor
  • Font:SetTextColor(r, g, b [, a])
  • r,g,b,a = Font:GetShadowColor
  • Font:SetShadowColor(r, g, b [, a])
  • x,y = Font:GetShadowOffset
  • Font:SetShadowOffset(x, y)
  • Font:SetSpacing(spacing)
  • spacing = Font:GetSpacing
  • Font:SetJustifyH("LEFT" or "CENTER" or "RIGHT")
  • justifyh = Font:GetJustifyH
  • Font:SetJustifyV("TOP" or "MIDDLE" or "BOTTOM")
  • justifyv = Font:GetJustifyV
  • type = Font:GetObjectType -- Returns Font
  • isType = Font:IsObjectType("type") -- Return true if type is "Font"
  • NEW font = Button:GetTextFontObject
  • NEW Button:SetTextFontObject(font or nil)
  • NEW font = Button:GetDisabledFontObject
  • NEW Button:SetDisabledFontObject(font or nil)
  • NEW font = Button:GetHighlightFontObject
  • NEW Button:SetHighlightFontObject(font or nil)
  • UPDATED Button:SetNormalTexture("texturePath" or TextureObject) -- Added Texture Object option.
  • UPDATED Button:SetPushedTexture("texturePath" or TextureObject) -- Added Texture Object option.
  • UPDATED Button:SetDisabledTexture("texturePath" or TextureObject) -- Added Texture Object option.
  • UPDATED Button:SetHighlightTexture("texturePath" or TextureObject) -- Added Texture Object option.
  • Minimap:SetMaskTexture("file") -- Set the texture for the minimap mask, defaults to "Textures\\MinimapMask".
  • Minimap:SetIconTexture("file") -- Set the texture for the minimap POI icon, defaults to "Interface\\Minimap\\POIIcons".
  • Minimap:SetBlipTexture("file") -- Set the texture for the minimap tracking blip, defaults to "Interface\\Minimap\\ObjectIcons".
  • orientation = Slider:GetOrientation -- Return slider orientation
  • Slider:SetOrientation("orientation") -- Set slider orientation ("HORIZONTAL","VERTICAL")
  • orientation = StatusBar:GetOrientation -- Return bar orientation
  • StatusBar:SetOrientation("orientation") -- Set bar orientation ("HORIZONTAL","VERTICAL")
  • filename = StatusBar:GetStatusBarTexture
  • r, g, b, a = StatusBar:GetStatusBarColor
  • EditBox:SetAltArrowKeyMode(enabled) -- Set if the ALT key must be held for arrow keys to work in the edit box.
  • enabled = EditBox:GetAltArrowKeyMode -- Get the current ALT key mode.
  • ScrollFrame:SetScrollChild(frame or "framename")
  • frame = ScrollFrame:GetScrollChild
  • NEW: frame = CreateFrame("frameType" [,"name"] [, parent]) -- Create a new frame of the specified type ("Button", "Slider", etc).
  • NEW: font = CreateFont("name") -- Dynamically create a font object
  • NEW: num = GetNumFrames -- Get the current number of Frame (and derivative) objects
  • nextFrame = EnumerateFrames(currentFrame) -- Get the Frame which follows currentFrame (in internal order, use currentFrame=nil for the first one)
  • EditBox, MessageFrame, ScrollingMessageFrame, SimpleHTML accept a font= attribute, which specifies a Font object to use (NOT a font file path)
  • NUM_CONTAINER_FRAMES increased to match actual max number of open containers (11, rather than 9)
  • In FrameXML\Fonts.xml, the system FontStrings become Font objects.
  • CastSpellByName("Spell Name" [,onSelf]) -- Now takes optional onSelf parameter similar to UseAction.
  • Enabled the loadstring function.
  • seterrorhandler(errfunc) -- Sets a new error handler (a function taking error message as its argument)
  • errfunc = geterrorhandler -- Gets the current error handler.
  • version, buildnum, builddate = GetBuildInfo -- Returns information about the current build.
  • REMOVED: LaunchURL will no longer be available.
  • REMOVED: RegisterForSave will no longer be available to AddOns.
  • MouselookStart -- Start mouse-looking.
  • MouselookStop -- Stop mouse-looking.
  • IsMouselooking -- Return whether mouse look is enabled.
  • Enchant tooltips will properly refresh as missing item data is fetched from server.
  • SetBinding will correctly fire UPDATE_BINDINGS events.
  • Removed 1024 character limit on saved variable names.
  • Deeply nested table structures will no longer break saved variables.
  • Fixed UseAction self cast for weapon enchants.
  • Spell links for quest rewards will work reliably.
  • Fixed per-char/global macro ID overwriting.
  • Fixed spell rank increases replacing macros which referred to that spell.
  • Link content spoofing should now be blocked (Presumably with disconnection).
  • Fixed problem in SimpleHTML.
  • Fixed problem with tooltip name length breaking accessibility of tooltip content.
  • Fixed schema validation errors in Blizzard XML code.
  • Fixed various SavedVariables encoding issues.
  • Healing will be reported when the target is actually healed, rather than when the client initiates a heal. (Overhealing will still not be reported).
  • There's a new SPELLCAST_CHANNEL_STOP event which replaces both the final SPELLCAST_CHANNEL_UPDATE (arg1==0) and SPELLCAST_STOP for channeled spells (Thanks for Miravlix for researching this).

Source

https://warcraft.wiki.gg/wiki/1.10.0_consolidated_changes_(Iriel) · retrieved 2023-11-13 · CC BY-SA 4.0

Converted from wikitext with templates, tables and images removed, so some sentences may be missing values.

This archive predates WoW: Forever. For collected gameplay facts see the Forever database. Search the archive.