class Glimmer::LibUI::ControlProxy::GridProxy

Constants

APPEND_PROPERTIES

Public Instance Methods

children() click to toggle source
# File lib/glimmer/libui/control_proxy/grid_proxy.rb, line 54
def children
  @children ||= []
end
post_initialize_child(child) click to toggle source
# File lib/glimmer/libui/control_proxy/grid_proxy.rb, line 30
def post_initialize_child(child)
  child.left = 0 if child.left.nil?
  child.top = 0 if child.top.nil?
  child.xspan = 1 if child.xspan.nil?
  child.yspan = 1 if child.yspan.nil?
  child.hexpand = false if child.hexpand.nil?
  child.halign = 0 if child.halign.nil?
  child.vexpand = false if child.vexpand.nil?
  child.valign = 0 if child.valign.nil?
  ::LibUI.grid_append(
    @libui,
    child.libui,
    child.left,
    child.top,
    child.xspan,
    child.yspan,
    Glimmer::LibUI.boolean_to_integer(child.hexpand),
    Glimmer::LibUI.enum_symbol_to_value(:align, child.halign),
    Glimmer::LibUI.boolean_to_integer(child.vexpand),
    Glimmer::LibUI.enum_symbol_to_value(:align, child.valign)
  )
  children << child
end

Private Instance Methods

build_control() click to toggle source

Note that there is no proper destroy_child(child) method for GridProxy due to libui not offering any API for it (no grid_delete)

# File lib/glimmer/libui/control_proxy/grid_proxy.rb, line 62
def build_control
  super.tap do
    self.padded = true
  end
end