Sha256: 644fd073b1a5ac0123b8c69ff444e8ed2b6b0f368b79219103cade40f3b5d2d9
Contents?: true
Size: 1.07 KB
Versions: 40
Compression:
Stored size: 1.07 KB
Contents
# frozen_string_literal: true require_relative 'old_docx_group_properties' require_relative 'old_docx_group_element' module OoxmlParser # Fallback DOCX group data class OldDocxGroup < OOXMLDocumentObject attr_accessor :elements, :properties def initialize(properties = OldDocxGroupProperties.new, parent: nil) @properties = properties @elements = [] super(parent: parent) end # Parse OldDocxGroup object # @param node [Nokogiri::XML:Element] node to parse # @return [OldDocxGroup] result of parsing def parse(node) node.xpath('*').each do |node_child| case node_child.name when 'shape' element = OldDocxGroupElement.new(:shape) element.object = OldDocxShape.new(parent: self).parse(node_child) @elements << element when 'wrap' @properties.wrap = node_child.attribute('type').value.to_sym unless node_child.attribute('type').nil? when 'group' @elements << OldDocxGroup.new(parent: self).parse(node_child) end end self end end end
Version data entries
40 entries across 40 versions & 1 rubygems