mirror of
https://github.com/OTCv8/otclientv8.git
synced 2025-10-20 06:33:26 +02:00
Version 2.2 - retro layout + bug fixes
This commit is contained in:
40
modules/game_buttons/buttons.lua
Normal file
40
modules/game_buttons/buttons.lua
Normal file
@@ -0,0 +1,40 @@
|
||||
buttonsWindow = nil
|
||||
contentsPanel = nil
|
||||
|
||||
function init()
|
||||
buttonsWindow = g_ui.loadUI('buttons', modules.game_interface.getRightPanel())
|
||||
buttonsWindow:disableResize()
|
||||
buttonsWindow:setup()
|
||||
contentsPanel = buttonsWindow.contentsPanel
|
||||
if not buttonsWindow.forceOpen or not contentsPanel.buttons then
|
||||
buttonsWindow:close()
|
||||
end
|
||||
end
|
||||
|
||||
function terminate()
|
||||
buttonsWindow:destroy()
|
||||
end
|
||||
|
||||
function takeButtons(buttons)
|
||||
if not buttonsWindow.forceOpen or not contentsPanel.buttons then return end
|
||||
for i, button in ipairs(buttons) do
|
||||
takeButton(button, true)
|
||||
end
|
||||
updateOrder()
|
||||
end
|
||||
|
||||
function takeButton(button, dontUpdateOrder)
|
||||
if not buttonsWindow.forceOpen or not contentsPanel.buttons then return end
|
||||
button:setParent(contentsPanel.buttons)
|
||||
if not dontUpdateOrder then
|
||||
updateOrder()
|
||||
end
|
||||
end
|
||||
|
||||
function updateOrder()
|
||||
local children = contentsPanel.buttons:getChildren()
|
||||
table.sort(children, function(a, b)
|
||||
return (a.index or 1000) < (b.index or 1000)
|
||||
end)
|
||||
contentsPanel.buttons:reorderChildren(children)
|
||||
end
|
Reference in New Issue
Block a user