messagingapp/msgui/msgapp/src/msgviewmanager.cpp
changeset 48 4f501b74aeb1
parent 46 b1f0785c289d
child 51 3507212d340e
equal deleted inserted replaced
46:b1f0785c289d 48:4f501b74aeb1
   558         connect(mListView, SIGNAL(switchView(const QVariantList&)), this,
   558         connect(mListView, SIGNAL(switchView(const QVariantList&)), this,
   559             SLOT(switchView(const QVariantList&)));
   559             SLOT(switchView(const QVariantList&)));
   560         mMainWindow->addView(mListView);
   560         mMainWindow->addView(mListView);
   561     }
   561     }
   562 
   562 
   563     mMainWindow->setCurrentView(mListView);
   563     mMainWindow->setCurrentView(mListView,true,Hb::ViewSwitchSequential);
   564 }
   564 }
   565 
   565 
   566 void MsgViewManager::switchToCv(const QVariantList& data)
   566 void MsgViewManager::switchToCv(const QVariantList& data)
   567 {
   567 {
   568     QCRITICAL_WRITE("MsgViewManager::switchToCv start.");
   568     QCRITICAL_WRITE("MsgViewManager::switchToCv start.");
   585     }
   585     }
   586 
   586 
   587     //delete UniEditor
   587     //delete UniEditor
   588     if (mUniEditor)
   588     if (mUniEditor)
   589     {
   589     {
       
   590         // Save to drafts if CV is launched via service
       
   591         if (mPreviousView == MsgBaseView::SERVICE) {
       
   592             mUniEditor->saveContentToDrafts();
       
   593         }
   590         appendViewToBeDeleted(mUniEditor);
   594         appendViewToBeDeleted(mUniEditor);
   591         mUniEditor = NULL;
   595         mUniEditor = NULL;
   592     }
   596     }
   593 
   597 
   594     //delete UniViewer
   598     //delete UniViewer
   625     }
   629     }
   626     else if (var.type() == QVariant::Invalid) {
   630     else if (var.type() == QVariant::Invalid) {
   627         // this case comes when a message is deleted from
   631         // this case comes when a message is deleted from
   628         // Unified viewer  set curent view as conversation view
   632         // Unified viewer  set curent view as conversation view
   629         // and return
   633         // and return
   630         mMainWindow->setCurrentView(mConversationView);
   634         mMainWindow->setCurrentView(mConversationView,true,Hb::ViewSwitchSequential);
   631 
   635 
   632 		// publish already opened conversation's id
   636 		// publish already opened conversation's id
   633         mConversationView->setPSCVId(true);
   637         mConversationView->setPSCVId(true);
   634         return;
   638         return;
   635     }
   639     }
   653         //clearing content of current cv.
   657         //clearing content of current cv.
   654         mConversationView->clearContent();
   658         mConversationView->clearContent();
   655     }
   659     }
   656 
   660 
   657     mConversationView->openConversation(conversationId);
   661     mConversationView->openConversation(conversationId);
   658     mMainWindow->setCurrentView(mConversationView);
   662     mMainWindow->setCurrentView(mConversationView,true,Hb::ViewSwitchSequential);
   659     
   663     
   660     QCRITICAL_WRITE("MsgViewManager::switchToCv end.");
   664     QCRITICAL_WRITE("MsgViewManager::switchToCv end.");
   661 }
   665 }
   662 
   666 
   663 void MsgViewManager::switchToDlv(const QVariantList& data)
   667 void MsgViewManager::switchToDlv(const QVariantList& data)
   679         connect(mDraftsListView, SIGNAL(switchView(const QVariantList&)), this,
   683         connect(mDraftsListView, SIGNAL(switchView(const QVariantList&)), this,
   680             SLOT(switchView(const QVariantList&)));
   684             SLOT(switchView(const QVariantList&)));
   681 
   685 
   682         mMainWindow->addView(mDraftsListView);
   686         mMainWindow->addView(mDraftsListView);
   683     }
   687     }
   684     mMainWindow->setCurrentView(mDraftsListView);
   688     mMainWindow->setCurrentView(mDraftsListView,true,Hb::ViewSwitchSequential);
   685 }
   689 }
   686 
   690 
   687 void MsgViewManager::switchToUniEditor(const QVariantList& data)
   691 void MsgViewManager::switchToUniEditor(const QVariantList& data)
   688 {
   692 {
   689     QCRITICAL_WRITE("MsgViewManager::switchToUniEditor start.");
   693     QCRITICAL_WRITE("MsgViewManager::switchToUniEditor start.");
   753         else {
   757         else {
   754             mUniEditor->populateContent(editorData);
   758             mUniEditor->populateContent(editorData);
   755         }
   759         }
   756     }
   760     }
   757 
   761 
   758     mMainWindow->setCurrentView(mUniEditor);
   762     mMainWindow->setCurrentView(mUniEditor,true,Hb::ViewSwitchSequential);
   759     
   763     
   760     QCRITICAL_WRITE("MsgViewManager::switchToUniEditor end.");
   764     QCRITICAL_WRITE("MsgViewManager::switchToUniEditor end.");
   761 }
   765 }
   762 
   766 
   763 void MsgViewManager::switchToUniViewer(const QVariantList& data)
   767 void MsgViewManager::switchToUniViewer(const QVariantList& data)
   766      * Viewer is tried to open again before exiting the previously
   770      * Viewer is tried to open again before exiting the previously
   767      * opened viewer. Multi taping bubbles in CV.
   771      * opened viewer. Multi taping bubbles in CV.
   768      */
   772      */
   769     if (mUniViewer) {
   773     if (mUniViewer) {
   770         return;
   774         return;
       
   775     }
       
   776 
       
   777     if (mUniEditor)
       
   778     {
       
   779         appendViewToBeDeleted(mUniEditor);
       
   780         mUniEditor = NULL;
   771     }
   781     }
   772 
   782 
   773     //Clear the old viewer data
   783     //Clear the old viewer data
   774     mViewerData.clear();
   784     mViewerData.clear();
   775     
   785     
   802     if(mPreviousView==MsgBaseView::CV && mConversationView)
   812     if(mPreviousView==MsgBaseView::CV && mConversationView)
   803         {
   813         {
   804         mConversationView->setPSCVId(false);
   814         mConversationView->setPSCVId(false);
   805         }
   815         }
   806 
   816 
   807     mMainWindow->setCurrentView(mUniViewer);
   817     mMainWindow->setCurrentView(mUniViewer,true,Hb::ViewSwitchSequential);
   808 }
   818 }
   809 void MsgViewManager::switchToMsgSettings(const QVariantList& data)
   819 void MsgViewManager::switchToMsgSettings(const QVariantList& data)
   810 {
   820 {
   811     int previousView = data.at(1).toInt();
   821     int previousView = data.at(1).toInt();
   812     
   822     
   866         }
   876         }
   867         switch (mCurrentView) {
   877         switch (mCurrentView) {
   868         case MsgBaseView::CLV:
   878         case MsgBaseView::CLV:
   869         {
   879         {
   870             if (mListView)
   880             if (mListView)
   871                 mMainWindow->setCurrentView(mListView);
   881                 mMainWindow->setCurrentView(mListView,true,Hb::ViewSwitchSequential);
   872             break;
   882             break;
   873         }
   883         }
   874         case MsgBaseView::CV:
   884         case MsgBaseView::CV:
   875         {
   885         {
   876             if (mConversationView)
   886             if (mConversationView)
   877                 mMainWindow->setCurrentView(mConversationView);
   887                 mMainWindow->setCurrentView(mConversationView,true,Hb::ViewSwitchSequential);
   878             break;
   888             break;
   879         }
   889         }
   880         case MsgBaseView::DLV:
   890         case MsgBaseView::DLV:
   881         {
   891         {
   882             if (mDraftsListView)
   892             if (mDraftsListView)
   883                 mMainWindow->setCurrentView(mDraftsListView);
   893                 mMainWindow->setCurrentView(mDraftsListView,true,Hb::ViewSwitchSequential);
   884             break;
   894             break;
   885         }
   895         }
   886         case MsgBaseView::UNIEDITOR:
   896         case MsgBaseView::UNIEDITOR:
   887         {
   897         {
   888             if (mServiceRequest) {
   898             if (mServiceRequest) {
   889                 mMainWindow->setCurrentView(mUniEditor);
   899                 mMainWindow->setCurrentView(mUniEditor,true,Hb::ViewSwitchSequential);
   890             }
   900             }
   891             else {
   901             else {
   892                 mMainWindow->setCurrentView(mUniEditor);
   902                 mMainWindow->setCurrentView(mUniEditor,true,Hb::ViewSwitchSequential);
   893             }
   903             }
   894             break;
   904             break;
   895         }
   905         }
   896         }
   906         }
   897     }
   907     }
   956         connect(mUniViewer, SIGNAL(switchView(const QVariantList&)), this,
   966         connect(mUniViewer, SIGNAL(switchView(const QVariantList&)), this,
   957             SLOT(switchView(const QVariantList&)));
   967             SLOT(switchView(const QVariantList&)));
   958     }
   968     }
   959     mUniViewer->populateContent(msgId, true, -1);
   969     mUniViewer->populateContent(msgId, true, -1);
   960 
   970 
   961     mMainWindow->setCurrentView(mUniViewer);
   971     mMainWindow->setCurrentView(mUniViewer,true,Hb::ViewSwitchSequential);
   962 }
   972 }
   963 
   973 
   964 // ----------------------------------------------------------------------------
   974 // ----------------------------------------------------------------------------
   965 // MsgViewManager::handleRingtoneMsg
   975 // MsgViewManager::handleRingtoneMsg
   966 // @see header
   976 // @see header
  1142         {
  1152         {
  1143         mConversationView->setPSCVId(false);
  1153         mConversationView->setPSCVId(false);
  1144         }
  1154         }
  1145 
  1155 
  1146     mMainWindow->addView(mAudioFetcherView);
  1156     mMainWindow->addView(mAudioFetcherView);
  1147     mMainWindow->setCurrentView(mAudioFetcherView);
  1157     mMainWindow->setCurrentView(mAudioFetcherView,true,Hb::ViewSwitchSequential);
  1148     }
  1158     }
  1149 
  1159 
  1150 // ----------------------------------------------------------------------------
  1160 // ----------------------------------------------------------------------------
  1151 // MsgViewManager::saveContentToDraft
  1161 // MsgViewManager::saveContentToDraft
  1152 // @see header
  1162 // @see header
  1201     editorData << dataArray;
  1211     editorData << dataArray;
  1202     mUniEditor->openDraftsMessage(editorData);
  1212     mUniEditor->openDraftsMessage(editorData);
  1203     
  1213     
  1204     // set the current view
  1214     // set the current view
  1205     mCurrentView = MsgBaseView::UNIEDITOR;
  1215     mCurrentView = MsgBaseView::UNIEDITOR;
  1206     mMainWindow->setCurrentView(mUniEditor);
  1216     mPreviousView =MsgBaseView::CLV;
       
  1217     mMainWindow->setCurrentView(mUniEditor,true,Hb::ViewSwitchSequential);
  1207 }
  1218 }
  1208 
  1219 
  1209 // ----------------------------------------------------------------------------
  1220 // ----------------------------------------------------------------------------
  1210 // MsgViewManager::findContactId
  1221 // MsgViewManager::findContactId
  1211 // @see header
  1222 // @see header