From 4c40cc24bc6b3e11fc9e6cf337ddb035fa750eb3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bert=20M=C3=BCnnich?= <be.muennich@googlemail.com>
Date: Sun, 6 May 2012 13:02:34 +0200
Subject: [PATCH] Slightly refactored flipping

---
 Makefile   |  2 +-
 commands.c | 14 +++++---------
 image.c    | 25 +++++++++++--------------
 image.h    |  4 +---
 types.h    |  2 +-
 5 files changed, 19 insertions(+), 28 deletions(-)

diff --git a/Makefile b/Makefile
index ed3c003..5d01e15 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-VERSION = git-20120418
+VERSION = git-20120506
 
 CC      = gcc
 CFLAGS  = -ansi -Wall -pedantic -O2
diff --git a/commands.c b/commands.c
index 92d5ca7..d07e950 100644
--- a/commands.c
+++ b/commands.c
@@ -343,18 +343,14 @@ bool i_rotate(arg_t a) {
 }
 
 bool i_flip(arg_t a) {
-	flip_t flp = (flip_t) a;
+	flipdir_t dir = (flipdir_t) a;
 
 	if (mode == MODE_IMAGE) {
-		if (flp == FLIP_HORIZONTAL) {
-			img_flip_horizontal(&img);
-			return true;
-		} else if (flp == FLIP_VERTICAL) {
-			img_flip_vertical(&img);
-			return true;
-		}
+		img_flip(&img, dir);
+		return true;
+	} else {
+		return false;
 	}
-	return false;
 }
 
 bool i_toggle_antialias(arg_t a) {
diff --git a/image.c b/image.c
index 2267204..cb71efa 100644
--- a/image.c
+++ b/image.c
@@ -642,26 +642,23 @@ void img_rotate_right(img_t *img) {
 	img_rotate(img, 1);
 }
 
-void img_flip(img_t *img, int f) {
-	if (img == NULL || img->im == NULL || img->win == NULL)
+void img_flip(img_t *img, flipdir_t d) {
+	if (img == NULL || img->im == NULL)
 		return;
 
 	imlib_context_set_image(img->im);
-    if (f == 0)
-        imlib_image_flip_horizontal();
-    else
-        imlib_image_flip_vertical();
+
+	switch (d) {
+		case FLIP_HORIZONTAL:
+			imlib_image_flip_horizontal();
+			break;
+		case FLIP_VERTICAL:
+			imlib_image_flip_vertical();
+			break;
+	}
 	img->dirty = true;
 }
 
-void img_flip_horizontal(img_t *img) {
-    img_flip(img, 0);
-}
-
-void img_flip_vertical(img_t *img) {
-    img_flip(img, 1);
-}
-
 void img_toggle_antialias(img_t *img) {
 	if (img == NULL || img->im == NULL)
 		return;
diff --git a/image.h b/image.h
index 5661b01..c662a24 100644
--- a/image.h
+++ b/image.h
@@ -80,9 +80,7 @@ void img_rotate(img_t*, int);
 void img_rotate_left(img_t*);
 void img_rotate_right(img_t*);
 
-void img_flip(img_t*, int);
-void img_flip_horizontal(img_t*);
-void img_flip_vertical(img_t*);
+void img_flip(img_t*, flipdir_t);
 
 void img_toggle_antialias(img_t*);
 
diff --git a/types.h b/types.h
index 0a4214c..12719a7 100644
--- a/types.h
+++ b/types.h
@@ -26,7 +26,7 @@ typedef enum {
 typedef enum {
 	FLIP_HORIZONTAL,
 	FLIP_VERTICAL
-} flip_t;
+} flipdir_t;
 
 typedef enum {
 	SCALE_DOWN,