Class: Axlsx::Selection
- Inherits:
-
Object
- Object
- Axlsx::Selection
- Defined in:
- lib/axlsx/workbook/worksheet/selection.rb
Overview
The recommended way to manage the selection pane options is via SheetView#add_selection
Selection options for worksheet panes.
Instance Attribute Summary collapse
-
#active_cell ⇒ String
Active Cell Location Location of the active cell.
-
#active_cell_id ⇒ Integer
Active Cell Index 0-based index of the range reference (in the array of references listed in sqref) containing the active cell.
-
#pane ⇒ Symbol
Pane The pane to which this selection belongs.
-
#sqref ⇒ String
Sequence of References Range of the selection.
Instance Method Summary collapse
-
#initialize(options = {}) ⇒ Selection
constructor
Creates a new Selection object.
-
#to_xml_string(str = '') ⇒ String
Serializes the data validation.
Constructor Details
#initialize(options = {}) ⇒ Selection
Creates a new Axlsx::Selection object
70 71 72 73 74 75 76 77 78 |
# File 'lib/axlsx/workbook/worksheet/selection.rb', line 70 def initialize(={}) #defaults @active_cell = @active_cell_id = @pane = @sqref = nil # write options to instance variables .each do |o| self.send("#{o[0]}=", o[1]) if self.respond_to? "#{o[0]}=" end end |
Instance Attribute Details
#active_cell ⇒ String
Active Cell Location Location of the active cell. default nil
14 15 16 |
# File 'lib/axlsx/workbook/worksheet/selection.rb', line 14 def active_cell @active_cell end |
#active_cell_id ⇒ Integer
Active Cell Index 0-based index of the range reference (in the array of references listed in sqref) containing the active cell. Only used when the selection in sqref is not contiguous. Therefore, this value needs to be aware of the order in which the range references are written in sqref. When this value is out of range then activeCell can be used. default nil
26 27 28 |
# File 'lib/axlsx/workbook/worksheet/selection.rb', line 26 def active_cell_id @active_cell_id end |
#pane ⇒ Symbol
Pane The pane to which this selection belongs. Options are
- bottom_left: Bottom left pane, when both vertical and horizontal splits are applied. This value is also used when only a horizontal split has been applied, dividing the pane into upper and lower regions. In that case, this value specifies the bottom pane.
- bottom_right: Bottom right pane, when both vertical and horizontal splits are applied.
- top_left: Top left pane, when both vertical and horizontal splits are applied. This value is also used when only a horizontal split has been applied, dividing the pane into upper and lower regions. In that case, this value specifies the top pane. This value is also used when only a vertical split has been applied, dividing the pane into right and left regions. In that case, this value specifies the left pane
- top_right: Top right pane, when both vertical and horizontal splits are applied. This value is also used when only a vertical split has been applied, dividing the pane into right and left regions. In that case, this value specifies the right pane. default nil
54 55 56 |
# File 'lib/axlsx/workbook/worksheet/selection.rb', line 54 def pane @pane end |
#sqref ⇒ String
Sequence of References Range of the selection. Can be non-contiguous set of ranges. default nil
62 63 64 |
# File 'lib/axlsx/workbook/worksheet/selection.rb', line 62 def sqref @sqref end |
Instance Method Details
#to_xml_string(str = '') ⇒ String
Serializes the data validation
104 105 106 107 108 109 |
# File 'lib/axlsx/workbook/worksheet/selection.rb', line 104 def to_xml_string(str = '') str << '<selection ' str << instance_values.map { |key, value| '' << key.gsub(/_(.)/){ $1.upcase } << %{="#{[:pane].include?(key.to_sym) ? value.to_s.gsub(/_(.)/){ $1.upcase } : value}"} unless value.nil? }.join(' ') str << '/>' end |