phonebookui/pbkcommonui/src/cntmainwindow.cpp
changeset 53 e6aff7b69165
parent 46 efe85016a067
child 54 47627ab5d7a4
equal deleted inserted replaced
51:81c360d47083 53:e6aff7b69165
    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     }