class Axlsx::StrData
This specifies the last string data used for a chart. (e.g. strLit and strCache)
This class is extended for NumData to include the formatCode attribute required for numLit and numCache
Public Class Methods
new(options={})
click to toggle source
creates a new StrVal
object @option options [Array] :data @option options [String] :tag_name
# File lib/axlsx/drawing/str_data.rb, line 12 def initialize(options={}) @tag_prefix = :str @type = StrVal @pt = SimpleTypedList.new(@type) parse_options options end
Public Instance Methods
data=(values=[])
click to toggle source
Creates the val objects for this data set. I am not overly confident this is going to play nicely with time and data types. @param [Array] values An array of cells or values.
# File lib/axlsx/drawing/str_data.rb, line 21 def data=(values=[]) @tag_name = values.first.is_a?(Cell) ? :strCache : :strLit values.each do |value| v = value.is_a?(Cell) ? value.value : value @pt << @type.new(:v => v) end end
to_xml_string(str = "")
click to toggle source
serialize the object
# File lib/axlsx/drawing/str_data.rb, line 30 def to_xml_string(str = "") str << ('<c:' << @tag_name.to_s << '>') str << ('<c:ptCount val="' << @pt.size.to_s << '"/>') @pt.each_with_index do |value, index| value.to_xml_string index, str end str << ('</c:' << @tag_name.to_s << '>') end