diff options
author | bunnei <bunneidev@gmail.com> | 2015-03-08 03:42:40 -0400 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2015-03-10 18:05:18 -0400 |
commit | f213000cc421a0d00af35e160d9dff9eea617cf6 (patch) | |
tree | 4a0af4686f54bb04ae999061a009f8b931be3ec0 /src | |
parent | dd73217ae388a74f0c4d000ef52edd0f2b7fa64c (diff) |
Qt: Implemented EmuWindow touchpad support.
Diffstat (limited to 'src')
-rw-r--r-- | src/citra_qt/bootmanager.cpp | 25 | ||||
-rw-r--r-- | src/citra_qt/bootmanager.h | 4 |
2 files changed, 29 insertions, 0 deletions
diff --git a/src/citra_qt/bootmanager.cpp b/src/citra_qt/bootmanager.cpp index a040e75c1..cf07e65cc 100644 --- a/src/citra_qt/bootmanager.cpp +++ b/src/citra_qt/bootmanager.cpp @@ -278,6 +278,31 @@ void GRenderWindow::keyReleaseEvent(QKeyEvent* event) Service::HID::PadUpdateComplete(); } +void GRenderWindow::mousePressEvent(QMouseEvent *event) +{ + if (event->button() == Qt::LeftButton) { + auto pos = event->pos(); + EmuWindow::TouchPressed(GetFramebufferLayout(), static_cast<u16>(pos.x()), + static_cast<u16>(pos.y())); + } +} + +void GRenderWindow::mouseMoveEvent(QMouseEvent *event) +{ + auto pos = event->pos(); + EmuWindow::TouchMoved(GetFramebufferLayout(), static_cast<u16>(pos.x()), + static_cast<u16>(pos.y())); +} + +void GRenderWindow::mouseReleaseEvent(QMouseEvent *event) +{ + if (event->button() == Qt::LeftButton) { + auto pos = event->pos(); + EmuWindow::TouchReleased(GetFramebufferLayout(), static_cast<u16>(pos.x()), + static_cast<u16>(pos.y())); + } +} + void GRenderWindow::ReloadSetKeymaps() { KeyMap::SetKeyMapping({Settings::values.pad_a_key, keyboard_id}, Service::HID::PAD_A); diff --git a/src/citra_qt/bootmanager.h b/src/citra_qt/bootmanager.h index a55db682a..288da45a1 100644 --- a/src/citra_qt/bootmanager.h +++ b/src/citra_qt/bootmanager.h @@ -121,6 +121,10 @@ public: void keyPressEvent(QKeyEvent* event) override; void keyReleaseEvent(QKeyEvent* event) override; + void mousePressEvent(QMouseEvent *event) override; + void mouseMoveEvent(QMouseEvent *event) override; + void mouseReleaseEvent(QMouseEvent *event) override; + void ReloadSetKeymaps() override; void OnClientAreaResized(unsigned width, unsigned height); |