Sha256: d423b3aa9f9a5f0bc0bc3228049b6da39c631303d26b652749d10062055b6b97

Contents?: true

Size: 909 Bytes

Versions: 2

Compression:

Stored size: 909 Bytes

Contents

module SimpleView

	class SimpleViewSmartXLS < SimpleViewBase
		require 'java'
		
		import com.smartxls.ChartFormat;
		import com.smartxls.ChartShape;
		import com.smartxls.WorkBook;
		import java.awt.Color;
		
		EXTENTION = ".smartxl.rb".freeze unless defined?(EXTENTION)

		def self.extension
			EXTENTION
		end

		SimpleViewBase.register(self)

		def render(rendable_object, options = {})
      do_rendering(rendable_object, options)      
		end
		
		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

	end
	
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
simple_view-0.0.2 lib/simple_view/smartxls.rb
simple_view-0.0.1 lib/simple_view/smartxls.rb