Sha256: f31b937afa0b58e38f4a329455ebb1b91f4cf7986d0eb6675681fff8e24acfed

Contents?: true

Size: 722 Bytes

Versions: 5

Compression:

Stored size: 722 Bytes

Contents

require 'omf-web/widget/abstract_widget'

module OMF::Web::Widget::Layout

  # Implements a layout which displays contained widgets in a single columns.
  #
  class OneColumnLayout < OMF::Web::Widget::AbstractWidget

    def initialize(opts)
      super opts
      @widgets = (opts[:widgets] || []).map {|w| OMF::Web::Widget.create_widget(w)}
    end

    def content()
      OMF::Web::Theme.require 'one_column_renderer'
      OMF::Web::Theme::OneColumnRenderer.new(@widgets, @opts)
    end

    def collect_data_sources(ds_set)
      @widgets.each {|w| w.collect_data_sources(ds_set) }
      ds_set
    end

    def name
      @opts[:name] || @opts[:title]
    end

    def layout?
      return true
    end

  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
omf_web-1.2.9 lib/omf-web/widget/layout/one_column_layout.rb
omf_web-1.2.8 lib/omf-web/widget/layout/one_column_layout.rb
omf_web-1.2.7 lib/omf-web/widget/layout/one_column_layout.rb
omf_web-1.2.6 lib/omf-web/widget/layout/one_column_layout.rb
omf_web-1.2.5 lib/omf-web/widget/layout/one_column_layout.rb