Class: Thinreports::BasicReport::Generator::PDF::Drawer::Page

Inherits:
Base
  • Object
show all
Defined in:
lib/thinreports/basic_report/generator/pdf/drawer/page.rb

Direct Known Subclasses

ListSection

Instance Method Summary collapse

Constructor Details

#initialize(pdf, format) ⇒ Page

Returns a new instance of Page.



10
11
12
13
# File 'lib/thinreports/basic_report/generator/pdf/drawer/page.rb', line 10

def initialize(pdf, format)
  super
  @lists = {}
end

Instance Method Details

#draw(page) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/thinreports/basic_report/generator/pdf/drawer/page.rb', line 16

def draw(page)
  manager = page.manager

  manager.format.shapes.each_key do |id|
    shape = manager.final_shape(id)
    next unless shape

    shape = shape.internal

    if shape.type_of?(Core::Shape::PageNumber::TYPE_NAME)
      # Do not draw pageno if is not for Report
      draw_pageno_shape(shape, page) if page.count? && shape.for_report?
    else
      draw_shape(shape)
    end
  end
end