1 #ifndef _PLUGIN_H_INCLUDED_ 2 #define _PLUGIN_H_INCLUDED_ 3 4 #include <glib.h> 5 6 #define TYPE_KEY 0 7 #define TYPE_MOUSE 1 8 9 typedef enum 10 { 11 EVENT_PREV_TRACK = 0, 12 EVENT_PLAY, 13 EVENT_PAUSE, 14 EVENT_STOP, 15 EVENT_NEXT_TRACK, 16 17 EVENT_FORWARD, 18 EVENT_BACKWARD, 19 EVENT_MUTE, 20 EVENT_VOL_UP, 21 EVENT_VOL_DOWN, 22 EVENT_JUMP_TO_FILE, 23 EVENT_TOGGLE_WIN, 24 EVENT_SHOW_AOSD, 25 26 EVENT_TOGGLE_REPEAT, 27 EVENT_TOGGLE_SHUFFLE, 28 EVENT_TOGGLE_STOP, 29 30 EVENT_RAISE, 31 32 EVENT_MAX 33 } EVENT; 34 35 typedef struct _HotkeyConfiguration 36 { 37 unsigned key, mask; 38 unsigned type; 39 EVENT event; 40 struct _HotkeyConfiguration * next; 41 } HotkeyConfiguration; 42 43 typedef struct 44 { 45 /* keyboard */ 46 HotkeyConfiguration first; 47 } PluginConfig; 48 49 void load_config(); 50 void save_config(); 51 PluginConfig * get_config(); 52 gboolean handle_keyevent(EVENT event); 53 54 #endif 55