Sha256: 6e81608c1dd5cda9a74c42e01cc355155010579f14b8b0a04d80c229212a34b1
Contents?: true
Size: 1.01 KB
Versions: 1
Compression:
Stored size: 1.01 KB
Contents
require 'osheet/style_set' require 'osheet/template_set' require 'osheet/worksheet' require 'osheet/xmlss_writer' module Osheet class Workbook include Associations hm :worksheets attr_reader :styles, :templates def initialize(&block) @title = nil @styles = StyleSet.new @templates = TemplateSet.new instance_eval(&block) if block_given? end def title(value=nil) !value.nil? ? @title = value : @title end def style(*selectors, &block); @styles << Style.new(*selectors, &block); end def template(element, name, &block); @templates << Template.new(element, name, &block); end def attributes { :title => @title } end def use(mixin) (mixin.styles || []).each{ |s| @styles << s } (mixin.templates || []).each{ |t| @templates << t } end def writer XmlssWriter::Base.new(:workbook => self) end [:to_data, :to_file].each do |meth| define_method(meth) {|*args| writer.send(meth, *args) } end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
osheet-0.4.0 | lib/osheet/workbook.rb |