Esc closes game

This commit is contained in:
2022-01-17 13:03:13 +01:00
parent f798b13079
commit 77e7e18c26
3 changed files with 29 additions and 3 deletions

View File

@ -138,14 +138,17 @@ void GlGameWindow::keyPressEvent(QKeyEvent *event)
{
QWindow::keyPressEvent(event);
qDebug() << (event->key() == Qt::Key_Escape);
switch (event->key())
{
case Qt::Key_Escape:
close();
break;
}
}
void GlGameWindow::keyReleaseEvent(QKeyEvent *event)
{
QWindow::keyReleaseEvent(event);
qDebug() << (event->key() == Qt::Key_Escape);
}
void GlGameWindow::exposeEvent(QExposeEvent *event)

View File

@ -1,5 +1,7 @@
#include "vulkangamewindow.h"
#include <QKeyEvent>
#include "vulkangamerenderer.h"
VulkanGameWindow::VulkanGameWindow(const ProjectContainer &project, const float &rotation, QWindow *parent) :
@ -18,3 +20,20 @@ QVulkanWindowRenderer *VulkanGameWindow::createRenderer()
{
return new VulkanGameRenderer{m_project, m_rotation, this, true}; // try MSAA, when available
}
void VulkanGameWindow::keyPressEvent(QKeyEvent *event)
{
QVulkanWindow::keyPressEvent(event);
switch (event->key())
{
case Qt::Key_Escape:
close();
break;
}
}
void VulkanGameWindow::keyReleaseEvent(QKeyEvent *event)
{
QVulkanWindow::keyReleaseEvent(event);
}

View File

@ -12,6 +12,10 @@ public:
QVulkanWindowRenderer *createRenderer() override;
protected:
void keyPressEvent(QKeyEvent *event) override;
void keyReleaseEvent(QKeyEvent *event) override;
private:
const ProjectContainer &m_project;
const float &m_rotation;