Erik L. Vonderscheer [06-30-09 - 19:52]
diff --git a/TradeFilter3.lua b/TradeFilter3.lua
index 5191a62..b192e4e 100644
--- a/TradeFilter3.lua
+++ b/TradeFilter3.lua
@@ -61,6 +61,8 @@ defaults = {
redirect = false,
debug = false,
filterSAY = false,
+ filterYELL = false,
+ filterSELF = false,
filterLFG = false,
filterGeneral = false,
filterTrade = true,
@@ -89,16 +91,16 @@ defaults = {
"[bB][uU][yY][iI][nN][gG]",
"2[vV]2",
"3[vV]3",
- "5[vV]5",
- },
+ "5[vV]5"
+ }
}
}
function TF3:OnInitialize()
--[[ Libraries ]]--
- local L = LibStub("AceLocale-3.0"):GetLocale("TradeFilter3")
local ACD = LibStub("AceConfigDialog-3.0")
local LAP = LibStub("LibAboutPanel")
+ local L = LibStub("AceLocale-3.0"):GetLocale("TradeFilter3")
self.db = LibStub("AceDB-3.0"):New("TradeFilter3DB", defaults);
@@ -115,8 +117,6 @@ function TF3:OnInitialize()
-- Set up options panels.
self.OptionsPanel = ACD:AddToBlizOptions(self.name, L["TFR"], nil, "generalGroup")
---~ self.OptionsPanel.channel = ACD:AddToBlizOptions(self.name, L["channelGroup"], self.name, "channelGroup")
---~ self.OptionsPanel.custom = ACD:AddToBlizOptions(self.name, L["addFilterGroup"], self.name, "addFilterGroup")
self.OptionsPanel.profiles = ACD:AddToBlizOptions("TradeFilter3P", L["Profiles"], self.name)
self.OptionsPanel.about = LAP.new(self.name, self.name)
@@ -227,8 +227,12 @@ Taken from SpamMeNot
local function PreFilterFunc_Say(self, event, ...)
local filtered = false
local userID = arg2 or select(2, ...)
- if (TF3.db.profile.filterSAY and userID ~= UnitName("Player") and TF3:IsFriend(userID) == false) then
- filtered = TF3:FilterFunc(...)
+ if (TF3.db.profile.filterSAY and TF3:IsFriend(userID) == false) then
+ if (userID == UnitName("Player") and TF3.db.profile.filterSELF == false) then
+ filtered = false
+ else
+ filtered = TF3:FilterFunc(...)
+ end
elseif (event == "CHAT_MSG_SAY" and not TF3.db.profile.filterSAY) then
filtered = false
end
@@ -239,8 +243,12 @@ end
local function PreFilterFunc_Yell(self, event, ...)
local filtered = false
local userID = arg2 or select(2, ...)
- if (TF3.db.profile.filterYELL and userID ~= UnitName("Player") and TF3:IsFriend(userID) == false) then
- filtered = TF3:FilterFunc(...)
+ if (TF3.db.profile.filterYELL and TF3:IsFriend(userID) == false) then
+ if (userID == UnitName("Player") and TF3.db.profile.filterSELF == false) then
+ filtered = false
+ else
+ filtered = TF3:FilterFunc(...)
+ end
elseif (event == "CHAT_MSG_YELL" and not TF3.db.profile.filterYELL) then
filtered = false
end
@@ -253,20 +261,32 @@ local function PreFilterFunc(self, event, ...)
local zoneID = arg7 or select(7, ...)
local chanID = arg8 or select(8, ...)
--[[ Check for Trade Channel and User setting ]]--
- if (zoneID == 2 and TF3.db.profile.filtertrade and userID ~= UnitName("Player") and TF3:IsFriend(userID) == false) then
- filtered = TF3:FilterFunc(...)
+ if (zoneID == 2 and TF3.db.profile.filtertrade and TF3:IsFriend(userID) == false) then
+ if (userID == UnitName("Player") and TF3.db.profile.filterSELF == false) then
+ filtered = false
+ else
+ filtered = TF3:FilterFunc(...)
+ end
elseif (zoneID == 2 and not TF3.db.profile.filtertrade) then
filtered = false
end
--[[ Check for General Channel and User setting ]]--
- if (chanID == 1 and TF3.db.profile.filtergeneral and userID ~= UnitName("Player") and TF3:IsFriend(userID) == false) then
- filtered = TF3:FilterFunc(...)
+ if (chanID == 1 and TF3.db.profile.filtergeneral and TF3:IsFriend(userID) == false) then
+ if (userID == UnitName("Player") and TF3.db.profile.filterSELF == false) then
+ filtered = false
+ else
+ filtered = TF3:FilterFunc(...)
+ end
elseif (chanID == 1 and not TF3.db.profile.filtergeneral) then
filtered = false
end
--[[ Check for LFG Channel and User setting ]]--
- if (zoneID == 26 and TF3.db.profile.filterLFG and userID ~= UnitName("Player") and TF3:IsFriend(userID) == false) then
- filtered = TF3:FilterFunc(...)
+ if (zoneID == 26 and TF3.db.profile.filterLFG and TF3:IsFriend(userID) == false) then
+ if (userID == UnitName("Player") and TF3.db.profile.filterSELF == false) then
+ filtered = false
+ else
+ filtered = TF3:FilterFunc(...)
+ end
elseif (chanID == 26 and not TF3.db.profile.filterLFG) then
filtered = false
end
diff --git a/TradeFilter3Locale.lua b/TradeFilter3Locale.lua
index 5d2fd27..ec9f7ee 100644
--- a/TradeFilter3Locale.lua
+++ b/TradeFilter3Locale.lua
@@ -31,3 +31,9 @@ if L then
--@localization(locale="zhTW", format="lua_additive_table", same-key-is-true=true, handle-subnamespaces="concat")@
if GetLocale() == "zhTW" then return end
end
+
+local L = LibStub("AceLocale-3.0"):NewLocale("TradeFilter3", "frFR", true, debug)
+if L then
+--@localization(locale="frFR", format="lua_additive_table", same-key-is-true=true, handle-subnamespaces="concat")@
+if GetLocale() == "frFR" then return end
+end
diff --git a/TradeFilter3Options.lua b/TradeFilter3Options.lua
index 31aabb9..019ac23 100644
--- a/TradeFilter3Options.lua
+++ b/TradeFilter3Options.lua
@@ -35,49 +35,13 @@ options = {
end
end,
},
- redirect = {
- type = 'toggle',
- order = 2,
- width = "full",
- name = L["Redir"],
- desc = L["RedirDesc"],
- get = function() return TF3.db.profile.redirect end,
- set = function() TF3.db.profile.redirect = not TF3.db.profile.redirect end,
- },
- --@alpha@
- debug = {
- type = 'toggle',
- order = 3,
- width = "full",
- disabled = false,
- hidden = false,
- name = L["Debug"],
- desc = L["DebugDesc"],
- get = function() return TF3.db.profile.debug end,
- set = function() TF3.db.profile.debug = not TF3.db.profile.debug end,
- },
- --@end-alpha@
- reload = {
- type = 'execute',
- name = L["RUI"],
- desc = L["RUID"],
- func = function()
- _G.ReloadUI()
- end,
- --disabled = function()
- -- if not TF3:IsRedirect() or not TF3:IsDebug() then
- -- return false
- -- end
- -- return true
- --end,
- order = -1,
- },
channelGroup = {
type = "group",
handler = TF3,
order = 1,
- width = "double",
- disabled = false,
+ disabled = function()
+ return not TF3.db.profile.turnOn
+ end,
name = "Channel Selection",
desc = "Channel Selection",
args = {
@@ -140,7 +104,11 @@ options = {
},
addFilterGroup = {
type = "group",
- disabled = false,
+ handler = TF3,
+ order = 2,
+ disabled = function()
+ return not TF3.db.profile.turnOn
+ end,
name = L["addFilterGroup"],
desc = L["AddFilterGD"],
args = {
@@ -172,7 +140,7 @@ options = {
end,
set = function(info, value)
TF3.db.profile.filter[1] = value
- print("The " .. TF3.db.profile.filter[1] .. " was set to: " .. tostring(value))
+ print(format("%s added to filter expression list.", value))
end,
usage = L["AddFilterUsage"],
},
@@ -190,7 +158,7 @@ options = {
end,
set = function(info, value)
TF3.db.profile.filter[2] = value
- print("The " .. TF3.db.profile.filter[2] .. " was set to: " .. tostring(value))
+ print(format("%s added to filter expression list.", value))
end,
usage = L["AddFilterUsage"],
},
@@ -208,12 +176,68 @@ options = {
end,
set = function(info, value)
TF3.db.profile.filter[3] = value
- print("The " .. TF3.db.profile.filter[3] .. " was set to: " .. tostring(value))
+ print(format("%s added to filter expression list.", value))
end,
usage = L["AddFilterUsage"],
},
},
},
+ outputGroup = {
+ type = "group",
+ handler = TF3,
+ order = 3,
+ disabled = function()
+ return not TF3.db.profile.turnOn
+ end,
+ name = L["OUTPUT"],
+ desc = L["OUTPUT"],
+ args = {
+ optionsHeader3 = {
+ type = "header",
+ order = 1,
+ name = L["OUTPUT"],
+ desc = L["OUTPUT"],
+ },
+ redirect = {
+ type = 'toggle',
+ order = 2,
+ width = "full",
+ name = L["Redir"],
+ desc = L["RedirDesc"],
+ get = function() return TF3.db.profile.redirect end,
+ set = function() TF3.db.profile.redirect = not TF3.db.profile.redirect end,
+ },
+ --@alpha@
+ debug = {
+ type = 'toggle',
+ order = 3,
+ width = "full",
+ disabled = false,
+ hidden = false,
+ name = L["Debug"],
+ desc = L["DebugDesc"],
+ get = function() return TF3.db.profile.debug end,
+ set = function() TF3.db.profile.debug = not TF3.db.profile.debug end,
+ },
+ --@end-alpha@
+ optionsHeader4 = {
+ type = "header",
+ order = 4,
+ name = L["FSELF"],
+ desc = L["FSELFD"],
+ },
+ filterSELF = {
+ type = 'toggle',
+ order = 5,
+ width = "double",
+ disabled = false,
+ name = L["FSELF"],
+ desc = L["FSELFD"],
+ get = function() return TF3.db.profile.filterSELF end,
+ set = function() TF3.db.profile.filterSELF = not TF3.db.profile.filterSELF end,
+ },
+ },
+ },
},
},
},