Add channel locale config options

This commit is contained in:
2025-01-26 16:46:07 +01:00
parent ad676915bb
commit 62b028cf56
2 changed files with 48 additions and 0 deletions

View File

@@ -44,6 +44,29 @@ local function MapKeyToString(map, deliminer)
end
---@param map table<any, any>
---@param deliminer string
---@param terminator string
---@return string
local function MapToString(map, deliminer, terminator)
local str = ""
for k, v in pairs(map) do
str = str .. k .. deliminer .. v .. terminator
end
return str
end
---@param str string
---@param deliminer string
---@param terminator string
---@return table<any, any>
local function MapFromString(str, deliminer, terminator)
local map = {}
for _, line in ipairs(strsplit(terminator, str)) do
local key, value = strsplit(deliminer, line)
map[key] = value
end
return map
end
---@param map table<any, any>
---@param deliminer string
---@return string
local function MapValueToString(map, deliminer)
local str = ""
@@ -2031,6 +2054,29 @@ function shared.Config.Init()
stinkiesConfigFrame:Add(stinkies, 16, 12)
end
-- Channel locale
do
local r, g, b, a = GetNextColor()
local channelLocaleConfigFrame = GridFrame.new("HeimdallChannelLocaleConfig",
UIParent, 12, 20)
channelLocaleConfigFrame.frame:SetBackdropColor(r, g, b, 0.3)
configFrame:Add(channelLocaleConfigFrame, 14, 1)
local title = CreateFancyText("HeimdallChannelLocaleConfigTitle", channelLocaleConfigFrame.frame,
shared.L[Heimdall_Data.config.locale].config.channelLocale,
{ r, g, b, a })
channelLocaleConfigFrame:Add(title, 1, 12)
local channelLocale = CreateBasicBigEditBox("HeimdallChannelLocaleConfigChannelLocale",
channelLocaleConfigFrame.frame, shared.L[Heimdall_Data.config.locale].config.channelLocale,
MapToString(Heimdall_Data.config.channelLocale, ":", "\n"),
function(self)
local text = self:GetText()
Heimdall_Data.config.channelLocale = MapFromString(text, ":", "\n")
end)
channelLocaleConfigFrame:Add(channelLocale, 8, 12)
end
--configFrame.frame:Hide()
print("[Heimdall] Config loaded")
end

2
_L.lua
View File

@@ -58,6 +58,7 @@ shared.L = {
messenger = "Messenger",
minimapTagger = "Minimap Tagger",
channels = "Channels",
channelLocale = "Channel Locale",
prefix = "Prefix",
priority = "Priority",
russian = "Russian",
@@ -122,6 +123,7 @@ shared.L = {
alliance = "Альянс",
cleanupInterval = "Интервал Очистки",
combatAlerter = "Система Оповещения о Бое",
channelLocale = "Локаль Канала",
commander = "Командир",
deathReporter = "Система Отчетов о Смерти",
debug = "Отладка",