summaryrefslogtreecommitdiff
path: root/bindings.h
diff options
context:
space:
mode:
Diffstat (limited to 'bindings.h')
-rw-r--r--bindings.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/bindings.h b/bindings.h
new file mode 100644
index 0000000..514b64a
--- /dev/null
+++ b/bindings.h
@@ -0,0 +1,28 @@
+#ifndef BINDINGS_H_
+#define BINDINGS_H_
+#include <stdint.h>
+
+typedef enum {
+ MOUSE_NONE, //mouse is ignored
+ MOUSE_ABSOLUTE, //really only useful for menu ROM
+ MOUSE_RELATIVE, //for full screen
+ MOUSE_CAPTURE //for windowed mode
+} mouse_modes;
+
+void set_bindings(void);
+void bindings_set_mouse_mode(uint8_t mode);
+void handle_keydown(int keycode, uint8_t scancode);
+void handle_keyup(int keycode, uint8_t scancode);
+void handle_joydown(int joystick, int button);
+void handle_joyup(int joystick, int button);
+void handle_joy_dpad(int joystick, int dpad, uint8_t state);
+void handle_joy_axis(int joystick, int axis, int16_t value);
+void handle_joy_added(int joystick);
+void handle_mouse_moved(int mouse, uint16_t x, uint16_t y, int16_t deltax, int16_t deltay);
+void handle_mousedown(int mouse, int button);
+void handle_mouseup(int mouse, int button);
+
+void bindings_release_capture(void);
+void bindings_reacquire_capture(void);
+
+#endif //BINDINGS_H_