3 typedef enum _E_Config_Dialog_CFData_Type
5 E_CONFIG_DIALOG_CFDATA_TYPE_BASIC,
6 E_CONFIG_DIALOG_CFDATA_TYPE_ADVANCED,
7 E_CONFIG_DIALOG_CFDATA_TYPE_NORMAL_WINDOW
8 } E_Config_Dialog_CFData_Type;
10 typedef struct _E_Config_Dialog E_Config_Dialog;
11 typedef struct _E_Config_Dialog_View E_Config_Dialog_View;
12 typedef struct _E_Config_Dialog_Data E_Config_Dialog_Data;
15 #ifndef E_CONFIG_DIALOG_H
16 #define E_CONFIG_DIALOG_H
18 #define E_CONFIG_DIALOG_TYPE 0xE0b01017
20 struct _E_Config_Dialog_View
22 unsigned char override_auto_apply : 1;
23 unsigned char basic_only : 1;
24 unsigned char normal_win : 1;
25 unsigned char scroll : 1;
27 void *(*create_cfdata) (E_Config_Dialog *cfd);
28 void (*free_cfdata) (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
29 int (*close_cfdata) (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
31 int (*apply_cfdata) (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
32 Evas_Object *(*create_widgets) (E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata);
33 int (*check_changed) (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
37 struct _E_Config_Dialog
39 E_Object e_obj_inherit;
41 E_Config_Dialog_CFData_Type view_type;
42 E_Config_Dialog_View *view;
43 E_Config_Dialog_Data *cfdata;
52 Ecore_Timer *auto_apply_timer;
53 unsigned char hide_buttons : 1;
54 unsigned char cfg_changed : 1;
55 unsigned char cfg_changed_auto : 1;
58 EAPI E_Config_Dialog *e_config_dialog_new(E_Container *con, const char *title, const char *name, const char *class, const char *icon, int icon_size, E_Config_Dialog_View *view, void *data);
59 EAPI int e_config_dialog_find(const char *name, const char *class);
60 EAPI E_Config_Dialog *e_config_dialog_get(const char *name, const char *class);
62 EAPI void e_config_dialog_changed_auto_set(E_Config_Dialog *cfd, unsigned char value);
63 EAPI void e_config_dialog_changed_set(E_Config_Dialog *cfd, unsigned char value);