Class: SimpleView::SimpleViewSmartXLS

Inherits:
SimpleViewBase show all
Defined in:
lib/simple_view/smartxls.rb

Constant Summary collapse

EXTENTION =
".smartxl.rb".freeze

Instance Attribute Summary

Attributes inherited from SimpleViewBase

#file_template, #template

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from SimpleViewBase

#clean_template_name_for_helper, find_view, #has_helper?, #helper_module_name, #initialize, #lookup_file_helper, #lookup_file_template, lookup_file_template, register, #render_with_helper, #set_helper, #template_content, #template_extension, template_extensions, #template_name, view, views

Methods inherited from Base

#directory_helpers, #directory_views

Constructor Details

This class inherits a constructor from SimpleView::SimpleViewBase

Class Method Details

.extensionObject



13
14
15
# File 'lib/simple_view/smartxls.rb', line 13

def self.extension
	EXTENTION
end

Instance Method Details

#do_rendering(rendable_object, options) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/simple_view/smartxls.rb', line 23

def do_rendering(rendable_object, options)
	filename = options.delete(:filename) || '<XLS>'
	line = options.delete(:line) || 1
	xls = WorkBook.new
	rendable_object.put_locals_objects((options.delete(:builder_name) || :xls).to_sym => xls)
	render_with_helper(rendable_object) do
		eval self.template_content, rendable_object.get_binding, filename, line
	end
	if options.key?(:target)
		xls.write(options[:target])
	end
end

#render(rendable_object, options = {}) ⇒ Object



19
20
21
# File 'lib/simple_view/smartxls.rb', line 19

def render(rendable_object, options = {})
    do_rendering(rendable_object, options)      
end