5 #include "e_mod_system.h"
8 #define MOD_CONF_VERSION 3
10 typedef struct E_Mixer_Gadget_Config
14 int keybindings_popup;
16 const char *channel_name;
18 E_Config_Dialog *dialog;
19 struct E_Mixer_Instance *instance;
20 } E_Mixer_Gadget_Config;
22 typedef struct E_Mixer_Module_Config
25 const char *default_gc_id;
27 } E_Mixer_Module_Config;
29 typedef struct E_Mixer_Instance
32 E_Gadcon_Popup *popup;
33 Ecore_Timer *popup_timer;
48 Ecore_Event_Handler *mouse_up;
49 Ecore_Event_Handler *key_down;
54 E_Mixer_Channel *channel;
55 E_Mixer_Channel_State mixer_state;
56 E_Mixer_Gadget_Config *conf;
59 typedef struct E_Mixer_Module_Context
61 E_Config_DD *module_conf_edd;
62 E_Config_DD *gadget_conf_edd;
63 E_Mixer_Module_Config *conf;
64 E_Config_Dialog *conf_dialog;
65 E_Mixer_Instance *default_instance;
67 E_Dialog *mixer_dialog;
68 struct st_mixer_actions
74 } E_Mixer_Module_Context;
76 EAPI extern E_Module_Api e_modapi;
77 EAPI void *e_modapi_init(E_Module *m);
78 EAPI int e_modapi_shutdown(E_Module *m);
79 EAPI int e_modapi_save(E_Module *m);
81 E_Config_Dialog *e_mixer_config_module_dialog_new(E_Container *con, E_Mixer_Module_Context *ctxt);
82 E_Config_Dialog *e_mixer_config_dialog_new(E_Container *con, E_Mixer_Gadget_Config *conf);
83 E_Dialog *e_mixer_app_dialog_new(E_Container *con, void (*func)(E_Dialog *dialog, void *data), void *data);
84 int e_mixer_app_dialog_select(E_Dialog *dialog, const char *card_name, const char *channel_name);
86 int e_mixer_update(E_Mixer_Instance *inst);
87 const char *e_mixer_theme_path(void);