messagingapp/msgui/conversationview/src/msgconversationbaseview.cpp
changeset 27 e4592d119491
parent 25 84d9eb65b26f
child 47 5b14749788d7
equal deleted inserted replaced
25:84d9eb65b26f 27:e4592d119491
    27 
    27 
    28 #include <cntservicescontact.h>
    28 #include <cntservicescontact.h>
    29 #include <qtcontactsglobal.h>
    29 #include <qtcontactsglobal.h>
    30 #include <qtcontacts.h>
    30 #include <qtcontacts.h>
    31 #include <ccsdefs.h>
    31 #include <ccsdefs.h>
       
    32 #include <XQSettingsManager>
       
    33 #include <QTimer>
    32 
    34 
    33 // USER INCLUDES
    35 // USER INCLUDES
    34 #include "msgconversationview.h"
    36 #include "msgconversationview.h"
    35 #include "conversationsengine.h"
    37 #include "conversationsengine.h"
    36 #include "msgviewdefines.h"
    38 #include "msgviewdefines.h"
    37 #include "conversationsenginedefines.h"
    39 #include "conversationsenginedefines.h"
    38 #include "msgcontactcardwidget.h"
    40 #include "msgcontactcardwidget.h"
       
    41 #include "conversationidpsconsts.h"
    39 
    42 
    40 QTM_USE_NAMESPACE
    43 QTM_USE_NAMESPACE
    41 
    44 
    42 // LOCALIZATION
    45 // LOCALIZATION
    43 #define LOC_SAVED_TO_DRAFTS    hbTrId("txt_messaging_dpopinfo_saved_to_drafts")
    46 #define LOC_SAVED_TO_DRAFTS    hbTrId("txt_messaging_dpopinfo_saved_to_drafts")
    46 // MsgConversationBaseView::MsgConversationBaseView
    49 // MsgConversationBaseView::MsgConversationBaseView
    47 // Constructor
    50 // Constructor
    48 //---------------------------------------------------------------
    51 //---------------------------------------------------------------
    49 MsgConversationBaseView::MsgConversationBaseView(QGraphicsItem* parent) :
    52 MsgConversationBaseView::MsgConversationBaseView(QGraphicsItem* parent) :
    50 MsgBaseView(parent),
    53 MsgBaseView(parent),
    51 mConversationView(NULL),
    54 mConversationId(-1),
    52 mConversationId(-1)
    55 mCVIdkey(XQSettingsKey::TargetPublishAndSubscribe,KMsgCVIdProperty, 
       
    56         KMsgCVIdKey)
    53 { 
    57 { 
    54     connect(this->mainWindow(),SIGNAL(viewReady()),this,SLOT(doDelayedConstruction()));   
    58     connect(this->mainWindow(),SIGNAL(viewReady()),this,SLOT(doDelayedConstruction()));   
    55     initView();
    59     initView();
    56 }
    60 }
    57 
    61 
    70 void MsgConversationBaseView::openConversation(qint64 convId)
    74 void MsgConversationBaseView::openConversation(qint64 convId)
    71 {
    75 {
    72     ConversationsEngine::instance()->getConversations(convId);
    76     ConversationsEngine::instance()->getConversations(convId);
    73     mConversationId = convId;
    77     mConversationId = convId;
    74     connect(this->mainWindow(),SIGNAL(viewReady()),this,SLOT(doDelayedConstruction()));
    78     connect(this->mainWindow(),SIGNAL(viewReady()),this,SLOT(doDelayedConstruction()));
       
    79     
       
    80 	// publsih conversation id
       
    81     mSettingsManager->writeItemValue(mCVIdkey,(int)mConversationId);
    75     
    82     
    76     if(mConversationView)
    83     if(mConversationView)
    77         {
    84         {
    78         mConversationView->refreshView();
    85         mConversationView->refreshView();
    79         }
    86         }
   121     this->setMenu(mConversationView->menu());
   128     this->setMenu(mConversationView->menu());
   122 
   129 
   123     mMainLayout->addItem(mConversationView);
   130     mMainLayout->addItem(mConversationView);
   124 
   131 
   125     this->setLayout(mMainLayout);
   132     this->setLayout(mMainLayout);
   126 
   133     
       
   134     mSettingsManager = new XQSettingsManager(this);
       
   135           
   127 }
   136 }
   128 
   137 
   129 //---------------------------------------------------------------
   138 //---------------------------------------------------------------
   130 // MsgConversationBaseView::closeConversationView
   139 // MsgConversationBaseView::closeConversationView
   131 // close conversation view
   140 // close conversation view
   163         {
   172         {
   164         HbNotificationDialog::launchDialog(LOC_SAVED_TO_DRAFTS);
   173         HbNotificationDialog::launchDialog(LOC_SAVED_TO_DRAFTS);
   165         }
   174         }
   166     }
   175     }
   167 
   176 
       
   177 //--------------------------------------------------------------- 
       
   178 // MsgConversationBaseView::conversationId 
       
   179 // get the conversation ID 
       
   180 //---------------------------------------------------------------     
       
   181 qint64 MsgConversationBaseView::conversationId() 
       
   182     { 
       
   183     return mConversationId; 
       
   184     }
       
   185 
   168 //---------------------------------------------------------------
   186 //---------------------------------------------------------------
   169 // MsgConversationBaseView::clearContent
   187 // MsgConversationBaseView::clearContent
   170 // clears conversation view content
   188 // clears conversation view content
   171 //---------------------------------------------------------------
   189 //---------------------------------------------------------------
   172 void MsgConversationBaseView::clearContent()
   190 void MsgConversationBaseView::clearContent()
   199 //
   217 //
   200 //---------------------------------------------------------------	
   218 //---------------------------------------------------------------	
   201 void MsgConversationBaseView::doDelayedConstruction()
   219 void MsgConversationBaseView::doDelayedConstruction()
   202 {
   220 {
   203     disconnect(this->mainWindow(),SIGNAL(viewReady()),this,SLOT(doDelayedConstruction()));
   221     disconnect(this->mainWindow(),SIGNAL(viewReady()),this,SLOT(doDelayedConstruction()));
       
   222     QTimer::singleShot(50,this,SLOT(handleViewReady()));    
       
   223 }
       
   224 
       
   225 
       
   226 //---------------------------------------------------------------
       
   227 // MsgConversationBaseView::handleViewReady
       
   228 //
       
   229 //---------------------------------------------------------------	
       
   230 void MsgConversationBaseView::handleViewReady()
       
   231     {
   204     ConversationsEngine::instance()->fetchMoreConversations();
   232     ConversationsEngine::instance()->fetchMoreConversations();
   205 }
   233     }
   206 
   234 
   207 //---------------------------------------------------------------
   235 //---------------------------------------------------------------
   208 // MsgConversationBaseView::hideChrome
   236 // MsgConversationBaseView::hideChrome
   209 //
   237 //
   210 //---------------------------------------------------------------
   238 //---------------------------------------------------------------
   232             mContactCard->show();
   260             mContactCard->show();
   233             }
   261             }
   234         }
   262         }
   235     }
   263     }
   236 
   264 
       
   265 //---------------------------------------------------------------
       
   266 // MsgConversationBaseView::setPSCVId
       
   267 //
       
   268 //---------------------------------------------------------------
       
   269 void MsgConversationBaseView::setPSCVId(bool setId)
       
   270 {
       
   271     if(setId){
       
   272     mSettingsManager->writeItemValue(mCVIdkey,(int)mConversationId);
       
   273     }
       
   274     else {
       
   275     mSettingsManager->writeItemValue(mCVIdkey,-1);
       
   276     }
       
   277 }
   237 // EOF
   278 // EOF