17 |
17 |
18 #include "cntmainwindow.h" |
18 #include "cntmainwindow.h" |
19 #include "cntdefaultviewmanager.h" |
19 #include "cntdefaultviewmanager.h" |
20 #include "cntviewnavigator.h" |
20 #include "cntviewnavigator.h" |
21 #include <QCoreApplication> |
21 #include <QCoreApplication> |
|
22 #include <xqaiwrequest.h> |
|
23 #include <xqaiwdecl.h> |
|
24 #include <xqappmgr.h> |
|
25 #include <logsservices.h> |
22 #include <cntdebug.h> |
26 #include <cntdebug.h> |
23 |
27 |
24 CntMainWindow::CntMainWindow(QWidget *parent, int defaultView) |
28 CntMainWindow::CntMainWindow(QWidget *parent, int defaultView) |
25 : HbMainWindow(parent), |
29 : HbMainWindow(parent), |
26 mViewManager(NULL) |
30 mViewManager(NULL), |
|
31 mDefaultView(defaultView) |
27 { |
32 { |
28 CNT_ENTRY |
33 CNT_ENTRY |
29 |
34 |
30 if (defaultView != noView) |
35 if (defaultView != noView) |
31 { |
36 { |
32 CntViewNavigator* navigator = new CntViewNavigator(this); |
37 CntViewNavigator* navigator = new CntViewNavigator(this); |
33 navigator->addException( editView, namesView ); |
38 navigator->addException( favoritesMemberView, collectionView ); |
34 navigator->addException( FavoritesMemberView, collectionView ); |
|
35 navigator->addEffect( groupMemberView, groupActionsView ); |
39 navigator->addEffect( groupMemberView, groupActionsView ); |
36 navigator->addEffect( groupActionsView, groupMemberView ); |
40 navigator->addEffect( groupActionsView, groupMemberView ); |
37 navigator->addEffect( commLauncherView, historyView ); |
41 navigator->addEffect( contactCardView, historyView ); |
38 navigator->addEffect( historyView, commLauncherView ); |
42 navigator->addEffect( historyView, contactCardView ); |
|
43 navigator->addRoot( namesView ); |
|
44 navigator->addRoot( collectionView ); |
|
45 navigator->addRoot( groupMemberView ); |
|
46 navigator->addRoot( favoritesMemberView ); |
39 |
47 |
40 mViewManager = new CntDefaultViewManager( this ); |
48 mViewManager = new CntDefaultViewManager( this ); |
41 mViewManager->setViewNavigator( navigator ); |
49 mViewManager->setViewNavigator( navigator ); |
42 |
50 |
43 //activate the view |
51 //activate the view |
63 * Lets let views handle send/end key press events, because if toolbar or menu has been focused |
71 * Lets let views handle send/end key press events, because if toolbar or menu has been focused |
64 * the view wont get the key press events |
72 * the view wont get the key press events |
65 */ |
73 */ |
66 void CntMainWindow::keyPressEvent(QKeyEvent *event) |
74 void CntMainWindow::keyPressEvent(QKeyEvent *event) |
67 { |
75 { |
68 if (event->key() == Qt::Key_Yes || event->key() == Qt::Key_No) |
76 if (event->key() == Qt::Key_Yes && mDefaultView != noView) |
69 { |
77 { |
70 emit keyPressed(event); |
78 if (mViewManager->currentViewId() == contactCardView) |
|
79 { |
|
80 emit keyPressed(event); |
|
81 } |
|
82 else |
|
83 { |
|
84 XQApplicationManager appManager; |
|
85 XQAiwRequest* request = appManager.create("com.nokia.symbian.ILogsView", "show(QVariantMap)", false); |
|
86 |
|
87 if (request) |
|
88 { |
|
89 QList<QVariant> args; |
|
90 QVariantMap map; |
|
91 map.insert("view_index", QVariant(int(LogsServices::ViewAll))); |
|
92 map.insert("show_dialpad", QVariant(true)); |
|
93 map.insert("dialpad_text", QVariant(QString())); |
|
94 args.append(QVariant(map)); |
|
95 request->setArguments(args); |
|
96 request->send(); |
|
97 } |
|
98 } |
71 } |
99 } |
72 else |
100 else |
73 { |
101 { |
74 HbMainWindow::keyPressEvent(event); |
102 HbMainWindow::keyPressEvent(event); |
75 } |
103 } |