This commit is contained in:
Insality
2025-02-08 00:28:20 +02:00
parent 96ce3eee95
commit 7a6f529c82
7 changed files with 27 additions and 14 deletions

View File

@@ -528,11 +528,12 @@ function M:bind_grid(grid)
end
self._grid_on_change = grid.on_change_items
self._grid_on_change_callback = self._grid_on_change:subscribe(function()
self._grid_on_change_callback = function()
local size = grid:get_size()
local offset = grid:get_offset()
self:set_size(size, offset)
end)
end
self._grid_on_change:subscribe(self._grid_on_change_callback)
self:set_size(grid:get_size(), grid:get_offset())
return self

View File

@@ -201,7 +201,7 @@ end
--- Return grid index by node
---@param node node The gui node in the grid
---@return number The node index
---@return number|nil index The node index
function M:get_index_by_node(node)
for index, grid_node in pairs(self.nodes) do
if node == grid_node then
@@ -356,7 +356,7 @@ end
--- Return grid content borders
---@return vector3 The grid content borders
---@return vector4 The grid content borders
function M:get_borders()
return self.border
end
@@ -463,10 +463,12 @@ end
--- Sort grid nodes by custom comparator function
---@param comparator function The comparator function. (a, b) -> boolean
---@return druid.grid Current grid instance
---@return druid.grid self Current grid instance
function M:sort_nodes(comparator)
table.sort(self.nodes, comparator)
self:_update(true)
return self
end