Sha256: 59710d7c8e93d0ce1f53565c1007dd550c51711427464d87f903f0227fa570fb
Contents?: true
Size: 1.24 KB
Versions: 9
Compression:
Stored size: 1.24 KB
Contents
# frozen_string_literal: true module OoxmlParser # Class for parsing `formPr` tag class FormProperties < OOXMLDocumentObject # @return [String] field key attr_reader :key # @return [String] text of tooltip attr_reader :help_text # @return [True, False] specifies if field is required attr_reader :required # @return [Shade] shade of field attr_reader :shade # @return [BordersProperties] border of field attr_reader :border def initialize(parent: nil) @required = false super end # Parse FormProperties object # @param node [Nokogiri::XML:Element] node to parse # @return [FormProperties] result of parsing def parse(node) node.attributes.each do |key, value| case key when 'key' @key = value.value when 'helpText' @help_text = value.value when 'required' @required = boolean_attribute_value(value) end end node.xpath('*').each do |node_child| case node_child.name when 'shd' @shade = Shade.new(parent: self).parse(node_child) when 'border' @border = BordersProperties.new(parent: self).parse(node_child) end end self end end end
Version data entries
9 entries across 9 versions & 1 rubygems