Quantcast

fixed aura filters and loot fonts

Steven Jackson [07-13-14 - 03:06]
fixed aura filters and loot fonts
Filename
Interface/AddOns/SVUI/packages/override/common/looting.lua
Interface/AddOns/SVUI/packages/unit/common/aurabars.lua
Interface/AddOns/SVUI/packages/unit/common/auras.lua
Interface/AddOns/SVUI/scripts/comix.lua
Interface/AddOns/SVUI/system/classes/Database.lua
Interface/AddOns/SVUI/system/classes/Filters.lua
Interface/AddOns/SVUI/system/classes/Registry.lua
Interface/AddOns/SVUI/system/system.lua
Interface/AddOns/SVUI_ConfigOMatic/modules/filter.lua
diff --git a/Interface/AddOns/SVUI/packages/override/common/looting.lua b/Interface/AddOns/SVUI/packages/override/common/looting.lua
index 9203e2d..4ee19d7 100644
--- a/Interface/AddOns/SVUI/packages/override/common/looting.lua
+++ b/Interface/AddOns/SVUI/packages/override/common/looting.lua
@@ -271,7 +271,7 @@ local function MakeSlots(id)
 	slot.count = slot.iconFrame:CreateFontString(nil, "OVERLAY")
 	slot.count:SetJustifyH("RIGHT")
 	slot.count:Point("BOTTOMRIGHT", slot.iconFrame, -2, 2)
-	slot.count:SetFontTemplate(SuperVillain.Media.font.roboto, nil, "OUTLINE")
+	slot.count:SetFont(SuperVillain.Shared:Fetch("font", "Roboto"), 12, "OUTLINE")
 	slot.count:SetText(1)

 	slot.name = slot:CreateFontString(nil, "OVERLAY")
@@ -279,7 +279,7 @@ local function MakeSlots(id)
 	slot.name:SetPoint("LEFT", slot)
 	slot.name:SetPoint("RIGHT", slot.icon, "LEFT")
 	slot.name:SetNonSpaceWrap(true)
-	slot.name:SetFontTemplate(SuperVillain.Media.font.roboto, nil, "OUTLINE")
+	slot.name:SetFont(SuperVillain.Shared:Fetch("font", "Roboto"), 12, "OUTLINE")

 	slot.drop = slot:CreateTexture(nil, "ARTWORK")
 	slot.drop:SetTexture("Interface\\QuestFrame\\UI-QuestLogTitleHighlight")
@@ -315,7 +315,7 @@ local function CreateRollButton(rollFrame, type, locale, anchor)
 	rollButton:SetScript("OnClick", DoDaRoll)
 	rollButton:SetMotionScriptsWhileDisabled(true)
 	local text = rollButton:CreateFontString(nil, nil)
-	text:SetFontTemplate(nil, nil, "OUTLINE")
+	text:SetFont(SuperVillain.Shared:Fetch("font", "Roboto"),14,"OUTLINE")
 	text:Point("CENTER", 0, ((type == 2 and 1) or (type == 0 and -1.2) or 0))
 	return rollButton, text
 end
@@ -369,16 +369,16 @@ local function CreateRollFrame()
 	rollFrame.need,rollFrame.greed,rollFrame.pass,rollFrame.disenchant = needText,greedText,passText,deText;
 	rollFrame.bindText = rollFrame:CreateFontString()
 	rollFrame.bindText:Point("LEFT",passButton,"RIGHT",3,1)
-	rollFrame.bindText:SetFontTemplate(nil,nil,"OUTLINE")
+	rollFrame.bindText:SetFont(SuperVillain.Shared:Fetch("font", "SVUI Number Font"),14,"OUTLINE")
 	rollFrame.lootText = rollFrame:CreateFontString(nil,"ARTWORK")
-	rollFrame.lootText:SetFontTemplate(nil,nil,"OUTLINE")
+	rollFrame.lootText:SetFont(SuperVillain.Shared:Fetch("font", "SVUI Number Font"),14,"OUTLINE")
 	rollFrame.lootText:Point("LEFT",rollFrame.bindText,"RIGHT",0,0)
 	rollFrame.lootText:Point("RIGHT",rollFrame,"RIGHT",-5,0)
 	rollFrame.lootText:Size(200,10)
 	rollFrame.lootText:SetJustifyH("LEFT")

 	rollFrame.yourRoll = rollFrame:CreateFontString(nil,"ARTWORK")
-	rollFrame.yourRoll:SetFontTemplate(SuperVillain.Media.font.numbers,18,"OUTLINE")
+	rollFrame.yourRoll:SetFont(SuperVillain.Shared:Fetch("font", "SVUI Number Font"),18,"OUTLINE")
 	rollFrame.yourRoll:Size(22,22)
 	rollFrame.yourRoll:Point("LEFT",rollFrame,"RIGHT",5,0)
 	rollFrame.yourRoll:SetJustifyH("CENTER")
@@ -621,7 +621,7 @@ end
 local OverrideLootFrame = function(self)
 	LootFrame:UnregisterAllEvents();
 	SVUI_LootFrame:SetFixedPanelTemplate('Transparent');
-	SVUI_LootFrame.title:SetFontTemplate(nil,nil,'OUTLINE');
+	SVUI_LootFrame.title:SetFont(SuperVillain.Shared:Fetch("font", "SVUI Number Font"),18,"OUTLINE")
 	SuperVillain:SetSVMovable(SVUI_LootFrameHolder, "SVUI_LootFrame_MOVE", L["Loot Frame"]);
 	tinsert(UISpecialFrames, "SVUI_LootFrame");

diff --git a/Interface/AddOns/SVUI/packages/unit/common/aurabars.lua b/Interface/AddOns/SVUI/packages/unit/common/aurabars.lua
index d4af6ba..3192a9c 100644
--- a/Interface/AddOns/SVUI/packages/unit/common/aurabars.lua
+++ b/Interface/AddOns/SVUI/packages/unit/common/aurabars.lua
@@ -38,7 +38,7 @@ local AuraRemover_OnClick = function(self)
 	local id = self:GetParent().aura.spellID;
 	if id then
 		SuperVillain:AddonMessage(format(L["The spell '%s' has been added to the Blocked unitframe aura filter."], n))
-		SuperVillain.Filters:Change("Blocked", id, {["enable"] = true, ["priority"] = 0})
+		SuperVillain:ChangeFilter("Blocked", id, {["enable"] = true, ["priority"] = 0})
 		MOD:RefreshUnitFrames()
 	end
 end
@@ -87,13 +87,13 @@ do
 	  	return false
 	end

-	CustomBarFilter = function(self, unit, name, _, _, _, debuffType, duration, _, unitCaster, isStealable, shouldConsolidate, spellID)
+	CustomBarFilter = function(self, unit, name, _, _, _, debuffType, duration, _, caster, isStealable, shouldConsolidate, spellID)
 		local db = MOD.db[self.db]
 		if((not db) or (db and not db.aurabar) or (spellID == 65148)) then
 			return false;
 		end
 		local barDB = db.aurabar
-		local filtered = (unitCaster == "player" or unitCaster == "vehicle") and true or false;
+		local filtered = (caster == "player" or caster == "vehicle") and true or false;
 		local allowed = true;
 		local pass = false;
 		local friendly = UnitIsFriend("player", unit) == 1 and true or false;
@@ -133,7 +133,7 @@ do
 			pass = true
 		end
 		local active = barDB.useFilter
-		if active and SuperVillain.Filters[active] then
+		if active and active ~= "" and SuperVillain.Filters[active] then
 			local spellsDB = SuperVillain.Filters[active];
 			if active ~= "Blocked" then
 				if spellsDB[name] and spellsDB[name].enable and allowed then
diff --git a/Interface/AddOns/SVUI/packages/unit/common/auras.lua b/Interface/AddOns/SVUI/packages/unit/common/auras.lua
index 8702495..5fe7172 100644
--- a/Interface/AddOns/SVUI/packages/unit/common/auras.lua
+++ b/Interface/AddOns/SVUI/packages/unit/common/auras.lua
@@ -85,7 +85,7 @@ local AuraRemover_OnClick = function(self)
 	local name = self.name;
 	if name then
 		SuperVillain:AddonMessage(format(L["The spell '%s' has been added to the Blocked unitframe aura filter."], name))
-		SuperVillain.Filters["Blocked"]["spells"][name] = {["enable"] = true, ["priority"] = 0}
+		SuperVillain:ChangeFilter("Blocked", name, {["enable"] = true, ["priority"] = 0})
 		MOD:RefreshUnitFrames()
 	end
 end
@@ -241,32 +241,29 @@ do
 	end

 	CustomAuraFilter = function(self, unit, icon, name, _, _, _, debuffType, duration, _, caster, isStealable, shouldConsolidate, spellID, canApplyAura, isBossAura)
-		local auraDB = MOD.db[self.db]
-		if((not auraDB) or (spellID == 65148)) then
-			return false;
-		end
-
+		local db = MOD.db[self.db]
 		local auraType = self.type;
-
 		if(not auraType) then return true end;
-
-		local isPlayer, friendly;
-		local filtered = true;
+		if((not db) or (db and not db[auraType]) or (spellID == 65148)) then
+			return false;
+		end
+		local auraDB = db[auraType]
+		local filtered = (caster == "player" or caster == "vehicle") and true or false;
 		local allowed = true;
 		local pass = false;
-		local isPlayer = caster == "player"or caster == "vehicle"
 		local friendly = UnitIsFriend("player", unit) == 1 and true or false;
-		local filterType = friendly and auraDB.friendlyAuraType or auraDB.enemyAuraType;
-		icon.isPlayer = isPlayer;
+
+		icon.isPlayer = filtered;
 		icon.owner = caster;
 		icon.name = name;
 		icon.priority = 0;
+
 		local shieldSpell = SuperVillain.Filters["Shield"][name]
 		if shieldSpell and shieldSpell.enable then
 			icon.priority = shieldSpell.priority
-		end
-		if _test(auraDB.filterPlayer, friendly) then
-			if isPlayer then filtered = true else filtered = false end
+		end
+
+		if _test(auraDB.filterPlayer, friendly) then
 			allowed = filtered;
 			pass = true
 		end
@@ -304,7 +301,7 @@ do
 			pass = true
 		end
 		local active = auraDB.useFilter
-		if active and SuperVillain.Filters[active] then
+		if active and active ~= "" and SuperVillain.Filters[active] then
 			local spellDB = SuperVillain.Filters[active];
 			if active ~= "Blocked" then
 				if spellDB[name] and spellDB[name].enable and allowed then
diff --git a/Interface/AddOns/SVUI/scripts/comix.lua b/Interface/AddOns/SVUI/scripts/comix.lua
index 580ef45..142a154 100644
--- a/Interface/AddOns/SVUI/scripts/comix.lua
+++ b/Interface/AddOns/SVUI/scripts/comix.lua
@@ -147,11 +147,11 @@ function SuperVillain:ToggleComix()
 end;

 function SuperVillain:ToastyKombat()
-	Comix:LaunchPopup("DELUXE")
-	-- ComixToastyPanelBG.anim[2]:SetOffset(256, -256)
-	-- ComixToastyPanelBG.anim[2]:SetOffset(0, 0)
-	-- ComixToastyPanelBG.anim:Play()
-	-- PlaySoundFile([[Interface\AddOns\SVUI\assets\sounds\toasty.mp3]])
+	--Comix:LaunchPopup("DELUXE")
+	ComixToastyPanelBG.anim[2]:SetOffset(256, -256)
+	ComixToastyPanelBG.anim[2]:SetOffset(0, 0)
+	ComixToastyPanelBG.anim:Play()
+	PlaySoundFile([[Interface\AddOns\SVUI\assets\sounds\toasty.mp3]])
 end;

 local Comix_OnUpdate = function() Comix:ReadyState(true) end
diff --git a/Interface/AddOns/SVUI/system/classes/Database.lua b/Interface/AddOns/SVUI/system/classes/Database.lua
index 32430ff..796215d 100644
--- a/Interface/AddOns/SVUI/system/classes/Database.lua
+++ b/Interface/AddOns/SVUI/system/classes/Database.lua
@@ -3371,7 +3371,7 @@ local function removedefaults(db, src, nometa)
 					db[k] = nil
 				end
 			else
-				if db[k] == src[k] then
+				if db[k] == v then
 					db[k] = nil
 				end
 			end
@@ -3460,6 +3460,7 @@ end

 local metadatabase = {
 	__index = function(t, k)
+		if(not k or k == "") then return end
 		local sv = rawget(t, "profile")
 		local dv = rawget(t, "defaults")
 		local src = dv and dv[k]
@@ -3469,7 +3470,7 @@ local metadatabase = {
 		end
 		rawset(t, k, sv[k])
 		return rawget(t, k)
-	end
+	end,
 }

 local METAPROFILE = function(sv)
@@ -3520,6 +3521,7 @@ end

 local metaglobals = {
 	__index = function(t, k)
+		if(not k or k == "") then return end
 		local sv = rawget(t, "globals")
 		local dv = rawget(t, "defaults")
 		local src = dv and dv[k]
diff --git a/Interface/AddOns/SVUI/system/classes/Filters.lua b/Interface/AddOns/SVUI/system/classes/Filters.lua
index 0815dc2..d1d2d4e 100644
--- a/Interface/AddOns/SVUI/system/classes/Filters.lua
+++ b/Interface/AddOns/SVUI/system/classes/Filters.lua
@@ -567,11 +567,17 @@ local CLASS_WATCH_INDEX = {

 local FilterIDs = {
 	["Blocked"] = [[36900,36901,36893,114216,97821,36032,132365,8733,57724,25771,57723,36032,58539,26013,6788,71041,41425,55711,8326,23445,24755,25163,80354,95809,95223,124275,124274,124273,117870,123981,15007,113942,89140]],
+
 	["Allowed"] = [[31821,2825,32182,80353,90355,47788,33206,116849,22812,1490,116202,123059,136431,137332,137375,144351,142863,142864,142865,143198]],
+
 	["Strict"] = [[123059,136431,137332,137375,144351,142863,142864,142865,143198]],
+
 	["CC"] = [[47476,91800,91807,91797,108194,115001,33786,2637,339,78675,22570,5211,9005,102359,99,127797,45334,102795,114238,113004,3355,1513,19503,34490,24394,64803,19386,117405,128405,50519,91644,90337,54706,4167,90327,56626,50245,50541,96201,96201,31661,118,55021,122,82691,118271,44572,33395,102051,20066,10326,853,105593,31935,105421,605,64044,8122,9484,15487,114404,88625,113792,87194,2094,1776,6770,1833,51722,1330,408,88611,115197,113953,51514,64695,63685,76780,118905,118345,710,6789,118699,5484,6358,30283,24259,115782,115268,118093,89766,137143,20511,7922,676,105771,107566,132168,107570,118895,18498,116706,117368,115078,122242,119392,119381,120086,116709,123407,140023,25046,20549,107079]],
+
 	["Shield"] = [[17,47515,45243,45438,115610,48797,48792,49039,87256,55233,50461,33206,47788,62618,47585,104773,110913,108359,22812,102342,106922,61336,19263,53480,1966,31224,74001,5277,45182,98007,30823,108271,1022,6940,114039,31821,498,642,86659,31850,118038,55694,97463,12975,114029,871,114030,120954,131523,122783,122278,115213,116849,20594]],
+
 	["Player"] = [[17,47515,45243,45438,45438,115610,110909,12051,12472,80353,12042,32612,110960,108839,111264,108843,48797,48792,49039,87256,49222,55233,50461,49016,51271,96268,33206,47788,62618,47585,6346,10060,114239,119032,27827,104773,110913,108359,113860,113861,113858,88448,22812,102342,106922,61336,117679,102543,102558,102560,16689,132158,106898,1850,106951,29166,52610,69369,112071,124974,19263,53480,51755,54216,34471,3045,3584,131894,90355,90361,31224,74001,5277,45182,51713,114018,2983,121471,11327,108212,57933,79140,13750,98007,30823,108271,16188,2825,79206,16191,8178,58875,108281,108271,16166,114896,1044,1022,1038,6940,114039,31821,498,642,86659,20925,31850,31884,53563,31842,54428,105809,85499,118038,55694,97463,12975,114029,871,114030,18499,1719,23920,114028,46924,3411,107574,120954,131523,122783,122278,115213,116849,125174,116841,20594,59545,20572,26297,68992]],
+
 	["Raid"] = [[116281,116784,116417,116942,116161,117708,118303,118048,118135,117878,117949,116835,116778,116525,122761,122760,122740,123812,123180,123474,122835,123081,122125,121885,121949,117436,118091,117519,122752,123011,116161,123121,119985,119086,119775,122151,138349,137371,136767,137641,137359,137972,136903,136753,137633,137731,133767,133768,136050,138569,134691,137440,137408,137360,135000,143436,143579,147383,146124,144851,144358,144774,147207,144215,143990,144330,143494,142990,143919,143766,143773,146589,143777,143385,143974,145183]]
 }

@@ -585,6 +591,18 @@ local FilterOverrides = {
 	["120954"] = 2, ["131523"] = 5
 }

+local function safename(id)
+	local n = GetSpellInfo(id)
+	if not n then
+		if type(id) == "string" then
+			n = id
+		else
+			print('|cffFF9900SVUI:|r Spell not found: (#ID) '..id)
+			n = "Voodoo Doll";
+		end
+	end
+	return n
+end
 local FilterDefaults = {
 	["CC"] = {},
 	["Shield"] = {},
@@ -596,18 +614,22 @@ local FilterDefaults = {
 	['BuffWatch'] = CLASS_WATCH_INDEX[SuperVillain.class],
 	['PetBuffWatch'] = CLASS_WATCH_INDEX.PET,
 }
-
-local function safename(id)
-	local n = GetSpellInfo(id)
-	if not n then
-		if type(id) == "string" then
-			n = id
-		else
-			print('|cffFF9900SVUI:|r Spell not found: (#ID) '..id)
-			n = "Voodoo Doll";
-		end
+for k, x in pairs(FilterIDs) do
+	local src = {};
+	for id in gmatch(x, '([^,]+)') do
+		if(id) then
+			local saved
+			local n = safename(id);
+			local p = FilterOverrides[tostring(id)] or 0;
+			if k == "Strict" then
+				saved = {['enable'] = true, ['spellID'] = id, ['priority'] = p}
+			else
+				saved = {['enable'] = true, ['priority'] = p}
+			end
+			src[n] = saved
+		end
 	end
-	return n
+	FilterDefaults[k] = src
 end

 local function tablecopy(d, s)
@@ -628,26 +650,6 @@ local function tablecopy(d, s)
 	end
 end

-do
-	for k, x in pairs(FilterIDs) do
-		local src = {};
-		for id in gmatch(x, '([^,]+)') do
-			if(id) then
-				local saved
-				local n = safename(id);
-				local p = FilterOverrides[tostring(id)] or 0;
-				if k == "Strict" then
-					saved = {['enable'] = true, ['spellID'] = id, ['priority'] = p}
-				else
-					saved = {['enable'] = true, ['priority'] = p}
-				end
-				src[n] = saved
-			end
-		end
-		FilterDefaults[k] = src
-	end
-end
-
 local function removedefaults(db, src, nometa)
 	if(type(src) ~= "table") then return end
 	if(not nometa) then
@@ -667,61 +669,26 @@ local function removedefaults(db, src, nometa)
 	end
 end

-local function setdefaults(t, key)
-	local sv = rawget(t, "filters")
-	local src = rawget(t, "defaults")
-	local dest = sv[key]
-	if(dest) then
-		for k,v in pairs(dest) do
-			dest[k] = nil
-		end
-	else
-		sv[key] = {}
-	end
-	tablecopy(sv[key], src[key])
-end
-
-local function getdefaults(t, key)
-	return FilterDefaults[key] or {}
-end
-
-local function resetfilters(t)
-	local sv = rawget(t, "filters")
-	local src = rawget(t, "defaults")
-	for k,v in pairs(sv) do
-		sv[k] = nil
-	end
-	tablecopy(sv, src)
-end
-
-local function changefilter(t, k, id, v)
-	local sv = rawget(t, "filters")
-	local name = safename(id)
-	rawset(sv[k], name, v)
-end
-
-local function initializedata(t)
-	local sv = rawget(t, "filters")
-	local dv = rawget(t, "defaults")
+local function initializedata(sv)
+	local dv = FilterDefaults
 	for k,v in pairs(sv) do
-		if(dv[k]) then
-			removedefaults(sv[k], dv[k])
-		end
+		removedefaults(sv[k], dv[k])
 	end
 end

 local SanitizeDatabase = function(self, event)
 	if event == "PLAYER_LOGOUT" then
-		local db = SuperVillain.Filters.filters
-		local src = FilterDefaults
-		for k,v in pairs(db) do
-			removedefaults(db[k], src[k])
+		local sv = SuperVillain.Filters
+		local dv = FilterDefaults
+		for k,v in pairs(sv) do
+			removedefaults(sv[k], dv[k])
 		end
 	end
 end

 local metadatabase = {
 	__index = function(t, k)
+		if(not k or k == "") then return end
 		local sv = rawget(t, "filters")
 		local dv = rawget(t, "defaults")
 		local src = dv and dv[k]
@@ -736,32 +703,42 @@ local metadatabase = {


 local METAFILTERS = function(sv)
-	local methods 	= {
-		filters 	= sv,
-		defaults 	= FilterDefaults,
-		Init 		= initializedata,
-		Reset 		= resetprofile,
-		SetDefault 	= setdefaults,
-		Change 		= changefilter
-	}
-
-	local db 		= setmetatable(methods, metadatabase)
-
 	local logout = CreateFrame("Frame",nil)
 	logout:RegisterEvent("PLAYER_LOGOUT")
 	logout:SetScript("OnEvent", SanitizeDatabase)

-	return db
+	for k, x in pairs(FilterIDs) do
+		if (not sv[k]) then sv[k] = {} end
+		local src = {};
+		for id in gmatch(x, '([^,]+)') do
+			if(id) then
+				local saved
+				local n = safename(id);
+				local p = FilterOverrides[tostring(id)] or 0;
+				if k == "Strict" then
+					saved = {['enable'] = true, ['spellID'] = id, ['priority'] = p}
+				else
+					saved = {['enable'] = true, ['priority'] = p}
+				end
+				if (not sv[k][n]) then src[n] = saved else src[n] = sv[k][n] end
+			end
+		end
+		sv[k] = src
+	end
+
+	return sv
+end
+
+function SuperVillain:ChangeFilter(k, id, v)
+	local name = safename(id)
+	self.Filters[k][name] = v
 end

 function SuperVillain:SetFilterObjects(init)
 	if(init) then
-		self.Filters = tcopy(FilterDefaults, true)
+		self.Filters = FilterDefaults
 	else
-		twipe(self.Filters)
-		--self.Filters = tcopy(FilterDefaults, true)
 		local sv = _G["SVUI_AuraFilters"]
 	    self.Filters = METAFILTERS(sv)
-	    self.Filters:Init()
 	end
 end
\ No newline at end of file
diff --git a/Interface/AddOns/SVUI/system/classes/Registry.lua b/Interface/AddOns/SVUI/system/classes/Registry.lua
index 6fc0b5a..b8a312b 100644
--- a/Interface/AddOns/SVUI/system/classes/Registry.lua
+++ b/Interface/AddOns/SVUI/system/classes/Registry.lua
@@ -302,19 +302,16 @@ local METAREGISTRY = function()
             end
         end,
         UpdateAll = function(_)
-            for priority = 1,3 do
-                if _._packages[priority] then
-                    local updList = _._packages[priority]
-                    for i=1,#_packages[priority] do
-                        local obj = updList[i]
-                        local name = obj._name
-                        if obj and obj.UpdateThisPackage then
-                            if SuperVillain.db[name] then
-                                obj.db = SuperVillain.db[name]
-                            end
-                            obj:UpdateThisPackage()
-                        end
+            print("Registry: Updating")
+            local pkgList = _._packages
+            for name,obj in pairs(pkgList) do
+                print(name)
+                local name = obj._name
+                if obj and obj.UpdateThisPackage then
+                    if SuperVillain.db[name] then
+                        obj.db = SuperVillain.db[name]
                     end
+                    obj:UpdateThisPackage()
                 end
             end
         end
diff --git a/Interface/AddOns/SVUI/system/system.lua b/Interface/AddOns/SVUI/system/system.lua
index 50f181e..69b75ec 100644
--- a/Interface/AddOns/SVUI/system/system.lua
+++ b/Interface/AddOns/SVUI/system/system.lua
@@ -66,9 +66,9 @@ BUILD ADDON OBJECTS
 ##########################################################
 ]]--
 local SuperVillain = {};
-SuperVillain.Filters = {};
 SuperVillain.db = {};
 SuperVillain.Media = {};
+SuperVillain.Filters = {};
 SuperVillain.DisplayAudit = {};
 SuperVillain.DynamicOptions = {};
 SuperVillain.snaps = {};
@@ -381,7 +381,6 @@ end

 local function FullLoad(self)
 	self:SetDatabaseObjects()
-	self:SetFilterObjects()
 	self:UIScale("PLAYER_LOGIN");
 	self.Registry:Load();
 	self:DefinePlayerRole();
diff --git a/Interface/AddOns/SVUI_ConfigOMatic/modules/filter.lua b/Interface/AddOns/SVUI_ConfigOMatic/modules/filter.lua
index 1222c0e..85d76b6 100644
--- a/Interface/AddOns/SVUI_ConfigOMatic/modules/filter.lua
+++ b/Interface/AddOns/SVUI_ConfigOMatic/modules/filter.lua
@@ -291,7 +291,7 @@ local function generateFilterOptions()
 						name = L["Style"],
 						order = 3,
 						type = "select",
-						values = {["coloredIcon"] = L["Colored Icon"], ["texturedIcon"] = L["Textured Icon"], ["NONE"] = NONE}
+						values = {["coloredIcon"] = L["Colored Icon"], ["texturedIcon"] = L["Textured Icon"], [""] = NONE}
 					},
 					color = {
 						name = L["Color"],
@@ -494,7 +494,7 @@ local function generateFilterOptions()
 					},
 					xOffset = {order = 2, type = "range", name = L["xOffset"], min = -75, max = 75, step = 1},
 					yOffset = {order = 2, type = "range", name = L["yOffset"], min = -75, max = 75, step = 1},
-					style = {name = L["Style"], order = 3, type = "select", values = {["coloredIcon"] = L["Colored Icon"], ["texturedIcon"] = L["Textured Icon"], ["NONE"] = NONE}},
+					style = {name = L["Style"], order = 3, type = "select", values = {["coloredIcon"] = L["Colored Icon"], ["texturedIcon"] = L["Textured Icon"], [""] = NONE}},
 					color = {
 						name = L["Color"],
 						type = "color",
@@ -621,7 +621,10 @@ local function generateFilterOptions()
 					order = 3,
 					guiInline = true,
 					get = function(e)return selectedSpell end,
-					set = function(e, arg)selectedSpell = arg;generateFilterOptions()end,
+					set = function(e, arg)
+						selectedSpell = arg;
+						generateFilterOptions()
+					end,
 					values = function()
 						local filters = {}
 						local list = SuperVillain.Filters[filterType]
@@ -723,7 +726,7 @@ SuperVillain.Options.args.filters = {
 			values = function()
 				filters = {}
 				filters[""] = NONE;
-				for g in pairs(SuperVillain.Filters.defaults) do
+				for g in pairs(SuperVillain.Filters) do
 					filters[g] = g
 				end;
 				return filters
@@ -746,7 +749,7 @@ SuperVillain.Options.args.filters = {
 			values = function()
 				filters = {}
 				filters[""] = NONE;
-				for g in pairs(SuperVillain.Filters.defaults) do
+				for g in pairs(SuperVillain.Filters) do
 					filters[g] = g
 				end;
 				filters["Buff Indicator"] = "Buff Indicator"