blob: ec920ab3729dc31274bf664c147d8b062307c03f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
# frozen_string_literal: true
module Axlsx
# A PatternFill is the pattern and solid fill styling for a cell.
# @note The recommended way to manage styles is with Styles#add_style
# @see Style#add_style
class PatternFill
include Axlsx::OptionsParser
# Creates a new PatternFill Object
# @option options [Symbol] patternType
# @option options [Color] fgColor
# @option options [Color] bgColor
def initialize(options = {})
@patternType = :none
parse_options options
end
# The color to use for the the background in solid fills.
# @return [Color]
attr_reader :fgColor
# The color to use for the background of the fill when the type is not solid.
# @return [Color]
attr_reader :bgColor
# The pattern type to use
# @note
# patternType must be one of
# :none
# :solid
# :mediumGray
# :darkGray
# :lightGray
# :darkHorizontal
# :darkVertical
# :darkDown
# :darkUp
# :darkGrid
# :darkTrellis
# :lightHorizontal
# :lightVertical
# :lightDown
# :lightUp
# :lightGrid
# :lightTrellis
# :gray125
# :gray0625
# @see Office Open XML Part 1 18.18.55
attr_reader :patternType
# @see fgColor
def fgColor=(v) DataTypeValidator.validate "PatternFill.fgColor", Color, v; @fgColor = v end
# @see bgColor
def bgColor=(v) DataTypeValidator.validate "PatternFill.bgColor", Color, v; @bgColor = v end
# @see patternType
def patternType=(v) Axlsx.validate_pattern_type v; @patternType = v end
# Serializes the object
# @param [String] str
# @return [String]
def to_xml_string(str = +'')
str << '<patternFill patternType="' << patternType.to_s << '">'
if fgColor.is_a?(Color)
fgColor.to_xml_string str, "fgColor"
end
if bgColor.is_a?(Color)
bgColor.to_xml_string str, "bgColor"
end
str << '</patternFill>'
end
end
end
|