diff --git a/ElvUI_SLE/modules/Armory/CharacterArmory/CharacterArmory.lua b/ElvUI_SLE/modules/Armory/CharacterArmory/CharacterArmory.lua
index 77a4884..d15329c 100644
--- a/ElvUI_SLE/modules/Armory/CharacterArmory/CharacterArmory.lua
+++ b/ElvUI_SLE/modules/Armory/CharacterArmory/CharacterArmory.lua
@@ -591,9 +591,11 @@ function CA:Update_Gear()
CurrentLineText = gsub(CurrentLineText, Old, New)
end
end
-
- for Old, New in pairs(SLE_ArmoryDB.EnchantString) do
- CurrentLineText = gsub(CurrentLineText, Old, New)
+
+ for Name, _ in pairs(SLE_ArmoryDB.EnchantString) do
+ if SLE_ArmoryDB.EnchantString[Name].original and SLE_ArmoryDB.EnchantString[Name].new then
+ CurrentLineText = gsub(CurrentLineText, SLE_ArmoryDB.EnchantString[Name].original, SLE_ArmoryDB.EnchantString[Name].new)
+ end
end
Slot.ItemEnchant:SetText('|cffceff00'..CurrentLineText)
diff --git a/ElvUI_SLE/modules/Armory/Config.lua b/ElvUI_SLE/modules/Armory/Config.lua
index 5c74fd1..f52595f 100644
--- a/ElvUI_SLE/modules/Armory/Config.lua
+++ b/ElvUI_SLE/modules/Armory/Config.lua
@@ -9,7 +9,7 @@ local function Color(TrueColor, FalseColor)
return (E.db.sle.Armory.Character.Enable ~= false or E.db.sle.Armory.Inspect.Enable ~= false) and (TrueColor == '' and '' or TrueColor and '|c'..TrueColor or KF:Color_Value()) or FalseColor and '|c'..FalseColor or ''
end
-local EnchantString_Old, EnchantString_New = '', ''
+local EnchantStringName, EnchantString_Old, EnchantString_New = '', '', ''
local SelectedEnchantString
local function LoadArmoryConfigTable()
@@ -35,33 +35,32 @@ local function LoadArmoryConfigTable()
order = 2,
guiInline = true,
args = {
- TargetString = {
- type = 'input',
- name = function() return ' '..Color()..L['Original String'] end,
+ CreateString = {
order = 1,
- desc = '',
- get = function() return EnchantString_Old end,
- set = function(_, value)
- EnchantString_Old = value
- end,
- disabled = function() return E.db.sle.Armory.Character.Enable == false and E.db.sle.Armory.Inspect.Enable == false end
- },
- NewString = {
+ name = L["Create Filter"],
type = 'input',
- name = function() return ' '..Color()..L['New String'] end,
- order = 2,
- desc = '',
- get = function() return EnchantString_New end,
+ width = "full",
+ get = function() return EnchantStringName end,
set = function(_, value)
- EnchantString_New = value
+ EnchantStringName = value
end,
disabled = function() return E.db.sle.Armory.Character.Enable == false and E.db.sle.Armory.Inspect.Enable == false end
},
- Space = {
- type = 'description',
- name = ' ',
+ AddButton = {
+ type = 'execute',
+ name = function() return (((E.db.sle.Armory.Character.Enable == false and E.db.sle.Armory.Inspect.Enable == false) or EnchantStringName == '') and '|cff787878' or KF:Color_Value())..ADD end, --L['Create Replacement'] end,
order = 3,
- width = 'half'
+ desc = '',
+ func = function()
+ if EnchantStringName ~= '' and not SLE_ArmoryDB.EnchantString[EnchantStringName] then
+ SLE_ArmoryDB.EnchantString[EnchantStringName] = {}
+ SelectedEnchantString = EnchantStringName
+ EnchantStringName = ""
+ end
+ end,
+ disabled = function()
+ return (E.db.sle.Armory.Character.Enable == false and E.db.sle.Armory.Inspect.Enable == false) or EnchantStringName == ''
+ end
},
List = {
type = 'select',
@@ -70,13 +69,13 @@ local function LoadArmoryConfigTable()
get = function() return SelectedEnchantString end,
set = function(_, value)
SelectedEnchantString = value
- E.Options.args.sle.args.Armory.args.EnchantString.args.ConfigSpace.args.StringGroup.name = value
+ E.Options.args.sle.args.Armory.args.EnchantString.args.ConfigSpace.args.StringGroup.name = L['List of Strings']..": "..value
end,
values = function()
local List = {}
List[''] = NONE
- for Old, New in pairs(SLE_ArmoryDB.EnchantString) do
- List[Old] = Old
+ for Name, _ in pairs(SLE_ArmoryDB.EnchantString) do
+ List[Name] = Name
end
if not SelectedEnchantString then
SelectedEnchantString = ''
@@ -91,48 +90,55 @@ local function LoadArmoryConfigTable()
order = 5,
width = 'half'
},
- AddButton = {
- type = 'execute',
- name = function() return (((E.db.sle.Armory.Character.Enable == false and E.db.sle.Armory.Inspect.Enable == false) or EnchantString_Old == '' or EnchantString_New == '') and '|cff787878' or KF:Color_Value())..L['Create Replacement'] end,
- order = 6,
- desc = '',
- func = function()
- if EnchantString_Old ~= '' and EnchantString_New ~= '' then
- SLE_ArmoryDB.EnchantString[EnchantString_Old] = EnchantString_New
-
- EnchantString_Old = ''
- EnchantString_New = ''
-
- if CharacterArmory then
- CharacterArmory:Update_Gear()
- end
-
- if InspectArmory and InspectArmory.LastDataSetting then
- InspectArmory:InspectFrame_DataSetting(InspectArmory.CurrentInspectData)
- end
- elseif SLE_ArmoryDB.EnchantString[EnchantString_Old] and EnchantString_New == '' then
- SLE_ArmoryDB.EnchantString[EnchantString_Old] = nil
- end
- end,
- disabled = function()
- return (E.db.sle.Armory.Character.Enable == false and E.db.sle.Armory.Inspect.Enable == false) or EnchantString_Old == '' or EnchantString_New == ''
- end
- },
- Space3 = {
- type = 'description',
- name = ' ',
- order = 7,
- width = 'normal'
- },
StringGroup = {
type = 'group',
- name = "", --function() return Color('ffffffff', 'ff787878')..L['String Replacement'] end,
+ name = "",
order = 8,
guiInline = true,
hidden = function()
return SelectedEnchantString == ''
end,
args = {
+ TargetString = {
+ type = 'input',
+ name = function() return ' '..Color()..L['Original String'] end,
+ order = 1,
+ desc = '',
+ width = "full",
+ get = function() return SLE_ArmoryDB.EnchantString[SelectedEnchantString]["original"] end,
+ set = function(_, value)
+ SLE_ArmoryDB.EnchantString[SelectedEnchantString]["original"] = value
+
+ if CharacterArmory then
+ CharacterArmory:Update_Gear()
+ end
+
+ if InspectArmory and InspectArmory.LastDataSetting then
+ InspectArmory:InspectFrame_DataSetting(InspectArmory.CurrentInspectData)
+ end
+ end,
+ disabled = function() return E.db.sle.Armory.Character.Enable == false and E.db.sle.Armory.Inspect.Enable == false end
+ },
+ NewString = {
+ type = 'input',
+ name = function() return ' '..Color()..L['New String'] end,
+ order = 2,
+ desc = '',
+ width = "full",
+ get = function() return SLE_ArmoryDB.EnchantString[SelectedEnchantString]["new"] end,
+ set = function(_, value)
+ SLE_ArmoryDB.EnchantString[SelectedEnchantString]["new"] = value
+
+ if CharacterArmory then
+ CharacterArmory:Update_Gear()
+ end
+
+ if InspectArmory and InspectArmory.LastDataSetting then
+ InspectArmory:InspectFrame_DataSetting(InspectArmory.CurrentInspectData)
+ end
+ end,
+ disabled = function() return E.db.sle.Armory.Character.Enable == false and E.db.sle.Armory.Inspect.Enable == false end
+ },
DeleteButton = {
type = 'execute',
name = function() return Color(nil, 'ff787878')..DELETE end,
@@ -163,34 +169,6 @@ local function LoadArmoryConfigTable()
name = ' ',
order = 3
},
- List = {
- type = 'group',
- name = function() return Color('ffffffff', 'ff787878')..L['List of Strings'] end,
- order = 4,
- guiInline = true,
- args = {
- List = {
- type = 'description',
- name = function()
- local List = ''
- local Order = 1
-
- if SLE_ArmoryDB.EnchantString and next(SLE_ArmoryDB.EnchantString) then
- for Old, New in pairs(SLE_ArmoryDB.EnchantString) do
- List = List..' '..Color('ffffffff', 'ff787878')..Order..'. '..Color('ffFF7E7E', 'ff787878')..Old..'|r '..Color('ffceff00', 'ff787878')..'->|r '..Color(nil, 'ff787878')..New..'|r|n'
- Order = Order + 1
- end
- else
- List = ' |cffFF7E7E'..L['There is no replacing order.']
- end
-
- return List
- end,
- order = 1,
- disabled = function() return E.db.sle.Armory.Character.Enable == false and E.db.sle.Armory.Inspect.Enable == false end,
- }
- }
- },
CreditSpace = {
type = 'description',
name = ' ',
diff --git a/ElvUI_SLE/modules/Armory/InspectArmory/InspectArmory.lua b/ElvUI_SLE/modules/Armory/InspectArmory/InspectArmory.lua
index 23e058f..f46ff1e 100644
--- a/ElvUI_SLE/modules/Armory/InspectArmory/InspectArmory.lua
+++ b/ElvUI_SLE/modules/Armory/InspectArmory/InspectArmory.lua
@@ -9,7 +9,7 @@ local KF, Info, Timer = unpack(ElvUI_KnightFrame)
local IA = InspectArmory or CreateFrame('Frame', 'InspectArmory', E.UIParent)
local ENI = _G['EnhancedNotifyInspect'] or { CancelInspect = function() end }
local AISM = _G['Armory_InspectSupportModule']
-local ButtonName = L['Knight Inspect']
+local ButtonName = INSPECT --L['Knight Inspect']
local CORE_FRAME_LEVEL = 10
local SLOT_SIZE = 37
@@ -1902,8 +1902,10 @@ function IA:InspectFrame_DataSetting(DataTable)
end
end
- for Old, New in pairs(SLE_ArmoryDB.EnchantString) do
- CurrentLineText = gsub(CurrentLineText, Old, New)
+ for Name, _ in pairs(SLE_ArmoryDB.EnchantString) do
+ if SLE_ArmoryDB.EnchantString[Name].original and SLE_ArmoryDB.EnchantString[Name].new then
+ CurrentLineText = gsub(CurrentLineText, SLE_ArmoryDB.EnchantString[Name].original, SLE_ArmoryDB.EnchantString[Name].new)
+ end
end
Slot.Gradation.ItemEnchant:SetText('|cffceff00'..CurrentLineText)