Sha256: 6047af33f497555fe70bdba14988cae9e0e0bae1098740469bd63854649837fa

Contents?: true

Size: 729 Bytes

Versions: 1

Compression:

Stored size: 729 Bytes

Contents

require 'glimmer/swt/grid_layout_proxy'
require 'glimmer/swt/widget_proxy'

module Glimmer
  module SWT
    class CompositeProxy < WidgetProxy
      attr_reader :layout
      
      def initialize(parent, args)
        super(parent, args)
        @layout = GridLayoutProxy.new(self, [])
      end
      
      def redraw
        super()
        @children.each do |child|
          add_child(child) # TODO think of impact of this on performance, and of other alternatives
        end
      end
      
      def dom
        div_id = id
        div_style = css
        div_class = "#{name} grid-layout"
        @dom ||= html {
          div(id: div_id, class: div_class, style: div_style)
        }.to_s
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
glimmer-dsl-opal-0.1.0 lib/glimmer/swt/composite_proxy.rb