b5d3f7c21637c6a276e31f2c7c80665076593673
[geeqie.git] / src / color-man.h
1 /*
2  * GQview
3  * (C) 2006 John Ellis
4  *
5  * Author: John Ellis
6  *
7  * This software is released under the GNU General Public License (GNU GPL).
8  * Please read the included file COPYING for more information.
9  * This software comes with no warranty of any kind, use at your own risk!
10  */
11
12
13 #ifndef COLOR_MAN_H
14 #define COLOR_MAN_H
15
16 typedef enum {
17         COLOR_PROFILE_NONE = 0,
18         COLOR_PROFILE_FILE,
19         COLOR_PROFILE_SRGB,
20 } ColorManProfileType;
21
22 typedef enum {
23         COLOR_RETURN_SUCCESS = 0,
24         COLOR_RETURN_ERROR,
25         COLOR_RETURN_IMAGE_CHANGED
26 } ColorManReturnType;
27
28 typedef struct _ColorMan ColorMan;
29 typedef void (* ColorManDoneFunc)(ColorMan *cm, ColorManReturnType success, gpointer data);
30
31
32 struct _ColorMan {
33         ImageWindow *imd;
34         GdkPixbuf *pixbuf;
35         gint row;
36
37         gpointer profile;
38
39         gint idle_id;
40
41         ColorManDoneFunc func_done;
42         gpointer func_done_data;
43 };
44
45
46 ColorMan *color_man_new(ImageWindow *imd,
47                         ColorManProfileType input_type, const gchar *input_file,
48                         ColorManProfileType screen_type, const gchar *screen_file,
49                         ColorManDoneFunc done_func, gpointer done_data);
50 void color_man_free(ColorMan *cm);
51
52 void color_man_update(void);
53
54
55 #endif
56