-- Create options panel. local addon = {} addon.panel = CreateFrame("Frame", nil, UIParent) addon.panel:Hide() addon.panel.name = "Busy and Away" addon.childpanel = CreateFrame("Frame", nil, addon.panel) addon.childpanel.name = "Help" addon.childpanel.parent = addon.panel.name -- Create addon slash command. SLASH_BUSYANDAWAYB1 = "/baa" function SlashCmdList.BUSYANDAWAYB(msg) if msg == "help" then InterfaceOptionsFrame_OpenToCategory(addon.childpanel) InterfaceOptionsFrame_OpenToCategory(addon.childpanel) else InterfaceOptionsFrame_OpenToCategory(addon.panel) InterfaceOptionsFrame_OpenToCategory(addon.panel) end end -- Main Panel local title = addon.panel:CreateFontString(nil, "OVERLAY", "GameFontNormalLarge") title:SetText("Busy and Away") title:SetPoint("TOPLEFT", 20, -15) local settings = addon.panel:CreateFontString(nil, "OVERLAY", "GameFontNormal") settings:SetText("Settings") settings:SetPoint("TOPLEFT", title, "BOTTOMLEFT", 0, -15) local awaymsg = CreateFrame("CheckButton", nil, addon.panel, "OptionsBaseCheckButtonTemplate") awaymsg:SetPoint("TOPLEFT", settings, "BOTTOMLEFT", 0, -10) awaymsg:SetScript("OnClick", function(self) if self:GetChecked() then BusyAndAwayDB["settings"]["awaymsg"] = 1 else BusyAndAwayDB["settings"]["awaymsg"] = 0 end end) awaymsg:SetScript("OnShow", function(self) if BusyAndAwayDB["settings"]["awaymsg"] ~= 0 then self:SetChecked() end end) local awaymsglbl = awaymsg:CreateFontString(nil, "OVERLAY", "GameFontHighlight") awaymsglbl:SetText("Set AFK message to DND message") awaymsglbl:SetPoint("LEFT", awaymsg, "RIGHT", 5, 1) local bnawaymsg = CreateFrame("CheckButton", nil, addon.panel, "OptionsBaseCheckButtonTemplate") bnawaymsg:SetPoint("TOPLEFT", awaymsg, "BOTTOMLEFT", 0, -5) bnawaymsg:SetScript("OnClick", function(self) if self:GetChecked() then BusyAndAwayDB["settings"]["bnawaymsg"] = 1 else BusyAndAwayDB["settings"]["bnawaymsg"] = 0 end end) bnawaymsg:SetScript("OnShow", function(self) if BusyAndAwayDB["settings"]["bnawaymsg"] ~= 0 then self:SetChecked() end end) local bnawaymsglbl = bnawaymsg:CreateFontString(nil, "OVERLAY", "GameFontHighlight") bnawaymsglbl:SetText("Send AFK reply to BN whispers") bnawaymsglbl:SetPoint("LEFT", bnawaymsg, "RIGHT", 5, 1) local bnbusymsg = CreateFrame("CheckButton", nil, addon.panel, "OptionsBaseCheckButtonTemplate") bnbusymsg:SetPoint("TOPLEFT", bnawaymsg, "BOTTOMLEFT", 0, -5) bnbusymsg:SetScript("OnClick", function(self) if self:GetChecked() then BusyAndAwayDB["settings"]["bnbusymsg"] = 1 else BusyAndAwayDB["settings"]["bnbusymsg"] = 0 end end) bnbusymsg:SetScript("OnShow", function(self) if BusyAndAwayDB["settings"]["bnbusymsg"] ~= 0 then self:SetChecked() end end) local bnbusymsglbl = bnbusymsg:CreateFontString(nil, "OVERLAY", "GameFontHighlight") bnbusymsglbl:SetText("Send DND reply to BN whispers") bnbusymsglbl:SetPoint("LEFT", bnbusymsg, "RIGHT", 5, 1) -- Help Panel local childtitle = addon.childpanel:CreateFontString(nil, "OVERLAY", "GameFontNormalLarge") childtitle:SetText("Busy and Away") childtitle:SetPoint("TOPLEFT", 20, -15) local help = addon.childpanel:CreateFontString(nil, "OVERLAY", "GameFontNormal") help:SetText("Help") help:SetPoint("TOPLEFT", childtitle, "BOTTOMLEFT", 0, -15) local text = addon.childpanel:CreateFontString(nil, "OVERLAY", "GameFontHighlight") text:SetText("At the moment this addon is pretty straight forward and I don't anticipate anyone really having any questions. That being said, if you need assistance contact me via the addon page on Curse or WoW Interface or email me at addons@niketa.net.") text:SetPoint("TOPLEFT", help, "BOTTOMLEFT", 0, -10) text:SetJustifyH("LEFT") text:CanWordWrap(true) text:SetWidth(580) InterfaceOptions_AddCategory(addon.panel) InterfaceOptions_AddCategory(addon.childpanel)