class Glimmer::SWT::LayoutDataProxy
Attributes
args[R]
grab_excess_horizontal_space[R]
grab_excess_vertical_space[R]
height[R]
height_hint[R]
horizontal_alignment[R]
horizontal_indent[R]
horizontal_span[R]
parent[R]
vertical_alignment[R]
vertical_indent[R]
vertical_span[R]
width[R]
width_hint[R]
Public Class Methods
new(parent, args)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 23 def initialize(parent, args) @parent = parent @args = args self.horizontal_alignment = @args[0] if @args[0] self.vertical_alignment = @args[1] if @args[1] self.grab_excess_horizontal_space = @args[2] if @args[2] self.grab_excess_vertical_space = @args[3] if @args[3] # TODO spread args correctly as per SWT LayoutData API # TODO avoid using reapply # reapply end
Public Instance Methods
grab_excess_horizontal_space=(grab_excess_horizontal_space)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 92 def grab_excess_horizontal_space=(grab_excess_horizontal_space) @grab_excess_horizontal_space = grab_excess_horizontal_space @parent.dom_element.css('justify-self', @horizontal_alignment) if @grab_excess_horizontal_space && @horizontal_alignment != 'fill' && width_hint.nil? @parent.parent.dom_element.css('justify-content', 'stretch') if @grab_excess_horizontal_space # reapply end
grab_excess_vertical_space=(grab_excess_vertical_space)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 99 def grab_excess_vertical_space=(grab_excess_vertical_space) @grab_excess_vertical_space = grab_excess_vertical_space @parent.dom_element.css('height', "100%") if @grab_excess_vertical_space && @vertical_alignment == 'fill' && height_hint.nil? # reapply end
height_hint=(height_hint)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 42 def height_hint=(height_hint) @height_hint = height_hint @parent.dom_element.css('height', "#{@height_hint}px") # reapply end
Also aliased as: height=
horizontal_alignment=(horizontal_alignment)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 49 def horizontal_alignment=(horizontal_alignment) @horizontal_alignment = horizontal_alignment return if @horizontal_alignment.nil? if @horizontal_alignment != 'fill' @parent.dom_element.css('text-align', @horizontal_alignment.to_s) @parent.dom_element.css('place-self', @horizontal_alignment.to_s) @parent.dom_element.css('margin-left', 'auto') if ['right', 'center'].include?(@horizontal_alignment.to_s) @parent.dom_element.css('margin-right', 'auto') if ['left', 'center'].include?(@horizontal_alignment.to_s) end # TODO # reapply end
horizontal_indent=(value)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 80 def horizontal_indent=(value) @horizontal_indent = value @parent.dom_element.css('padding-left', @horizontal_indent) # reapply end
horizontal_span=(value)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 68 def horizontal_span=(value) @horizontal_span = value @parent.dom_element.css('grid-column-start', "span #{@horizontal_span}") # reapply end
reapply()
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 105 def reapply # TODO remove reapply method # @parent.css = <<~CSS # CSS end
vertical_alignment=(vertical_alignment)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 62 def vertical_alignment=(vertical_alignment) @vertical_alignment = vertical_alignment # TODO # reapply end
vertical_indent=(value)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 86 def vertical_indent=(value) @vertical_indent = value @parent.dom_element.css('padding-top', @vertical_indent) # reapply end
vertical_span=(value)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 74 def vertical_span=(value) @vertical_span = value @parent.dom_element.css('grid-row-start', "span #{@vertical_span}") # reapply end
width_hint=(width_hint)
click to toggle source
# File lib/glimmer/swt/layout_data_proxy.rb, line 35 def width_hint=(width_hint) @width_hint = width_hint @parent.dom_element.css('width', "#{@width_hint}px") # reapply end
Also aliased as: width=