2005-10-13 08:15:27 -07:00
|
|
|
#ifdef E_TYPEDEFS
|
|
|
|
|
|
|
|
typedef enum _E_Config_Dialog_CFData_Type
|
|
|
|
{
|
|
|
|
E_CONFIG_DIALOG_CFDATA_TYPE_BASIC,
|
2008-04-30 05:01:32 -07:00
|
|
|
E_CONFIG_DIALOG_CFDATA_TYPE_ADVANCED,
|
|
|
|
E_CONFIG_DIALOG_CFDATA_TYPE_NORMAL_WINDOW
|
2005-10-13 08:15:27 -07:00
|
|
|
} E_Config_Dialog_CFData_Type;
|
|
|
|
|
|
|
|
typedef struct _E_Config_Dialog E_Config_Dialog;
|
|
|
|
typedef struct _E_Config_Dialog_View E_Config_Dialog_View;
|
2006-01-14 08:05:35 -08:00
|
|
|
typedef struct _E_Config_Dialog_Data E_Config_Dialog_Data;
|
2005-10-13 08:15:27 -07:00
|
|
|
|
|
|
|
#else
|
|
|
|
#ifndef E_CONFIG_DIALOG_H
|
|
|
|
#define E_CONFIG_DIALOG_H
|
|
|
|
|
|
|
|
#define E_CONFIG_DIALOG_TYPE 0xE0b01017
|
|
|
|
|
|
|
|
struct _E_Config_Dialog_View
|
|
|
|
{
|
2008-09-16 19:21:00 -07:00
|
|
|
unsigned char override_auto_apply : 1;
|
|
|
|
unsigned char basic_only : 1;
|
|
|
|
unsigned char normal_win : 1;
|
2008-09-26 10:00:32 -07:00
|
|
|
unsigned char scroll : 1;
|
2012-06-20 23:19:43 -07:00
|
|
|
|
2005-10-14 01:34:12 -07:00
|
|
|
void *(*create_cfdata) (E_Config_Dialog *cfd);
|
2006-01-14 08:05:35 -08:00
|
|
|
void (*free_cfdata) (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
2006-01-21 04:44:48 -08:00
|
|
|
int (*close_cfdata) (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
2005-10-14 01:34:12 -07:00
|
|
|
struct {
|
2006-01-14 08:05:35 -08:00
|
|
|
int (*apply_cfdata) (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
|
|
|
Evas_Object *(*create_widgets) (E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata);
|
2008-09-21 10:08:30 -07:00
|
|
|
int (*check_changed) (E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
2012-06-20 23:19:43 -07:00
|
|
|
} basic, advanced;
|
2005-10-13 08:15:27 -07:00
|
|
|
};
|
|
|
|
|
|
|
|
struct _E_Config_Dialog
|
|
|
|
{
|
|
|
|
E_Object e_obj_inherit;
|
2012-06-20 23:19:43 -07:00
|
|
|
|
2005-10-13 08:15:27 -07:00
|
|
|
E_Config_Dialog_CFData_Type view_type;
|
2006-01-22 06:18:20 -08:00
|
|
|
E_Config_Dialog_View *view;
|
2006-01-14 08:05:35 -08:00
|
|
|
E_Config_Dialog_Data *cfdata;
|
2005-10-13 08:15:27 -07:00
|
|
|
E_Container *con;
|
2006-03-02 04:03:48 -08:00
|
|
|
const char *title;
|
|
|
|
const char *icon;
|
2006-08-14 08:22:46 -07:00
|
|
|
const char *name;
|
|
|
|
const char *class;
|
2005-10-14 20:09:46 -07:00
|
|
|
int icon_size;
|
2005-10-13 08:15:27 -07:00
|
|
|
E_Dialog *dia;
|
2005-10-14 01:34:12 -07:00
|
|
|
void *data;
|
2006-05-10 03:17:59 -07:00
|
|
|
Ecore_Timer *auto_apply_timer;
|
2008-09-21 09:21:25 -07:00
|
|
|
unsigned char hide_buttons : 1;
|
|
|
|
unsigned char cfg_changed : 1;
|
|
|
|
unsigned char cfg_changed_auto : 1;
|
2005-10-13 08:15:27 -07:00
|
|
|
};
|
|
|
|
|
2006-08-14 08:22:46 -07:00
|
|
|
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);
|
2006-10-08 01:04:18 -07:00
|
|
|
EAPI int e_config_dialog_find(const char *name, const char *class);
|
2006-11-30 02:01:02 -08:00
|
|
|
EAPI E_Config_Dialog *e_config_dialog_get(const char *name, const char *class);
|
|
|
|
|
2008-09-21 09:21:25 -07:00
|
|
|
EAPI void e_config_dialog_changed_auto_set(E_Config_Dialog *cfd, unsigned char value);
|
|
|
|
EAPI void e_config_dialog_changed_set(E_Config_Dialog *cfd, unsigned char value);
|
|
|
|
|
2005-10-13 08:15:27 -07:00
|
|
|
#endif
|
|
|
|
#endif
|