X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=platform%2Flinux%2Fxenv.h;h=6abda1950fed917dc080be8a51819cfd74173739;hb=4685e5a10e388a9a07f1b11c3c14cce6e4e8ef5b;hp=948381e5bc31eb7278b083ed19a14e771f1af246;hpb=10ef62e38161092022d6e803a09f465590607354;p=picodrive.git diff --git a/platform/linux/xenv.h b/platform/linux/xenv.h index 948381e..6abda19 100644 --- a/platform/linux/xenv.h +++ b/platform/linux/xenv.h @@ -1,5 +1,18 @@ -int xenv_init(void); -int xenv_update(int *is_down); +#define XENV_CAP_KEYS (1<<0) +#define XENV_CAP_MOUSE (1<<1) + +/* xenv_flags specify if we need keys and mouse, + * on return, flag is removed if input is not available */ +int xenv_init(int *xenv_flags, const char *window_title); + +/* read events from X, calling key_cb for key, mouseb_cb for mouse button + * and mousem_cb for mouse motion events */ +int xenv_update(int (*key_cb)(void *cb_arg, int kc, int is_pressed), + int (*mouseb_cb)(void *cb_arg, int x, int y, int button, int is_pressed), + int (*mousem_cb)(void *cb_arg, int x, int y), + void *cb_arg); + +int xenv_minimize(void); void xenv_finish(void);