Mercurial > wow > askmrrobot
diff config.lua @ 0:ec731d2fe6ba
Version 1.2.12.0
author | Adam tegen <adam.tegen@gmail.com> |
---|---|
date | Tue, 20 May 2014 21:43:23 -0500 |
parents | |
children | ece9167c0d1c |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/config.lua Tue May 20 21:43:23 2014 -0500 @@ -0,0 +1,114 @@ +local addonName, AskMrRobot = ... + +--if not addon.healthCheck then return end +local L = AskMrRobot.L + +local wow_ver = select(4, GetBuildInfo()) +local wow_500 = wow_ver >= 50000 +local UIPanelButtonTemplate = wow_500 and "UIPanelButtonTemplate" or "UIPanelButtonTemplate2" + +local frame = CreateFrame("Frame", nil, InterfaceOptionsFramePanelContainer) +frame.name = addonName +frame:Hide() + +-- Credits to Ace3, Tekkub, cladhaire and Tuller for some of the widget stuff. + +local function newCheckbox(label, tooltipTitle, description, onClick) + local check = CreateFrame("CheckButton", "AmrCheck" .. label, frame, "InterfaceOptionsCheckButtonTemplate") + check:SetScript("OnClick", function(self) + PlaySound(self:GetChecked() and "igMainMenuOptionCheckBoxOn" or "igMainMenuOptionCheckBoxOff") + onClick(self, self:GetChecked() and true or false) + end) + check.label = _G[check:GetName() .. "Text"] + check.label:SetText(label) + check.tooltipText = tooltipTitle + check.tooltipRequirement = description + return check +end + +frame:SetScript("OnShow", function(frame) + local title = frame:CreateFontString(nil, "ARTWORK", "GameFontNormalLarge") + title:SetPoint("TOPLEFT", 16, -16) + title:SetText(addonName) + + local subTitleWrapper = CreateFrame("Frame", nil, frame) + subTitleWrapper:SetPoint("TOPLEFT", title, "BOTTOMLEFT", 0, -8) + subTitleWrapper:SetPoint("RIGHT", -16, 0) + local subtitle = subTitleWrapper:CreateFontString(nil, "ARTWORK", "GameFontHighlightSmall") + subtitle:SetPoint("TOPLEFT", subTitleWrapper) + subtitle:SetWidth(subTitleWrapper:GetRight() - subTitleWrapper:GetLeft()) + subtitle:SetJustifyH("LEFT") + subtitle:SetNonSpaceWrap(false) + subtitle:SetJustifyV("TOP") + subtitle:SetText("Mr. Robot's addon can export your item information to his website, and import your optimizations into the game.") + subTitleWrapper:SetHeight(subtitle:GetHeight()) + + local autoPopup = newCheckbox( + "Show minimap icon", + "Minimap Icon", + "Show the Ask Mr. Robot minimap icon.", + function(self, value) + if AmrOptions.hideMapIcon then + AmrOptions.hideMapIcon = false + else + AmrOptions.hideMapIcon = true + end + AskMrRobot.AmrUpdateMinimap(); + end + ) + autoPopup:SetChecked(not AmrOptions.hideMapIcon) + autoPopup:SetPoint("TOPLEFT", subTitleWrapper, "BOTTOMLEFT", -2, -16) + + local autoReforge = newCheckbox( + "Automatically show Mr. Robot's reforge window at the reforger", + "Auto-Show Reforges", + "When you have suggested reforges left to complete, automatically show Mr. Robot's reforge window when you visit a reforger.", + function(self, value) + if AmrOptions.manualShowReforge then + AmrOptions.manualShowReforge = false + else + AmrOptions.manualShowReforge = true + end + end + ) + autoReforge:SetChecked(not AmrOptions.manualShowReforge) + autoReforge:SetPoint("TOPLEFT", subTitleWrapper, "BOTTOMLEFT", -2, -52) + + local autoAh = newCheckbox( + "Automatically show Mr. Robot's shopping list at the auction house", + "Auto-Show Shopping List", + "When your shopping list still has things left to buy, automatically show Mr. Robot's shopping list when you visit the auction house.", + function(self, value) + if AmrOptions.manualShowShop then + AmrOptions.manualShowShop = false + else + AmrOptions.manualShowShop = true + end + end + ) + autoAh:SetChecked(not AmrOptions.manualShowShop) + autoAh:SetPoint("TOPLEFT", subTitleWrapper, "BOTTOMLEFT", -2, -88) + + --[[ + AmrOptions.autoLog = AmrOptions.autoLog or {} + + local autoCombatLog = newCheckbox( + "Automatically turn on combat logging for Siege of Orgrimmar", + "Automatically Log Siege of Orgrimmar", + "When entering Siege of Orgrimmar, combat logging will be turned on. When leaving Siege of Orgrimmar, combat logging will be turned off.", + function(self, value) + if AmrOptions.autoLog[1136] then + AmrOptions.autoLog[1136] = false + else + AmrOptions.autoLog[1136] = true + end + end + ) + autoCombatLog:SetChecked(AmrOptions.autoLog[1136]) + autoCombatLog:SetPoint("TOPLEFT", subTitleWrapper, "BOTTOMLEFT", -2, -124) + ]] + + frame:SetScript("OnShow", nil) +end) +InterfaceOptions_AddCategory(frame) +