Sha256: 3aca5c28625a755939a7e5f24b50aa007061648e9f5166bb869ac4be5e10ad53
Contents?: true
Size: 1.63 KB
Versions: 11
Compression:
Stored size: 1.63 KB
Contents
module Axlsx # A simple, self serializing class for storing TextRuns class RichText < SimpleTypedList # creates a new RichText collection # @param [String] text -optional The text to use in creating the first RichTextRun # @param [Object] options -optional The options to use in creating the first RichTextRun # @yield [RichText] self def initialize(text = nil, options={}) super(RichTextRun) add_run(text, options) unless text.nil? yield self if block_given? end # The cell that owns this RichText collection attr_reader :cell # Assign the cell for this RichText collection # @param [Cell] cell The cell which all RichTextRuns in the collection will belong to def cell=(cell) @cell = cell each { |run| run.cell = cell } end # Calculates the longest autowidth of the RichTextRuns in this collection # @return [Number] def autowidth widtharray = [0] # Are arrays the best way of solving this problem? each { |run| run.autowidth(widtharray) } widtharray.max end # Creates and adds a RichTextRun to this collectino # @param [String] text The text to use in creating a new RichTextRun # @param [Object] options The options to use in creating the new RichTextRun def add_run(text, options={}) self << RichTextRun.new(text, options) end # The RichTextRuns we own # @return [RichText] def runs self end # renders the RichTextRuns in this collection # @param [String] str # @return [String] def to_xml_string(str='') each{ |run| run.to_xml_string(str) } str end end end
Version data entries
11 entries across 11 versions & 3 rubygems