Qt: Initial hotkey implementation

This commit is contained in:
Connor McLaughlin
2020-01-05 12:46:03 +10:00
parent 0590f0935c
commit 40e1b7af23
15 changed files with 409 additions and 159 deletions

View File

@@ -45,33 +45,3 @@ private:
std::array<PortSettingsUI, 2> m_port_ui = {};
};
class InputButtonBindingWidget : public QPushButton
{
Q_OBJECT
public:
InputButtonBindingWidget(QtHostInterface* host_interface, QString setting_name, ControllerType controller_type,
QWidget* parent);
~InputButtonBindingWidget();
protected:
void keyPressEvent(QKeyEvent* event) override;
void keyReleaseEvent(QKeyEvent* event) override;
private Q_SLOTS:
void onPressed();
void onInputListenTimerTimeout();
private:
bool isListeningForInput() const { return m_input_listen_timer != nullptr; }
void startListeningForInput();
void stopListeningForInput();
QtHostInterface* m_host_interface;
QString m_setting_name;
QString m_current_binding_value;
ControllerType m_controller_type;
QTimer* m_input_listen_timer = nullptr;
u32 m_input_listen_remaining_seconds = 0;
};