messagingapp/msgui/unifiededitor/src/msgunieditormonitor.cpp
author hgs
Sun, 25 Jul 2010 18:59:19 +0530
changeset 48 4f501b74aeb1
parent 41 25fe1fe642e3
child 76 60a8a215b0ec
permissions -rw-r--r--
201029_02
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
37
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
 * All rights reserved.
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
 *
hgs
parents:
diff changeset
     9
 * Initial Contributors:
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
 *
hgs
parents:
diff changeset
    12
 * Contributors:
hgs
parents:
diff changeset
    13
 *
hgs
parents:
diff changeset
    14
 * Description: Helper class to monitor msg construction in unified editor
hgs
parents:
diff changeset
    15
 *
hgs
parents:
diff changeset
    16
 */
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
// INCLUDES
hgs
parents:
diff changeset
    19
#include "debugtraces.h"
hgs
parents:
diff changeset
    20
#include <HbNotificationDialog>
hgs
parents:
diff changeset
    21
#include <HbWidget>
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
// USER INCLUDES
hgs
parents:
diff changeset
    24
#include "msgunieditormonitor.h"
hgs
parents:
diff changeset
    25
#include "msgunieditorview.h"
hgs
parents:
diff changeset
    26
#include "msgunieditoraddress.h"
hgs
parents:
diff changeset
    27
#include "msgunieditorsubject.h"
hgs
parents:
diff changeset
    28
#include "msgunieditorbody.h"
hgs
parents:
diff changeset
    29
#include "msgunieditorattachmentcontainer.h"
hgs
parents:
diff changeset
    30
#include "UniEditorGenUtils.h"
hgs
parents:
diff changeset
    31
hgs
parents:
diff changeset
    32
// Constants
hgs
parents:
diff changeset
    33
hgs
parents:
diff changeset
    34
// Define static
hgs
parents:
diff changeset
    35
ConvergedMessage::MessageType MsgUnifiedEditorMonitor::mMessageType;
hgs
parents:
diff changeset
    36
int MsgUnifiedEditorMonitor::mBodySize;
hgs
parents:
diff changeset
    37
int MsgUnifiedEditorMonitor::mContainerSize;
hgs
parents:
diff changeset
    38
int MsgUnifiedEditorMonitor::mSubjectSize;
hgs
parents:
diff changeset
    39
int MsgUnifiedEditorMonitor::mMaxMmsSize;
hgs
parents:
diff changeset
    40
int MsgUnifiedEditorMonitor::mMaxSmsRecipients;
hgs
parents:
diff changeset
    41
int MsgUnifiedEditorMonitor::mMaxMmsRecipients;
hgs
parents:
diff changeset
    42
int MsgUnifiedEditorMonitor::mMsgCurrAddressCount;
hgs
parents:
diff changeset
    43
hgs
parents:
diff changeset
    44
//Localized strings
hgs
parents:
diff changeset
    45
#define LOC_POP_MESSAGE_CHANGE_MUL hbTrId("txt_messaging_dpopinfo_message_type_changed_to_mul")
hgs
parents:
diff changeset
    46
#define LOC_POP_MESSAGE_CHANGE_TEXT hbTrId("txt_messaging_dpopinfo_message_type_changed_to_tex")
hgs
parents:
diff changeset
    47
hgs
parents:
diff changeset
    48
//---------------------------------------------------------------
hgs
parents:
diff changeset
    49
// MsgUnifiedEditorMonitor::MsgUnifiedEditorMonitor
hgs
parents:
diff changeset
    50
// @see header file
hgs
parents:
diff changeset
    51
//---------------------------------------------------------------
hgs
parents:
diff changeset
    52
MsgUnifiedEditorMonitor::MsgUnifiedEditorMonitor(QObject* parent) :
hgs
parents:
diff changeset
    53
QObject(parent),
hgs
parents:
diff changeset
    54
mSkipNote(false)
48
4f501b74aeb1 201029_02
hgs
parents: 41
diff changeset
    55
{    
4f501b74aeb1 201029_02
hgs
parents: 41
diff changeset
    56
    mUniEditorGenUtils = q_check_ptr( new UniEditorGenUtils);
4f501b74aeb1 201029_02
hgs
parents: 41
diff changeset
    57
    init(); 
37
hgs
parents:
diff changeset
    58
}
hgs
parents:
diff changeset
    59
hgs
parents:
diff changeset
    60
//---------------------------------------------------------------
hgs
parents:
diff changeset
    61
// MsgUnifiedEditorMonitor::~MsgUnifiedEditorMonitor
hgs
parents:
diff changeset
    62
// @see header file
hgs
parents:
diff changeset
    63
//---------------------------------------------------------------
hgs
parents:
diff changeset
    64
MsgUnifiedEditorMonitor::~MsgUnifiedEditorMonitor()
hgs
parents:
diff changeset
    65
{
hgs
parents:
diff changeset
    66
    delete mUniEditorGenUtils;
hgs
parents:
diff changeset
    67
}
hgs
parents:
diff changeset
    68
hgs
parents:
diff changeset
    69
//---------------------------------------------------------------
hgs
parents:
diff changeset
    70
// MsgUnifiedEditorMonitor::init
hgs
parents:
diff changeset
    71
// @see header file
hgs
parents:
diff changeset
    72
//---------------------------------------------------------------
hgs
parents:
diff changeset
    73
void MsgUnifiedEditorMonitor::init()
hgs
parents:
diff changeset
    74
{
hgs
parents:
diff changeset
    75
    mMessageType = ConvergedMessage::Sms;
hgs
parents:
diff changeset
    76
    mBodySize = 0;
hgs
parents:
diff changeset
    77
    mContainerSize = 0;
hgs
parents:
diff changeset
    78
    mSubjectSize = 0;
hgs
parents:
diff changeset
    79
    mMsgCurrAddressCount = 0;
hgs
parents:
diff changeset
    80
hgs
parents:
diff changeset
    81
    mMaxMmsSize = KDefaultMaxSize;
48
4f501b74aeb1 201029_02
hgs
parents: 41
diff changeset
    82
    TRAP_IGNORE(mMaxMmsSize = mUniEditorGenUtils->MaxMmsMsgSizeL());
37
hgs
parents:
diff changeset
    83
hgs
parents:
diff changeset
    84
    mMaxSmsRecipients = KDefaultSmsRecipients;
48
4f501b74aeb1 201029_02
hgs
parents: 41
diff changeset
    85
    TRAP_IGNORE(mMaxSmsRecipients = mUniEditorGenUtils->MaxSmsRecipientsL());
37
hgs
parents:
diff changeset
    86
hgs
parents:
diff changeset
    87
    mMaxMmsRecipients = KDefaultMmsRecipients;
48
4f501b74aeb1 201029_02
hgs
parents: 41
diff changeset
    88
    TRAP_IGNORE(mMaxMmsRecipients = mUniEditorGenUtils->MaxMmsRecipientsL());
37
hgs
parents:
diff changeset
    89
}
hgs
parents:
diff changeset
    90
hgs
parents:
diff changeset
    91
//---------------------------------------------------------------
hgs
parents:
diff changeset
    92
// MsgUnifiedEditorMonitor::handleContentChange
hgs
parents:
diff changeset
    93
// @see header file
hgs
parents:
diff changeset
    94
//---------------------------------------------------------------
hgs
parents:
diff changeset
    95
void MsgUnifiedEditorMonitor::handleContentChange()
hgs
parents:
diff changeset
    96
{
hgs
parents:
diff changeset
    97
    // get the projected message type & show the type change note
hgs
parents:
diff changeset
    98
    ConvergedMessage::MessageType newMsgType = projectedMsgType();    
hgs
parents:
diff changeset
    99
    if(mMessageType != newMsgType)
hgs
parents:
diff changeset
   100
    {
hgs
parents:
diff changeset
   101
        mMessageType = newMsgType;
hgs
parents:
diff changeset
   102
        QString noteStr;
hgs
parents:
diff changeset
   103
        if(newMsgType == ConvergedMessage::Sms)
hgs
parents:
diff changeset
   104
        {
hgs
parents:
diff changeset
   105
            noteStr = LOC_POP_MESSAGE_CHANGE_TEXT;
hgs
parents:
diff changeset
   106
        }
hgs
parents:
diff changeset
   107
        else
hgs
parents:
diff changeset
   108
        {
hgs
parents:
diff changeset
   109
            noteStr = LOC_POP_MESSAGE_CHANGE_MUL;
hgs
parents:
diff changeset
   110
        }
hgs
parents:
diff changeset
   111
        showPopup(noteStr);
hgs
parents:
diff changeset
   112
    }
hgs
parents:
diff changeset
   113
hgs
parents:
diff changeset
   114
    HbWidget* senderWidget = qobject_cast<HbWidget*>(sender());
hgs
parents:
diff changeset
   115
    updateMsgInfo(senderWidget);
hgs
parents:
diff changeset
   116
    updateSend();
hgs
parents:
diff changeset
   117
}
hgs
parents:
diff changeset
   118
hgs
parents:
diff changeset
   119
//---------------------------------------------------------------
hgs
parents:
diff changeset
   120
// MsgUnifiedEditorMonitor::projectedMsgType
hgs
parents:
diff changeset
   121
// @see header file
hgs
parents:
diff changeset
   122
//---------------------------------------------------------------
hgs
parents:
diff changeset
   123
ConvergedMessage::MessageType MsgUnifiedEditorMonitor::projectedMsgType()
hgs
parents:
diff changeset
   124
{
hgs
parents:
diff changeset
   125
    ConvergedMessage::MessageType newMsgType = ConvergedMessage::Sms;
hgs
parents:
diff changeset
   126
hgs
parents:
diff changeset
   127
    // check if MMS content is present in any of the editor component
hgs
parents:
diff changeset
   128
    if( bodyHasMMSContent() ||
hgs
parents:
diff changeset
   129
        subjectHasMMSContent() ||
hgs
parents:
diff changeset
   130
        containerHasMMSContent() ||
hgs
parents:
diff changeset
   131
        otherMMSCriteriaMet() )
hgs
parents:
diff changeset
   132
    {
hgs
parents:
diff changeset
   133
        newMsgType = ConvergedMessage::Mms;
hgs
parents:
diff changeset
   134
    }
hgs
parents:
diff changeset
   135
    return newMsgType;
hgs
parents:
diff changeset
   136
}
hgs
parents:
diff changeset
   137
hgs
parents:
diff changeset
   138
//---------------------------------------------------------------
hgs
parents:
diff changeset
   139
// MsgUnifiedEditorMonitor::updateMsgInfo
hgs
parents:
diff changeset
   140
// @see header file
hgs
parents:
diff changeset
   141
//---------------------------------------------------------------
hgs
parents:
diff changeset
   142
void MsgUnifiedEditorMonitor::updateMsgInfo(HbWidget* senderWidget)
hgs
parents:
diff changeset
   143
{
hgs
parents:
diff changeset
   144
    if(mMessageType == ConvergedMessage::Mms)
hgs
parents:
diff changeset
   145
    {
hgs
parents:
diff changeset
   146
        //Disable char counter & add subject
hgs
parents:
diff changeset
   147
        view()->mBody->disableCharCounter();
hgs
parents:
diff changeset
   148
        view()->addSubject();
hgs
parents:
diff changeset
   149
    }
41
25fe1fe642e3 201027_02
hgs
parents: 37
diff changeset
   150
    else
25fe1fe642e3 201027_02
hgs
parents: 37
diff changeset
   151
    {
25fe1fe642e3 201027_02
hgs
parents: 37
diff changeset
   152
        //Enable char counter
25fe1fe642e3 201027_02
hgs
parents: 37
diff changeset
   153
        view()->mBody->enableCharCounter();    
25fe1fe642e3 201027_02
hgs
parents: 37
diff changeset
   154
    }
37
hgs
parents:
diff changeset
   155
hgs
parents:
diff changeset
   156
    // check if sent by body widget
hgs
parents:
diff changeset
   157
    MsgUnifiedEditorBody* body = NULL;
hgs
parents:
diff changeset
   158
    body = qobject_cast<MsgUnifiedEditorBody*>(senderWidget);
hgs
parents:
diff changeset
   159
    if(body)
hgs
parents:
diff changeset
   160
    {
hgs
parents:
diff changeset
   161
        mBodySize = view()->mBody->bodySize();
hgs
parents:
diff changeset
   162
        view()->setAttachOptionEnabled(
hgs
parents:
diff changeset
   163
                MsgUnifiedEditorView::TBE_PHOTO, !view()->mBody->hasImage());
hgs
parents:
diff changeset
   164
        view()->setAttachOptionEnabled(
hgs
parents:
diff changeset
   165
                MsgUnifiedEditorView::TBE_SOUND, !view()->mBody->hasAudio());
hgs
parents:
diff changeset
   166
        return;
hgs
parents:
diff changeset
   167
    }
hgs
parents:
diff changeset
   168
    
hgs
parents:
diff changeset
   169
    // check if sent by subject widget
hgs
parents:
diff changeset
   170
    MsgUnifiedEditorSubject* subject = NULL;
hgs
parents:
diff changeset
   171
    subject = qobject_cast<MsgUnifiedEditorSubject*>(senderWidget);
hgs
parents:
diff changeset
   172
    if(subject)
hgs
parents:
diff changeset
   173
    {
hgs
parents:
diff changeset
   174
        mSubjectSize = view()->mSubjectField->subjectSize();
hgs
parents:
diff changeset
   175
        return;
hgs
parents:
diff changeset
   176
    }
hgs
parents:
diff changeset
   177
hgs
parents:
diff changeset
   178
    // check if sent by attachment container widget
hgs
parents:
diff changeset
   179
    MsgAttachmentContainer* container = NULL;
hgs
parents:
diff changeset
   180
    container = qobject_cast<MsgAttachmentContainer*>(senderWidget);
hgs
parents:
diff changeset
   181
    if(container)
hgs
parents:
diff changeset
   182
    {
hgs
parents:
diff changeset
   183
        mContainerSize = view()->mAttachmentContainer->containerSize();
hgs
parents:
diff changeset
   184
        return;
hgs
parents:
diff changeset
   185
    }
hgs
parents:
diff changeset
   186
hgs
parents:
diff changeset
   187
    // handle content change from other widgets e.g. To, Cc, Bcc address field
hgs
parents:
diff changeset
   188
    int totalAddressCount = view()->mToField->addressCount();
hgs
parents:
diff changeset
   189
    if(view()->mCcField && view()->mBccField)
hgs
parents:
diff changeset
   190
    {
hgs
parents:
diff changeset
   191
        totalAddressCount += view()->mCcField->addressCount() +
hgs
parents:
diff changeset
   192
                view()->mBccField->addressCount();
hgs
parents:
diff changeset
   193
    }
hgs
parents:
diff changeset
   194
    mMsgCurrAddressCount = totalAddressCount;
hgs
parents:
diff changeset
   195
    return;
hgs
parents:
diff changeset
   196
}
hgs
parents:
diff changeset
   197
hgs
parents:
diff changeset
   198
//---------------------------------------------------------------
hgs
parents:
diff changeset
   199
// MsgUnifiedEditorMonitor::showPopup
hgs
parents:
diff changeset
   200
// @see header file
hgs
parents:
diff changeset
   201
//---------------------------------------------------------------
hgs
parents:
diff changeset
   202
void MsgUnifiedEditorMonitor::showPopup(const QString& text)
hgs
parents:
diff changeset
   203
{
hgs
parents:
diff changeset
   204
    if(!mSkipNote)
hgs
parents:
diff changeset
   205
    {
hgs
parents:
diff changeset
   206
        HbNotificationDialog* dlg = new HbNotificationDialog();
hgs
parents:
diff changeset
   207
        dlg->setFocusPolicy(Qt::NoFocus);
hgs
parents:
diff changeset
   208
        dlg->setDismissPolicy(HbPopup::TapAnywhere);
hgs
parents:
diff changeset
   209
        dlg->setAttribute(Qt::WA_DeleteOnClose, true);
48
4f501b74aeb1 201029_02
hgs
parents: 41
diff changeset
   210
        dlg->setTitle(text);
37
hgs
parents:
diff changeset
   211
        dlg->show();
hgs
parents:
diff changeset
   212
    }
hgs
parents:
diff changeset
   213
    // reset skip note flag
hgs
parents:
diff changeset
   214
    mSkipNote = false;
hgs
parents:
diff changeset
   215
}
hgs
parents:
diff changeset
   216
hgs
parents:
diff changeset
   217
//---------------------------------------------------------------
hgs
parents:
diff changeset
   218
// MsgUnifiedEditorMonitor::view
hgs
parents:
diff changeset
   219
// @see header file
hgs
parents:
diff changeset
   220
//---------------------------------------------------------------
hgs
parents:
diff changeset
   221
MsgUnifiedEditorView* MsgUnifiedEditorMonitor::view()
hgs
parents:
diff changeset
   222
{
hgs
parents:
diff changeset
   223
    return static_cast<MsgUnifiedEditorView*>(this->parent());
hgs
parents:
diff changeset
   224
}
hgs
parents:
diff changeset
   225
hgs
parents:
diff changeset
   226
//---------------------------------------------------------------
hgs
parents:
diff changeset
   227
// MsgUnifiedEditorMonitor::bodyHasMMSContent
hgs
parents:
diff changeset
   228
// @see header file
hgs
parents:
diff changeset
   229
//---------------------------------------------------------------
hgs
parents:
diff changeset
   230
bool MsgUnifiedEditorMonitor::bodyHasMMSContent()
hgs
parents:
diff changeset
   231
{
hgs
parents:
diff changeset
   232
    MsgUnifiedEditorBody* edBody = view()->mBody;
hgs
parents:
diff changeset
   233
    // If any media-object is present inside body
hgs
parents:
diff changeset
   234
    if(!edBody->mediaContent().isEmpty())
hgs
parents:
diff changeset
   235
    {
hgs
parents:
diff changeset
   236
        return true;
hgs
parents:
diff changeset
   237
    }
hgs
parents:
diff changeset
   238
    
hgs
parents:
diff changeset
   239
    int bodyTextSize = mUniEditorGenUtils->UTF8Size(edBody->text());
hgs
parents:
diff changeset
   240
    int maxSmsSize = 0;
hgs
parents:
diff changeset
   241
    TRAP_IGNORE(maxSmsSize = 
hgs
parents:
diff changeset
   242
           mUniEditorGenUtils->MaxSmsMsgSizeL(edBody->isUnicode()));
hgs
parents:
diff changeset
   243
    // If body text size exceeds sms text-size limit
hgs
parents:
diff changeset
   244
    if(bodyTextSize > maxSmsSize)
hgs
parents:
diff changeset
   245
    {
hgs
parents:
diff changeset
   246
        return true;
hgs
parents:
diff changeset
   247
    }
hgs
parents:
diff changeset
   248
    return false;
hgs
parents:
diff changeset
   249
}
hgs
parents:
diff changeset
   250
hgs
parents:
diff changeset
   251
//---------------------------------------------------------------
hgs
parents:
diff changeset
   252
// MsgUnifiedEditorMonitor::subjectHasMMSContent
hgs
parents:
diff changeset
   253
// @see header file
hgs
parents:
diff changeset
   254
//---------------------------------------------------------------
hgs
parents:
diff changeset
   255
bool MsgUnifiedEditorMonitor::subjectHasMMSContent()
hgs
parents:
diff changeset
   256
{
hgs
parents:
diff changeset
   257
    MsgUnifiedEditorSubject* edSubject = view()->mSubjectField;
hgs
parents:
diff changeset
   258
    ConvergedMessage::Priority priority = ConvergedMessage::Normal;
hgs
parents:
diff changeset
   259
    QString subjectText;
hgs
parents:
diff changeset
   260
    if(edSubject)
hgs
parents:
diff changeset
   261
    {
hgs
parents:
diff changeset
   262
        priority = edSubject->priority();
hgs
parents:
diff changeset
   263
        subjectText = edSubject->text();
hgs
parents:
diff changeset
   264
    }
hgs
parents:
diff changeset
   265
    // If priority is set to other than Normal or
hgs
parents:
diff changeset
   266
    // If subject has some content
hgs
parents:
diff changeset
   267
    if( (priority != ConvergedMessage::Normal) ||
hgs
parents:
diff changeset
   268
        !subjectText.isEmpty() )
hgs
parents:
diff changeset
   269
    {
hgs
parents:
diff changeset
   270
        return true;
hgs
parents:
diff changeset
   271
    }
hgs
parents:
diff changeset
   272
    return false;
hgs
parents:
diff changeset
   273
}
hgs
parents:
diff changeset
   274
hgs
parents:
diff changeset
   275
//---------------------------------------------------------------
hgs
parents:
diff changeset
   276
// MsgUnifiedEditorMonitor::containerHasMMSContent
hgs
parents:
diff changeset
   277
// @see header file
hgs
parents:
diff changeset
   278
//---------------------------------------------------------------
hgs
parents:
diff changeset
   279
bool MsgUnifiedEditorMonitor::containerHasMMSContent()
hgs
parents:
diff changeset
   280
{
hgs
parents:
diff changeset
   281
    QString bodyText = view()->mBody->text();
hgs
parents:
diff changeset
   282
    MsgAttachmentContainer* edContainer = view()->mAttachmentContainer;
hgs
parents:
diff changeset
   283
    bool hasMMAttachmentContent = false;
hgs
parents:
diff changeset
   284
    int attachmentCount = 0;
hgs
parents:
diff changeset
   285
    if(edContainer)
hgs
parents:
diff changeset
   286
    {
hgs
parents:
diff changeset
   287
        hasMMAttachmentContent = edContainer->hasMMContent();
hgs
parents:
diff changeset
   288
        attachmentCount = edContainer->count();
hgs
parents:
diff changeset
   289
    }
hgs
parents:
diff changeset
   290
    // If MM attachments are present or
hgs
parents:
diff changeset
   291
    // If only one non-MM attachment is present e.g. vcf along with body text
hgs
parents:
diff changeset
   292
    if( hasMMAttachmentContent ||
hgs
parents:
diff changeset
   293
        ((attachmentCount == 1) && !bodyText.isEmpty()) )
hgs
parents:
diff changeset
   294
    {
hgs
parents:
diff changeset
   295
        return true;
hgs
parents:
diff changeset
   296
    }
hgs
parents:
diff changeset
   297
    return false;
hgs
parents:
diff changeset
   298
}
hgs
parents:
diff changeset
   299
hgs
parents:
diff changeset
   300
//---------------------------------------------------------------
hgs
parents:
diff changeset
   301
// MsgUnifiedEditorMonitor::otherMMSCriteriaMet
hgs
parents:
diff changeset
   302
// @see header file
hgs
parents:
diff changeset
   303
//---------------------------------------------------------------
hgs
parents:
diff changeset
   304
bool MsgUnifiedEditorMonitor::otherMMSCriteriaMet()
hgs
parents:
diff changeset
   305
{
hgs
parents:
diff changeset
   306
    MsgUnifiedEditorAddress* edCc = view()->mCcField;
hgs
parents:
diff changeset
   307
    MsgUnifiedEditorAddress* edBcc = view()->mBccField;
hgs
parents:
diff changeset
   308
    int ccCount = 0;
hgs
parents:
diff changeset
   309
    int bccCount = 0;
hgs
parents:
diff changeset
   310
    if(edCc && edBcc)
hgs
parents:
diff changeset
   311
    {
hgs
parents:
diff changeset
   312
        ccCount = edCc->addressCount();
hgs
parents:
diff changeset
   313
        bccCount = edBcc->addressCount();
hgs
parents:
diff changeset
   314
    }
hgs
parents:
diff changeset
   315
    // If CC/BCC has some content or
hgs
parents:
diff changeset
   316
    // If to-recipients count exceeds max sms recipient count
hgs
parents:
diff changeset
   317
    if( ccCount || bccCount ||
hgs
parents:
diff changeset
   318
        (view()->mToField->addressCount() > mMaxSmsRecipients) )
hgs
parents:
diff changeset
   319
    {
hgs
parents:
diff changeset
   320
        return true;
hgs
parents:
diff changeset
   321
    }
hgs
parents:
diff changeset
   322
    
hgs
parents:
diff changeset
   323
    // If to-field contains an email address
hgs
parents:
diff changeset
   324
    bool isEmailPresent = false;
hgs
parents:
diff changeset
   325
    ConvergedMessageAddressList addrList = view()->mToField->addresses();
hgs
parents:
diff changeset
   326
    TRAP_IGNORE(isEmailPresent = mUniEditorGenUtils->VerifyEmailAddressesL(addrList));
hgs
parents:
diff changeset
   327
    if(isEmailPresent)
hgs
parents:
diff changeset
   328
    {
hgs
parents:
diff changeset
   329
        return true;
hgs
parents:
diff changeset
   330
    }
hgs
parents:
diff changeset
   331
    return false;
hgs
parents:
diff changeset
   332
}
hgs
parents:
diff changeset
   333
hgs
parents:
diff changeset
   334
//---------------------------------------------------------------
hgs
parents:
diff changeset
   335
// MsgUnifiedEditorMonitor::updateSend
hgs
parents:
diff changeset
   336
// @see header file
hgs
parents:
diff changeset
   337
//---------------------------------------------------------------
hgs
parents:
diff changeset
   338
void MsgUnifiedEditorMonitor::updateSend()
hgs
parents:
diff changeset
   339
{
hgs
parents:
diff changeset
   340
    if (mMsgCurrAddressCount > 0 && (mSubjectSize + mBodySize + mContainerSize) > 0 && !view()->mBody->isImageResizing())
hgs
parents:
diff changeset
   341
    {
hgs
parents:
diff changeset
   342
        emit enableSend(true);
hgs
parents:
diff changeset
   343
    }
hgs
parents:
diff changeset
   344
    else
hgs
parents:
diff changeset
   345
    {
hgs
parents:
diff changeset
   346
        emit enableSend(false);
hgs
parents:
diff changeset
   347
    }
hgs
parents:
diff changeset
   348
}
hgs
parents:
diff changeset
   349
hgs
parents:
diff changeset
   350
hgs
parents:
diff changeset
   351
//EOF