From 2f34a49483bfa313971503910b601e12eb8a81e8 Mon Sep 17 00:00:00 2001 From: Bala Clark Date: Sat, 3 Sep 2011 21:55:45 +0200 Subject: [PATCH] draw a specific page number --- lib/ComicBook.js | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/lib/ComicBook.js b/lib/ComicBook.js index 04dbe4a..1f98954 100755 --- a/lib/ComicBook.js +++ b/lib/ComicBook.js @@ -479,14 +479,24 @@ function ComicBook(id, srcs, opts) { // manually trigger the first load preload(i); }; + + ComicBook.prototype.pageLoaded = function (page_no) { + return (typeof loaded[page_no-1] !== "undefined"); + }; /** * Draw the current page in the canvas - * - * TODO: break this down into drawSinglePage() & drawDoublePage()? - * TODO: if the current browser doesn't have canvas support, use img tags */ - ComicBook.prototype.drawPage = function() { + ComicBook.prototype.drawPage = function(page_no) { + + // if a specific page is given try to render it, if not bail and wait for preload() to render it + if (typeof page_no === "number" && page_no < srcs.length) { + pointer = page_no-1; + if (!this.pageLoaded(page_no)) { + this.showControl("loadingIndicator"); + return; + } + } var zoom_scale; var offsetW = 0, offsetH = 0;