302 lines
12 KiB
Lua
Executable File
302 lines
12 KiB
Lua
Executable File
--[[
|
|
Name: Prat_StickyChannels
|
|
Revision: $Revision: 16019 $
|
|
Author(s): Curney (asml8ed@gmail.com)
|
|
Krtek (krtek4@gmail.com)
|
|
Inspired by: idChat2_StickyChannels by Industrial
|
|
Website: http://www.wowace.com/files/index.php?path=Prat/
|
|
Documentation: http://www.wowace.com/wiki/Prat/Integrated_Modules#StickyChannels
|
|
SVN: http://svn.wowace.com/wowace/trunk/Prat/
|
|
Description: Module for Prat that toggles sticky of different chat channel types on and off (default=on).
|
|
Dependencies: Prat
|
|
]]
|
|
|
|
local L = AceLibrary("AceLocale-2.2"):new("PratStickyChannels")
|
|
|
|
L:RegisterTranslations("enUS", function() return {
|
|
["StickyChannels"] = true,
|
|
["Chat channel sticky options."] = true,
|
|
["ChatType"] = true,
|
|
["Per chat type options."] = true,
|
|
["Say"] = true,
|
|
["Whisper"] = true,
|
|
["Yell"] = true,
|
|
["Party"] = true,
|
|
["Guild"] = true,
|
|
["Officer"] = true,
|
|
["Raid"] = true,
|
|
["RaidWarning"] = true,
|
|
["Battleground"] = true,
|
|
["Channel"] = true,
|
|
["Emote"] = true,
|
|
["%sSticky"] = true,
|
|
["Toggles sticky on and off for %s."] = true,
|
|
["Toggle"] = true,
|
|
["Toggle the module on and off."] = true,
|
|
} end)
|
|
|
|
L:RegisterTranslations("ruRU", function() return {
|
|
["StickyChannels"] = "StickyChannels",
|
|
["Chat channel sticky options."] = "Опции прилипания каналов чата.",
|
|
["ChatType"] = "ТипЧата",
|
|
["Per chat type options."] = "Опции чат типа.",
|
|
["Say"] = "Сказать",
|
|
["Whisper"] = "Шепот",
|
|
["Yell"] = "Крикнуть",
|
|
["Party"] = "Группа",
|
|
["Guild"] = "Гильдия",
|
|
["Officer"] = "Офицер",
|
|
["Raid"] = "Рейд",
|
|
["RaidWarning"] = "Объявление рейду",
|
|
["Battleground"] = "Поле боя",
|
|
["Channel"] = "Канал",
|
|
["Emote"] = "Эмоция",
|
|
["%sSticky"] = "Липкая \"%s\"",
|
|
["Toggles sticky on and off for %s."] = "Вкл/Выкл липкие %s.",
|
|
["Toggle"] = "Вкл/Выкл",
|
|
["Toggle the module on and off."] = "Вкл/Выкл модуль.",
|
|
} end)
|
|
|
|
L:RegisterTranslations("zhCN", function() return {
|
|
["StickyChannels"] = "固定频道",
|
|
["Chat channel sticky options."] = "固定聊天频道选项。",
|
|
["ChatType"] = "聊天分类",
|
|
["Per chat type options."] = "聊天类型选项。",
|
|
["Say"] = "说",
|
|
["Whisper"] = "密语",
|
|
["Yell"] = "喊",
|
|
["Party"] = "队伍",
|
|
["Guild"] = "公会",
|
|
["Officer"] = "官员",
|
|
["Raid"] = "团队",
|
|
["RaidWarning"] = "团队报警",
|
|
["Battleground"] = "战场",
|
|
["Channel"] = "频道",
|
|
["Emote"] = "表情",
|
|
["%sSticky"] = "固定%s",
|
|
["Toggles sticky on and off for %s."] = "切换固定%s频道.",
|
|
["Toggle"] = "切换",
|
|
["Toggle the module on and off."] = "切换此模块的打开与关闭。",
|
|
} end)
|
|
|
|
L:RegisterTranslations("koKR", function() return {
|
|
["StickyChannels"] = "채널 고정",
|
|
["Chat channel sticky options."] = "대화 채널 고정 설정입니다.",
|
|
["ChatType"] = "대화 종류",
|
|
["Per chat type options."] = "대화종류에 따른 설정입니다.",
|
|
["Say"] = "일반",
|
|
["Whisper"] = "귓속말",
|
|
["Yell"] = "외치기",
|
|
["Party"] = "파티",
|
|
["Guild"] = "길드",
|
|
["Officer"] = "오피서",
|
|
["Raid"] = "공격대",
|
|
["RaidWarning"] = "공대 경보",
|
|
["Battleground"] = "전장",
|
|
["Channel"] = "채널",
|
|
["Emote"] = "감정표현",
|
|
["%sSticky"] = "%s 고정",
|
|
["Toggles sticky on and off for %s."] = "%s에 대한 고정 켜고 끄기를 전환합니다.",
|
|
["Toggle"] = "전환",
|
|
["Toggle the module on and off."] = "모듈 켜고 끄기를 전환합니다.",
|
|
} end)
|
|
|
|
Prat_StickyChannels = Prat:NewModule("stickychannels")
|
|
|
|
function Prat_StickyChannels:OnInitialize()
|
|
self.db = Prat:AcquireDBNamespace("StickyChannels")
|
|
Prat:RegisterDefaults("StickyChannels", "profile", {
|
|
on = true,
|
|
say = true,
|
|
whisper = true,
|
|
yell = true,
|
|
party = true,
|
|
guild = true,
|
|
officer = true,
|
|
raid = true,
|
|
raid_warning = true,
|
|
battleground = true,
|
|
channel = true,
|
|
emote = true,
|
|
})
|
|
Prat.Options.args.stickychannels = {
|
|
name = L["StickyChannels"],
|
|
desc = L["Chat channel sticky options."],
|
|
type = "group",
|
|
args = {
|
|
chattype = {
|
|
name = L["ChatType"],
|
|
desc = L["Per chat type options."],
|
|
type = "group",
|
|
args = {
|
|
say = {
|
|
name = string.format(L["%sSticky"], L["Say"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Say"]),
|
|
type = "toggle",
|
|
order = 101,
|
|
get = function() return self.db.profile.say end,
|
|
set = function(v)
|
|
self.db.profile.say = v
|
|
self:Stickum("SAY",v)
|
|
end
|
|
},
|
|
whisper = {
|
|
name = string.format(L["%sSticky"], L["Whisper"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Whisper"]),
|
|
type = "toggle",
|
|
order = 102,
|
|
get = function() return self.db.profile.whisper end,
|
|
set = function(v)
|
|
self.db.profile.whisper = v
|
|
self:Stickum("WHISPER",v)
|
|
end
|
|
},
|
|
yell = {
|
|
name = string.format(L["%sSticky"], L["Yell"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Yell"]),
|
|
type = "toggle",
|
|
order = 103,
|
|
get = function() return self.db.profile.yell end,
|
|
set = function(v)
|
|
self.db.profile.yell = v
|
|
self:Stickum("YELL",v)
|
|
end
|
|
},
|
|
party = {
|
|
name = string.format(L["%sSticky"], L["Party"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Party"]),
|
|
type = "toggle",
|
|
order = 104,
|
|
get = function() return self.db.profile.party end,
|
|
set = function(v)
|
|
self.db.profile.party = v
|
|
self:Stickum("PARTY",v)
|
|
end
|
|
},
|
|
guild = {
|
|
name = string.format(L["%sSticky"], L["Guild"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Guild"]),
|
|
type = "toggle",
|
|
order = 105,
|
|
get = function() return self.db.profile.guild end,
|
|
set = function(v)
|
|
self.db.profile.guild = v
|
|
self:Stickum("GUILD",v)
|
|
end
|
|
},
|
|
officer = {
|
|
name = string.format(L["%sSticky"], L["Officer"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Officer"]),
|
|
type = "toggle",
|
|
order = 106,
|
|
get = function() return self.db.profile.officer end,
|
|
set = function(v)
|
|
self.db.profile.officer = v
|
|
self:Stickum("OFFICER",v)
|
|
end
|
|
},
|
|
raid = {
|
|
name = string.format(L["%sSticky"], L["Raid"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Raid"]),
|
|
type = "toggle",
|
|
order = 107,
|
|
get = function() return self.db.profile.raid end,
|
|
set = function(v)
|
|
self.db.profile.raid = v
|
|
self:Stickum("RAID",v)
|
|
end
|
|
},
|
|
raidwarning = {
|
|
name = string.format(L["%sSticky"], L["RaidWarning"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["RaidWarning"]),
|
|
type = "toggle",
|
|
order = 108,
|
|
get = function() return self.db.profile.raid_warning end,
|
|
set = function(v)
|
|
self.db.profile.raid_warning = v
|
|
self:Stickum("RAID_WARNING",v)
|
|
end
|
|
},
|
|
battleground = {
|
|
name = string.format(L["%sSticky"], L["Battleground"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Battleground"]),
|
|
type = "toggle",
|
|
order = 109,
|
|
get = function() return self.db.profile.battleground end,
|
|
set = function(v)
|
|
self.db.profile.battleground = v
|
|
self:Stickum("BATTLEGROUND",v)
|
|
end
|
|
},
|
|
channel = {
|
|
name = string.format(L["%sSticky"], L["Channel"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Channel"]),
|
|
type = "toggle",
|
|
order = 110,
|
|
get = function() return self.db.profile.channel end,
|
|
set = function(v)
|
|
self.db.profile.channel = v
|
|
self:Stickum("CHANNEL",v)
|
|
end
|
|
},
|
|
emote = {
|
|
name = string.format(L["%sSticky"], L["Emote"]),
|
|
desc = string.format(L["Toggles sticky on and off for %s."], L["Emote"]),
|
|
type = "toggle",
|
|
order = 111,
|
|
get = function() return self.db.profile.emote end,
|
|
set = function(v)
|
|
self.db.profile.emote = v
|
|
self:Stickum("EMOTE",v)
|
|
end
|
|
}
|
|
}
|
|
},
|
|
toggle = {
|
|
name = L["Toggle"],
|
|
desc = L["Toggle the module on and off."],
|
|
type = "toggle",
|
|
order = 200,
|
|
get = function() return self.db.profile.on end,
|
|
set = function() self.db.profile.on = Prat:ToggleModuleActive("stickychannels") end
|
|
}
|
|
}
|
|
}
|
|
end
|
|
|
|
function Prat_StickyChannels:OnEnable()
|
|
self:Stickum("SAY",self.db.profile.say)
|
|
self:Stickum("WHISPER",self.db.profile.whisper)
|
|
self:Stickum("YELL",self.db.profile.yell)
|
|
self:Stickum("PARTY",self.db.profile.party)
|
|
self:Stickum("GUILD",self.db.profile.guild)
|
|
self:Stickum("OFFICER",self.db.profile.officer)
|
|
self:Stickum("RAID",self.db.profile.raid)
|
|
self:Stickum("RAID_WARNING",self.db.profile.raid_warning)
|
|
self:Stickum("BATTLEGROUND",self.db.profile.battleground)
|
|
self:Stickum("CHANNEL",self.db.profile.channel)
|
|
self:Stickum("EMOTE",self.db.profile.emote)
|
|
end
|
|
|
|
function Prat_StickyChannels:OnDisable()
|
|
self:Stickum("SAY",false)
|
|
self:Stickum("WHISPER",false)
|
|
self:Stickum("YELL",false)
|
|
self:Stickum("PARTY",false)
|
|
self:Stickum("GUILD",false)
|
|
self:Stickum("OFFICER",false)
|
|
self:Stickum("RAID",false)
|
|
self:Stickum("RAID_WARNING",false)
|
|
self:Stickum("BATTLEGROUND",false)
|
|
self:Stickum("CHANNEL",false)
|
|
self:Stickum("EMOTE",false)
|
|
end
|
|
|
|
function Prat_StickyChannels:Stickum(channel,stickied)
|
|
if stickied then
|
|
ChatTypeInfo[channel].sticky = 1
|
|
else
|
|
ChatTypeInfo[channel].sticky = 0
|
|
end
|
|
end
|