Merge branch '3867_mcedit_c_macro'
[midnight-commander.git] / lib / event-types.h
blob2625c3698fbd423d6974e3d6c64b9f1d15810dd1
1 #ifndef MC__EVENT_TYPES_H
2 #define MC__EVENT_TYPES_H
4 #include <stdarg.h>
6 /*** typedefs(not structures) and defined constants **********************************************/
8 /* Event groups for main modules */
9 #define MCEVENT_GROUP_CORE "Core"
10 #define MCEVENT_GROUP_DIALOG "Dialog"
11 #define MCEVENT_GROUP_DIFFVIEWER "DiffViewer"
12 #define MCEVENT_GROUP_EDITOR "Editor"
13 #define MCEVENT_GROUP_FILEMANAGER "FileManager"
14 #define MCEVENT_GROUP_VIEWER "Viewer"
16 /* Events */
17 #define MCEVENT_HISTORY_LOAD "history_load"
18 #define MCEVENT_HISTORY_SAVE "history_save"
20 /*** enums ***************************************************************************************/
22 /*** structures declarations (and typedefs of structures)*****************************************/
24 /* MCEVENT_GROUP_CORE:vfs_timestamp */
25 struct vfs_class;
26 typedef struct
28 struct vfs_class *vclass;
29 gpointer id;
30 gboolean ret;
31 } ev_vfs_stamp_create_t;
33 /* MCEVENT_GROUP_CORE:vfs_print_message */
34 typedef struct
36 char *msg;
37 } ev_vfs_print_message_t;
39 /* MCEVENT_GROUP_CORE:clipboard_text_from_file */
40 typedef struct
42 char **text;
43 gboolean ret;
44 } ev_clipboard_text_from_file_t;
46 /* MCEVENT_GROUP_CORE:help */
47 typedef struct
49 const char *filename;
50 const char *node;
51 } ev_help_t;
53 /* MCEVENT_GROUP_CORE:background_parent_call */
54 /* MCEVENT_GROUP_CORE:background_parent_call_string */
55 typedef struct
57 void *routine;
58 gpointer *ctx;
59 int argc;
60 va_list ap;
61 union
63 int i;
64 char *s;
65 } ret;
66 } ev_background_parent_call_t;
68 /* MCEVENT_GROUP_DIALOG:history_load */
69 /* MCEVENT_GROUP_DIALOG:history_save */
70 struct mc_config_t;
71 struct Widget;
72 typedef struct
74 struct mc_config_t *cfg;
75 struct Widget *receiver; /* NULL means broadcast message */
76 } ev_history_load_save_t;
78 /*** global variables defined in .c file *********************************************************/
80 /*** declarations of public functions ************************************************************/
82 /*** inline functions ****************************************************************************/
84 #endif /* MC__EVENT_TYPES_H */