1 #ifdef E_TYPEDEFS
2 
3 typedef struct _E_Color_Dialog E_Color_Dialog;
4 
5 #else
6 #ifndef E_COLOR_DIALOG_H
7 #define E_COLOR_DIALOG_H
8 
9 #define E_COLOR_DIALOG_TYPE 0xE0b0101c
10 
11 struct _E_Color_Dialog
12 {
13    E_Object             e_obj_inherit;
14 
15    E_Dialog            *dia;
16 
17    E_Color             *color, *initial;
18 
19    void (*select_func)(E_Color_Dialog *dia, E_Color *color, void *data);
20    void  *select_data;
21    void (*cancel_func)(E_Color_Dialog *dia, E_Color *color, void *data);
22    void  *cancel_data;
23    void (*change_func)(E_Color_Dialog *dia, E_Color *color, void *data);
24    void  *change_data;
25 };
26 
27 E_API E_Color_Dialog  *e_color_dialog_new                (const E_Color *initial_color, Eina_Bool alpha_enabled);
28 E_API void             e_color_dialog_show               (E_Color_Dialog *dia);
29 E_API void             e_color_dialog_title_set          (E_Color_Dialog *dia, const char *title);
30 
31 /* select and change pass the current color back, cancel passes the initial color */
32 E_API void             e_color_dialog_select_callback_set(E_Color_Dialog *dia, void (*func)(E_Color_Dialog *dia, E_Color *color, void *data), void *data);
33 E_API void             e_color_dialog_cancel_callback_set(E_Color_Dialog *dia, void (*func)(E_Color_Dialog *dia, E_Color *color, void *data), void *data);
34 E_API void             e_color_dialog_change_callback_set(E_Color_Dialog *dia, void (*func)(E_Color_Dialog *dia, E_Color *color, void *data), void *data);
35 
36 #endif
37 #endif
38