diff --git a/Globals.lua b/Globals.lua index 9f5a267..9da694f 100644 --- a/Globals.lua +++ b/Globals.lua @@ -5,3 +5,12 @@ UIParent = {} ---@type table SlashCmdList = {} + +---@type Frame +BattlefieldMinimap = {} +---@type Frame +BattlefieldMinimapBackground = {} +---@type Button +BattlefieldMinimapCloseButton = {} +---@type Frame +BattlefieldMinimapCorner = {} diff --git a/ui/Frame.lua b/ui/Frame.lua index 01e5fc3..db4807d 100644 --- a/ui/Frame.lua +++ b/ui/Frame.lua @@ -23,7 +23,7 @@ Frame = { --- local myFontString = myFrame:CreateFontString("MyFontString", "OVERLAY") CreateFontString = function(self, name, layer, inheritsFrom) end, - --- Creates a Texture as a child of this Frame. + --- Creates and returns a Texture as a child of this Frame. --- @param self Frame --- @param name string? Optional. The name of the Texture. --- @param layer string? Optional. The layer of the Texture. @@ -464,4 +464,129 @@ Frame = { --- @example --- myFrame:UnregisterAllEvents() UnregisterAllEvents = function(self) end, + + --- Get the depth of the frame. + --- @param self Frame + --- @return number depth The depth of the frame. + --- @example + --- local depth = myFrame:GetDepth() + GetDepth = function(self) end, + + --- Returns the effective depth of the frame. + --- @param self Frame + --- @return number effectiveDepth The effective depth. + --- @example + --- local effectiveDepth = myFrame:GetEffectiveDepth() + GetEffectiveDepth = function(self) end, + + --- Ignores the depth of the frame. + --- @param self Frame + --- @param ignoreFlag boolean True to ignore depth. + --- @example + --- myFrame:IgnoreDepth(true) + IgnoreDepth = function(self, ignoreFlag) end, + + --- Gets whether the frame is prohibited from being dragged off screen. + --- @param self Frame + --- @return boolean isClamped True if clamped to screen. + --- @example + --- local isClamped = myFrame:IsClampedToScreen() + IsClampedToScreen = function(self) end, + + --- Returns true if the given event is registered to the frame. + --- @param self Frame + --- @param event string The event to check. + --- @return boolean isRegistered True if the event is registered. + --- @example + --- local isRegistered = myFrame:IsEventRegistered("EVENT_NAME") + IsEventRegistered = function(self, event) end, + + --- Determine if this frame is of the specified type, or a subclass of that type. + --- @param self Frame + --- @param type string The type to check. + --- @return boolean isType True if it matches the type. + --- @example + --- local isType = myFrame:IsFrameType("FrameType") + IsFrameType = function(self, type) end, + + --- Get whether this frame is ignoring depth. + --- @param self Frame + --- @return boolean isIgnoring True if ignoring depth. + --- @example + --- local isIgnoring = myFrame:IsIgnoringDepth() + IsIgnoringDepth = function(self) end, + + --- Get whether this frame will get keyboard input. + --- @param self Frame + --- @return boolean isEnabled True if keyboard input is enabled. + --- @example + --- local isEnabled = myFrame:IsKeyboardEnabled() + IsKeyboardEnabled = function(self) end, + + --- Get whether this frame will get mouse input. + --- @param self Frame + --- @return boolean isEnabled True if mouse input is enabled. + --- @example + --- local isEnabled = myFrame:IsMouseEnabled() + IsMouseEnabled = function(self) end, + + --- Get whether this frame will get mouse wheel notifications. + --- @param self Frame + --- @return boolean isEnabled True if mouse wheel notifications are enabled. + --- @example + --- local isEnabled = myFrame:IsMouseWheelEnabled() + IsMouseWheelEnabled = function(self) end, + + --- Determine if the frame can be moved. + --- @param self Frame + --- @return boolean isMovable True if movable. + --- @example + --- local isMovable = myFrame:IsMovable() + IsMovable = function(self) end, + + --- Determine if the frame can be resized. + --- @param self Frame + --- @return boolean isResizable True if resizable. + --- @example + --- local isResizable = myFrame:IsResizable() + IsResizable = function(self) end, + + --- Get whether the frame is set as toplevel. + --- @param self Frame + --- @return boolean isTopLevel True if toplevel. + --- @example + --- local isTopLevel = myFrame:IsToplevel() + IsToplevel = function(self) end, + + --- Determine if this frame has been relocated by the user. + --- @param self Frame + --- @return boolean isUserPlaced True if user placed. + --- @example + --- local isUserPlaced = myFrame:IsUserPlaced() + IsUserPlaced = function(self) end, + + --- Lower this frame behind other frames. + --- @param self Frame + --- @example + --- myFrame:Lower() + Lower = function(self) end, + + --- Raise this frame above other frames. + --- @param self Frame + --- @example + --- myFrame:Raise() + Raise = function(self) end, + + --- Register this frame to receive all events (For debugging purposes only!). + --- @param self Frame + --- @example + --- myFrame:RegisterAllEvents() + RegisterAllEvents = function(self) end, + + --- Indicate that this frame should be notified of drag events for the specified buttons. + --- @param self Frame + --- @param buttonType string The button type(s) to register for. + --- @example + --- myFrame:RegisterForDrag("LeftButton") + RegisterForDrag = function(self, buttonType) end, } diff --git a/ui/Region.lua b/ui/Region.lua index 350ecab..86ee3e4 100644 --- a/ui/Region.lua +++ b/ui/Region.lua @@ -97,6 +97,14 @@ Region = { --- local width = myRegion:GetWidth() GetWidth = function(self) end, + --- Get the height and width of the frame. + --- @param self Region + --- @return number width The width of the frame. + --- @return number height The height of the frame. + --- @example + --- local width, height = myRegion:GetSize() + GetSize = function(self) end, + --- Set this object to hidden (it and all of its children will disappear). --- @param self Region --- @example