Method: Worksheet#panes_record

Defined in:
lib/surpass/worksheet.rb

#panes_recordObject



502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
# File 'lib/surpass/worksheet.rb', line 502

def panes_record
  return '' if @vert_split_pos.nil? && @horz_split_pos.nil?
  @vert_split_pos = 0 if @vert_split_pos.nil?
  @horz_split_pos = 0 if @horz_split_pos.nil?
  if @panes_frozen
    @vert_split_first_visible = @vert_split_pos if @vert_split_first_visible.nil?
    @horz_split_first_visible = @horz_split_pos if @horz_split_first_visible.nil?
  else
    @vert_split_first_visible = 0 if @vert_split_first_visible.nil?
    @horz_split_first_visible = 0 if @horz_split_first_visible.nil?
    # inspired by pyXLWriter
    @horz_split_pos = 20 * @horz_split_pos + 255
    @vert_split_pos = 113.879 * @vert_split_pos + 390
  end
  @split_active_pane = 0 if @vert_split_pos > 0 and @horz_split_pos > 0
  @split_active_pane = 1 if @vert_split_pos < 0 and @horz_split_pos == 0
  @split_active_pane = 2 if @vert_split_pos == 0 and @horz_split_pos > 0
  @split_active_pane = 3

  args = [@vert_split_pos, @horz_split_pos, @horz_split_first_visible, @vert_split_first_visible, @split_active_pane]
  PanesRecord.new(*args).to_biff
end