Merge remote-tracking branch 'baskerville/reverse-marks'

This commit is contained in:
Bert Münnich 2013-11-14 17:16:09 +01:00
commit 091aacb462
5 changed files with 19 additions and 1 deletions

View file

@ -74,11 +74,12 @@ of small previews is displayed, making it easy to choose an image to open.
-d Scale all images to 100%, but fit large images into window -d Scale all images to 100%, but fit large images into window
-F Use size-hints to make the window fixed/floating -F Use size-hints to make the window fixed/floating
-f Start in fullscreen mode -f Start in fullscreen mode
-G GAMMA Set image gamma to GAMMA (-32..32)
-g GEOMETRY Set window position and size -g GEOMETRY Set window position and size
(see section GEOMETRY SPECIFICATIONS of X(7)) (see section GEOMETRY SPECIFICATIONS of X(7))
-i Read file list from stdin -i Read file list from stdin
-n NUM Start at picture NUM
-N NAME Set X window resource name to NAME -N NAME Set X window resource name to NAME
-n NUM Start at picture NUM
-o Write list of marked files to stdout when quitting -o Write list of marked files to stdout when quitting
-q Be quiet, disable warnings -q Be quiet, disable warnings
-r Search given directories recursively for images -r Search given directories recursively for images
@ -108,6 +109,7 @@ of small previews is displayed, making it easy to choose an image to open.
D Remove image from file list and go to next image D Remove image from file list and go to next image
m Mark/unmark current image m Mark/unmark current image
M Reverse all image marks
N Go [count] marked images forward N Go [count] marked images forward
P Go [count] marked images backward P Go [count] marked images backward

View file

@ -251,6 +251,17 @@ bool it_toggle_image_mark(arg_t a)
return true; return true;
} }
bool it_reverse_marks(arg_t a)
{
int i, cnt = mode == MODE_IMAGE ? filecnt : tns.cnt;
for (i = 0; i < cnt; i++)
files[i].marked = !files[i].marked;
if (mode == MODE_THUMB)
tns.dirty = true;
return true;
}
bool it_navigate_marked(arg_t a) bool it_navigate_marked(arg_t a)
{ {
long n = (long) a; long n = (long) a;

View file

@ -55,6 +55,7 @@ bool it_n_or_last(arg_t);
bool i_navigate_frame(arg_t); bool i_navigate_frame(arg_t);
bool i_toggle_animation(arg_t); bool i_toggle_animation(arg_t);
bool it_toggle_image_mark(arg_t); bool it_toggle_image_mark(arg_t);
bool it_reverse_marks(arg_t);
bool it_navigate_marked(arg_t); bool it_navigate_marked(arg_t);
bool it_scroll_move(arg_t); bool it_scroll_move(arg_t);
bool it_scroll_screen(arg_t); bool it_scroll_screen(arg_t);

View file

@ -101,6 +101,7 @@ static const keymap_t keys[] = {
{ true, XK_space, i_toggle_animation, (arg_t) None }, { true, XK_space, i_toggle_animation, (arg_t) None },
{ false, XK_m, it_toggle_image_mark, (arg_t) None }, { false, XK_m, it_toggle_image_mark, (arg_t) None },
{ false, XK_M, it_reverse_marks, (arg_t) None },
{ false, XK_N, it_navigate_marked, (arg_t) +1 }, { false, XK_N, it_navigate_marked, (arg_t) +1 },
{ false, XK_P, it_navigate_marked, (arg_t) -1 }, { false, XK_P, it_navigate_marked, (arg_t) -1 },

3
sxiv.1
View file

@ -135,6 +135,9 @@ Remove current image from file list and go to next image.
.B m .B m
Mark/unmark the current image. Mark/unmark the current image.
.TP .TP
.B M
Reverse all image marks.
.TP
.B N .B N
Go Go
.I count .I count