Module StaticGrid

Component to handle placing components by row and columns.

Grid can anchor your elements, get content size and other

Functions

add(self, item[, index[, shift_policy=SHIFT.RIGHT[, is_instant=false]]]) Add new item to the grid
clear(self) Clear grid nodes array.
get_all_pos(self) Return array of all node positions
get_borders(self) Return grid content borders
get_index(self, pos) Return index for grid pos
get_index_by_node(self, node) Return grid index by node
get_offset(self) Return StaticGrid offset, where StaticGrid content starts.
get_pos(self, index) Return pos for grid node index
get_size(self) Return grid content size
init(self, parent, element[, in_row=1]) Component init function
remove(self, index[, shift_policy=SHIFT.RIGHT[, is_instant=false]]) Remove the item from the grid.
set_anchor(self, anchor) Set grid anchor.
set_in_row(self, in_row) Set new in_row elements for grid
set_position_function(self, callback) Change set position function for grid nodes.

Tables

style Component style params.

Fields

anchor Item anchor [0..1]
border The size of item content
first_index The first index of node in grid
last_index The last index of node in grid
node_size Item size
nodes List of all grid nodes
on_add_item On item add callback(self, node, index)
on_change_items On item add, remove or change in_row callback(self, index|nil)
on_clear On grid clear callback(self)
on_remove_item On item remove callback(self, index)
on_update_positions On update item positions callback(self)
parent Parent gui node
pivot Item pivot [-0.5..0.5]


Functions

add(self, item[, index[, shift_policy=SHIFT.RIGHT[, is_instant=false]]])
Add new item to the grid

Parameters:

  • self StaticGrid StaticGrid
  • item node Gui node
  • index number The item position. By default add as last item (optional)
  • shift_policy number How shift nodes, if required. See const.SHIFT (default SHIFT.RIGHT)
  • is_instant boolean If true, update node positions instantly (default false)
clear(self)
Clear grid nodes array. GUI nodes will be not deleted! If you want to delete GUI nodes, use static_grid.nodes array before grid:clear

Parameters:

Returns:

    druid.static_grid Current grid instance
get_all_pos(self)
Return array of all node positions

Parameters:

Returns:

    vector3[] All grid node positions
get_borders(self)
Return grid content borders

Parameters:

Returns:

    vector3 The grid content borders
get_index(self, pos)
Return index for grid pos

Parameters:

  • self StaticGrid StaticGrid
  • pos vector3 The node position in the grid

Returns:

    number The node index
get_index_by_node(self, node)
Return grid index by node

Parameters:

  • self StaticGrid StaticGrid
  • node node The gui node in the grid

Returns:

    number The node index
get_offset(self)
Return StaticGrid offset, where StaticGrid content starts.

Parameters:

  • self StaticGrid StaticGrid The StaticGrid instance

Returns:

    vector3 The StaticGrid offset
get_pos(self, index)
Return pos for grid node index

Parameters:

  • self StaticGrid StaticGrid
  • index number The grid element index

Returns:

    vector3 Node position
get_size(self)
Return grid content size

Parameters:

Returns:

    vector3 The grid content size
init(self, parent, element[, in_row=1])
Component init function

Parameters:

  • self StaticGrid StaticGrid
  • parent node The gui node parent, where items will be placed
  • element node Element prefab. Need to get it size
  • in_row number How many nodes in row can be placed (default 1)
remove(self, index[, shift_policy=SHIFT.RIGHT[, is_instant=false]])
Remove the item from the grid. Note that gui node will be not deleted

Parameters:

  • self StaticGrid StaticGrid
  • index number The grid node index to remove
  • shift_policy number How shift nodes, if required. See const.SHIFT (default SHIFT.RIGHT)
  • is_instant boolean If true, update node positions instantly (default false)

Returns:

    Node The deleted gui node from grid
set_anchor(self, anchor)
Set grid anchor. Default anchor is equal to anchor of grid parent node

Parameters:

  • self StaticGrid StaticGrid
  • anchor vector3 Anchor
set_in_row(self, in_row)
Set new in_row elements for grid

Parameters:

  • self StaticGrid StaticGrid
  • in_row number The new in_row value

Returns:

    druid.static_grid Current grid instance
set_position_function(self, callback)
Change set position function for grid nodes. It will call on update poses on grid elements. Default: gui.set_position

Parameters:

  • self StaticGrid StaticGrid
  • callback function Function on node set position

Returns:

    druid.static_grid Current grid instance

Tables

style
Component style params. You can override this component styles params in druid styles table or create your own style

Fields:

  • IS_DYNAMIC_NODE_POSES bool If true, always center grid content as grid pivot sets (default false)
  • IS_ALIGN_LAST_ROW bool If true, always align last row of the grid as grid pivot sets (default false)

Fields

anchor
Item anchor [0..1]
  • anchor vector3
border
The size of item content
  • border vector4
first_index
The first index of node in grid
  • first_index number
last_index
The last index of node in grid
  • last_index number
node_size
Item size
  • node_size vector3
nodes
List of all grid nodes
  • nodes node[]
on_add_item
On item add callback(self, node, index)
on_change_items
On item add, remove or change in_row callback(self, index|nil)
on_clear
On grid clear callback(self)
on_remove_item
On item remove callback(self, index)
on_update_positions
On update item positions callback(self)
parent
Parent gui node
  • parent node
pivot
Item pivot [-0.5..0.5]
  • pivot vector3
generated by LDoc TESTING Last updated 2015-01-01 12:00:00