Sha256: 82b71d802153f21e7cfb556858c9828605613372964ca730e18fc67e4689752c

Contents?: true

Size: 940 Bytes

Versions: 1

Compression:

Stored size: 940 Bytes

Contents

require_relative 'target_element'
module OoxmlParser
  class Behavior
    attr_accessor :common_time_node, :attribute_name_list, :target

    def initialize(common_time_node = nil, attribute_name_list = [], target = nil)
      @common_time_node = common_time_node
      @attribute_name_list = attribute_name_list
      @target = target
    end

    def self.parse(behavior_node)
      behavior = Behavior.new
      behavior_node.xpath('*').each do |behavior_node_child|
        case behavior_node_child.name
        when 'cTn'
          behavior.common_time_node = CommonTiming.parse(behavior_node_child)
        when 'tgtEl'
          behavior.target = TargetElement.parse(behavior_node_child)
        when 'attrNameLst'
          behavior_node_child.xpath('p:attrName').each do |attribute_name_node|
            behavior.attribute_name_list << attribute_name_node.text
          end
        end
      end
      behavior
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ooxml_parser-0.1.2 lib/ooxml_parser/pptx_parser/pptx_data/presentation/slide/slide/timing/set_time_node/behavior/behavior.rb