mirror of
https://github.com/flynx/ImageGrid.git
synced 2025-10-29 10:20:08 +00:00
marking blocks now works...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
28734c5ee0
commit
0618653f75
@ -192,15 +192,35 @@ var ImageMarkActions = actions.Actions({
|
|||||||
//
|
//
|
||||||
toggleMark: ['Mark|Image/Image $mark',
|
toggleMark: ['Mark|Image/Image $mark',
|
||||||
makeTagTogglerAction('selected')],
|
makeTagTogglerAction('selected')],
|
||||||
// XXX
|
toggleMarkBlock: ['Mark/Mark $block',
|
||||||
toggleMarkBlock: ['Mark/$Block marks',
|
core.doc`A block is a set of adjacent images either marked on unmarked
|
||||||
'A block is a set of adjacent images either marked on unmarked '
|
in the same way
|
||||||
+'in the same way',
|
`,
|
||||||
function(target){
|
function(target){
|
||||||
var cur = this.toggleMark(target, '?')
|
target = this.data.getImage(target)
|
||||||
|
var order = this.data.order
|
||||||
|
var c = order.indexOf(target)
|
||||||
|
var marked = this.data.makeSparseImages(this.markedInRibbon(target))
|
||||||
|
var state = !!marked[c]
|
||||||
|
|
||||||
// get all the next/prev gids until we get a state other than cur...
|
var block = [target]
|
||||||
// XXX
|
|
||||||
|
// pre block...
|
||||||
|
var i = c-1
|
||||||
|
while(i < marked.length && !!marked[i] == state){
|
||||||
|
block.splice(0, 0, order[i])
|
||||||
|
i--
|
||||||
|
}
|
||||||
|
|
||||||
|
// post block...
|
||||||
|
var i = c+1
|
||||||
|
while(i >= 0 && !!marked[i] == state){
|
||||||
|
block.push(order[i])
|
||||||
|
i++
|
||||||
|
}
|
||||||
|
|
||||||
|
// do the marking...
|
||||||
|
return this.toggleMark(block, state ? 'off' : 'on')
|
||||||
}],
|
}],
|
||||||
|
|
||||||
markTagged: ['- Mark/Mark images by tags',
|
markTagged: ['- Mark/Mark images by tags',
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user