07 October 2011
From Riftui Wiki
INSPECTION AND EVENTS:
- Added Inspect.Addon.List() and Inspect.Addon.Detail(), allowing addons to get information about loaded items and inspect values from the TOC.
- Added a .toc member to the information table provided as a parameter to each file.
- Added Inspect.System.Secure(), which returns the current secure state.
- Added Event.Mouse.Move, allowing for global notification when the mouse pointer is moved.
- Added .combat member to the result from Inspect.Unit.Detail(), added Event.Unit.Detail.Combat.
- Added new race, raceName, tag, tagName, locationName, publicSize, and faction members to Inspect.Unit.Detail. Added Event.Unit.Detail.LocationName and Event.Unit.Detail.PublicSize.
- Added titlePrefixId, titlePrefixName, titleSuffixId, and titleSuffixName members to Inspect.Unit.Detail(), along with equivalent events. This gives access to language-agnostic title prefixes and suffixes.
- Added Event.Unit.Detail.Ready to monitor readycheck status.
- Unit specifiers can now be chained off of unit IDs. For example, Inspect.Unit.Detail(Inspect.Unit.Lookup("player") .. ".target") is now equivalent to Inspect.Unit.Detail("player.target").
- Added Layout:GetType(), which returns a string indicating the actual type of that layout or frame.
- Introduced a new frame type "Element", replacing the old "FrameReadonly". Conceptually, Frame inherits from Element and Element inherits from Layout. Elements differ from Layouts in that an Element can have child Frames. Elements cannot be directly created by addons. Many of Frame's functions, as well as all of Frame's events, are provided in Element. The return values of RiftWindow's :GetBorder() and :GetContent() functions are now Elements.
- Errors have been added for several common frame layout mistakes, including circular dependencies and NaN offsets.
- Global events can no longer be handled by a table with a __call member in its metatable.
- Clean up stacktraces. Stacktraces will no longer include internal Rift functions. This process may not be completely reliable - please report any incorrect stacktraces.
- Rendering CPU usage will now be credited to the owner of the context. This means that the reported addon CPU usage may increase significantly.
- Security-related error messages will now have a header that refers to security, instead of the old parameter error message.
- Many behavior improvements to RiftTextfield.
- Deprecated functions and events will now say so in the documentation.
- The .planar, .planarMax, and .vitality members of Inspect.Unit.Detail() are now available for groupmembers. The equivalent events will also now fire for groupmembers.
- Inspect.Unit.Detail("player") is now guaranteed to return at least the player's name.
- Text frames will now set their default size to perfectly fit their text.
- Fix crashes in Layout:ReadPoint().
- Fix more crashes in Layout:ReadPoint().
- Fix rare crash in Inspect.Unit.Detail.
- Add documentation for the .ability member returned by Inspect.Buff.Detail.
- UI.CreateFrame will now give a correct error message if called with an invalid frame type.
- Fix misleading error message when passing nil for an event handler.
- RiftButton will no longer reset its name when disabled.
- RiftSlider:SetPosition() will now function as intended.
- Frames with "limited" MouseMasking will now pass mouse events all the way through to the environment, not just to other frames.
- SavedVariables will now be properly saved when rapidly quitting the client.
- New children of a Mask will now consistently respect the Mask's boundaries.
- Fix issue updating the boundaries of a nested mask.
- Teleporting will now properly trigger messages indicating that the player unit is not available.
UPCOMING BREAKING CHANGES:
- The titlePrefix/titleSuffix members of Inspect.Unit.Detail() will be removed. Use titlePrefixName/titleSuffixName instead.
- Inspect.Event.TitlePrefix and Inspect.Event.TitleSuffix will be removed. Use Inspect.Event.TitlePrefixName and Inspect.Event.TitleSuffixName instead.
- Text:ResizeToText will be removed. With the new default-size behavior, this same functionality can be achieved with ClearSize().
Inspectors: Inspect.Addon.Detail Inspect.Addon.List Inspect.System.Secure Events: Event.Mouse.Move Event.Unit.Detail.Combat Event.Unit.Detail.LocationName Event.Unit.Detail.PublicSize Event.Unit.Detail.TitlePrefixId Event.Unit.Detail.TitlePrefixName Event.Unit.Detail.TitleSuffixId Event.Unit.Detail.TitleSuffixName UI: Layout: Members: GetType Element: Inherits from Layout Members: GetAlpha GetBackgroundColor GetKeyFocus GetMouseMasking GetVisible SetAlpha SetBackgroundColor SetKeyFocus SetMouseMasking SetVisible Events: KeyDown KeyFocusGain KeyFocusLoss KeyType KeyUp LeftClick LeftDown LeftUp LeftUpoutside MiddleClick MiddleDown MiddleUp MiddleUpoutside Mouse4Click Mouse4Down Mouse4Up Mouse4Upoutside Mouse5Click Mouse5Down Mouse5Up Mouse5Upoutside MouseIn MouseMove MouseOut RightClick RightDown RightUp RightUpoutside WheelBack WheelForward Frame: Inherits from Element (used to be Layout)