Merge branch '4604_c99_automake_114'
[midnight-commander.git] / lib / event.h
blob66616393e44b5012257242d8a6add1e8f4215719
1 #ifndef MC__EVENT_H
2 #define MC__EVENT_H
4 #include "event-types.h"
6 /*** typedefs(not structures) and defined constants **********************************************/
8 typedef gboolean (*mc_event_callback_func_t) (const gchar *, const gchar *, gpointer, gpointer);
10 /*** enums ***************************************************************************************/
12 /*** structures declarations (and typedefs of structures)*****************************************/
14 typedef struct
16 const char *event_group_name;
17 const char *event_name;
18 mc_event_callback_func_t cb;
19 gpointer init_data;
20 } event_init_t;
22 /*** global variables defined in .c file *********************************************************/
24 /*** declarations of public functions ************************************************************/
26 /* event.c: */
27 gboolean mc_event_init (GError ** mcerror);
28 gboolean mc_event_deinit (GError ** mcerror);
31 /* manage.c: */
32 gboolean mc_event_add (const gchar * event_group_name, const gchar * event_name,
33 mc_event_callback_func_t event_callback, gpointer event_init_data,
34 GError ** mcerror);
35 void mc_event_del (const gchar * event_group_name, const gchar * event_name,
36 mc_event_callback_func_t event_callback, gpointer event_init_data);
37 void mc_event_destroy (const gchar * event_group_name, const gchar * event_name);
38 void mc_event_group_del (const gchar * event_group_name);
39 gboolean mc_event_present (const gchar * event_group_name, const gchar * event_name);
40 gboolean mc_event_mass_add (const event_init_t * events, GError ** mcerror);
42 /* raise.c: */
43 gboolean mc_event_raise (const gchar *, const gchar *, gpointer);
46 /*** inline functions ****************************************************************************/
48 #endif /* MC__EVENT_H */