diff --git a/index.html b/index.html
index 0c9660b..3334d87 100644
--- a/index.html
+++ b/index.html
@@ -36,6 +36,7 @@
- F Fullscreen
- Space Next Picture
+ - P Previous Picture
- S Start or Reverse scrolling
- X Begin scrolling downward
- W Begin scrolling upward
diff --git a/sahli.coffee b/sahli.coffee
index a4cf8a0..477ed8a 100644
--- a/sahli.coffee
+++ b/sahli.coffee
@@ -146,6 +146,27 @@ class @Sahli
$('body').stop()
@loadinfopanel i
+ @prevpic = =>
+ viewbox = $('div#sahliviewer')
+ viewbox.children().remove()
+ $('#panel').empty()
+ @scroll_direction = 1
+ @scroll_speed = 5
+ filedata = @filedata
+ i = @currentpic-2
+ if i < 0
+ i = i + filedata.length
+ filedata[i].pic = $('' + filedata[i].file + '
')
+ viewbox.append filedata[i].pic
+ @loadpic filedata[i], filedata[i].pic
+ @currentpic = i + 1
+ if @currentpic > filedata.length - 1
+ @currentpic = 0
+ $('#panel').hide()
+ $('#outbox').show()
+ $('body').stop()
+ @loadinfopanel i
+
@togglefullscreen = ->
docElm = document.documentElement
if @fullscreen
@@ -315,6 +336,8 @@ class @Sahli
switch ev.which
when @keycode ' '
@nextpic()
+ when @keycode 'p'
+ @prevpic()
when @keycode 'f'
@togglefullscreen()
when @keycode 's'
diff --git a/sahli.js b/sahli.js
index 4dd5734..d3f2c48 100644
--- a/sahli.js
+++ b/sahli.js
@@ -1,4 +1,4 @@
-// Generated by CoffeeScript 1.9.0
+// Generated by CoffeeScript 1.9.3
/*
.___________________________________, ___
@@ -172,6 +172,31 @@ l__________/__________|___|______l__________j_____j
return Sahli.loadinfopanel(i);
};
+ Sahli.prevpic = function() {
+ var filedata, i, viewbox;
+ viewbox = $('div#sahliviewer');
+ viewbox.children().remove();
+ $('#panel').empty();
+ Sahli.scroll_direction = 1;
+ Sahli.scroll_speed = 5;
+ filedata = Sahli.filedata;
+ i = Sahli.currentpic - 2;
+ if (i < 0) {
+ i = i + filedata.length;
+ }
+ filedata[i].pic = $('' + filedata[i].file + '
');
+ viewbox.append(filedata[i].pic);
+ Sahli.loadpic(filedata[i], filedata[i].pic);
+ Sahli.currentpic = i + 1;
+ if (Sahli.currentpic > filedata.length - 1) {
+ Sahli.currentpic = 0;
+ }
+ $('#panel').hide();
+ $('#outbox').show();
+ $('body').stop();
+ return Sahli.loadinfopanel(i);
+ };
+
Sahli.togglefullscreen = function() {
var docElm;
docElm = document.documentElement;
@@ -281,7 +306,7 @@ l__________/__________|___|______l__________j_____j
};
Sahli.panelmode = function() {
- var canvs, ct, drawcol, level, newheight, newwidth, numcols, numpanels, outer, panelratio, panelslotheight, panelsperslot, pic, picdpercol, screenratio, wh, ww, x, _i, _j, _len, _len1, _results;
+ var canvs, ct, drawcol, j, k, len, len1, level, newheight, newwidth, numcols, numpanels, outer, panelratio, panelslotheight, panelsperslot, pic, picdpercol, results, screenratio, wh, ww, x;
$('#panel').toggle();
canvs = $('canvas');
$('.scrolly').width(this.origwidth);
@@ -309,9 +334,9 @@ l__________/__________|___|______l__________j_____j
drawcol = 1;
ct = 0;
outer.append(this.createpanel(1, newwidth - 6));
- _results = [];
- for (_i = 0, _len = canvs.length; _i < _len; _i++) {
- pic = canvs[_i];
+ results = [];
+ for (j = 0, len = canvs.length; j < len; j++) {
+ pic = canvs[j];
$("#column" + drawcol).append(pic);
level += 1;
ct += 1;
@@ -319,19 +344,19 @@ l__________/__________|___|______l__________j_____j
level = 0;
drawcol = drawcol + 1;
if (ct < numpanels) {
- _results.push(outer.append(this.createpanel(drawcol, newwidth - 6)));
+ results.push(outer.append(this.createpanel(drawcol, newwidth - 6)));
} else {
- _results.push(void 0);
+ results.push(void 0);
}
} else {
- _results.push(void 0);
+ results.push(void 0);
}
}
- return _results;
+ return results;
} else {
$('#outbox').show();
- for (_j = 0, _len1 = canvs.length; _j < _len1; _j++) {
- pic = canvs[_j];
+ for (k = 0, len1 = canvs.length; k < len1; k++) {
+ pic = canvs[k];
$('.scrolly').append(pic);
}
canvs.width(this.origwidth);
@@ -374,6 +399,8 @@ l__________/__________|___|______l__________j_____j
switch (ev.which) {
case _this.keycode(' '):
return _this.nextpic();
+ case _this.keycode('p'):
+ return _this.prevpic();
case _this.keycode('f'):
return _this.togglefullscreen();
case _this.keycode('s'):