feat: guda keybindings

This commit is contained in:
Salikh Gurgenidze
2025-11-20 12:26:42 +04:00
parent 429d0c8095
commit 5d8a972bb0
4 changed files with 60 additions and 34 deletions
+8
View File
@@ -0,0 +1,8 @@
<Bindings>
<Binding name="GUDA_TOGGLE_BAGS" header="GUDA">
Guda.Modules.BagFrame:Toggle()
</Binding>
<Binding name="GUDA_TOGGLE_BANK" header="GUDA">
Guda.Modules.BankFrame:Toggle()
</Binding>
</Bindings>
+2
View File
@@ -6,6 +6,8 @@
## SavedVariables: Guda_DB
## SavedVariablesPerCharacter: Guda_CharDB
Localization.lua
Core\Init.lua
Core\Database.lua
Core\Events.lua
+8
View File
@@ -0,0 +1,8 @@
-- Guda Localization
-- Keybinding localization
BINDING_HEADER_GUDA = "Guda"
BINDING_NAME_GUDA_TOGGLE_BAGS = "Toggle Bags"
BINDING_NAME_GUDA_TOGGLE_BANK = "Toggle Bank"
-- Additional localization strings can be added here
+42 -34
View File
@@ -1188,32 +1188,34 @@ end
-- Alternative approach: Completely replace the bag open functions
local function ReplaceBagOpenFunctions()
-- Store original functions
local originalOpenBag = OpenBag
local originalToggleBag = ToggleBag
-- Override OpenBag
function OpenBag(bagId)
if bagId and bagId >= 0 and bagId <= 4 then
-- For regular bags, open Guda Bag View
BagFrame:Toggle()
else
-- For other containers, use original function
if originalOpenBag then
originalOpenBag(bagId)
-- Override OpenBag (if it exists)
if OpenBag then
local originalOpenBag = OpenBag
function OpenBag(bagId)
if bagId and bagId >= 0 and bagId <= 4 then
-- For regular bags, open Guda Bag View
BagFrame:Toggle()
else
-- For other containers, use original function
if originalOpenBag then
originalOpenBag(bagId)
end
end
end
end
-- Override ToggleBag
function ToggleBag(bagId)
if bagId and bagId >= 0 and bagId <= 4 then
-- For regular bags, toggle Guda Bag View
BagFrame:Toggle()
else
-- For other containers, use original function
if originalToggleBag then
originalToggleBag(bagId)
-- Override ToggleBag (if it exists)
if ToggleBag then
local originalToggleBag = ToggleBag
function ToggleBag(bagId)
if bagId and bagId >= 0 and bagId <= 4 then
-- For regular bags, toggle Guda Bag View
BagFrame:Toggle()
else
-- For other containers, use original function
if originalToggleBag then
originalToggleBag(bagId)
end
end
end
end
@@ -1221,22 +1223,28 @@ end
-- Hook to default bag opening
local function HookDefaultBags()
-- Override ToggleBackpack
local originalToggleBackpack = ToggleBackpack
function ToggleBackpack()
BagFrame:Toggle()
-- Override ToggleBackpack (if it exists)
if ToggleBackpack then
local originalToggleBackpack = ToggleBackpack
function ToggleBackpack()
BagFrame:Toggle()
end
end
-- Override OpenAllBags
local originalOpenAllBags = OpenAllBags
function OpenAllBags()
Guda_BagFrame:Show()
-- Override OpenAllBags (if it exists)
if OpenAllBags then
local originalOpenAllBags = OpenAllBags
function OpenAllBags()
Guda_BagFrame:Show()
end
end
-- Override CloseAllBags
local originalCloseAllBags = CloseAllBags
function CloseAllBags()
Guda_BagFrame:Hide()
-- Override CloseAllBags (if it exists)
if CloseAllBags then
local originalCloseAllBags = CloseAllBags
function CloseAllBags()
Guda_BagFrame:Hide()
end
end
-- Hook individual bag opening functions (for bag slot buttons)