diff 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
line wrap: on
line diff
--- a/Summary.lua	Mon Oct 18 15:26:42 2010 +0200
+++ b/Summary.lua	Mon Oct 18 19:31:52 2010 +0200
@@ -46,20 +46,27 @@
 	    
 	    widget.MakeButton = function(self, buttonSettings)
 			if type(buttonSettings) == "table" then
-				local button = CreateFrame("Button", nil, self.frame, "UIPanelButtonTemplate");
-				button:SetText(buttonSettings.name);
-				button:SetHeight(22);
-				button:SetWidth(120);
-				button:SetPoint("TOPRIGHT", self.frame, "TOPRIGHT", -10, 5);
-				button:SetScript("OnClick", buttonSettings.exec);
-				button.tooltipTitle = buttonSettings.name;
-				button.tooltip = buttonSettings.desc or "";
-				button:SetScript("OnEnter", ShowTooltip);
-				button:SetScript("OnLeave", HideTooltip);
+				if not self.btnQueue then
+					-- Because widgets are re-used, we don't want to recreate this button
+					self.btnQueue = CreateFrame("Button", nil, self.frame, "UIPanelButtonTemplate");
+					self.btnQueue:SetHeight(22);
+					self.btnQueue:SetWidth(120);
+				end
+				self.btnQueue:SetText(buttonSettings.name);
+				self.btnQueue:SetPoint("TOPRIGHT", self.frame, "TOPRIGHT", -10, 5);
+				
+				-- Triggers
+				self.btnQueue:SetScript("OnClick", buttonSettings.exec);
+				
+				-- Tooltip
+				self.btnQueue.tooltipTitle = buttonSettings.name;
+				self.btnQueue.tooltip = buttonSettings.desc or "";
+				self.btnQueue:SetScript("OnEnter", ShowTooltip);
+				self.btnQueue:SetScript("OnLeave", HideTooltip);
 			else
 				error("settings must be a table - usage: MakeButton(table);");
 			end
-	    end
+	    end;
 		
 	    return widget;
 	end
@@ -183,7 +190,7 @@
 	-- Speed slider
 	local sdrSpeed = AceGUI:Create("Slider");
 	sdrSpeed:SetLabel("Processing speed");
-	sdrSpeed:SetSliderValues(0.01, 5, 0.01);
+	sdrSpeed:SetSliderValues(0.01, 5, 0.05);
 	sdrSpeed:SetIsPercent(true);
 	sdrSpeed:SetRelativeWidth(.3);
 	sdrSpeed:SetCallback("OnMouseUp", function(self, event, value)
@@ -229,7 +236,7 @@
 	btnQueueAll:SetText("Queue All");
 	btnQueueAll:SetRelativeWidth(.2);
 	btnQueueAll:SetCallback("OnClick", function()
-		
+		self:SendMessage("IM_QUEUE_ALL");
 	end);
 	btnQueueAll:SetCallback("OnEnter", ShowTooltip);
 	btnQueueAll:SetCallback("OnLeave", HideTooltip);
@@ -270,7 +277,8 @@
 				name = "Queue",
 				desc = "Queue all items in this group.",
 				exec = function()
-					print(groupName);
+					print("Queueing all items within " .. groupName .. " craftable by the currently open profession.");
+					self:SendMessage("IM_QUEUE_GROUP", groupName);
 				end,
 			});