telutils/dialpad/src/dialpadkeyhandler.cpp
changeset 23 427125ac6cb8
parent 19 e44a8c097b15
child 27 7eb70891911c
equal deleted inserted replaced
19:e44a8c097b15 23:427125ac6cb8
    14 * Description: Custom button
    14 * Description: Custom button
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 #include <hbmainwindow.h>
    18 #include <hbmainwindow.h>
       
    19 #ifdef Q_OS_SYMBIAN
       
    20 #include <featmgr.h>
       
    21 #endif // Q_OS_SYMBIAN
    19 #include "dialpadkeyhandler.h"
    22 #include "dialpadkeyhandler.h"
    20 #include "dialpadvoicemailboxeventfilter.h"
    23 #include "dialpadvoicemailboxeventfilter.h"
       
    24 #include "dialpadvideomailboxeventfilter.h"
    21 #include "dialpadbluetootheventfilter.h"
    25 #include "dialpadbluetootheventfilter.h"
    22 #include "dialpadkeysequenceeventfilter.h"
    26 #include "dialpadkeysequenceeventfilter.h"
    23 #include "qtphonesrvlog.h"
    27 #include "qtphonesrvlog.h"
    24 
    28 
    25 DialpadKeyHandler::DialpadKeyHandler(
    29 DialpadKeyHandler::DialpadKeyHandler(
    26     Dialpad *dialPad, HbMainWindow& mainWindow, QObject *parent) 
    30     Dialpad *dialPad, HbMainWindow& mainWindow, QObject *parent) 
    27     : 
    31     : 
    28     QObject(parent),
    32     QObject(parent),
    29 	mMainWindow(mainWindow),
    33 	mMainWindow(mainWindow),
    30 	mVmbxFilter(0),
    34 	mVmbxFilter(0),
       
    35 	mVideoVmbxFilter(0),
    31 	mBtFilter(0),
    36 	mBtFilter(0),
    32 	mKeySequenceFilter(0)
    37 	mKeySequenceFilter(0),
       
    38 	mIsVideoMailboxSupported(false)
    33 {
    39 {
    34     PHONE_TRACE;
    40     PHONE_TRACE;
       
    41 
       
    42     // Variations
       
    43 #ifdef Q_OS_SYMBIAN
       
    44     mIsVideoMailboxSupported = FeatureManager::FeatureSupported(KFeatureIdCsVideoTelephony);
       
    45 #endif // Q_OS_SYMBIAN
    35     
    46     
    36     mVmbxFilter.reset(new DialpadVoiceMailboxEventFilter(dialPad));
    47     mVmbxFilter.reset(new DialpadVoiceMailboxEventFilter(dialPad));
       
    48     if(mIsVideoMailboxSupported) {
       
    49         mVideoVmbxFilter.reset(new DialpadVideoMailboxEventFilter(dialPad));
       
    50     }
    37     mBtFilter.reset(new DialpadBluetoothEventFilter(dialPad));
    51     mBtFilter.reset(new DialpadBluetoothEventFilter(dialPad));
    38     mKeySequenceFilter.reset(new DialpadKeySequenceEventFilter(dialPad));
    52     mKeySequenceFilter.reset(new DialpadKeySequenceEventFilter(dialPad));
    39     
    53 
    40     // Stack different event filters
    54     // Stack different event filters
    41     mMainWindow.installEventFilter(mVmbxFilter.data());
    55     mMainWindow.installEventFilter(mVmbxFilter.data());
       
    56     if(mIsVideoMailboxSupported) {
       
    57         mMainWindow.installEventFilter(mVideoVmbxFilter.data());    
       
    58     }
    42     mMainWindow.installEventFilter(mBtFilter.data());
    59     mMainWindow.installEventFilter(mBtFilter.data());
    43     mMainWindow.installEventFilter(mKeySequenceFilter.data());
    60     mMainWindow.installEventFilter(mKeySequenceFilter.data());
    44 }
    61 }
    45 
    62 
    46 DialpadKeyHandler::~DialpadKeyHandler()
    63 DialpadKeyHandler::~DialpadKeyHandler()