NAME
Jifty::Plugin::Chart::Renderer - Base class for chart rendering classes
SYNOPSIS
In your config.yml:
Plugins:
- Chart:
DefaultRenderer: MyApp::Renderer
In lib/MyApp/Renderer.pm:
package MyApp::Renderer;
use base qw/ Jifty::Plugin::Chart::Renderer /;
sub init {
my $self = shift;
# Handle any required initialization, like required CSS, JS, etc.
}
sub render {
my $self = shift;
my %args = @_;
# Output your chart
Jifty->web->out( #{ Output your chart here... } );
# You could also return it as a string...
return;
}
METHODS
Your renderer implementation must subclass this package and implement the following methods:
new
This is the constructor. Don't override this directly. Instead implement "init".
init
$renderer->init();
This is called by new
immediately after constructing the object. It is passed a param hash from the config file. Subclasses should implement this method to do any required initialization such as letting Jifty know about required CSS files, JS files, etc.
render
Jifty->web->out($renderer->render(%args));
See Jifty::Plugin::Chart::Web for the arguments. It must (at least) accept the arguments given to the "chart" in Jifty::Plugin::Chart::Web method.
The render
method may either return it's output or print it out using Jifty::Web::out.
SEE ALSO
Jifty::Plugin::Chart::Web, Jifty::Plugin::Chart::Renderer::Chart
AUTHOR
Andrew Sterling Hanenkamp <andrew.hanenkamp@boomer.com>
COPYRIGHT AND LICENSE
Copyright 2007 Boomer Consulting, Inc.
This is free software and may be modified and distributed under the same terms as Perl itself.