annotate AceGUIWidget-Spacer.lua @ 70:cdee65c1bd8c

Implement a list of items to be automatically marked as sent to the guild vault. List controlled on the Options tab like the existing filter. Default list is Cataclysm crafting material drops.
author Farmbuyer of US-Kilrogg <farmbuyer@gmail.com>
date Fri, 11 May 2012 03:56:21 +0000
parents 822b6ca3ef89
children
rev   line source
farmbuyer@1 1 --[[-----------------------------------------------------------------------------
farmbuyer@1 2 Spacer Widget
farmbuyer@1 3
farmbuyer@1 4 Spacer API
farmbuyer@1 5
farmbuyer@1 6 :SetImage(path,...)
farmbuyer@1 7 same as Label:SetImage
farmbuyer@1 8
farmbuyer@1 9 :SetImageSize(w,h)
farmbuyer@1 10 same as Label:SetImageSize
farmbuyer@1 11
farmbuyer@1 12 Because the whole point is to take up space, the most-used functions will
farmbuyer@1 13 probably be the sizing routines from the base widget API.
farmbuyer@1 14
farmbuyer@1 15 -farmbuyer
farmbuyer@1 16 -------------------------------------------------------------------------------]]
farmbuyer@1 17 local Type, Version = "Spacer", 2
farmbuyer@1 18 local AceGUI = LibStub and LibStub("AceGUI-3.0", true)
farmbuyer@1 19 if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end
farmbuyer@1 20
farmbuyer@1 21 -- Lua APIs
farmbuyer@1 22
farmbuyer@1 23 -- WoW APIs
farmbuyer@1 24 local CreateFrame = CreateFrame
farmbuyer@1 25
farmbuyer@1 26
farmbuyer@1 27 --[[-----------------------------------------------------------------------------
farmbuyer@1 28 Support functions
farmbuyer@1 29 -------------------------------------------------------------------------------]]
farmbuyer@1 30
farmbuyer@1 31
farmbuyer@1 32 --[[-----------------------------------------------------------------------------
farmbuyer@1 33 Scripts
farmbuyer@1 34 -------------------------------------------------------------------------------]]
farmbuyer@1 35
farmbuyer@1 36
farmbuyer@1 37 --[[-----------------------------------------------------------------------------
farmbuyer@1 38 Methods
farmbuyer@1 39 -------------------------------------------------------------------------------]]
farmbuyer@1 40 local methods = {
farmbuyer@1 41 ["OnAcquire"] = function (self)
farmbuyer@1 42 self:SetHeight(110)
farmbuyer@1 43 self:SetWidth(110)
farmbuyer@1 44 self:SetImage(nil)
farmbuyer@1 45 self.frame:EnableMouse(true) -- needed?
farmbuyer@1 46 end,
farmbuyer@1 47
farmbuyer@1 48 --["OnRelease"] = function (self) end,
farmbuyer@1 49
farmbuyer@1 50 ["SetImage"] = function (self, path, ...)
farmbuyer@1 51 local space = self.space
farmbuyer@1 52
farmbuyer@1 53 space:SetTexture (path or "Interface\\GLUES\\COMMON\\Glue-Tooltip-Background")
farmbuyer@1 54 local n = select('#', ...)
farmbuyer@1 55 if n == 4 or n == 8 then
farmbuyer@1 56 space:SetTexCoord(...)
farmbuyer@1 57 end
farmbuyer@1 58 end,
farmbuyer@1 59
farmbuyer@1 60 ["SetImageSize"] = function (self, width, height)
farmbuyer@1 61 self.frame:SetWidth(width)
farmbuyer@1 62 self.frame:SetHeight(height)
farmbuyer@1 63 end,
farmbuyer@1 64 }
farmbuyer@1 65
farmbuyer@1 66
farmbuyer@1 67 --[[-----------------------------------------------------------------------------
farmbuyer@1 68 Constructor
farmbuyer@1 69 -------------------------------------------------------------------------------]]
farmbuyer@1 70 local function Constructor()
farmbuyer@1 71 local frame = CreateFrame("Frame",nil,UIParent)
farmbuyer@1 72
farmbuyer@1 73 local space = frame:CreateTexture(nil,"BACKGROUND")
farmbuyer@1 74 space:SetAllPoints(frame)
farmbuyer@1 75 space:SetTexture("Interface\\GLUES\\COMMON\\Glue-Tooltip-Background")
farmbuyer@1 76 space:SetBlendMode("ADD")
farmbuyer@1 77
farmbuyer@1 78 local widget = {
farmbuyer@1 79 space = space,
farmbuyer@1 80 frame = frame,
farmbuyer@1 81 type = Type
farmbuyer@1 82 }
farmbuyer@1 83 for method, func in pairs(methods) do
farmbuyer@1 84 widget[method] = func
farmbuyer@1 85 end
farmbuyer@1 86
farmbuyer@1 87 return AceGUI:RegisterAsWidget(widget)
farmbuyer@1 88 end
farmbuyer@1 89
farmbuyer@1 90 AceGUI:RegisterWidgetType(Type,Constructor,Version)
farmbuyer@1 91