From 6613f1fc5c2e167a319e66eca4df4678822491bd Mon Sep 17 00:00:00 2001 From: "Alex A. Naanou" Date: Thu, 16 Jan 2014 15:58:58 +0400 Subject: [PATCH] some refactoring... Signed-off-by: Alex A. Naanou --- ui/bookmarks.js | 13 ++----------- ui/marks.js | 27 +++++++++++++++++---------- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/ui/bookmarks.js b/ui/bookmarks.js index 8de85227..df4f67d4 100755 --- a/ui/bookmarks.js +++ b/ui/bookmarks.js @@ -165,17 +165,8 @@ function setupBookmarks(viewer){ bookmarksUpdated() }) .on('horizontalShiftedImage', function(evt, gid, direction){ - var n = DATA.order.indexOf(gid) - var o = BOOKMARKS.indexOf(gid) - - // move the marked gid... - BOOKMARKS.splice(o, 1) - BOOKMARKS.splice(n, 0, gid) - - // test if there are any marked images between n and o... - var shift = compactSparceList(BOOKMARKS.slice(Math.min(n, o)+1, Math.max(n, o))) - if(shift.length > 0){ - marksUpdated() + if(shiftGIDInSparseList(gid, BOOKMARKS)){ + bookmarksUpdated() } }) } diff --git a/ui/marks.js b/ui/marks.js index eed62b27..41b645cf 100755 --- a/ui/marks.js +++ b/ui/marks.js @@ -289,6 +289,22 @@ function shiftGIDToOrderInList(gid, direction, list){ } return false } +// a sparse version of shiftGIDToOrderInList(..)... +function shiftGIDInSparseList(gid, list){ + var n = DATA.order.indexOf(gid) + var o = list.indexOf(gid) + + // move the marked gid... + list.splice(o, 1) + list.splice(n, 0, gid) + + // test if there are any marked images between n and o... + var shift = compactSparceList(list.slice(Math.min(n, o)+1, Math.max(n, o))) + if(shift.length > 0){ + return true + } + return false +} @@ -775,16 +791,7 @@ function setupMarks(viewer){ marksUpdated() }) .on('horizontalShiftedImage', function(evt, gid, direction){ - var n = DATA.order.indexOf(gid) - var o = MARKED.indexOf(gid) - - // move the marked gid... - MARKED.splice(o, 1) - MARKED.splice(n, 0, gid) - - // test if there are any marked images between n and o... - var shift = compactSparceList(MARKED.slice(Math.min(n, o)+1, Math.max(n, o))) - if(shift.length > 0){ + if(shiftGIDInSparseList(gid, MARKED)){ marksUpdated() } })