messagingapp/msgui/conversationview/src/msgconversationwidget.cpp
branchGCC_SURGE
changeset 47 5b14749788d7
parent 27 e4592d119491
parent 44 36f374c67aa8
equal deleted inserted replaced
35:a32b19fb291e 47:5b14749788d7
    30 #include <fbs.h>
    30 #include <fbs.h>
    31 #include <sqldb.h>
    31 #include <sqldb.h>
    32 #include <QBool>
    32 #include <QBool>
    33 #include <QCoreApplication>
    33 #include <QCoreApplication>
    34 #include <HbEvent>
    34 #include <HbEvent>
       
    35 #include <HbMainWindow>
       
    36 #include <HbInstance>
    35 
    37 
    36 #include "debugtraces.h"
    38 #include "debugtraces.h"
    37 
    39 
    38 #include "convergedmessage.h"
    40 #include "convergedmessage.h"
    39 #include "conversationsengine.h"
    41 #include "conversationsengine.h"
    40 
    42 
    41 // Icons
    43 // Icons
    42 const QString MSG_HIGH_PRIORITY_ICON("qtg_small_priority_high");
    44 const QString MSG_HIGH_PRIORITY_ICON("qtg_small_priority_high");
    43 const QString MSG_LOW_PRIORITY_ICON("qtg_small_priority_low");
    45 const QString MSG_LOW_PRIORITY_ICON("qtg_small_priority_low");
    44 const QString MSG_ATTACH_ICON("qtg_small_attachment");
    46 const QString MSG_ATTACH_ICON("qtg_small_attachment");
    45 const QString MSG_AUDIO_ICON("qtg_large_music_player");
    47 const QString MSG_AUDIO_PLAY_ICON("qtg_small_sound");
    46 const QString MSG_VIDEO_ICON("qtg_large_video_player");
       
    47 const QString MSG_AUDIO_PLAY_ICON("qtg_large_music_player");
       
    48 
    48 
    49 
    49 
    50 // Frames
    50 // Frames
    51 const QString CV_RECEIVED_NORMAL_FR("qtg_fr_convlist_received_normal");
    51 const QString CV_RECEIVED_NORMAL_FR("qtg_fr_convlist_received_normal");
    52 const QString CV_RECEIVED_PRESSED_FR("qtg_fr_convlist_received_pressed");
    52 const QString CV_RECEIVED_PRESSED_FR("qtg_fr_convlist_received_pressed");
    53 const QString CV_RECEIVED_HIGHLIGHT_FR("qtg_fr_convlist_received_highlight");
    53 const QString CV_RECEIVED_HIGHLIGHT_FR("qtg_fr_convlist_received_highlight");
    54 const QString CV_SENT_NORMAL_FR("qtg_fr_convlist_sent_normal");
    54 const QString CV_SENT_NORMAL_FR("qtg_fr_convlist_sent_normal");
    55 const QString CV_SENT_PRESSED_FR("qtg_fr_convlist_sent_pressed");
    55 const QString CV_SENT_PRESSED_FR("qtg_fr_convlist_sent_pressed");
    56 const QString CV_SENT_HIGHLIGHT_FR("qtg_fr_convlist_sent_highlight");
    56 const QString CV_SENT_HIGHLIGHT_FR("qtg_fr_convlist_sent_highlight");
    57 const QString NEW_ITEM_FRAME("qtg_fr_list_new_item");
    57 const QString NEW_ITEM_FRAME("qtg_fr_list_new_item");
    58 
       
    59 //selecet preview-icon query
       
    60 _LIT(KSelectPreviewIconStmt,"SELECT  message_id, preview_icon FROM conversation_messages WHERE message_id = :message_id ");
       
    61 
    58 
    62 //---------------------------------------------------------------
    59 //---------------------------------------------------------------
    63 // MsgConversationWidget::MsgConversationWidget
    60 // MsgConversationWidget::MsgConversationWidget
    64 // @see header file
    61 // @see header file
    65 //---------------------------------------------------------------
    62 //---------------------------------------------------------------
   116     HbStyle::setItemName(mBubbleFrameItem, "bubble");
   113     HbStyle::setItemName(mBubbleFrameItem, "bubble");
   117 
   114 
   118     mNewFrameItem = new HbFrameItem(this);
   115     mNewFrameItem = new HbFrameItem(this);
   119     mNewFrameItem->frameDrawer().setFrameType(HbFrameDrawer::ThreePiecesVertical);
   116     mNewFrameItem->frameDrawer().setFrameType(HbFrameDrawer::ThreePiecesVertical);
   120     HbStyle::setItemName(mNewFrameItem, "newItemIcon");
   117     HbStyle::setItemName(mNewFrameItem, "newItemIcon");
       
   118     mSubjectTextItem = new HbTextItem(this);  
       
   119     mSubjectTextItem->setTextWrapping(Hb::TextWordWrap);      
       
   120     HbStyle::setItemName(mSubjectTextItem, "subject");
       
   121     mBodyTextItem = new HbTextItem(this);
       
   122     mBodyTextItem->setTextWrapping(Hb::TextWordWrap);
       
   123     HbStyle::setItemName(mBodyTextItem, "bodyText");
       
   124     mPreviewIconItem = new HbIconItem(this);
       
   125     HbStyle::setItemName(mPreviewIconItem, "preview");
       
   126     mPriorityIconItem = new HbIconItem(this);            
       
   127     HbStyle::setItemName(mPriorityIconItem, "priority");
       
   128     mAttachmentIconItem = new HbIconItem(this);
       
   129     HbStyle::setItemName(mAttachmentIconItem, "attachment");
       
   130     mPlayIconItem = new HbIconItem(this);                
       
   131     HbStyle::setItemName(mPlayIconItem, "playIcon");
       
   132     mTimeStampTextItem = new HbTextItem(this);
       
   133     HbStyle::setItemName(mTimeStampTextItem, "timeStamp");
   121     	
   134     	
       
   135     HbMainWindow *mainWindow = hbInstance->allMainWindows()[0];
       
   136     connect(mainWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, 
       
   137 			SLOT(orientationchanged(Qt::Orientation)),Qt::UniqueConnection);
       
   138     polishEvent();
   122     }
   139     }
   123 
   140 
   124 //---------------------------------------------------------------
   141 //---------------------------------------------------------------
   125 // MsgConversationWidget::setSubject
   142 // MsgConversationWidget::setSubject
   126 // @see header file
   143 // @see header file
   127 //---------------------------------------------------------------
   144 //---------------------------------------------------------------
   128 void MsgConversationWidget::setSubject(const QString &subject)
   145 void MsgConversationWidget::setSubject(const QString &subject)
   129 {
   146 {
   130     if (!mSubjectTextItem)
       
   131     {
       
   132         mSubjectTextItem = new HbTextItem(this);  
       
   133         mSubjectTextItem->setTextWrapping(Hb::TextWordWrap);      
       
   134     }
       
   135     HbStyle::setItemName(mSubjectTextItem, "subject");
   147     HbStyle::setItemName(mSubjectTextItem, "subject");
   136     mSubjectTextItem->setText(subject);
   148     mSubjectTextItem->setText(subject);
   137     mSubjectTextItem->show();
   149     mSubjectTextItem->show();
   138 }
   150 }
   139 
   151 
   141 // MsgConversationWidget::setBodyText
   153 // MsgConversationWidget::setBodyText
   142 // @see header file
   154 // @see header file
   143 //---------------------------------------------------------------
   155 //---------------------------------------------------------------
   144 void MsgConversationWidget::setBodyText(const QString &body)
   156 void MsgConversationWidget::setBodyText(const QString &body)
   145 {
   157 {
   146     if (!mBodyTextItem)
       
   147     {
       
   148         mBodyTextItem = new HbTextItem(this);
       
   149         mBodyTextItem->setTextWrapping(Hb::TextWordWrap);
       
   150     }
       
   151     HbStyle::setItemName(mBodyTextItem, "bodyText");
   158     HbStyle::setItemName(mBodyTextItem, "bodyText");
   152 
   159 
   153     mBodyTextItem->setText(body);
   160     mBodyTextItem->setText(body);
   154     mBodyTextItem->show();
   161     mBodyTextItem->show();
   155 }
   162 }
   156 
   163 
   157 //---------------------------------------------------------------
   164 //---------------------------------------------------------------
   158 // MsgConversationWidget::setPreviewIconPath
   165 // MsgConversationWidget::setPreviewIcon
   159 // @see header file
   166 // @see header file
   160 //---------------------------------------------------------------
   167 //---------------------------------------------------------------
   161 void MsgConversationWidget::setPreviewIconPath(const QString &filePath,int msgId)
   168 void MsgConversationWidget::setPreviewIcon(HbIcon& icon)
   162 {
   169 {
   163     if (!mPreviewIconItem)
   170     QCRITICAL_WRITE("MsgConversationWidget::setPreviewIcon start.")
   164     {
   171 
   165         mPreviewIconItem = new HbIconItem(this);
       
   166         mPreviewIconItem->setAlignment(Qt::AlignHCenter | Qt::AlignTop);        
       
   167     }
       
   168 
   172 
   169     HbStyle::setItemName(mPreviewIconItem, "preview");
   173     HbStyle::setItemName(mPreviewIconItem, "preview");
   170     //sql query to get preview-icon from DB
   174 
   171     TBool isOpen = EFalse;
   175     mPreviewIconItem->setIcon(icon);
   172     bool imagePreviewed = false;
   176     mPreviewIconItem->setPreferredSize(icon.size());
   173 
   177     mPreviewIconItem->show();
   174     //get DB handle and check if it is open
   178 
   175     RSqlDatabase& sqlDb = ConversationsEngine::instance()->getDBHandle(isOpen);
   179     QCRITICAL_WRITE("MsgConversationWidget::setPreviewIcon end.")
   176     if (isOpen)
   180 }
   177     {
   181 
   178         RSqlStatement sqlSelectPreviewIconStmt;
       
   179         TInt err = sqlSelectPreviewIconStmt.Prepare(sqlDb,
       
   180             KSelectPreviewIconStmt);
       
   181 
       
   182         QCRITICAL_WRITE_FORMAT("Error from Prepare()", err)
       
   183 
       
   184         if (err == KErrNone)
       
   185         {
       
   186             //msg_id
       
   187             TInt msgIdIndex = sqlSelectPreviewIconStmt.ParameterIndex(
       
   188                 _L(":message_id"));
       
   189             sqlSelectPreviewIconStmt.BindInt(msgIdIndex, msgId);
       
   190 
       
   191             // get preview-icon from DB
       
   192             err = sqlSelectPreviewIconStmt.Next();
       
   193             QCRITICAL_WRITE_FORMAT("Error from Next()", err)
       
   194 
       
   195             if (err == KSqlAtRow)
       
   196             {
       
   197                 TInt previewIconIndex = sqlSelectPreviewIconStmt.ColumnIndex(
       
   198                     _L("preview_icon"));
       
   199 
       
   200                 RSqlColumnReadStream stream;
       
   201 
       
   202                 //Get data from binary column BLOB
       
   203                 err = stream.ColumnBinary(sqlSelectPreviewIconStmt,
       
   204                     previewIconIndex);
       
   205 
       
   206                 QCRITICAL_WRITE_FORMAT("Error from ColumnBinary()", err)
       
   207 
       
   208                 if (err == KErrNone)
       
   209                 {
       
   210                     CFbsBitmap *bitmap = new CFbsBitmap;
       
   211                     TRAPD(err,bitmap->InternalizeL(stream));
       
   212                     QCRITICAL_WRITE_FORMAT("Error from bitmap InternalizeL()", err)
       
   213 
       
   214                     //convert bitmap to pixmap
       
   215                     if (err == KErrNone)
       
   216                     {
       
   217                         TSize size = bitmap->SizeInPixels();
       
   218                         int bytesPerLine = bitmap->ScanLineLength(size.iWidth,
       
   219                             bitmap->DisplayMode());
       
   220                         const uchar* dataPtr =
       
   221                                 (const uchar*) bitmap->DataAddress();
       
   222 
       
   223                         QPixmap pixmap = QPixmap::fromImage(QImage(dataPtr,
       
   224                             size.iWidth, size.iHeight, bytesPerLine,
       
   225                             QImage::Format_RGB16));
       
   226 
       
   227                         mPreviewIconItem->setIcon(HbIcon(pixmap));
       
   228                         mPreviewIconItem->setPreferredSize(pixmap.size());
       
   229                         mPreviewIconItem->setEnabled(true);
       
   230                         mPreviewIconItem->show();
       
   231                         imagePreviewed = true;
       
   232                                                 
       
   233                         QCRITICAL_WRITE("Bitmap Conversion completed")
       
   234                     }
       
   235 					//remove bitmap
       
   236                     delete bitmap;                    
       
   237                 }
       
   238                 //close stream
       
   239                 stream.Close();
       
   240             }
       
   241         }
       
   242         sqlSelectPreviewIconStmt.Close();
       
   243     }
       
   244 
       
   245     // if not found in db, set from file path
       
   246     if(!imagePreviewed)
       
   247     {
       
   248         QPixmap pixmap(filePath);
       
   249         QPixmap scaledPixmap =pixmap.scaled(100,100,Qt::IgnoreAspectRatio);
       
   250         mPreviewIconItem->setIcon(HbIcon(scaledPixmap));
       
   251         mPreviewIconItem->setPreferredSize(scaledPixmap.size());
       
   252 	    mPreviewIconItem->setEnabled(true);
       
   253         mPreviewIconItem->show();
       
   254     }
       
   255     
       
   256     QCRITICAL_WRITE("MsgConversationWidget::setPreviewIconPath end.")  
       
   257 
       
   258 }
       
   259 
   182 
   260 //---------------------------------------------------------------
   183 //---------------------------------------------------------------
   261 // MsgConversationWidget::setPriority
   184 // MsgConversationWidget::setPriority
   262 // @see header file
   185 // @see header file
   263 //---------------------------------------------------------------
   186 //---------------------------------------------------------------
   265 {
   188 {
   266     mPriority = priority;
   189     mPriority = priority;
   267 
   190 
   268     if (priority)
   191     if (priority)
   269     {
   192     {
   270         if (!mPriorityIconItem)
       
   271         {
       
   272             mPriorityIconItem = new HbIconItem(this);            
       
   273         }
       
   274         HbStyle::setItemName(mPriorityIconItem, "priority");
   193         HbStyle::setItemName(mPriorityIconItem, "priority");
   275         if (ConvergedMessage::Low == priority)
   194         if (ConvergedMessage::Low == priority)
   276         {
   195         {
   277             mPriorityIconItem->setIcon(HbIcon(MSG_LOW_PRIORITY_ICON));
   196             mPriorityIconItem->setIcon(HbIcon(MSG_LOW_PRIORITY_ICON));
   278         }
   197         }
   301 {
   220 {
   302     mHasAttachment = attachment;
   221     mHasAttachment = attachment;
   303 
   222 
   304     if (attachment)
   223     if (attachment)
   305     {
   224     {
   306         if (!mAttachmentIconItem)
       
   307         {
       
   308             mAttachmentIconItem = new HbIconItem(this);
       
   309         }
       
   310         HbStyle::setItemName(mAttachmentIconItem, "attachment");
   225         HbStyle::setItemName(mAttachmentIconItem, "attachment");
   311         mAttachmentIconItem->setIcon(HbIcon(MSG_ATTACH_ICON));
   226         mAttachmentIconItem->setIcon(HbIcon(MSG_ATTACH_ICON));
   312         mAttachmentIconItem->show();
   227         mAttachmentIconItem->show();
   313     }
   228     }
   314 }
   229 }
   364 //---------------------------------------------------------------
   279 //---------------------------------------------------------------
   365 void MsgConversationWidget::displayAudioIcon(const QString &iconPath)
   280 void MsgConversationWidget::displayAudioIcon(const QString &iconPath)
   366 {
   281 {
   367     if (hasAudio())
   282     if (hasAudio())
   368     {
   283     {
   369         if (hasImage())
   284         if (!hasImage())
   370         {
   285         {
   371             if (!mPlayIconItem)
   286             HbStyle::setItemName(mPreviewIconItem, "preview");
       
   287             if(iconPath.isEmpty())
   372             {
   288             {
   373                 mPlayIconItem = new HbIconItem(this);                
   289                qreal iconSize = 0;
       
   290                style()->parameter("hb-param-graphic-size-primary-small",iconSize);
       
   291                HbIcon icon(MSG_AUDIO_PLAY_ICON);
       
   292                icon.setHeight(iconSize);
       
   293                icon.setWidth(iconSize);
       
   294                mPreviewIconItem->setIcon(icon);
   374             }
   295             }
       
   296             else
       
   297             {
       
   298                mPreviewIconItem->setIconName(iconPath);
       
   299             }
       
   300             mPreviewIconItem->show();
       
   301         }
       
   302         else
       
   303         {
   375             HbStyle::setItemName(mPlayIconItem, "playIcon");
   304             HbStyle::setItemName(mPlayIconItem, "playIcon");
   376             mPlayIconItem->setIconName(iconPath.isEmpty() ? MSG_AUDIO_PLAY_ICON : iconPath);
   305             mPlayIconItem->setIconName(iconPath.isEmpty() ? MSG_AUDIO_PLAY_ICON : iconPath);
   377             mPlayIconItem->show();
   306             mPlayIconItem->show();          
   378         }
   307         }       
   379         else
       
   380         {
       
   381             if (!mAudioIconItem)
       
   382             {
       
   383                 mAudioIconItem = new HbIconItem(this);    
       
   384             }
       
   385             HbStyle::setItemName(mAudioIconItem, "audioIcon");
       
   386             mAudioIconItem->setIconName(iconPath.isEmpty() ? MSG_AUDIO_PLAY_ICON : iconPath);
       
   387             mAudioIconItem->show();
       
   388            
       
   389         }
       
   390     }
   308     }
   391 }
   309 }
   392 
   310 
   393 //---------------------------------------------------------------
   311 //---------------------------------------------------------------
   394 // MsgConversationWidget::setVideo
   312 // MsgConversationWidget::setVideo
   395 // @see header file
   313 // @see header file
   396 //---------------------------------------------------------------
   314 //---------------------------------------------------------------
   397 void MsgConversationWidget::setVideo(bool video)
   315 void MsgConversationWidget::setVideo(bool video)
   398 {
   316 {
   399     mHasVideo = video;
   317     mHasVideo = video;
   400 
       
   401     if (video)
       
   402     {
       
   403         if (!mVideoIconItem)
       
   404         {
       
   405             mVideoIconItem = new HbIconItem(this);
       
   406         }
       
   407         HbStyle::setItemName(mVideoIconItem, "video");
       
   408         mVideoIconItem->setIcon(HbIcon(MSG_VIDEO_ICON));
       
   409         mVideoIconItem->show();
       
   410         
       
   411     }
       
   412 }
   318 }
   413 
   319 
   414 //---------------------------------------------------------------
   320 //---------------------------------------------------------------
   415 // MsgConversationWidget::hasVideo
   321 // MsgConversationWidget::hasVideo
   416 // @see header file
   322 // @see header file
   461 // @see header file
   367 // @see header file
   462 //---------------------------------------------------------------
   368 //---------------------------------------------------------------
   463 void MsgConversationWidget::setUnread(bool unread)
   369 void MsgConversationWidget::setUnread(bool unread)
   464 {
   370 {
   465     mUnread = unread;
   371     mUnread = unread;
       
   372     // Needed for colour group changes to be visible
       
   373     QCoreApplication::postEvent(this, new HbEvent(HbEvent::ThemeChanged));  
   466 }
   374 }
   467 
   375 
   468 //---------------------------------------------------------------
   376 //---------------------------------------------------------------
   469 // MsgConversationWidget::isUnread
   377 // MsgConversationWidget::isUnread
   470 // @see header file
   378 // @see header file
   519     switch (state)
   427     switch (state)
   520     {
   428     {
   521         case ConvergedMessage::SentState:
   429         case ConvergedMessage::SentState:
   522         {
   430         {
   523             mSendingState = Sent;
   431             mSendingState = Sent;
       
   432             // Needed for colour group changes to be visible
       
   433             QCoreApplication::postEvent(this, new HbEvent(HbEvent::ThemeChanged));  
   524             break;
   434             break;
   525         }
   435         }
   526         case ConvergedMessage::Sending:
   436         case ConvergedMessage::Sending:
   527         {
   437         {
   528             mSendingState = Sending;
   438             mSendingState = Sending;
   606 // MsgConversationWidget::setTimeStamp
   516 // MsgConversationWidget::setTimeStamp
   607 // @see header file
   517 // @see header file
   608 //---------------------------------------------------------------
   518 //---------------------------------------------------------------
   609 void MsgConversationWidget::setTimeStamp(const QString &timeStamp)
   519 void MsgConversationWidget::setTimeStamp(const QString &timeStamp)
   610 {
   520 {
   611     if(!mTimeStampTextItem)
       
   612     {
       
   613 	  mTimeStampTextItem = new HbTextItem(this);
       
   614 	  }
       
   615     HbStyle::setItemName(mTimeStampTextItem, "timeStamp");
   521     HbStyle::setItemName(mTimeStampTextItem, "timeStamp");
   616 
   522 
   617     mTimeStampTextItem->setText(timeStamp);
   523     mTimeStampTextItem->setText(timeStamp);
   618     mTimeStampTextItem->show();
   524     mTimeStampTextItem->show();
   619  
   525  
   655             mBubbleFrameItem->frameDrawer().setFrameGraphicsName(CV_RECEIVED_NORMAL_FR);
   561             mBubbleFrameItem->frameDrawer().setFrameGraphicsName(CV_RECEIVED_NORMAL_FR);
   656         }
   562         }
   657     }
   563     }
   658     else
   564     else
   659     {
   565     {
   660         if(mSendingState == Sending || mSendingState == Pending || 
       
   661            mSendingState == Unknown || mSendingState == Failed)
       
   662         {
       
   663             mBubbleFrameItem->frameDrawer().setFrameGraphicsName(CV_SENT_HIGHLIGHT_FR);
       
   664         }
       
   665         else
       
   666         {
       
   667             mBubbleFrameItem->frameDrawer().setFrameGraphicsName(CV_SENT_NORMAL_FR);
   566             mBubbleFrameItem->frameDrawer().setFrameGraphicsName(CV_SENT_NORMAL_FR);
   668         }
       
   669     }
   567     }
   670 }
   568 }
   671 
   569 
   672 //---------------------------------------------------------------
   570 //---------------------------------------------------------------
   673 // MsgConversationWidget::drawPressedBubbleFrame
   571 // MsgConversationWidget::drawPressedBubbleFrame
   696     if (mBubbleFrameItem) {
   594     if (mBubbleFrameItem) {
   697         (pressed) ? drawPressedBubbleFrame() : drawBubbleFrame();
   595         (pressed) ? drawPressedBubbleFrame() : drawBubbleFrame();
   698     }
   596     }
   699 }
   597 }
   700 
   598 
   701     void MsgConversationWidget::resetProperties()
   599 //---------------------------------------------------------------
       
   600 // MsgConversationWidget::resetProperties
       
   601 // @see header file
       
   602 //---------------------------------------------------------------
       
   603 void MsgConversationWidget::resetProperties()
   702     	{
   604     	{
   703         mHasAttachment = false;
   605         mHasAttachment = false;
   704         mHasImage = false;
   606         mHasImage = false;
   705         mHasAudio = false;
   607         mHasAudio = false;
   706         mHasVideo = false;
   608         mHasVideo = false;
   738     
   640     
   739 	   if(mPriorityIconItem){
   641 	   if(mPriorityIconItem){
   740 	       HbStyle::setItemName(mPriorityIconItem, "");
   642 	       HbStyle::setItemName(mPriorityIconItem, "");
   741 	        mPriorityIconItem->hide();
   643 	        mPriorityIconItem->hide();
   742 	    }
   644 	    }
   743    
   645          
   744 	    if(mAudioIconItem){
       
   745 	        HbStyle::setItemName(mAudioIconItem, "");
       
   746 	        mAudioIconItem->hide();              
       
   747 	       }
       
   748     
       
   749 	    if(mVideoIconItem){
       
   750 	        HbStyle::setItemName(mVideoIconItem, "");
       
   751 	        mVideoIconItem->hide();
       
   752 	      }
       
   753     
       
   754 	    if(mPlayIconItem){
   646 	    if(mPlayIconItem){
   755 	        HbStyle::setItemName(mPlayIconItem, "");
   647 	        HbStyle::setItemName(mPlayIconItem, "");
   756 	        mPlayIconItem->hide();
   648 	        mPlayIconItem->hide();
   757 	       }
   649 	       }
   758     
   650     
   759 	    if(mPreviewIconItem){
   651 	    if(mPreviewIconItem){
   760 	        HbStyle::setItemName(mPreviewIconItem, "");
   652 	        HbStyle::setItemName(mPreviewIconItem, "");
   761 	        mPreviewIconItem->hide();               
   653 	        mPreviewIconItem->hide();               
   762 	       }    
   654 	       }    
   763     	}
   655     	}
       
   656 
       
   657 //---------------------------------------------------------------
       
   658 // MsgConversationWidget::orientationchanged
       
   659 // @see header file
       
   660 //---------------------------------------------------------------
       
   661 void MsgConversationWidget::orientationchanged(Qt::Orientation orientation)
       
   662 {
       
   663     QDEBUG_WRITE("MsgConversationWidget:orientationchanged start.")
       
   664             
       
   665     repolish();
   764     
   666     
   765     void MsgConversationWidget::repolishWidget()
   667     QDEBUG_WRITE("MsgConversationWidget:orientationchanged end.")    
       
   668 }
       
   669 
       
   670 //---------------------------------------------------------------
       
   671 // MsgConversationWidget::polish
       
   672 // @see header file
       
   673 //---------------------------------------------------------------
       
   674 void MsgConversationWidget::polish(HbStyleParameters &params)
       
   675 {   
       
   676     QString bubbleOrig = HbStyle::itemName(mBubbleFrameItem);
       
   677     QString newItemIconOrig = HbStyle::itemName(mNewFrameItem);
       
   678     QString subjectOrig = HbStyle::itemName(mSubjectTextItem);
       
   679     QString bodyTextOrig = HbStyle::itemName(mBodyTextItem);
       
   680     QString previewOrig = HbStyle::itemName(mPreviewIconItem);
       
   681     QString priorityOrig = HbStyle::itemName(mPriorityIconItem);
       
   682     QString attachmentOrig = HbStyle::itemName(mAttachmentIconItem);
       
   683     QString timeStampOrig = HbStyle::itemName(mTimeStampTextItem);
       
   684     QString playIconOrig = HbStyle::itemName(mPlayIconItem);
       
   685 
       
   686     // Make sure that all the sub-items are polished in every polish.
       
   687     HbStyle::setItemName(mBubbleFrameItem, "bubble");
       
   688     HbStyle::setItemName(mNewFrameItem, "newItemIcon");
       
   689     HbStyle::setItemName(mSubjectTextItem, "subject");
       
   690     HbStyle::setItemName(mBodyTextItem, "bodyText");
       
   691     HbStyle::setItemName(mPreviewIconItem, "preview");
       
   692     HbStyle::setItemName(mPriorityIconItem, "priority");
       
   693     HbStyle::setItemName(mAttachmentIconItem, "attachment");
       
   694     HbStyle::setItemName(mTimeStampTextItem, "timeStamp");
       
   695     HbStyle::setItemName(mPlayIconItem, "playIcon");
       
   696 
       
   697     HbWidget::polish(params);
       
   698 
       
   699     HbStyle::setItemName(mBubbleFrameItem, bubbleOrig);
       
   700     HbStyle::setItemName(mNewFrameItem, newItemIconOrig);
       
   701     HbStyle::setItemName(mSubjectTextItem, subjectOrig);
       
   702     HbStyle::setItemName(mBodyTextItem, bodyTextOrig);
       
   703     HbStyle::setItemName(mPreviewIconItem, previewOrig);
       
   704     HbStyle::setItemName(mPriorityIconItem, priorityOrig);
       
   705     HbStyle::setItemName(mAttachmentIconItem, attachmentOrig);
       
   706     HbStyle::setItemName(mTimeStampTextItem, timeStampOrig);
       
   707     HbStyle::setItemName(mPlayIconItem, playIconOrig);
       
   708 }
       
   709 
       
   710 //---------------------------------------------------------------
       
   711 // MsgConversationWidget::repolishWidget
       
   712 // @see header file
       
   713 //---------------------------------------------------------------
       
   714 void MsgConversationWidget::repolishWidget()
   766     	{
   715     	{
   767     	QCoreApplication::postEvent(this, new HbEvent(HbEvent::ThemeChanged));	
       
   768     	repolish();
   716     	repolish();
   769     	}
   717     	}
   770     
   718 
       
   719 
   771 // EOF
   720 // EOF