2014-09-16 00:52:07 +02:00
|
|
|
#ifndef DRIVER_MENU_BACKEND_H__
|
|
|
|
#define DRIVER_MENU_BACKEND_H__
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2014-10-12 00:45:42 +02:00
|
|
|
typedef struct menu_file_list_cbs
|
|
|
|
{
|
2014-10-15 08:04:10 +02:00
|
|
|
int (*action_deferred_push)(void *data, void *userdata, const char
|
|
|
|
*path, const char *label, unsigned type);
|
2014-10-12 00:45:42 +02:00
|
|
|
int (*action_ok)(const char *path, const char *label, unsigned type,
|
|
|
|
size_t index);
|
2014-10-12 20:11:45 +02:00
|
|
|
int (*action_start)(unsigned type, const char *label, unsigned action);
|
2014-10-12 19:13:42 +02:00
|
|
|
int (*action_toggle)(unsigned type, const char *label, unsigned action);
|
2014-10-12 00:45:42 +02:00
|
|
|
} menu_file_list_cbs_t;
|
|
|
|
|
2014-09-16 00:52:07 +02:00
|
|
|
typedef struct menu_ctx_driver_backend
|
|
|
|
{
|
|
|
|
int (*iterate)(unsigned);
|
|
|
|
unsigned (*type_is)(const char *, unsigned);
|
|
|
|
void (*setting_set_label)(char *, size_t, unsigned *,
|
|
|
|
unsigned, const char *, const char *, unsigned);
|
2014-10-12 00:45:42 +02:00
|
|
|
void (*list_insert)(void *, const char *, const char *, unsigned, size_t);
|
2014-10-12 00:10:44 +02:00
|
|
|
void (*list_delete)(void *, size_t, size_t);
|
|
|
|
void (*list_clear)(void *);
|
|
|
|
void (*list_set_selection)(void *);
|
2014-09-16 00:52:07 +02:00
|
|
|
const char *ident;
|
|
|
|
} menu_ctx_driver_backend_t;
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|