mirror of
https://github.com/flynx/ImageGrid.git
synced 2025-10-29 10:20:08 +00:00
more refactoring marks...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
8f43056c0c
commit
64026f13cd
@ -96,6 +96,12 @@ var toggleBookmark = makeMarkToggler(
|
|||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
// Remove all bookmarks...
|
||||||
|
//
|
||||||
|
// mode can be:
|
||||||
|
// - 'ribbon' (default)
|
||||||
|
// - 'all'
|
||||||
|
//
|
||||||
function removeAllBookmarks(mode){
|
function removeAllBookmarks(mode){
|
||||||
mode = mode == null ? 'ribbon' : mode
|
mode = mode == null ? 'ribbon' : mode
|
||||||
var res = setAllMarks('off', mode, BOOKMARKS, toggleBookmark)
|
var res = setAllMarks('off', mode, BOOKMARKS, toggleBookmark)
|
||||||
@ -107,7 +113,7 @@ function removeAllBookmarks(mode){
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// focus next/prev bookmark...
|
// Focus next/prev bookmark...
|
||||||
//
|
//
|
||||||
var nextBookmark = makeNextFromListAction(
|
var nextBookmark = makeNextFromListAction(
|
||||||
getBookmarkedGIDBefore,
|
getBookmarkedGIDBefore,
|
||||||
|
|||||||
@ -199,6 +199,7 @@ var DATA = {
|
|||||||
// Flat ordered list of images in current context...
|
// Flat ordered list of images in current context...
|
||||||
// in the simplest form this is a list of GIDs.
|
// in the simplest form this is a list of GIDs.
|
||||||
//
|
//
|
||||||
|
// NOTE: this is never cropped...
|
||||||
// NOTE: this may contain more gids than are currently loaded to
|
// NOTE: this may contain more gids than are currently loaded to
|
||||||
// the ribbons...
|
// the ribbons...
|
||||||
order: [],
|
order: [],
|
||||||
|
|||||||
45
ui/marks.js
45
ui/marks.js
@ -449,39 +449,52 @@ function markAllImagesTo(action, mode){
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Mark/Unmark images...
|
||||||
|
//
|
||||||
// mode can be:
|
// mode can be:
|
||||||
// - 'ribbon'
|
// - 'ribbon' (default)
|
||||||
// - 'all'
|
// - 'all'
|
||||||
|
//
|
||||||
function unmarkAll(mode){ markAllImagesTo('off', mode) }
|
function unmarkAll(mode){ markAllImagesTo('off', mode) }
|
||||||
function markAll(mode){ markAllImagesTo('on', mode) }
|
function markAll(mode){ markAllImagesTo('on', mode) }
|
||||||
|
|
||||||
|
|
||||||
// NOTE: this only does it's work in the current ribbon...
|
// Invert marks on images...
|
||||||
function invertImageMarks(){
|
//
|
||||||
var ribbon = getRibbonGIDs()
|
// mode can be:
|
||||||
|
// - 'ribbon' (default)
|
||||||
|
// - 'all'
|
||||||
|
//
|
||||||
|
function invertImageMarks(mode, gids){
|
||||||
|
mode = mode == null ? 'ribbon' : mode
|
||||||
|
gids = gids != null ? gids
|
||||||
|
: mode == 'ribbon' ? getRibbonGIDs()
|
||||||
|
: getLoadedGIDs()
|
||||||
|
|
||||||
var on = []
|
var on = []
|
||||||
var off = []
|
var off = []
|
||||||
|
var order = DATA.order
|
||||||
|
|
||||||
$.each(ribbon, function(_, e){
|
$.each(gids, function(_, e){
|
||||||
var i = MARKED.indexOf(e)
|
var i = order.indexOf(e)
|
||||||
if(i == -1){
|
if(MARKED[i] === undefined){
|
||||||
on.push(e)
|
on.push(e)
|
||||||
MARKED[DATA.order.indexOf(e)] = e
|
MARKED[i] = e
|
||||||
} else {
|
} else {
|
||||||
off.push(e)
|
off.push(e)
|
||||||
delete MARKED[i]
|
delete MARKED[i]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
updateImages(ribbon)
|
updateImages(gids)
|
||||||
|
|
||||||
$('.viewer')
|
$('.viewer')
|
||||||
.trigger('invertingMarks', [ribbon])
|
.trigger('invertingMarks', [gids])
|
||||||
.trigger('togglingMarks', [on, 'on'])
|
.trigger('togglingMarks', [on, 'on'])
|
||||||
.trigger('togglingMarks', [off, 'off'])
|
.trigger('togglingMarks', [off, 'off'])
|
||||||
|
|
||||||
marksUpdated()
|
marksUpdated()
|
||||||
|
|
||||||
return on.concat(off)
|
return gids
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -498,6 +511,7 @@ function toggleMarkBlock(image){
|
|||||||
var i = ribbon.indexOf(gid)
|
var i = ribbon.indexOf(gid)
|
||||||
|
|
||||||
var updated = [gid]
|
var updated = [gid]
|
||||||
|
var order = DATA.order
|
||||||
|
|
||||||
var _convert = function(_, e){
|
var _convert = function(_, e){
|
||||||
// break if state differs from current...
|
// break if state differs from current...
|
||||||
@ -506,7 +520,7 @@ function toggleMarkBlock(image){
|
|||||||
}
|
}
|
||||||
// do the toggle...
|
// do the toggle...
|
||||||
if(state){
|
if(state){
|
||||||
MARKED[DATA.order.indexOf(e)] = e
|
MARKED[order.indexOf(e)] = e
|
||||||
} else {
|
} else {
|
||||||
delete MARKED[MARKED.indexOf(e)]
|
delete MARKED[MARKED.indexOf(e)]
|
||||||
}
|
}
|
||||||
@ -658,6 +672,7 @@ function markImagesDialog(){
|
|||||||
'to the left and right of the current image,\n'+
|
'to the left and right of the current image,\n'+
|
||||||
'up until the closest images marked differently',
|
'up until the closest images marked differently',
|
||||||
'Invert marks in current ribbon',
|
'Invert marks in current ribbon',
|
||||||
|
'Invert all marks',
|
||||||
'Mark all in current ribbon',
|
'Mark all in current ribbon',
|
||||||
'Unmark all in current ribbon',
|
'Unmark all in current ribbon',
|
||||||
'Mark all images',
|
'Mark all images',
|
||||||
@ -680,10 +695,14 @@ function markImagesDialog(){
|
|||||||
toggleMarkBlock()
|
toggleMarkBlock()
|
||||||
var msg = 'toggled block marks'
|
var msg = 'toggled block marks'
|
||||||
|
|
||||||
} else if(/Invert/.test(res)){
|
} else if(/Invert .* ribbon/.test(res)){
|
||||||
invertImageMarks()
|
invertImageMarks()
|
||||||
var msg = 'inverted ribbon marks'
|
var msg = 'inverted ribbon marks'
|
||||||
|
|
||||||
|
} else if(/Invert all/.test(res)){
|
||||||
|
invertImageMarks('all')
|
||||||
|
var msg = 'inverted all marks'
|
||||||
|
|
||||||
} else if(/Mark all.*current ribbon/.test(res)){
|
} else if(/Mark all.*current ribbon/.test(res)){
|
||||||
markAll('ribbon')
|
markAll('ribbon')
|
||||||
var msg = 'marked ribbon'
|
var msg = 'marked ribbon'
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user