Handle keyboard in QML

This commit is contained in:
2020-06-23 16:29:36 -06:00
parent af761ca337
commit 82ff240cfd
5 changed files with 80 additions and 33 deletions

View File

@@ -16,7 +16,8 @@ class MagnumItem : public QQuickFramebufferObject {
Q_OBJECT
Q_PROPERTY(qreal t READ t WRITE setT NOTIFY tChanged)
Q_PROPERTY(qreal hue READ hue WRITE setHue NOTIFY hueChanged)
Q_PROPERTY(qreal count READ count WRITE setCount NOTIFY countChanged)
Q_PROPERTY(qint8 count READ count WRITE setCount NOTIFY countChanged)
Q_PROPERTY(qreal lagging READ lagging WRITE setLagging NOTIFY laggingChanged)
public:
MagnumItem();
Renderer *createRenderer() const override;
@@ -30,15 +31,17 @@ public:
inline qint8 count() const { return m_count; }
void setCount(qint8 count);
inline qreal lagging() const { return m_lagging; }
void setLagging(qreal lagging);
signals:
void tChanged();
void hueChanged();
void countChanged();
void laggingChanged();
protected:
void keyPressEvent(QKeyEvent *evt) override;
void mousePressEvent(QMouseEvent *evt) override;
void mouseReleaseEvent(QMouseEvent *evt) override;
void mouseMoveEvent(QMouseEvent *evt) override;
void wheelEvent(QWheelEvent *evt) override;
@@ -48,6 +51,7 @@ private:
qreal m_t;
qreal m_hue;
qint8 m_count;
qreal m_lagging;
MagnumRenderer *m_renderer;
};