examples/sensors/panoramaWithSense/keycontroller.cpp
changeset 5 603d3f8b6302
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/sensors/panoramaWithSense/keycontroller.cpp	Mon Oct 04 01:37:06 2010 +0300
@@ -0,0 +1,41 @@
+
+#include "keycontroller.h"
+
+KeyController::KeyController(): TimedController(), m_step(5){}
+
+KeyController::~KeyController(){}
+
+
+void KeyController::keyPressEvent(QKeyEvent *e)
+{
+    int code = e->key();
+    handleKeyPress(code);
+    m_step = m_exCode==code && m_exCode > 0? m_step+2 : 5;
+}
+
+
+void KeyController::updateCoordinates() { handleKeyPress(m_exCode);}
+
+
+void KeyController::handleKeyPress(int code){
+    switch (code){
+    case Qt::Key_Right:
+        m_x+=m_step;
+        break;
+    case Qt::Key_Left:
+        m_x-=m_step;
+        break;
+    case Qt::Key_Up:
+        m_y-=m_step;
+        break;
+    case Qt::Key_Down:
+        m_y+=m_step;
+        break;
+    default:
+        m_exCode = 0;
+        return;
+    }
+    m_exCode = code;
+}
+
+