Implement chat channel frame creation and joinage

This commit is contained in:
2024-12-06 19:21:53 +01:00
parent 0e2955131f
commit 8df510771b
2 changed files with 65 additions and 1 deletions

View File

@@ -0,0 +1 @@
!LJ1(VjUnC8)xy6KankQV2nPPDsJJM2sfnWWPh6uvZJM4a(wWbf70h3Tl)TVV2joXjeAlt3pmPjqqC83NF((WpSpY2YgT2gfi(cpgNYJiuSnA6nwtgBAyJcJPCe5RyBZJo2gXJ9FaNWiXuBZF9Wto8qB0ttddzyUTj8CaHTjY7zl8tCB072yJEwBYe8sGpRN3aINlPiLa6D6xwoL84Nwn2aOXpokobmeZJKFpw(7jYFpv8lWKFkJhVwOIB2e4XbHHFatHj8sH37Xj(lib8v2OHWy4T(CqRmHZX4EjC4bGwcLiEcfe7Klp7pQKSn6Gdo4p4GzM5Y4je6YBVl7QOyFVOmx)vEukoY0BnML5(Hm3V99SRED6N5XypgNeSBE(BkjQKlCsY2uOlt(5jGfiScPa9st8CW0hg4htdjlh0GI4Km3oc0OZlARS07z(jK7XbxJzmVL4lsIt38MCZkwhL7WvCLZ3gpWCYCj0nP8khsBMaCeznK5LuF2empnHwPX(TIxHPuzuoZfXtqBIi8Usn1xtU9atXn)djmZLgZRPu(kmWUsDF77aRD0MMaoeOXoqSHg0IKkCS2KsXu7qcfEaGcCnmRyYqrKtmLqbkpFWsij3FvPh2P7TzFhe7Gb1CiXWo39Z960dEDCLmvF4E3hHhqOmCcVRu95ylOJ1YX90qSAMSY9umjJe5uCLE9r)8ezHtvgwAjtvMUi8J(GPELarLCjHYsDUb8CE3caaGfac62XijraqmHK5Iugv5g73YCFhRtUbO7hfMEdRTS6CpSyDE(bA5cuTqWVrFyhvTVfxz3S(JWJQKEM76C5N5UuQH921gvLMShE1OFSjx6o0EMOvAJxftO1ArQAD1TxJYEs)AR2K3bGSXJKW6QxLTJY7AS(HQkBT33BBUk7gLNdk5uwE3KqbssYC)Dy(FA714QdVn)ut6nSRsHCl5UwSVA9HuFey6mme1OW2akaxD)SFLkB2sRz45CcnyAYOemSVcqs8fW44hFLaLC6JaTyEZ1oJUCOLZIXMNnDbQ9itbgtvrMlW8kvnMgg3L0RDaVGLpS1waEz8w1V25IB7msXyXcgK7EfqUaHudpF05ot3GPM4hZn4U1mL)xJnkzPVEyzM1izZP0K3sAvZ95vFpETNJ2TT93OjH2HHw78jeAM7Jf247yfclmoLg0PFdaUxlXdvZVDGthCaspSkKsvw0wYVzB6oZXRJFq2q2lkARLw6OXqza1rYdEyuuTf6Q06RQfv)(xr8Qw7VKKhgeiL7ly4YAhN(L0in3ARaSJLU3XIbTgMB3okxqtx1TfKR8Eqq6grTyPQ9(UKwT6PgauByEjYuUFPwbfvC4FdEui5sGOy8RIbAR8SL73ImAD9Nw6sikSfNyneoYkBL80RWiqQlxchep)OYwLVq(O8e2QdZcGI88XO0WqYt2iNrdrwoiRHZTkp58LyViXjMv0olblPfnZyYeLOCwrceNCNSgdNANTbhfnoGLFCAjxmB0Sjd)SXChdtlJ5JnVWzX05tot)G1zUTss2vT1hS1DnjiaGTsRk3BlCeXQafMuQ4e(iXTraOckaFp4)539WLgtMD(ntYjQc3K4Q42cEaBL)YRJbh28GJouod1FvCYmWsGbJKMV4Ae44eQx0Nu3jYXV3g9fWWiHpBJMyCU4whWrHfS9XPwwtVgydm)c)ryC5BCve6Q16tDdgQ6ay8sWlH0QlHTYGLHRg57Vaj16taH2HFgOY46PwgW)ZGSHpR(3zIXWZmMddNpC8zf)v)Lolgo3eIEWWpo0YAIXfZNEJ5zngwXZytiHZCKHClanhxr2IlhdPCZlD5YDdcWVWVyNEmq1spyR5qPGOOqGvqUVh3tuhueKKiyESgnAUHHPO65jCq(9czES4wRexRLn68eYxZC)ZuVaHiYCTGyGqHls82yJwu(eaJZL3EvrYLxkh0Z0nQRwQOguQs55YHulg(mmZ3(EqIf6vKgg6LgbZAJ(l8Z6HwQmGxfhJW0LcMGKp0AGfI8A5Uxk3j5ZDpyjGq3xfxtA6wHgARR9AwM25t3YuozpnL)BNcslRaL3PiS0t(gP8L7oAzrzunWuh1Ka7oR(AGCNUNiNS4gmwzX(w6AuJKQD5d(7DY2VSN2zE)RYeiEPbK)kvYNElV3OPWLDndi8QAYOyp5vydRm5lVvBb3Q(6(rqA7wVLjUx7gVu2QNiWlOFU2Lgx430yXTJhaRmjiOy1hgwymmbVR9i03o1LlQ)2Op3OTrhp4O3p4eB0daoD6XIBf3(F(

View File

@@ -4,6 +4,12 @@ local channelNames = {}
local channelPasswords = {}
---@type string|nil
local err
---@type string
local chatFrameName = aura_env.config.chatFrameName or "Auto"
---@type string[]
local subscribedMessageGroups = {}
---@type string[]
local subscribedChannels = {}
---@param input string
---@param deliminer string
@@ -30,6 +36,18 @@ if err then
return
end
subscribedMessageGroups, err = StrSplit(aura_env.config.subscribedMessageGroups, ",")
if err then
print(string.format("Error splitting subscribed message groups: %s", err))
return
end
subscribedChannels, err = StrSplit(aura_env.config.subscribedChannels, ",")
if err then
print(string.format("Error splitting subscribed channels: %s", err))
return
end
aura_env.JoinChannels = function()
for i, channelName in ipairs(channelNames) do
channelName = strtrim(channelName)
@@ -40,3 +58,48 @@ aura_env.JoinChannels = function()
JoinPermanentChannel(channelName, password)
end
end
aura_env.FindOrCreateChatWindow = function()
for i = 1, NUM_CHAT_WINDOWS do
local name = GetChatWindowInfo(i)
if name == chatFrameName then
return _G["ChatFrame" .. i]
end
end
FCF_OpenNewWindow(chatFrameName)
for i = 1, NUM_CHAT_WINDOWS do
local name = GetChatWindowInfo(i)
if name == chatFrameName then
return _G["ChatFrame" .. i]
end
end
return nil
end
aura_env.ConfigureChatWindow = function()
local chatFrame = aura_env.FindOrCreateChatWindow()
if not chatFrame then
print(string.format("Chat window %s not found", chatFrameName))
return
end
--SetChatWindowName(chatFrame, chatFrameName)
print("Removing all message groups")
ChatFrame_RemoveAllMessageGroups(chatFrame)
print("Removing all channels")
ChatFrame_RemoveAllChannels(chatFrame)
print("Adding message groups")
for _, messageGroup in ipairs(subscribedMessageGroups) do
print(string.format("Adding message group: %s", messageGroup))
ChatFrame_AddMessageGroup(chatFrame, strtrim(messageGroup))
end
print("Adding channels")
for _, channel in ipairs(subscribedChannels) do
print(string.format("Adding channel: %s", channel))
ChatFrame_AddChannel(chatFrame, strtrim(channel))
end
end
aura_env.ConfigureChatWindow()