X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=frontend%2Flinux%2Fxenv.h;h=6abda1950fed917dc080be8a51819cfd74173739;hp=1afad9dab3300e94ea1cf8f11cc1b416e98e8bea;hb=3a321131b0f1d75685b7487517fc84738f4186d2;hpb=4fa24f17bf5938ee5962b19f27625c6fb13ac9f7 diff --git a/frontend/linux/xenv.h b/frontend/linux/xenv.h index 1afad9da..6abda195 100644 --- a/frontend/linux/xenv.h +++ b/frontend/linux/xenv.h @@ -1,6 +1,18 @@ -int xenv_init(const char *window_title); -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);