messagingapp/msgui/conversationview/src/msgconversationviewitem.cpp
author hgs
Fri, 17 Sep 2010 20:01:45 +0530
changeset 67 fc91263aee62
parent 56 f42d9a78f435
child 76 60a8a215b0ec
permissions -rw-r--r--
201037_04
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
/*
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     2
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
 * All rights reserved.
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
 *
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
 * Initial Contributors:
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
 *
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
 * Contributors:
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
 *
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
 * Description:
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
 *
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
 */
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    17
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
#include "msgconversationviewitem.h"
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    20
// SYSTEM INCLUDES
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    21
#include <QDateTime>
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    22
#include "debugtraces.h"
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    23
#include <QChar>
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    24
#include <HbTextItem>
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    25
#include <HbIconItem>
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    26
#include <HbIconAnimationManager>
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    27
#include <HbIconAnimator>
51
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    28
#include <HbExtendedLocale>
37
hgs
parents: 25
diff changeset
    29
#include <ccsdefs.h>
hgs
parents: 25
diff changeset
    30
#include <HbInstance>
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    31
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    32
// USER INCLUDES
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    33
#include "msgconversationwidget.h"
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    34
#include "msgviewdefines.h"
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    35
#include "msgviewutils.h"
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    36
#include "convergedmessage.h"
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    37
#include "conversationsenginedefines.h"
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    38
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    39
// LOCAL CONSTANTS
51
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    40
static const char MSG_OUTBOX_ICON[]     = "qtg_small_outbox";
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    41
static const char MSG_FAIL_ICON[]       = "qtg_small_fail";
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    42
static const char ANIMATION_FILE[]      = ":/qtg_anim_loading.axml";
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    43
static const char ANIMATION_ICON_NAME[] = "qtg_anim_loading";
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    44
static const char VCARD_ICON[]          = "qtg_large_mycard";
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    45
static const char IMAGE_ICON[]          = "qtg_small_image";
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    46
static const char CORRUPTED_ICON[]      = "qtg_small_corrupted";
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    47
static const char MSG_VIDEO_ICON[]      = "qtg_small_video";
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    48
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    49
// @see hbi18ndef.h
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    50
static const char DATE_FORMAT[] = r_qtn_date_short_with_zero;
3507212d340e 201031_02
hgs
parents: 48
diff changeset
    51
static const char TIME_FORMAT[] = r_qtn_time_usual_with_zero;
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    52
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    53
// LOCALIZATION
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    54
#define LOC_RINGING_TONE hbTrId("txt_messaging_dpopinfo_ringing_tone")
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    55
#define LOC_BUSINESS_CARD hbTrId("txt_messaging_list_business_card")
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    56
#define LOC_CALENDAR_EVENT hbTrId("txt_messaging_list_calendar_event")
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    57
#define LOC_UNSUPPORTED_MSG_TYPE hbTrId("txt_messaging_list_listview_unsupported_message_type")
48
4f501b74aeb1 201029_02
hgs
parents: 37
diff changeset
    58
#define LOC_RESEND_AT hbTrId("txt_messaging_list_resend_at_time")
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    59
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    60
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    61
// MsgConversationViewItem::MsgConversationViewItem
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    62
// Constructor
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    63
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    64
MsgConversationViewItem::MsgConversationViewItem(QGraphicsItem* parent) :
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    65
    HbListViewItem(parent), mIncoming(false), mConversation(0),
37
hgs
parents: 25
diff changeset
    66
            mIncomingMsgStateIconItem(0), mOutgoingMsgStateIconItem(0)
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    67
{
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    68
}
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    69
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    70
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    71
// MsgConversationViewItem::MsgConversationViewItem
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    72
// Destructor
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    73
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    74
MsgConversationViewItem::~MsgConversationViewItem()
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    75
{
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    76
}
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    77
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    78
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    79
// MsgConversationViewItem::createItem
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    80
// Create a new decorator item.
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    81
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    82
MsgConversationViewItem* MsgConversationViewItem::createItem()
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    83
{
37
hgs
parents: 25
diff changeset
    84
    MsgConversationViewItem *item = new MsgConversationViewItem(*this);
hgs
parents: 25
diff changeset
    85
    item->init();
hgs
parents: 25
diff changeset
    86
    return item;
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    87
}
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    88
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    89
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    90
// MsgConversationViewItem::updateChildItems
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    91
//
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    92
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    93
void MsgConversationViewItem::updateChildItems()
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    94
{
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    95
    QModelIndex index = modelIndex();
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    96
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    97
#ifdef _DEBUG_TRACES_
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    98
    qCritical() << "START MsgConversationViewItem::updateChildItems: "
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    99
            << index.data(ConvergedMsgId).toInt();
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   100
#endif
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   101
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   102
    int messageType = index.data(MessageType).toInt();
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   103
    int messageSubType = index.data(MessageSubType).toInt();
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   104
37
hgs
parents: 25
diff changeset
   105
    
hgs
parents: 25
diff changeset
   106
    if (messageType == ConvergedMessage::Sms)
hgs
parents: 25
diff changeset
   107
        {
hgs
parents: 25
diff changeset
   108
        	updateSmsTypeItem(index);
hgs
parents: 25
diff changeset
   109
        }
hgs
parents: 25
diff changeset
   110
    else if (messageType == ConvergedMessage::Mms || messageType
hgs
parents: 25
diff changeset
   111
            == ConvergedMessage::MmsNotification || messageType
hgs
parents: 25
diff changeset
   112
            == ConvergedMessage::BT)
hgs
parents: 25
diff changeset
   113
        {
hgs
parents: 25
diff changeset
   114
        updateMmsTypeItem(index, messageType, messageSubType);
hgs
parents: 25
diff changeset
   115
        }
hgs
parents: 25
diff changeset
   116
    else if (messageType == ConvergedMessage::BioMsg)
hgs
parents: 25
diff changeset
   117
        {
hgs
parents: 25
diff changeset
   118
        if (messageSubType == ConvergedMessage::VCard || messageSubType
hgs
parents: 25
diff changeset
   119
                == ConvergedMessage::RingingTone)
hgs
parents: 25
diff changeset
   120
            {
hgs
parents: 25
diff changeset
   121
            updateMmsTypeItem(index, messageType, messageSubType);
hgs
parents: 25
diff changeset
   122
            }
hgs
parents: 25
diff changeset
   123
        else
hgs
parents: 25
diff changeset
   124
            {
hgs
parents: 25
diff changeset
   125
            updateSmsTypeItem(index, messageSubType);
hgs
parents: 25
diff changeset
   126
            }
hgs
parents: 25
diff changeset
   127
        }
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   128
37
hgs
parents: 25
diff changeset
   129
#ifdef _DEBUG_TRACES_
hgs
parents: 25
diff changeset
   130
    qCritical() << "END MsgConversationViewItem::updateChildItems: "
hgs
parents: 25
diff changeset
   131
            << index.data(ConvergedMsgId).toInt();
hgs
parents: 25
diff changeset
   132
#endif
hgs
parents: 25
diff changeset
   133
hgs
parents: 25
diff changeset
   134
    HbListViewItem::updateChildItems();
hgs
parents: 25
diff changeset
   135
    }
hgs
parents: 25
diff changeset
   136
hgs
parents: 25
diff changeset
   137
//---------------------------------------------------------------
hgs
parents: 25
diff changeset
   138
// MsgConversationViewItem::updateSmsTypeItem
hgs
parents: 25
diff changeset
   139
// @see header file
hgs
parents: 25
diff changeset
   140
//---------------------------------------------------------------
hgs
parents: 25
diff changeset
   141
void MsgConversationViewItem::updateSmsTypeItem(const QModelIndex& index,
hgs
parents: 25
diff changeset
   142
    int messageSubType)
hgs
parents: 25
diff changeset
   143
{
hgs
parents: 25
diff changeset
   144
hgs
parents: 25
diff changeset
   145
    mIncoming = false;
hgs
parents: 25
diff changeset
   146
    mConversation->resetProperties();
hgs
parents: 25
diff changeset
   147
    
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   148
    int direction = index.data(Direction).toInt();
37
hgs
parents: 25
diff changeset
   149
    
hgs
parents: 25
diff changeset
   150
    if (direction == ConvergedMessage::Incoming)
hgs
parents: 25
diff changeset
   151
        {
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   152
        setIncoming(true);
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   153
        mConversation->setIncoming(true);
37
hgs
parents: 25
diff changeset
   154
hgs
parents: 25
diff changeset
   155
        mIncomingMsgStateIconItem->setVisible(false);
hgs
parents: 25
diff changeset
   156
    }
hgs
parents: 25
diff changeset
   157
    else if (direction == ConvergedMessage::Outgoing)
hgs
parents: 25
diff changeset
   158
        {
hgs
parents: 25
diff changeset
   159
        setIncoming(false);
hgs
parents: 25
diff changeset
   160
        mConversation->setIncoming(false);
hgs
parents: 25
diff changeset
   161
hgs
parents: 25
diff changeset
   162
        int sendingState = index.data(SendingState).toInt();
hgs
parents: 25
diff changeset
   163
        mConversation->setSendingState(sendingState);
hgs
parents: 25
diff changeset
   164
        setMessageStateIcon(sendingState);
hgs
parents: 25
diff changeset
   165
        }
hgs
parents: 25
diff changeset
   166
hgs
parents: 25
diff changeset
   167
    bool unreadStatus = index.data(UnReadStatus).toBool();
hgs
parents: 25
diff changeset
   168
    mConversation->setUnread(unreadStatus);
hgs
parents: 25
diff changeset
   169
hgs
parents: 25
diff changeset
   170
    mConversation->drawBubbleFrame();
hgs
parents: 25
diff changeset
   171
    mConversation->drawNewItemFrame();
hgs
parents: 25
diff changeset
   172
56
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   173
    mConversation->setTimeStamp(getMsgTimeStamp(index));
37
hgs
parents: 25
diff changeset
   174
hgs
parents: 25
diff changeset
   175
    if (messageSubType == ConvergedMessage::VCal)
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   176
        {
37
hgs
parents: 25
diff changeset
   177
         mConversation->setSubject(LOC_UNSUPPORTED_MSG_TYPE);
hgs
parents: 25
diff changeset
   178
        }
hgs
parents: 25
diff changeset
   179
    else
hgs
parents: 25
diff changeset
   180
        {
hgs
parents: 25
diff changeset
   181
        QString bodyText = index.data(BodyText).toString();
hgs
parents: 25
diff changeset
   182
        bodyText.replace(QChar::ParagraphSeparator, QChar::LineSeparator);
hgs
parents: 25
diff changeset
   183
        bodyText.replace('\r', QChar::LineSeparator);
51
3507212d340e 201031_02
hgs
parents: 48
diff changeset
   184
        mConversation->setBodyText(bodyText);
37
hgs
parents: 25
diff changeset
   185
        }
hgs
parents: 25
diff changeset
   186
    }
hgs
parents: 25
diff changeset
   187
hgs
parents: 25
diff changeset
   188
//---------------------------------------------------------------
hgs
parents: 25
diff changeset
   189
// MsgConversationViewItem::updateMmsTypeItem
hgs
parents: 25
diff changeset
   190
// @see header file
hgs
parents: 25
diff changeset
   191
//---------------------------------------------------------------
hgs
parents: 25
diff changeset
   192
void MsgConversationViewItem::updateMmsTypeItem(const QModelIndex& index,
hgs
parents: 25
diff changeset
   193
        int messageType, int messageSubType)
hgs
parents: 25
diff changeset
   194
    {
hgs
parents: 25
diff changeset
   195
    // create widget
hgs
parents: 25
diff changeset
   196
    if (!mConversation)
hgs
parents: 25
diff changeset
   197
        {
hgs
parents: 25
diff changeset
   198
        mConversation = new MsgConversationWidget(this);
hgs
parents: 25
diff changeset
   199
        HbStyle::setItemName(mConversation, "msgconvwidget");
hgs
parents: 25
diff changeset
   200
        }
hgs
parents: 25
diff changeset
   201
    mIncoming = false;
hgs
parents: 25
diff changeset
   202
    mConversation->resetProperties();
hgs
parents: 25
diff changeset
   203
    
hgs
parents: 25
diff changeset
   204
    mConversation->setMMS(true);
hgs
parents: 25
diff changeset
   205
    int direction = index.data(Direction).toInt();
hgs
parents: 25
diff changeset
   206
    QString bodyText = index.data(BodyText).toString();
hgs
parents: 25
diff changeset
   207
hgs
parents: 25
diff changeset
   208
    if (direction == ConvergedMessage::Incoming)
hgs
parents: 25
diff changeset
   209
        {
hgs
parents: 25
diff changeset
   210
        setIncoming(true);
hgs
parents: 25
diff changeset
   211
        mConversation->setIncoming(true);
hgs
parents: 25
diff changeset
   212
hgs
parents: 25
diff changeset
   213
        if (messageType == ConvergedMessage::MmsNotification)
hgs
parents: 25
diff changeset
   214
            {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   215
            mConversation->setMMSNotification(true);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   216
            int notificationState = index.data(NotificationStatus).toInt();
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   217
            mConversation->setNotificationState(notificationState);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   218
            setNotificationStateIcon(notificationState);
37
hgs
parents: 25
diff changeset
   219
            }
hgs
parents: 25
diff changeset
   220
        else
hgs
parents: 25
diff changeset
   221
            {
hgs
parents: 25
diff changeset
   222
            mIncomingMsgStateIconItem->setVisible(false);
hgs
parents: 25
diff changeset
   223
            }
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   224
        }
37
hgs
parents: 25
diff changeset
   225
    else if (direction == ConvergedMessage::Outgoing)
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   226
        {
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   227
        setIncoming(false);
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   228
        mConversation->setIncoming(false);
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   229
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   230
        int sendingState = index.data(SendingState).toInt();
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   231
        mConversation->setSendingState(sendingState);
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   232
        setMessageStateIcon(sendingState);
37
hgs
parents: 25
diff changeset
   233
        }
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   234
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   235
    bool unreadStatus = index.data(UnReadStatus).toBool();
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   236
    mConversation->setUnread(unreadStatus);
37
hgs
parents: 25
diff changeset
   237
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   238
    mConversation->drawBubbleFrame();
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   239
    mConversation->drawNewItemFrame();
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   240
56
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   241
    mConversation->setTimeStamp(getMsgTimeStamp(index));
37
hgs
parents: 25
diff changeset
   242
hgs
parents: 25
diff changeset
   243
    if (messageType == ConvergedMessage::Mms)
hgs
parents: 25
diff changeset
   244
        {
hgs
parents: 25
diff changeset
   245
        //preview path
hgs
parents: 25
diff changeset
   246
        QString previewPath = index.data(Attachments).toString();
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   247
        QString subject = index.data(Subject).toString();
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   248
37
hgs
parents: 25
diff changeset
   249
        int msgProperty = index.data(MessageProperty).toInt();
hgs
parents: 25
diff changeset
   250
        bool hasAttachments = (msgProperty & EPreviewAttachment) ? true : false;
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   251
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   252
        if (hasAttachments)
37
hgs
parents: 25
diff changeset
   253
            {
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   254
            mConversation->setAttachment();
37
hgs
parents: 25
diff changeset
   255
            }
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   256
        else
37
hgs
parents: 25
diff changeset
   257
            {
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   258
            mConversation->setAttachment(false);
37
hgs
parents: 25
diff changeset
   259
            }
hgs
parents: 25
diff changeset
   260
        
hgs
parents: 25
diff changeset
   261
        // Now set the media contents
hgs
parents: 25
diff changeset
   262
        
hgs
parents: 25
diff changeset
   263
        //preview image
hgs
parents: 25
diff changeset
   264
        bool hasImage = (msgProperty & EPreviewImage) ? true : false;
hgs
parents: 25
diff changeset
   265
        if (hasImage)
hgs
parents: 25
diff changeset
   266
          {
hgs
parents: 25
diff changeset
   267
            mConversation->setImage(true);
hgs
parents: 25
diff changeset
   268
            HbIcon previewIcon;
hgs
parents: 25
diff changeset
   269
            if (msgProperty & EPreviewProtectedImage)
hgs
parents: 25
diff changeset
   270
              {
hgs
parents: 25
diff changeset
   271
                previewIcon = HbIcon(IMAGE_ICON);
hgs
parents: 25
diff changeset
   272
              }
hgs
parents: 25
diff changeset
   273
            else if (msgProperty & EPreviewCorruptedImage)
hgs
parents: 25
diff changeset
   274
              {
hgs
parents: 25
diff changeset
   275
                // TODO: Change to official icon.
hgs
parents: 25
diff changeset
   276
                previewIcon = HbIcon(CORRUPTED_ICON);
hgs
parents: 25
diff changeset
   277
              }
hgs
parents: 25
diff changeset
   278
            else
hgs
parents: 25
diff changeset
   279
              {
hgs
parents: 25
diff changeset
   280
                QVariant previewData = index.data(PreviewIcon);
hgs
parents: 25
diff changeset
   281
                previewIcon = qvariant_cast<HbIcon> (previewData);
hgs
parents: 25
diff changeset
   282
              }
hgs
parents: 25
diff changeset
   283
            mConversation->setPreviewIcon(previewIcon);
hgs
parents: 25
diff changeset
   284
          }
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   285
37
hgs
parents: 25
diff changeset
   286
        bool hasVideo = (msgProperty & EPreviewVideo) ? true : false;
hgs
parents: 25
diff changeset
   287
        if (hasVideo)
hgs
parents: 25
diff changeset
   288
          {
hgs
parents: 25
diff changeset
   289
            mConversation->setVideo(true);
hgs
parents: 25
diff changeset
   290
            HbIcon videoPreviewIcon;
hgs
parents: 25
diff changeset
   291
            if (msgProperty & EPreviewProtectedVideo)
hgs
parents: 25
diff changeset
   292
              {
hgs
parents: 25
diff changeset
   293
                videoPreviewIcon = HbIcon(MSG_VIDEO_ICON);
hgs
parents: 25
diff changeset
   294
              }
hgs
parents: 25
diff changeset
   295
            else if (msgProperty & EPreviewCorruptedVideo)
hgs
parents: 25
diff changeset
   296
              {
hgs
parents: 25
diff changeset
   297
                videoPreviewIcon = HbIcon(CORRUPTED_ICON);
hgs
parents: 25
diff changeset
   298
              }
hgs
parents: 25
diff changeset
   299
            else
hgs
parents: 25
diff changeset
   300
              {
hgs
parents: 25
diff changeset
   301
                videoPreviewIcon = HbIcon(MSG_VIDEO_ICON);
hgs
parents: 25
diff changeset
   302
              }
hgs
parents: 25
diff changeset
   303
            mConversation->setPreviewIcon(videoPreviewIcon);
hgs
parents: 25
diff changeset
   304
          }
hgs
parents: 25
diff changeset
   305
        bool hasAudio = (msgProperty & EPreviewAudio) ? true : false;              
hgs
parents: 25
diff changeset
   306
        if (hasAudio)
hgs
parents: 25
diff changeset
   307
          {
hgs
parents: 25
diff changeset
   308
            mConversation->setAudio(true);
hgs
parents: 25
diff changeset
   309
            if (msgProperty & EPreviewProtectedAudio)
hgs
parents: 25
diff changeset
   310
              {
hgs
parents: 25
diff changeset
   311
                mConversation->displayAudioIcon();
hgs
parents: 25
diff changeset
   312
              }
hgs
parents: 25
diff changeset
   313
            else if (msgProperty & EPreviewCorruptedAudio)
hgs
parents: 25
diff changeset
   314
              {
hgs
parents: 25
diff changeset
   315
				mConversation->displayAudioIcon(CORRUPTED_ICON);
hgs
parents: 25
diff changeset
   316
              }
hgs
parents: 25
diff changeset
   317
            else
hgs
parents: 25
diff changeset
   318
              {
hgs
parents: 25
diff changeset
   319
                mConversation->displayAudioIcon();
hgs
parents: 25
diff changeset
   320
              }
hgs
parents: 25
diff changeset
   321
          }
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   322
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   323
        int priority = index.data(MessagePriority).toInt();
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   324
        mConversation->setPriority(priority);
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   325
        mConversation->setSubject(subject);
37
hgs
parents: 25
diff changeset
   326
        mConversation->setBodyText(bodyText);
hgs
parents: 25
diff changeset
   327
        }
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   328
    else if (messageType == ConvergedMessage::BioMsg)
37
hgs
parents: 25
diff changeset
   329
        {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   330
        if (messageSubType == ConvergedMessage::RingingTone)
37
hgs
parents: 25
diff changeset
   331
            {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   332
            mConversation->setImage(false);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   333
            mConversation->setAudio(true);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   334
            mConversation->displayAudioIcon();
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   335
            mConversation->setSubject(LOC_RINGING_TONE);
37
hgs
parents: 25
diff changeset
   336
            mConversation->setBodyText(bodyText);
hgs
parents: 25
diff changeset
   337
            }
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   338
        else if (messageSubType == ConvergedMessage::VCard)
37
hgs
parents: 25
diff changeset
   339
            {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   340
            mConversation->setImage(false);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   341
            mConversation->setAudio(true);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   342
            mConversation->displayAudioIcon(VCARD_ICON);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   343
            mConversation->setSubject(LOC_BUSINESS_CARD);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   344
            mConversation->setBodyText(bodyText);
37
hgs
parents: 25
diff changeset
   345
            }
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   346
        }
37
hgs
parents: 25
diff changeset
   347
    else if (messageType == ConvergedMessage::BT)
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   348
        {
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   349
        QString deviceName = index.data(ConversationAddress).toString();
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   350
        mConversation->setSubject(deviceName);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   351
        QString blueToothBody;
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   352
        if (messageSubType == ConvergedMessage::VCard)
37
hgs
parents: 25
diff changeset
   353
            {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   354
            mConversation->setImage(false);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   355
            mConversation->setAudio(true);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   356
            mConversation->displayAudioIcon(VCARD_ICON);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   357
            blueToothBody.append(LOC_BUSINESS_CARD);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   358
            blueToothBody.append(QChar::LineSeparator);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   359
            blueToothBody.append(bodyText);
37
hgs
parents: 25
diff changeset
   360
            }
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   361
        else
37
hgs
parents: 25
diff changeset
   362
            {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   363
            blueToothBody.append(bodyText);
37
hgs
parents: 25
diff changeset
   364
            }
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   365
        mConversation->setBodyText(blueToothBody);
37
hgs
parents: 25
diff changeset
   366
        }
hgs
parents: 25
diff changeset
   367
    else if (messageType == ConvergedMessage::MmsNotification)
hgs
parents: 25
diff changeset
   368
        {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   369
        QString subject = index.data(Subject).toString();
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   370
        int priority = index.data(MessagePriority).toInt();
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   371
        mConversation->setPriority(priority);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   372
        mConversation->setSubject(subject);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   373
        mConversation->setBodyText(bodyText);
37
hgs
parents: 25
diff changeset
   374
        }
hgs
parents: 25
diff changeset
   375
    
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   376
    }
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   377
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   378
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   379
// MsgConversationViewItem::containsPoint
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   380
//
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   381
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   382
bool MsgConversationViewItem::containsPoint(const QPointF& point)
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   383
{
37
hgs
parents: 25
diff changeset
   384
    return mConversation->boundingRect(). contains(mConversation->mapFromScene(
hgs
parents: 25
diff changeset
   385
        point));
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   386
}
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   387
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   388
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   389
// MsgConversationViewItem::setIncoming
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   390
// @see header file
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   391
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   392
void MsgConversationViewItem::setIncoming(bool incoming)
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   393
{
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   394
    mIncoming = incoming;
37
hgs
parents: 25
diff changeset
   395
hgs
parents: 25
diff changeset
   396
    if (mIncoming)
hgs
parents: 25
diff changeset
   397
    {
hgs
parents: 25
diff changeset
   398
        HbStyle::setItemName(mOutgoingMsgStateIconItem, "");
hgs
parents: 25
diff changeset
   399
        mOutgoingMsgStateIconItem->setVisible(false);
hgs
parents: 25
diff changeset
   400
        HbStyle::setItemName(mIncomingMsgStateIconItem, "msgStateIconIncoming");
hgs
parents: 25
diff changeset
   401
        mIncomingMsgStateIconItem->setIcon(HbIcon());
hgs
parents: 25
diff changeset
   402
        mIncomingMsgStateIconItem->setVisible(false);
hgs
parents: 25
diff changeset
   403
    }
hgs
parents: 25
diff changeset
   404
    else
hgs
parents: 25
diff changeset
   405
    {
hgs
parents: 25
diff changeset
   406
        HbStyle::setItemName(mIncomingMsgStateIconItem, "");
hgs
parents: 25
diff changeset
   407
        mIncomingMsgStateIconItem->setVisible(false);
hgs
parents: 25
diff changeset
   408
        HbStyle::setItemName(mOutgoingMsgStateIconItem, "msgStateIconOutgoing");
hgs
parents: 25
diff changeset
   409
        mOutgoingMsgStateIconItem->setIcon(HbIcon());
hgs
parents: 25
diff changeset
   410
        mOutgoingMsgStateIconItem->setVisible(false);
hgs
parents: 25
diff changeset
   411
    }
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   412
}
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   413
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   414
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   415
// MsgConversationViewItem::isIncoming
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   416
// @see header file
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   417
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   418
bool MsgConversationViewItem::isIncoming()
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   419
{
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   420
    return mIncoming;
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   421
}
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   422
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   423
//---------------------------------------------------------------
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   424
// MsgConversationViewItem::setMessageStateIcon
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   425
// @see header file
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   426
//---------------------------------------------------------------
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   427
void MsgConversationViewItem::setMessageStateIcon(int messageState)
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   428
{
37
hgs
parents: 25
diff changeset
   429
    HbIconAnimator& iconAnimator = mOutgoingMsgStateIconItem->animator();
67
fc91263aee62 201037_04
hgs
parents: 56
diff changeset
   430
	// Register for animation progressed signal to update the pixmap cache 
fc91263aee62 201037_04
hgs
parents: 56
diff changeset
   431
	connect (&iconAnimator, SIGNAL(animationProgressed()), this, SLOT(updatePixmapCache()));
51
3507212d340e 201031_02
hgs
parents: 48
diff changeset
   432
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   433
    switch (messageState)
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   434
    {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   435
        case ConvergedMessage::Waiting:
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   436
        case ConvergedMessage::Scheduled:
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   437
        case ConvergedMessage::Sending:
37
hgs
parents: 25
diff changeset
   438
        {
51
3507212d340e 201031_02
hgs
parents: 48
diff changeset
   439
            HbIconAnimationManager::global()->addDefinitionFile(ANIMATION_FILE);
3507212d340e 201031_02
hgs
parents: 48
diff changeset
   440
            mOutgoingMsgStateIconItem->setIconName(ANIMATION_ICON_NAME);
37
hgs
parents: 25
diff changeset
   441
            mOutgoingMsgStateIconItem->setVisible(true);
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   442
            iconAnimator.startAnimation();
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   443
            break;
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   444
        }     
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   445
        case ConvergedMessage::Suspended:
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   446
        case ConvergedMessage::Resend:
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   447
        {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   448
            iconAnimator.stopAnimation();
51
3507212d340e 201031_02
hgs
parents: 48
diff changeset
   449
            mOutgoingMsgStateIconItem->setIconName(MSG_OUTBOX_ICON);
37
hgs
parents: 25
diff changeset
   450
            mOutgoingMsgStateIconItem->setVisible(true);
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   451
            break;
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   452
        }
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   453
        case ConvergedMessage::Failed:
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   454
        {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   455
            iconAnimator.stopAnimation();
51
3507212d340e 201031_02
hgs
parents: 48
diff changeset
   456
            mOutgoingMsgStateIconItem->setIconName(MSG_FAIL_ICON);
37
hgs
parents: 25
diff changeset
   457
            mOutgoingMsgStateIconItem->setVisible(true);
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   458
            break;
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   459
        }   
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   460
        case ConvergedMessage::Unknown:
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   461
        default:
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   462
        {
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   463
            iconAnimator.stopAnimation();
37
hgs
parents: 25
diff changeset
   464
            mOutgoingMsgStateIconItem->setVisible(false);
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   465
            break;
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   466
        }
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   467
    }
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   468
}
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   469
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   470
//---------------------------------------------------------------
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   471
// MsgConversationViewItem::setNotificationStateIcon
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   472
// @see header file
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   473
//---------------------------------------------------------------
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   474
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   475
void MsgConversationViewItem::setNotificationStateIcon(int notificationState)
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   476
{
37
hgs
parents: 25
diff changeset
   477
    HbIconAnimator& iconAnimator = mIncomingMsgStateIconItem->animator();
67
fc91263aee62 201037_04
hgs
parents: 56
diff changeset
   478
	// Register for animation progressed signal to update the pixmap cache 
fc91263aee62 201037_04
hgs
parents: 56
diff changeset
   479
	connect (&iconAnimator, SIGNAL(animationProgressed()), this, SLOT(updatePixmapCache()));
37
hgs
parents: 25
diff changeset
   480
    HbIconAnimationManager* iconAnimationManager =
hgs
parents: 25
diff changeset
   481
            HbIconAnimationManager::global();
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   482
    switch (notificationState)
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   483
    {
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   484
        case ConvergedMessage::NotifRetrieving:
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   485
        case ConvergedMessage::NotifWaiting:
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   486
        { 
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   487
            //TODO: Temp icon until official icons are received
37
hgs
parents: 25
diff changeset
   488
            bool defined = iconAnimationManager->addDefinitionFile(
hgs
parents: 25
diff changeset
   489
                ANIMATION_FILE);
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   490
            HbIcon animIcon;
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   491
            animIcon.setIconName(ANIMATION_ICON_NAME);
37
hgs
parents: 25
diff changeset
   492
            QSizeF size = mIncomingMsgStateIconItem->size();
hgs
parents: 25
diff changeset
   493
            mIncomingMsgStateIconItem->setIcon(animIcon);
hgs
parents: 25
diff changeset
   494
            mIncomingMsgStateIconItem->setVisible(true);
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   495
            iconAnimator.startAnimation();
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   496
            break;
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   497
        }     
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   498
        default:
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   499
        {
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   500
            iconAnimator.stopAnimation();
37
hgs
parents: 25
diff changeset
   501
            mIncomingMsgStateIconItem->setVisible(false);
25
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   502
            break;
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   503
        }
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   504
    }
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   505
}
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   506
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   507
//---------------------------------------------------------------
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   508
// MsgConversationViewItem::pressStateChanged
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   509
// @see header file
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   510
//---------------------------------------------------------------
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   511
void MsgConversationViewItem::pressStateChanged (bool pressed, bool animate)
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   512
{
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   513
    mConversation->pressStateChanged(pressed, animate);
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   514
}
84d9eb65b26f Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   515
37
hgs
parents: 25
diff changeset
   516
//---------------------------------------------------------------
hgs
parents: 25
diff changeset
   517
// MsgConversationViewItem::init
hgs
parents: 25
diff changeset
   518
// @see header file
hgs
parents: 25
diff changeset
   519
//---------------------------------------------------------------
hgs
parents: 25
diff changeset
   520
void MsgConversationViewItem::init()
hgs
parents: 25
diff changeset
   521
{
hgs
parents: 25
diff changeset
   522
    mConversation = new MsgConversationWidget(this);
hgs
parents: 25
diff changeset
   523
    HbStyle::setItemName(mConversation, "msgconvwidget");
hgs
parents: 25
diff changeset
   524
hgs
parents: 25
diff changeset
   525
    mIncomingMsgStateIconItem = new HbIconItem(this);
hgs
parents: 25
diff changeset
   526
    HbStyle::setItemName(mIncomingMsgStateIconItem, "msgStateIconIncoming");
hgs
parents: 25
diff changeset
   527
hgs
parents: 25
diff changeset
   528
    mOutgoingMsgStateIconItem = new HbIconItem(this);
hgs
parents: 25
diff changeset
   529
    HbStyle::setItemName(mOutgoingMsgStateIconItem, "msgStateIconOutgoing");
hgs
parents: 25
diff changeset
   530
hgs
parents: 25
diff changeset
   531
    HbMainWindow *mainWindow = hbInstance->allMainWindows()[0];
hgs
parents: 25
diff changeset
   532
hgs
parents: 25
diff changeset
   533
    // Force polish to get all the sub-item properties right.
hgs
parents: 25
diff changeset
   534
    polishEvent();
hgs
parents: 25
diff changeset
   535
}
hgs
parents: 25
diff changeset
   536
hgs
parents: 25
diff changeset
   537
//---------------------------------------------------------------
56
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   538
// MsgConversationViewItem::getMsgTimeStamp
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   539
// @see header file
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   540
//---------------------------------------------------------------
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   541
QString MsgConversationViewItem::getMsgTimeStamp(const QModelIndex& index)
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   542
{
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   543
    QDateTime dateTime;
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   544
    dateTime.setTime_t(index.data(TimeStamp).toUInt());
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   545
    
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   546
    HbExtendedLocale locale = HbExtendedLocale::system();
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   547
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   548
    QString timeStampStr;
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   549
    if (dateTime.date() == QDateTime::currentDateTime().date()) {
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   550
        timeStampStr = locale.format(dateTime.time(), TIME_FORMAT);
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   551
    }
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   552
    else {
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   553
        timeStampStr = locale.format(dateTime.date(), DATE_FORMAT);
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   554
    }
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   555
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   556
    QString msgTimeStamp;
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   557
    if (ConvergedMessage::Resend == index.data(SendingState).toInt()) {
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   558
        msgTimeStamp = LOC_RESEND_AT.arg(timeStampStr);
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   559
    }
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   560
    else {
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   561
        msgTimeStamp = timeStampStr;
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   562
    }
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   563
    return msgTimeStamp;
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   564
}
f42d9a78f435 201033_02
hgs
parents: 51
diff changeset
   565
23
238255e8b033 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   566
// EOF