Sha256: 9f3426785b98960925a6c1b6fe2ea91f25b9cd2f315f2d55c5279d2d30215378

Contents?: true

Size: 757 Bytes

Versions: 2

Compression:

Stored size: 757 Bytes

Contents

# coding: utf-8

module Thinreports
  module Core::Shape

    class List::SectionFormat < Manager::Format
      config_reader :height
      config_reader relative_left: %w( translate x ),
                    relative_top: %w( translate y )
      config_reader :style

      # For compatible 0.8.x format API
      config_checker true, display: %w( enabled )

      def initialize(*)
        super
        initialize_items(attributes['items'])
      end

      private

      def initialize_items(item_schemas)
        item_schemas.each do |item_schema|
          id, type = item_schema.values_at 'id', 'type'
          next if id.empty?

          self.shapes[id.to_sym] = Core::Shape::Format(type).new(item_schema)
        end
      end
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
thinreports-0.9.1 lib/thinreports/core/shape/list/section_format.rb
thinreports-0.9.0 lib/thinreports/core/shape/list/section_format.rb