qtmobileextensions/src/keycapture/xqkeycapture.cpp
changeset 14 6fbed849b4f4
parent 5 453da2cfceef
child 15 1f895d8a5b2b
--- a/qtmobileextensions/src/keycapture/xqkeycapture.cpp	Fri Jun 11 14:26:25 2010 +0300
+++ b/qtmobileextensions/src/keycapture/xqkeycapture.cpp	Wed Jun 23 19:08:38 2010 +0300
@@ -27,6 +27,453 @@
 /*!
  Constructor.
 */
+XQKeyCapture::XQKeyCapture() :
+    d(new KeyCapturePrivate())
+{
+
+}
+
+/*!
+ Destructor.
+*/
+XQKeyCapture::~XQKeyCapture()
+{
+    delete d;
+}
+
+/*!
+ Initializes remote key handler(s) given by parameter.    
+ \param flags  Flag representing supported remote handler. Flags can be ORed for simulteanous initializations.  
+ */
+bool XQKeyCapture::captureRemoteKeys(CapturingFlags flags)
+{
+    return d->initRemote(flags);
+}
+ 
+/*!
+ Cancels remote key handler(s) given by parameter.   
+ \param flags  Flag representing supported remote interfaces. Flags can be ORed for simulteanous cancellations.  
+ */
+bool XQKeyCapture::cancelCaptureRemoteKeys(CapturingFlags flags)
+{
+    return d->closeRemote(flags);
+}
+
+/*!
+ Selects a given key for capturing key pressing. Requires a Qt key code.
+ \param aKey A Qt key.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureKey(Qt::Key aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier)
+{
+    return d->captureKey(aKey, aModifiersMask, aModifier);
+}
+
+/*!
+ Selects a given key for capturing key pressing. Requires a S60 key code (TKeyCode).
+ \param aKey A S60 key code (TKeyCode).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureKey(TUint aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier)
+{
+    return d->captureKey(aKey, aModifiersMask, aModifier);
+}
+
+/*!
+ Selects a given key for capturing long pressing. Requires a Qt key code.
+ \param aKey A Qt key.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureLongKey(Qt::Key aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier,
+    XQKeyCapture::LongFlags aLongType)
+{
+    return d->captureLongKey(aKey, aModifiersMask, aModifier, aLongType);
+}
+
+/*!
+ Selects a given key for capturing long pressing. Requires a S60 key code (TKeyCode).
+ \param aKey A S60 key code (TKeyCode).
+ \param aModifiersMap
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureLongKey(TUint aKey,
+    Qt::KeyboardModifiers aModifiersMap, Qt::KeyboardModifiers aModifier,
+    XQKeyCapture::LongFlags aLongType)
+{
+    return d->captureLongKey(aKey, aModifiersMap, aModifier, aLongType);
+}
+
+/*!
+ Selects a given key for capturing pressing up and down. Requires a Qt key code.
+ \param aKey A Qt key.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureKeyUpAndDowns(Qt::Key aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier)
+{
+    return d->captureKeyUpAndDowns(aKey, aModifiersMask, aModifier);
+}
+
+/*!
+ Selects a given key for capturing pressing up and down. Requires a S60 key scan code (TStdScanCode).
+ \param aKey A S60 key scan code (TStdScanCode).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureKeyUpAndDowns(TUint aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier)
+{
+    return d->captureKeyUpAndDowns(aKey, aModifiersMask, aModifier);
+}
+
+/*!
+ Deselects a given key from key capturing. Requires a Qt key code.
+ \param aKey A Qt key.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureKey(Qt::Key aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier)
+{
+    return d->cancelCaptureKey(aKey, aModifiersMask, aModifier);
+}
+
+/*!
+ Deselects a given key from key capturing. Requires a S60 key code (TKeyCode).
+ \param aKey A S60 key code (TKeyCode).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureKey(TUint aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier)
+{
+    return d->cancelCaptureKey(aKey, aModifiersMask, aModifier);
+}
+
+/*!
+ Deselects a given key from capturing long pressing. Requires a Qt key code.
+ \param aKey A Qt key.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureLongKey(Qt::Key aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier,
+    XQKeyCapture::LongFlags aLongType)
+{
+    return d->cancelCaptureLongKey(aKey, aModifiersMask, aModifier,
+        aLongType);
+}
+
+/*!
+ Deselects a given key from capturing long pressing. Requires a S60 key code (TKeyCode).
+ \param aKey A S60 key code (TKeyCode).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureLongKey(TUint aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier,
+    XQKeyCapture::LongFlags aLongType)
+{
+    return d->cancelCaptureLongKey(aKey, aModifiersMask, aModifier,
+        aLongType);
+}
+
+/*!
+ Deselects a given key from capturing pressing up and down. Requires a Qt key code.
+ \param aKey A Qt key.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureKeyUpAndDowns(Qt::Key aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier)
+{
+    return d->cancelCaptureKeyUpAndDowns(aKey, aModifiersMask, aModifier);
+}
+
+/*!
+ Deselects a given key from capturing pressing up and down. Requires a S60 key scan code (TStdScanCode).
+ \param aKey A S60 key scan code (TStdScanCode).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureKeyUpAndDowns(TUint aKey,
+    Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier)
+{
+    return d->cancelCaptureKeyUpAndDowns(aKey, aModifiersMask, aModifier);
+}
+
+/*!
+ Returns latest error string.
+ \retval Latest error string.
+ */
+QString XQKeyCapture::errorString() const
+{
+    return d->errorString();
+}
+
+/*!
+ Returns latest error id.
+ \retval Latest error id.
+ */
+int XQKeyCapture::errorId() const
+{
+    return d->errorId();
+}
+
+/*!
+ Selects a given keys for capturing key pressing. Requires a Qt key code.
+ \param list A Qt keys list.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureKey(XQKeyCaptureKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier)
+{
+    Qt::Key key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->captureKey(key, aModifiersMask, aModifier);
+    }
+    return result;
+}
+
+/*!
+ Selects a given keys for capturing key pressing. Requires a S60 key code (TKeyCode).
+ \param list A S60 list of keys (TKeyCode codes).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureKey(XQKeyCaptureNativeKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier)
+{
+    TUint key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->captureKey(key, aModifiersMask, aModifier);
+    }
+    return result;
+}
+
+/*!
+ Selects a given keys for capturing long pressing. Requires a Qt key code.
+ \param aKey A Qt  list of keys.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureLongKey(XQKeyCaptureKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier,
+        XQKeyCapture::LongFlags aLongType)
+{
+    Qt::Key key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->captureLongKey(key, aModifiersMask, aModifier, aLongType);
+    }
+    return result;
+}
+
+/*!
+ Selects a given keys for capturing long pressing. Requires a S60 key code (TKeyCode).
+ \param list A S60 list of keys (TKeyCode codes).
+ \param aModifiersMap
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+ bool XQKeyCapture::captureLongKey(XQKeyCaptureNativeKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier,
+        XQKeyCapture::LongFlags aLongType)
+{
+    TUint key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->captureLongKey(key, aModifiersMask, aModifier, aLongType);
+    }
+    return result;
+}
+
+/*!
+ Selects a given keys for capturing pressing up and down. Requires a Qt key code.
+ \param list A Qt list of keys.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureKeyUpAndDowns(XQKeyCaptureKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier)
+{
+    Qt::Key key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->captureKeyUpAndDowns(key, aModifiersMask, aModifier);
+    }
+    return result;
+}
+
+/*!
+ Selects a given keys for capturing pressing up and down. Requires a S60 key scan code (TStdScanCode).
+ \param list A list of S60 key scan codes (TStdScanCode).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully added to the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::captureKeyUpAndDowns(XQKeyCaptureNativeKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier)
+{
+    TUint key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->captureKeyUpAndDowns(key, aModifiersMask, aModifier);
+    }
+    return result;
+}
+
+/*!
+ Deselects a given list of keys from key capturing. Requires a Qt key code.
+ \param list  A Qt list of keys.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureKey(XQKeyCaptureKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier)
+{
+    Qt::Key key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->cancelCaptureKey(key, aModifiersMask, aModifier);
+    }
+    return result;
+}
+
+/*!
+ Deselects a given list of keys from key capturing. Requires a S60 key code (TKeyCode).
+ \param list  A S60 list of key codes (TKeyCode).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureKey(XQKeyCaptureNativeKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier)
+{
+    TUint key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->cancelCaptureKey(key, aModifiersMask, aModifier);
+    }
+    return result;
+}
+
+/*!
+ Deselects a given list of keys from capturing long pressing. Requires a Qt key code.
+ \param list A list of Qt keys.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureLongKey(XQKeyCaptureKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier,
+        XQKeyCapture::LongFlags aLongType)
+{
+    Qt::Key key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->cancelCaptureLongKey(key, aModifiersMask, aModifier, aLongType);
+    }
+    return result;
+}
+
+/*!
+ Deselects a given key from capturing long pressing. Requires a S60 key code (TKeyCode).
+ \paramlist A list of S60 key codes (TKeyCode).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureLongKey(XQKeyCaptureNativeKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier,
+        XQKeyCapture::LongFlags aLongType)
+{
+    TUint key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->cancelCaptureLongKey(key, aModifiersMask, aModifier, aLongType);
+    }
+    return result;
+}
+
+/*!
+ Deselects a list of given keys from capturing pressing up and down. Requires a Qt key codes.
+ \param list A list of Qt keys.
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+bool XQKeyCapture::cancelCaptureKeyUpAndDowns(XQKeyCaptureKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier)
+{
+    Qt::Key key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->cancelCaptureKeyUpAndDowns(key, aModifiersMask, aModifier);
+    }
+    return result;
+}
+
+/*!
+ Deselects a given list of keys from capturing pressing up and down. Requires a S60 key scan code (TStdScanCode).
+ \param aKey A S60 key scan code (TStdScanCode).
+ \param aModifiersMask
+ \param aModifier 
+ \retval Returns true if aKey was succesfully removed from the capturing system, otherwise returns false.
+ */
+ bool XQKeyCapture::cancelCaptureKeyUpAndDowns(XQKeyCaptureNativeKeyList list, 
+        Qt::KeyboardModifiers aModifiersMask,
+        Qt::KeyboardModifiers aModifier)
+{
+    TUint key;
+    bool result = true;
+    foreach (key, list) {
+        bool result = result & d->cancelCaptureKeyUpAndDowns(key, aModifiersMask, aModifier);
+    }
+    return result;
+}
+
+/*!
+ Constructor.
+*/
 XqKeyCapture::XqKeyCapture() :
     d(new KeyCapturePrivate())
 {
@@ -78,7 +525,7 @@
     Qt::KeyboardModifiers aModifiersMask, Qt::KeyboardModifiers aModifier,
     XqKeyCapture::LongFlags aLongType)
 {
-    return d->captureLongKey(aKey, aModifiersMask, aModifier, aLongType);
+    return d->captureLongKey(aKey, aModifiersMask, aModifier, static_cast<XQKeyCapture::LongFlags>(aLongType));
 }
 
 /*!
@@ -92,7 +539,7 @@
     Qt::KeyboardModifiers aModifiersMap, Qt::KeyboardModifiers aModifier,
     XqKeyCapture::LongFlags aLongType)
 {
-    return d->captureLongKey(aKey, aModifiersMap, aModifier, aLongType);
+    return d->captureLongKey(aKey, aModifiersMap, aModifier, static_cast<XQKeyCapture::LongFlags>(aLongType));
 }
 
 /*!
@@ -159,7 +606,7 @@
     XqKeyCapture::LongFlags aLongType)
 {
     return d->cancelCaptureLongKey(aKey, aModifiersMask, aModifier,
-        aLongType);
+        static_cast<XQKeyCapture::LongFlags>(aLongType));
 }
 
 /*!
@@ -174,7 +621,7 @@
     XqKeyCapture::LongFlags aLongType)
 {
     return d->cancelCaptureLongKey(aKey, aModifiersMask, aModifier,
-        aLongType);
+        static_cast<XQKeyCapture::LongFlags>(aLongType));
 }
 
 /*!
@@ -274,7 +721,7 @@
     Qt::Key key;
     bool result = true;
     foreach (key, list) {
-        bool result = result & d->captureLongKey(key, aModifiersMask, aModifier, aLongType);
+        bool result = result & d->captureLongKey(key, aModifiersMask, aModifier, static_cast<XQKeyCapture::LongFlags>(aLongType));
     }
     return result;
 }
@@ -294,7 +741,7 @@
     TUint key;
     bool result = true;
     foreach (key, list) {
-        bool result = result & d->captureLongKey(key, aModifiersMask, aModifier, aLongType);
+        bool result = result & d->captureLongKey(key, aModifiersMask, aModifier, static_cast<XQKeyCapture::LongFlags>(aLongType));
     }
     return result;
 }
@@ -390,7 +837,7 @@
     Qt::Key key;
     bool result = true;
     foreach (key, list) {
-        bool result = result & d->cancelCaptureLongKey(key, aModifiersMask, aModifier, aLongType);
+        bool result = result & d->cancelCaptureLongKey(key, aModifiersMask, aModifier, static_cast<XQKeyCapture::LongFlags>(aLongType));
     }
     return result;
 }
@@ -410,7 +857,7 @@
     TUint key;
     bool result = true;
     foreach (key, list) {
-        bool result = result & d->cancelCaptureLongKey(key, aModifiersMask, aModifier, aLongType);
+        bool result = result & d->cancelCaptureLongKey(key, aModifiersMask, aModifier, static_cast<XQKeyCapture::LongFlags>(aLongType));
     }
     return result;
 }