aboutsummaryrefslogtreecommitdiffstats
path: root/src/gamepad/qgamepad.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gamepad/qgamepad.cpp')
-rw-r--r--src/gamepad/qgamepad.cpp667
1 files changed, 374 insertions, 293 deletions
diff --git a/src/gamepad/qgamepad.cpp b/src/gamepad/qgamepad.cpp
index 9590c6e..399e801 100644
--- a/src/gamepad/qgamepad.cpp
+++ b/src/gamepad/qgamepad.cpp
@@ -36,8 +36,315 @@
#include "qgamepad.h"
+#include <private/qobject_p.h>
+
QT_BEGIN_NAMESPACE
+class QGamepadPrivate : public QObjectPrivate
+{
+ Q_DECLARE_PUBLIC(QGamepad)
+
+public:
+ QGamepadPrivate(int deviceId)
+ : deviceId(deviceId)
+ , connected(false)
+ , axisLeftX(0.0)
+ , axisLeftY(0.0)
+ , axisRightX(0.0)
+ , axisRightY(0.0)
+ , buttonA(false)
+ , buttonB(false)
+ , buttonX(false)
+ , buttonY(false)
+ , buttonL1(false)
+ , buttonR1(false)
+ , buttonL2(0.0)
+ , buttonR2(0.0)
+ , buttonSelect(false)
+ , buttonStart(false)
+ , buttonL3(false)
+ , buttonR3(false)
+ , buttonUp(false)
+ , buttonDown(false)
+ , buttonLeft(false)
+ , buttonRight(false)
+ , buttonCenter(false)
+ , buttonGuide(false)
+ {
+ }
+
+ QGamepadManager *gamepadManager;
+
+ int deviceId;
+ bool connected;
+ QString name;
+ double axisLeftX;
+ double axisLeftY;
+ double axisRightX;
+ double axisRightY;
+ bool buttonA;
+ bool buttonB;
+ bool buttonX;
+ bool buttonY;
+ bool buttonL1;
+ bool buttonR1;
+ double buttonL2;
+ double buttonR2;
+ bool buttonSelect;
+ bool buttonStart;
+ bool buttonL3;
+ bool buttonR3;
+ bool buttonUp;
+ bool buttonDown;
+ bool buttonLeft;
+ bool buttonRight;
+ bool buttonCenter;
+ bool buttonGuide;
+
+ void setConnected(bool isConnected);
+
+ void _q_handleGamepadConnected(int id);
+ void _q_handleGamepadDisconnected(int id);
+ void _q_handleGamepadAxisEvent(int id, QGamepadManager::GamepadAxis axis, double value);
+ void _q_handleGamepadButtonPressEvent(int id, QGamepadManager::GamepadButton button, double value);
+ void _q_handleGamepadButtonReleaseEvent(int id, QGamepadManager::GamepadButton button);
+};
+
+void QGamepadPrivate::setConnected(bool isConnected)
+{
+ Q_Q(QGamepad);
+ if (connected != isConnected) {
+ connected = isConnected;
+ emit q->connectedChanged(connected);
+ }
+}
+
+/*!
+ * \internal
+ */\
+void QGamepadPrivate::_q_handleGamepadConnected(int id)
+{
+ if (id == deviceId) {
+ setConnected(true);
+ }
+}
+
+/*!
+ * \internal
+ */\
+void QGamepadPrivate::_q_handleGamepadDisconnected(int id)
+{
+ if (id == deviceId) {
+ setConnected(false);
+ }
+}
+
+/*!
+ * \internal
+ */\
+void QGamepadPrivate::_q_handleGamepadAxisEvent(int id, QGamepadManager::GamepadAxis axis, double value)
+{
+ Q_Q(QGamepad);
+ if (id != deviceId)
+ return;
+
+ switch (axis) {
+ case QGamepadManager::AxisLeftX:
+ axisLeftX = value;
+ emit q->axisLeftXChanged(value);
+ break;
+ case QGamepadManager::AxisLeftY:
+ axisLeftY = value;
+ emit q->axisLeftYChanged(value);
+ break;
+ case QGamepadManager::AxisRightX:
+ axisRightX = value;
+ emit q->axisRightXChanged(value);
+ break;
+ case QGamepadManager::AxisRightY:
+ axisRightY = value;
+ emit q->axisRightYChanged(value);
+ break;
+ default:
+ break;
+ }
+}
+
+/*!
+ * \internal
+ */\
+void QGamepadPrivate::_q_handleGamepadButtonPressEvent(int id, QGamepadManager::GamepadButton button, double value)
+{
+ Q_Q(QGamepad);
+ if (id != deviceId)
+ return;
+
+ switch (button) {
+ case QGamepadManager::ButtonA:
+ buttonA = true;
+ emit q->buttonAChanged(true);
+ break;
+ case QGamepadManager::ButtonB:
+ buttonB = true;
+ emit q->buttonBChanged(true);
+ break;
+ case QGamepadManager::ButtonX:
+ buttonX = true;
+ emit q->buttonXChanged(true);
+ break;
+ case QGamepadManager::ButtonY:
+ buttonY = true;
+ emit q->buttonYChanged(true);
+ break;
+ case QGamepadManager::ButtonL1:
+ buttonL1 = true;
+ emit q->buttonL1Changed(true);
+ break;
+ case QGamepadManager::ButtonR1:
+ buttonR1 = true;
+ emit q->buttonR1Changed(true);
+ break;
+ case QGamepadManager::ButtonL2:
+ buttonL2 = value;
+ emit q->buttonL2Changed(value);
+ break;
+ case QGamepadManager::ButtonR2:
+ buttonR2 = value;
+ emit q->buttonR2Changed(value);
+ break;
+ case QGamepadManager::ButtonL3:
+ buttonL3 = true;
+ emit q->buttonL3Changed(true);
+ break;
+ case QGamepadManager::ButtonR3:
+ buttonR3 = true;
+ emit q->buttonR3Changed(true);
+ break;
+ case QGamepadManager::ButtonSelect:
+ buttonSelect = true;
+ emit q->buttonSelectChanged(true);
+ break;
+ case QGamepadManager::ButtonStart:
+ buttonStart = true;
+ emit q->buttonStartChanged(true);
+ break;
+ case QGamepadManager::ButtonUp:
+ buttonUp = true;
+ emit q->buttonUpChanged(true);
+ break;
+ case QGamepadManager::ButtonDown:
+ buttonDown = true;
+ emit q->buttonDownChanged(true);
+ break;
+ case QGamepadManager::ButtonLeft:
+ buttonLeft = true;
+ emit q->buttonLeftChanged(true);
+ break;
+ case QGamepadManager::ButtonRight:
+ buttonRight = true;
+ emit q->buttonRightChanged(true);
+ break;
+ case QGamepadManager::ButtonCenter:
+ buttonCenter = true;
+ emit q->buttonCenterChanged(true);
+ break;
+ case QGamepadManager::ButtonGuide:
+ buttonGuide = true;
+ emit q->buttonGuideChanged(true);
+ break;
+ default:
+ break;
+ }
+
+}
+
+/*!
+ * \internal
+ */\
+void QGamepadPrivate::_q_handleGamepadButtonReleaseEvent(int id, QGamepadManager::GamepadButton button)
+{
+ Q_Q(QGamepad);
+ if (id != deviceId)
+ return;
+
+ switch (button) {
+ case QGamepadManager::ButtonA:
+ buttonA = false;
+ emit q->buttonAChanged(false);
+ break;
+ case QGamepadManager::ButtonB:
+ buttonB = false;
+ emit q->buttonBChanged(false);
+ break;
+ case QGamepadManager::ButtonX:
+ buttonX = false;
+ emit q->buttonXChanged(false);
+ break;
+ case QGamepadManager::ButtonY:
+ buttonY = false;
+ emit q->buttonYChanged(false);
+ break;
+ case QGamepadManager::ButtonL1:
+ buttonL1 = false;
+ emit q->buttonL1Changed(false);
+ break;
+ case QGamepadManager::ButtonR1:
+ buttonR1 = false;
+ emit q->buttonR1Changed(false);
+ break;
+ case QGamepadManager::ButtonL2:
+ buttonL2 = 0.0;
+ emit q->buttonL2Changed(0.0);
+ break;
+ case QGamepadManager::ButtonR2:
+ buttonR2 = 0.0;
+ emit q->buttonR2Changed(0.0);
+ break;
+ case QGamepadManager::ButtonL3:
+ buttonL3 = false;
+ emit q->buttonL3Changed(false);
+ break;
+ case QGamepadManager::ButtonR3:
+ buttonR3 = false;
+ emit q->buttonR3Changed(false);
+ break;
+ case QGamepadManager::ButtonSelect:
+ buttonSelect = false;
+ emit q->buttonSelectChanged(false);
+ break;
+ case QGamepadManager::ButtonStart:
+ buttonStart = false;
+ emit q->buttonStartChanged(false);
+ break;
+ case QGamepadManager::ButtonUp:
+ buttonUp = false;
+ emit q->buttonUpChanged(false);
+ break;
+ case QGamepadManager::ButtonDown:
+ buttonDown = false;
+ emit q->buttonDownChanged(false);
+ break;
+ case QGamepadManager::ButtonLeft:
+ buttonLeft = false;
+ emit q->buttonLeftChanged(false);
+ break;
+ case QGamepadManager::ButtonRight:
+ buttonRight = false;
+ emit q->buttonRightChanged(false);
+ break;
+ case QGamepadManager::ButtonCenter:
+ buttonCenter = false;
+ emit q->buttonCenterChanged(false);
+ break;
+ case QGamepadManager::ButtonGuide:
+ buttonGuide = false;
+ emit q->buttonGuideChanged(false);
+ break;
+ default:
+ break;
+ }
+}
+
/*!
\class QGamepad
\inmodule QtGamepad
@@ -51,40 +358,17 @@ QT_BEGIN_NAMESPACE
* Constructs a QGamepad with the given \a deviceId and \a parent.
*/
QGamepad::QGamepad(int deviceId, QObject *parent)
- : QObject(parent)
- , m_deviceId(deviceId)
- , m_connected(false)
- , m_axisLeftX(0.0)
- , m_axisLeftY(0.0)
- , m_axisRightX(0.0)
- , m_axisRightY(0.0)
- , m_buttonA(false)
- , m_buttonB(false)
- , m_buttonX(false)
- , m_buttonY(false)
- , m_buttonL1(false)
- , m_buttonR1(false)
- , m_buttonL2(0.0)
- , m_buttonR2(0.0)
- , m_buttonSelect(false)
- , m_buttonStart(false)
- , m_buttonL3(false)
- , m_buttonR3(false)
- , m_buttonUp(false)
- , m_buttonDown(false)
- , m_buttonLeft(false)
- , m_buttonRight(false)
- , m_buttonCenter(false)
- , m_buttonGuide(false)
-{
- m_gamepadManager = QGamepadManager::instance();
- connect(m_gamepadManager, SIGNAL(gamepadConnected(int)), this, SLOT(handleGamepadConnected(int)));
- connect(m_gamepadManager, SIGNAL(gamepadDisconnected(int)), this, SLOT(handleGamepadDisconnected(int)));
- connect(m_gamepadManager, SIGNAL(gamepadAxisEvent(int,QGamepadManager::GamepadAxis,double)), this, SLOT(handleGamepadAxisEvent(int,QGamepadManager::GamepadAxis,double)));
- connect(m_gamepadManager, SIGNAL(gamepadButtonPressEvent(int,QGamepadManager::GamepadButton,double)), this, SLOT(handleGamepadButtonPressEvent(int,QGamepadManager::GamepadButton,double)));
- connect(m_gamepadManager, SIGNAL(gamepadButtonReleaseEvent(int,QGamepadManager::GamepadButton)), this, SLOT(handleGamepadButtonReleaseEvent(int,QGamepadManager::GamepadButton)));
-
- setConnected(m_gamepadManager->isGamepadConnected(m_deviceId));
+ : QObject(*new QGamepadPrivate(deviceId), parent)
+{
+ Q_D(QGamepad);
+ d->gamepadManager = QGamepadManager::instance();
+ connect(d->gamepadManager, SIGNAL(gamepadConnected(int)), this, SLOT(_q_handleGamepadConnected(int)));
+ connect(d->gamepadManager, SIGNAL(gamepadDisconnected(int)), this, SLOT(_q_handleGamepadDisconnected(int)));
+ connect(d->gamepadManager, SIGNAL(gamepadAxisEvent(int,QGamepadManager::GamepadAxis,double)), this, SLOT(_q_handleGamepadAxisEvent(int,QGamepadManager::GamepadAxis,double)));
+ connect(d->gamepadManager, SIGNAL(gamepadButtonPressEvent(int,QGamepadManager::GamepadButton,double)), this, SLOT(_q_handleGamepadButtonPressEvent(int,QGamepadManager::GamepadButton,double)));
+ connect(d->gamepadManager, SIGNAL(gamepadButtonReleaseEvent(int,QGamepadManager::GamepadButton)), this, SLOT(_q_handleGamepadButtonReleaseEvent(int,QGamepadManager::GamepadButton)));
+
+ d->setConnected(d->gamepadManager->isGamepadConnected(deviceId));
}
/*!
@@ -104,7 +388,8 @@ QGamepad::~QGamepad()
*/
int QGamepad::deviceId() const
{
- return m_deviceId;
+ Q_D(const QGamepad);
+ return d->deviceId;
}
/*!
@@ -114,7 +399,8 @@ int QGamepad::deviceId() const
*/
bool QGamepad::isConnected() const
{
- return m_connected;
+ Q_D(const QGamepad);
+ return d->connected;
}
/*!
@@ -124,7 +410,8 @@ bool QGamepad::isConnected() const
*/
QString QGamepad::name() const
{
- return m_name;
+ Q_D(const QGamepad);
+ return d->name;
}
/*!
@@ -135,7 +422,8 @@ QString QGamepad::name() const
*/
double QGamepad::axisLeftX() const
{
- return m_axisLeftX;
+ Q_D(const QGamepad);
+ return d->axisLeftX;
}
/*!
@@ -146,7 +434,8 @@ double QGamepad::axisLeftX() const
*/
double QGamepad::axisLeftY() const
{
- return m_axisLeftY;
+ Q_D(const QGamepad);
+ return d->axisLeftY;
}
/*!
@@ -157,7 +446,8 @@ double QGamepad::axisLeftY() const
*/
double QGamepad::axisRightX() const
{
- return m_axisRightX;
+ Q_D(const QGamepad);
+ return d->axisRightX;
}
/*!
@@ -168,7 +458,8 @@ double QGamepad::axisRightX() const
*/
double QGamepad::axisRightY() const
{
- return m_axisRightY;
+ Q_D(const QGamepad);
+ return d->axisRightY;
}
/*!
@@ -179,7 +470,8 @@ double QGamepad::axisRightY() const
*/
bool QGamepad::buttonA() const
{
- return m_buttonA;
+ Q_D(const QGamepad);
+ return d->buttonA;
}
/*!
@@ -192,7 +484,8 @@ bool QGamepad::buttonA() const
*/
bool QGamepad::buttonB() const
{
- return m_buttonB;
+ Q_D(const QGamepad);
+ return d->buttonB;
}
/*!
@@ -203,7 +496,8 @@ bool QGamepad::buttonB() const
*/
bool QGamepad::buttonX() const
{
- return m_buttonX;
+ Q_D(const QGamepad);
+ return d->buttonX;
}
/*!
@@ -214,7 +508,8 @@ bool QGamepad::buttonX() const
*/
bool QGamepad::buttonY() const
{
- return m_buttonY;
+ Q_D(const QGamepad);
+ return d->buttonY;
}
/*!
@@ -225,7 +520,8 @@ bool QGamepad::buttonY() const
*/
bool QGamepad::buttonL1() const
{
- return m_buttonL1;
+ Q_D(const QGamepad);
+ return d->buttonL1;
}
/*!
@@ -236,7 +532,8 @@ bool QGamepad::buttonL1() const
*/
bool QGamepad::buttonR1() const
{
- return m_buttonR1;
+ Q_D(const QGamepad);
+ return d->buttonR1;
}
/*!
@@ -248,7 +545,8 @@ bool QGamepad::buttonR1() const
*/
double QGamepad::buttonL2() const
{
- return m_buttonL2;
+ Q_D(const QGamepad);
+ return d->buttonL2;
}
/*!
@@ -260,7 +558,8 @@ double QGamepad::buttonL2() const
*/
double QGamepad::buttonR2() const
{
- return m_buttonR2;
+ Q_D(const QGamepad);
+ return d->buttonR2;
}
/*!
@@ -271,7 +570,8 @@ double QGamepad::buttonR2() const
*/
bool QGamepad::buttonSelect() const
{
- return m_buttonSelect;
+ Q_D(const QGamepad);
+ return d->buttonSelect;
}
/*!
@@ -282,7 +582,8 @@ bool QGamepad::buttonSelect() const
*/
bool QGamepad::buttonStart() const
{
- return m_buttonStart;
+ Q_D(const QGamepad);
+ return d->buttonStart;
}
/*!
@@ -293,7 +594,8 @@ bool QGamepad::buttonStart() const
*/
bool QGamepad::buttonL3() const
{
- return m_buttonL3;
+ Q_D(const QGamepad);
+ return d->buttonL3;
}
/*!
@@ -304,7 +606,8 @@ bool QGamepad::buttonL3() const
*/
bool QGamepad::buttonR3() const
{
- return m_buttonR3;
+ Q_D(const QGamepad);
+ return d->buttonR3;
}
/*!
@@ -315,7 +618,8 @@ bool QGamepad::buttonR3() const
*/
bool QGamepad::buttonUp() const
{
- return m_buttonUp;
+ Q_D(const QGamepad);
+ return d->buttonUp;
}
/*!
@@ -326,7 +630,8 @@ bool QGamepad::buttonUp() const
*/
bool QGamepad::buttonDown() const
{
- return m_buttonDown;
+ Q_D(const QGamepad);
+ return d->buttonDown;
}
/*!
@@ -337,7 +642,8 @@ bool QGamepad::buttonDown() const
*/
bool QGamepad::buttonLeft() const
{
- return m_buttonLeft;
+ Q_D(const QGamepad);
+ return d->buttonLeft;
}
/*!
@@ -348,12 +654,14 @@ bool QGamepad::buttonLeft() const
*/
bool QGamepad::buttonRight() const
{
- return m_buttonRight;
+ Q_D(const QGamepad);
+ return d->buttonRight;
}
bool QGamepad::buttonCenter() const
{
- return m_buttonCenter;
+ Q_D(const QGamepad);
+ return d->buttonCenter;
}
/*!
@@ -366,247 +674,20 @@ bool QGamepad::buttonCenter() const
*/
bool QGamepad::buttonGuide() const
{
- return m_buttonGuide;
+ Q_D(const QGamepad);
+ return d->buttonGuide;
}
void QGamepad::setDeviceId(int number)
{
- if (m_deviceId != number) {
- m_deviceId = number;
+ Q_D(QGamepad);
+ if (d->deviceId != number) {
+ d->deviceId = number;
emit deviceIdChanged(number);
- setConnected(m_gamepadManager->isGamepadConnected(m_deviceId));
- }
-}
-
-void QGamepad::setConnected(bool isConnected)
-{
- if (m_connected != isConnected) {
- m_connected = isConnected;
- emit connectedChanged(m_connected);
- }
-}
-
-/*!
- * \internal
- */\
-void QGamepad::handleGamepadConnected(int deviceId)
-{
- if (deviceId == m_deviceId) {
- setConnected(true);
- }
-}
-
-/*!
- * \internal
- */\
-void QGamepad::handleGamepadDisconnected(int deviceId)
-{
- if (deviceId == m_deviceId) {
- setConnected(false);
- }
-}
-
-/*!
- * \internal
- */\
-void QGamepad::handleGamepadAxisEvent(int deviceId, QGamepadManager::GamepadAxis axis, double value)
-{
- if (deviceId != m_deviceId)
- return;
-
- switch (axis) {
- case QGamepadManager::AxisLeftX:
- m_axisLeftX = value;
- emit axisLeftXChanged(value);
- break;
- case QGamepadManager::AxisLeftY:
- m_axisLeftY = value;
- emit axisLeftYChanged(value);
- break;
- case QGamepadManager::AxisRightX:
- m_axisRightX = value;
- emit axisRightXChanged(value);
- break;
- case QGamepadManager::AxisRightY:
- m_axisRightY = value;
- emit axisRightYChanged(value);
- break;
- default:
- break;
- }
-}
-
-/*!
- * \internal
- */\
-void QGamepad::handleGamepadButtonPressEvent(int deviceId, QGamepadManager::GamepadButton button, double value)
-{
- if (deviceId != m_deviceId)
- return;
-
- switch (button) {
- case QGamepadManager::ButtonA:
- m_buttonA = true;
- emit buttonAChanged(true);
- break;
- case QGamepadManager::ButtonB:
- m_buttonB = true;
- emit buttonBChanged(true);
- break;
- case QGamepadManager::ButtonX:
- m_buttonX = true;
- emit buttonXChanged(true);
- break;
- case QGamepadManager::ButtonY:
- m_buttonY = true;
- emit buttonYChanged(true);
- break;
- case QGamepadManager::ButtonL1:
- m_buttonL1 = true;
- emit buttonL1Changed(true);
- break;
- case QGamepadManager::ButtonR1:
- m_buttonR1 = true;
- emit buttonR1Changed(true);
- break;
- case QGamepadManager::ButtonL2:
- m_buttonL2 = value;
- emit buttonL2Changed(value);
- break;
- case QGamepadManager::ButtonR2:
- m_buttonR2 = value;
- emit buttonR2Changed(value);
- break;
- case QGamepadManager::ButtonL3:
- m_buttonL3 = true;
- emit buttonL3Changed(true);
- break;
- case QGamepadManager::ButtonR3:
- m_buttonR3 = true;
- emit buttonR3Changed(true);
- break;
- case QGamepadManager::ButtonSelect:
- m_buttonSelect = true;
- emit buttonSelectChanged(true);
- break;
- case QGamepadManager::ButtonStart:
- m_buttonStart = true;
- emit buttonStartChanged(true);
- break;
- case QGamepadManager::ButtonUp:
- m_buttonUp = true;
- emit buttonUpChanged(true);
- break;
- case QGamepadManager::ButtonDown:
- m_buttonDown = true;
- emit buttonDownChanged(true);
- break;
- case QGamepadManager::ButtonLeft:
- m_buttonLeft = true;
- emit buttonLeftChanged(true);
- break;
- case QGamepadManager::ButtonRight:
- m_buttonRight = true;
- emit buttonRightChanged(true);
- break;
- case QGamepadManager::ButtonCenter:
- m_buttonCenter = true;
- emit buttonCenterChanged(true);
- break;
- case QGamepadManager::ButtonGuide:
- m_buttonGuide = true;
- emit buttonGuideChanged(true);
- break;
- default:
- break;
- }
-
-}
-
-/*!
- * \internal
- */\
-void QGamepad::handleGamepadButtonReleaseEvent(int deviceId, QGamepadManager::GamepadButton button)
-{
- if (deviceId != m_deviceId)
- return;
-
- switch (button) {
- case QGamepadManager::ButtonA:
- m_buttonA = false;
- emit buttonAChanged(false);
- break;
- case QGamepadManager::ButtonB:
- m_buttonB = false;
- emit buttonBChanged(false);
- break;
- case QGamepadManager::ButtonX:
- m_buttonX = false;
- emit buttonXChanged(false);
- break;
- case QGamepadManager::ButtonY:
- m_buttonY = false;
- emit buttonYChanged(false);
- break;
- case QGamepadManager::ButtonL1:
- m_buttonL1 = false;
- emit buttonL1Changed(false);
- break;
- case QGamepadManager::ButtonR1:
- m_buttonR1 = false;
- emit buttonR1Changed(false);
- break;
- case QGamepadManager::ButtonL2:
- m_buttonL2 = 0.0;
- emit buttonL2Changed(0.0);
- break;
- case QGamepadManager::ButtonR2:
- m_buttonR2 = 0.0;
- emit buttonR2Changed(0.0);
- break;
- case QGamepadManager::ButtonL3:
- m_buttonL3 = false;
- emit buttonL3Changed(false);
- break;
- case QGamepadManager::ButtonR3:
- m_buttonR3 = false;
- emit buttonR3Changed(false);
- break;
- case QGamepadManager::ButtonSelect:
- m_buttonSelect = false;
- emit buttonSelectChanged(false);
- break;
- case QGamepadManager::ButtonStart:
- m_buttonStart = false;
- emit buttonStartChanged(false);
- break;
- case QGamepadManager::ButtonUp:
- m_buttonUp = false;
- emit buttonUpChanged(false);
- break;
- case QGamepadManager::ButtonDown:
- m_buttonDown = false;
- emit buttonDownChanged(false);
- break;
- case QGamepadManager::ButtonLeft:
- m_buttonLeft = false;
- emit buttonLeftChanged(false);
- break;
- case QGamepadManager::ButtonRight:
- m_buttonRight = false;
- emit buttonRightChanged(false);
- break;
- case QGamepadManager::ButtonCenter:
- m_buttonCenter = false;
- emit buttonCenterChanged(false);
- break;
- case QGamepadManager::ButtonGuide:
- m_buttonGuide = false;
- emit buttonGuideChanged(false);
- break;
- default:
- break;
+ d->setConnected(d->gamepadManager->isGamepadConnected(d->deviceId));
}
}
QT_END_NAMESPACE
+
+#include "moc_qgamepad.cpp"