added the full/ribbon mode toggle to layout.html...

Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
Alex A. Naanou 2013-02-12 04:14:48 +04:00
parent eed633a02a
commit f9c9196c86

View File

@ -8,27 +8,70 @@ var NAVIGATE_RELATIVE_TO_VISIBLE = false
var USE_PAGE_ALIGN = true var USE_PAGE_ALIGN = true
var PAGES_IN_RIBBON = 4
/********************************************************** layout ***/ /********************************************************** layout ***/
var togglePageFitMode = createCSSClassToggler( var togglePageFitMode = createCSSClassToggler(
'.viewer', '.viewer',
'.page-fit-to-viewer', '.page-fit-to-viewer',
function(action){ function(action){
if(action == 'on'){ if(action == 'on'){
console.log('fitting pages to view...') console.log('fitting pages to view...')
var n = getPageNumber() var n = getPageNumber()
var scale = getMagazineScale() var scale = getMagazineScale()
$('.page:not(.no-resize)').width($('.viewer').width()/scale) $('.page:not(.no-resize)').width($('.viewer').width()/scale)
} else {
console.log('restoring page sizes...')
var n = getPageNumber()
$('.page:not(.no-resize)').width('')
}
setCurrentPage(n) setCurrentPage(n)
} else { })
console.log('restoring page sizes...')
var n = getPageNumber()
$('.page:not(.no-resize)').width('') var togglePageView = createCSSClassToggler(
setCurrentPage(n) '.viewer',
} '.full-page-view-mode',
}) // XXX make this support transitions...
function(action){
var view = $('.viewer')
var page = $('.page')
if(action == 'on'){
var W = view.width()
var H = view.height()
var w = page.width()
var h = page.height()
// XXX this is not correct...
// ...need to fit one rectangel (page) into another (viewer)
if(W >= H){
// fit to width...
var scale = W/w
} else {
// fit to height...
var scale = H/h
}
setMagazineScale(scale)
unanimated($('.magazine, .viewer'), togglePageFitMode)('on')
} else {
unanimated($('.magazine, .viewer'), togglePageFitMode)('off')
var W = view.width()
var H = view.height()
var w = page.width()
var h = page.height()
scale = W/(w*PAGES_IN_RIBBON)
setMagazineScale(scale)
}
// NOTE: can't disable transitions on this one because ScrollTo
// uses jQuery animation...
setCurrentPage()
})