nsxiv4c40cc2
Slightly refactored flipping
+19 −28
5 files changed
- M Makefile +1 −1
- M commands.c +5 −9
- M image.c +11 −14
- M image.h +1 −3
- M types.h +1 −1
| @@ -1,4 +1,4 @@ | |||
| 1 | − | VERSION = git-20120418 | |
| 1 | + | VERSION = git-20120506 | |
| 2 | 2 | ||
| 3 | 3 | CC = gcc | |
| 4 | 4 | CFLAGS = -ansi -Wall -pedantic -O2 | |
| @@ -343,18 +343,14 @@ bool i_rotate(arg_t a) { | |||
| 343 | 343 | } | |
| 344 | 344 | ||
| 345 | 345 | bool i_flip(arg_t a) { | |
| 346 | − | flip_t flp = (flip_t) a; | |
| 346 | + | flipdir_t dir = (flipdir_t) a; | |
| 347 | 347 | ||
| 348 | 348 | if (mode == MODE_IMAGE) { | |
| 349 | − | if (flp == FLIP_HORIZONTAL) { | |
| 350 | − | img_flip_horizontal(&img); | |
| 351 | − | return true; | |
| 352 | − | } else if (flp == FLIP_VERTICAL) { | |
| 353 | − | img_flip_vertical(&img); | |
| 354 | − | return true; | |
| 355 | − | } | |
| 349 | + | img_flip(&img, dir); | |
| 350 | + | return true; | |
| 351 | + | } else { | |
| 352 | + | return false; | |
| 356 | 353 | } | |
| 357 | − | return false; | |
| 358 | 354 | } | |
| 359 | 355 | ||
| 360 | 356 | bool i_toggle_antialias(arg_t a) { | |
| @@ -642,24 +642,21 @@ void img_rotate_right(img_t *img) { | |||
| 642 | 642 | img_rotate(img, 1); | |
| 643 | 643 | } | |
| 644 | 644 | ||
| 645 | − | void img_flip(img_t *img, int f) { | |
| 646 | − | if (img == NULL || img->im == NULL || img->win == NULL) | |
| 645 | + | void img_flip(img_t *img, flipdir_t d) { | |
| 646 | + | if (img == NULL || img->im == NULL) | |
| 647 | 647 | return; | |
| 648 | 648 | ||
| 649 | 649 | imlib_context_set_image(img->im); | |
| 650 | − | if (f == 0) | |
| 651 | − | imlib_image_flip_horizontal(); | |
| 652 | − | else | |
| 653 | − | imlib_image_flip_vertical(); | |
| 654 | − | img->dirty = true; | |
| 655 | − | } | |
| 656 | − | ||
| 657 | − | void img_flip_horizontal(img_t *img) { | |
| 658 | − | img_flip(img, 0); | |
| 659 | − | } | |
| 660 | 650 | ||
| 661 | − | void img_flip_vertical(img_t *img) { | |
| 662 | − | img_flip(img, 1); | |
| 651 | + | switch (d) { | |
| 652 | + | case FLIP_HORIZONTAL: | |
| 653 | + | imlib_image_flip_horizontal(); | |
| 654 | + | break; | |
| 655 | + | case FLIP_VERTICAL: | |
| 656 | + | imlib_image_flip_vertical(); | |
| 657 | + | break; | |
| 658 | + | } | |
| 659 | + | img->dirty = true; | |
| 663 | 660 | } | |
| 664 | 661 | ||
| 665 | 662 | void img_toggle_antialias(img_t *img) { | |
| @@ -80,9 +80,7 @@ void img_rotate(img_t*, int); | |||
| 80 | 80 | void img_rotate_left(img_t*); | |
| 81 | 81 | void img_rotate_right(img_t*); | |
| 82 | 82 | ||
| 83 | − | void img_flip(img_t*, int); | |
| 84 | − | void img_flip_horizontal(img_t*); | |
| 85 | − | void img_flip_vertical(img_t*); | |
| 83 | + | void img_flip(img_t*, flipdir_t); | |
| 86 | 84 | ||
| 87 | 85 | void img_toggle_antialias(img_t*); | |
| 88 | 86 | ||
| @@ -26,7 +26,7 @@ typedef enum { | |||
| 26 | 26 | typedef enum { | |
| 27 | 27 | FLIP_HORIZONTAL, | |
| 28 | 28 | FLIP_VERTICAL | |
| 29 | − | } flip_t; | |
| 29 | + | } flipdir_t; | |
| 30 | 30 | ||
| 31 | 31 | typedef enum { | |
| 32 | 32 | SCALE_DOWN, | |