examples/sensors/panoramaWithSense/keycontroller.cpp
changeset 5 603d3f8b6302
equal deleted inserted replaced
3:e4ebb16b39ea 5:603d3f8b6302
       
     1 
       
     2 #include "keycontroller.h"
       
     3 
       
     4 KeyController::KeyController(): TimedController(), m_step(5){}
       
     5 
       
     6 KeyController::~KeyController(){}
       
     7 
       
     8 
       
     9 void KeyController::keyPressEvent(QKeyEvent *e)
       
    10 {
       
    11     int code = e->key();
       
    12     handleKeyPress(code);
       
    13     m_step = m_exCode==code && m_exCode > 0? m_step+2 : 5;
       
    14 }
       
    15 
       
    16 
       
    17 void KeyController::updateCoordinates() { handleKeyPress(m_exCode);}
       
    18 
       
    19 
       
    20 void KeyController::handleKeyPress(int code){
       
    21     switch (code){
       
    22     case Qt::Key_Right:
       
    23         m_x+=m_step;
       
    24         break;
       
    25     case Qt::Key_Left:
       
    26         m_x-=m_step;
       
    27         break;
       
    28     case Qt::Key_Up:
       
    29         m_y-=m_step;
       
    30         break;
       
    31     case Qt::Key_Down:
       
    32         m_y+=m_step;
       
    33         break;
       
    34     default:
       
    35         m_exCode = 0;
       
    36         return;
       
    37     }
       
    38     m_exCode = code;
       
    39 }
       
    40 
       
    41