Creating renderingOptions object for FrameRenderer

Contains dpi, grid info, etc
This commit is contained in:
Vince 2012-09-08 15:34:13 +02:00
parent cc22a26933
commit bca16a3964
4 changed files with 18 additions and 11 deletions

View File

@ -1,14 +1,16 @@
(function () { (function () {
var ns = $.namespace("pskl.controller"); var ns = $.namespace("pskl.controller");
ns.AnimatedPreviewController = function (framesheet, container, dpi) { ns.AnimatedPreviewController = function (framesheet, container, dpi) {
this.dpi = dpi;
this.framesheet = framesheet; this.framesheet = framesheet;
this.container = container; this.container = container;
this.animIndex = 0; this.animIndex = 0;
this.fps = parseInt($("#preview-fps")[0].value, 10); this.fps = parseInt($("#preview-fps")[0].value, 10);
this.renderer = new pskl.rendering.FrameRenderer(this.container, this.dpi); var renderingOptions = {
"dpi": dpi
};
this.renderer = new pskl.rendering.FrameRenderer(this.container, renderingOptions);
}; };
ns.AnimatedPreviewController.prototype.init = function () { ns.AnimatedPreviewController.prototype.init = function () {

View File

@ -3,14 +3,19 @@
ns.DrawingController = function (frame, container, dpi) { ns.DrawingController = function (frame, container, dpi) {
this.dpi = dpi; this.dpi = dpi;
var renderingOptions = {
"dpi": dpi,
"displayGrid": true // Retrieve from localsotrage config
}
// Public // Public
this.frame = frame; this.frame = frame;
this.overlayFrame = pskl.model.Frame.createEmptyFromFrame(frame); // Type is frame this.overlayFrame = pskl.model.Frame.createEmptyFromFrame(frame); // Type is frame
// Private // Private
this.container = container; this.container = container;
this.renderer = new pskl.rendering.FrameRenderer(this.container, dpi, "drawing-canvas"); this.renderer = new pskl.rendering.FrameRenderer(this.container, renderingOptions, "drawing-canvas");
this.overlayRenderer = new pskl.rendering.FrameRenderer(this.container, dpi, "canvas-overlay"); this.overlayRenderer = new pskl.rendering.FrameRenderer(this.container, renderingOptions, "canvas-overlay");
//this.mainCanvas = this.createMainCanvas(); //this.mainCanvas = this.createMainCanvas();
//this.overlayCanvas = this.createOverlayCanvas(); //this.overlayCanvas = this.createOverlayCanvas();
this.renderer.init(this.frame); this.renderer.init(this.frame);

View File

@ -5,8 +5,6 @@
this.dpi = dpi; this.dpi = dpi;
this.framesheet = framesheet; this.framesheet = framesheet;
this.container = container; this.container = container;
//this.renderer = new pskl.rendering.FrameRenderer(this.container, dpi);
}; };
ns.PreviewFilmController.prototype.init = function() { ns.PreviewFilmController.prototype.init = function() {
@ -189,7 +187,8 @@
// TODO(vincz): Eventually optimize this part by not recreating a FrameRenderer. Note that the real optim // TODO(vincz): Eventually optimize this part by not recreating a FrameRenderer. Note that the real optim
// is to make this update function (#createPreviewTile) less aggressive. // is to make this update function (#createPreviewTile) less aggressive.
var currentFrameRenderer = new pskl.rendering.FrameRenderer(canvasContainer, this.dpi, "tile-view"); var renderingOptions = {"dpi": this.dpi };
var currentFrameRenderer = new pskl.rendering.FrameRenderer(canvasContainer, renderingOptions, "tile-view");
currentFrameRenderer.init(currentFrame); currentFrameRenderer.init(currentFrame);
previewTileRoot.appendChild(canvasContainer); previewTileRoot.appendChild(canvasContainer);

View File

@ -4,17 +4,18 @@
this.dpi = null; this.dpi = null;
this.canvas = null; this.canvas = null;
ns.FrameRenderer = function (container, dpi, className) { ns.FrameRenderer = function (container, renderingOptions, className) {
if(container == undefined) { if(container == undefined) {
throw "Bad FrameRenderer initialization. <container> undefined."; throw "Bad FrameRenderer initialization. <container> undefined.";
} }
this.container = container;
if(dpi == undefined || isNaN(dpi)) { if(renderingOptions == undefined || renderingOptions.dpi == undefined || isNaN(dpi)) {
throw "Bad FrameRenderer initialization. <dpi> not well defined."; throw "Bad FrameRenderer initialization. <dpi> not well defined.";
} }
this.container = container; this.displayGrid = !!renderingOptions.displayGrid;
this.dpi = dpi; this.dpi = renderingOptions.dpi;
this.className = className; this.className = className;
}; };