-/*
- PlotKit Canvas
- ==============
-
- Provides HTML Canvas Renderer. This is supported under:
-
- - Safari 2.0
- - Mozilla Firefox 1.5
- - Opera 9.0 preview 2
- - IE 6 (via VML Emulation)
-
- It uses DIVs for labels.
-
- Copyright
- ---------
- Copyright 2005,2006 (c) Alastair Tse <alastair^liquidx.net>
- For use under the BSD license. <http://www.liquidx.net/plotkit>
-
-*/
-// --------------------------------------------------------------------
-// Check required components
-// --------------------------------------------------------------------
-
-try {
- if ((typeof(PlotKit.Base) == 'undefined') ||
- (typeof(PlotKit.Layout) == 'undefined'))
- {
- throw "";
- }
-}
-catch (e) {
- throw "PlotKit.Layout depends on MochiKit.{Base,Color,DOM,Format} and PlotKit.{Base,Layout}"
-}
-
-
-// ------------------------------------------------------------------------
-// Defines the renderer class
-// ------------------------------------------------------------------------
-
-if (typeof(PlotKit.CanvasRenderer) == 'undefined') {
- PlotKit.CanvasRenderer = {};
-}
-
-PlotKit.CanvasRenderer.NAME = "PlotKit.CanvasRenderer";
-PlotKit.CanvasRenderer.VERSION = PlotKit.VERSION;
-
-PlotKit.CanvasRenderer.__repr__ = function() {
- return "[" + this.NAME + " " + this.VERSION + "]";
-};
-
-PlotKit.CanvasRenderer.toString = function() {
- return this.__repr__();
-}
-
PlotKit.CanvasRenderer = function(element, layout, options) {
if (arguments.length > 0)
this.__init__(element, layout, options);
// default options
this.options = {
- "drawBackground": true,
- "backgroundColor": Color.whiteColor(),
- "colorScheme": PlotKit.Base.palette(PlotKit.Base.baseColors()[0]),
- "strokeColor": Color.whiteColor(),
- "strokeColorTransform": "asStrokeColor",
"strokeWidth": 0.5,
- "shouldFill": true,
- "shouldStroke": true,
"drawXAxis": true,
"drawYAxis": true,
"axisLineColor": Color.blackColor(),
"axisLabelColor": Color.blackColor(),
"axisLabelFont": "Arial",
"axisLabelFontSize": 9,
- "axisLabelWidth": 50,
- "pieRadius": 0.4,
- "enableEvents": true
+ "axisLabelWidth": 50,
};
MochiKit.Base.update(this.options, options ? options : {});
// internal state
this.xlabels = new Array();
this.ylabels = new Array();
- this.isFirstRender = true;
this.area = {
x: this.options.yAxisLabelWidth + 2 * this.options.axisTickSize,
var context = this.element.getContext("2d");
}
catch (e) {
- this.isFirstRender = false;
this.clearDelay = MochiKit.Async.wait(this.IEDelay);
this.clearDelay.addCallback(bind(this.clear, this));
return;
}
return true;
};
-
-// Namespace Iniitialisation
-
-PlotKit.Canvas = {}
-PlotKit.Canvas.CanvasRenderer = PlotKit.CanvasRenderer;
-
-PlotKit.Canvas.EXPORT = [
- "CanvasRenderer"
-];
-
-PlotKit.Canvas.EXPORT_OK = [
- "CanvasRenderer"
-];
-
-PlotKit.Canvas.__new__ = function() {
- var m = MochiKit.Base;
-
- m.nameFunctions(this);
-
- this.EXPORT_TAGS = {
- ":common": this.EXPORT,
- ":all": m.concat(this.EXPORT, this.EXPORT_OK)
- };
-};
-
-PlotKit.Canvas.__new__();
-MochiKit.Base._exportSymbols(this, PlotKit.Canvas);
-