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() |