qtmobileextensions/examples/keycaptureex/keycapturetestapp.h
changeset 15 1f895d8a5b2b
parent 4 90517678cc4f
child 27 6bfad47013df
equal deleted inserted replaced
14:6fbed849b4f4 15:1f895d8a5b2b
    22 #ifndef KeyCaptureTestApp_H
    22 #ifndef KeyCaptureTestApp_H
    23 #define KEYCAPTUREMAINWINDOW_H
    23 #define KEYCAPTUREMAINWINDOW_H
    24 
    24 
    25 #include <QMainWindow>
    25 #include <QMainWindow>
    26 #include <QMap>
    26 #include <QMap>
    27 #include <xqkeycapture.h>
    27 #include <XQKeyCapture>
       
    28 
       
    29 #include "mapping.h"
    28 
    30 
    29 class QPlainTextEdit;
    31 class QPlainTextEdit;
    30 class QAction;
    32 class QAction;
    31 class QWidget;
    33 class QWidget;
    32 class QMenu;
    34 class QMenu;
    33 class XqKeyCapture;
       
    34 class CaptureRequest;
    35 class CaptureRequest;
    35 
       
    36 
    36 
    37 class KeyCaptureTestApp : public QMainWindow
    37 class KeyCaptureTestApp : public QMainWindow
    38 {
    38 {
    39 Q_OBJECT
    39 Q_OBJECT
    40 public:
    40 public:
    45     bool event(QEvent *event);    
    45     bool event(QEvent *event);    
    46     bool eventFilter(QObject *, QEvent *);
    46     bool eventFilter(QObject *, QEvent *);
    47 public slots:
    47 public slots:
    48     void triggered(QAction* aAction);
    48     void triggered(QAction* aAction);
    49 	void cleanLog();
    49 	void cleanLog();
       
    50 	
       
    51 	void enableRemBasic(bool);
       
    52     void enableRemCallHandlingEx(bool);
       
    53     void enableRemoteExtEvents(bool);
       
    54 	
       
    55     void remoteAll(bool enable);
       
    56     void remoteNone(bool enable);
       
    57 
    50 private:
    58 private:
    51     void procesAction(CaptureRequest request);
    59     void procesAction(CaptureRequest request);
    52     void processEvent(QEvent *event);
    60     void processEvent(QEvent *event);
    53 private:	
    61 private:	
    54     QPlainTextEdit *mTextArea;
    62     QPlainTextEdit *mTextArea;
    55 
    63 
    56     XqKeyCapture *mKeyCapture;
    64     XQKeyCapture *mKeyCapture;
    57     
    65     
    58     QMap<QString, long> mKeysMap;
    66     QAction *toggleRemoteBasic;
       
    67     QAction *toggleRemoteCallHandlingEx;
       
    68     QAction *toggleRemoteExtEvents;
    59     
    69     
       
    70     QAction *remoteAllOn;
       
    71     QAction *remoteAllOff;
       
    72     
       
    73     QMap<QString, Qt::Key> mKeysMap;
    60     QMenu* mKeysMenu;
    74     QMenu* mKeysMenu;
    61     
    75     
    62     QMap<QString, XqKeyCapture::LongFlags> mLongFlagsMap;
    76     QMap<QString, XQKeyCapture::LongFlags> mLongFlagsMap;
    63     QMenu* mLongFlagsMenu;
    77     QMenu* mLongFlagsMenu;
    64     
    78   
       
    79     Mapping *mappingPtr;
    65 };
    80 };
    66 
    81 
    67 
       
    68 class CaptureRequest
       
    69 {
       
    70 public:
       
    71     CaptureRequest();
       
    72     ~CaptureRequest();
       
    73     
       
    74     enum RequestType {
       
    75         RequestTypeUndefined =-1,
       
    76         RequestTypeKey,
       
    77         RequestTypeLongKey,
       
    78         RequestTypeKeyUpAndDowns,
       
    79         RequestTypeCancelKey,
       
    80         RequestTypeCancelLongKey,
       
    81         RequestTypeCancelKeyUpAndDowns        
       
    82     };
       
    83     
       
    84     bool setType(QAction* action);
       
    85     bool setKey(QAction* action, QMap<QString, long> *map);
       
    86     bool setLongFlags(QAction* action, QMap<QString, XqKeyCapture::LongFlags> *map);
       
    87     
       
    88     QString toString();
       
    89 public:
       
    90     RequestType mRequestType;
       
    91     //Qt::Key mKey;    
       
    92     long mKey;
       
    93     bool isQtKey;
       
    94     Qt::KeyboardModifier mModifiersMap;
       
    95     Qt::KeyboardModifier mModifier;
       
    96     XqKeyCapture::LongFlags mLongFlags;
       
    97 };
       
    98 #endif // KEYCAPTUREMAINWINDOW_H
    82 #endif // KEYCAPTUREMAINWINDOW_H