Mercurial > wow > inventory
comparison Summary.lua @ 14:0fc8a54516d7
Altoholic is now marked as an optional dependency.
Fixed the queue button so it doesn?t get recreated when a widget is re-used from the pool.
Queue all button and queue single group buttons are now working.
Items within a group being queued that couldn?t be found in the current profession will be announced. The goal is to put these into a new window from which you can queue these.
author | Zerotorescue |
---|---|
date | Mon, 18 Oct 2010 19:31:52 +0200 |
parents | 5006cb0e97c6 |
children | 8f5c02113c5c |
comparison
equal
deleted
inserted
replaced
13:5006cb0e97c6 | 14:0fc8a54516d7 |
---|---|
44 local widget = AceGUI:Create("InlineGroup"); | 44 local widget = AceGUI:Create("InlineGroup"); |
45 widget.type = widgetType; | 45 widget.type = widgetType; |
46 | 46 |
47 widget.MakeButton = function(self, buttonSettings) | 47 widget.MakeButton = function(self, buttonSettings) |
48 if type(buttonSettings) == "table" then | 48 if type(buttonSettings) == "table" then |
49 local button = CreateFrame("Button", nil, self.frame, "UIPanelButtonTemplate"); | 49 if not self.btnQueue then |
50 button:SetText(buttonSettings.name); | 50 -- Because widgets are re-used, we don't want to recreate this button |
51 button:SetHeight(22); | 51 self.btnQueue = CreateFrame("Button", nil, self.frame, "UIPanelButtonTemplate"); |
52 button:SetWidth(120); | 52 self.btnQueue:SetHeight(22); |
53 button:SetPoint("TOPRIGHT", self.frame, "TOPRIGHT", -10, 5); | 53 self.btnQueue:SetWidth(120); |
54 button:SetScript("OnClick", buttonSettings.exec); | 54 end |
55 button.tooltipTitle = buttonSettings.name; | 55 self.btnQueue:SetText(buttonSettings.name); |
56 button.tooltip = buttonSettings.desc or ""; | 56 self.btnQueue:SetPoint("TOPRIGHT", self.frame, "TOPRIGHT", -10, 5); |
57 button:SetScript("OnEnter", ShowTooltip); | 57 |
58 button:SetScript("OnLeave", HideTooltip); | 58 -- Triggers |
59 self.btnQueue:SetScript("OnClick", buttonSettings.exec); | |
60 | |
61 -- Tooltip | |
62 self.btnQueue.tooltipTitle = buttonSettings.name; | |
63 self.btnQueue.tooltip = buttonSettings.desc or ""; | |
64 self.btnQueue:SetScript("OnEnter", ShowTooltip); | |
65 self.btnQueue:SetScript("OnLeave", HideTooltip); | |
59 else | 66 else |
60 error("settings must be a table - usage: MakeButton(table);"); | 67 error("settings must be a table - usage: MakeButton(table);"); |
61 end | 68 end |
62 end | 69 end; |
63 | 70 |
64 return widget; | 71 return widget; |
65 end | 72 end |
66 | 73 |
67 AceGUI:RegisterWidgetType(widgetType, Constructor, widgetVersion); | 74 AceGUI:RegisterWidgetType(widgetType, Constructor, widgetVersion); |
181 mod.scrollFrame:AddChild(lblSpacer); | 188 mod.scrollFrame:AddChild(lblSpacer); |
182 | 189 |
183 -- Speed slider | 190 -- Speed slider |
184 local sdrSpeed = AceGUI:Create("Slider"); | 191 local sdrSpeed = AceGUI:Create("Slider"); |
185 sdrSpeed:SetLabel("Processing speed"); | 192 sdrSpeed:SetLabel("Processing speed"); |
186 sdrSpeed:SetSliderValues(0.01, 5, 0.01); | 193 sdrSpeed:SetSliderValues(0.01, 5, 0.05); |
187 sdrSpeed:SetIsPercent(true); | 194 sdrSpeed:SetIsPercent(true); |
188 sdrSpeed:SetRelativeWidth(.3); | 195 sdrSpeed:SetRelativeWidth(.3); |
189 sdrSpeed:SetCallback("OnMouseUp", function(self, event, value) | 196 sdrSpeed:SetCallback("OnMouseUp", function(self, event, value) |
190 addon.db.global.defaults.summary.speed = ceil( value * 100 / 5 ); | 197 addon.db.global.defaults.summary.speed = ceil( value * 100 / 5 ); |
191 | 198 |
227 -- Queue all button | 234 -- Queue all button |
228 local btnQueueAll = AceGUI:Create("Button"); | 235 local btnQueueAll = AceGUI:Create("Button"); |
229 btnQueueAll:SetText("Queue All"); | 236 btnQueueAll:SetText("Queue All"); |
230 btnQueueAll:SetRelativeWidth(.2); | 237 btnQueueAll:SetRelativeWidth(.2); |
231 btnQueueAll:SetCallback("OnClick", function() | 238 btnQueueAll:SetCallback("OnClick", function() |
232 | 239 self:SendMessage("IM_QUEUE_ALL"); |
233 end); | 240 end); |
234 btnQueueAll:SetCallback("OnEnter", ShowTooltip); | 241 btnQueueAll:SetCallback("OnEnter", ShowTooltip); |
235 btnQueueAll:SetCallback("OnLeave", HideTooltip); | 242 btnQueueAll:SetCallback("OnLeave", HideTooltip); |
236 btnQueueAll.frame.tooltipTitle = "Queue all"; | 243 btnQueueAll.frame.tooltipTitle = "Queue all"; |
237 btnQueueAll.frame.tooltip = "Queue everything that requires restocking within every single visible group."; | 244 btnQueueAll.frame.tooltip = "Queue everything that requires restocking within every single visible group."; |
268 iGroup:SetLayout("Flow"); | 275 iGroup:SetLayout("Flow"); |
269 iGroup:MakeButton({ | 276 iGroup:MakeButton({ |
270 name = "Queue", | 277 name = "Queue", |
271 desc = "Queue all items in this group.", | 278 desc = "Queue all items in this group.", |
272 exec = function() | 279 exec = function() |
273 print(groupName); | 280 print("Queueing all items within " .. groupName .. " craftable by the currently open profession."); |
281 self:SendMessage("IM_QUEUE_GROUP", groupName); | |
274 end, | 282 end, |
275 }); | 283 }); |
276 | 284 |
277 | 285 |
278 | 286 |