ekg2
ekg/bindings.h
Idź do dokumentacji tego pliku.
00001 #ifndef __EKG_BINDINGS_H
00002 #define __EKG_BINDINGS_H
00003 
00004 #ifdef __cplusplus
00005 extern "C" {
00006 #endif
00007 
00008 #define BINDING_FUNCTION(x) void x(const char *arg) 
00009 
00010 struct binding {
00011         struct binding  *next;
00012 
00013         char            *key;
00014 
00015         char            *action;                        /* akcja */
00016         unsigned int    internal                : 1;    /* czy domyślna kombinacja? */
00017         void    (*function)(const char *arg);           /* funkcja obsługująca */
00018         char            *arg;                           /* argument funkcji */
00019 
00020         char            *default_action;                /* domyślna akcja */
00021         void    (*default_function)(const char *arg);   /* domyślna funkcja */
00022         char            *default_arg;                   /* domyślny argument */
00023 };
00024 
00025 typedef struct binding_added {
00026         struct binding_added    *next;
00027 
00028         char            *sequence;
00029         struct binding  *binding;
00030 } binding_added_t;
00031 
00032 extern struct binding *bindings;
00033 extern binding_added_t *bindings_added;
00034 
00035 void binding_list(int quiet, const char *name, int all);
00036 
00037 int binding_help(int a, int b);
00038 int binding_quick_list(int a, int b);
00039 
00040 void binding_free();
00041 
00042 #ifdef __cplusplus
00043 }
00044 #endif
00045 
00046 #endif
 All Struktury Danych Pliki Funkcje Zmienne Definicje typów Wyliczenia Wartości wyliczeń Definicje