Quantcast

added (working) checkboxes for active weight display

Paul Spears [10-22-09 - 07:30]
added (working) checkboxes for active weight display
Filename
WeightsWatcher.xml
config.lua
diff --git a/WeightsWatcher.xml b/WeightsWatcher.xml
index 20fb7d4..307efd5 100644
--- a/WeightsWatcher.xml
+++ b/WeightsWatcher.xml
@@ -185,6 +185,47 @@
 			<Anchor point="RIGHT"/>
 		</Anchors>
 		<Frames>
+			<CheckButton name="$parentCheckButton" parentKey="checkButton" inherits="UICheckButtonTemplate" text="Watch this Weight">
+				<Size>
+					<AbsDimension x="20" y="20"/>
+				</Size>
+				<Anchors>
+					<Anchor point="LEFT">
+						<Offset>
+							<AbsDimension x="10"/>
+						</Offset>
+					</Anchor>
+				</Anchors>
+				<Scripts>
+					<OnClick>
+						local parent = self:GetParent()
+						local class = parent.category.class
+
+						if not ww_charVars.activeWeights[class] then
+							ww_charVars.activeWeights[class] = {}
+							table.insert(ww_charVars.activeWeights, class)
+						end
+						if self:GetChecked() then
+							table.insert(ww_charVars.activeWeights[class], parent.name)
+						else
+							for i, weight in ipairs(ww_charVars.activeWeights[class]) do
+								if weight == parent.name then
+									table.remove(ww_charVars.activeWeights[class], i)
+									break
+								end
+							end
+						end
+					</OnClick>
+					<OnEnter>
+						GameTooltip:SetOwner(self,"ANCHOR_RIGHT")
+						GameTooltip:AddLine("Watch this weight?", 1, 1, 1)
+						GameTooltip:Show()
+					</OnEnter>
+					<OnLeave>
+						GameTooltip:Hide()
+					</OnLeave>
+				</Scripts>
+			</CheckButton>
 			<Button name="$parentText" parentKey="text">
 				<Size>
 					<AbsDimension y="20"/>
@@ -192,7 +233,7 @@
 				<Anchors>
 					<Anchor point="LEFT">
 						<Offset>
-							<AbsDimension x="20"/>
+							<AbsDimension x="40"/>
 						</Offset>
 					</Anchor>
 					<Anchor point="RIGHT"/>
diff --git a/config.lua b/config.lua
index e710972..7aaf2ee 100644
--- a/config.lua
+++ b/config.lua
@@ -338,6 +338,18 @@ function loadClassButtons()
 		if classFrame.class ~= class then
 			classFrame.text:Click()
 		end
+		for i, weightFrame in ipairs({classFrame:GetChildren()}) do
+			if weightFrame.name then
+				if ww_charVars.activeWeights[classFrame.class] then
+					for _, weight in ipairs(ww_charVars.activeWeights[classFrame.class]) do
+						if weight == weightFrame.name then
+							weightFrame.checkButton:SetChecked(true)
+							break
+						end
+					end
+				end
+			end
+		end
 	end
 end