| | |
| | |
| |
|
| | #pragma once |
| |
|
| | #include <QWidget> |
| |
|
| | class QAction; |
| | class QHideEvent; |
| | class QShowEvent; |
| | class PlayerControlPreview; |
| |
|
| | namespace InputCommon { |
| | class InputSubsystem; |
| | } |
| |
|
| | namespace Core::HID { |
| | class HIDCore; |
| | class EmulatedController; |
| | enum class ControllerTriggerType; |
| | } |
| |
|
| | class ControllerDialog : public QWidget { |
| | Q_OBJECT |
| |
|
| | public: |
| | explicit ControllerDialog(Core::HID::HIDCore& hid_core_, |
| | std::shared_ptr<InputCommon::InputSubsystem> input_subsystem_, |
| | QWidget* parent = nullptr); |
| |
|
| | |
| | QAction* toggleViewAction(); |
| |
|
| | |
| | void refreshConfiguration(); |
| |
|
| | |
| | void UnloadController(); |
| |
|
| | protected: |
| | void showEvent(QShowEvent* ev) override; |
| | void hideEvent(QHideEvent* ev) override; |
| |
|
| | private: |
| | |
| | void ControllerUpdate(Core::HID::ControllerTriggerType type); |
| |
|
| | int callback_key; |
| | bool is_controller_set{}; |
| | Core::HID::EmulatedController* controller; |
| |
|
| | QAction* toggle_view_action = nullptr; |
| | PlayerControlPreview* widget; |
| | Core::HID::HIDCore& hid_core; |
| | std::shared_ptr<InputCommon::InputSubsystem> input_subsystem; |
| | }; |
| |
|