xemu/ui/xui/input-manager.hh
Matt Borgerson 9c06980275 ui: Redesign user interface
Introduces a new user interface that looks much nicer, is easier to
navigate with controllers, provides more context to users, and is
scalable. Some additional features are included.

* Adds 'popup menu' with actions that can be used easily from controller
* Adds 'main menu', unifying other configuration dialogs
* Adds port-forwarding user interface
* Adds screenshot feature
* Adds volume control feature
* Adds gamepad auto-bind option
* Adds vsync configuration option
* Adds auto UI scaling
* Adds preferred window size selection
* Adds AV pack selection
* Exposes some existing config items in GUI
2022-05-07 16:09:34 -07:00

21 lines
442 B
C++

#pragma once
#include "common.hh"
class InputManager
{
protected:
ImVec2 m_last_mouse_pos;
bool m_navigating_with_controller;
uint32_t m_buttons;
bool m_mouse_moved;
public:
InputManager();
void Update();
inline bool IsNavigatingWithController() { return m_navigating_with_controller; }
inline bool MouseMoved() { return m_mouse_moved; }
inline uint32_t CombinedButtons() { return m_buttons; }
};
extern InputManager g_input_mgr;