diff options
author | Brad Hughes <bradhugh@outlook.com> | 2016-01-29 15:02:27 -0500 |
---|---|---|
committer | Brad Hughes <bradhugh@outlook.com> | 2016-02-28 14:25:10 -0500 |
commit | 7dfb5785594a359ce9886ef6eebf564ea73af729 (patch) | |
tree | 21da5ec12cc680192e9ceaa1e4d1080b9b8a95b3 /src/osd/windows/winmain.h | |
parent | a9f2f5ba4aca2a1fddd54fb7fc8cc6e17c8cac10 (diff) |
Refactor OSD input into modules
Diffstat (limited to 'src/osd/windows/winmain.h')
-rw-r--r-- | src/osd/windows/winmain.h | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/src/osd/windows/winmain.h b/src/osd/windows/winmain.h index 7656ab4ee31..70fc80e7d2d 100644 --- a/src/osd/windows/winmain.h +++ b/src/osd/windows/winmain.h @@ -240,6 +240,29 @@ private: // TYPE DEFINITIONS //============================================================ +enum input_event +{ + INPUT_EVENT_KEYDOWN, + INPUT_EVENT_KEYUP, + INPUT_EVENT_RAWINPUT, + INPUT_EVENT_MOUSE_BUTTON +}; + +struct KeyPressEventArgs +{ + input_event event_id; + UINT8 vkey; + UINT8 scancode; +}; + +struct MouseButtonEventArgs +{ + int button; + int keydown; + int xpos; + int ypos; +}; + class windows_osd_interface : public osd_common_t { public: @@ -254,25 +277,25 @@ public: // video overridables virtual void *get_slider_list() override; - // input overridables virtual void customize_input_type_list(simple_list<input_type_entry> &typelist) override; virtual void video_register() override; virtual bool video_init() override; virtual bool window_init() override; - virtual bool input_init() override; - virtual void input_pause() override; - virtual void input_resume() override; virtual bool output_init() override; virtual void video_exit() override; virtual void window_exit() override; - virtual void input_exit() override; virtual void output_exit() override; void extract_video_config(); + // windows osd specific + bool handle_input_event(input_event eventid, void *eventdata); + bool should_hide_mouse(); + void poll_input(running_machine &machine); + windows_options &options() { return m_options; } private: |