Mercurial > wow > ouroloot
view AceGUIWidget-Spacer.lua @ 73:32eb24fb2ebf
- This code is not quite ready for prime time. Do not run it yet.
- Loot events have associated unique IDs, enabling some new actions over
the network. These IDs are preserved as part of realm history. As a
result, the stored history format has completely changed (and requires
less memory as a bonus).
- "Prescan for faster handling" option, default off.
- "Mark as <x>" now broadcast to other trackers. Older versions can't
receive the message, of course. Future: Broadcast reassigning loot.
- New options controlling whether (and where) to print a message when
another player broadcasts those kinds of changes to existing loot.
- Names colored by class when that data is available; CUSTOM_CLASS_COLORS
supported.
- Metric boatloads of minor tweaks and optimizations throughout.
author | Farmbuyer of US-Kilrogg <farmbuyer@gmail.com> |
---|---|
date | Tue, 29 May 2012 22:50:09 +0000 |
parents | 822b6ca3ef89 |
children |
line wrap: on
line source
--[[----------------------------------------------------------------------------- Spacer Widget Spacer API :SetImage(path,...) same as Label:SetImage :SetImageSize(w,h) same as Label:SetImageSize Because the whole point is to take up space, the most-used functions will probably be the sizing routines from the base widget API. -farmbuyer -------------------------------------------------------------------------------]] local Type, Version = "Spacer", 2 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end -- Lua APIs -- WoW APIs local CreateFrame = CreateFrame --[[----------------------------------------------------------------------------- Support functions -------------------------------------------------------------------------------]] --[[----------------------------------------------------------------------------- Scripts -------------------------------------------------------------------------------]] --[[----------------------------------------------------------------------------- Methods -------------------------------------------------------------------------------]] local methods = { ["OnAcquire"] = function (self) self:SetHeight(110) self:SetWidth(110) self:SetImage(nil) self.frame:EnableMouse(true) -- needed? end, --["OnRelease"] = function (self) end, ["SetImage"] = function (self, path, ...) local space = self.space space:SetTexture (path or "Interface\\GLUES\\COMMON\\Glue-Tooltip-Background") local n = select('#', ...) if n == 4 or n == 8 then space:SetTexCoord(...) end end, ["SetImageSize"] = function (self, width, height) self.frame:SetWidth(width) self.frame:SetHeight(height) end, } --[[----------------------------------------------------------------------------- Constructor -------------------------------------------------------------------------------]] local function Constructor() local frame = CreateFrame("Frame",nil,UIParent) local space = frame:CreateTexture(nil,"BACKGROUND") space:SetAllPoints(frame) space:SetTexture("Interface\\GLUES\\COMMON\\Glue-Tooltip-Background") space:SetBlendMode("ADD") local widget = { space = space, frame = frame, type = Type } for method, func in pairs(methods) do widget[method] = func end return AceGUI:RegisterAsWidget(widget) end AceGUI:RegisterWidgetType(Type,Constructor,Version)