qtmobility/examples/sensors/panorama/keycontroller.cpp
changeset 11 06b8e2af4411
child 14 6fbed849b4f4
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qtmobility/examples/sensors/panorama/keycontroller.cpp	Fri Jun 11 14:26:25 2010 +0300
@@ -0,0 +1,39 @@
+
+#include "keycontroller.h"
+#include "view.h"
+
+KeyController::KeyController(): TimedController(){}
+
+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;
+}
+
+