--- a/emailservices/emaildebug/inc/emailtrace.h Fri May 14 04:17:40 2010 +0300
+++ b/emailservices/emaildebug/inc/emailtrace.h Fri May 14 04:41:45 2010 +0300
@@ -1,309 +1,190 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: Header file describing trace utilities for commonemail
-*
-*/
+ * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description:
+ *
+ */
#ifndef EMAILTRACE_H
#define EMAILTRACE_H
-#include "emailtraceconfig.hrh"
+#include <e32debug.h>
+#include <qdebug.h>
+#include <qfile.h>
-#ifdef TRACE_INTO_FILE
-#include <flogger.h> // RFileLogger
-#else
-#include <e32debug.h> // RDebug
-#endif
+/*
+ * The macros COMMENT_TRACES, ERROR_TRACES, and FUNCTION_TRACES control which
+ * trace messages are printed. The trace message logging is controlled with
+ * the LOG_TO_FILE macro, whereas the LOG_FILE macro defines which file is to
+ * be used in logging. The print_trace() helper function implements printing.
+ * If LOG_TO_FILE is zero or the LOG_FILE cannot be opened, the messages are
+ * printed to qDebug().
+ */
+#if defined(DEBUG) || defined(_DEBUG)
-/**
-* Constants
-*/
-#ifdef TRACE_INTO_FILE
+#define COMMENT_TRACES 1
+#define ERROR_TRACES 1
+#define FUNCTION_TRACES 1
+
+#if COMMENT_TRACES || ERROR_TRACES || FUNCTION_TRACES
+
+#define LOG_TO_FILE 0
+#define LOG_FILE "c:/logs/nmail_trace.log"
- _LIT( KEmailDir, "email" );
- _LIT( KEmailTraceFile, "email.txt" );
+inline void print_trace(const QString& msg)
+{
+ QFile out(LOG_FILE);
+ if (LOG_TO_FILE && out.open(QIODevice::Append | QIODevice::Text)) {
+ QDebug(&out) << "[Nmail]" << msg;
+ out.putChar('\n');
+ out.close();
+ } else {
+ qDebug() << "[Nmail]" << msg;
+ }
+}
#endif
-//-----------------------------------------------------------------------------
-// Error trace macros
-//-----------------------------------------------------------------------------
-//
-#ifdef ERROR_TRACE
-
- /**
- * Error trace definitions. Does not automatically log the error code!
- */
- #ifdef TRACE_INTO_FILE
+#endif /* DEBUG */
- #define ERROR( aErr, aMsg )\
- {\
- if( aErr != KErrNone )\
- {\
- _LIT( KMsg, aMsg );\
- RFileLogger::Write( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KMsg );\
- }\
- }
- #define ERROR_1( aErr, aMsg, aP1 )\
- {\
- if( aErr != KErrNone )\
- {\
- _LIT( KMsg, aMsg );\
- RFileLogger::WriteFormat( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KMsg, aP1 );\
- }\
- }
- #define ERROR_2( aErr, aMsg, aP1, aP2 )\
- {\
- if( aErr != KErrNone )\
- {\
- _LIT( KMsg, aMsg );\
- RFileLogger::WriteFormat( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KMsg, aP1, aP2 );\
- }\
- }
- #define ERROR_3( aErr, aMsg, aP1, aP2, aP3 )\
- {\
- if( aErr != KErrNone )\
- {\
- _LIT( KMsg, aMsg );\
- RFileLogger::WriteFormat( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KMsg, aP1, aP2, aP3 );\
- }\
- }
- #define ERROR_GEN( aMsg ) ERROR( KErrGeneral, aMsg )
- #define ERROR_GEN_1( aMsg, aP1 ) ERROR_1( KErrGeneral, aMsg, aP1 )
-
- #else//TRACE_INTO_FILE not defined
+/*
+ * The function NM_COMMENT() prints a trace message. The INFO macros are
+ * provided for legacy compatibility. They are deprecated and should not be
+ * used. If sprintf() type of formatting is desired, consider using QString::
+ * arg() or QTextStream.
+ */
+#if COMMENT_TRACES
- #define ERROR( aErr, aMsg )\
- {\
- if( aErr != KErrNone )\
- {\
- _LIT( KMsg, aMsg ); RDebug::Print( KMsg );\
- }\
- }
- #define ERROR_1( aErr, aMsg, aP1 )\
- {\
- if( aErr != KErrNone )\
- {\
- _LIT( KMsg, aMsg ); RDebug::Print( KMsg, aP1 );\
- }\
- }
- #define ERROR_2( aErr, aMsg, aP1, aP2 )\
- {\
- if( aErr != KErrNone )\
- {\
- _LIT( KMsg, aMsg ); RDebug::Print( KMsg, aP1, aP2 );\
- }\
- }
- #define ERROR_3( aErr, aMsg, aP1, aP2, aP3 )\
- {\
- if( aErr != KErrNone )\
- {\
- _LIT( KMsg, aMsg ); RDebug::Print( KMsg, aP1, aP2, aP3 );\
- }\
- }
- #define ERROR_GEN( aMsg ) ERROR( KErrGeneral, aMsg )
- #define ERROR_GEN_1( aMsg, aP1 ) ERROR_1( KErrGeneral, aMsg, aP1 )
-
- #endif//TRACE_INTO_FILE
-
-#else//ERROR_TRACE not defined
+inline void NM_COMMENT(const QString& msg)
+{
+ print_trace("COMMENT : " + msg);
+}
+#define INFO(msg) NM_COMMENT(msg)
+#define INFO_1(msg,arg1)\
+do {\
+ QString __msg;\
+ __msg.sprintf(msg,arg1);\
+ NM_COMMENT(__msg);\
+} while (0)
+#define INFO_2(msg,arg1,arg2)\
+do {\
+ QString __msg;\
+ __msg.sprintf(msg,arg1,arg2);\
+ NM_COMMENT(__msg);\
+} while (0)
+#define INFO_3(msg,arg1,arg2,arg3)\
+do {\
+ QString __msg;\
+ __msg.sprintf(msg,arg1,arg2,arg3);\
+ NM_COMMENT(__msg);\
+} while (0)
- #define ERROR( aErr, aMsg )
- #define ERROR_1( aErr, aMsg, aP1 )
- #define ERROR_2( aErr, aMsg, aP1, aP2 )
- #define ERROR_3( aErr, aMsg, aP1, aP2, aP3 )
- #define ERROR_GEN( aMsg )
- #define ERROR_GEN_1( aMsg, aP1 )
-
-#endif//ERROR_TRACE
+#else
-//-----------------------------------------------------------------------------
-// Info trace macros
-//-----------------------------------------------------------------------------
-//
-#ifdef INFO_TRACE
-
- /**
- * Info log message definitions.
- */
- #ifdef TRACE_INTO_FILE
+#define NM_COMMENT(msg)
+#define INFO(msg)
+#define INFO_1(msg,arg1)
+#define INFO_2(msg,arg1,arg2)
+#define INFO_3(msg,arg1,arg2,arg3)
- #define INFO( aMsg )\
- {\
- _LIT( KMsg, aMsg );\
- RFileLogger::Write( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KMsg );\
- }
- #define INFO_1( aMsg, aP1 )\
- {\
- _LIT( KMsg, aMsg );\
- RFileLogger::WriteFormat( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KMsg, aP1 );\
- }
- #define INFO_2( aMsg, aP1, aP2 )\
- {\
- _LIT( KMsg, aMsg );\
- RFileLogger::WriteFormat( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KMsg, aP1, aP2 );\
- }
- #define INFO_3( aMsg, aP1, aP2, aP3 )\
- {\
- _LIT( KMsg, aMsg );\
- RFileLogger::WriteFormat( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KMsg, aP1, aP2, aP3 );\
- }
+#endif /* COMMENT_TRACES */
- #else//TRACE_INTO_FILE not defined
+/*
+ * The function NM_ERROR() prints its second argument if the first argument
+ * is non-zero. The ERROR macros are provided for legacy compatibility. They
+ * are deprecated and should not be used. If sprintf() type of formatting is
+ * desired, consider using QString::arg() or QTextStream.
+ */
+#if ERROR_TRACES
- #define INFO( aMsg )\
- {\
- _LIT( KMsg, aMsg ); RDebug::Print( KMsg );\
- }
- #define INFO_1( aMsg, aP1 )\
- {\
- _LIT( KMsg, aMsg ); RDebug::Print( KMsg, aP1 );\
- }
- #define INFO_2( aMsg, aP1, aP2 )\
- {\
- _LIT( KMsg, aMsg ); RDebug::Print( KMsg, aP1, aP2 );\
- }
- #define INFO_3( aMsg, aP1, aP2, aP3 )\
- {\
- _LIT( KMsg, aMsg ); RDebug::Print( KMsg, aP1, aP2, aP3 );\
- }
-
- #endif//TRACE_INTO_FILE
-
-#else//INFO_TRACE not defined
-
- #define INFO( aMsg )
- #define INFO_1( aMsg, aP1 )
- #define INFO_2( aMsg, aP1, aP2 )
- #define INFO_3( aMsg, aP1, aP2, aP3 )
-
-#endif//INFO_TRACE
-
-//-----------------------------------------------------------------------------
-// Function trace macros
-//-----------------------------------------------------------------------------
-//
-#ifdef FUNC_TRACE
+inline void NM_ERROR(int err, const QString& msg)
+{
+ if (err) {
+ print_trace("ERROR : " + msg);
+ }
+}
+#define ERROR(err,msg) NM_ERROR(err,msg)
+#define ERROR_1(err,msg,arg1)\
+do {\
+ QString __msg;\
+ __msg.sprintf(msg,arg1);\
+ NM_ERROR(err,__msg);\
+} while (0)
+#define ERROR_2(err,msg,arg1,arg2)\
+do {\
+ QString __msg;\
+ __msg.sprintf(msg,arg1,arg2);\
+ NM_ERROR(err,__msg);\
+} while(0)
+#define ERROR_3(err,msg,arg1,arg2,arg3)\
+do {\
+ QString __msg;\
+ __msg.sprintf(msg,arg1,srg2,arg3);\
+ NM_ERROR(err,__msg);\
+} while(0)
+#define ERROR_GEN(msg) ERROR(KErrGeneral,msg)
+#define ERROR_GEN_1(msg,arg1) ERROR_1(KErrGeneral,msg,arg1)
- // Constants
- _LIT8( KEllipse, "(" );
-
- /**
- * Function logging definitions.
- */
- #ifdef TRACE_INTO_FILE
-
- #define FUNC( aMsg, aP1 )\
- {\
- _LIT8( KMsg, aMsg ); RFileLogger::WriteFormat( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KMsg, aP1 );\
- }\
-
- #else//TRACE_INTO_FILE not defined
+#else
- #define FUNC( aMsg, aP1 )\
- {\
- RDebug::Printf( aMsg, aP1 );\
- }\
-
- #endif//TRACE_INTO_FILE
+#define NM_ERROR(err,msg)
+#define ERROR(err,msg)
+#define ERROR_1(err,msg,arg1)
+#define ERROR_2(err,msg,arg1,arg2)
+#define ERROR_3(err,msg,arg1,arg2,arg3)
+#define ERROR_GEN(msg)
+#define ERROR_GEN_1(msg,arg1)
- /**
- * Function trace helper class.
- */
- class TFuncLog
- {
- public:
- inline TFuncLog( const char* aFunc ): iFunc( (TUint8*)aFunc )
- {
- TInt pos = iFunc.Find( KEllipse );
- if( pos != KErrNotFound )
- {
- iFunc.Set( iFunc.Left( iFunc.Find( KEllipse ) ) );
- }
- #ifdef TRACE_INTO_FILE
+#endif /* ERROR_TRACES */
- //"CMAIL" string is added in the beginning of every trace
- //line for filtering purposes
- FUNC( "CMAIL %S <", &iFunc );
-
- #else//TRACE_INTO_FILE notdefined
-
- FUNC( "CMAIL %s <", iFunc.Ptr() );
-
- #endif//TRACE_INTO_FILE
- }
- inline ~TFuncLog()
- {
- #ifdef TRACE_INTO_FILE
-
- FUNC( "CMAIL %S >", &iFunc );
-
- #else//TRACE_INTO_FILE not defined
-
- FUNC( "CMAIL %s >", iFunc.Ptr() );
-
- #endif//TRACE_INTO_FILE
- }
- TPtrC8 iFunc;
- };
-
- #define FUNC_LOG TFuncLog _fl( __PRETTY_FUNCTION__ );
-
-#else//FUNC_TRACE not defined
-
- #define FUNC_LOG
-
-#endif//FUNC_TRACE
+/*
+ * The macro NM_FUNCTION, when used inside a function body, enables tracing
+ * for a function. Trace messages with labels ENTER and RETURN are printed
+ * when entering into and returning from a function, respectively. In case of
+ * an exception or a Symbian leave, a message with label UNWIND is printed
+ * (UNWIND stands for stack unwinding). The FUNC_LOG macro is provided for
+ * legacy compatibility. It is deprecated and should not be used.
+ */
+#if FUNCTION_TRACES
-//-----------------------------------------------------------------------------
-// Timestamp trace macros
-//-----------------------------------------------------------------------------
-//
-#ifdef TIMESTAMP_TRACE
-
- #ifdef TRACE_INTO_FILE
-
- #define TIMESTAMP( aCaption )\
- {\
- TTime t;\
- t.HomeTime();\
- TDateTime dt = t.DateTime();\
- _LIT( KMsg, aCaption );\
- _LIT( KFormat, "[TIMESTAMP] %S %d:%02d:%02d.%d us");\
- RFileLogger::WriteFormat( KEmailDir, KEmailTraceFile, EFileLoggingModeAppend, KFormat,\
- &KMsg, dt.Hour(), dt.Minute(), dt.Second(), dt.MicroSecond() );\
- }
-
- #else//TRACE_INTO_FILE not defined
+class __ftracer
+{
+public:
+ __ftracer(const QString& _fn)
+ : fn(_fn)
+ {
+ print_trace("ENTER : " + fn);
+ }
+ ~__ftracer()
+ {
+ if (std::uncaught_exception()) {
+ print_trace("UNWIND : " + fn);
+ } else {
+ print_trace("RETURN : " + fn);
+ }
+ }
+private:
+ QString fn;
+};
- #define TIMESTAMP( aCaption )\
- {\
- TTime t;\
- t.HomeTime();\
- TDateTime dt = t.DateTime();\
- _LIT( KMsg, aCaption );\
- _LIT( KFormat, "[TIMESTAMP] %S %d:%02d:%02d.%d us");\
- RDebug::Print( KFormat,\
- &KMsg, dt.Hour(), dt.Minute(), dt.Second(), dt.MicroSecond() );\
- }
+#define NM_FUNCTION __ftracer __ft(__PRETTY_FUNCTION__);
+#define FUNC_LOG NM_FUNCTION
+
+#else
- #endif//TRACE_INTO_FILE
-
-#else//TIMESTAMP_TRACE not defined
+#define NM_FUNCTION
+#define FUNC_LOG
- #define TIMESTAMP( aCaption )
+#endif /* FUNCTION TRACES */
-#endif//TIMESTAMP_TRACE
-
-#endif // EMAILTRACE_H
+#endif /* EMAILTRACE_H */
--- a/emailservices/emaildebug/inc/emailtraceconfig.hrh Fri May 14 04:17:40 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: Configuration header file for tracing utilities in commonemail
-*
-*/
-
-
-#ifndef EMAILTRACECONFIG_HRH
-#define EMAILTRACECONFIG_HRH
-
-#ifndef __WINS__
-#ifdef _DEBUG
-#define ENABLE_TRACES
-#endif // _DEBUG
-#endif // __WINS__
-
-#ifdef ENABLE_TRACES
-/**
-* Trace definitions
-*/
-// Error trace enabled
-#define ERROR_TRACE
-
-// Info trace enabled
-#define INFO_TRACE
-
-// Function trace enabled
-#define FUNC_TRACE
-
-// Tracing into file enabled, default RDebug
-#undef TRACE_INTO_FILE
-
-#endif // ENABLE_TRACES
-
-#endif // EMAILTRACECONFIG_HRH
--- a/emailservices/emailstore/message_store/server/src/MessageStoreServer.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailservices/emailstore/message_store/server/src/MessageStoreServer.cpp Fri May 14 04:41:45 2010 +0300
@@ -38,7 +38,7 @@
#include "ImsPointsecMonitor.h"
#include "ImsPointsecObserver.h"
#include "emailstorepskeys.h" // Support for on-the-fly upgrade
-#include "emailshutdownconst.h"
+//<qmail> removing #include "emailshutdownconst.h"
//</cmail>
// =========
@@ -318,19 +318,9 @@
// Support for on-the-fly upgrade
// Watch for KProperty_EmailStore_Upgrade property. When set to our UID3/SECUREID,
// then, this server should stop.
- RProcess process;
- CleanupClosePushL( process ); //+process
- TSecurityPolicy readPolicy( ECapabilityReadDeviceData );
- TSecurityPolicy writePolicy( ECapabilityWriteDeviceData );
- iUpgradePropertyWatcher = CPSIntPropertyWatcher::NewL( this );
- iUpgradePropertyWatcher->StartL( KEmailShutdownPsCategory,
- EEmailPsKeyShutdownMsgStore,
- KEmailShutterPsValue,
- /*ETrue*/EFalse,
- readPolicy,
- writePolicy );
- CleanupStack::PopAndDestroy(); //-process
-
+
+ // <qmail> removed code to observe shutdown commands
+
__LOG_EXIT
} // end ConstructL
--- a/emailservices/nmailagent/inc/nmmailagent.h Fri May 14 04:17:40 2010 +0300
+++ b/emailservices/nmailagent/inc/nmmailagent.h Fri May 14 04:41:45 2010 +0300
@@ -72,10 +72,10 @@
NmSyncState state,
const NmOperationCompletionEvent &event);
- void handleConnectionEvent(NmConnectState state, const NmId mailboxId);
+ void handleConnectionEvent(NmConnectState state, const NmId mailboxId, int errorcode);
void delayedStart();
-
+
void enableAlertTone();
private:
@@ -104,12 +104,12 @@
bool active, bool refreshAlways);
static QStringList pluginFolders();
-
- bool getMessageUnreadInfo(const NmId &folderId,
+
+ bool getMessageUnreadInfo(const NmId &folderId,
const NmId &messageId, const NmId &mailboxId, bool &unreadMessage);
-
+
void playAlertTone();
-
+
private: // data
NmDataPluginFactory *mPluginFactory;
--- a/emailservices/nmailagent/src/nmmailagent.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailservices/nmailagent/src/nmmailagent.cpp Fri May 14 04:41:45 2010 +0300
@@ -95,8 +95,8 @@
this, SLOT(handleSyncStateEvent(NmSyncState, const NmOperationCompletionEvent&)),
Qt::UniqueConnection);
- connect(plugin, SIGNAL(connectionEvent(NmConnectState, const NmId)),
- this, SLOT(handleConnectionEvent(NmConnectState, const NmId)),
+ connect(plugin, SIGNAL(connectionEvent(NmConnectState, const NmId, int)),
+ this, SLOT(handleConnectionEvent(NmConnectState, const NmId, int)),
Qt::UniqueConnection);
}
}
@@ -438,6 +438,8 @@
if (mailboxInfo->mOutboxFolderId == folderId) {
// The first mail created in the outbox
if (mailboxInfo->mOutboxMails <= 0) {
+ NMLOG("NmMailAgent: first mail in outbox");
+ activate = true;
updateNeeded = true;
}
mailboxInfo->mOutboxMails += messageIds.count();
@@ -483,6 +485,8 @@
// The last mail was now deleted
if (mailboxInfo->mOutboxMails == 0) {
+ NMLOG("NmMailAgent: last mail deleted from outbox");
+
// Keep it active if there is unread mails
activate = mailboxInfo->mUnreadMailIdList.count() > 0;
updateNeeded = true;
@@ -550,9 +554,10 @@
Received from NmFrameworkAdapter connectionState signal
\sa NmFrameworkAdapter
*/
-void NmMailAgent::handleConnectionEvent(NmConnectState state, const NmId mailboxId)
+void NmMailAgent::handleConnectionEvent(NmConnectState state, const NmId mailboxId, int errorcode)
{
- NMLOG(QString("NmMailAgent::handleConnectionEvent %1 %2").arg(state).arg(mailboxId.id()));
+ Q_UNUSED(errorcode);
+ NMLOG(QString("NmMailAgent::handleConnectionEvent %1 %2 %3").arg(state).arg(mailboxId.id()).arg(errorcode));
NmMailboxInfo *mailboxInfo = getMailboxInfo(mailboxId);
if (mailboxInfo) {
// Connecting, Connected, Disconnecting, Disconnected
@@ -627,15 +632,10 @@
// Get branded mailbox icon
NmMailbox mailbox2( mailbox );
QString domainName = mailbox2.address().address();
- int delimIndex = domainName.indexOf('@');
- if( delimIndex >= 0 ) {
- domainName = domainName.mid(delimIndex+1);
- NMLOG(QString("Mailbox domain name: %1").arg(domainName));
- }
EmailMailboxInfo emailMailboxInfo;
mailboxInfo->mIconName =
emailMailboxInfo.mailboxIcon(domainName);
-
+
return mailboxInfo;
}
--- a/emailservices/nmailbase/inc/nmcommon.h Fri May 14 04:17:40 2010 +0300
+++ b/emailservices/nmailbase/inc/nmcommon.h Fri May 14 04:41:45 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2009 - 2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -52,7 +52,8 @@
{
NmMessageCreated,
NmMessageChanged,
- NmMessageDeleted
+ NmMessageDeleted,
+ NmMessageFound // Search functionality related enumeration.
};
Q_DECLARE_METATYPE(NmMessageEvent)
Binary file emailservices/nmutilities/data/2001E277.txt has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/emailservices/nmutilities/data/icons/aol.svg Fri May 14 04:41:45 2010 +0300
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Tiny//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-tiny.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="44" height="44" viewBox="0 0 44 44">
+<rect fill="none" height="44" width="44"/>
+<circle cx="16.782" cy="22.024" fill="#0360A8" r="9.291"/>
+<path d="M4.518,17.73c0.18,0.019,0.272-0.093,0.379-0.323c0.119-0.258,0.648-1.375,0.735-1.551 c0.231-0.471,1.167-1.821,1.349-2.031c0.863-1.013,1.889-1.956,3.134-2.73c1.509-0.926,3.344-1.63,5.262-1.864 c0.462-0.061,1.577-0.099,1.793-0.087c0.427,0.012,1.587,0.132,1.617,0.131c0.085,0.004,0.271-0.014,0.313-0.167 c0.016-0.052-0.005-0.125-0.032-0.156c-0.004-0.004-0.012-0.015-0.014-0.02c-0.019-0.028-0.09-0.087-0.104-0.098 c-0.138-0.105-1.564-0.922-1.657-0.977c-1.035-0.593-9.261-5.346-9.288-5.362C7.279,2.08,6.6,1.943,6.048,2.021 c-0.405,0.057-0.777,0.255-1.045,0.55C4.74,2.853,4.545,3.249,4.441,3.717C4.385,3.978,4.356,4.3,4.356,4.615 c0,0.485-0.01,12.065-0.006,12.406C4.353,17.416,4.326,17.697,4.518,17.73z" fill="#0360A8"/>
+<path d="M19.096,34.852c-0.078-0.121-0.215-0.131-0.438-0.109c-0.053,0-0.107,0.014-0.155,0.018 c-1.094,0.143-2.195,0.131-3.269-0.012c-1.696-0.223-3.345-0.786-4.828-1.652c-1.494-0.877-2.82-2.066-3.885-3.531 c-0.253-0.356-0.496-0.729-0.715-1.111C5.504,27.93,4.97,26.734,4.94,26.669c-0.065-0.136-0.055-0.131-0.143-0.278 c-0.042-0.06-0.091-0.101-0.154-0.117c-0.062-0.017-0.1-0.012-0.135-0.004c-0.079,0.026-0.097,0.045-0.124,0.135 c-0.005,0.029-0.009,0.113-0.017,0.193c-0.002,0.029-0.004,0.135-0.007,0.262c-0.005,0.205-0.003,0.16-0.003,0.355 c0,0.165,0,0.328,0,0.495c0,0.181,0,0.358,0,0.537c0,0.106,0,0.219,0,0.333c0,0.466,0,0.938,0.005,1.411c0,0.725,0,1.446,0,2.174 c0,1.194,0,2.388,0.003,3.58c0,1.196,0,2.392,0,3.584c0,0.034,0,0.065,0,0.103c0,1.418,0.623,2.315,1.571,2.524 c0.376,0.08,0.797,0.06,1.25-0.088c0.256-0.078,0.525-0.199,0.798-0.354c0.427-0.244,10.373-5.979,10.896-6.285 c0.016-0.004,0.068-0.045,0.122-0.097C19.067,35.061,19.154,34.964,19.096,34.852z" fill="#0360A8"/>
+<path d="M26.605,30.391c-0.17-0.162-0.008-0.394,0.256-0.738c0.143-0.188,0.679-0.938,0.773-1.09 c0.336-0.537,0.648-1.09,0.912-1.662c0.123-0.264,0.232-0.531,0.326-0.807c0.456-1.345,0.786-2.753,0.786-4.181 c-0.015-1.726-0.251-3.33-0.929-5.03c-0.158-0.406-0.66-1.395-0.722-1.507c-0.223-0.418-0.538-0.869-0.884-1.364 c-0.282-0.362-0.24-0.553-0.137-0.604c0.021-0.012,0.078-0.031,0.152-0.009c0.03,0.009,0.09,0.021,0.192,0.077 c0.071,0.033,0.205,0.105,0.325,0.174c0.135,0.081,1.1,0.656,1.195,0.708c1.027,0.604,2.023,1.21,3.054,1.812 c1.036,0.596,6.225,3.678,6.251,3.693c0.722,0.426,1.178,0.953,1.373,1.472c0.143,0.379,0.154,0.779,0.031,1.16 c-0.111,0.366-0.349,0.724-0.701,1.044c-0.199,0.184-0.44,0.35-0.715,0.506c-0.422,0.242-10.662,6.021-10.969,6.189 C26.891,30.393,26.738,30.503,26.605,30.391z" fill="#0360A8"/>
+<path d="M15.184,40.294c0,0.92,0.72,1.646,1.634,1.646c0.895,0,1.644-0.752,1.644-1.646 c0-0.938-0.706-1.647-1.644-1.647C15.918,38.646,15.184,39.387,15.184,40.294z M15.435,40.275c0-0.77,0.624-1.393,1.383-1.393 c0.759,0,1.382,0.637,1.382,1.424c0,0.771-0.623,1.396-1.382,1.396C16.069,41.704,15.435,41.051,15.435,40.275z" fill="#0360A8"/>
+<path d="M17.127,40.645l-0.215-0.31l0.05-0.008c0.289-0.031,0.464-0.224,0.464-0.515 c0-0.293-0.201-0.441-0.592-0.441c0,0-0.479,0-0.532,0v1.816h0.301c0-0.059-0.004-0.84-0.004-0.84l0.026,0.006l0.529,0.834 c0,0,0.25,0.006,0.327,0.004C17.432,41.111,17.127,40.645,17.127,40.645z M16.592,40.145v-0.518c0.044,0,0.209,0.005,0.209,0.005 c0.241,0,0.286,0.077,0.286,0.222c0,0.071-0.027,0.295-0.366,0.295C16.721,40.148,16.624,40.145,16.592,40.145z" fill="#0360A8"/>
+</svg>
\ No newline at end of file
Binary file emailservices/nmutilities/data/nmutilities.confml has changed
--- a/emailservices/nmutilities/inc/emailmailboxinfo_p.h Fri May 14 04:17:40 2010 +0300
+++ b/emailservices/nmutilities/inc/emailmailboxinfo_p.h Fri May 14 04:41:45 2010 +0300
@@ -63,11 +63,6 @@
*/
QString mTempIcon;
QString mTempName;
-
- /*!
- information about success or failure during resource file load
- */
- bool mIsResourceLoaded;
/*!
Map of already imported branding keys
--- a/emailservices/nmutilities/nmutilities.pro Fri May 14 04:17:40 2010 +0300
+++ b/emailservices/nmutilities/nmutilities.pro Fri May 14 04:41:45 2010 +0300
@@ -26,7 +26,7 @@
MOBILITY += systeminfo
INCLUDEPATH += inc \
- ../../../inc \
+ ../../inc \
$$MW_LAYER_SYSTEMINCLUDE
DEPENDPATH += src \
@@ -73,12 +73,28 @@
}
#creating rcc file from qrc
-system(rcc -binary data/email_brand.qrc -o data/email_brand.rcc)
+#system(rcc -binary data/email_brand.qrc -o data/email_brand.rcc)
+#RESOURCES += data/email_brand.qrc
+#"data/email_brand.rcc /epoc32/data/Z/resource/apps/email_brand.rcc" \
# Build.inf rules
BLD_INF_RULES.prj_exports += "$${LITERAL_HASH}include <platform_paths.hrh>" \
"rom/nmutilities.iby $$CORE_APP_LAYER_IBY_EXPORT_PATH(nmutilities.iby)" \
- "data/email_brand.rcc /epoc32/data/Z/resource/apps/email_brand.rcc" \
+ "data/icons/gmail.svg /epoc32/release/winscw/udeb/z/resource/apps/gmail.svg" \
+ "data/icons/gmail.svg /epoc32/release/winscw/urel/z/resource/apps/gmail.svg" \
+ "data/icons/gmail.svg /epoc32/data/z/resource/apps/gmail.svg" \
+ "data/icons/microsoft.svg /epoc32/release/winscw/udeb/z/resource/apps/microsoft.svg" \
+ "data/icons/microsoft.svg /epoc32/release/winscw/urel/z/resource/apps/microsoft.svg" \
+ "data/icons/microsoft.svg /epoc32/data/z/resource/apps/microsoft.svg" \
+ "data/icons/ovi.svg /epoc32/release/winscw/udeb/z/resource/apps/ovi.svg" \
+ "data/icons/ovi.svg /epoc32/release/winscw/urel/z/resource/apps/ovi.svg" \
+ "data/icons/ovi.svg /epoc32/data/z/resource/apps/ovi.svg" \
+ "data/icons/yahoo.svg /epoc32/release/winscw/udeb/z/resource/apps/yahoo.svg" \
+ "data/icons/yahoo.svg /epoc32/release/winscw/urel/z/resource/apps/yahoo.svg" \
+ "data/icons/yahoo.svg /epoc32/data/z/resource/apps/yahoo.svg" \
+ "data/icons/aol.svg /epoc32/release/winscw/udeb/z/resource/apps/aol.svg" \
+ "data/icons/aol.svg /epoc32/release/winscw/urel/z/resource/apps/aol.svg" \
+ "data/icons/aol.svg /epoc32/data/z/resource/apps/aol.svg" \
"data/2001E277.txt /epoc32/release/winscw/udeb/z/private/10202be9/2001E277.txt" \
"data/2001E277.txt /epoc32/release/winscw/urel/z/private/10202be9/2001E277.txt" \
"data/2001E277.txt /epoc32/data/z/private/10202be9/2001E277.txt" \
--- a/emailservices/nmutilities/rom/nmutilities.iby Fri May 14 04:17:40 2010 +0300
+++ b/emailservices/nmutilities/rom/nmutilities.iby Fri May 14 04:41:45 2010 +0300
@@ -20,5 +20,10 @@
#include <bldvariant.hrh>
file=ABI_DIR\BUILD_DIR\nmutilities.dll SHARED_LIB_DIR\nmutilities.dll PAGED
+data=DATAZ_\APP_BITMAP_DIR\ovi.svg APP_BITMAP_DIR\ovi.svg
+data=DATAZ_\APP_BITMAP_DIR\gmail.svg APP_BITMAP_DIR\gmail.svg
+data=DATAZ_\APP_BITMAP_DIR\microsoft.svg APP_BITMAP_DIR\microsoft.svg
+data=DATAZ_\APP_BITMAP_DIR\yahoo.svg APP_BITMAP_DIR\yahoo.svg
+data=DATAZ_\APP_BITMAP_DIR\aol.svg APP_BITMAP_DIR\aol.svg
#endif // __NMUTILITIES_IBY__
--- a/emailservices/nmutilities/src/emailmailboxinfo_p.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailservices/nmutilities/src/emailmailboxinfo_p.cpp Fri May 14 04:41:45 2010 +0300
@@ -44,21 +44,14 @@
private constructor
*/
EmailMailboxInfoPrivate::EmailMailboxInfoPrivate() :
- QObject(NULL),
- mIsResourceLoaded(false)
+ QObject(NULL)
{
XQSettingsManager manager;
XQCentralRepositorySettingsKey rccKey(EMAIL_CENREP, RCC_PATH);
XQCentralRepositorySettingsKey wlbKey(EMAIL_CENREP, WLB_BRAND_NAME);
- mWlbDomainName = manager.readItemValue(wlbKey, XQSettingsManager::TypeString).value<QString> ();
-
- QString pathToRcc =
- manager.readItemValue(rccKey, XQSettingsManager::TypeString).value<QString> ();
- if (!mIsResourceLoaded) {
- mIsResourceLoaded = QResource::registerResource(pathToRcc);
- }
+ mWlbDomainName = manager.readItemValue(wlbKey, XQSettingsManager::TypeString).value<QString> ();
}
/*!
private destructor
@@ -131,6 +124,10 @@
QString domainName = "";
if (identifier.canConvert<QString> ()) {
domainName = identifier.value<QString> ();
+ int delimIndex = domainName.lastIndexOf('@');
+ if(delimIndex >= 0) {
+ domainName = domainName.mid(delimIndex + 1);
+ }
}
if (domainName.length() > 0){
@@ -198,13 +195,13 @@
if (regExp.exactMatch(brandingId)) { //match
found = true;
- icon = ":/" + cenRepRecord.at(3);
+ icon = "z:/resource/apps/" + cenRepRecord.at(3) + ".svg";
name = cenRepRecord.at(2);
break;
}
}
}
- if (!found || !mIsResourceLoaded) {
+ if (!found ) {
//get default icon and name
icon = "qtg_large_email";
QStringList domain = brandingId.split(".");
--- a/emailuis/nmailui/conf/nmeditorview.docml Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/conf/nmeditorview.docml Fri May 14 04:41:45 2010 +0300
@@ -6,48 +6,16 @@
<widget name="scrollAreaContents" role="HbScrollArea:contents" type="HbWidget">
<widget name="container" type="HbWidget">
<widget name="HeaderLayout" type="HbWidget">
- <widget name="ToHorizontalLayout" type="HbWidget">
- <widget name="EditorHeaderToLabel" type="HbLabel">
- <sizehint height="5un" type="PREFERRED" width="10un"/>
- <sizehint height="5un" type="MINIMUM" width="1.89552un"/>
- <string locid="txt_mail_editor_to" name="plainText" value="To:"/>
- <fontspec name="fontSpec" role="Secondary" textheight="23.45"/>
- </widget>
- <widget name="EditorHeaderToEdit" plugin="nmailuiwidgetsplugin" type="NmRecipientLineEdit">
- <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="5un" type="PREFERRED" width="8.26269un"/>
- <sizehint height="5un" type="MINIMUM" width="0un"/>
- <fontspec name="fontSpec" role="Secondary" textheight="3.5un"/>
- <integer name="maxRows" value="256"/>
- <string name="alignment" value="AlignAbsolute"/>
- <string name="text" value=""/>
- </widget>
- <widget name="EditorHeaderToButton" type="HbPushButton">
- <sizepolicy horizontalPolicy="Fixed" horizontalStretch="0" verticalPolicy="Fixed" verticalStretch="0"/>
- <sizehint height="5un" type="FIXED" width="9.5un"/>
- <sizehint height="5un" type="MINIMUM" width="9.5un"/>
- <sizehint height="5un" type="MAXIMUM" width="9.5un"/>
- <string name="text" value=""/>
- </widget>
- <real name="z" value="0"/>
- <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Minimum" verticalStretch="0"/>
- <sizehint height="5un" type="MINIMUM" width="23.8806un"/>
- <layout orientation="Horizontal" spacing="1un" type="linear">
- <contentsmargins bottom="0un" left="var(hb-param-margin-gene-left)" right="var(hb-param-margin-gene-right)" top="0un"/>
- <linearitem itemname="EditorHeaderToLabel"/>
- <linearitem itemname="EditorHeaderToEdit"/>
- <linearitem itemname="EditorHeaderToButton"/>
- </layout>
- </widget>
- <widget name="EditorHeaderRecipientGB" type="HbGroupBox">
- <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Minimum" verticalStretch="0"/>
- <bool name="collapsable" value="FALSE"/>
- <bool name="collapsed" value="FALSE"/>
- <fontspec name="fontSpec" role="Secondary" textheight="23.45"/>
+ <widget name="RecipientFields" type="HbWidget">
+ <real name="z" value="1"/>
+ <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="MinimumExpanding" verticalStretch="0"/>
+ <sizehint height="5un" type="PREFERRED" width="23un"/>
+ <sizehint height="5un" type="MINIMUM" width="23un"/>
+ <contentsmargins bottom="0un" left="var(hb-param-margin-gene-left)" right="var(hb-param-margin-gene-right)" top="0un"/>
</widget>
<widget name="SubjectHorizontalLayout" type="HbWidget">
<widget name="EditorHeaderSubjectLabel" type="HbLabel">
- <sizehint height="5un" type="PREFERRED" width="11un"/>
+ <sizehint height="5un" type="PREFERRED" width="12.5un"/>
<string locid="txt_mail_editor_subject" name="plainText" value="Subject:"/>
<fontspec name="fontSpec" role="Secondary" textheight="23.45"/>
</widget>
@@ -84,12 +52,11 @@
</widget>
<real name="z" value="1"/>
<sizepolicy horizontalPolicy="Minimum" horizontalStretch="0" verticalPolicy="Minimum" verticalStretch="0"/>
- <sizehint height="18un" type="MINIMUM" width="53.73134un"/>
+ <sizehint height="5un" type="MINIMUM" width="53.73134un"/>
<sizehint height="200un" type="MAXIMUM" width="2504062.01158un"/>
<layout orientation="Vertical" spacing="1un" type="linear">
<contentsmargins bottom="0un" left="0un" right="0un" top="var(hb-param-margin-gene-top)"/>
- <linearitem itemname="ToHorizontalLayout"/>
- <linearitem itemname="EditorHeaderRecipientGB"/>
+ <linearitem itemname="RecipientFields"/>
<linearitem itemname="SubjectHorizontalLayout"/>
<linearitem itemname="attachmentListWidget"/>
</layout>
@@ -125,7 +92,7 @@
</layout>
</widget>
<enums name="alignment" value="AlignVCenter|AlignHCenter"/>
- <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Expanding" verticalStretch="0"/>
+ <sizepolicy horizontalPolicy="Ignored" horizontalStretch="0" verticalPolicy="Expanding" verticalStretch="0"/>
</widget>
<layout type="anchor">
<anchoritem dst="scrollArea" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
--- a/emailuis/nmailui/conf/nmmessagelistview.docml Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/conf/nmmessagelistview.docml Fri May 14 04:41:45 2010 +0300
@@ -21,15 +21,11 @@
<bool name="collapsable" value="FALSE"/>
</widget>
<widget name="syncIcon" type="HbLabel">
- <real name="z" value="6"/>
- <sizehint type="PREFERRED" width="expr(var(hb-param-graphic-size-primary-small) )"/>
- </widget>
- <widget name="folderLabel" type="HbLabel">
- <real name="z" value="5"/>
+ <enums name="alignment" value="AlignAbsolute|AlignLeft|AlignVCenter|AlignJustify|AlignHCenter|AlignLeading"/>
+ <real name="z" value="7"/>
+ <sizehint height="expr(var(hb-param-graphic-size-primary-small) )" type="PREFERRED" width="expr(var(hb-param-graphic-size-primary-small) )"/>
+ <sizehint height="expr(var(hb-param-graphic-size-primary-small) )" type="MINIMUM" width="expr(var(hb-param-graphic-size-primary-small) )"/>
<sizepolicy horizontalPolicy="Preferred" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
- <sizehint type="PREFERRED" width="45.97015un"/>
- <string name="plainText" value="Folder"/>
- <fontspec name="fontSpec" role="Secondary" textheight="var(hb-param-text-height-secondary)"/>
</widget>
<real name="z" value="0"/>
<layout type="anchor">
@@ -43,10 +39,6 @@
<anchoritem dst="MessageTreeList" dstEdge="TOP" spacing="0un" src="labelGroupBox" srcEdge="BOTTOM"/>
<anchoritem dst="MessageTreeList" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
<anchoritem dst="MessageTreeList" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
- <anchoritem dst="folderLabel" dstEdge="LEFT" spacing="var(hb-param-margin-gene-left)" src="" srcEdge="LEFT"/>
- <anchoritem dst="folderLabel" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
- <anchoritem dst="folderLabel" dstEdge="BOTTOM" spacing="0un" src="labelGroupBox" srcEdge="BOTTOM"/>
- <anchoritem dst="folderLabel" dstEdge="RIGHT" spacing="var(hb-param-margin-gene-middle-horizontal)" src="syncIcon" srcEdge="LEFT"/>
<anchoritem dst="syncIcon" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
<anchoritem dst="syncIcon" dstEdge="RIGHT" spacing="-var(hb-param-margin-gene-right)" src="" srcEdge="RIGHT"/>
<anchoritem dst="syncIcon" dstEdge="BOTTOM" spacing="0un" src="labelGroupBox" srcEdge="BOTTOM"/>
--- a/emailuis/nmailui/conf/nmmessagesearchlistview.docml Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/conf/nmmessagesearchlistview.docml Fri May 14 04:41:45 2010 +0300
@@ -1,31 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
-<hbdocument version="1.0">
+<hbdocument version="1.1">
<widget name="NmMessageListView" type="HbView">
<widget name="content" role="HbView:widget" type="HbWidget">
<widget name="MessageTreeList" type="HbTreeView">
<real name="z" value="4"/>
<sizehint height="67.7612un" type="PREFERRED"/>
</widget>
- <widget name="MessageListNoMessages" type="HbLabel">
- <real name="z" value="5"/>
- <string locid="txt_mail_dblist_no_messages" name="plainText"/>
- </widget>
<widget name="SearchBarContainer" type="HbWidget">
<widget name="LineEdit" type="HbLineEdit">
- <real name="z" value="10"/>
- <sizehint type="PREFERRED" width="51.04478un"/>
- <string name="text" value="" />
+ <fontspec name="fontSpec" role="Primary" textheight="26.8"/>
</widget>
<widget name="PushButton" type="HbPushButton">
- <real name="z" value="11"/>
- <sizehint type="PREFERRED" width="18.50746un"/>
- <string name="text" locid="txt_mail_list_search" />
+ <sizehint type="MINIMUM" width="9un"/>
</widget>
<real name="z" value="8"/>
- <sizehint height="8un" type="PREFERRED" width="54.62687un"/>
<sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Expanding" verticalStretch="0"/>
- <sizehint height="4un" type="MINIMUM"/>
- <sizehint height="15un" type="MAXIMUM"/>
+ <sizehint height="9.25373un" type="PREFERRED" width="53.73134un"/>
+ <sizehint height="6.5un" type="MINIMUM"/>
<layout orientation="Horizontal" type="linear">
<linearitem itemname="LineEdit"/>
<linearitem itemname="PushButton"/>
@@ -33,9 +24,17 @@
</widget>
<widget name="InfoLabel" type="HbLabel">
<real name="z" value="9"/>
- <string name="plainText" value="Label"/>
- <sizehint height="4.62687un" type="PREFERRED" width="53.8806un"/>
- <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Minimum" verticalStretch="0"/>
+ <sizepolicy horizontalPolicy="Expanding" horizontalStretch="0" verticalPolicy="Preferred" verticalStretch="0"/>
+ <contentsmargins bottom="0.5un" left="1.5un" right="1.5un" top="0.5un"/>
+ <string name="plainText" value="Searching..."/>
+ <fontspec name="fontSpec" role="Secondary" textheight="23.45"/>
+ </widget>
+ <widget name="MessageListNoMessages" type="HbLabel">
+ <enums name="textWrapping" value="TextWordWrap"/>
+ <enums name="alignment" value="AlignLeft|AlignVCenter|AlignHCenter|AlignLeading"/>
+ <real name="z" value="10"/>
+ <sizehint height="15.22388un" type="PREFERRED" width="43.73134un"/>
+ <string locid="txt_mail_dblist_no_messages_matched_your_search" name="plainText" value="No messages matched your search. Try another search term. "/>
</widget>
<real name="z" value="0"/>
<layout type="anchor">
@@ -46,17 +45,17 @@
<anchoritem dst="MessageTreeList" dstEdge="TOP" spacing="0un" src="InfoLabel" srcEdge="BOTTOM"/>
<anchoritem dst="MessageTreeList" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
<anchoritem dst="MessageTreeList" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
- <anchoritem dst="MessageListNoMessages" dstEdge="LEFT" spacing="12.14925un" src="" srcEdge="LEFT"/>
- <anchoritem dst="MessageListNoMessages" dstEdge="TOP" spacing="10un" src="MessageTreeList" srcEdge="TOP"/>
- <anchoritem dst="MessageListNoMessages" dstEdge="RIGHT" spacing="-11.82089un" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="MessageListNoMessages" dstEdge="LEFT" spacing="4.77612un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="MessageListNoMessages" dstEdge="TOP" spacing="2.54478un" src="InfoLabel" srcEdge="BOTTOM"/>
+ <anchoritem dst="MessageListNoMessages" dstEdge="RIGHT" spacing="-5.22388un" src="" srcEdge="RIGHT"/>
<anchoritem dst="SearchBarContainer" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
<anchoritem dst="SearchBarContainer" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
<anchoritem dst="SearchBarContainer" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
</layout>
</widget>
- <string name="title" value="View"/>
+ <string name="title" value="Search"/>
</widget>
- <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+ <metadata activeUIState="Common ui state" display="NHD-3.2-inch_portrait" unit="un">
<uistate name="Common ui state" sections="#common"/>
<dummydata objectName="MessageTreeList" section="#common" value="0"/>
</metadata>
--- a/emailuis/nmailui/inc/nmactionresponse.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmactionresponse.h Fri May 14 04:41:45 2010 +0300
@@ -44,7 +44,8 @@
NmActionResponseCommandRemoveAttachment,
NmActionResponseCommandOpenAttachment,
NmActionResponseCommandSearch,
- NmActionResponseCommandSwitchFolder
+ NmActionResponseCommandSwitchFolder,
+ NmActionResponseCommandSettings
};
--- a/emailuis/nmailui/inc/nmapplication.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmapplication.h Fri May 14 04:41:45 2010 +0300
@@ -53,6 +53,7 @@
public slots:
+ void prepareForPopView();
void popView();
void exitApplication();
void delayedExitApplication();
--- a/emailuis/nmailui/inc/nmattachmentmanager.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmattachmentmanager.h Fri May 14 04:41:45 2010 +0300
@@ -26,6 +26,7 @@
class NmUiEngine;
class NmOperation;
class NmAttachmentFetchObserver;
+class NmMessage;
class NmAttachmentManager : public QObject
{
@@ -38,6 +39,15 @@
const NmId &folderId,
const NmId &messageId,
const NmId &messagePartId);
+ void fetchAttachments(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId,
+ QList<NmId> &messagePartIds);
+ void fetchAllMessageParts(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId);
bool isFetching() const;
NmId partIdUnderFetch() const;
int progressValue() const;
@@ -48,11 +58,14 @@
private slots:
void changeProgress(int value);
void attachmentFetchCompleted(int result);
+ void messageFetched(int result);
private:
NmUiEngine &mUiEngine;
QPointer<NmOperation> mFetchOperation; // Not owned
+ QPointer<NmOperation> mMsgFetchOperation; // Not owned
NmAttachmentFetchObserver *mFetchObserver; // Not owned
+ NmMessage *fetchMsg;
NmId mAttaId;
int mProgressValue;
bool mIsFetching;
--- a/emailuis/nmailui/inc/nmbaseview.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmbaseview.h Fri May 14 04:41:45 2010 +0300
@@ -35,11 +35,12 @@
Q_OBJECT
public:
NmBaseView(NmUiStartParam* startParam,
+ NmApplication &application,
QGraphicsItem *parent = 0);
virtual ~NmBaseView();
virtual void reloadViewContents(NmUiStartParam* startParam) = 0;
virtual NmUiViewId nmailViewId() const = 0;
- virtual bool okToExitView();
+ virtual void okToExitView();
virtual void aboutToExitView();
virtual void viewReady();
virtual void handleMouseReleaseEvent(QGraphicsSceneMouseEvent *event);
@@ -54,7 +55,8 @@
virtual void loadViewLayout() = 0;
protected:
- NmUiStartParam* mStartParam; // Owned
+ NmUiStartParam *mStartParam; // Owned
+ NmApplication &mApplication;
};
--- a/emailuis/nmailui/inc/nmeditorheader.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmeditorheader.h Fri May 14 04:41:45 2010 +0300
@@ -24,7 +24,6 @@
enum
{
EEditorToLine=0,
- EEditorGroupBoxRecipient,
EEditorCcLine,
EEditorBccLine,
EEditorSubjectLine,
@@ -48,13 +47,12 @@
NmEditorHeader(HbDocumentLoader *documentLoader, QGraphicsItem *parent=0);
virtual ~NmEditorHeader();
int headerHeight() const;
- NmHtmlLineEdit* subjectField() const;
- NmRecipientLineEdit* toField() const;
- NmRecipientLineEdit* ccField() const;
- NmRecipientLineEdit* bccField() const;
+ NmHtmlLineEdit* subjectEdit() const;
+ NmRecipientLineEdit* toEdit() const;
+ NmRecipientLineEdit* ccEdit() const;
+ NmRecipientLineEdit* bccEdit() const;
void setPriority(NmMessagePriority priority=NmMessagePriorityNormal);
void setPriority(NmActionResponseCommand prio=NmActionResponseCommandNone);
- void setGroupBoxCollapsed( bool collapsed );
void addAttachment(const QString &fileName, const QString &fileSize, const NmId &nmid);
void removeAttachment(const QString &fileName);
void removeAttachment(const NmId &nmid);
@@ -64,12 +62,13 @@
const NmId &msgPartId,
const QString &fileSize,
int result);
+ void setFieldVisibility(bool isVisible);
private:
void loadWidgets();
void rescaleHeader();
void createConnections();
- HbWidget* createRecipientGroupBoxContentWidget();
+ void adjustFieldSizeValues( NmRecipientLineEdit *widget, qreal height );
signals:
void headerHeightChanged(int);
@@ -77,34 +76,30 @@
void attachmentLongPressed(NmId attachmentPartId, QPointF point);
public slots:
+ void fixHeaderFieldHeights();
void sendHeaderHeightChanged();
void editorContentChanged();
- void groupBoxExpandCollapse();
void attachmentActivated(int arrayIndex);
void attachmentLongPressed(int arrayIndex, QPointF point);
private:
HbDocumentLoader* mDocumentLoader; // Not owned
+ HbWidget *mHeader; // Not owned
int mHeaderHeight;
HbLabel *mSubjectLabel;
HbLabel *mPriorityIconLabel;
bool mIconVisible;
NmRecipientLineEdit *mToEdit;
+ NmRecipientLineEdit *mCcEdit;
+ NmRecipientLineEdit *mBccEdit;
NmHtmlLineEdit *mSubjectEdit;
bool mRecipientFieldsEmpty;
-
- // Recipient GroupBox related
- HbGroupBox *mGroupBoxRecipient; // Owned
- HbWidget *mGroupBoxRecipientContent; // Not owned
- QGraphicsLinearLayout *mGbVerticalLayout;// Not owned
- QGraphicsLinearLayout *mCcFieldLayout; // Not owned
- QGraphicsLinearLayout *mBccFieldLayout; // Not owned
-
- NmRecipientField *mToField; // owned
- NmRecipientField *mCcField; // Not owned
- NmRecipientField *mBccField; // Not owned
-
+ QGraphicsLinearLayout *mLayout;
NmAttachmentList *mAttachmentList;
+ NmRecipientField *mToField; // Owned
+ NmRecipientField *mCcField; // Owned
+ NmRecipientField *mBccField; // Owned
+ bool mCcBccFieldVisible;
};
#endif /* NMEDITORHEADER_H_ */
--- a/emailuis/nmailui/inc/nmeditorview.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmeditorview.h Fri May 14 04:41:45 2010 +0300
@@ -43,7 +43,7 @@
class NmAddAttachmentsOperation;
class NmCheckOutboxOperation;
class NmAttachmentPicker;
-
+class HbMessageBox;
class NmEditorView : public NmBaseView, public NmActionObserver
{
@@ -63,7 +63,7 @@
void reloadViewContents(NmUiStartParam* startParam);
NmUiViewId nmailViewId() const;
HbWidget* scrollAreaContents();
- bool okToExitView();
+ void okToExitView();
void aboutToExitView();
void viewReady();
@@ -73,7 +73,8 @@
void createOptionsMenu();
void setButtonsDimming(bool enabled);
void attachmentLongPressed(NmId attachmentPartId, QPointF point);
-
+ void invalidAddressQuery(HbAction* action);
+ void okToExitQuery(HbAction* action);
public: // From NmActionObserver
@@ -95,6 +96,7 @@
void handleSendOperationCompleted();
void openAttachmentTriggered();
void onAttachmentReqCompleted(const QVariant &value);
+ void switchCcBccFieldVisibility();
private:
@@ -103,6 +105,7 @@
void setMessageData();
void startMessageCreation(NmUiEditorStartMode startMode);
void startSending();
+ void finalizeSending();
void createToolBar();
QPointF viewCoordinateToEditCoordinate(QPointF orgPoint);
void updateMessageWithEditorContents();
@@ -122,8 +125,6 @@
void sendMouseReleaseEventToScroll(QGraphicsSceneMouseEvent *event);
void sendMouseMoveEventToScroll(QGraphicsSceneMouseEvent *event);
void sendLongPressGesture(const QPointF &point);
- void contextButton(NmActionResponse &result);
-
private: // Data
@@ -136,6 +137,7 @@
NmEditorTextEdit *mEditWidget; // Not owned
NmEditorHeader *mHeaderWidget; // Not owned
NmMessage *mMessage; // Owned
+ QGraphicsLinearLayout *mLayout;
NmEditorContent *mContentWidget; // Owned
HbMenu *mPrioritySubMenu; // Owned
HbMenu *mAttachmentListContextMenu; // Owned
@@ -146,9 +148,10 @@
QPointer<NmOperation> mRemoveAttachmentOperation; // Not owned
QPointer<NmCheckOutboxOperation> mCheckOutboxOperation; // Not owned
- HbProgressDialog *mWaitDialog; // Owned.
-
- NmAttachmentPicker* mAttachmentPicker; // Owned
+ HbProgressDialog *mWaitDialog; // Owned.
+ HbMessageBox* mQueryDialog; // Owned
+ NmAttachmentPicker* mAttachmentPicker; // Owned
+ bool mCcBccFieldVisible;
};
--- a/emailuis/nmailui/inc/nmmailboxlistview.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmmailboxlistview.h Fri May 14 04:41:45 2010 +0300
@@ -55,8 +55,6 @@
public slots:
void itemActivated(const QModelIndex &index);
void openSelectedMailBox();
- void showItemContextMenu(HbAbstractViewItem *item, const QPointF &coords);
- void contextButton(NmActionResponse &result);
private slots:
void refreshList();
--- a/emailuis/nmailui/inc/nmmessagelistview.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmmessagelistview.h Fri May 14 04:41:45 2010 +0300
@@ -35,6 +35,7 @@
class NmActionResponse;
class NmMessageListModelItem;
class HbIconItem;
+class HbGroupBox;
class NmMessageListView : public NmBaseView, public NmActionObserver
{
@@ -51,6 +52,8 @@
~NmMessageListView();
NmUiViewId nmailViewId() const;
void viewReady();
+ NmFolderType folderType();
+ void okToExitView();
public: // From NmActionObserver
void handleActionCommand(NmActionResponse &menuResponse);
@@ -58,7 +61,6 @@
public slots:
void reloadViewContents(NmUiStartParam *startParam);
void refreshList();
- void contextButton(NmActionResponse &result);
private slots:
void showItemContextMenu(HbAbstractViewItem *index, const QPointF &coords);
@@ -90,11 +92,12 @@
HbMenu *mItemContextMenu; // Owned
NmMessageListModelItem *mLongPressedItem; // Not owned
HbLabel *mNoMessagesLabel; // Not owned
- HbLabel *mFolderLabel; // Not owned
+ HbGroupBox *mFolderLabel; // Not owned
HbLabel *mSyncIcon; // Not owned
QModelIndex mActivatedIndex;
bool mViewReady;
NmFolderType mCurrentFolderType;
+ bool mSettingsLaunched;
};
#endif /* NMMESSAGELISTVIEW_H_ */
--- a/emailuis/nmailui/inc/nmmessagelistviewitem.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmmessagelistviewitem.h Fri May 14 04:41:45 2010 +0300
@@ -53,6 +53,7 @@
void setFontsUnread();
void setFonts(const QColor &colorRole, HbFontSpec &spekki);
void getFontSizes();
+ QString senderFieldText(const NmMessageEnvelope &envelope);
private:
HbTextItem *mSender; // Owned
--- a/emailuis/nmailui/inc/nmmessagesearchlistview.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmmessagesearchlistview.h Fri May 14 04:41:45 2010 +0300
@@ -32,8 +32,8 @@
class NmActionResponse;
class NmApplication;
+class NmMessageListModel;
class NmMessageListModelItem;
-class NmMessageSearchListModel;
class NmUiEngine;
class NmUiStartParam;
@@ -47,7 +47,7 @@
NmMessageSearchListView(NmApplication &application,
NmUiStartParam *startParam,
NmUiEngine &uiEngine,
- NmMessageSearchListModel &searchListModel,
+ NmMessageListModel &msglistModel,
HbDocumentLoader *documentLoader,
QGraphicsItem *parent = 0);
~NmMessageSearchListView();
@@ -85,11 +85,11 @@
public slots:
void reloadViewContents(NmUiStartParam *startParam);
- void contextButton(NmActionResponse &result);
private slots:
+ void criteriaChanged(QString text);
void showItemContextMenu(HbAbstractViewItem *index, const QPointF &coords);
void itemActivated(const QModelIndex &index);
void handleSelection();
@@ -98,19 +98,19 @@
void refreshList();
void toggleSearch();
void handleSearchComplete();
- void criteriaChanged(QString text);
+
private: // Data
NmApplication &mApplication;
NmUiEngine &mUiEngine;
- NmMessageSearchListModel &mSearchListModel;
+ NmMessageListModel &mMsgListModel;
HbDocumentLoader *mDocumentLoader; // Owned
QObjectList mWidgetList;
HbMenu *mItemContextMenu; // Owned
HbTreeView *mMessageListWidget; // Not owned
+ HbLabel *mInfoLabel; // Not owned
HbLabel *mNoMessagesLabel; // Not owned
- HbLabel *mInfoLabel; // Not owned
HbLineEdit *mLineEdit; // Not owned
HbPushButton *mPushButton; // Not owned
NmMessageListModelItem *mLongPressedItem; // Not owned
--- a/emailuis/nmailui/inc/nmrecipientfield.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmrecipientfield.h Fri May 14 04:41:45 2010 +0300
@@ -30,11 +30,6 @@
{
Q_OBJECT
public:
- NmRecipientField(
- HbLabel *label,
- NmRecipientLineEdit *edit,
- HbPushButton *button,
- QGraphicsItem *parent = 0);
NmRecipientField(const QString &labelString = "", QGraphicsItem *parent = 0);
virtual ~NmRecipientField();
qreal height();
--- a/emailuis/nmailui/inc/nmuiheaders.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmuiheaders.h Fri May 14 04:41:45 2010 +0300
@@ -106,7 +106,6 @@
#include <nmmailboxlistmodel.h>
#include <nmmessagelistmodel.h>
#include <nmmessagelistmodelitem.h>
-#include <nmmessagesearchlistmodel.h>
#include <nmmessage.h>
#include <nmaddress.h>
#include <nmoperation.h>
--- a/emailuis/nmailui/inc/nmuiviewids.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmuiviewids.h Fri May 14 04:41:45 2010 +0300
@@ -185,6 +185,16 @@
{
mMailboxId = mailboxId;
}
+
+ inline void setFolderId(NmId folderId)
+ {
+ mFolderId = folderId;
+ }
+
+ inline void setMessageId(NmId messageId)
+ {
+ mMessageId = messageId;
+ }
private: // Data
--- a/emailuis/nmailui/inc/nmutilities.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmutilities.h Fri May 14 04:41:45 2010 +0300
@@ -27,6 +27,7 @@
class QFile;
class XQSharableFile;
class NmOperationCompletionEvent;
+class HbMessageBox;
/*!
UI utilities class
@@ -63,7 +64,9 @@
static void displayErrorNote(QString noteText);
- static bool displayQuestionNote(QString noteText);
+ static HbMessageBox* displayQuestionNote(QString noteText,
+ QObject* receiver = 0,
+ const char* member = 0);
static void displayWarningNote(QString noteText);
--- a/emailuis/nmailui/inc/nmviewerview.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/inc/nmviewerview.h Fri May 14 04:41:45 2010 +0300
@@ -135,8 +135,6 @@
NmAttachmentListWidget *mAttaWidget; // Not owned
bool mViewReady;
bool mWaitNoteCancelled;
- HbAction* mOkAction; //owned
- HbAction* mCancelAction; //owned
};
#endif /* NMVIEWERVIEW_H_ */
--- a/emailuis/nmailui/src/nmapplication.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmapplication.cpp Fri May 14 04:41:45 2010 +0300
@@ -122,11 +122,6 @@
#ifndef NM_WINS_ENV
bool service = XQServiceUtil::isService();
- if (service && !XQServiceUtil::isEmbedded()) {
- // If started as service, keep it hidden until everything is initialised
- // In embedded mode, the client app should not get hidden
- XQServiceUtil::toBackground(true);
- }
#else
bool service = false;
#endif
@@ -150,12 +145,16 @@
// Create view stack
mViewStack = new QStack<NmBaseView*>;
- // Create back action and connect it to popView()
+ // Create back action and connect it to prepareForPopView()
if (mMainWindow) {
mBackAction = new HbAction(Hb::BackNaviAction,this);
- connect(mBackAction, SIGNAL(triggered()), this, SLOT(popView()));
+ connect(mBackAction, SIGNAL(triggered()), this, SLOT(prepareForPopView()));
+
// Show mainwindow
- mMainWindow->show();
+ // Services will active it when the view is ready
+ if (!service) {
+ mMainWindow->show();
+ }
}
// async operation completion related notifications
@@ -264,6 +263,26 @@
}
/*!
+ Ask from view that is it ok to pop view. This kind of 2-phase popView is needed
+ because view may show query dialog for user response.
+ */
+void NmApplication::prepareForPopView()
+{
+ if (mViewStack->size() > 0) {
+ // Get view pointer
+ NmBaseView *view = mViewStack->top();
+
+ // View will call/signal popView if exitting is ok.
+ view->okToExitView();
+ }
+ // If the view stack is now empty quit the app
+ // This happens also when the app has been started as a service
+ else if (mViewStack->size() == 0) {
+ exitApplication();
+ }
+}
+
+/*!
Pop view from view stack. View object is deleted.
*/
void NmApplication::popView()
@@ -274,59 +293,57 @@
NmBaseView *view = mViewStack->top();
// ask view if it's ok to exit
- if (view->okToExitView()) {
- NmUiViewId topViewId = view->nmailViewId();
+ NmUiViewId topViewId = view->nmailViewId();
- // Prepare for send animation if returing from editor and message has been sent.
- if (topViewId == NmUiViewMessageEditor && mUiEngine->isSendingMessage()) {
- mEffects->prepareEffect(NmUiEffects::NmEditorSendMessageAnimation);
- }
- mViewStack->pop();
- // Call custom exit function
- view->aboutToExitView();
- // Remove view from stack.
- mMainWindow->removeView(view);
+ // Prepare for send animation if returing from editor and message has been sent.
+ if (topViewId == NmUiViewMessageEditor && mUiEngine->isSendingMessage()) {
+ mEffects->prepareEffect(NmUiEffects::NmEditorSendMessageAnimation);
+ }
+ mViewStack->pop();
+ // Call custom exit function
+ view->aboutToExitView();
+ // Remove view from stack.
+ mMainWindow->removeView(view);
- // if we were in editor and sent a message, pop viewer from stack first
- // so we can go straight to mail list
- if (!mViewStack->isEmpty() && topViewId == NmUiViewMessageEditor &&
- mUiEngine->isSendingMessage() &&
- mViewStack->top()->nmailViewId() == NmUiViewMessageViewer) {
- NmBaseView *tmpView = mViewStack->pop();
- mMainWindow->removeView(tmpView);
- delete tmpView;
- tmpView = NULL;
- }
+ // if we were in editor and sent a message, pop viewer from stack first
+ // so we can go straight to mail list
+ if (!mViewStack->isEmpty() && topViewId == NmUiViewMessageEditor &&
+ mUiEngine->isSendingMessage() &&
+ mViewStack->top()->nmailViewId() == NmUiViewMessageViewer) {
+ NmBaseView *tmpView = mViewStack->pop();
+ mMainWindow->removeView(tmpView);
+ delete tmpView;
+ tmpView = NULL;
+ }
- if (!mViewStack->isEmpty()) {
- // Activate next view in stack
- NmBaseView *showView = mViewStack->top();
- mMainWindow->addView(showView);
- mMainWindow->setCurrentView(showView);
- // Store activated view id
- mActiveViewId=showView->nmailViewId();
- // Perform send animation if requested.
- mEffects->startEffect(NmUiEffects::NmEditorSendMessageAnimation);
- }
+ if (!mViewStack->isEmpty()) {
+ // Activate next view in stack
+ NmBaseView *showView = mViewStack->top();
+ mMainWindow->addView(showView);
+ mMainWindow->setCurrentView(showView);
+ // Store activated view id
+ mActiveViewId=showView->nmailViewId();
+ // Perform send animation if requested.
+ mEffects->startEffect(NmUiEffects::NmEditorSendMessageAnimation);
+ }
- delete view;
- view = NULL;
+ delete view;
+ view = NULL;
#ifndef NM_WINS_ENV
- // If view was started as service, move the app now
- // to the background, unless it was started when the app
- // was already in foreground..
- if (mServiceViewId == topViewId) {
- mServiceViewId = NmUiViewNone;
+ // If view was started as service, move the app now
+ // to the background, unless it was started when the app
+ // was already in foreground..
+ if (mServiceViewId == topViewId) {
+ mServiceViewId = NmUiViewNone;
- // if started as embedded, do not hide the app
- if (!XQServiceUtil::isEmbedded() &&
- !mForegroundService) {
- XQServiceUtil::toBackground(true);
- }
+ // if started as embedded, do not hide the app
+ if (!XQServiceUtil::isEmbedded() &&
+ !mForegroundService) {
+ XQServiceUtil::toBackground(true);
}
+ }
#endif
- }
}
// If the view stack is now empty quit the app
@@ -378,7 +395,7 @@
if (topId!=NmUiViewMessageEditor &&
topId!=NmUiViewMailboxList &&
topId!=startParam->viewId()) {
- popView();
+ prepareForPopView();
}
else {
// Editor or mailbox list in the top. Stop the loop.
@@ -429,15 +446,11 @@
break;
}
- NmMessageListModel &messageListModel =
- mUiEngine->messageListModel(startParam->mailboxId(),
- startParam->folderId());
-
- NmMessageSearchListModel &searchListModel =
- mUiEngine->messageSearchListModel(&messageListModel);
+ NmMessageListModel &model =
+ mUiEngine->messageListModelForSearch(startParam->mailboxId());
NmMessageSearchListView *searchListView = new NmMessageSearchListView(
- *this, startParam, *mUiEngine, searchListModel,
+ *this, startParam, *mUiEngine, model,
new HbDocumentLoader(mMainWindow));
pushView(searchListView);
--- a/emailuis/nmailui/src/nmattachmentmanager.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmattachmentmanager.cpp Fri May 14 04:41:45 2010 +0300
@@ -77,6 +77,85 @@
}
/*!
+ Fetch attachments to a message.
+ Set observer with setObserver method to get process and complete events
+*/
+void NmAttachmentManager::fetchAttachments(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId,
+ QList<NmId> &messagePartIds)
+{
+ // cancel old fetch operation, Does nothing if fetch not ongoing
+ // We don't wan't to cancel message fetching operation, because
+ // it might still be finishing.
+ if (!mMsgFetchOperation) {
+ cancelFetch();
+ }
+
+ if (messagePartIds.count() > 0) {
+ mFetchOperation = mUiEngine.fetchMessageParts(
+ mailboxId,
+ folderId,
+ messageId,
+ messagePartIds);
+ }
+
+ if (mFetchOperation) {
+ mAttaId = 0;
+ mIsFetching = true;
+ QObject::connect(mFetchOperation, SIGNAL(operationCompleted(int)),
+ this, SLOT(attachmentFetchCompleted(int)));
+
+ QObject::connect(mFetchOperation, SIGNAL(operationProgressChanged(int)),
+ this, SLOT(changeProgress(int)));
+
+ }
+}
+
+/*!
+ Fetch all message parts to a message. Fetches also message part data structure,
+ if not fetched already.
+ If earlier fetch operation exist it is cancelled and deleted.
+ Set observer with setObserver method to get process and complete events
+*/
+void NmAttachmentManager::fetchAllMessageParts(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId)
+{
+ fetchMsg = mUiEngine.message(mailboxId,folderId,messageId);
+
+ // Check if we have part data structure.
+ if (fetchMsg->childParts().count() == 0 &&
+ fetchMsg->fetchedSize() < fetchMsg->size()) {
+
+ // cancel old fetch operation, Does nothing if fetch not ongoing
+ cancelFetch();
+
+ // Fetch the message.
+ mMsgFetchOperation = mUiEngine.fetchMessage(
+ fetchMsg->envelope().mailboxId(),
+ fetchMsg->envelope().folderId(),
+ fetchMsg->envelope().messageId());
+
+ mAttaId = 0;
+ mIsFetching = true;
+
+ if (mMsgFetchOperation) {
+ QObject::connect(mMsgFetchOperation,
+ SIGNAL(operationCompleted(int)),
+ this,
+ SLOT(messageFetched(int)));
+ }
+
+ }
+ else {
+ messageFetched(NmNoError);
+ }
+}
+
+/*!
Retruns true if fetch operation is ongoing
*/
bool NmAttachmentManager::isFetching() const
@@ -100,6 +179,9 @@
if (mFetchOperation && mFetchOperation->isRunning()) {
mFetchOperation->cancelOperation();
}
+ if (mMsgFetchOperation && mMsgFetchOperation->isRunning()) {
+ mMsgFetchOperation->cancelOperation();
+ }
mIsFetching = false;
mAttaId = 0;
mProgressValue = 0;
@@ -130,6 +212,52 @@
}
/*!
+ Used by message fetch operation
+*/
+void NmAttachmentManager::messageFetched(int result)
+{
+ QObject::disconnect(mFetchOperation,
+ SIGNAL(operationCompleted(int)),
+ this,
+ SLOT(messageFetched(int)));
+
+ if (result == NmNoError) {
+
+ // Reload message
+ fetchMsg = mUiEngine.message(
+ fetchMsg->envelope().mailboxId(),
+ fetchMsg->envelope().folderId(),
+ fetchMsg->envelope().messageId());
+
+ if (fetchMsg) {
+ QList<NmId> partIds;
+ NmMessagePart *part;
+ foreach (part, fetchMsg->childParts()) {
+ if (part->size() > part->fetchedSize()) {
+ partIds.append(part->partId());
+ }
+ }
+ if (partIds.count() > 0) {
+ fetchAttachments(
+ fetchMsg->envelope().mailboxId(),
+ fetchMsg->envelope().folderId(),
+ fetchMsg->envelope().messageId(),
+ partIds);
+ }
+ else {
+ mFetchObserver->fetchCompleted(result);
+ }
+ }
+ else {
+ mFetchObserver->fetchCompleted(NmNotFoundError);
+ }
+ }
+ else {
+ mFetchObserver->fetchCompleted(result);
+ }
+}
+
+/*!
Sets fetch observer
*/
void NmAttachmentManager::setObserver(NmAttachmentFetchObserver *observer)
--- a/emailuis/nmailui/src/nmbaseview.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmbaseview.cpp Fri May 14 04:41:45 2010 +0300
@@ -27,9 +27,11 @@
Constructor
*/
NmBaseView::NmBaseView(NmUiStartParam* startParam,
+ NmApplication &application,
QGraphicsItem *parent)
: HbView(parent),
-mStartParam(startParam)
+mStartParam(startParam),
+mApplication(application)
{
}
@@ -42,12 +44,13 @@
}
/*!
- Is it ok to exit current view. Function is called when exiting the view.
- Views can override this function and return false to stay in current view.
+ Is it ok to exit current view. Function is called when exiting the view.
+ Views can override this function and deside are they going to signal popView
+ or not. For example based on the user query.
*/
-bool NmBaseView::okToExitView()
+void NmBaseView::okToExitView()
{
- return true;
+ mApplication.popView();
}
/*!
--- a/emailuis/nmailui/src/nmeditorheader.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmeditorheader.cpp Fri May 14 04:41:45 2010 +0300
@@ -18,10 +18,7 @@
#include "nmuiheaders.h"
// Layout
-static const char *NMUI_EDITOR_TO_LABEL = "EditorHeaderToLabel";
-static const char *NMUI_EDITOR_TO_EDIT = "EditorHeaderToEdit";
-static const char *NMUI_EDITOR_TO_BUTTON = "EditorHeaderToButton";
-static const char *NMUI_EDITOR_RECIPIENT_GB = "EditorHeaderRecipientGB";
+static const char *NMUI_EDITOR_RECIPIENT_FIELDS = "RecipientFields";
static const char *NMUI_EDITOR_SUBJECT_LABEL = "EditorHeaderSubjectLabel";
static const char *NMUI_EDITOR_SUBJECT_EDIT = "EditorHeaderSubjectEdit";
static const char *NMUI_EDITOR_PRIORITY_ICON = "labelPriorityIcon";
@@ -30,9 +27,7 @@
// Following constants are removed when header fields will offer these
static const double Un = 6.66;
static const double FieldHeightWhenSecondaryFont = 5 * Un;
-static const int GroupBoxTitleHeight = 42;
static const double Margin = 2 * Un;
-static const double HeaderAreaMarginsTotal = 3 * Un;
static const double IconFieldWidth = 5 * Un;
static const int nmLayoutSystemWaitTimer = 10;
@@ -48,8 +43,11 @@
mIconVisible(false),
mSubjectEdit(NULL),
mRecipientFieldsEmpty(true),
- mGroupBoxRecipient(NULL),
- mAttachmentList(NULL)
+ mAttachmentList(NULL),
+ mToField(NULL),
+ mCcField(NULL),
+ mBccField(NULL),
+ mCcBccFieldVisible(false)
{
loadWidgets();
rescaleHeader();
@@ -72,23 +70,24 @@
*/
void NmEditorHeader::loadWidgets()
{
- // To: field objects
- HbLabel *toLabel = qobject_cast<HbLabel *>
- (mDocumentLoader->findWidget(NMUI_EDITOR_TO_LABEL));
- NmRecipientLineEdit *toEdit = qobject_cast<NmRecipientLineEdit *>
- (mDocumentLoader->findWidget(NMUI_EDITOR_TO_EDIT));
- HbPushButton *toButton = qobject_cast<HbPushButton *>
- (mDocumentLoader->findWidget(NMUI_EDITOR_TO_BUTTON));
- mToField = new NmRecipientField(toLabel, toEdit, toButton);
+ // Add "To:", "CC:" and "BCC:" fields
+ mHeader = qobject_cast<HbWidget *>
+ (mDocumentLoader->findWidget(NMUI_EDITOR_RECIPIENT_FIELDS));
+
+ mLayout = new QGraphicsLinearLayout(Qt::Vertical);
+ mLayout->setContentsMargins(0,Un,0,0);
- // Create recipient group box which includes cc and bcc fields
- mGroupBoxRecipient = qobject_cast<HbGroupBox *>
- (mDocumentLoader->findWidget(NMUI_EDITOR_RECIPIENT_GB));
- // Ownership is transfered
- mGroupBoxRecipient->setContentWidget(createRecipientGroupBoxContentWidget());
- mGroupBoxRecipient->setHeading(hbTrId("txt_mail_subhead_ccbcc"));
- mGroupBoxRecipient->setCollapsable(true);
- mGroupBoxRecipient->setCollapsed(true);
+ mToField = new NmRecipientField(QString("To:"), mHeader);
+ mCcField = new NmRecipientField(QString("Cc:"), mHeader);
+ mBccField = new NmRecipientField(QString("Bcc:"), mHeader);
+
+ // Only 'To:' field is visible at startup
+ mLayout->addItem(mToField);
+ mCcField->hide();
+ mBccField->hide();
+
+ mHeader->setLayout(mLayout);
+ mHeader->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::MinimumExpanding);
// Add Subject: field
mSubjectLabel = qobject_cast<HbLabel *>
@@ -121,16 +120,12 @@
// Signals for handling the recipient field expanding
connect(mToField, SIGNAL(textChanged(const QString &)),
- this, SLOT(sendHeaderHeightChanged()));
+ this, SLOT(fixHeaderFieldHeights()));
connect(mCcField, SIGNAL(textChanged(const QString &)),
- this, SLOT(sendHeaderHeightChanged()));
+ this, SLOT(fixHeaderFieldHeights()));
connect(mBccField, SIGNAL(textChanged(const QString &)),
- this, SLOT(sendHeaderHeightChanged()));
- connect(mSubjectEdit, SIGNAL(contentsChanged()), this, SLOT(sendHeaderHeightChanged()));
-
- // Signal for handling the recipient group box expanding/collapsing
- connect(mGroupBoxRecipient, SIGNAL(toggled(bool)),
- this, SLOT(groupBoxExpandCollapse()));
+ this, SLOT(fixHeaderFieldHeights()));
+ connect(mSubjectEdit, SIGNAL(contentsChanged()), this, SLOT(fixHeaderFieldHeights()));
// Signals for handling the attachment list
connect(&mAttachmentList->listWidget(), SIGNAL(itemActivated(int)),
@@ -142,6 +137,30 @@
}
/*!
+ Show or hide recipient field
+*/
+void NmEditorHeader::setFieldVisibility(bool isVisible)
+{
+ if ( mCcBccFieldVisible != isVisible ) {
+ mCcBccFieldVisible = isVisible;
+ if (mCcBccFieldVisible) {
+ mCcField->show();
+ mBccField->show();
+ mLayout->addItem(mCcField);
+ mLayout->addItem(mBccField);
+ }
+ else {
+ mCcField->hide();
+ mBccField->hide();
+ mLayout->removeItem(mCcField);
+ mLayout->removeItem(mBccField);
+ }
+
+ QTimer::singleShot(nmLayoutSystemWaitTimer*2, this, SLOT(fixHeaderFieldHeights()));
+ }
+}
+
+/*!
Function can be used to rescale the header area.
*/
void NmEditorHeader::rescaleHeader()
@@ -155,27 +174,66 @@
int NmEditorHeader::headerHeight() const
{
qreal toHeight = mToField->height();
+ qreal ccHeight = 0;
+ qreal bccHeight = 0;
+ if (mCcBccFieldVisible) {
+ ccHeight = mCcField->height();
+ bccHeight = mBccField->height();
+ }
qreal subjectHeight = mSubjectEdit->geometry().height() + Margin;
// When called first time, height is wrongly 'Margin'
if (toHeight == Margin) {
toHeight = FieldHeightWhenSecondaryFont;
+ ccHeight = FieldHeightWhenSecondaryFont;
+ bccHeight = FieldHeightWhenSecondaryFont;
subjectHeight = FieldHeightWhenSecondaryFont;
}
- // Recipient GroupBox
- qreal recipientGroupBoxHeight = GroupBoxTitleHeight;
- if (!mGroupBoxRecipient->isCollapsed()) {
- recipientGroupBoxHeight +=
- mGroupBoxRecipientContent->geometry().height() + HeaderAreaMarginsTotal;
- }
-
qreal attHeight = 0;
if (mAttachmentList && mAttachmentList->count() > 0) {
attHeight = mAttachmentList->listWidget().geometry().height();
}
- return (int)(toHeight + recipientGroupBoxHeight + subjectHeight + attHeight);
+ return (int)(toHeight + ccHeight + bccHeight + subjectHeight + attHeight);
+}
+
+/*!
+ Send signal to inform that one of the recipient fields height has been changed.
+ */
+void NmEditorHeader::fixHeaderFieldHeights()
+{
+ // Adjust height of recipient fields
+ adjustFieldSizeValues(mToField->editor(), mToField->editor()->document()->size().height());
+ adjustFieldSizeValues(mCcField->editor(), mCcField->editor()->document()->size().height());
+ adjustFieldSizeValues(mBccField->editor(), mBccField->editor()->document()->size().height());
+
+ // Adjust height of the subject field
+ if (mSubjectEdit->document()->size().height() > FieldHeightWhenSecondaryFont) {
+ mSubjectEdit->setPreferredHeight(
+ mSubjectEdit->document()->size().height() + Margin );
+ }
+ else {
+ mSubjectEdit->setPreferredHeight( FieldHeightWhenSecondaryFont );
+ }
+
+ QTimer::singleShot(nmLayoutSystemWaitTimer*5, this, SLOT(sendHeaderHeightChanged()));
+}
+
+
+/*!
+ Private routine to adjust heights of the recipient fields
+ */
+void NmEditorHeader::adjustFieldSizeValues( NmRecipientLineEdit *widget, qreal height )
+{
+ if (height > FieldHeightWhenSecondaryFont) {
+ widget->setMaximumHeight( height + Margin );
+ widget->setMinimumHeight( height + Margin );
+ }
+ else {
+ widget->setMaximumHeight( FieldHeightWhenSecondaryFont );
+ widget->setMinimumHeight( FieldHeightWhenSecondaryFont );
+ }
}
/*!
@@ -183,16 +241,6 @@
*/
void NmEditorHeader::sendHeaderHeightChanged()
{
- // Adjust field heights
- mToField->editor()->setPreferredHeight(
- mToField->editor()->document()->size().height() + Margin);
- mCcField->editor()->setPreferredHeight(
- mCcField->editor()->document()->size().height() + Margin);
- mBccField->editor()->setPreferredHeight(
- mBccField->editor()->document()->size().height() + Margin);
- mSubjectEdit->setPreferredHeight(
- mSubjectEdit->document()->size().height() + Margin);
-
int hHeight = headerHeight();
if (mHeaderHeight != hHeight) {
mHeaderHeight = hHeight;
@@ -201,34 +249,25 @@
}
/*!
- This slot is called when group box state is changed. Timer is used to give some time
- for layout system so that header hight can be recalculated correctly
+ Return pointer to to edit
*/
-void NmEditorHeader::groupBoxExpandCollapse()
-{
- QTimer::singleShot(nmLayoutSystemWaitTimer, this, SLOT(sendHeaderHeightChanged()));
-}
-
-/*!
- Return pointer to to field
- */
-NmRecipientLineEdit* NmEditorHeader::toField() const
+NmRecipientLineEdit* NmEditorHeader::toEdit() const
{
return mToField->editor();
}
/*!
- Return pointer to cc field
+ Return pointer to cc edit
*/
-NmRecipientLineEdit* NmEditorHeader::ccField() const
+NmRecipientLineEdit* NmEditorHeader::ccEdit() const
{
return mCcField->editor();
}
/*!
- Return pointer to bcc field
+ Return pointer to bcc edit
*/
-NmRecipientLineEdit* NmEditorHeader::bccField() const
+NmRecipientLineEdit* NmEditorHeader::bccEdit() const
{
return mBccField->editor();
}
@@ -236,7 +275,7 @@
/*!
Return pointer to subject field
*/
-NmHtmlLineEdit* NmEditorHeader::subjectField() const
+NmHtmlLineEdit* NmEditorHeader::subjectEdit() const
{
return mSubjectEdit;
}
@@ -264,39 +303,6 @@
}
/*!
- This function create content widget for recipient group box.
- When AD offers groupBox content widget handling. This function
- need to be changed to use AD/docml
- */
-HbWidget* NmEditorHeader::createRecipientGroupBoxContentWidget()
-{
- mGroupBoxRecipientContent = new HbWidget();
-
- // Create layout for the widget
- mGbVerticalLayout = new QGraphicsLinearLayout(Qt::Vertical,mGroupBoxRecipientContent);
- mCcFieldLayout = new QGraphicsLinearLayout(Qt::Horizontal, mGbVerticalLayout);
- mBccFieldLayout = new QGraphicsLinearLayout(Qt::Horizontal, mGbVerticalLayout);
-
- // Add Cc: field into widget
- mCcField = new NmRecipientField(hbTrId("txt_mail_editor_cc"));
- if (mCcField) {
- mCcField->setObjectName("lineEditCcField");
- mGbVerticalLayout->insertItem(EEditorCcLine, mCcField );
- }
-
- // Add Bcc: field into widget
- mBccField = new NmRecipientField(hbTrId("txt_mail_editor_bcc"));
- if (mBccField){
- mBccField->setObjectName("lineEditBccField");
- mGbVerticalLayout->insertItem(EEditorBccLine, mBccField);
- }
- mGbVerticalLayout->setContentsMargins(0,0,0,0);
-
- mGroupBoxRecipientContent->setLayout(mGbVerticalLayout);
- return mGroupBoxRecipientContent;
-}
-
-/*!
Sets the icon for priority
*/
void NmEditorHeader::setPriority(NmMessagePriority priority)
@@ -349,18 +355,7 @@
break;
}
// Update subject field height because row amount might have been changed.
- // Done with delayed timer so that layout system has finished before.
- QTimer::singleShot(nmLayoutSystemWaitTimer, this, SLOT(sendHeaderHeightChanged()));
- // This second call will set new position for body if subject field height has been changed.
- QTimer::singleShot(nmLayoutSystemWaitTimer * 2, this, SLOT(sendHeaderHeightChanged()));
-}
-
-/*!
- * \brief Sets the groupbox to be expanded or collapsed.
- */
-void NmEditorHeader::setGroupBoxCollapsed( bool collapsed )
-{
- mGroupBoxRecipient->setCollapsed( collapsed );
+ QTimer::singleShot(nmLayoutSystemWaitTimer * 3, this, SLOT(fixHeaderFieldHeights()));
}
/*!
--- a/emailuis/nmailui/src/nmeditorview.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmeditorview.cpp Fri May 14 04:41:45 2010 +0300
@@ -39,7 +39,7 @@
NmUiStartParam* startParam,
NmUiEngine &uiEngine,
QGraphicsItem *parent)
- : NmBaseView(startParam, parent),
+ : NmBaseView(startParam, application, parent),
mApplication(application),
mUiEngine(uiEngine),
mDocumentLoader(NULL),
@@ -54,7 +54,9 @@
mRemoveAttachmentOperation(NULL),
mCheckOutboxOperation(NULL),
mWaitDialog(NULL),
- mAttachmentPicker(NULL)
+ mQueryDialog(NULL),
+ mAttachmentPicker(NULL),
+ mCcBccFieldVisible(false)
{
mDocumentLoader = new HbDocumentLoader();
// Set object name
@@ -93,6 +95,7 @@
delete mAttachmentListContextMenu;
}
delete mWaitDialog;
+ delete mQueryDialog;
delete mAttachmentPicker;
}
@@ -204,35 +207,35 @@
}
/*
- Query user if we want to exit the editor
+ Launch dialog for query user if we want to exit the editor
*/
-bool NmEditorView::okToExitView()
+void NmEditorView::okToExitView()
{
+ NmEditorHeader *header = mContentWidget->header();
+
bool okToExit = true;
-
- NmEditorHeader *header = mContentWidget->header();
// show the query if the message has not been sent
if (mMessage && header) {
// see if editor has any content
int toTextLength = 0;
- if (header->toField()) {
- toTextLength = header->toField()->text().length();
+ if (header->toEdit()) {
+ toTextLength = header->toEdit()->text().length();
}
int ccTextLength = 0;
- if (header->ccField()) {
- ccTextLength = header->ccField()->text().length();
+ if (header->ccEdit()) {
+ ccTextLength = header->ccEdit()->text().length();
}
int bccTextLength = 0;
- if (header->bccField()) {
- bccTextLength = header->bccField()->text().length();
+ if (header->bccEdit()) {
+ bccTextLength = header->bccEdit()->text().length();
}
int subjectLength = 0;
- if (header->subjectField()) {
- subjectLength = header->subjectField()->text().length();
+ if (header->subjectEdit()) {
+ subjectLength = header->subjectEdit()->text().length();
}
QList<NmMessagePart*> attachmentList;
@@ -244,11 +247,36 @@
// content exists, verify exit from user
if (!okToExit) {
- okToExit = NmUtilities::displayQuestionNote(hbTrId("txt_mail_dialog_delete_message"));
+ if (mQueryDialog) {
+ delete mQueryDialog;
+ mQueryDialog = 0;
+ }
+ // Launch query dialog.
+ mQueryDialog = NmUtilities::displayQuestionNote(hbTrId("txt_mail_dialog_delete_message"),
+ this,
+ SLOT(okToExitQuery(HbAction*)));
}
}
+
+ // no need to query anything, just exit.
+ if(okToExit) {
+ QMetaObject::invokeMethod(&mApplication,
+ "popView",
+ Qt::QueuedConnection);
+ }
+}
- return okToExit;
+/*!
+ Handle the user selection is it ok to exit.
+*/
+void NmEditorView::okToExitQuery(HbAction* action)
+{
+ // Check that 'Yes' button was pressed. Use loc string 'txt_mail_dialog_yes' when possible.
+ if (action->text() == "Yes") {
+ QMetaObject::invokeMethod(&mApplication,
+ "popView",
+ Qt::QueuedConnection);
+ }
}
/*!
@@ -424,26 +452,56 @@
NmUtilities::getRecipientsFromMessage(*mMessage, invalidAddresses, NmUtilities::InvalidAddress);
}
- bool okToSend = true;
if (invalidAddresses.count() > 0) {
// invalid addresses found, verify send from user
QString noteText = hbTrId("txt_mail_dialog_invalid_mail_address_send");
// set the first failing address to the note
noteText = noteText.arg(invalidAddresses.at(0).address());
- okToSend = NmUtilities::displayQuestionNote(noteText);
+
+ if (mQueryDialog) {
+ delete mQueryDialog;
+ mQueryDialog = 0;
+ }
+ // Launch query dialog. Pressing "yes" will finalize the sending.
+ mQueryDialog = NmUtilities::displayQuestionNote(noteText,
+ this,
+ SLOT(invalidAddressQuery(HbAction*)));
+ }
+ else {
+ // no need to ask anything, just send
+ finalizeSending();
}
-
- if (okToSend) {
- QList<NmOperation *> preliminaryOperations;
- preliminaryOperations.append(mAddAttachmentOperation);
- preliminaryOperations.append(mRemoveAttachmentOperation);
- // ownership of mMessage is transferred
- // NmOperations are automatically deleted after completion
- mUiEngine.sendMessage(mMessage, preliminaryOperations);
- mMessage = NULL;
- preliminaryOperations.clear();
- mApplication.popView();
+}
+
+/*!
+ Send the message after all checks have been done.
+*/
+void NmEditorView::finalizeSending()
+{
+ QList<NmOperation *> preliminaryOperations;
+ preliminaryOperations.append(mAddAttachmentOperation);
+ preliminaryOperations.append(mRemoveAttachmentOperation);
+ // ownership of mMessage is transferred
+ // NmOperations are automatically deleted after completion
+ mUiEngine.sendMessage(mMessage, preliminaryOperations);
+ mMessage = NULL;
+ preliminaryOperations.clear();
+ // Must use delayed editor view destruction so that query dialog
+ // (which has signaled this) gets time to complete.
+ QMetaObject::invokeMethod(&mApplication,
+ "popView",
+ Qt::QueuedConnection);
+}
+
+/*!
+ Handle the user selection for invalid address query which was started by startSending.
+*/
+void NmEditorView::invalidAddressQuery(HbAction* action)
+{
+ // Check that 'Yes' button was pressed. Use loc string 'txt_mail_dialog_yes' when possible.
+ if (action->text() == "Yes") {
+ finalizeSending();
}
}
@@ -485,34 +543,34 @@
}
}
if (mContentWidget && mContentWidget->header() ) {
- if (mContentWidget->header()->subjectField()) {
+ if (mContentWidget->header()->subjectEdit()) {
mMessage->envelope().setSubject(
- mContentWidget->header()->subjectField()->text());
+ mContentWidget->header()->subjectEdit()->text());
}
- if (mContentWidget->header()->toField()) {
+ if (mContentWidget->header()->toEdit()) {
QString toFieldText =
- mContentWidget->header()->toField()->text();
+ mContentWidget->header()->toEdit()->text();
// This verification of zero length string isn't needed
// after list of addresses
if (toFieldText.length() > 0) {
- mMessage->envelope().setToRecipients(mContentWidget->header()->toField()->emailAddressList());
+ mMessage->envelope().setToRecipients(mContentWidget->header()->toEdit()->emailAddressList());
}
}
- if (mContentWidget->header()->ccField()) {
+ if (mContentWidget->header()->ccEdit()) {
QString ccFieldText =
- mContentWidget->header()->ccField()->text();
+ mContentWidget->header()->ccEdit()->text();
if (ccFieldText.length() > 0) {
- mMessage->envelope().setCcRecipients(mContentWidget->header()->ccField()->emailAddressList());
+ mMessage->envelope().setCcRecipients(mContentWidget->header()->ccEdit()->emailAddressList());
}
}
- if (mContentWidget->header()->bccField()) {
+ if (mContentWidget->header()->bccEdit()) {
QString bccFieldText =
- mContentWidget->header()->bccField()->text();
+ mContentWidget->header()->bccEdit()->text();
if (bccFieldText.length() > 0) {
- mMessage->envelope().setBccRecipients(mContentWidget->header()->bccField()->emailAddressList());
+ mMessage->envelope().setBccRecipients(mContentWidget->header()->bccEdit()->emailAddressList());
}
}
}
@@ -559,14 +617,14 @@
bccAddressesString = addressListToString(messageEnvelope.bccRecipients());
}
- mContentWidget->header()->toField()->setPlainText(toAddressesString);
- mContentWidget->header()->ccField()->setPlainText(ccAddressesString);
- mContentWidget->header()->bccField()->setPlainText(bccAddressesString);
+ mContentWidget->header()->toEdit()->setPlainText(toAddressesString);
+ mContentWidget->header()->ccEdit()->setPlainText(ccAddressesString);
+ mContentWidget->header()->bccEdit()->setPlainText(bccAddressesString);
if (ccAddressesString.length() || bccAddressesString.length()) {
// Since cc or/and bcc recipients exist, expand the group box to display
// the addresses by expanding the group box.
- mContentWidget->header()->setGroupBoxCollapsed(false);
+ mContentWidget->header()->setFieldVisibility(true);
}
// Set subject.
@@ -574,7 +632,7 @@
QString *subject = mStartParam->subject();
if (subject) {
- mContentWidget->header()->subjectField()->setPlainText(*subject);
+ mContentWidget->header()->subjectEdit()->setPlainText(*subject);
}
}
else {
@@ -587,7 +645,7 @@
}
// Construct the subject field.
- mContentWidget->header()->subjectField()->setPlainText(
+ mContentWidget->header()->subjectEdit()->setPlainText(
addSubjectPrefix(editorStartMode, messageEnvelope.subject()));
}
@@ -730,11 +788,21 @@
*/
void NmEditorView::createOptionsMenu()
{
- if (!mPrioritySubMenu) {
+ menu()->clearActions();
+
+ // Create CC/BCC options menu object
+ if (mCcBccFieldVisible) {
+ menu()->addAction(hbTrId("txt_mail_opt_hide_cc_bcc"), this, SLOT(switchCcBccFieldVisibility()));
+ }
+ else {
+ menu()->addAction(hbTrId("txt_mail_opt_show_cc_bcc"), this, SLOT(switchCcBccFieldVisibility()));
+ }
+
+ // Create Priority options menu object
+ if (!mPrioritySubMenu) {
mPrioritySubMenu = new HbMenu();
}
mPrioritySubMenu->clearActions();
- menu()->clearActions();
NmActionRequest request(this, NmActionOptionsMenu, NmActionContextViewEditor,
NmActionContextDataMessage, mStartParam->mailboxId(), mStartParam->folderId(),
mStartParam->messageId());
@@ -750,6 +818,22 @@
}
/*!
+ Show or hide Cc field
+*/
+void NmEditorView::switchCcBccFieldVisibility()
+{
+ if (mCcBccFieldVisible) {
+ mCcBccFieldVisible = false;
+ }
+ else {
+ mCcBccFieldVisible = true;
+ }
+ mHeaderWidget->setFieldVisibility( mCcBccFieldVisible );
+
+ QTimer::singleShot(NmOrientationTimer, this, SLOT(sendHeaderHeightChanged()));
+}
+
+/*!
handleActionCommand. From NmActionObserver, extension manager calls this
call to handle menu command in the UI.
*/
@@ -776,6 +860,20 @@
break;
}
}
+ else if (actionResponse.menuType() == NmActionContextMenu) {
+ switch (responseCommand) {
+ case NmActionResponseCommandRemoveAttachment: {
+ removeAttachmentTriggered();
+ break;
+ }
+ case NmActionResponseCommandOpenAttachment: {
+ openAttachmentTriggered();
+ break;
+ }
+ default:
+ break;
+ }
+ }
}
/*!
@@ -898,13 +996,13 @@
// editors that show the button in VKB.
HbEditorInterface editorInterface(mContentWidget->editor());
editorInterface.addAction(list[i]);
- HbEditorInterface toEditorInterface(mContentWidget->header()->toField());
+ HbEditorInterface toEditorInterface(mContentWidget->header()->toEdit());
toEditorInterface.addAction(list[i]);
- HbEditorInterface ccEditorInterface(mContentWidget->header()->ccField());
+ HbEditorInterface ccEditorInterface(mContentWidget->header()->ccEdit());
ccEditorInterface.addAction(list[i]);
- HbEditorInterface bccEditorInterface(mContentWidget->header()->bccField());
+ HbEditorInterface bccEditorInterface(mContentWidget->header()->bccEdit());
bccEditorInterface.addAction(list[i]);
- HbEditorInterface subjectEditorInterface(mContentWidget->header()->subjectField());
+ HbEditorInterface subjectEditorInterface(mContentWidget->header()->subjectEdit());
subjectEditorInterface.addAction(list[i]);
}
}
@@ -1068,28 +1166,7 @@
// Add menu position check here, so that it does not go outside of the screen
QPointF menuPos(point.x(),point.y());
mAttachmentListContextMenu->setPreferredPos(menuPos);
- mAttachmentListContextMenu->open(this, SLOT(contextButton(NmActionResponse&)));
-}
-
-/*!
- Slot. Signaled when menu option is selected
-*/
-void NmEditorView::contextButton(NmActionResponse &result)
-{
- if (result.menuType() == NmActionContextMenu) {
- switch (result.responseCommand()) {
- case NmActionResponseCommandRemoveAttachment: {
- removeAttachmentTriggered();
- break;
- }
- case NmActionResponseCommandOpenAttachment: {
- openAttachmentTriggered();
- break;
- }
- default:
- break;
- }
- }
+ mAttachmentListContextMenu->open();
}
/*!
--- a/emailuis/nmailui/src/nmmailboxlistview.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmmailboxlistview.cpp Fri May 14 04:41:45 2010 +0300
@@ -37,7 +37,7 @@
NmMailboxListModel &mailboxListModel,
HbDocumentLoader *documentLoader,
QGraphicsItem *parent)
-: NmBaseView(startParam,parent),
+: NmBaseView(startParam, application, parent),
mApplication(application),
mMailboxListWidget(NULL),
mUiEngine(uiEngine),
@@ -97,9 +97,6 @@
QObject::connect(mMailboxListWidget,
SIGNAL(activated(const QModelIndex &)),
this, SLOT(itemActivated(const QModelIndex &)));
- QObject::connect(mMailboxListWidget,
- SIGNAL(longPressed(HbAbstractViewItem*, const QPointF&)),
- this, SLOT(showItemContextMenu(HbAbstractViewItem*,const QPointF&)));
mMailboxListWidget->setClampingStyle(HbScrollArea::BounceBackClamping);
mMailboxListWidget->setFrictionEnabled(true);
}
@@ -197,71 +194,6 @@
}
/*!
- showItemContextMenu. Functions starts fetching item context menu objects
- from extension. Menu is displayed in view callback funtion.
-*/
-void NmMailboxListView::showItemContextMenu(HbAbstractViewItem *item, const QPointF &coords)
-{
- if (mItemContextMenu&&item){
- // Clear previous items from context menu
- mItemContextMenu->clearActions();
- // Get mailbox meta data
- NmMailboxMetaData *mailbox =
- mListModel.data(item->modelIndex(), Qt::DisplayRole).value<NmMailboxMetaData*>();
- NmId mailboxId(0);
- if (mailbox) {
- mailboxId = mailbox->id();
- }
- // Fetch items from extension based on item
- NmActionRequest request(this, NmActionContextMenu, NmActionContextViewNone,
- NmActionContextDataMailbox, mailboxId);
- NmUiExtensionManager &extMngr = mApplication.extManager();
- QList<NmAction*> list;
- extMngr.getActions(request, list);
- for (int i=0;i<list.count();i++) {
- mItemContextMenu->addAction(list[i]);
- }
- // Display menu
- if (mMailboxListWidget){
- mMailboxListWidget->setCurrentIndex(item->modelIndex());
- mItemContextMenu->setObjectName("MailboxItemContextMenu");
- mItemContextMenu->setPreferredPos(coords);
- mItemContextMenu->open(this, SLOT(contextButton(NmActionResponse&)));
- }
- }
-}
-
-/*!
- Slot. Signaled when menu option is selected
-*/
-void NmMailboxListView::contextButton(NmActionResponse &result)
-{
- // Handle context menu commands here
- if (result.menuType()==NmActionContextMenu){
- switch (result.responseCommand()){
- case NmActionResponseCommandOpen:{
- // Check that given start response has mailbox and folder id's
- if (result.mailboxId()!=0){
- // Use standard folder id inbox if folder has not been specified
- NmId folderId = result.folderId();
- if (folderId==0){
- folderId=mUiEngine.standardFolderId(result.mailboxId(),
- NmFolderInbox);
- }
- NmUiStartParam *startParam = new NmUiStartParam(NmUiViewMessageList,
- result.mailboxId(),
- folderId);
- mApplication.enterNmUiView(startParam);
- }
- }
- break;
- default:
- break;
- }
- }
-}
-
-/*!
handleActionCommand. From NmMenuObserver, extension manager calls this
call to handle menu command in the UI.
*/
--- a/emailuis/nmailui/src/nmmailboxlistviewitem.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmmailboxlistviewitem.cpp Fri May 14 04:41:45 2010 +0300
@@ -54,6 +54,8 @@
// To create primitives
HbListViewItem::updateChildItems();
+ EmailMailboxInfo mailboxInfo;
+
NmMailboxMetaData *mailbox =
modelIndex().data(Qt::DisplayRole).value<NmMailboxMetaData*>();
if (mailbox){
@@ -62,7 +64,10 @@
HbLabel *mbIcon = new HbLabel();
mbIcon->setObjectName("MailboxListViewMailboxIcon");
- mbIcon->setIcon(NmIcons::getIcon(NmIcons::NmIconDefaultMailbox));
+
+ QString domainName = mailbox->address();
+ QString iconName = mailboxInfo.mailboxIcon(domainName);
+ mbIcon->setIcon(HbIcon(iconName));
mbIcon->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Preferred);
HbLabel *mbName = new HbLabel();
--- a/emailuis/nmailui/src/nmmailboxselectiondialog.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmmailboxselectiondialog.cpp Fri May 14 04:41:45 2010 +0300
@@ -63,7 +63,7 @@
*/
void NmMailboxSelectionDialog::open()
{
- NMLOG("NmMailboxSelectionDialog::exec()");
+ NMLOG("NmMailboxSelectionDialog::open()");
mMailboxId = 0;
// Initialize the UI and fetch the mailbox items into the list.
@@ -80,11 +80,11 @@
void NmMailboxSelectionDialog::dialogClosed(HbAction *action)
{
Q_UNUSED(action);
-
+
// Store the ID of the selected mailbox into the given argument.
NMLOG(QString("NmMailboxSelectionDialog::dialogClosed() return %1").
arg(mMailboxId.id()));
-
+
emit selectionDialogClosed(mMailboxId);
}
@@ -164,13 +164,14 @@
NmMailboxMetaData *metaData = NULL;
QStandardItem *item = NULL;
+ EmailMailboxInfo mailboxInfo;
for (int i = 0; i < count; ++i) {
metaData = mailboxMetaData(i);
if (metaData) {
- // Implement the branded icons when possible.
- const HbIcon &mailboxIcon =
- NmIcons::getIcon(NmIcons::NmIconDefaultMailbox);
+ QString domainName = metaData->address();
+ QString iconName = mailboxInfo.mailboxIcon(domainName);
+ HbIcon mailboxIcon( iconName );
// Construct the item and append it into the list.
item = new QStandardItem(mailboxIcon.qicon(), metaData->name());
--- a/emailuis/nmailui/src/nmmailboxserviceinterface.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmmailboxserviceinterface.cpp Fri May 14 04:41:45 2010 +0300
@@ -80,6 +80,8 @@
// Bring the application to the foreground.
XQServiceUtil::toBackground(false);
+ HbMainWindow *mainWindow = mApplication->mainWindow();
+ mainWindow->show();
// Launch the message list view.
NmUiStartParam *startParam =
--- a/emailuis/nmailui/src/nmmessagelistview.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmmessagelistview.cpp Fri May 14 04:41:45 2010 +0300
@@ -19,7 +19,7 @@
static const char *NMUI_MESSAGE_LIST_VIEW = "NmMessageListView";
static const char *NMUI_MESSAGE_LIST_TREE_LIST = "MessageTreeList";
static const char *NMUI_MESSAGE_LIST_NO_MESSAGES = "MessageListNoMessages";
-static const char *NMUI_MESSAGE_LIST_FOLDER_LABEL = "folderLabel";
+static const char *NMUI_MESSAGE_LIST_FOLDER_LABEL = "labelGroupBox";
static const char *NMUI_MESSAGE_LIST_SYNC_ICON = "syncIcon";
#include "nmuiheaders.h"
@@ -40,7 +40,7 @@
NmMessageListModel &messageListModel,
HbDocumentLoader *documentLoader,
QGraphicsItem *parent)
-: NmBaseView(startParam, parent),
+: NmBaseView(startParam, application, parent),
mApplication(application),
mMessageListWidget(NULL),
mUiEngine(uiEngine),
@@ -53,7 +53,8 @@
mFolderLabel(NULL),
mSyncIcon(NULL),
mViewReady(false),
-mCurrentFolderType(NmFolderInbox)
+mCurrentFolderType(NmFolderInbox),
+mSettingsLaunched(false)
{
// Load view layout
loadViewLayout();
@@ -119,9 +120,9 @@
NMLOG("nmailui: (no messages) object loading failed");
}
- // Create folder label and set inbox text for it
- mFolderLabel = qobject_cast<HbLabel *>(mDocumentLoader->findWidget(NMUI_MESSAGE_LIST_FOLDER_LABEL));
+ mFolderLabel = qobject_cast<HbGroupBox *>(mDocumentLoader->findWidget(NMUI_MESSAGE_LIST_FOLDER_LABEL));
+ // Disable the old sync icon implementation for the time being
mSyncIcon = qobject_cast<HbLabel *>(mDocumentLoader->findWidget(NMUI_MESSAGE_LIST_SYNC_ICON));
if (mSyncIcon) {
mSyncIcon->setIcon(NmIcons::getIcon(NmIcons::NmIconOffline));
@@ -158,6 +159,33 @@
QMetaObject::invokeMethod(this, "refreshList", Qt::QueuedConnection);
mViewReady=true;
}
+ mSettingsLaunched = false;
+}
+
+/*!
+ Getter for currently displayed folder type
+*/
+NmFolderType NmMessageListView::folderType()
+{
+ return mCurrentFolderType;
+}
+
+/*!
+ okToExitView. Message list view determines whether it is
+ ok to exit view and calls mapplication popview.
+*/
+void NmMessageListView::okToExitView()
+{
+ // Close view if current folder is inbox
+ if (mCurrentFolderType==NmFolderInbox){
+ mApplication.popView();
+ }
+ // Switch to inbox
+ else{
+ NmId mailboxId = mStartParam->mailboxId();
+ NmId folderId = mUiEngine.standardFolderId(mailboxId,NmFolderInbox);
+ folderSelected(mailboxId,folderId);
+ }
}
/*!
@@ -200,8 +228,6 @@
refreshList();
// Refresh the mailboxname
setMailboxName();
- // Show message list if it is hidden
- mMessageListWidget->show();
}
else {
NMLOG("nmailui: Invalid message list start parameter");
@@ -239,6 +265,13 @@
}
}
+ // In each refresh, e.g. in folder change the UI signals
+ // lower layer about the folder that has been opened.
+ if (mStartParam){
+ mUiEngine.updateActiveFolder(mailboxId, mStartParam->folderId());
+ }
+
+ // Set item model to message list widget
if (mMessageListWidget) {
mMessageListWidget->setModel(static_cast<QStandardItemModel*>(&mMessageListModel));
QObject::connect(&mMessageListModel, SIGNAL(rowsInserted(const QModelIndex&,int,int)),
@@ -254,11 +287,22 @@
}
}
+/*!
+ Sync state event handling
+*/
void NmMessageListView::handleSyncStateEvent(NmSyncState syncState, const NmId & mailboxId)
{
if (mSyncIcon && mailboxId == mMessageListModel.currentMailboxId()) {
if (syncState == Synchronizing) {
mSyncIcon->setIcon(NmIcons::getIcon(NmIcons::NmIconSynching));
+ // before first sync inbox id might be zero
+ if (mStartParam->folderId() == 0) {
+ // after sync inbox id should be updated to correct value
+ NmId folderId = mUiEngine.standardFolderId(
+ mStartParam->mailboxId(),
+ NmFolderInbox);
+ mStartParam->setFolderId(folderId);
+ }
}
else {
if (mUiEngine.connectionState(mailboxId) == Connected) {
@@ -291,18 +335,18 @@
*/
void NmMessageListView::folderSelected(NmId mailbox, NmId folder)
{
- // Reloas view contents with new startparams
- if (mStartParam){
- NmUiStartParam* startParam = new NmUiStartParam(NmUiViewMessageList,mailbox,folder);
- // Hide message lis for redraw
- mMessageListWidget->hide();
+ // Reload view contents with new startparams if mailbox or folder
+ // id is different than current values.
+ if (mStartParam && (mStartParam->mailboxId()!=mailbox||mStartParam->folderId()!=folder)){
+ // Create start params
+ NmUiStartParam* startParam = new NmUiStartParam(NmUiViewMessageList,mailbox,folder);
+ // Store active folder type
+ mCurrentFolderType = mUiEngine.folderTypeById(startParam->mailboxId(),startParam->folderId());
// Reload view, ownership of the startparams is passed and old startparams
// are deleted within reloadViewContents function
reloadViewContents(startParam);
//Set folder text to status bar
setFolderName();
- // Store active folder type
- mCurrentFolderType = NmFolderInbox;
}
}
@@ -312,69 +356,30 @@
*/
void NmMessageListView::showItemContextMenu(HbAbstractViewItem *listViewItem, const QPointF &coords)
{
- // Store long press item for later use with response
- mLongPressedItem = mMessageListModel.data(
- listViewItem->modelIndex(), Qt::DisplayRole).value<NmMessageListModelItem*>();
- if (mItemContextMenu && mLongPressedItem && mLongPressedItem->itemType() ==
- NmMessageListModelItem::NmMessageItemMessage) {
-
- // Clear previous items from context menu
- mItemContextMenu->clearActions();
- NmUiExtensionManager &extMngr = mApplication.extManager();
- QList<NmAction*> list;
- // Fetch items from extension based on item
- NmMessageEnvelope *envelope = mLongPressedItem->envelopePtr();
- if (envelope){
- NmActionRequest request(this, NmActionContextMenu, NmActionContextViewMessageList,
- NmActionContextDataMessage, mStartParam->mailboxId(), mStartParam->folderId(),
- envelope->messageId(),QVariant::fromValue(envelope));
- extMngr.getActions(request, list);
- }
- else{
- NmActionRequest request(this, NmActionContextMenu, NmActionContextViewMessageList,
- NmActionContextDataMessage, mStartParam->mailboxId(), mStartParam->folderId(),
- envelope->messageId());
- extMngr.getActions(request, list);
- }
- for (int i=0;i<list.count();i++) {
- mItemContextMenu->addAction(list[i]);
- }
- mItemContextMenu->setPreferredPos(coords);
- mItemContextMenu->open(this, SLOT(contextButton(NmActionResponse&)));
- }
-}
-
-/*!
- Slot. Signaled when menu option is selected
-*/
-void NmMessageListView::contextButton(NmActionResponse &result)
-{
- // Handle context menu commands here
- if (result.menuType()==NmActionContextMenu){
- switch (result.responseCommand()){
- case NmActionResponseCommandOpen:{
- if (mLongPressedItem){
- NmUiStartParam *startParam = new NmUiStartParam(NmUiViewMessageViewer,
- mStartParam->mailboxId(), mStartParam->folderId(),
- mLongPressedItem->envelope().messageId());
- mApplication.enterNmUiView(startParam);
- mLongPressedItem=NULL;
- }
- }
- break;
- //temporary solution..
- case NmActionResponseCommandForward:{
- if (mLongPressedItem){
- NmUiStartParam *startParam = new NmUiStartParam(NmUiViewMessageEditor,
- mStartParam->mailboxId(), mStartParam->folderId(),
- mLongPressedItem->envelope().messageId());
- mApplication.enterNmUiView(startParam);
- mLongPressedItem=NULL;
- }
- }
- break;
- default:
- break;
+ if (listViewItem) {
+ // Store long press item for later use with response
+ mLongPressedItem = mMessageListModel.data(
+ listViewItem->modelIndex(), Qt::DisplayRole).value<NmMessageListModelItem*>();
+ if (mItemContextMenu && mLongPressedItem && mLongPressedItem->itemType() ==
+ NmMessageListModelItem::NmMessageItemMessage) {
+
+ // Clear previous items from context menu
+ mItemContextMenu->clearActions();
+ NmUiExtensionManager &extMngr = mApplication.extManager();
+ QList<NmAction*> list;
+ // Fetch items from extension based on item
+ NmMessageEnvelope *envelope = mLongPressedItem->envelopePtr();
+ if (envelope){
+ NmActionRequest request(this, NmActionContextMenu, NmActionContextViewMessageList,
+ NmActionContextDataMessage, mStartParam->mailboxId(), mStartParam->folderId(),
+ envelope->messageId(),QVariant::fromValue(envelope));
+ extMngr.getActions(request, list);
+ for (int i=0;i<list.count();i++) {
+ mItemContextMenu->addAction(list[i]);
+ }
+ mItemContextMenu->setPreferredPos(coords);
+ mItemContextMenu->open();
+ }
}
}
}
@@ -409,7 +414,8 @@
modelItem->setExpanded(false);
}
}
- if (modelItem && modelItem->itemType() == NmMessageListModelItem::NmMessageItemMessage)
+ if (modelItem && modelItem->itemType() == NmMessageListModelItem::NmMessageItemMessage
+ && !mSettingsLaunched)
{
NmFolderType folderType = mUiEngine.folderTypeById(mStartParam->mailboxId(),
mStartParam->folderId());
@@ -471,18 +477,41 @@
break;
}
case NmActionResponseCommandMailboxDeleted: {
- mApplication.popView();
+ mApplication.prepareForPopView();
break;
}
case NmActionResponseCommandSwitchFolder: {
folderSelected(actionResponse.mailboxId(), actionResponse.folderId());
break;
}
+ case NmActionResponseCommandSettings: {
+ mSettingsLaunched = true;
+ break;
+ }
default: {
break;
}
}
}
+
+ // Handle context menu commands here
+ else if (actionResponse.menuType()==NmActionContextMenu){
+ switch (actionResponse.responseCommand()){
+ case NmActionResponseCommandOpen:{
+ if (mLongPressedItem){
+ NmUiStartParam *startParam = new NmUiStartParam(NmUiViewMessageViewer,
+ mStartParam->mailboxId(), mStartParam->folderId(),
+ mLongPressedItem->envelope().messageId());
+ mApplication.enterNmUiView(startParam);
+ mLongPressedItem=NULL;
+ }
+ }
+ break;
+ default:
+ break;
+ }
+ }
+
// Handle toolbar commands here
else if ( actionResponse.menuType() == NmActionToolbar ) {
if ( actionResponse.responseCommand() == NmActionResponseCommandNewMail ) {
@@ -581,37 +610,36 @@
setFolderName. Function sets folder name to status bar
*/
void NmMessageListView::setFolderName()
-{
- if (mStartParam && mFolderLabel) {
- switch (mUiEngine.folderTypeById(mStartParam->mailboxId(),
- mStartParam->folderId())) {
+{
+ if (mStartParam&&mFolderLabel){
+ switch (mCurrentFolderType) {
case NmFolderOutbox:
{
- mFolderLabel->setPlainText(hbTrId("txt_mail_subhead_outbox"));
+ mFolderLabel->setHeading(hbTrId("txt_mail_subhead_outbox"));
}
break;
case NmFolderDrafts:
{
- mFolderLabel->setPlainText(hbTrId("txt_mail_subhead_drafts"));
+ mFolderLabel->setHeading(hbTrId("txt_mail_subhead_drafts"));
}
break;
case NmFolderSent:
{
- mFolderLabel->setPlainText(hbTrId("txt_mail_subhead_sent_items"));
+ mFolderLabel->setHeading(hbTrId("txt_mail_subhead_sent_items"));
}
break;
case NmFolderDeleted:
{
- mFolderLabel->setPlainText(hbTrId("txt_mail_subhead_deleted_items"));
+ mFolderLabel->setHeading(hbTrId("txt_mail_subhead_deleted_items"));
}
break;
case NmFolderInbox:
default:
{
- mFolderLabel->setPlainText(hbTrId("txt_mail_subhead_inbox"));
+ mFolderLabel->setHeading(hbTrId("txt_mail_subhead_inbox"));
}
- break;
- }
+ break;
+ }
}
}
--- a/emailuis/nmailui/src/nmmessagelistviewitem.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmmessagelistviewitem.cpp Fri May 14 04:41:45 2010 +0300
@@ -21,7 +21,7 @@
\brief list view item for message list view
*/
-static const qreal NmItemLineOpacity = 0.4;
+static const int NmFolderTypeRole = Qt::UserRole+1;
/*!
Constructor
@@ -148,12 +148,7 @@
{
// member variables are created in previous function
// sender
- QString displayName = envelope.sender().displayName();
- if (displayName.length()) {
- mSender->setText(NmUtilities::cleanupDisplayName(displayName));
- } else {
- mSender->setText(envelope.sender().address());
- }
+ mSender->setText(senderFieldText(envelope));
// time
HbExtendedLocale locale = HbExtendedLocale::system();
QDate sentLocalDate = envelope.sentTime().toLocalTime().date();
@@ -241,6 +236,9 @@
Q_UNUSED(painter);
}
+/*!
+ setFontsUnread
+*/
void NmMessageListViewItem::setFontsUnread()
{
static QColor colorRole = HbColorScheme::color("qtc_list_item_title_normal");
@@ -248,6 +246,9 @@
setFonts(colorRole, spekki);
}
+/*!
+ setFontsRead
+*/
void NmMessageListViewItem::setFontsRead()
{
static QColor colorRole = HbColorScheme::color("qtc_list_item_content_normal");
@@ -255,6 +256,9 @@
setFonts(colorRole, spekki);
}
+/*!
+ getFontSizes.
+*/
void NmMessageListViewItem::getFontSizes()
{
// Get font sizes from style
@@ -274,6 +278,9 @@
}
}
+/*!
+ setFonts.
+*/
void NmMessageListViewItem::setFonts(const QColor &colorRole,
HbFontSpec &spekki)
{
@@ -300,3 +307,59 @@
}
}
+/*!
+ senderFieldText. Function returns sender field text from
+ envelope based on currently used function
+*/
+QString NmMessageListViewItem::senderFieldText(const NmMessageEnvelope &envelope)
+{
+ QString ret;
+ QVariant folderType = modelIndex().data(
+ NmFolderTypeRole).value<QVariant>();
+ switch (folderType.toInt()) {
+ // Outbox, drafts and sent folder, sender name is
+ // replaced with first recipient from to/cc list
+ case NmFolderOutbox:
+ case NmFolderDrafts:
+ case NmFolderSent:
+ {
+ QList<NmAddress>& toRecipients = envelope.toRecipients();
+ QList<NmAddress>& ccRecipients = envelope.ccRecipients();
+ NmAddress addressToUse;
+ bool foundAddress(false);
+ if (toRecipients.count()){
+ addressToUse=toRecipients[0];
+ foundAddress=true;
+ }
+ else if (ccRecipients.count()) {
+ addressToUse=ccRecipients[0];
+ foundAddress=true;
+ }
+ if (foundAddress){
+ QString displayName = addressToUse.displayName();
+ if (displayName.length()) {
+ ret += NmUtilities::cleanupDisplayName(displayName);
+ }
+ else {
+ ret += addressToUse.address();
+ }
+ }
+
+ }
+ break;
+ // All other folders will show sender display name
+ default:
+ {
+ QString displayName = envelope.sender().displayName();
+ if (displayName.length()) {
+ ret += NmUtilities::cleanupDisplayName(displayName);
+ }
+ else {
+ ret += envelope.sender().address();
+ }
+ }
+ break;
+ }
+ return ret;
+}
+
--- a/emailuis/nmailui/src/nmmessagesearchlistview.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmmessagesearchlistview.cpp Fri May 14 04:41:45 2010 +0300
@@ -40,18 +40,18 @@
NmApplication &application,
NmUiStartParam* startParam,
NmUiEngine &uiEngine,
- NmMessageSearchListModel &searchListModel,
+ NmMessageListModel &msgListModel,
HbDocumentLoader *documentLoader,
QGraphicsItem *parent)
-: NmBaseView(startParam, parent),
+: NmBaseView(startParam, application, parent),
mApplication(application),
mUiEngine(uiEngine),
- mSearchListModel(searchListModel),
+ mMsgListModel(msgListModel),
mDocumentLoader(documentLoader),
mItemContextMenu(NULL),
mMessageListWidget(NULL),
+ mInfoLabel(NULL),
mNoMessagesLabel(NULL),
- mInfoLabel(NULL),
mLineEdit(NULL),
mPushButton(NULL),
mLongPressedItem(NULL),
@@ -133,7 +133,7 @@
break;
}
case NmActionResponseCommandMailboxDeleted: {
- mApplication.popView();
+ mApplication.prepareForPopView();
break;
}
default: {
@@ -141,6 +141,17 @@
}
}
}
+ // Handle context menu commands here.
+ if (actionResponse.menuType() == NmActionContextMenu) {
+ if (mLongPressedItem){
+ NmUiStartParam *startParam = new NmUiStartParam(NmUiViewMessageViewer,
+ mStartParam->mailboxId(), mStartParam->folderId(),
+ mLongPressedItem->envelope().messageId());
+
+ mApplication.enterNmUiView(startParam);
+ mLongPressedItem = NULL;
+ }
+ }
}
@@ -181,15 +192,6 @@
mMessageListWidget->setFrictionEnabled(true);
}
- // Load the "no messages" label.
- mNoMessagesLabel = qobject_cast<HbLabel *>(
- mDocumentLoader->findWidget(NMUI_MESSAGE_SEARCH_LIST_NO_MESSAGES));
-
- if (mNoMessagesLabel) {
- NMLOG("NmMessageSearchListView: \"No messages\" label loaded.");
- mNoMessagesLabel->hide();
- }
-
// Load the info label.
mInfoLabel = qobject_cast<HbLabel *>(
mDocumentLoader->findWidget(NMUI_MESSAGE_SEARCH_LIST_INFO_LABEL));
@@ -200,6 +202,15 @@
mInfoLabel->hide();
}
+ // Load the no messages label.
+ mNoMessagesLabel = qobject_cast<HbLabel *>(
+ mDocumentLoader->findWidget(NMUI_MESSAGE_SEARCH_LIST_NO_MESSAGES));
+
+ if (mNoMessagesLabel) {
+ NMLOG("NmMessageSearchListView: No messages label loaded.");
+ mNoMessagesLabel->hide();
+ }
+
// Load the search panel.
mLineEdit = qobject_cast<HbLineEdit *>(
mDocumentLoader->findWidget(NMUI_MESSAGE_SEARCH_LIST_LINE_EDIT));
@@ -242,7 +253,7 @@
}
// Clear the previous content if any.
- mSearchListModel.clearSearchResults();
+ mMsgListModel.clear();
}
@@ -344,10 +355,7 @@
mStartParam = startParam;
// Update the model with new parameters.
- NmMessageListModel &messageListModel =
- mUiEngine.messageListModel(startParam->mailboxId(),
- startParam->folderId());
- mSearchListModel.setSourceModel(&messageListModel);
+ mUiEngine.messageListModelForSearch(startParam->mailboxId());
refreshList();
// Refresh the mailbox name.
@@ -363,6 +371,29 @@
/*!
+ Called when text is changed in the edit field. If there is no search term
+ in the edit field, the search button is dimmed and disabled. If the field
+ contains text, the button can be clicked.
+
+ \param text The text in the field after the modification.
+*/
+void NmMessageSearchListView::criteriaChanged(QString text)
+{
+ NMLOG(QString("NmMessageSearchListView::criteriaChanged %1").arg(text));
+
+ // Check if the button should be disabled/enabled.
+ bool enabled = mPushButton->isEnabled();
+
+ if (!enabled && !text.isEmpty()) {
+ mPushButton->setEnabled(true);
+ }
+ else if (enabled && text.isEmpty()) {
+ mPushButton->setEnabled(false);
+ }
+}
+
+
+/*!
Displays the item context menu. This method gets called if an item on the
list is long pressed.
*/
@@ -371,11 +402,11 @@
{
// Store long press item for later use with response.
mLongPressedItem =
- mSearchListModel.data(listViewItem->modelIndex(),
- Qt::DisplayRole).value<NmMessageListModelItem*>();
+ mMsgListModel.data(listViewItem->modelIndex(),
+ Qt::DisplayRole).value<NmMessageListModelItem*>();
- if (mItemContextMenu && mLongPressedItem && mLongPressedItem->itemType() ==
- NmMessageListModelItem::NmMessageItemMessage) {
+ if (mItemContextMenu && mLongPressedItem &&
+ mLongPressedItem->itemType() == NmMessageListModelItem::NmMessageItemMessage) {
// Clear the previous menu actions.
mItemContextMenu->clearActions();
NmUiExtensionManager &extMngr = mApplication.extManager();
@@ -385,15 +416,17 @@
NmMessageEnvelope *envelope = mLongPressedItem->envelopePtr();
if (envelope){
- NmActionRequest request(this, NmActionContextMenu, NmActionContextViewMessageList,
- NmActionContextDataMessage, mStartParam->mailboxId(), mStartParam->folderId(),
+ NmActionRequest request(this, NmActionContextMenu,
+ NmActionContextViewMessageList, NmActionContextDataMessage,
+ mStartParam->mailboxId(), mStartParam->folderId(),
envelope->messageId(),QVariant::fromValue(envelope));
extMngr.getActions(request, list);
}
else{
- NmActionRequest request(this, NmActionContextMenu, NmActionContextViewMessageList,
- NmActionContextDataMessage, mStartParam->mailboxId(), mStartParam->folderId(),
+ NmActionRequest request(this, NmActionContextMenu,
+ NmActionContextViewMessageList, NmActionContextDataMessage,
+ mStartParam->mailboxId(), mStartParam->folderId(),
envelope->messageId());
extMngr.getActions(request, list);
@@ -402,37 +435,12 @@
for (int i(0); i < list.count(); ++i) {
mItemContextMenu->addAction(list[i]);
}
+
mItemContextMenu->setPreferredPos(coords);
- mItemContextMenu->open(this, SLOT(contextButton(NmActionResponse&)));
+ mItemContextMenu->open();
}
}
-/*!
- Slot. Signaled when menu option is selected
-*/
-void NmMessageSearchListView::contextButton(NmActionResponse &result)
-{
-// Handle context menu commands here.
- if (result.menuType() == NmActionContextMenu){
- switch (result.responseCommand()) {
- case NmActionResponseCommandOpen: {
- if (mLongPressedItem){
- NmUiStartParam *startParam = new NmUiStartParam(NmUiViewMessageViewer,
- mStartParam->mailboxId(), mStartParam->folderId(),
- mLongPressedItem->envelope().messageId());
-
- mApplication.enterNmUiView(startParam);
- mLongPressedItem = NULL;
- }
-
- break;
- }
- default: {
- break;
- }
- }
- }
-}
/*!
Stores the given index and forwards the call to handleSelection(). This
@@ -446,24 +454,6 @@
QMetaObject::invokeMethod(this, "handleSelection", Qt::QueuedConnection);
}
-/*!
- Called when text is changed in the edit field
-
- \param text new text entered in the field
- */
-void NmMessageSearchListView::criteriaChanged(QString text)
-{
- NMLOG(QString("NmMessageSearchListView::criteriaChanged %1").arg(text));
-
- // Check when button should be disabled/enabled
- bool enabled = mPushButton->isEnabled();
- if (!enabled && !text.isEmpty()) {
- mPushButton->setEnabled(true);
- }
- else if (enabled && text.isEmpty()) {
- mPushButton->setEnabled(false);
- }
-}
/*!
If the selected item is a message, will open the message.
@@ -471,7 +461,7 @@
void NmMessageSearchListView::handleSelection()
{
// Do expand/collapse for title divider items
- NmMessageListModelItem* modelItem = mSearchListModel.data(
+ NmMessageListModelItem* modelItem = mMsgListModel.data(
mActivatedIndex, Qt::DisplayRole).value<NmMessageListModelItem*>();
if (modelItem &&
@@ -526,13 +516,29 @@
/*!
This method gets called when an item is removed from the list. If the list
- contains no items, "no messages" label is displayed.
+ contains no items, the info label (if visible) is hidden and the "no
+ messages" label is displayed. Otherwise, only the result count in the info
+ label is updated.
*/
void NmMessageSearchListView::itemsRemoved()
{
- if (mSearchListModel.searchResultCount() == 0) {
+ const int itemCount = mMsgListModel.rowCount();
+
+ if (itemCount == 0) {
+ if (mInfoLabel && mInfoLabel->isVisible()) {
+ // Hide the info label.
+ mInfoLabel->hide();
+ }
+
+ // Display the "no messages" label.
noMessagesLabelVisibility(true);
}
+ else if (mInfoLabel && mInfoLabel->isVisible()) {
+ // Update the search result count in the info label.
+ QString resultsString(hbTrId("txt_mail_list_search_results"));
+ resultsString.arg(itemCount);
+ mInfoLabel->setPlainText(resultsString);
+ }
}
@@ -543,21 +549,17 @@
{
if (mMessageListWidget) {
// Set the model.
- NmMessageListModel &messageListModel =
- mUiEngine.messageListModel(mStartParam->mailboxId(),
- mStartParam->folderId());
- mSearchListModel.setSourceModel(&messageListModel);
mMessageListWidget->setModel(
- static_cast<QSortFilterProxyModel*>(&mSearchListModel));
+ static_cast<QStandardItemModel*>(&mMsgListModel));
// Connect the signals.
- connect(&mSearchListModel, SIGNAL(rowsInserted(const QModelIndex&, int, int)),
+ connect(&mMsgListModel, SIGNAL(rowsInserted(const QModelIndex&, int, int)),
this, SLOT(itemsAdded(const QModelIndex&, int, int)), Qt::UniqueConnection);
- connect(&mSearchListModel, SIGNAL(rowsRemoved(const QModelIndex&, int, int)),
+ connect(&mMsgListModel, SIGNAL(rowsRemoved(const QModelIndex&, int, int)),
this, SLOT(itemsRemoved()), Qt::UniqueConnection);
- connect(&messageListModel, SIGNAL(setNewParam(NmUiStartParam*)),
+ connect(&mMsgListModel, SIGNAL(setNewParam(NmUiStartParam*)),
this, SLOT(reloadViewContents(NmUiStartParam*)), Qt::UniqueConnection);
}
@@ -585,7 +587,7 @@
mSearchInProgress = true;
// Clear previous results if any.
- mSearchListModel.clearSearchResults();
+ mMsgListModel.clear();
connect(&mUiEngine, SIGNAL(searchComplete()),
this, SLOT(handleSearchComplete()), Qt::UniqueConnection);
@@ -632,15 +634,7 @@
mPushButton->setIcon(HbIcon("qtg_mono_search"));
}
- const int resultCount = mSearchListModel.searchResultCount();
-
- if (resultCount == 1) {
- // For some reason when the result count is only 1, the search list
- // will not display the found message. Until the underlying reason for
- // this bug is found, let us use the following solution to fix this
- // issue.
- refreshList();
- }
+ const int resultCount = mMsgListModel.rowCount();
if (resultCount) {
if (mInfoLabel) {
--- a/emailuis/nmailui/src/nmrecipientfield.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmrecipientfield.cpp Fri May 14 04:41:45 2010 +0300
@@ -20,7 +20,7 @@
static const double Un = 6.66;
static const double Margin = 2 * Un;
static const int MaxRows = 10000;
-static const double LabelFieldWidth = 10 * Un + Un;
+static const double LabelFieldWidth = 12.5 * Un;
static const double ButtonWidth = 9.5 * Un;
static const double FieldHeight = 5 * Un;
static const char *ContactsServiceName = "com.nokia.services.phonebookservices";
@@ -28,26 +28,6 @@
static const char *ContactsOperationName = "fetch(QString,QString,QString)";
/*!
- Constructor
-*/
-NmRecipientField::NmRecipientField(
- HbLabel *label,
- NmRecipientLineEdit *edit,
- HbPushButton *button,
- QGraphicsItem *parent):
- HbWidget(parent),
- mLabel(label),
- mRecipientsEditor(edit),
- mLaunchContactsPickerButton(button),
- mOwned(false)
-{
- mLaunchContactsPickerButton->setIcon(NmIcons::getIcon(NmIcons::NmIconContacts));
- createConnections();
-}
-
-
-/*!
- Constructor for 'Cc:' and 'Bcc:' fields. This can be removed when groupBox content
widget is created using AD/docml
*/
NmRecipientField::NmRecipientField(const QString &labelString, QGraphicsItem *parent):
@@ -57,23 +37,25 @@
mLaunchContactsPickerButton(NULL),
mOwned(true)
{
- mLayoutHorizontal = new QGraphicsLinearLayout(Qt::Horizontal, this);
+ //construct default ui.
+ mLayoutHorizontal = new QGraphicsLinearLayout(Qt::Horizontal);
mLabel = new HbLabel(labelString);
if (mLabel) {
mLayoutHorizontal->addItem(mLabel);
mLabel->setPreferredWidth(LabelFieldWidth);
mLabel->setFontSpec(HbFontSpec(HbFontSpec::Secondary));
- mLabel->setAlignment(Qt::AlignTop);
}
mRecipientsEditor = new NmRecipientLineEdit();
if (mRecipientsEditor) {
mLayoutHorizontal->addItem(mRecipientsEditor);
mRecipientsEditor->setMaxRows(MaxRows);
- mRecipientsEditor->setPreferredHeight(FieldHeight);
+ mRecipientsEditor->setFontSpec(HbFontSpec(HbFontSpec::Secondary));
+ mRecipientsEditor->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
mRecipientsEditor->setMinimumHeight(FieldHeight);
- mRecipientsEditor->setFontSpec(HbFontSpec(HbFontSpec::Secondary));
+ mRecipientsEditor->setPreferredHeight(FieldHeight);
+ mRecipientsEditor->setMaximumHeight(FieldHeight);
}
mLaunchContactsPickerButton = new HbPushButton();
@@ -92,10 +74,15 @@
mLayoutHorizontal->setItemSpacing(1, Un);
// Set the spacing between the label and the line edit to 0.0
mLayoutHorizontal->setItemSpacing(0, 0.0);
+
+ this->setLayout(mLayoutHorizontal);
createConnections();
}
+/*!
+ Creates connections for this class items
+*/
void NmRecipientField::createConnections()
{
connect(mRecipientsEditor, SIGNAL(textChanged(const QString &)),
--- a/emailuis/nmailui/src/nmsendserviceinterface.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmsendserviceinterface.cpp Fri May 14 04:41:45 2010 +0300
@@ -54,36 +54,23 @@
*/
inline bool extractData(const QVariant &data)
{
- QVariant::Type dataType = data.type();
bool success = false;
- switch (dataType) {
- case QVariant::String: {
- // The given data contains a single attachment.
- QString attachment = data.toString();
- mAttachmentList = new QStringList(attachment);
- success = true;
- break;
- }
- case QVariant::StringList: {
- // The given data contains a list of attachments.
- QStringList attachmentList = data.toStringList();
- mAttachmentList = new QStringList(attachmentList);
- success = true;
- break;
- }
- case QVariant::Map: {
- // The given data may contain a mail subject and recipient lists.
- QMap<QString, QVariant> map = data.toMap();
- success = processMap(map);
- break;
- }
- default: {
- // Data type not supported!
- NMLOG("NmStartParamDataHelper::extractData(): Data type not supported!");
- break;
- }
- } // switch ()
+ if (data.canConvert(QVariant::Map)) {
+ // The given data may contain a mail subject and recipient lists.
+ QMap<QString, QVariant> map = data.toMap();
+ success = processMap(map);
+ }
+ else if (data.canConvert(QVariant::StringList)) {
+ QStringList attachmentList = data.toStringList();
+ mAttachmentList = new QStringList(attachmentList);
+ success = true;
+ }
+ else {
+ // Data type not supported!
+ NMLOG(QString("NmStartParamDataHelper::extractData(): Data type %1 not supported!").
+ arg(data.type()));
+ }
// Determine the editor start mode.
if (mToAddresses || mCcAddresses || mBccAddresses) {
@@ -289,7 +276,7 @@
*/
void NmSendServiceInterface::selectionDialogClosed(NmId &mailboxId)
{
- NMLOG("NmSendServiceInterface::selectionDialogClosed");
+ NMLOG(QString("NmSendServiceInterface::selectionDialogClosed %1").arg(mailboxId.id()));
if (mailboxId.id()) { // mailbox selected
launchEditorView(mailboxId);
}
@@ -331,35 +318,23 @@
NmId mailboxId(0);
mAsyncReqId = setCurrentRequestAsync();
-
+
if (!validData) {
// Failed to extract the data!
NMLOG("NmSendServiceInterface::send(): Failed to process the given data!");
cancelService();
}
else if (count == 0) {
- // No mailboxes.
- if (mainWindow) {
- mainWindow->hide();
- }
-
- // Hide the app if it not embedded
- if (!XQServiceUtil::isEmbedded()) {
- XQServiceUtil::toBackground(true);
- }
-
HbDeviceMessageBox note(hbTrId("txt_mail_dialog_no_mailboxes_defined"),
HbMessageBox::MessageTypeInformation);
note.setTimeout(HbMessageBox::NoTimeout);
- note.exec();
- if (mainWindow) {
- mainWindow->show();
- }
+ note.show();
cancelService();
}
else { // count > 0
// Make sure the NMail application is in the foreground.
XQServiceUtil::toBackground(false);
+ mainWindow->show();
mStartParam = new NmUiStartParam(
NmUiViewMessageEditor,
@@ -401,24 +376,25 @@
Called when mailbox id is know and editor can be opened
\param mailboxId mailbox using in editor
*/
-void NmSendServiceInterface::launchEditorView(NmId mailboxId)
+void NmSendServiceInterface::launchEditorView(NmId mailboxId)
{
NMLOG(QString("NmSendServiceInterface::launchEditorView %1").arg(mailboxId.id()));
// Make the previous view visible again.
if (mCurrentView) {
mCurrentView->show();
- mCurrentView = NULL;
+ mCurrentView = NULL;
}
-
+
if (mStartParam) {
mStartParam->setMailboxId(mailboxId);
mApplication->enterNmUiView(mStartParam);
mStartParam = NULL; // ownership passed
}
completeRequest(mAsyncReqId, 1);
+ mAsyncReqId = 0;
}
-void NmSendServiceInterface::cancelService()
+void NmSendServiceInterface::cancelService()
{
NMLOG("NmSendServiceInterface::cancelService");
delete mStartParam;
@@ -430,6 +406,7 @@
}
completeRequest(mAsyncReqId, 0);
+ mAsyncReqId = 0;
// If started as service, the application must be closed now.
if (XQServiceUtil::isService()) {
--- a/emailuis/nmailui/src/nmutilities.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmutilities.cpp Fri May 14 04:41:45 2010 +0300
@@ -271,10 +271,16 @@
// nothing to do in successfull or cancelled case
if(event.mCompletionCode != NmNoError && event.mCompletionCode != NmCancelError) {
if(event.mOperationType == Synch && event.mCompletionCode == NmAuthenticationError) {
- openSettings = displayQuestionNote(hbTrId("txt_mail_dialog_address_or_password_incorrect"));
+/*
+ * Commented out temporarily, because of wk18 HbDialog API deprecation.
+ * openSettings = displayQuestionNote(hbTrId("txt_mail_dialog_address_or_password_incorrect"));
+ */
}
if(event.mOperationType == Synch && event.mCompletionCode == NmServerConnectionError) {
- openSettings = displayQuestionNote(hbTrId("txt_mail_dialog_server_settings_incorrect"));
+/*
+ * Commented out temporarily, because of wk18 HbDialog API deprecation.
+ * openSettings = displayQuestionNote(hbTrId("txt_mail_dialog_server_settings_incorrect"));
+ */
}
// following applies to all operation/event types
if(event.mCompletionCode == NmConnectionError) {
@@ -285,27 +291,18 @@
}
/*!
- displays a note with Yes/No buttons. Note has no timeout, i.e. it has to be dismissed manually
- returns boolean whether primaryaction was taken (Left button ("Yes") pressed)
+ Displays a note with Yes/No buttons. Note has no timeout, i.e. it has to be dismissed manually.
+ Returns pointer to dialog so that caller can take ownership and handle deletion.
+ Parameter 'receiver' is the object and 'member' is the slot where user selection is passed.
*/
-bool NmUtilities::displayQuestionNote(QString noteText)
+HbMessageBox* NmUtilities::displayQuestionNote(
+ QString noteText, QObject* receiver, const char* member)
{
- HbMessageBox::warning(noteText);
- return true;
- /*
- * Commented out because of exec() deprecation. Will be fixed later...
- *
- bool ret(false);
HbMessageBox *messageBox = new HbMessageBox(HbMessageBox::MessageTypeQuestion);
messageBox->setText(noteText);
- messageBox->setTimeout(HbMessageBox::NoTimeout); // note has to be dismissed manually
- HbAction *action = messageBox->exec();
- if(action == messageBox->primaryAction()) {
- ret=true; // primary/left button was pressed
- }
- delete messageBox;
- return ret;
- */
+ messageBox->setTimeout(HbMessageBox::NoTimeout); // Note has to be dismissed manually
+ messageBox->open(receiver, member);
+ return messageBox;
}
/*!
--- a/emailuis/nmailui/src/nmviewerserviceinterface.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmviewerserviceinterface.cpp Fri May 14 04:41:45 2010 +0300
@@ -71,6 +71,8 @@
if (message) {
// bring application to foreground
XQServiceUtil::toBackground(false);
+ HbMainWindow *mainWindow = mApplication->mainWindow();
+ mainWindow->show();
// Launch the message list view.
NmUiStartParam *startParam =
--- a/emailuis/nmailui/src/nmviewerview.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailui/src/nmviewerview.cpp Fri May 14 04:41:45 2010 +0300
@@ -47,7 +47,7 @@
NmAttachmentManager &attaManager,
bool toolbarEnabled,
QGraphicsItem *parent)
-:NmBaseView(startParam, parent),
+:NmBaseView(startParam, application, parent),
mApplication(application),
mUiEngine(uiEngine),
mMainWindow(mainWindow),
@@ -71,9 +71,7 @@
mAttaIndexUnderFetch(NmNotFoundError),
mAttaWidget(NULL),
mViewReady(false),
-mWaitNoteCancelled(false),
-mOkAction(NULL),
-mCancelAction(NULL)
+mWaitNoteCancelled(false)
{
// Create documentloader
mDocumentLoader = new NmUiDocumentLoader(mMainWindow);
@@ -107,10 +105,6 @@
// remove view from osbserving atta manager events
mAttaManager.clearObserver();
mAttaManager.cancelFetch();
- delete mOkAction;
- mOkAction = NULL;
- delete mCancelAction;
- mCancelAction = NULL;
}
/*!
@@ -330,8 +324,7 @@
*/
void NmViewerView::messageFetched(int result)
{
- delete mWaitDialog;
- mWaitDialog = NULL;
+ mWaitDialog->close();
if (result == NmNoError && mMessageFetchingOperation) {
if (mMessage) {
@@ -367,7 +360,7 @@
mMessageFetchingOperation->cancelOperation();
}
mWaitNoteCancelled = true;
- QMetaObject::invokeMethod(&mApplication, "popView", Qt::QueuedConnection);
+ QMetaObject::invokeMethod(&mApplication, "prepareForPopView", Qt::QueuedConnection);
}
}
@@ -1024,16 +1017,9 @@
case NmActionResponseCommandDeleteMail: {
HbMessageBox *messageBox = new HbMessageBox(HbMessageBox::MessageTypeQuestion);
messageBox->setText(hbTrId("txt_mail_dialog_delete_mail"));
- messageBox->setTimeout(HbMessageBox::NoTimeout);
-
- mOkAction = new HbAction(tr("Ok"),messageBox);
- mCancelAction = new HbAction(tr("Cancel"),messageBox);
- messageBox->addAction(mOkAction);
- messageBox->addAction(mCancelAction);
-
- // Read user selection
+ messageBox->setAttribute(Qt::WA_DeleteOnClose);
messageBox->open(this, SLOT(deleteButton(HbAction*)));
- }
+ }
break;
default:
break;
@@ -1057,28 +1043,27 @@
*/
void NmViewerView::deleteButton(HbAction* result)
{
- if (result == mOkAction ) {
+ HbMessageBox *dlg = static_cast<HbMessageBox*>(sender());
+ if(result == dlg->actions().at(0))
+ {
QList<NmId> messageList;
messageList.append(mStartParam->messageId());
-
+
int err = mUiEngine.deleteMessages(mStartParam->mailboxId(),
mStartParam->folderId(),
messageList);
-
+
messageList.clear();
if (NmNoError != err) {
// Failed to delete the messages!
NMLOG(QString("NmViewerView::handleActionCommand(): failed err=%1").arg(err));
}
}
-
- mCancelAction = NULL;
- mOkAction = NULL;
}
/*!
- Slot. Signaled when attachment fetch progress changes
+ This is called when attachment fetch progress changes
*/
void NmViewerView::progressChanged(int value)
{
@@ -1091,13 +1076,14 @@
}
/*!
- Slot. Signaled when attachment fetch is completed
+ This is called when attachment fetch is completed
*/
void NmViewerView::fetchCompleted(int result)
{
if (mAttaWidget && mAttaIndexUnderFetch != NmNotFoundError) {
if (result == NmNoError) {
progressValueChanged(mAttaIndexUnderFetch, 100);
+ openAttachment(mAttaIndexUnderFetch);
}
else {
mAttaWidget->hideProgressBar(mAttaIndexUnderFetch);
@@ -1116,7 +1102,7 @@
&& (mStartParam->mailboxId()== mailboxId)
&& (mStartParam->folderId()== folderId)
&& (mStartParam->messageId()== messageId)){
- mApplication.popView();
+ mApplication.prepareForPopView();
}
}
--- a/emailuis/nmailuiengine/bwins/nmailuiengineu.def Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/bwins/nmailuiengineu.def Fri May 14 04:41:45 2010 +0300
@@ -1,331 +1,322 @@
EXPORTS
- ?insertMessageIntoModel@NmMessageListModel@@AAEXPAVNmMessageEnvelope@@H_N@Z @ 1 NONAME ; void NmMessageListModel::insertMessageIntoModel(class NmMessageEnvelope *, int, bool)
- ??0NmUiEngine@@AAE@XZ @ 2 NONAME ; NmUiEngine::NmUiEngine(void)
- ?insertDividerIntoModel@NmMessageListModel@@AAEXPAVNmMessageEnvelope@@H@Z @ 3 NONAME ; void NmMessageListModel::insertDividerIntoModel(class NmMessageEnvelope *, int)
- ?goOnline@NmUiEngine@@QAEHABVNmId@@@Z @ 4 NONAME ; int NmUiEngine::goOnline(class NmId const &)
- ??0NmStoreEnvelopesOperation@@QAE@XZ @ 5 NONAME ; NmStoreEnvelopesOperation::NmStoreEnvelopesOperation(void)
- ?currentMailboxId@NmMessageListModel@@QAE?AVNmId@@XZ @ 6 NONAME ; class NmId NmMessageListModel::currentMailboxId(void)
- ?folderById@NmDataManager@@QAEPAVNmFolderMetaData@@ABVNmId@@0@Z @ 7 NONAME ; class NmFolderMetaData * NmDataManager::folderById(class NmId const &, class NmId const &)
- ?removeAttachment@NmBaseClientPlugin@@QAEXXZ @ 8 NONAME ; void NmBaseClientPlugin::removeAttachment(void)
- ?completeOperationPart@NmAddAttachmentsOperation@@QAEXABVQString@@ABVNmId@@H@Z @ 9 NONAME ; void NmAddAttachmentsOperation::completeOperationPart(class QString const &, class NmId const &, int)
- ?data@NmMessageSearchListModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 10 NONAME ; class QVariant NmMessageSearchListModel::data(class QModelIndex const &, int) const
- ?qt_metacast@NmMessageSearchListModel@@UAEPAXPBD@Z @ 11 NONAME ; void * NmMessageSearchListModel::qt_metacast(char const *)
- ?releaseInstance@NmUiEngine@@SAXAAPAV1@@Z @ 12 NONAME ; void NmUiEngine::releaseInstance(class NmUiEngine * &)
- ?id@NmMailboxMetaData@@QBE?AVNmId@@XZ @ 13 NONAME ; class NmId NmMailboxMetaData::id(void) const
- ??1NmMessageCreationOperation@@MAE@XZ @ 14 NONAME ; NmMessageCreationOperation::~NmMessageCreationOperation(void)
- ?qt_metacast@NmUiEngine@@UAEPAXPBD@Z @ 15 NONAME ; void * NmUiEngine::qt_metacast(char const *)
- ?setName@NmMailboxMetaData@@QAEXABVQString@@@Z @ 16 NONAME ; void NmMailboxMetaData::setName(class QString const &)
- ?staticMetaObject@NmStoreEnvelopesOperation@@2UQMetaObject@@B @ 17 NONAME ; struct QMetaObject const NmStoreEnvelopesOperation::staticMetaObject
- ?handleMessageEvent@NmUiEngine@@AAEXW4NmMessageEvent@@ABVNmId@@ABV?$QList@VNmId@@@@1@Z @ 18 NONAME ; void NmUiEngine::handleMessageEvent(enum NmMessageEvent, class NmId const &, class QList<class NmId> const &, class NmId const &)
- ?tr@NmMessageSearchListModel@@SA?AVQString@@PBD0@Z @ 19 NONAME ; class QString NmMessageSearchListModel::tr(char const *, char const *)
- ?isRunning@NmOperation@@QBE_NXZ @ 20 NONAME ; bool NmOperation::isRunning(void) const
- ?setPriorityLow@NmBaseClientPlugin@@QAEXXZ @ 21 NONAME ; void NmBaseClientPlugin::setPriorityLow(void)
- ?tr@NmMessageCreationOperation@@SA?AVQString@@PBD0H@Z @ 22 NONAME ; class QString NmMessageCreationOperation::tr(char const *, char const *, int)
- ?openMessage@NmBaseClientPlugin@@QAEXXZ @ 23 NONAME ; void NmBaseClientPlugin::openMessage(void)
- ?getStaticMetaObject@NmMailboxListModel@@SAABUQMetaObject@@XZ @ 24 NONAME ; struct QMetaObject const & NmMailboxListModel::getStaticMetaObject(void)
- ?envelope@NmMessageListModelItem@@QBEABVNmMessageEnvelope@@XZ @ 25 NONAME ; class NmMessageEnvelope const & NmMessageListModelItem::envelope(void) const
- ?qt_metacall@NmMailboxListModel@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 26 NONAME ; int NmMailboxListModel::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?listMailboxIds@NmDataManager@@QAEXAAV?$QList@VNmId@@@@@Z @ 27 NONAME ; void NmDataManager::listMailboxIds(class QList<class NmId> &)
- ??0NmDataManager@@QAE@XZ @ 28 NONAME ; NmDataManager::NmDataManager(void)
- ?trUtf8@NmAddAttachmentsOperation@@SA?AVQString@@PBD0H@Z @ 29 NONAME ; class QString NmAddAttachmentsOperation::trUtf8(char const *, char const *, int)
- ?refresh@NmMailboxListModel@@QAEXAAV?$QList@PAVNmMailbox@@@@@Z @ 30 NONAME ; void NmMailboxListModel::refresh(class QList<class NmMailbox *> &)
- ?getStaticMetaObject@NmDataManager@@SAABUQMetaObject@@XZ @ 31 NONAME ; struct QMetaObject const & NmDataManager::getStaticMetaObject(void)
- ??1NmMessageListModel@@UAE@XZ @ 32 NONAME ; NmMessageListModel::~NmMessageListModel(void)
- ?handleCompletedSendOperation@NmUiEngine@@QAEXXZ @ 33 NONAME ; void NmUiEngine::handleCompletedSendOperation(void)
- ??_ENmFolderListModel@@UAE@I@Z @ 34 NONAME ; NmFolderListModel::~NmFolderListModel(unsigned int)
- ?contentToMessagePart@NmDataManager@@QAEHABVNmId@@00AAVNmMessagePart@@@Z @ 35 NONAME ; int NmDataManager::contentToMessagePart(class NmId const &, class NmId const &, class NmId const &, class NmMessagePart &)
- ?setExpanded@NmMessageListModelItem@@QAEX_N@Z @ 36 NONAME ; void NmMessageListModelItem::setExpanded(bool)
- ?qt_metacall@NmMessageSearchListModel@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 37 NONAME ; int NmMessageSearchListModel::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?staticMetaObject@NmCheckOutboxOperation@@2UQMetaObject@@B @ 38 NONAME ; struct QMetaObject const NmCheckOutboxOperation::staticMetaObject
- ?getStaticMetaObject@NmStoreEnvelopesOperation@@SAABUQMetaObject@@XZ @ 39 NONAME ; struct QMetaObject const & NmStoreEnvelopesOperation::getStaticMetaObject(void)
- ?setPriorityHigh@NmBaseClientPlugin@@QAEXXZ @ 40 NONAME ; void NmBaseClientPlugin::setPriorityHigh(void)
- ??0NmAddAttachmentsOperation@@QAE@XZ @ 41 NONAME ; NmAddAttachmentsOperation::NmAddAttachmentsOperation(void)
- ?deleteMessage@NmBaseClientPlugin@@QAEXXZ @ 42 NONAME ; void NmBaseClientPlugin::deleteMessage(void)
- ?getStaticMetaObject@NmAddAttachmentsOperation@@SAABUQMetaObject@@XZ @ 43 NONAME ; struct QMetaObject const & NmAddAttachmentsOperation::getStaticMetaObject(void)
- ?standardFolderId@NmUiEngine@@QAE?AVNmId@@ABV2@W4NmFolderType@@@Z @ 44 NONAME ; class NmId NmUiEngine::standardFolderId(class NmId const &, enum NmFolderType)
- ?settings@NmBaseClientPlugin@@QAEXXZ @ 45 NONAME ; void NmBaseClientPlugin::settings(void)
- ?staticMetaObject@NmUiEngine@@2UQMetaObject@@B @ 46 NONAME ; struct QMetaObject const NmUiEngine::staticMetaObject
- ?mailboxDeleted@NmUiEngine@@IAEXABVNmId@@@Z @ 47 NONAME ; void NmUiEngine::mailboxDeleted(class NmId const &)
- ?getIcon@NmIcons@@SAAAVHbIcon@@W4Icon@1@@Z @ 48 NONAME ; class HbIcon & NmIcons::getIcon(enum NmIcons::Icon)
- ?itemType@NmMessageListModelItem@@QBE?AW4NmMessageItemType@1@XZ @ 49 NONAME ; enum NmMessageListModelItem::NmMessageItemType NmMessageListModelItem::itemType(void) const
- ?mInstance@NmDataPluginFactory@@0PAV1@A @ 50 NONAME ; class NmDataPluginFactory * NmDataPluginFactory::mInstance
- ?data@NmFolderListModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 51 NONAME ; class QVariant NmFolderListModel::data(class QModelIndex const &, int) const
- ?setName@NmFolderMetaData@@QAEXABVQString@@@Z @ 52 NONAME ; void NmFolderMetaData::setName(class QString const &)
- ?mReferenceCount@NmUiEngine@@0HA @ 53 NONAME ; int NmUiEngine::mReferenceCount
- ?listFolders@NmDataManager@@QAEXVNmId@@AAV?$QList@PAVNmFolder@@@@@Z @ 54 NONAME ; void NmDataManager::listFolders(class NmId, class QList<class NmFolder *> &)
- ?cancelSearch@NmUiEngine@@QAEHABVNmId@@@Z @ 55 NONAME ; int NmUiEngine::cancelSearch(class NmId const &)
- ?data@NmMailboxListModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 56 NONAME ; class QVariant NmMailboxListModel::data(class QModelIndex const &, int) const
- ?metaObject@NmMessageCreationOperation@@UBEPBUQMetaObject@@XZ @ 57 NONAME ; struct QMetaObject const * NmMessageCreationOperation::metaObject(void) const
- ?handlePreliminaryOperationFinished@NmOperation@@MAEXXZ @ 58 NONAME ; void NmOperation::handlePreliminaryOperationFinished(void)
- ?releaseInstance@NmDataPluginFactory@@SAXAAPAV1@@Z @ 59 NONAME ; void NmDataPluginFactory::releaseInstance(class NmDataPluginFactory * &)
- ?createEditorViewCommands@NmBaseClientPlugin@@AAEXABVNmActionRequest@@AAV?$QList@PAVNmAction@@@@@Z @ 60 NONAME ; void NmBaseClientPlugin::createEditorViewCommands(class NmActionRequest const &, class QList<class NmAction *> &)
- ?operationCancelled@NmOperation@@IAEXXZ @ 61 NONAME ; void NmOperation::operationCancelled(void)
- ??0NmDataPluginFactory@@AAE@XZ @ 62 NONAME ; NmDataPluginFactory::NmDataPluginFactory(void)
- ?refresh@NmBaseClientPlugin@@QAEXXZ @ 63 NONAME ; void NmBaseClientPlugin::refresh(void)
- ??1NmFolderMetaData@@UAE@XZ @ 64 NONAME ; NmFolderMetaData::~NmFolderMetaData(void)
- ??1NmMessageSendingOperation@@MAE@XZ @ 65 NONAME ; NmMessageSendingOperation::~NmMessageSendingOperation(void)
- ?staticMetaObject@NmMessageSearchListModel@@2UQMetaObject@@B @ 66 NONAME ; struct QMetaObject const NmMessageSearchListModel::staticMetaObject
- ?name@NmFolderMetaData@@QBE?AVQString@@XZ @ 67 NONAME ; class QString NmFolderMetaData::name(void) const
- ??_ENmMessageCreationOperation@@UAE@I@Z @ 68 NONAME ; NmMessageCreationOperation::~NmMessageCreationOperation(unsigned int)
- ?sendMail@NmBaseClientPlugin@@QAEXXZ @ 69 NONAME ; void NmBaseClientPlugin::sendMail(void)
+ ?id@NmMailboxMetaData@@QBE?AVNmId@@XZ @ 1 NONAME ; class NmId NmMailboxMetaData::id(void) const
+ ??1NmUiEngine@@EAE@XZ @ 2 NONAME ; NmUiEngine::~NmUiEngine(void)
+ ?staticMetaObject@NmMessageCreationOperation@@2UQMetaObject@@B @ 3 NONAME ; struct QMetaObject const NmMessageCreationOperation::staticMetaObject
+ ?searchComplete@NmUiEngine@@IAEXXZ @ 4 NONAME ; void NmUiEngine::searchComplete(void)
+ ?mReferenceCount@NmDataPluginFactory@@0HA @ 5 NONAME ; int NmDataPluginFactory::mReferenceCount
+ ?sendOperationCompleted@NmUiEngine@@IAEXXZ @ 6 NONAME ; void NmUiEngine::sendOperationCompleted(void)
+ ?name@NmFolderMetaData@@QBE?AVQString@@XZ @ 7 NONAME ; class QString NmFolderMetaData::name(void) const
+ ?folderTypeById@NmUiEngine@@QAE?AW4NmFolderType@@VNmId@@0@Z @ 8 NONAME ; enum NmFolderType NmUiEngine::folderTypeById(class NmId, class NmId)
+ ?envelope@NmMessageListModelItem@@QBEABVNmMessageEnvelope@@XZ @ 9 NONAME ; class NmMessageEnvelope const & NmMessageListModelItem::envelope(void) const
+ ?setPriorityNormal@NmBaseClientPlugin@@QAEXXZ @ 10 NONAME ; void NmBaseClientPlugin::setPriorityNormal(void)
+ ?removeMessageFromModel@NmMessageListModel@@AAEXABVNmId@@@Z @ 11 NONAME ; void NmMessageListModel::removeMessageFromModel(class NmId const &)
+ ??1NmDataManager@@UAE@XZ @ 12 NONAME ; NmDataManager::~NmDataManager(void)
+ ?dividersActive@NmMessageListModel@@QAE_NXZ @ 13 NONAME ; bool NmMessageListModel::dividersActive(void)
+ ?createForwardMessage@NmUiEngine@@QAE?AV?$QPointer@VNmMessageCreationOperation@@@@ABVNmId@@0@Z @ 14 NONAME ; class QPointer<class NmMessageCreationOperation> NmUiEngine::createForwardMessage(class NmId const &, class NmId const &)
+ ?tr@NmMessageCreationOperation@@SA?AVQString@@PBD0@Z @ 15 NONAME ; class QString NmMessageCreationOperation::tr(char const *, char const *)
+ ?getStaticMetaObject@NmMailboxListModel@@SAABUQMetaObject@@XZ @ 16 NONAME ; struct QMetaObject const & NmMailboxListModel::getStaticMetaObject(void)
+ ?getActions@NmBaseClientPlugin@@UAEXABVNmActionRequest@@AAV?$QList@PAVNmAction@@@@@Z @ 17 NONAME ; void NmBaseClientPlugin::getActions(class NmActionRequest const &, class QList<class NmAction *> &)
+ ??_ENmDataPluginFactory@@UAE@I@Z @ 18 NONAME ; NmDataPluginFactory::~NmDataPluginFactory(unsigned int)
+ ?metaObject@NmOperation@@UBEPBUQMetaObject@@XZ @ 19 NONAME ; struct QMetaObject const * NmOperation::metaObject(void) const
+ ?handleMailboxEvent@NmUiEngine@@AAEXW4NmMailboxEvent@@ABV?$QList@VNmId@@@@@Z @ 20 NONAME ; void NmUiEngine::handleMailboxEvent(enum NmMailboxEvent, class QList<class NmId> const &)
+ ?getStaticMetaObject@NmBaseClientPlugin@@SAABUQMetaObject@@XZ @ 21 NONAME ; struct QMetaObject const & NmBaseClientPlugin::getStaticMetaObject(void)
+ ?envelopePtr@NmMessageListModelItem@@QAEPAVNmMessageEnvelope@@XZ @ 22 NONAME ; class NmMessageEnvelope * NmMessageListModelItem::envelopePtr(void)
+ ??0NmOperation@@QAE@XZ @ 23 NONAME ; NmOperation::NmOperation(void)
+ ?forwardMail@NmBaseClientPlugin@@QAEXXZ @ 24 NONAME ; void NmBaseClientPlugin::forwardMail(void)
+ ??_ENmMailboxMetaData@@UAE@I@Z @ 25 NONAME ; NmMailboxMetaData::~NmMailboxMetaData(unsigned int)
+ ?getStaticMetaObject@NmOperation@@SAABUQMetaObject@@XZ @ 26 NONAME ; struct QMetaObject const & NmOperation::getStaticMetaObject(void)
+ ?completeOperation@NmOperation@@QAEXH@Z @ 27 NONAME ; void NmOperation::completeOperation(int)
+ ?markAsRead@NmBaseClientPlugin@@QAEXXZ @ 28 NONAME ; void NmBaseClientPlugin::markAsRead(void)
+ ?completeOperationPart@NmAddAttachmentsOperation@@QAEXABVQString@@ABVNmId@@H@Z @ 29 NONAME ; void NmAddAttachmentsOperation::completeOperationPart(class QString const &, class NmId const &, int)
+ ?tr@NmOperation@@SA?AVQString@@PBD0H@Z @ 30 NONAME ; class QString NmOperation::tr(char const *, char const *, int)
+ ?deleteOperation@NmOperation@@AAEXXZ @ 31 NONAME ; void NmOperation::deleteOperation(void)
+ ?insertMessageIntoModel@NmMessageListModel@@AAEXPAVNmMessageEnvelope@@H_N@Z @ 32 NONAME ; void NmMessageListModel::insertMessageIntoModel(class NmMessageEnvelope *, int, bool)
+ ?attach@NmBaseClientPlugin@@QAEXXZ @ 33 NONAME ; void NmBaseClientPlugin::attach(void)
+ ?deleteMessageFromViewerView@NmBaseClientPlugin@@QAEXXZ @ 34 NONAME ; void NmBaseClientPlugin::deleteMessageFromViewerView(void)
+ ??0NmDataPluginFactory@@AAE@XZ @ 35 NONAME ; NmDataPluginFactory::NmDataPluginFactory(void)
+ ?setEnvelopes@NmUiEngine@@QAE?AV?$QPointer@VNmStoreEnvelopesOperation@@@@ABVNmId@@0W4NmEnvelopeProperties@@ABV?$QList@PB$$CBVNmMessageEnvelope@@@@@Z @ 36 NONAME ; class QPointer<class NmStoreEnvelopesOperation> NmUiEngine::setEnvelopes(class NmId const &, class NmId const &, enum NmEnvelopeProperties, class QList<class NmMessageEnvelope const *> const &)
+ ?getStaticMetaObject@NmMessageListModel@@SAABUQMetaObject@@XZ @ 37 NONAME ; struct QMetaObject const & NmMessageListModel::getStaticMetaObject(void)
+ ?removeAttachment@NmBaseClientPlugin@@QAEXXZ @ 38 NONAME ; void NmBaseClientPlugin::removeAttachment(void)
+ ?messageListModel@NmUiEngine@@QAEAAVNmMessageListModel@@ABVNmId@@0@Z @ 39 NONAME ; class NmMessageListModel & NmUiEngine::messageListModel(class NmId const &, class NmId const &)
+ ?trUtf8@NmStoreEnvelopesOperation@@SA?AVQString@@PBD0H@Z @ 40 NONAME ; class QString NmStoreEnvelopesOperation::trUtf8(char const *, char const *, int)
+ ?refresh@NmMailboxListModel@@QAEXAAV?$QList@PAVNmMailbox@@@@@Z @ 41 NONAME ; void NmMailboxListModel::refresh(class QList<class NmMailbox *> &)
+ ??0NmMessageListModelItem@@QAE@XZ @ 42 NONAME ; NmMessageListModelItem::NmMessageListModelItem(void)
+ ??0NmDataManager@@QAE@XZ @ 43 NONAME ; NmDataManager::NmDataManager(void)
+ ?setItemType@NmMessageListModelItem@@QAEXW4NmMessageItemType@1@@Z @ 44 NONAME ; void NmMessageListModelItem::setItemType(enum NmMessageListModelItem::NmMessageItemType)
+ ?setEnvelope@NmMessageListModelItem@@QAEXPAVNmMessageEnvelope@@@Z @ 45 NONAME ; void NmMessageListModelItem::setEnvelope(class NmMessageEnvelope *)
+ ?qt_metacall@NmMessageListModel@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 46 NONAME ; int NmMessageListModel::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?updateMessageEnvelope@NmMessageListModel@@AAEXABVNmId@@00@Z @ 47 NONAME ; void NmMessageListModel::updateMessageEnvelope(class NmId const &, class NmId const &, class NmId const &)
+ ?tr@NmMailboxListModel@@SA?AVQString@@PBD0H@Z @ 48 NONAME ; class QString NmMailboxListModel::tr(char const *, char const *, int)
+ ??0NmStoreEnvelopesOperation@@QAE@XZ @ 49 NONAME ; NmStoreEnvelopesOperation::NmStoreEnvelopesOperation(void)
+ ?fetchMessage@NmUiEngine@@QAE?AV?$QPointer@VNmOperation@@@@ABVNmId@@00@Z @ 50 NONAME ; class QPointer<class NmOperation> NmUiEngine::fetchMessage(class NmId const &, class NmId const &, class NmId const &)
+ ?removeItem@NmMessageListModel@@AAEXHAAVNmMessageListModelItem@@@Z @ 51 NONAME ; void NmMessageListModel::removeItem(int, class NmMessageListModelItem &)
+ ?createMessageListCommands@NmBaseClientPlugin@@AAEXABVNmActionRequest@@AAV?$QList@PAVNmAction@@@@@Z @ 52 NONAME ; void NmBaseClientPlugin::createMessageListCommands(class NmActionRequest const &, class QList<class NmAction *> &)
+ ?qt_metacast@NmMailboxListModel@@UAEPAXPBD@Z @ 53 NONAME ; void * NmMailboxListModel::qt_metacast(char const *)
+ ??_ENmOperation@@UAE@I@Z @ 54 NONAME ; NmOperation::~NmOperation(unsigned int)
+ ??_ENmBaseClientPlugin@@UAE@I@Z @ 55 NONAME ; NmBaseClientPlugin::~NmBaseClientPlugin(unsigned int)
+ ??1NmOperation@@MAE@XZ @ 56 NONAME ; NmOperation::~NmOperation(void)
+ ??0NmFolderListModel@@QAE@AAVNmDataManager@@PAVQObject@@@Z @ 57 NONAME ; NmFolderListModel::NmFolderListModel(class NmDataManager &, class QObject *)
+ ?getStaticMetaObject@NmMessageCreationOperation@@SAABUQMetaObject@@XZ @ 58 NONAME ; struct QMetaObject const & NmMessageCreationOperation::getStaticMetaObject(void)
+ ?refresh@NmMessageListModel@@QAEXVNmId@@0ABV?$QList@PAVNmMessageEnvelope@@@@@Z @ 59 NONAME ; void NmMessageListModel::refresh(class NmId, class NmId, class QList<class NmMessageEnvelope *> const &)
+ ?message@NmDataManager@@QAEPAVNmMessage@@ABVNmId@@00@Z @ 60 NONAME ; class NmMessage * NmDataManager::message(class NmId const &, class NmId const &, class NmId const &)
+ ?data@NmFolderListModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 61 NONAME ; class QVariant NmFolderListModel::data(class QModelIndex const &, int) const
+ ?metaObject@NmMessageListModel@@UBEPBUQMetaObject@@XZ @ 62 NONAME ; struct QMetaObject const * NmMessageListModel::metaObject(void) const
+ ??1NmMessageListModel@@UAE@XZ @ 63 NONAME ; NmMessageListModel::~NmMessageListModel(void)
+ ?handlePreliminaryOperationFinished@NmOperation@@MAEXXZ @ 64 NONAME ; void NmOperation::handlePreliminaryOperationFinished(void)
+ ?rowCount@NmFolderListModel@@UBEHABVQModelIndex@@@Z @ 65 NONAME ; int NmFolderListModel::rowCount(class QModelIndex const &) const
+ ?syncState@NmUiEngine@@QAE?AW4NmSyncState@@ABVNmId@@@Z @ 66 NONAME ; enum NmSyncState NmUiEngine::syncState(class NmId const &)
+ ?isRunning@NmOperation@@QBE_NXZ @ 67 NONAME ; bool NmOperation::isRunning(void) const
+ ?tr@NmAddAttachmentsOperation@@SA?AVQString@@PBD0H@Z @ 68 NONAME ; class QString NmAddAttachmentsOperation::tr(char const *, char const *, int)
+ ?trUtf8@NmUiEngine@@SA?AVQString@@PBD0@Z @ 69 NONAME ; class QString NmUiEngine::trUtf8(char const *, char const *)
?insertNewMessageIntoModel@NmMessageListModel@@AAEXABVNmId@@00@Z @ 70 NONAME ; void NmMessageListModel::insertNewMessageIntoModel(class NmId const &, class NmId const &, class NmId const &)
- ?getStaticMetaObject@NmUiEngine@@SAABUQMetaObject@@XZ @ 71 NONAME ; struct QMetaObject const & NmUiEngine::getStaticMetaObject(void)
- ?metaObject@NmMessageListModel@@UBEPBUQMetaObject@@XZ @ 72 NONAME ; struct QMetaObject const * NmMessageListModel::metaObject(void) const
- ?messageBeingSent@NmUiEngine@@QBEPBVNmMessage@@XZ @ 73 NONAME ; class NmMessage const * NmUiEngine::messageBeingSent(void) const
- ?handleMailboxEvent@NmUiEngine@@AAEXW4NmMailboxEvent@@ABV?$QList@VNmId@@@@@Z @ 74 NONAME ; void NmUiEngine::handleMailboxEvent(enum NmMailboxEvent, class QList<class NmId> const &)
- ?interfaceInstance@NmDataPluginFactory@@QAEPAVNmDataPluginInterface@@VNmId@@@Z @ 75 NONAME ; class NmDataPluginInterface * NmDataPluginFactory::interfaceInstance(class NmId)
- ?trUtf8@NmMessageSearchListModel@@SA?AVQString@@PBD0@Z @ 76 NONAME ; class QString NmMessageSearchListModel::trUtf8(char const *, char const *)
- ?goOffline@NmBaseClientPlugin@@AAEXABVNmId@@@Z @ 77 NONAME ; void NmBaseClientPlugin::goOffline(class NmId const &)
- ?sendMessage@NmUiEngine@@QAEXPAVNmMessage@@ABV?$QList@PAVNmOperation@@@@@Z @ 78 NONAME ; void NmUiEngine::sendMessage(class NmMessage *, class QList<class NmOperation *> const &)
- ?tr@NmDataManager@@SA?AVQString@@PBD0H@Z @ 79 NONAME ; class QString NmDataManager::tr(char const *, char const *, int)
- ??0NmMailboxListModel@@QAE@AAVNmDataManager@@PAVQObject@@@Z @ 80 NONAME ; NmMailboxListModel::NmMailboxListModel(class NmDataManager &, class QObject *)
- ?trUtf8@NmCheckOutboxOperation@@SA?AVQString@@PBD0@Z @ 81 NONAME ; class QString NmCheckOutboxOperation::trUtf8(char const *, char const *)
- ?setPriorityNormal@NmBaseClientPlugin@@QAEXXZ @ 82 NONAME ; void NmBaseClientPlugin::setPriorityNormal(void)
- ??_ENmMessageSendingOperation@@UAE@I@Z @ 83 NONAME ; NmMessageSendingOperation::~NmMessageSendingOperation(unsigned int)
- ?changed@NmMessageListModel@@AAE_NABVNmMessageEnvelope@@0@Z @ 84 NONAME ; bool NmMessageListModel::changed(class NmMessageEnvelope const &, class NmMessageEnvelope const &)
- ?openAttachment@NmBaseClientPlugin@@QAEXXZ @ 85 NONAME ; void NmBaseClientPlugin::openAttachment(void)
- ?staticMetaObject@NmMessageCreationOperation@@2UQMetaObject@@B @ 86 NONAME ; struct QMetaObject const NmMessageCreationOperation::staticMetaObject
- ?handleMailboxEvent@NmMailboxListModel@@QAEXW4NmMailboxEvent@@ABV?$QList@VNmId@@@@@Z @ 87 NONAME ; void NmMailboxListModel::handleMailboxEvent(enum NmMailboxEvent, class QList<class NmId> const &)
- ?metaObject@NmStoreEnvelopesOperation@@UBEPBUQMetaObject@@XZ @ 88 NONAME ; struct QMetaObject const * NmStoreEnvelopesOperation::metaObject(void) const
- ?trUtf8@NmMailboxListModel@@SA?AVQString@@PBD0H@Z @ 89 NONAME ; class QString NmMailboxListModel::trUtf8(char const *, char const *, int)
- ?mPluginArray@NmDataPluginFactory@@0PAV?$QList@PAVQObject@@@@A @ 90 NONAME ; class QList<class QObject *> * NmDataPluginFactory::mPluginArray
- ?instance@NmDataPluginFactory@@SAPAV1@XZ @ 91 NONAME ; class NmDataPluginFactory * NmDataPluginFactory::instance(void)
- ?getStaticMetaObject@NmMessageListModel@@SAABUQMetaObject@@XZ @ 92 NONAME ; struct QMetaObject const & NmMessageListModel::getStaticMetaObject(void)
- ?deleteMessageFromViewerView@NmBaseClientPlugin@@QAEXXZ @ 93 NONAME ; void NmBaseClientPlugin::deleteMessageFromViewerView(void)
- ?tr@NmUiEngine@@SA?AVQString@@PBD0H@Z @ 94 NONAME ; class QString NmUiEngine::tr(char const *, char const *, int)
- ?refresh@NmMessageListModel@@QAEXVNmId@@0ABV?$QList@PAVNmMessageEnvelope@@@@@Z @ 95 NONAME ; void NmMessageListModel::refresh(class NmId, class NmId, class QList<class NmMessageEnvelope *> const &)
- ?mailboxById@NmUiEngine@@QAEPAVNmMailboxMetaData@@ABVNmId@@@Z @ 96 NONAME ; class NmMailboxMetaData * NmUiEngine::mailboxById(class NmId const &)
- ?createNewMessage@NmUiEngine@@QAE?AV?$QPointer@VNmMessageCreationOperation@@@@ABVNmId@@@Z @ 97 NONAME ; class QPointer<class NmMessageCreationOperation> NmUiEngine::createNewMessage(class NmId const &)
- ?tr@NmCheckOutboxOperation@@SA?AVQString@@PBD0@Z @ 98 NONAME ; class QString NmCheckOutboxOperation::tr(char const *, char const *)
- ??_ENmMessageListModelItem@@UAE@I@Z @ 99 NONAME ; NmMessageListModelItem::~NmMessageListModelItem(unsigned int)
- ?replyAllMail@NmBaseClientPlugin@@QAEXXZ @ 100 NONAME ; void NmBaseClientPlugin::replyAllMail(void)
- ?syncStateEvent@NmUiEngine@@IAEXW4NmSyncState@@ABVNmId@@@Z @ 101 NONAME ; void NmUiEngine::syncStateEvent(enum NmSyncState, class NmId const &)
- ?trUtf8@NmDataManager@@SA?AVQString@@PBD0@Z @ 102 NONAME ; class QString NmDataManager::trUtf8(char const *, char const *)
- ?setEnvelopeProperties@NmMessageListModel@@QAEXW4NmEnvelopeProperties@@ABV?$QList@VNmId@@@@@Z @ 103 NONAME ; void NmMessageListModel::setEnvelopeProperties(enum NmEnvelopeProperties, class QList<class NmId> const &)
- ??1NmStoreEnvelopesOperation@@MAE@XZ @ 104 NONAME ; NmStoreEnvelopesOperation::~NmStoreEnvelopesOperation(void)
- ?tr@NmUiEngine@@SA?AVQString@@PBD0@Z @ 105 NONAME ; class QString NmUiEngine::tr(char const *, char const *)
- ?mPluginLoaderArray@NmDataPluginFactory@@0V?$QList@PAVQPluginLoader@@@@A @ 106 NONAME ; class QList<class QPluginLoader *> NmDataPluginFactory::mPluginLoaderArray
- ?trUtf8@NmBaseClientPlugin@@SA?AVQString@@PBD0@Z @ 107 NONAME ; class QString NmBaseClientPlugin::trUtf8(char const *, char const *)
- ?deleteOperation@NmOperation@@AAEXXZ @ 108 NONAME ; void NmOperation::deleteOperation(void)
- ?trUtf8@NmBaseClientPlugin@@SA?AVQString@@PBD0H@Z @ 109 NONAME ; class QString NmBaseClientPlugin::trUtf8(char const *, char const *, int)
- ?createViewerViewCommands@NmBaseClientPlugin@@AAEXABVNmActionRequest@@AAV?$QList@PAVNmAction@@@@@Z @ 110 NONAME ; void NmBaseClientPlugin::createViewerViewCommands(class NmActionRequest const &, class QList<class NmAction *> &)
- ?fetchMessagePart@NmUiEngine@@QAE?AV?$QPointer@VNmOperation@@@@ABVNmId@@000@Z @ 111 NONAME ; class QPointer<class NmOperation> NmUiEngine::fetchMessagePart(class NmId const &, class NmId const &, class NmId const &, class NmId const &)
- ?tr@NmMailboxListModel@@SA?AVQString@@PBD0H@Z @ 112 NONAME ; class QString NmMailboxListModel::tr(char const *, char const *, int)
- ?trUtf8@NmUiEngine@@SA?AVQString@@PBD0H@Z @ 113 NONAME ; class QString NmUiEngine::trUtf8(char const *, char const *, int)
- ?createMailboxItem@NmMailboxListModel@@AAEPAVNmMailboxListModelItem@@PBVNmMailbox@@@Z @ 114 NONAME ; class NmMailboxListModelItem * NmMailboxListModel::createMailboxItem(class NmMailbox const *)
- ?setTitleDivider@NmMessageListModelItem@@QAEXABVQString@@@Z @ 115 NONAME ; void NmMessageListModelItem::setTitleDivider(class QString const &)
- ?markAsRead@NmBaseClientPlugin@@QAEXXZ @ 116 NONAME ; void NmBaseClientPlugin::markAsRead(void)
- ?getInsertionIndex@NmMessageListModel@@ABEHABVNmMessageEnvelope@@@Z @ 117 NONAME ; int NmMessageListModel::getInsertionIndex(class NmMessageEnvelope const &) const
- ?updateOperationProgress@NmOperation@@QAEXH@Z @ 118 NONAME ; void NmOperation::updateOperationProgress(int)
- ??1NmFolderListModel@@UAE@XZ @ 119 NONAME ; NmFolderListModel::~NmFolderListModel(void)
- ?operationCompleted@NmUiEngine@@IAEXABVNmOperationCompletionEvent@@@Z @ 120 NONAME ; void NmUiEngine::operationCompleted(class NmOperationCompletionEvent const &)
- ??1NmDataManager@@UAE@XZ @ 121 NONAME ; NmDataManager::~NmDataManager(void)
- ?trUtf8@NmStoreEnvelopesOperation@@SA?AVQString@@PBD0@Z @ 122 NONAME ; class QString NmStoreEnvelopesOperation::trUtf8(char const *, char const *)
- ?metaObject@NmMessageSearchListModel@@UBEPBUQMetaObject@@XZ @ 123 NONAME ; struct QMetaObject const * NmMessageSearchListModel::metaObject(void) const
- ??0NmMessageSearchListModel@@QAE@PAVQObject@@@Z @ 124 NONAME ; NmMessageSearchListModel::NmMessageSearchListModel(class QObject *)
- ?getStaticMetaObject@NmMessageCreationOperation@@SAABUQMetaObject@@XZ @ 125 NONAME ; struct QMetaObject const & NmMessageCreationOperation::getStaticMetaObject(void)
- ?trUtf8@NmAddAttachmentsOperation@@SA?AVQString@@PBD0@Z @ 126 NONAME ; class QString NmAddAttachmentsOperation::trUtf8(char const *, char const *)
- ?name@NmMailboxMetaData@@QBE?AVQString@@XZ @ 127 NONAME ; class QString NmMailboxMetaData::name(void) const
- ?qt_metacall@NmDataManager@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 128 NONAME ; int NmDataManager::qt_metacall(enum QMetaObject::Call, int, void * *)
- ??1NmMessageSearchListModel@@UAE@XZ @ 129 NONAME ; NmMessageSearchListModel::~NmMessageSearchListModel(void)
- ?runAsyncOperation@NmOperation@@MAEXXZ @ 130 NONAME ; void NmOperation::runAsyncOperation(void)
- ??0NmFolderListModel@@QAE@AAVNmDataManager@@PAVQObject@@@Z @ 131 NONAME ; NmFolderListModel::NmFolderListModel(class NmDataManager &, class QObject *)
- ?getStaticMetaObject@NmCheckOutboxOperation@@SAABUQMetaObject@@XZ @ 132 NONAME ; struct QMetaObject const & NmCheckOutboxOperation::getStaticMetaObject(void)
- ?metaObject@NmCheckOutboxOperation@@UBEPBUQMetaObject@@XZ @ 133 NONAME ; struct QMetaObject const * NmCheckOutboxOperation::metaObject(void) const
- ?tr@NmBaseClientPlugin@@SA?AVQString@@PBD0H@Z @ 134 NONAME ; class QString NmBaseClientPlugin::tr(char const *, char const *, int)
- ??0NmMailboxMetaData@@QAE@XZ @ 135 NONAME ; NmMailboxMetaData::NmMailboxMetaData(void)
- ?setEnvelope@NmMessageListModelItem@@QAEXPAVNmMessageEnvelope@@@Z @ 136 NONAME ; void NmMessageListModelItem::setEnvelope(class NmMessageEnvelope *)
- ?saveMessage@NmUiEngine@@QAEHABVNmMessage@@@Z @ 137 NONAME ; int NmUiEngine::saveMessage(class NmMessage const &)
- ?setId@NmMailboxMetaData@@QAEXABVNmId@@@Z @ 138 NONAME ; void NmMailboxMetaData::setId(class NmId const &)
- ?mReferenceCount@NmDataPluginFactory@@0HA @ 139 NONAME ; int NmDataPluginFactory::mReferenceCount
- ?tr@NmOperation@@SA?AVQString@@PBD0@Z @ 140 NONAME ; class QString NmOperation::tr(char const *, char const *)
- ?qt_metacast@NmCheckOutboxOperation@@UAEPAXPBD@Z @ 141 NONAME ; void * NmCheckOutboxOperation::qt_metacast(char const *)
- ?clearSearchResults@NmMessageSearchListModel@@QAEXXZ @ 142 NONAME ; void NmMessageSearchListModel::clearSearchResults(void)
- ?updateMessageEnvelope@NmMessageListModel@@AAEXABVNmId@@00@Z @ 143 NONAME ; void NmMessageListModel::updateMessageEnvelope(class NmId const &, class NmId const &, class NmId const &)
- ?filterAcceptsRow@NmMessageSearchListModel@@MBE_NHABVQModelIndex@@@Z @ 144 NONAME ; bool NmMessageSearchListModel::filterAcceptsRow(int, class QModelIndex const &) const
- ?messageSearchListModel@NmUiEngine@@QAEAAVNmMessageSearchListModel@@PAVQAbstractItemModel@@@Z @ 145 NONAME ; class NmMessageSearchListModel & NmUiEngine::messageSearchListModel(class QAbstractItemModel *)
- ?tr@NmStoreEnvelopesOperation@@SA?AVQString@@PBD0@Z @ 146 NONAME ; class QString NmStoreEnvelopesOperation::tr(char const *, char const *)
- ?messagesBelongUnderSameDivider@NmMessageListModel@@ABE_NPBVNmMessageEnvelope@@0@Z @ 147 NONAME ; bool NmMessageListModel::messagesBelongUnderSameDivider(class NmMessageEnvelope const *, class NmMessageEnvelope const *) const
- ?checkOutbox@NmUiEngine@@QAE?AV?$QPointer@VNmCheckOutboxOperation@@@@ABVNmId@@@Z @ 148 NONAME ; class QPointer<class NmCheckOutboxOperation> NmUiEngine::checkOutbox(class NmId const &)
- ?metaObject@NmDataManager@@UBEPBUQMetaObject@@XZ @ 149 NONAME ; struct QMetaObject const * NmDataManager::metaObject(void) const
- ?isSendingMessage@NmUiEngine@@QBE_NXZ @ 150 NONAME ; bool NmUiEngine::isSendingMessage(void) const
- ?freeIcons@NmIcons@@SAXXZ @ 151 NONAME ; void NmIcons::freeIcons(void)
- ?tr@NmAddAttachmentsOperation@@SA?AVQString@@PBD0@Z @ 152 NONAME ; class QString NmAddAttachmentsOperation::tr(char const *, char const *)
- ?itemFromModel@NmMessageListModel@@AAEPAVNmMessageListModelItem@@ABVNmId@@@Z @ 153 NONAME ; class NmMessageListModelItem * NmMessageListModel::itemFromModel(class NmId const &)
- ?instance@NmUiEngine@@SAPAV1@XZ @ 154 NONAME ; class NmUiEngine * NmUiEngine::instance(void)
- ?createMessageListCommands@NmBaseClientPlugin@@AAEXABVNmActionRequest@@AAV?$QList@PAVNmAction@@@@@Z @ 155 NONAME ; void NmBaseClientPlugin::createMessageListCommands(class NmActionRequest const &, class QList<class NmAction *> &)
- ?updateEnvelopeProperty@NmBaseClientPlugin@@AAEXW4NmEnvelopeProperties@@@Z @ 156 NONAME ; void NmBaseClientPlugin::updateEnvelopeProperty(enum NmEnvelopeProperties)
- ??1NmAddAttachmentsOperation@@MAE@XZ @ 157 NONAME ; NmAddAttachmentsOperation::~NmAddAttachmentsOperation(void)
- ?goOffline@NmUiEngine@@QAEHABVNmId@@@Z @ 158 NONAME ; int NmUiEngine::goOffline(class NmId const &)
- ?staticMetaObject@NmDataManager@@2UQMetaObject@@B @ 159 NONAME ; struct QMetaObject const NmDataManager::staticMetaObject
- ?mInstance@NmUiEngine@@0PAV1@A @ 160 NONAME ; class NmUiEngine * NmUiEngine::mInstance
- ?attach@NmBaseClientPlugin@@QAEXXZ @ 161 NONAME ; void NmBaseClientPlugin::attach(void)
- ?metaObject@NmAddAttachmentsOperation@@UBEPBUQMetaObject@@XZ @ 162 NONAME ; struct QMetaObject const * NmAddAttachmentsOperation::metaObject(void) const
- ?refresh@NmFolderListModel@@QAEXAAV?$QList@PAVNmFolder@@@@@Z @ 163 NONAME ; void NmFolderListModel::refresh(class QList<class NmFolder *> &)
- ?qt_metacall@NmCheckOutboxOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 164 NONAME ; int NmCheckOutboxOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?trUtf8@NmMailboxListModel@@SA?AVQString@@PBD0@Z @ 165 NONAME ; class QString NmMailboxListModel::trUtf8(char const *, char const *)
- ?envelopeById@NmDataManager@@QAEPAVNmMessageEnvelope@@ABVNmId@@00@Z @ 166 NONAME ; class NmMessageEnvelope * NmDataManager::envelopeById(class NmId const &, class NmId const &, class NmId const &)
- ?getStaticMetaObject@NmOperation@@SAABUQMetaObject@@XZ @ 167 NONAME ; struct QMetaObject const & NmOperation::getStaticMetaObject(void)
- ?trUtf8@NmOperation@@SA?AVQString@@PBD0@Z @ 168 NONAME ; class QString NmOperation::trUtf8(char const *, char const *)
- ?addAttachments@NmUiEngine@@QAE?AV?$QPointer@VNmAddAttachmentsOperation@@@@ABVNmMessage@@ABV?$QList@VQString@@@@@Z @ 169 NONAME ; class QPointer<class NmAddAttachmentsOperation> NmUiEngine::addAttachments(class NmMessage const &, class QList<class QString> const &)
- ?doCancelOperation@NmOperation@@MAEXXZ @ 170 NONAME ; void NmOperation::doCancelOperation(void)
- ?tr@NmOperation@@SA?AVQString@@PBD0H@Z @ 171 NONAME ; class QString NmOperation::tr(char const *, char const *, int)
- ??_ENmOperation@@UAE@I@Z @ 172 NONAME ; NmOperation::~NmOperation(unsigned int)
- ?tr@NmMessageCreationOperation@@SA?AVQString@@PBD0@Z @ 173 NONAME ; class QString NmMessageCreationOperation::tr(char const *, char const *)
- ?qt_metacall@NmMessageListModel@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 174 NONAME ; int NmMessageListModel::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?staticMetaObject@NmOperation@@2UQMetaObject@@B @ 175 NONAME ; struct QMetaObject const NmOperation::staticMetaObject
- ??1NmUiEngine@@EAE@XZ @ 176 NONAME ; NmUiEngine::~NmUiEngine(void)
- ?messagePartFile@NmUiEngine@@QAE?AVXQSharableFile@@ABVNmId@@000@Z @ 177 NONAME ; class XQSharableFile NmUiEngine::messagePartFile(class NmId const &, class NmId const &, class NmId const &, class NmId const &)
- ??_ENmMessageListModel@@UAE@I@Z @ 178 NONAME ; NmMessageListModel::~NmMessageListModel(unsigned int)
- ?addPreliminaryOperation@NmOperation@@QAEXPAV1@@Z @ 179 NONAME ; void NmOperation::addPreliminaryOperation(class NmOperation *)
- ?deleteMessages@NmUiEngine@@QAEHABVNmId@@0ABV?$QList@VNmId@@@@@Z @ 180 NONAME ; int NmUiEngine::deleteMessages(class NmId const &, class NmId const &, class QList<class NmId> const &)
- ??_ENmStoreEnvelopesOperation@@UAE@I@Z @ 181 NONAME ; NmStoreEnvelopesOperation::~NmStoreEnvelopesOperation(unsigned int)
- ?mailboxById@NmDataManager@@QAEPAVNmMailboxMetaData@@ABVNmId@@@Z @ 182 NONAME ; class NmMailboxMetaData * NmDataManager::mailboxById(class NmId const &)
- ?search@NmBaseClientPlugin@@QAEXXZ @ 183 NONAME ; void NmBaseClientPlugin::search(void)
- ?pluginInstances@NmDataPluginFactory@@QAEPAV?$QList@PAVQObject@@@@XZ @ 184 NONAME ; class QList<class QObject *> * NmDataPluginFactory::pluginInstances(void)
- ?tr@NmBaseClientPlugin@@SA?AVQString@@PBD0@Z @ 185 NONAME ; class QString NmBaseClientPlugin::tr(char const *, char const *)
- ?listMessages@NmDataManager@@QAEXABVNmId@@0AAV?$QList@PAVNmMessageEnvelope@@@@@Z @ 186 NONAME ; void NmDataManager::listMessages(class NmId const &, class NmId const &, class QList<class NmMessageEnvelope *> &)
- ?getStaticMetaObject@NmMessageSearchListModel@@SAABUQMetaObject@@XZ @ 187 NONAME ; struct QMetaObject const & NmMessageSearchListModel::getStaticMetaObject(void)
- ??1NmBaseClientPlugin@@UAE@XZ @ 188 NONAME ; NmBaseClientPlugin::~NmBaseClientPlugin(void)
- ?qt_metacast@NmDataManager@@UAEPAXPBD@Z @ 189 NONAME ; void * NmDataManager::qt_metacast(char const *)
- ??0NmMessageCreationOperation@@QAE@XZ @ 190 NONAME ; NmMessageCreationOperation::NmMessageCreationOperation(void)
- ?qt_metacall@NmBaseClientPlugin@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 191 NONAME ; int NmBaseClientPlugin::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?envelopePtr@NmMessageListModelItem@@QAEPAVNmMessageEnvelope@@XZ @ 192 NONAME ; class NmMessageEnvelope * NmMessageListModelItem::envelopePtr(void)
- ?messageListModel@NmUiEngine@@QAEAAVNmMessageListModel@@ABVNmId@@0@Z @ 193 NONAME ; class NmMessageListModel & NmUiEngine::messageListModel(class NmId const &, class NmId const &)
- ??1NmMailboxMetaData@@UAE@XZ @ 194 NONAME ; NmMailboxMetaData::~NmMailboxMetaData(void)
- ?trUtf8@NmCheckOutboxOperation@@SA?AVQString@@PBD0H@Z @ 195 NONAME ; class QString NmCheckOutboxOperation::trUtf8(char const *, char const *, int)
- ??0NmCheckOutboxOperation@@QAE@XZ @ 196 NONAME ; NmCheckOutboxOperation::NmCheckOutboxOperation(void)
- ?connectionEvent@NmUiEngine@@IAEXW4NmConnectState@@ABVNmId@@@Z @ 197 NONAME ; void NmUiEngine::connectionEvent(enum NmConnectState, class NmId const &)
- ?mailbox@NmDataManager@@QAEPAVNmMailbox@@ABVNmId@@@Z @ 198 NONAME ; class NmMailbox * NmDataManager::mailbox(class NmId const &)
- ?interfaceInstance@NmDataPluginFactory@@QAEPAVNmDataPluginInterface@@PAVQObject@@@Z @ 199 NONAME ; class NmDataPluginInterface * NmDataPluginFactory::interfaceInstance(class QObject *)
- ?refreshModelItem@NmMailboxListModel@@QAEXABVNmId@@_N@Z @ 200 NONAME ; void NmMailboxListModel::refreshModelItem(class NmId const &, bool)
- ?metaObject@NmMailboxListModel@@UBEPBUQMetaObject@@XZ @ 201 NONAME ; struct QMetaObject const * NmMailboxListModel::metaObject(void) const
- ?IconId@NmMailboxMetaData@@QBE?AVNmId@@XZ @ 202 NONAME ; class NmId NmMailboxMetaData::IconId(void) const
- ?sendOperationCompleted@NmUiEngine@@IAEXXZ @ 203 NONAME ; void NmUiEngine::sendOperationCompleted(void)
- ??0NmFolderMetaData@@QAE@XZ @ 204 NONAME ; NmFolderMetaData::NmFolderMetaData(void)
- ?staticMetaObject@NmAddAttachmentsOperation@@2UQMetaObject@@B @ 205 NONAME ; struct QMetaObject const NmAddAttachmentsOperation::staticMetaObject
- ?connectionState@NmUiEngine@@QAE?AW4NmConnectState@@ABVNmId@@@Z @ 206 NONAME ; enum NmConnectState NmUiEngine::connectionState(class NmId const &)
- ?createTitleDividerItem@NmMessageListModel@@AAEPAVNmMessageListModelItem@@PAVNmMessageEnvelope@@@Z @ 207 NONAME ; class NmMessageListModelItem * NmMessageListModel::createTitleDividerItem(class NmMessageEnvelope *)
- ?setId@NmFolderMetaData@@QAEXABVNmId@@@Z @ 208 NONAME ; void NmFolderMetaData::setId(class NmId const &)
- ??0NmOperation@@QAE@XZ @ 209 NONAME ; NmOperation::NmOperation(void)
- ?cancelOperation@NmOperation@@QAEXXZ @ 210 NONAME ; void NmOperation::cancelOperation(void)
- ??_ENmFolderMetaData@@UAE@I@Z @ 211 NONAME ; NmFolderMetaData::~NmFolderMetaData(unsigned int)
- ?qt_metacast@NmMessageListModel@@UAEPAXPBD@Z @ 212 NONAME ; void * NmMessageListModel::qt_metacast(char const *)
- ?operationProgressChanged@NmOperation@@IAEXH@Z @ 213 NONAME ; void NmOperation::operationProgressChanged(int)
- ?trUtf8@NmOperation@@SA?AVQString@@PBD0H@Z @ 214 NONAME ; class QString NmOperation::trUtf8(char const *, char const *, int)
- ??_ENmMailboxListModel@@UAE@I@Z @ 215 NONAME ; NmMailboxListModel::~NmMailboxListModel(unsigned int)
- ?messageDeleted@NmUiEngine@@IAEXABVNmId@@00@Z @ 216 NONAME ; void NmUiEngine::messageDeleted(class NmId const &, class NmId const &, class NmId const &)
- ?trUtf8@NmMessageCreationOperation@@SA?AVQString@@PBD0@Z @ 217 NONAME ; class QString NmMessageCreationOperation::trUtf8(char const *, char const *)
- ?metaObject@NmUiEngine@@UBEPBUQMetaObject@@XZ @ 218 NONAME ; struct QMetaObject const * NmUiEngine::metaObject(void) const
- ??_ENmBaseClientPlugin@@UAE@I@Z @ 219 NONAME ; NmBaseClientPlugin::~NmBaseClientPlugin(unsigned int)
- ?markAsUnread@NmBaseClientPlugin@@QAEXXZ @ 220 NONAME ; void NmBaseClientPlugin::markAsUnread(void)
- ?metaObject@NmBaseClientPlugin@@UBEPBUQMetaObject@@XZ @ 221 NONAME ; struct QMetaObject const * NmBaseClientPlugin::metaObject(void) const
- ?tr@NmDataManager@@SA?AVQString@@PBD0@Z @ 222 NONAME ; class QString NmDataManager::tr(char const *, char const *)
- ?mailboxListModel@NmUiEngine@@QAEAAVNmMailboxListModel@@XZ @ 223 NONAME ; class NmMailboxListModel & NmUiEngine::mailboxListModel(void)
- ?fetchMessage@NmUiEngine@@QAE?AV?$QPointer@VNmOperation@@@@ABVNmId@@00@Z @ 224 NONAME ; class QPointer<class NmOperation> NmUiEngine::fetchMessage(class NmId const &, class NmId const &, class NmId const &)
- ?setIconId@NmMailboxMetaData@@QAEXABVNmId@@@Z @ 225 NONAME ; void NmMailboxMetaData::setIconId(class NmId const &)
- ??1NmDataPluginFactory@@EAE@XZ @ 226 NONAME ; NmDataPluginFactory::~NmDataPluginFactory(void)
- ?refreshMailboxListModel@NmUiEngine@@QAEXXZ @ 227 NONAME ; void NmUiEngine::refreshMailboxListModel(void)
- ?qt_metacall@NmStoreEnvelopesOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 228 NONAME ; int NmStoreEnvelopesOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?trUtf8@NmMessageListModel@@SA?AVQString@@PBD0@Z @ 229 NONAME ; class QString NmMessageListModel::trUtf8(char const *, char const *)
- ?rowCount@NmFolderListModel@@UBEHABVQModelIndex@@@Z @ 230 NONAME ; int NmFolderListModel::rowCount(class QModelIndex const &) const
- ?doUpdateOperationProgress@NmOperation@@MAEXXZ @ 231 NONAME ; void NmOperation::doUpdateOperationProgress(void)
- ?tr@NmMailboxListModel@@SA?AVQString@@PBD0@Z @ 232 NONAME ; class QString NmMailboxListModel::tr(char const *, char const *)
- ?removeMessage@NmUiEngine@@QAEHABVNmId@@00@Z @ 233 NONAME ; int NmUiEngine::removeMessage(class NmId const &, class NmId const &, class NmId const &)
- ??_ENmUiEngine@@UAE@I@Z @ 234 NONAME ; NmUiEngine::~NmUiEngine(unsigned int)
- ??_ENmMessageSearchListModel@@UAE@I@Z @ 235 NONAME ; NmMessageSearchListModel::~NmMessageSearchListModel(unsigned int)
- ?operationCompleted@NmOperation@@IAEXH@Z @ 236 NONAME ; void NmOperation::operationCompleted(int)
- ?callEmitDataChanged@NmMessageListModelItem@@QAEXXZ @ 237 NONAME ; void NmMessageListModelItem::callEmitDataChanged(void)
- ?matchFound@NmUiEngine@@IAEXABVNmId@@@Z @ 238 NONAME ; void NmUiEngine::matchFound(class NmId const &)
- ?tr@NmCheckOutboxOperation@@SA?AVQString@@PBD0H@Z @ 239 NONAME ; class QString NmCheckOutboxOperation::tr(char const *, char const *, int)
- ?addSearchResult@NmMessageSearchListModel@@QAE_NABVNmId@@@Z @ 240 NONAME ; bool NmMessageSearchListModel::addSearchResult(class NmId const &)
- ??0NmMessageListModel@@QAE@AAVNmDataManager@@PAVQObject@@@Z @ 241 NONAME ; NmMessageListModel::NmMessageListModel(class NmDataManager &, class QObject *)
- ??_ENmAddAttachmentsOperation@@UAE@I@Z @ 242 NONAME ; NmAddAttachmentsOperation::~NmAddAttachmentsOperation(unsigned int)
- ?syncState@NmUiEngine@@QAE?AW4NmSyncState@@ABVNmId@@@Z @ 243 NONAME ; enum NmSyncState NmUiEngine::syncState(class NmId const &)
- ??1NmOperation@@MAE@XZ @ 244 NONAME ; NmOperation::~NmOperation(void)
- ?tr@NmStoreEnvelopesOperation@@SA?AVQString@@PBD0H@Z @ 245 NONAME ; class QString NmStoreEnvelopesOperation::tr(char const *, char const *, int)
- ?listMailboxes@NmDataManager@@QAEXAAV?$QList@PAVNmMailbox@@@@@Z @ 246 NONAME ; void NmDataManager::listMailboxes(class QList<class NmMailbox *> &)
- ?message@NmUiEngine@@QAEPAVNmMessage@@ABVNmId@@00@Z @ 247 NONAME ; class NmMessage * NmUiEngine::message(class NmId const &, class NmId const &, class NmId const &)
- ?refreshMailbox@NmUiEngine@@QAEHABVNmId@@@Z @ 248 NONAME ; int NmUiEngine::refreshMailbox(class NmId const &)
- ?trUtf8@NmUiEngine@@SA?AVQString@@PBD0@Z @ 249 NONAME ; class QString NmUiEngine::trUtf8(char const *, char const *)
- ?contentToMessagePart@NmUiEngine@@QAEHABVNmId@@00AAVNmMessagePart@@@Z @ 250 NONAME ; int NmUiEngine::contentToMessagePart(class NmId const &, class NmId const &, class NmId const &, class NmMessagePart &)
- ?removeItem@NmMessageListModel@@AAEXHAAVNmMessageListModelItem@@@Z @ 251 NONAME ; void NmMessageListModel::removeItem(int, class NmMessageListModelItem &)
- ??1NmMailboxListModel@@UAE@XZ @ 252 NONAME ; NmMailboxListModel::~NmMailboxListModel(void)
- ??0NmBaseClientPlugin@@QAE@XZ @ 253 NONAME ; NmBaseClientPlugin::NmBaseClientPlugin(void)
- ?forwardMail@NmBaseClientPlugin@@QAEXXZ @ 254 NONAME ; void NmBaseClientPlugin::forwardMail(void)
- ?setItemType@NmMessageListModelItem@@QAEXW4NmMessageItemType@1@@Z @ 255 NONAME ; void NmMessageListModelItem::setItemType(enum NmMessageListModelItem::NmMessageItemType)
- ??_ENmDataPluginFactory@@UAE@I@Z @ 256 NONAME ; NmDataPluginFactory::~NmDataPluginFactory(unsigned int)
- ?mailboxListChanged@NmBaseClientPlugin@@AAEXABVNmId@@W4MailboxEventType@NmSettings@@@Z @ 257 NONAME ; void NmBaseClientPlugin::mailboxListChanged(class NmId const &, enum NmSettings::MailboxEventType)
- ?expanded@NmMessageListModelItem@@QBE_NXZ @ 258 NONAME ; bool NmMessageListModelItem::expanded(void) const
- ?columnCount@NmFolderListModel@@UBEHABVQModelIndex@@@Z @ 259 NONAME ; int NmFolderListModel::columnCount(class QModelIndex const &) const
- ?pluginInstance@NmDataPluginFactory@@QAEPAVQObject@@VNmId@@@Z @ 260 NONAME ; class QObject * NmDataPluginFactory::pluginInstance(class NmId)
- ?setNewParam@NmMessageListModel@@IAEXPAVNmUiStartParam@@@Z @ 261 NONAME ; void NmMessageListModel::setNewParam(class NmUiStartParam *)
- ?data@NmMessageListModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 262 NONAME ; class QVariant NmMessageListModel::data(class QModelIndex const &, int) const
- ?goOnline@NmBaseClientPlugin@@AAEXABVNmId@@@Z @ 263 NONAME ; void NmBaseClientPlugin::goOnline(class NmId const &)
- ?createNewMail@NmBaseClientPlugin@@QAEXXZ @ 264 NONAME ; void NmBaseClientPlugin::createNewMail(void)
- ??_ENmCheckOutboxOperation@@UAE@I@Z @ 265 NONAME ; NmCheckOutboxOperation::~NmCheckOutboxOperation(unsigned int)
- ?qt_metacast@NmBaseClientPlugin@@UAEPAXPBD@Z @ 266 NONAME ; void * NmBaseClientPlugin::qt_metacast(char const *)
- ?staticMetaObject@NmBaseClientPlugin@@2UQMetaObject@@B @ 267 NONAME ; struct QMetaObject const NmBaseClientPlugin::staticMetaObject
- ?searchComplete@NmUiEngine@@IAEXXZ @ 268 NONAME ; void NmUiEngine::searchComplete(void)
- ?setEnvelope@NmMessageListModelItem@@QAEXABVNmMessageEnvelope@@@Z @ 269 NONAME ; void NmMessageListModelItem::setEnvelope(class NmMessageEnvelope const &)
- ?qt_metacast@NmAddAttachmentsOperation@@UAEPAXPBD@Z @ 270 NONAME ; void * NmAddAttachmentsOperation::qt_metacast(char const *)
- ?createNewMailViewerToolBar@NmBaseClientPlugin@@QAEXXZ @ 271 NONAME ; void NmBaseClientPlugin::createNewMailViewerToolBar(void)
- ?staticMetaObject@NmMailboxListModel@@2UQMetaObject@@B @ 272 NONAME ; struct QMetaObject const NmMailboxListModel::staticMetaObject
- ?qt_metacall@NmMessageCreationOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 273 NONAME ; int NmMessageCreationOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?trUtf8@NmDataManager@@SA?AVQString@@PBD0H@Z @ 274 NONAME ; class QString NmDataManager::trUtf8(char const *, char const *, int)
- ?trUtf8@NmMessageCreationOperation@@SA?AVQString@@PBD0H@Z @ 275 NONAME ; class QString NmMessageCreationOperation::trUtf8(char const *, char const *, int)
- ?createForwardMessage@NmUiEngine@@QAE?AV?$QPointer@VNmMessageCreationOperation@@@@ABVNmId@@0@Z @ 276 NONAME ; class QPointer<class NmMessageCreationOperation> NmUiEngine::createForwardMessage(class NmId const &, class NmId const &)
- ?handleSyncStateEvent@NmUiEngine@@QAEXW4NmSyncState@@ABVNmOperationCompletionEvent@@@Z @ 277 NONAME ; void NmUiEngine::handleSyncStateEvent(enum NmSyncState, class NmOperationCompletionEvent const &)
- ?completeOperation@NmOperation@@QAEXH@Z @ 278 NONAME ; void NmOperation::completeOperation(int)
- ?parent@NmFolderListModel@@UBE?AVQModelIndex@@ABV2@@Z @ 279 NONAME ; class QModelIndex NmFolderListModel::parent(class QModelIndex const &) const
- ?folder@NmDataManager@@QAEPAVNmFolder@@ABVNmId@@0@Z @ 280 NONAME ; class NmFolder * NmDataManager::folder(class NmId const &, class NmId const &)
- ??0NmMessageSendingOperation@@QAE@XZ @ 281 NONAME ; NmMessageSendingOperation::NmMessageSendingOperation(void)
- ?replyMail@NmBaseClientPlugin@@QAEXXZ @ 282 NONAME ; void NmBaseClientPlugin::replyMail(void)
- ??1NmMessageListModelItem@@UAE@XZ @ 283 NONAME ; NmMessageListModelItem::~NmMessageListModelItem(void)
- ?mailboxPropertyChanged@NmBaseClientPlugin@@AAEXABVNmId@@VQVariant@@1@Z @ 284 NONAME ; void NmBaseClientPlugin::mailboxPropertyChanged(class NmId const &, class QVariant, class QVariant)
- ?qt_metacall@NmOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 285 NONAME ; int NmOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?removeMessageFromModel@NmMessageListModel@@AAEXABVNmId@@@Z @ 286 NONAME ; void NmMessageListModel::removeMessageFromModel(class NmId const &)
- ?trUtf8@NmMessageListModel@@SA?AVQString@@PBD0H@Z @ 287 NONAME ; class QString NmMessageListModel::trUtf8(char const *, char const *, int)
- ?handleRequest@NmBaseClientPlugin@@AAEXW4NmActionResponseCommand@@ABVNmActionRequest@@@Z @ 288 NONAME ; void NmBaseClientPlugin::handleRequest(enum NmActionResponseCommand, class NmActionRequest const &)
- ?operationPartCompleted@NmAddAttachmentsOperation@@IAEXABVQString@@ABVNmId@@H@Z @ 289 NONAME ; void NmAddAttachmentsOperation::operationPartCompleted(class QString const &, class NmId const &, int)
- ?trUtf8@NmStoreEnvelopesOperation@@SA?AVQString@@PBD0H@Z @ 290 NONAME ; class QString NmStoreEnvelopesOperation::trUtf8(char const *, char const *, int)
- ?tr@NmMessageListModel@@SA?AVQString@@PBD0@Z @ 291 NONAME ; class QString NmMessageListModel::tr(char const *, char const *)
- ?doCompleteOperation@NmOperation@@MAEXXZ @ 292 NONAME ; void NmOperation::doCompleteOperation(void)
- ?dividerInsertionIndex@NmMessageListModel@@AAEHH@Z @ 293 NONAME ; int NmMessageListModel::dividerInsertionIndex(int)
- ??1NmCheckOutboxOperation@@MAE@XZ @ 294 NONAME ; NmCheckOutboxOperation::~NmCheckOutboxOperation(void)
- ?createMessageItem@NmMessageListModel@@AAEPAVNmMessageListModelItem@@PAVNmMessageEnvelope@@@Z @ 295 NONAME ; class NmMessageListModelItem * NmMessageListModel::createMessageItem(class NmMessageEnvelope *)
- ?id@NmFolderMetaData@@QBE?AVNmId@@XZ @ 296 NONAME ; class NmId NmFolderMetaData::id(void) const
- ?createReplyMessage@NmUiEngine@@QAE?AV?$QPointer@VNmMessageCreationOperation@@@@ABVNmId@@0_N@Z @ 297 NONAME ; class QPointer<class NmMessageCreationOperation> NmUiEngine::createReplyMessage(class NmId const &, class NmId const &, bool)
- ?getStandardFolderId@NmDataManager@@QAE?AVNmId@@ABV2@W4NmFolderType@@@Z @ 298 NONAME ; class NmId NmDataManager::getStandardFolderId(class NmId const &, enum NmFolderType)
- ?dividersActive@NmMessageListModel@@QAE_NXZ @ 299 NONAME ; bool NmMessageListModel::dividersActive(void)
- ?trUtf8@NmMessageSearchListModel@@SA?AVQString@@PBD0H@Z @ 300 NONAME ; class QString NmMessageSearchListModel::trUtf8(char const *, char const *, int)
- ?titleDivider@NmMessageListModelItem@@QBE?AVQString@@XZ @ 301 NONAME ; class QString NmMessageListModelItem::titleDivider(void) const
- ?getStaticMetaObject@NmBaseClientPlugin@@SAABUQMetaObject@@XZ @ 302 NONAME ; struct QMetaObject const & NmBaseClientPlugin::getStaticMetaObject(void)
- ?qt_metacast@NmMessageCreationOperation@@UAEPAXPBD@Z @ 303 NONAME ; void * NmMessageCreationOperation::qt_metacast(char const *)
- ?updateEnvelope@NmMessageListModel@@AAEXW4NmEnvelopeProperties@@ABVNmId@@@Z @ 304 NONAME ; void NmMessageListModel::updateEnvelope(enum NmEnvelopeProperties, class NmId const &)
- ??_ENmDataManager@@UAE@I@Z @ 305 NONAME ; NmDataManager::~NmDataManager(unsigned int)
- ?qt_metacast@NmMailboxListModel@@UAEPAXPBD@Z @ 306 NONAME ; void * NmMailboxListModel::qt_metacast(char const *)
- ?search@NmUiEngine@@QAEHABVNmId@@ABVQStringList@@@Z @ 307 NONAME ; int NmUiEngine::search(class NmId const &, class QStringList const &)
- ?setEnvelopes@NmUiEngine@@QAE?AV?$QPointer@VNmStoreEnvelopesOperation@@@@ABVNmId@@0W4NmEnvelopeProperties@@ABV?$QList@PB$$CBVNmMessageEnvelope@@@@@Z @ 308 NONAME ; class QPointer<class NmStoreEnvelopesOperation> NmUiEngine::setEnvelopes(class NmId const &, class NmId const &, enum NmEnvelopeProperties, class QList<class NmMessageEnvelope const *> const &)
- ?getActions@NmBaseClientPlugin@@UAEXABVNmActionRequest@@AAV?$QList@PAVNmAction@@@@@Z @ 309 NONAME ; void NmBaseClientPlugin::getActions(class NmActionRequest const &, class QList<class NmAction *> &)
- ?qt_metacast@NmStoreEnvelopesOperation@@UAEPAXPBD@Z @ 310 NONAME ; void * NmStoreEnvelopesOperation::qt_metacast(char const *)
- ?handleMessageEvent@NmMessageListModel@@QAEXW4NmMessageEvent@@ABVNmId@@ABV?$QList@VNmId@@@@@Z @ 311 NONAME ; void NmMessageListModel::handleMessageEvent(enum NmMessageEvent, class NmId const &, class QList<class NmId> const &)
- ??_ENmMailboxMetaData@@UAE@I@Z @ 312 NONAME ; NmMailboxMetaData::~NmMailboxMetaData(unsigned int)
- ??0NmMessageListModelItem@@QAE@XZ @ 313 NONAME ; NmMessageListModelItem::NmMessageListModelItem(void)
- ?tr@NmAddAttachmentsOperation@@SA?AVQString@@PBD0H@Z @ 314 NONAME ; class QString NmAddAttachmentsOperation::tr(char const *, char const *, int)
- ?setDividers@NmMessageListModel@@QAEX_N@Z @ 315 NONAME ; void NmMessageListModel::setDividers(bool)
- ?loadPlugin@NmDataPluginFactory@@QAEPAVQObject@@ABVQDir@@ABVQString@@@Z @ 316 NONAME ; class QObject * NmDataPluginFactory::loadPlugin(class QDir const &, class QString const &)
- ?qt_metacast@NmOperation@@UAEPAXPBD@Z @ 317 NONAME ; void * NmOperation::qt_metacast(char const *)
- ?tr@NmMessageListModel@@SA?AVQString@@PBD0H@Z @ 318 NONAME ; class QString NmMessageListModel::tr(char const *, char const *, int)
- ?removeAttachment@NmUiEngine@@QAE?AV?$QPointer@VNmOperation@@@@ABVNmMessage@@ABVNmId@@@Z @ 319 NONAME ; class QPointer<class NmOperation> NmUiEngine::removeAttachment(class NmMessage const &, class NmId const &)
- ?staticMetaObject@NmMessageListModel@@2UQMetaObject@@B @ 320 NONAME ; struct QMetaObject const NmMessageListModel::staticMetaObject
- ?qt_metacall@NmAddAttachmentsOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 321 NONAME ; int NmAddAttachmentsOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?qt_metacall@NmUiEngine@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 322 NONAME ; int NmUiEngine::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?tr@NmMessageSearchListModel@@SA?AVQString@@PBD0H@Z @ 323 NONAME ; class QString NmMessageSearchListModel::tr(char const *, char const *, int)
- ?message@NmDataManager@@QAEPAVNmMessage@@ABVNmId@@00@Z @ 324 NONAME ; class NmMessage * NmDataManager::message(class NmId const &, class NmId const &, class NmId const &)
- ?metaObject@NmOperation@@UBEPBUQMetaObject@@XZ @ 325 NONAME ; struct QMetaObject const * NmOperation::metaObject(void) const
- ?folderTypeById@NmUiEngine@@QAE?AW4NmFolderType@@VNmId@@0@Z @ 326 NONAME ; enum NmFolderType NmUiEngine::folderTypeById(class NmId, class NmId)
- ?refreshContent@NmMessageSearchListModel@@QAEXXZ @ 327 NONAME ; void NmMessageSearchListModel::refreshContent(void)
- ?searchResultCount@NmMessageSearchListModel@@QBEHXZ @ 328 NONAME ; int NmMessageSearchListModel::searchResultCount(void) const
- ?handleConnectEvent@NmUiEngine@@QAEXW4NmConnectState@@ABVNmId@@H@Z @ 329 NONAME ; void NmUiEngine::handleConnectEvent(enum NmConnectState, class NmId const &, int)
+ ?updateOperationProgress@NmOperation@@QAEXH@Z @ 71 NONAME ; void NmOperation::updateOperationProgress(int)
+ ?staticMetaObject@NmAddAttachmentsOperation@@2UQMetaObject@@B @ 72 NONAME ; struct QMetaObject const NmAddAttachmentsOperation::staticMetaObject
+ ?trUtf8@NmBaseClientPlugin@@SA?AVQString@@PBD0@Z @ 73 NONAME ; class QString NmBaseClientPlugin::trUtf8(char const *, char const *)
+ ?operationCompleted@NmUiEngine@@IAEXABVNmOperationCompletionEvent@@@Z @ 74 NONAME ; void NmUiEngine::operationCompleted(class NmOperationCompletionEvent const &)
+ ?cancelSearch@NmUiEngine@@QAEHABVNmId@@@Z @ 75 NONAME ; int NmUiEngine::cancelSearch(class NmId const &)
+ ?tr@NmDataManager@@SA?AVQString@@PBD0@Z @ 76 NONAME ; class QString NmDataManager::tr(char const *, char const *)
+ ?removeAttachment@NmUiEngine@@QAE?AV?$QPointer@VNmOperation@@@@ABVNmMessage@@ABVNmId@@@Z @ 77 NONAME ; class QPointer<class NmOperation> NmUiEngine::removeAttachment(class NmMessage const &, class NmId const &)
+ ?replyMail@NmBaseClientPlugin@@QAEXXZ @ 78 NONAME ; void NmBaseClientPlugin::replyMail(void)
+ ??1NmMessageSendingOperation@@MAE@XZ @ 79 NONAME ; NmMessageSendingOperation::~NmMessageSendingOperation(void)
+ ?mInstance@NmUiEngine@@0PAV1@A @ 80 NONAME ; class NmUiEngine * NmUiEngine::mInstance
+ ??_ENmMessageListModel@@UAE@I@Z @ 81 NONAME ; NmMessageListModel::~NmMessageListModel(unsigned int)
+ ?trUtf8@NmBaseClientPlugin@@SA?AVQString@@PBD0H@Z @ 82 NONAME ; class QString NmBaseClientPlugin::trUtf8(char const *, char const *, int)
+ ?qt_metacast@NmOperation@@UAEPAXPBD@Z @ 83 NONAME ; void * NmOperation::qt_metacast(char const *)
+ ??1NmFolderListModel@@UAE@XZ @ 84 NONAME ; NmFolderListModel::~NmFolderListModel(void)
+ ?qt_metacall@NmUiEngine@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 85 NONAME ; int NmUiEngine::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?getStaticMetaObject@NmAddAttachmentsOperation@@SAABUQMetaObject@@XZ @ 86 NONAME ; struct QMetaObject const & NmAddAttachmentsOperation::getStaticMetaObject(void)
+ ?titleDivider@NmMessageListModelItem@@QBE?AVQString@@XZ @ 87 NONAME ; class QString NmMessageListModelItem::titleDivider(void) const
+ ?metaObject@NmAddAttachmentsOperation@@UBEPBUQMetaObject@@XZ @ 88 NONAME ; struct QMetaObject const * NmAddAttachmentsOperation::metaObject(void) const
+ ?trUtf8@NmMailboxListModel@@SA?AVQString@@PBD0@Z @ 89 NONAME ; class QString NmMailboxListModel::trUtf8(char const *, char const *)
+ ?contentToMessagePart@NmDataManager@@QAEHABVNmId@@00AAVNmMessagePart@@@Z @ 90 NONAME ; int NmDataManager::contentToMessagePart(class NmId const &, class NmId const &, class NmId const &, class NmMessagePart &)
+ ?tr@NmCheckOutboxOperation@@SA?AVQString@@PBD0@Z @ 91 NONAME ; class QString NmCheckOutboxOperation::tr(char const *, char const *)
+ ?metaObject@NmMessageCreationOperation@@UBEPBUQMetaObject@@XZ @ 92 NONAME ; struct QMetaObject const * NmMessageCreationOperation::metaObject(void) const
+ ?tr@NmStoreEnvelopesOperation@@SA?AVQString@@PBD0H@Z @ 93 NONAME ; class QString NmStoreEnvelopesOperation::tr(char const *, char const *, int)
+ ?callEmitDataChanged@NmMessageListModelItem@@QAEXXZ @ 94 NONAME ; void NmMessageListModelItem::callEmitDataChanged(void)
+ ?settings@NmBaseClientPlugin@@QAEXXZ @ 95 NONAME ; void NmBaseClientPlugin::settings(void)
+ ?setAddress@NmMailboxMetaData@@QAEXABVQString@@@Z @ 96 NONAME ; void NmMailboxMetaData::setAddress(class QString const &)
+ ?trUtf8@NmMessageCreationOperation@@SA?AVQString@@PBD0H@Z @ 97 NONAME ; class QString NmMessageCreationOperation::trUtf8(char const *, char const *, int)
+ ?interfaceInstance@NmDataPluginFactory@@QAEPAVNmDataPluginInterface@@PAVQObject@@@Z @ 98 NONAME ; class NmDataPluginInterface * NmDataPluginFactory::interfaceInstance(class QObject *)
+ ?mReferenceCount@NmUiEngine@@0HA @ 99 NONAME ; int NmUiEngine::mReferenceCount
+ ?getInsertionIndex@NmMessageListModel@@ABEHABVNmMessageEnvelope@@@Z @ 100 NONAME ; int NmMessageListModel::getInsertionIndex(class NmMessageEnvelope const &) const
+ ?search@NmBaseClientPlugin@@QAEXXZ @ 101 NONAME ; void NmBaseClientPlugin::search(void)
+ ?mailbox@NmDataManager@@QAEPAVNmMailbox@@ABVNmId@@@Z @ 102 NONAME ; class NmMailbox * NmDataManager::mailbox(class NmId const &)
+ ?trUtf8@NmMessageCreationOperation@@SA?AVQString@@PBD0@Z @ 103 NONAME ; class QString NmMessageCreationOperation::trUtf8(char const *, char const *)
+ ?setId@NmFolderMetaData@@QAEXABVNmId@@@Z @ 104 NONAME ; void NmFolderMetaData::setId(class NmId const &)
+ ?getIcon@NmIcons@@SAAAVHbIcon@@W4Icon@1@@Z @ 105 NONAME ; class HbIcon & NmIcons::getIcon(enum NmIcons::Icon)
+ ?qt_metacall@NmStoreEnvelopesOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 106 NONAME ; int NmStoreEnvelopesOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?createNewMessage@NmUiEngine@@QAE?AV?$QPointer@VNmMessageCreationOperation@@@@ABVNmId@@@Z @ 107 NONAME ; class QPointer<class NmMessageCreationOperation> NmUiEngine::createNewMessage(class NmId const &)
+ ?tr@NmBaseClientPlugin@@SA?AVQString@@PBD0H@Z @ 108 NONAME ; class QString NmBaseClientPlugin::tr(char const *, char const *, int)
+ ?handleMatchFound@NmUiEngine@@AAEXABVNmId@@0@Z @ 109 NONAME ; void NmUiEngine::handleMatchFound(class NmId const &, class NmId const &)
+ ?tr@NmMessageListModel@@SA?AVQString@@PBD0@Z @ 110 NONAME ; class QString NmMessageListModel::tr(char const *, char const *)
+ ??1NmMailboxMetaData@@UAE@XZ @ 111 NONAME ; NmMailboxMetaData::~NmMailboxMetaData(void)
+ ??0NmCheckOutboxOperation@@QAE@XZ @ 112 NONAME ; NmCheckOutboxOperation::NmCheckOutboxOperation(void)
+ ?setPriorityLow@NmBaseClientPlugin@@QAEXXZ @ 113 NONAME ; void NmBaseClientPlugin::setPriorityLow(void)
+ ?mailboxById@NmDataManager@@QAEPAVNmMailboxMetaData@@ABVNmId@@@Z @ 114 NONAME ; class NmMailboxMetaData * NmDataManager::mailboxById(class NmId const &)
+ ?setId@NmMailboxMetaData@@QAEXABVNmId@@@Z @ 115 NONAME ; void NmMailboxMetaData::setId(class NmId const &)
+ ?mailboxDeleted@NmUiEngine@@IAEXABVNmId@@@Z @ 116 NONAME ; void NmUiEngine::mailboxDeleted(class NmId const &)
+ ?search@NmUiEngine@@QAEHABVNmId@@ABVQStringList@@@Z @ 117 NONAME ; int NmUiEngine::search(class NmId const &, class QStringList const &)
+ ?createViewerViewCommands@NmBaseClientPlugin@@AAEXABVNmActionRequest@@AAV?$QList@PAVNmAction@@@@@Z @ 118 NONAME ; void NmBaseClientPlugin::createViewerViewCommands(class NmActionRequest const &, class QList<class NmAction *> &)
+ ?isSendingMessage@NmUiEngine@@QBE_NXZ @ 119 NONAME ; bool NmUiEngine::isSendingMessage(void) const
+ ??_ENmUiEngine@@UAE@I@Z @ 120 NONAME ; NmUiEngine::~NmUiEngine(unsigned int)
+ ?staticMetaObject@NmStoreEnvelopesOperation@@2UQMetaObject@@B @ 121 NONAME ; struct QMetaObject const NmStoreEnvelopesOperation::staticMetaObject
+ ??_ENmAddAttachmentsOperation@@UAE@I@Z @ 122 NONAME ; NmAddAttachmentsOperation::~NmAddAttachmentsOperation(unsigned int)
+ ?messageDeleted@NmUiEngine@@IAEXABVNmId@@00@Z @ 123 NONAME ; void NmUiEngine::messageDeleted(class NmId const &, class NmId const &, class NmId const &)
+ ?messageListModelForSearch@NmUiEngine@@QAEAAVNmMessageListModel@@ABVNmId@@@Z @ 124 NONAME ; class NmMessageListModel & NmUiEngine::messageListModelForSearch(class NmId const &)
+ ?insertDividerIntoModel@NmMessageListModel@@AAEXPAVNmMessageEnvelope@@H@Z @ 125 NONAME ; void NmMessageListModel::insertDividerIntoModel(class NmMessageEnvelope *, int)
+ ?qt_metacall@NmAddAttachmentsOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 126 NONAME ; int NmAddAttachmentsOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ??_ENmFolderListModel@@UAE@I@Z @ 127 NONAME ; NmFolderListModel::~NmFolderListModel(unsigned int)
+ ??1NmMessageListModelItem@@UAE@XZ @ 128 NONAME ; NmMessageListModelItem::~NmMessageListModelItem(void)
+ ?checkOutbox@NmUiEngine@@QAE?AV?$QPointer@VNmCheckOutboxOperation@@@@ABVNmId@@@Z @ 129 NONAME ; class QPointer<class NmCheckOutboxOperation> NmUiEngine::checkOutbox(class NmId const &)
+ ?data@NmMailboxListModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 130 NONAME ; class QVariant NmMailboxListModel::data(class QModelIndex const &, int) const
+ ?connectionState@NmUiEngine@@QAE?AW4NmConnectState@@ABVNmId@@@Z @ 131 NONAME ; enum NmConnectState NmUiEngine::connectionState(class NmId const &)
+ ?sendMessage@NmUiEngine@@QAEXPAVNmMessage@@ABV?$QList@PAVNmOperation@@@@@Z @ 132 NONAME ; void NmUiEngine::sendMessage(class NmMessage *, class QList<class NmOperation *> const &)
+ ?markAsUnread@NmBaseClientPlugin@@QAEXXZ @ 133 NONAME ; void NmBaseClientPlugin::markAsUnread(void)
+ ?releaseInstance@NmDataPluginFactory@@SAXAAPAV1@@Z @ 134 NONAME ; void NmDataPluginFactory::releaseInstance(class NmDataPluginFactory * &)
+ ?qt_metacall@NmMessageCreationOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 135 NONAME ; int NmMessageCreationOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?mPluginArray@NmDataPluginFactory@@0PAV?$QList@PAVQObject@@@@A @ 136 NONAME ; class QList<class QObject *> * NmDataPluginFactory::mPluginArray
+ ?instance@NmDataPluginFactory@@SAPAV1@XZ @ 137 NONAME ; class NmDataPluginFactory * NmDataPluginFactory::instance(void)
+ ?qt_metacast@NmAddAttachmentsOperation@@UAEPAXPBD@Z @ 138 NONAME ; void * NmAddAttachmentsOperation::qt_metacast(char const *)
+ ?refreshModelItem@NmMailboxListModel@@QAEXABVNmId@@_N@Z @ 139 NONAME ; void NmMailboxListModel::refreshModelItem(class NmId const &, bool)
+ ?columnCount@NmFolderListModel@@UBEHABVQModelIndex@@@Z @ 140 NONAME ; int NmFolderListModel::columnCount(class QModelIndex const &) const
+ ?createNewMail@NmBaseClientPlugin@@QAEXXZ @ 141 NONAME ; void NmBaseClientPlugin::createNewMail(void)
+ ?staticMetaObject@NmMessageListModel@@2UQMetaObject@@B @ 142 NONAME ; struct QMetaObject const NmMessageListModel::staticMetaObject
+ ?syncStateEvent@NmUiEngine@@IAEXW4NmSyncState@@ABVNmId@@@Z @ 143 NONAME ; void NmUiEngine::syncStateEvent(enum NmSyncState, class NmId const &)
+ ?setTitleDivider@NmMessageListModelItem@@QAEXABVQString@@@Z @ 144 NONAME ; void NmMessageListModelItem::setTitleDivider(class QString const &)
+ ?qt_metacast@NmStoreEnvelopesOperation@@UAEPAXPBD@Z @ 145 NONAME ; void * NmStoreEnvelopesOperation::qt_metacast(char const *)
+ ?qt_metacast@NmUiEngine@@UAEPAXPBD@Z @ 146 NONAME ; void * NmUiEngine::qt_metacast(char const *)
+ ?qt_metacall@NmBaseClientPlugin@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 147 NONAME ; int NmBaseClientPlugin::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?mailboxListModel@NmUiEngine@@QAEAAVNmMailboxListModel@@XZ @ 148 NONAME ; class NmMailboxListModel & NmUiEngine::mailboxListModel(void)
+ ??_ENmFolderMetaData@@UAE@I@Z @ 149 NONAME ; NmFolderMetaData::~NmFolderMetaData(unsigned int)
+ ?createMailboxItem@NmMailboxListModel@@AAEPAVNmMailboxListModelItem@@PBVNmMailbox@@@Z @ 150 NONAME ; class NmMailboxListModelItem * NmMailboxListModel::createMailboxItem(class NmMailbox const *)
+ ?handleMailboxEvent@NmMailboxListModel@@QAEXW4NmMailboxEvent@@ABV?$QList@VNmId@@@@@Z @ 151 NONAME ; void NmMailboxListModel::handleMailboxEvent(enum NmMailboxEvent, class QList<class NmId> const &)
+ ?handleConnectEvent@NmUiEngine@@QAEXW4NmConnectState@@ABVNmId@@H@Z @ 152 NONAME ; void NmUiEngine::handleConnectEvent(enum NmConnectState, class NmId const &, int)
+ ??0NmUiEngine@@AAE@XZ @ 153 NONAME ; NmUiEngine::NmUiEngine(void)
+ ?deleteMessage@NmBaseClientPlugin@@QAEXXZ @ 154 NONAME ; void NmBaseClientPlugin::deleteMessage(void)
+ ??1NmMessageCreationOperation@@MAE@XZ @ 155 NONAME ; NmMessageCreationOperation::~NmMessageCreationOperation(void)
+ ?loadPlugin@NmDataPluginFactory@@QAEPAVQObject@@ABVQDir@@ABVQString@@@Z @ 156 NONAME ; class QObject * NmDataPluginFactory::loadPlugin(class QDir const &, class QString const &)
+ ?doCompleteOperation@NmOperation@@MAEXXZ @ 157 NONAME ; void NmOperation::doCompleteOperation(void)
+ ?IconId@NmMailboxMetaData@@QBE?AVNmId@@XZ @ 158 NONAME ; class NmId NmMailboxMetaData::IconId(void) const
+ ?releaseInstance@NmUiEngine@@SAXAAPAV1@@Z @ 159 NONAME ; void NmUiEngine::releaseInstance(class NmUiEngine * &)
+ ?dividerInsertionIndex@NmMessageListModel@@AAEHH@Z @ 160 NONAME ; int NmMessageListModel::dividerInsertionIndex(int)
+ ??1NmDataPluginFactory@@EAE@XZ @ 161 NONAME ; NmDataPluginFactory::~NmDataPluginFactory(void)
+ ?tr@NmStoreEnvelopesOperation@@SA?AVQString@@PBD0@Z @ 162 NONAME ; class QString NmStoreEnvelopesOperation::tr(char const *, char const *)
+ ?instance@NmUiEngine@@SAPAV1@XZ @ 163 NONAME ; class NmUiEngine * NmUiEngine::instance(void)
+ ?refreshMailbox@NmUiEngine@@QAEHABVNmId@@@Z @ 164 NONAME ; int NmUiEngine::refreshMailbox(class NmId const &)
+ ?envelopeById@NmDataManager@@QAEPAVNmMessageEnvelope@@ABVNmId@@00@Z @ 165 NONAME ; class NmMessageEnvelope * NmDataManager::envelopeById(class NmId const &, class NmId const &, class NmId const &)
+ ?cancelOperation@NmOperation@@QAEXXZ @ 166 NONAME ; void NmOperation::cancelOperation(void)
+ ?staticMetaObject@NmCheckOutboxOperation@@2UQMetaObject@@B @ 167 NONAME ; struct QMetaObject const NmCheckOutboxOperation::staticMetaObject
+ ?createReplyMessage@NmUiEngine@@QAE?AV?$QPointer@VNmMessageCreationOperation@@@@ABVNmId@@0_N@Z @ 168 NONAME ; class QPointer<class NmMessageCreationOperation> NmUiEngine::createReplyMessage(class NmId const &, class NmId const &, bool)
+ ?pluginInstances@NmDataPluginFactory@@QAEPAV?$QList@PAVQObject@@@@XZ @ 169 NONAME ; class QList<class QObject *> * NmDataPluginFactory::pluginInstances(void)
+ ?updateEnvelopeProperty@NmBaseClientPlugin@@AAEXW4NmEnvelopeProperties@@@Z @ 170 NONAME ; void NmBaseClientPlugin::updateEnvelopeProperty(enum NmEnvelopeProperties)
+ ?trUtf8@NmMessageListModel@@SA?AVQString@@PBD0@Z @ 171 NONAME ; class QString NmMessageListModel::trUtf8(char const *, char const *)
+ ?updateEnvelope@NmMessageListModel@@AAEXW4NmEnvelopeProperties@@ABVNmId@@@Z @ 172 NONAME ; void NmMessageListModel::updateEnvelope(enum NmEnvelopeProperties, class NmId const &)
+ ?createTitleDividerItem@NmMessageListModel@@AAEPAVNmMessageListModelItem@@PAVNmMessageEnvelope@@@Z @ 173 NONAME ; class NmMessageListModelItem * NmMessageListModel::createTitleDividerItem(class NmMessageEnvelope *)
+ ?trUtf8@NmMessageListModel@@SA?AVQString@@PBD0H@Z @ 174 NONAME ; class QString NmMessageListModel::trUtf8(char const *, char const *, int)
+ ?trUtf8@NmDataManager@@SA?AVQString@@PBD0H@Z @ 175 NONAME ; class QString NmDataManager::trUtf8(char const *, char const *, int)
+ ?handleMessageEvent@NmUiEngine@@AAEXW4NmMessageEvent@@ABVNmId@@ABV?$QList@VNmId@@@@1@Z @ 176 NONAME ; void NmUiEngine::handleMessageEvent(enum NmMessageEvent, class NmId const &, class QList<class NmId> const &, class NmId const &)
+ ?tr@NmBaseClientPlugin@@SA?AVQString@@PBD0@Z @ 177 NONAME ; class QString NmBaseClientPlugin::tr(char const *, char const *)
+ ??1NmAddAttachmentsOperation@@MAE@XZ @ 178 NONAME ; NmAddAttachmentsOperation::~NmAddAttachmentsOperation(void)
+ ??0NmMailboxMetaData@@QAE@XZ @ 179 NONAME ; NmMailboxMetaData::NmMailboxMetaData(void)
+ ?setName@NmMailboxMetaData@@QAEXABVQString@@@Z @ 180 NONAME ; void NmMailboxMetaData::setName(class QString const &)
+ ?trUtf8@NmCheckOutboxOperation@@SA?AVQString@@PBD0@Z @ 181 NONAME ; class QString NmCheckOutboxOperation::trUtf8(char const *, char const *)
+ ?qt_metacall@NmMailboxListModel@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 182 NONAME ; int NmMailboxListModel::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ??0NmBaseClientPlugin@@QAE@XZ @ 183 NONAME ; NmBaseClientPlugin::NmBaseClientPlugin(void)
+ ?mPluginLoaderArray@NmDataPluginFactory@@0V?$QList@PAVQPluginLoader@@@@A @ 184 NONAME ; class QList<class QPluginLoader *> NmDataPluginFactory::mPluginLoaderArray
+ ?setDividers@NmMessageListModel@@QAEX_N@Z @ 185 NONAME ; void NmMessageListModel::setDividers(bool)
+ ?handleRequest@NmBaseClientPlugin@@IAEXW4NmActionResponseCommand@@ABVNmActionRequest@@@Z @ 186 NONAME ; void NmBaseClientPlugin::handleRequest(enum NmActionResponseCommand, class NmActionRequest const &)
+ ?trUtf8@NmUiEngine@@SA?AVQString@@PBD0H@Z @ 187 NONAME ; class QString NmUiEngine::trUtf8(char const *, char const *, int)
+ ?mailboxPropertyChanged@NmBaseClientPlugin@@AAEXABVNmId@@VQVariant@@1@Z @ 188 NONAME ; void NmBaseClientPlugin::mailboxPropertyChanged(class NmId const &, class QVariant, class QVariant)
+ ?tr@NmOperation@@SA?AVQString@@PBD0@Z @ 189 NONAME ; class QString NmOperation::tr(char const *, char const *)
+ ?metaObject@NmUiEngine@@UBEPBUQMetaObject@@XZ @ 190 NONAME ; struct QMetaObject const * NmUiEngine::metaObject(void) const
+ ?name@NmMailboxMetaData@@QBE?AVQString@@XZ @ 191 NONAME ; class QString NmMailboxMetaData::name(void) const
+ ?createNewMailViewerToolBar@NmBaseClientPlugin@@QAEXXZ @ 192 NONAME ; void NmBaseClientPlugin::createNewMailViewerToolBar(void)
+ ?operationCancelled@NmOperation@@IAEXXZ @ 193 NONAME ; void NmOperation::operationCancelled(void)
+ ??1NmFolderMetaData@@UAE@XZ @ 194 NONAME ; NmFolderMetaData::~NmFolderMetaData(void)
+ ?qt_metacast@NmMessageCreationOperation@@UAEPAXPBD@Z @ 195 NONAME ; void * NmMessageCreationOperation::qt_metacast(char const *)
+ ??_ENmCheckOutboxOperation@@UAE@I@Z @ 196 NONAME ; NmCheckOutboxOperation::~NmCheckOutboxOperation(unsigned int)
+ ?createEditorViewCommands@NmBaseClientPlugin@@AAEXABVNmActionRequest@@AAV?$QList@PAVNmAction@@@@@Z @ 197 NONAME ; void NmBaseClientPlugin::createEditorViewCommands(class NmActionRequest const &, class QList<class NmAction *> &)
+ ?getStaticMetaObject@NmCheckOutboxOperation@@SAABUQMetaObject@@XZ @ 198 NONAME ; struct QMetaObject const & NmCheckOutboxOperation::getStaticMetaObject(void)
+ ?setPriorityHigh@NmBaseClientPlugin@@QAEXXZ @ 199 NONAME ; void NmBaseClientPlugin::setPriorityHigh(void)
+ ?getStandardFolderId@NmDataManager@@QAE?AVNmId@@ABV2@W4NmFolderType@@@Z @ 200 NONAME ; class NmId NmDataManager::getStandardFolderId(class NmId const &, enum NmFolderType)
+ ?handleSyncStateEvent@NmUiEngine@@QAEXW4NmSyncState@@ABVNmOperationCompletionEvent@@@Z @ 201 NONAME ; void NmUiEngine::handleSyncStateEvent(enum NmSyncState, class NmOperationCompletionEvent const &)
+ ?tr@NmMessageListModel@@SA?AVQString@@PBD0H@Z @ 202 NONAME ; class QString NmMessageListModel::tr(char const *, char const *, int)
+ ??1NmBaseClientPlugin@@UAE@XZ @ 203 NONAME ; NmBaseClientPlugin::~NmBaseClientPlugin(void)
+ ?goOffline@NmUiEngine@@QAEHABVNmId@@@Z @ 204 NONAME ; int NmUiEngine::goOffline(class NmId const &)
+ ?changed@NmMessageListModel@@AAE_NABVNmMessageEnvelope@@0@Z @ 205 NONAME ; bool NmMessageListModel::changed(class NmMessageEnvelope const &, class NmMessageEnvelope const &)
+ ?staticMetaObject@NmDataManager@@2UQMetaObject@@B @ 206 NONAME ; struct QMetaObject const NmDataManager::staticMetaObject
+ ?folderById@NmDataManager@@QAEPAVNmFolderMetaData@@ABVNmId@@0@Z @ 207 NONAME ; class NmFolderMetaData * NmDataManager::folderById(class NmId const &, class NmId const &)
+ ?itemFromModel@NmMessageListModel@@AAEPAVNmMessageListModelItem@@ABVNmId@@@Z @ 208 NONAME ; class NmMessageListModelItem * NmMessageListModel::itemFromModel(class NmId const &)
+ ?fetchMessagePart@NmUiEngine@@QAE?AV?$QPointer@VNmOperation@@@@ABVNmId@@000@Z @ 209 NONAME ; class QPointer<class NmOperation> NmUiEngine::fetchMessagePart(class NmId const &, class NmId const &, class NmId const &, class NmId const &)
+ ?openAttachment@NmBaseClientPlugin@@QAEXXZ @ 210 NONAME ; void NmBaseClientPlugin::openAttachment(void)
+ ?qt_metacall@NmOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 211 NONAME ; int NmOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ??1NmStoreEnvelopesOperation@@MAE@XZ @ 212 NONAME ; NmStoreEnvelopesOperation::~NmStoreEnvelopesOperation(void)
+ ?address@NmMailboxMetaData@@QBE?AVQString@@XZ @ 213 NONAME ; class QString NmMailboxMetaData::address(void) const
+ ?setIconId@NmMailboxMetaData@@QAEXABVNmId@@@Z @ 214 NONAME ; void NmMailboxMetaData::setIconId(class NmId const &)
+ ?metaObject@NmDataManager@@UBEPBUQMetaObject@@XZ @ 215 NONAME ; struct QMetaObject const * NmDataManager::metaObject(void) const
+ ??1NmMailboxListModel@@UAE@XZ @ 216 NONAME ; NmMailboxListModel::~NmMailboxListModel(void)
+ ?interfaceInstance@NmDataPluginFactory@@QAEPAVNmDataPluginInterface@@VNmId@@@Z @ 217 NONAME ; class NmDataPluginInterface * NmDataPluginFactory::interfaceInstance(class NmId)
+ ?goOnline@NmUiEngine@@QAEHABVNmId@@@Z @ 218 NONAME ; int NmUiEngine::goOnline(class NmId const &)
+ ??0NmMessageCreationOperation@@QAE@XZ @ 219 NONAME ; NmMessageCreationOperation::NmMessageCreationOperation(void)
+ ?tr@NmAddAttachmentsOperation@@SA?AVQString@@PBD0@Z @ 220 NONAME ; class QString NmAddAttachmentsOperation::tr(char const *, char const *)
+ ?handleMessageEvent@NmMessageListModel@@QAEXW4NmMessageEvent@@ABVNmId@@ABV?$QList@VNmId@@@@@Z @ 221 NONAME ; void NmMessageListModel::handleMessageEvent(enum NmMessageEvent, class NmId const &, class QList<class NmId> const &)
+ ?setExpanded@NmMessageListModelItem@@QAEX_N@Z @ 222 NONAME ; void NmMessageListModelItem::setExpanded(bool)
+ ?trUtf8@NmAddAttachmentsOperation@@SA?AVQString@@PBD0H@Z @ 223 NONAME ; class QString NmAddAttachmentsOperation::trUtf8(char const *, char const *, int)
+ ?messagesBelongUnderSameDivider@NmMessageListModel@@ABE_NPBVNmMessageEnvelope@@0@Z @ 224 NONAME ; bool NmMessageListModel::messagesBelongUnderSameDivider(class NmMessageEnvelope const *, class NmMessageEnvelope const *) const
+ ?qt_metacast@NmBaseClientPlugin@@UAEPAXPBD@Z @ 225 NONAME ; void * NmBaseClientPlugin::qt_metacast(char const *)
+ ?staticMetaObject@NmUiEngine@@2UQMetaObject@@B @ 226 NONAME ; struct QMetaObject const NmUiEngine::staticMetaObject
+ ?tr@NmCheckOutboxOperation@@SA?AVQString@@PBD0H@Z @ 227 NONAME ; class QString NmCheckOutboxOperation::tr(char const *, char const *, int)
+ ?operationProgressChanged@NmOperation@@IAEXH@Z @ 228 NONAME ; void NmOperation::operationProgressChanged(int)
+ ??0NmFolderMetaData@@QAE@XZ @ 229 NONAME ; NmFolderMetaData::NmFolderMetaData(void)
+ ?refresh@NmBaseClientPlugin@@QAEXXZ @ 230 NONAME ; void NmBaseClientPlugin::refresh(void)
+ ?setEnvelope@NmMessageListModelItem@@QAEXABVNmMessageEnvelope@@@Z @ 231 NONAME ; void NmMessageListModelItem::setEnvelope(class NmMessageEnvelope const &)
+ ?qt_metacast@NmCheckOutboxOperation@@UAEPAXPBD@Z @ 232 NONAME ; void * NmCheckOutboxOperation::qt_metacast(char const *)
+ ?currentMailboxId@NmMessageListModel@@QAE?AVNmId@@XZ @ 233 NONAME ; class NmId NmMessageListModel::currentMailboxId(void)
+ ??_ENmMessageListModelItem@@UAE@I@Z @ 234 NONAME ; NmMessageListModelItem::~NmMessageListModelItem(unsigned int)
+ ?tr@NmDataManager@@SA?AVQString@@PBD0H@Z @ 235 NONAME ; class QString NmDataManager::tr(char const *, char const *, int)
+ ?staticMetaObject@NmBaseClientPlugin@@2UQMetaObject@@B @ 236 NONAME ; struct QMetaObject const NmBaseClientPlugin::staticMetaObject
+ ?trUtf8@NmOperation@@SA?AVQString@@PBD0@Z @ 237 NONAME ; class QString NmOperation::trUtf8(char const *, char const *)
+ ?operationPartCompleted@NmAddAttachmentsOperation@@IAEXABVQString@@ABVNmId@@H@Z @ 238 NONAME ; void NmAddAttachmentsOperation::operationPartCompleted(class QString const &, class NmId const &, int)
+ ?listMailboxes@NmDataManager@@QAEXAAV?$QList@PAVNmMailbox@@@@@Z @ 239 NONAME ; void NmDataManager::listMailboxes(class QList<class NmMailbox *> &)
+ ?trUtf8@NmOperation@@SA?AVQString@@PBD0H@Z @ 240 NONAME ; class QString NmOperation::trUtf8(char const *, char const *, int)
+ ?trUtf8@NmAddAttachmentsOperation@@SA?AVQString@@PBD0@Z @ 241 NONAME ; class QString NmAddAttachmentsOperation::trUtf8(char const *, char const *)
+ ?goOffline@NmBaseClientPlugin@@AAEXABVNmId@@@Z @ 242 NONAME ; void NmBaseClientPlugin::goOffline(class NmId const &)
+ ?qt_metacall@NmDataManager@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 243 NONAME ; int NmDataManager::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?trUtf8@NmMailboxListModel@@SA?AVQString@@PBD0H@Z @ 244 NONAME ; class QString NmMailboxListModel::trUtf8(char const *, char const *, int)
+ ?handleCompletedSendOperation@NmUiEngine@@QAEXXZ @ 245 NONAME ; void NmUiEngine::handleCompletedSendOperation(void)
+ ??1NmCheckOutboxOperation@@MAE@XZ @ 246 NONAME ; NmCheckOutboxOperation::~NmCheckOutboxOperation(void)
+ ?messagePartFile@NmUiEngine@@QAE?AVXQSharableFile@@ABVNmId@@000@Z @ 247 NONAME ; class XQSharableFile NmUiEngine::messagePartFile(class NmId const &, class NmId const &, class NmId const &, class NmId const &)
+ ?doCancelOperation@NmOperation@@MAEXXZ @ 248 NONAME ; void NmOperation::doCancelOperation(void)
+ ?metaObject@NmCheckOutboxOperation@@UBEPBUQMetaObject@@XZ @ 249 NONAME ; struct QMetaObject const * NmCheckOutboxOperation::metaObject(void) const
+ ?id@NmFolderMetaData@@QBE?AVNmId@@XZ @ 250 NONAME ; class NmId NmFolderMetaData::id(void) const
+ ??0NmMessageListModel@@QAE@AAVNmDataManager@@PAVQObject@@@Z @ 251 NONAME ; NmMessageListModel::NmMessageListModel(class NmDataManager &, class QObject *)
+ ?staticMetaObject@NmMailboxListModel@@2UQMetaObject@@B @ 252 NONAME ; struct QMetaObject const NmMailboxListModel::staticMetaObject
+ ?deleteMessages@NmUiEngine@@QAEHABVNmId@@0ABV?$QList@VNmId@@@@@Z @ 253 NONAME ; int NmUiEngine::deleteMessages(class NmId const &, class NmId const &, class QList<class NmId> const &)
+ ?operationCompleted@NmOperation@@IAEXH@Z @ 254 NONAME ; void NmOperation::operationCompleted(int)
+ ?setName@NmFolderMetaData@@QAEXABVQString@@@Z @ 255 NONAME ; void NmFolderMetaData::setName(class QString const &)
+ ?folder@NmDataManager@@QAEPAVNmFolder@@ABVNmId@@0@Z @ 256 NONAME ; class NmFolder * NmDataManager::folder(class NmId const &, class NmId const &)
+ ?createMessageItem@NmMessageListModel@@AAEPAVNmMessageListModelItem@@PAVNmMessageEnvelope@@@Z @ 257 NONAME ; class NmMessageListModelItem * NmMessageListModel::createMessageItem(class NmMessageEnvelope *)
+ ?addPreliminaryOperation@NmOperation@@QAEXPAV1@@Z @ 258 NONAME ; void NmOperation::addPreliminaryOperation(class NmOperation *)
+ ??_ENmDataManager@@UAE@I@Z @ 259 NONAME ; NmDataManager::~NmDataManager(unsigned int)
+ ?runAsyncOperation@NmOperation@@MAEXXZ @ 260 NONAME ; void NmOperation::runAsyncOperation(void)
+ ??0NmMailboxListModel@@QAE@AAVNmDataManager@@PAVQObject@@@Z @ 261 NONAME ; NmMailboxListModel::NmMailboxListModel(class NmDataManager &, class QObject *)
+ ?addAttachments@NmUiEngine@@QAE?AV?$QPointer@VNmAddAttachmentsOperation@@@@ABVNmMessage@@ABV?$QList@VQString@@@@@Z @ 262 NONAME ; class QPointer<class NmAddAttachmentsOperation> NmUiEngine::addAttachments(class NmMessage const &, class QList<class QString> const &)
+ ?connectionEvent@NmUiEngine@@IAEXW4NmConnectState@@ABVNmId@@@Z @ 263 NONAME ; void NmUiEngine::connectionEvent(enum NmConnectState, class NmId const &)
+ ?removeMessage@NmUiEngine@@QAEHABVNmId@@00@Z @ 264 NONAME ; int NmUiEngine::removeMessage(class NmId const &, class NmId const &, class NmId const &)
+ ?listFolders@NmDataManager@@QAEXVNmId@@AAV?$QList@PAVNmFolder@@@@@Z @ 265 NONAME ; void NmDataManager::listFolders(class NmId, class QList<class NmFolder *> &)
+ ?contentToMessagePart@NmUiEngine@@QAEHABVNmId@@00AAVNmMessagePart@@@Z @ 266 NONAME ; int NmUiEngine::contentToMessagePart(class NmId const &, class NmId const &, class NmId const &, class NmMessagePart &)
+ ??_ENmStoreEnvelopesOperation@@UAE@I@Z @ 267 NONAME ; NmStoreEnvelopesOperation::~NmStoreEnvelopesOperation(unsigned int)
+ ?itemType@NmMessageListModelItem@@QBE?AW4NmMessageItemType@1@XZ @ 268 NONAME ; enum NmMessageListModelItem::NmMessageItemType NmMessageListModelItem::itemType(void) const
+ ?setNewParam@NmMessageListModel@@IAEXPAVNmUiStartParam@@@Z @ 269 NONAME ; void NmMessageListModel::setNewParam(class NmUiStartParam *)
+ ??0NmMessageSendingOperation@@QAE@XZ @ 270 NONAME ; NmMessageSendingOperation::NmMessageSendingOperation(void)
+ ?qt_metacall@NmCheckOutboxOperation@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 271 NONAME ; int NmCheckOutboxOperation::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?doUpdateOperationProgress@NmOperation@@MAEXXZ @ 272 NONAME ; void NmOperation::doUpdateOperationProgress(void)
+ ?folderTypeById@NmDataManager@@QAE?AW4NmFolderType@@VNmId@@0@Z @ 273 NONAME ; enum NmFolderType NmDataManager::folderTypeById(class NmId, class NmId)
+ ??0NmAddAttachmentsOperation@@QAE@XZ @ 274 NONAME ; NmAddAttachmentsOperation::NmAddAttachmentsOperation(void)
+ ?messageBeingSent@NmUiEngine@@QBEPBVNmMessage@@XZ @ 275 NONAME ; class NmMessage const * NmUiEngine::messageBeingSent(void) const
+ ?trUtf8@NmStoreEnvelopesOperation@@SA?AVQString@@PBD0@Z @ 276 NONAME ; class QString NmStoreEnvelopesOperation::trUtf8(char const *, char const *)
+ ??_ENmMessageCreationOperation@@UAE@I@Z @ 277 NONAME ; NmMessageCreationOperation::~NmMessageCreationOperation(unsigned int)
+ ?freeIcons@NmIcons@@SAXXZ @ 278 NONAME ; void NmIcons::freeIcons(void)
+ ?matchFound@NmUiEngine@@IAEXABVNmId@@0@Z @ 279 NONAME ; void NmUiEngine::matchFound(class NmId const &, class NmId const &)
+ ?data@NmMessageListModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 280 NONAME ; class QVariant NmMessageListModel::data(class QModelIndex const &, int) const
+ ?metaObject@NmStoreEnvelopesOperation@@UBEPBUQMetaObject@@XZ @ 281 NONAME ; struct QMetaObject const * NmStoreEnvelopesOperation::metaObject(void) const
+ ?openMessage@NmBaseClientPlugin@@QAEXXZ @ 282 NONAME ; void NmBaseClientPlugin::openMessage(void)
+ ?tr@NmUiEngine@@SA?AVQString@@PBD0H@Z @ 283 NONAME ; class QString NmUiEngine::tr(char const *, char const *, int)
+ ?parent@NmFolderListModel@@UBE?AVQModelIndex@@ABV2@@Z @ 284 NONAME ; class QModelIndex NmFolderListModel::parent(class QModelIndex const &) const
+ ?qt_metacast@NmDataManager@@UAEPAXPBD@Z @ 285 NONAME ; void * NmDataManager::qt_metacast(char const *)
+ ?qt_metacast@NmMessageListModel@@UAEPAXPBD@Z @ 286 NONAME ; void * NmMessageListModel::qt_metacast(char const *)
+ ?expanded@NmMessageListModelItem@@QBE_NXZ @ 287 NONAME ; bool NmMessageListModelItem::expanded(void) const
+ ?tr@NmMailboxListModel@@SA?AVQString@@PBD0@Z @ 288 NONAME ; class QString NmMailboxListModel::tr(char const *, char const *)
+ ?replyAllMail@NmBaseClientPlugin@@QAEXXZ @ 289 NONAME ; void NmBaseClientPlugin::replyAllMail(void)
+ ?getStaticMetaObject@NmUiEngine@@SAABUQMetaObject@@XZ @ 290 NONAME ; struct QMetaObject const & NmUiEngine::getStaticMetaObject(void)
+ ?listMailboxIds@NmDataManager@@QAEXAAV?$QList@VNmId@@@@@Z @ 291 NONAME ; void NmDataManager::listMailboxIds(class QList<class NmId> &)
+ ?mailboxListChanged@NmBaseClientPlugin@@AAEXABVNmId@@W4MailboxEventType@NmSettings@@@Z @ 292 NONAME ; void NmBaseClientPlugin::mailboxListChanged(class NmId const &, enum NmSettings::MailboxEventType)
+ ?metaObject@NmBaseClientPlugin@@UBEPBUQMetaObject@@XZ @ 293 NONAME ; struct QMetaObject const * NmBaseClientPlugin::metaObject(void) const
+ ?refresh@NmFolderListModel@@QAEXAAV?$QList@PAVNmFolder@@@@@Z @ 294 NONAME ; void NmFolderListModel::refresh(class QList<class NmFolder *> &)
+ ?sendMail@NmBaseClientPlugin@@QAEXXZ @ 295 NONAME ; void NmBaseClientPlugin::sendMail(void)
+ ?tr@NmMessageCreationOperation@@SA?AVQString@@PBD0H@Z @ 296 NONAME ; class QString NmMessageCreationOperation::tr(char const *, char const *, int)
+ ?listMessages@NmDataManager@@QAEXABVNmId@@0AAV?$QList@PAVNmMessageEnvelope@@@@@Z @ 297 NONAME ; void NmDataManager::listMessages(class NmId const &, class NmId const &, class QList<class NmMessageEnvelope *> &)
+ ?message@NmUiEngine@@QAEPAVNmMessage@@ABVNmId@@00@Z @ 298 NONAME ; class NmMessage * NmUiEngine::message(class NmId const &, class NmId const &, class NmId const &)
+ ?setEnvelopeProperties@NmMessageListModel@@QAEXW4NmEnvelopeProperties@@ABV?$QList@VNmId@@@@@Z @ 299 NONAME ; void NmMessageListModel::setEnvelopeProperties(enum NmEnvelopeProperties, class QList<class NmId> const &)
+ ?metaObject@NmMailboxListModel@@UBEPBUQMetaObject@@XZ @ 300 NONAME ; struct QMetaObject const * NmMailboxListModel::metaObject(void) const
+ ?tr@NmUiEngine@@SA?AVQString@@PBD0@Z @ 301 NONAME ; class QString NmUiEngine::tr(char const *, char const *)
+ ?staticMetaObject@NmOperation@@2UQMetaObject@@B @ 302 NONAME ; struct QMetaObject const NmOperation::staticMetaObject
+ ?refreshMailboxListModel@NmUiEngine@@QAEXXZ @ 303 NONAME ; void NmUiEngine::refreshMailboxListModel(void)
+ ?trUtf8@NmCheckOutboxOperation@@SA?AVQString@@PBD0H@Z @ 304 NONAME ; class QString NmCheckOutboxOperation::trUtf8(char const *, char const *, int)
+ ?goOnline@NmBaseClientPlugin@@AAEXABVNmId@@@Z @ 305 NONAME ; void NmBaseClientPlugin::goOnline(class NmId const &)
+ ?standardFolderId@NmUiEngine@@QAE?AVNmId@@ABV2@W4NmFolderType@@@Z @ 306 NONAME ; class NmId NmUiEngine::standardFolderId(class NmId const &, enum NmFolderType)
+ ??_ENmMessageSendingOperation@@UAE@I@Z @ 307 NONAME ; NmMessageSendingOperation::~NmMessageSendingOperation(unsigned int)
+ ?pluginInstance@NmDataPluginFactory@@QAEPAVQObject@@VNmId@@@Z @ 308 NONAME ; class QObject * NmDataPluginFactory::pluginInstance(class NmId)
+ ?mInstance@NmDataPluginFactory@@0PAV1@A @ 309 NONAME ; class NmDataPluginFactory * NmDataPluginFactory::mInstance
+ ?mailboxById@NmUiEngine@@QAEPAVNmMailboxMetaData@@ABVNmId@@@Z @ 310 NONAME ; class NmMailboxMetaData * NmUiEngine::mailboxById(class NmId const &)
+ ?trUtf8@NmDataManager@@SA?AVQString@@PBD0@Z @ 311 NONAME ; class QString NmDataManager::trUtf8(char const *, char const *)
+ ??_ENmMailboxListModel@@UAE@I@Z @ 312 NONAME ; NmMailboxListModel::~NmMailboxListModel(unsigned int)
+ ?getStaticMetaObject@NmStoreEnvelopesOperation@@SAABUQMetaObject@@XZ @ 313 NONAME ; struct QMetaObject const & NmStoreEnvelopesOperation::getStaticMetaObject(void)
+ ?saveMessage@NmUiEngine@@QAEHABVNmMessage@@@Z @ 314 NONAME ; int NmUiEngine::saveMessage(class NmMessage const &)
+ ?getStaticMetaObject@NmDataManager@@SAABUQMetaObject@@XZ @ 315 NONAME ; struct QMetaObject const & NmDataManager::getStaticMetaObject(void)
+ ?applicationStateInterfaceInstance@NmDataPluginFactory@@QAEPAVNmApplicationStateInterface@@VNmId@@@Z @ 316 NONAME ; class NmApplicationStateInterface * NmDataPluginFactory::applicationStateInterfaceInstance(class NmId)
+ ?applicationStateInterfaceInstance@NmDataPluginFactory@@AAEPAVNmApplicationStateInterface@@PAVQObject@@@Z @ 317 NONAME ; class NmApplicationStateInterface * NmDataPluginFactory::applicationStateInterfaceInstance(class QObject *)
+ ?updateActiveFolder@NmUiEngine@@QAEXABVNmId@@0@Z @ 318 NONAME ; void NmUiEngine::updateActiveFolder(class NmId const &, class NmId const &)
+ ?fetchMessageParts@NmUiEngine@@QAE?AV?$QPointer@VNmOperation@@@@ABVNmId@@00ABV?$QList@VNmId@@@@@Z @ 319 NONAME ; class QPointer<class NmOperation> NmUiEngine::fetchMessageParts(class NmId const &, class NmId const &, class NmId const &, class QList<class NmId> const &)
+ ?setIgnoreFolderIds@NmMessageListModel@@QAEX_N@Z @ 320 NONAME ; void NmMessageListModel::setIgnoreFolderIds(bool)
--- a/emailuis/nmailuiengine/eabi/nmailuiengineu.def Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/eabi/nmailuiengineu.def Fri May 14 04:41:45 2010 +0300
@@ -1,5 +1,5 @@
EXPORTS
- _ZN10NmUiEngine10matchFoundERK4NmId @ 1 NONAME
+ _ZN10NmUiEngine10matchFoundERK4NmIdS2_ @ 1 NONAME
_ZN10NmUiEngine11checkOutboxERK4NmId @ 2 NONAME
_ZN10NmUiEngine11mailboxByIdERK4NmId @ 3 NONAME
_ZN10NmUiEngine11qt_metacallEN11QMetaObject4CallEiPPv @ 4 NONAME
@@ -12,322 +12,313 @@
_ZN10NmUiEngine13removeMessageERK4NmIdS2_S2_ @ 11 NONAME
_ZN10NmUiEngine14addAttachmentsERK9NmMessageRK5QListI7QStringE @ 12 NONAME
_ZN10NmUiEngine14deleteMessagesERK4NmIdS2_RK5QListIS0_E @ 13 NONAME
- _ZN10NmUiEngine14mailboxDeletedERK4NmId @ 14 NONAME
- _ZN10NmUiEngine14messageDeletedERK4NmIdS2_S2_ @ 15 NONAME
- _ZN10NmUiEngine14refreshMailboxERK4NmId @ 16 NONAME
- _ZN10NmUiEngine14searchCompleteEv @ 17 NONAME
- _ZN10NmUiEngine14syncStateEventE11NmSyncStateRK4NmId @ 18 NONAME
- _ZN10NmUiEngine15connectionEventE14NmConnectStateRK4NmId @ 19 NONAME
- _ZN10NmUiEngine15connectionStateERK4NmId @ 20 NONAME
- _ZN10NmUiEngine15mReferenceCountE @ 21 NONAME DATA 4
- _ZN10NmUiEngine15messagePartFileERK4NmIdS2_S2_S2_ @ 22 NONAME
- _ZN10NmUiEngine15releaseInstanceERPS_ @ 23 NONAME
- _ZN10NmUiEngine16createNewMessageERK4NmId @ 24 NONAME
- _ZN10NmUiEngine16fetchMessagePartERK4NmIdS2_S2_S2_ @ 25 NONAME
- _ZN10NmUiEngine16mailboxListModelEv @ 26 NONAME
- _ZN10NmUiEngine16messageListModelERK4NmIdS2_ @ 27 NONAME
- _ZN10NmUiEngine16removeAttachmentERK9NmMessageRK4NmId @ 28 NONAME
- _ZN10NmUiEngine16standardFolderIdERK4NmId12NmFolderType @ 29 NONAME
- _ZN10NmUiEngine16staticMetaObjectE @ 30 NONAME DATA 16
- _ZN10NmUiEngine18createReplyMessageERK4NmIdS2_b @ 31 NONAME
- _ZN10NmUiEngine18handleMailboxEventE14NmMailboxEventRK5QListI4NmIdE @ 32 NONAME
- _ZN10NmUiEngine18handleMessageEventE14NmMessageEventRK4NmIdRK5QListIS1_ES3_ @ 33 NONAME
- _ZN10NmUiEngine18operationCompletedERK26NmOperationCompletionEvent @ 34 NONAME
- _ZN10NmUiEngine19getStaticMetaObjectEv @ 35 NONAME
- _ZN10NmUiEngine20contentToMessagePartERK4NmIdS2_S2_R13NmMessagePart @ 36 NONAME
- _ZN10NmUiEngine20createForwardMessageERK4NmIdS2_ @ 37 NONAME
- _ZN10NmUiEngine20handleSyncStateEventE11NmSyncStateRK26NmOperationCompletionEvent @ 38 NONAME
- _ZN10NmUiEngine22messageSearchListModelEP18QAbstractItemModel @ 39 NONAME
- _ZN10NmUiEngine22sendOperationCompletedEv @ 40 NONAME
- _ZN10NmUiEngine23refreshMailboxListModelEv @ 41 NONAME
- _ZN10NmUiEngine28handleCompletedSendOperationEv @ 42 NONAME
- _ZN10NmUiEngine6searchERK4NmIdRK11QStringList @ 43 NONAME
- _ZN10NmUiEngine7messageERK4NmIdS2_S2_ @ 44 NONAME
- _ZN10NmUiEngine8goOnlineERK4NmId @ 45 NONAME
- _ZN10NmUiEngine8instanceEv @ 46 NONAME
- _ZN10NmUiEngine9goOfflineERK4NmId @ 47 NONAME
- _ZN10NmUiEngine9mInstanceE @ 48 NONAME DATA 4
- _ZN10NmUiEngine9syncStateERK4NmId @ 49 NONAME
- _ZN10NmUiEngineC1Ev @ 50 NONAME
- _ZN10NmUiEngineC2Ev @ 51 NONAME
- _ZN10NmUiEngineD0Ev @ 52 NONAME
- _ZN10NmUiEngineD1Ev @ 53 NONAME
- _ZN10NmUiEngineD2Ev @ 54 NONAME
- _ZN11NmOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 55 NONAME
- _ZN11NmOperation11qt_metacastEPKc @ 56 NONAME
- _ZN11NmOperation15cancelOperationEv @ 57 NONAME
- _ZN11NmOperation15deleteOperationEv @ 58 NONAME
- _ZN11NmOperation16staticMetaObjectE @ 59 NONAME DATA 16
- _ZN11NmOperation17completeOperationEi @ 60 NONAME
- _ZN11NmOperation17doCancelOperationEv @ 61 NONAME
- _ZN11NmOperation17runAsyncOperationEv @ 62 NONAME
- _ZN11NmOperation18operationCancelledEv @ 63 NONAME
- _ZN11NmOperation18operationCompletedEi @ 64 NONAME
- _ZN11NmOperation19doCompleteOperationEv @ 65 NONAME
- _ZN11NmOperation19getStaticMetaObjectEv @ 66 NONAME
- _ZN11NmOperation23addPreliminaryOperationEPS_ @ 67 NONAME
- _ZN11NmOperation23updateOperationProgressEi @ 68 NONAME
- _ZN11NmOperation24operationProgressChangedEi @ 69 NONAME
- _ZN11NmOperation25doUpdateOperationProgressEv @ 70 NONAME
- _ZN11NmOperation34handlePreliminaryOperationFinishedEv @ 71 NONAME
- _ZN11NmOperationC2Ev @ 72 NONAME
- _ZN11NmOperationD0Ev @ 73 NONAME
- _ZN11NmOperationD1Ev @ 74 NONAME
- _ZN11NmOperationD2Ev @ 75 NONAME
- _ZN13NmDataManager10folderByIdERK4NmIdS2_ @ 76 NONAME
- _ZN13NmDataManager11listFoldersE4NmIdR5QListIP8NmFolderE @ 77 NONAME
- _ZN13NmDataManager11mailboxByIdERK4NmId @ 78 NONAME
- _ZN13NmDataManager11qt_metacallEN11QMetaObject4CallEiPPv @ 79 NONAME
- _ZN13NmDataManager11qt_metacastEPKc @ 80 NONAME
- _ZN13NmDataManager12envelopeByIdERK4NmIdS2_S2_ @ 81 NONAME
- _ZN13NmDataManager12listMessagesERK4NmIdS2_R5QListIP17NmMessageEnvelopeE @ 82 NONAME
- _ZN13NmDataManager13listMailboxesER5QListIP9NmMailboxE @ 83 NONAME
- _ZN13NmDataManager14listMailboxIdsER5QListI4NmIdE @ 84 NONAME
- _ZN13NmDataManager16staticMetaObjectE @ 85 NONAME DATA 16
- _ZN13NmDataManager19getStandardFolderIdERK4NmId12NmFolderType @ 86 NONAME
- _ZN13NmDataManager19getStaticMetaObjectEv @ 87 NONAME
- _ZN13NmDataManager20contentToMessagePartERK4NmIdS2_S2_R13NmMessagePart @ 88 NONAME
- _ZN13NmDataManager6folderERK4NmIdS2_ @ 89 NONAME
- _ZN13NmDataManager7mailboxERK4NmId @ 90 NONAME
- _ZN13NmDataManager7messageERK4NmIdS2_S2_ @ 91 NONAME
- _ZN13NmDataManagerC1Ev @ 92 NONAME
- _ZN13NmDataManagerC2Ev @ 93 NONAME
- _ZN13NmDataManagerD0Ev @ 94 NONAME
- _ZN13NmDataManagerD1Ev @ 95 NONAME
- _ZN13NmDataManagerD2Ev @ 96 NONAME
- _ZN16NmFolderMetaData5setIdERK4NmId @ 97 NONAME
- _ZN16NmFolderMetaData7setNameERK7QString @ 98 NONAME
- _ZN16NmFolderMetaDataC1Ev @ 99 NONAME
- _ZN16NmFolderMetaDataC2Ev @ 100 NONAME
- _ZN16NmFolderMetaDataD0Ev @ 101 NONAME
- _ZN16NmFolderMetaDataD1Ev @ 102 NONAME
- _ZN16NmFolderMetaDataD2Ev @ 103 NONAME
- _ZN17NmFolderListModel7refreshER5QListIP8NmFolderE @ 104 NONAME
- _ZN17NmFolderListModelC1ER13NmDataManagerP7QObject @ 105 NONAME
- _ZN17NmFolderListModelC2ER13NmDataManagerP7QObject @ 106 NONAME
- _ZN17NmFolderListModelD0Ev @ 107 NONAME
- _ZN17NmFolderListModelD1Ev @ 108 NONAME
- _ZN17NmFolderListModelD2Ev @ 109 NONAME
- _ZN17NmMailboxMetaData5setIdERK4NmId @ 110 NONAME
- _ZN17NmMailboxMetaData7setNameERK7QString @ 111 NONAME
- _ZN17NmMailboxMetaData9setIconIdERK4NmId @ 112 NONAME
- _ZN17NmMailboxMetaDataC1Ev @ 113 NONAME
- _ZN17NmMailboxMetaDataC2Ev @ 114 NONAME
- _ZN17NmMailboxMetaDataD0Ev @ 115 NONAME
- _ZN17NmMailboxMetaDataD1Ev @ 116 NONAME
- _ZN17NmMailboxMetaDataD2Ev @ 117 NONAME
- _ZN18NmBaseClientPlugin10getActionsERK15NmActionRequestR5QListIP8NmActionE @ 118 NONAME
- _ZN18NmBaseClientPlugin10markAsReadEv @ 119 NONAME
- _ZN18NmBaseClientPlugin11forwardMailEv @ 120 NONAME
- _ZN18NmBaseClientPlugin11openMessageEv @ 121 NONAME
- _ZN18NmBaseClientPlugin11qt_metacallEN11QMetaObject4CallEiPPv @ 122 NONAME
- _ZN18NmBaseClientPlugin11qt_metacastEPKc @ 123 NONAME
- _ZN18NmBaseClientPlugin12markAsUnreadEv @ 124 NONAME
- _ZN18NmBaseClientPlugin12replyAllMailEv @ 125 NONAME
- _ZN18NmBaseClientPlugin13createNewMailEv @ 126 NONAME
- _ZN18NmBaseClientPlugin13deleteMessageEv @ 127 NONAME
- _ZN18NmBaseClientPlugin13handleRequestE23NmActionResponseCommandRK15NmActionRequest @ 128 NONAME
- _ZN18NmBaseClientPlugin14openAttachmentEv @ 129 NONAME
- _ZN18NmBaseClientPlugin14setPriorityLowEv @ 130 NONAME
- _ZN18NmBaseClientPlugin15setPriorityHighEv @ 131 NONAME
- _ZN18NmBaseClientPlugin16removeAttachmentEv @ 132 NONAME
- _ZN18NmBaseClientPlugin16staticMetaObjectE @ 133 NONAME DATA 16
- _ZN18NmBaseClientPlugin17setPriorityNormalEv @ 134 NONAME
- _ZN18NmBaseClientPlugin18mailboxListChangedERK4NmIdN10NmSettings16MailboxEventTypeE @ 135 NONAME
- _ZN18NmBaseClientPlugin19getStaticMetaObjectEv @ 136 NONAME
- _ZN18NmBaseClientPlugin22mailboxPropertyChangedERK4NmId8QVariantS3_ @ 137 NONAME
- _ZN18NmBaseClientPlugin22updateEnvelopePropertyE20NmEnvelopeProperties @ 138 NONAME
- _ZN18NmBaseClientPlugin24createEditorViewCommandsERK15NmActionRequestR5QListIP8NmActionE @ 139 NONAME
- _ZN18NmBaseClientPlugin24createViewerViewCommandsERK15NmActionRequestR5QListIP8NmActionE @ 140 NONAME
- _ZN18NmBaseClientPlugin25createMessageListCommandsERK15NmActionRequestR5QListIP8NmActionE @ 141 NONAME
- _ZN18NmBaseClientPlugin26createNewMailViewerToolBarEv @ 142 NONAME
- _ZN18NmBaseClientPlugin27deleteMessageFromViewerViewEv @ 143 NONAME
- _ZN18NmBaseClientPlugin6attachEv @ 144 NONAME
- _ZN18NmBaseClientPlugin6searchEv @ 145 NONAME
- _ZN18NmBaseClientPlugin7refreshEv @ 146 NONAME
- _ZN18NmBaseClientPlugin8goOnlineERK4NmId @ 147 NONAME
- _ZN18NmBaseClientPlugin8sendMailEv @ 148 NONAME
- _ZN18NmBaseClientPlugin8settingsEv @ 149 NONAME
- _ZN18NmBaseClientPlugin9goOfflineERK4NmId @ 150 NONAME
- _ZN18NmBaseClientPlugin9replyMailEv @ 151 NONAME
- _ZN18NmBaseClientPluginC2Ev @ 152 NONAME
- _ZN18NmBaseClientPluginD0Ev @ 153 NONAME
- _ZN18NmBaseClientPluginD1Ev @ 154 NONAME
- _ZN18NmBaseClientPluginD2Ev @ 155 NONAME
- _ZN18NmMailboxListModel11qt_metacallEN11QMetaObject4CallEiPPv @ 156 NONAME
- _ZN18NmMailboxListModel11qt_metacastEPKc @ 157 NONAME
- _ZN18NmMailboxListModel16refreshModelItemERK4NmIdb @ 158 NONAME
- _ZN18NmMailboxListModel16staticMetaObjectE @ 159 NONAME DATA 16
- _ZN18NmMailboxListModel17createMailboxItemEPK9NmMailbox @ 160 NONAME
- _ZN18NmMailboxListModel18handleMailboxEventE14NmMailboxEventRK5QListI4NmIdE @ 161 NONAME
- _ZN18NmMailboxListModel19getStaticMetaObjectEv @ 162 NONAME
- _ZN18NmMailboxListModel7refreshER5QListIP9NmMailboxE @ 163 NONAME
- _ZN18NmMailboxListModelC1ER13NmDataManagerP7QObject @ 164 NONAME
- _ZN18NmMailboxListModelC2ER13NmDataManagerP7QObject @ 165 NONAME
- _ZN18NmMailboxListModelD0Ev @ 166 NONAME
- _ZN18NmMailboxListModelD1Ev @ 167 NONAME
- _ZN18NmMailboxListModelD2Ev @ 168 NONAME
- _ZN18NmMessageListModel10removeItemEiR22NmMessageListModelItem @ 169 NONAME
- _ZN18NmMessageListModel11qt_metacallEN11QMetaObject4CallEiPPv @ 170 NONAME
- _ZN18NmMessageListModel11qt_metacastEPKc @ 171 NONAME
- _ZN18NmMessageListModel11setDividersEb @ 172 NONAME
- _ZN18NmMessageListModel11setNewParamEP14NmUiStartParam @ 173 NONAME
- _ZN18NmMessageListModel13itemFromModelERK4NmId @ 174 NONAME
- _ZN18NmMessageListModel14dividersActiveEv @ 175 NONAME
- _ZN18NmMessageListModel14updateEnvelopeE20NmEnvelopePropertiesRK4NmId @ 176 NONAME
- _ZN18NmMessageListModel16currentMailboxIdEv @ 177 NONAME
- _ZN18NmMessageListModel16staticMetaObjectE @ 178 NONAME DATA 16
- _ZN18NmMessageListModel17createMessageItemEP17NmMessageEnvelope @ 179 NONAME
- _ZN18NmMessageListModel18handleMessageEventE14NmMessageEventRK4NmIdRK5QListIS1_E @ 180 NONAME
- _ZN18NmMessageListModel19getStaticMetaObjectEv @ 181 NONAME
- _ZN18NmMessageListModel21dividerInsertionIndexEi @ 182 NONAME
- _ZN18NmMessageListModel21setEnvelopePropertiesE20NmEnvelopePropertiesRK5QListI4NmIdE @ 183 NONAME
- _ZN18NmMessageListModel21updateMessageEnvelopeERK4NmIdS2_S2_ @ 184 NONAME
- _ZN18NmMessageListModel22createTitleDividerItemEP17NmMessageEnvelope @ 185 NONAME
- _ZN18NmMessageListModel22insertDividerIntoModelEP17NmMessageEnvelopei @ 186 NONAME
- _ZN18NmMessageListModel22insertMessageIntoModelEP17NmMessageEnvelopeib @ 187 NONAME
- _ZN18NmMessageListModel22removeMessageFromModelERK4NmId @ 188 NONAME
- _ZN18NmMessageListModel25insertNewMessageIntoModelERK4NmIdS2_S2_ @ 189 NONAME
- _ZN18NmMessageListModel7changedERK17NmMessageEnvelopeS2_ @ 190 NONAME
- _ZN18NmMessageListModel7refreshE4NmIdS0_RK5QListIP17NmMessageEnvelopeE @ 191 NONAME
- _ZN18NmMessageListModelC1ER13NmDataManagerP7QObject @ 192 NONAME
- _ZN18NmMessageListModelC2ER13NmDataManagerP7QObject @ 193 NONAME
- _ZN18NmMessageListModelD0Ev @ 194 NONAME
- _ZN18NmMessageListModelD1Ev @ 195 NONAME
- _ZN18NmMessageListModelD2Ev @ 196 NONAME
- _ZN19NmDataPluginFactory10loadPluginERK4QDirRK7QString @ 197 NONAME
- _ZN19NmDataPluginFactory12mPluginArrayE @ 198 NONAME DATA 4
- _ZN19NmDataPluginFactory14pluginInstanceE4NmId @ 199 NONAME
- _ZN19NmDataPluginFactory15mReferenceCountE @ 200 NONAME DATA 4
- _ZN19NmDataPluginFactory15pluginInstancesEv @ 201 NONAME
- _ZN19NmDataPluginFactory15releaseInstanceERPS_ @ 202 NONAME
- _ZN19NmDataPluginFactory17interfaceInstanceE4NmId @ 203 NONAME
- _ZN19NmDataPluginFactory17interfaceInstanceEP7QObject @ 204 NONAME
- _ZN19NmDataPluginFactory18mPluginLoaderArrayE @ 205 NONAME DATA 4
- _ZN19NmDataPluginFactory8instanceEv @ 206 NONAME
- _ZN19NmDataPluginFactory9mInstanceE @ 207 NONAME DATA 4
- _ZN19NmDataPluginFactoryC1Ev @ 208 NONAME
- _ZN19NmDataPluginFactoryC2Ev @ 209 NONAME
- _ZN19NmDataPluginFactoryD0Ev @ 210 NONAME
- _ZN19NmDataPluginFactoryD1Ev @ 211 NONAME
- _ZN19NmDataPluginFactoryD2Ev @ 212 NONAME
- _ZN22NmCheckOutboxOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 213 NONAME
- _ZN22NmCheckOutboxOperation11qt_metacastEPKc @ 214 NONAME
- _ZN22NmCheckOutboxOperation16staticMetaObjectE @ 215 NONAME DATA 16
- _ZN22NmCheckOutboxOperation19getStaticMetaObjectEv @ 216 NONAME
- _ZN22NmMessageListModelItem11envelopePtrEv @ 217 NONAME
- _ZN22NmMessageListModelItem11setEnvelopeEP17NmMessageEnvelope @ 218 NONAME
- _ZN22NmMessageListModelItem11setEnvelopeERK17NmMessageEnvelope @ 219 NONAME
- _ZN22NmMessageListModelItem11setExpandedEb @ 220 NONAME
- _ZN22NmMessageListModelItem11setItemTypeENS_17NmMessageItemTypeE @ 221 NONAME
- _ZN22NmMessageListModelItem15setTitleDividerERK7QString @ 222 NONAME
- _ZN22NmMessageListModelItem19callEmitDataChangedEv @ 223 NONAME
- _ZN22NmMessageListModelItemC1Ev @ 224 NONAME
- _ZN22NmMessageListModelItemC2Ev @ 225 NONAME
- _ZN22NmMessageListModelItemD0Ev @ 226 NONAME
- _ZN22NmMessageListModelItemD1Ev @ 227 NONAME
- _ZN22NmMessageListModelItemD2Ev @ 228 NONAME
- _ZN24NmMessageSearchListModel11qt_metacallEN11QMetaObject4CallEiPPv @ 229 NONAME
- _ZN24NmMessageSearchListModel11qt_metacastEPKc @ 230 NONAME
- _ZN24NmMessageSearchListModel15addSearchResultERK4NmId @ 231 NONAME
- _ZN24NmMessageSearchListModel16staticMetaObjectE @ 232 NONAME DATA 16
- _ZN24NmMessageSearchListModel18clearSearchResultsEv @ 233 NONAME
- _ZN24NmMessageSearchListModel19getStaticMetaObjectEv @ 234 NONAME
- _ZN24NmMessageSearchListModelC1EP7QObject @ 235 NONAME
- _ZN24NmMessageSearchListModelC2EP7QObject @ 236 NONAME
- _ZN24NmMessageSearchListModelD0Ev @ 237 NONAME
- _ZN24NmMessageSearchListModelD1Ev @ 238 NONAME
- _ZN24NmMessageSearchListModelD2Ev @ 239 NONAME
- _ZN25NmAddAttachmentsOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 240 NONAME
- _ZN25NmAddAttachmentsOperation11qt_metacastEPKc @ 241 NONAME
- _ZN25NmAddAttachmentsOperation16staticMetaObjectE @ 242 NONAME DATA 16
- _ZN25NmAddAttachmentsOperation19getStaticMetaObjectEv @ 243 NONAME
- _ZN25NmAddAttachmentsOperation21completeOperationPartERK7QStringRK4NmIdi @ 244 NONAME
- _ZN25NmAddAttachmentsOperation22operationPartCompletedERK7QStringRK4NmIdi @ 245 NONAME
- _ZN25NmAddAttachmentsOperationC2Ev @ 246 NONAME
- _ZN25NmAddAttachmentsOperationD0Ev @ 247 NONAME
- _ZN25NmAddAttachmentsOperationD1Ev @ 248 NONAME
- _ZN25NmAddAttachmentsOperationD2Ev @ 249 NONAME
- _ZN25NmStoreEnvelopesOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 250 NONAME
- _ZN25NmStoreEnvelopesOperation11qt_metacastEPKc @ 251 NONAME
- _ZN25NmStoreEnvelopesOperation16staticMetaObjectE @ 252 NONAME DATA 16
- _ZN25NmStoreEnvelopesOperation19getStaticMetaObjectEv @ 253 NONAME
- _ZN26NmMessageCreationOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 254 NONAME
- _ZN26NmMessageCreationOperation11qt_metacastEPKc @ 255 NONAME
- _ZN26NmMessageCreationOperation16staticMetaObjectE @ 256 NONAME DATA 16
- _ZN26NmMessageCreationOperation19getStaticMetaObjectEv @ 257 NONAME
- _ZN7NmIcons7getIconENS_4IconE @ 258 NONAME
- _ZN7NmIcons9freeIconsEv @ 259 NONAME
- _ZNK10NmUiEngine10metaObjectEv @ 260 NONAME
- _ZNK10NmUiEngine16isSendingMessageEv @ 261 NONAME
- _ZNK10NmUiEngine16messageBeingSentEv @ 262 NONAME
- _ZNK11NmOperation10metaObjectEv @ 263 NONAME
- _ZNK11NmOperation9isRunningEv @ 264 NONAME
- _ZNK13NmDataManager10metaObjectEv @ 265 NONAME
- _ZNK16NmFolderMetaData2idEv @ 266 NONAME
- _ZNK16NmFolderMetaData4nameEv @ 267 NONAME
- _ZNK17NmFolderListModel11columnCountERK11QModelIndex @ 268 NONAME
- _ZNK17NmFolderListModel4dataERK11QModelIndexi @ 269 NONAME
- _ZNK17NmFolderListModel6parentERK11QModelIndex @ 270 NONAME
- _ZNK17NmFolderListModel8rowCountERK11QModelIndex @ 271 NONAME
- _ZNK17NmMailboxMetaData2idEv @ 272 NONAME
- _ZNK17NmMailboxMetaData4nameEv @ 273 NONAME
- _ZNK17NmMailboxMetaData6IconIdEv @ 274 NONAME
- _ZNK18NmBaseClientPlugin10metaObjectEv @ 275 NONAME
- _ZNK18NmMailboxListModel10metaObjectEv @ 276 NONAME
- _ZNK18NmMailboxListModel4dataERK11QModelIndexi @ 277 NONAME
- _ZNK18NmMessageListModel10metaObjectEv @ 278 NONAME
- _ZNK18NmMessageListModel17getInsertionIndexERK17NmMessageEnvelope @ 279 NONAME
- _ZNK18NmMessageListModel30messagesBelongUnderSameDividerEPK17NmMessageEnvelopeS2_ @ 280 NONAME
- _ZNK18NmMessageListModel4dataERK11QModelIndexi @ 281 NONAME
- _ZNK22NmCheckOutboxOperation10metaObjectEv @ 282 NONAME
- _ZNK22NmMessageListModelItem12titleDividerEv @ 283 NONAME
- _ZNK22NmMessageListModelItem8envelopeEv @ 284 NONAME
- _ZNK22NmMessageListModelItem8expandedEv @ 285 NONAME
- _ZNK22NmMessageListModelItem8itemTypeEv @ 286 NONAME
- _ZNK24NmMessageSearchListModel10metaObjectEv @ 287 NONAME
- _ZNK24NmMessageSearchListModel16filterAcceptsRowEiRK11QModelIndex @ 288 NONAME
- _ZNK24NmMessageSearchListModel4dataERK11QModelIndexi @ 289 NONAME
- _ZNK25NmAddAttachmentsOperation10metaObjectEv @ 290 NONAME
- _ZNK25NmStoreEnvelopesOperation10metaObjectEv @ 291 NONAME
- _ZNK26NmMessageCreationOperation10metaObjectEv @ 292 NONAME
- _ZTI10NmUiEngine @ 293 NONAME
- _ZTI11NmOperation @ 294 NONAME
- _ZTI13NmDataManager @ 295 NONAME
- _ZTI16NmFolderMetaData @ 296 NONAME
- _ZTI17NmFolderListModel @ 297 NONAME
- _ZTI17NmMailboxMetaData @ 298 NONAME
- _ZTI18NmBaseClientPlugin @ 299 NONAME
- _ZTI18NmMailboxListModel @ 300 NONAME
- _ZTI18NmMessageListModel @ 301 NONAME
- _ZTI19NmDataPluginFactory @ 302 NONAME
- _ZTI22NmCheckOutboxOperation @ 303 NONAME
- _ZTI22NmMessageListModelItem @ 304 NONAME
- _ZTI24NmMessageSearchListModel @ 305 NONAME
- _ZTI25NmAddAttachmentsOperation @ 306 NONAME
- _ZTI25NmStoreEnvelopesOperation @ 307 NONAME
- _ZTI26NmMessageCreationOperation @ 308 NONAME
- _ZTV10NmUiEngine @ 309 NONAME
- _ZTV11NmOperation @ 310 NONAME
- _ZTV13NmDataManager @ 311 NONAME
- _ZTV16NmFolderMetaData @ 312 NONAME
- _ZTV17NmFolderListModel @ 313 NONAME
- _ZTV17NmMailboxMetaData @ 314 NONAME
- _ZTV18NmBaseClientPlugin @ 315 NONAME
- _ZTV18NmMailboxListModel @ 316 NONAME
- _ZTV18NmMessageListModel @ 317 NONAME
- _ZTV19NmDataPluginFactory @ 318 NONAME
- _ZTV22NmCheckOutboxOperation @ 319 NONAME
- _ZTV22NmMessageListModelItem @ 320 NONAME
- _ZTV24NmMessageSearchListModel @ 321 NONAME
- _ZTV25NmAddAttachmentsOperation @ 322 NONAME
- _ZTV25NmStoreEnvelopesOperation @ 323 NONAME
- _ZTV26NmMessageCreationOperation @ 324 NONAME
- _ZThn8_N18NmBaseClientPlugin10getActionsERK15NmActionRequestR5QListIP8NmActionE @ 325 NONAME
- _ZThn8_N18NmBaseClientPluginD0Ev @ 326 NONAME
- _ZThn8_N18NmBaseClientPluginD1Ev @ 327 NONAME
- _ZN10NmUiEngine14folderTypeByIdE4NmIdS0_ @ 328 NONAME
- _ZN24NmMessageSearchListModel14refreshContentEv @ 329 NONAME
- _ZNK24NmMessageSearchListModel17searchResultCountEv @ 330 NONAME
- _ZN10NmUiEngine18handleConnectEventE14NmConnectStateRK4NmIdi @ 331 NONAME
+ _ZN10NmUiEngine14folderTypeByIdE4NmIdS0_ @ 14 NONAME
+ _ZN10NmUiEngine14mailboxDeletedERK4NmId @ 15 NONAME
+ _ZN10NmUiEngine14messageDeletedERK4NmIdS2_S2_ @ 16 NONAME
+ _ZN10NmUiEngine14refreshMailboxERK4NmId @ 17 NONAME
+ _ZN10NmUiEngine14searchCompleteEv @ 18 NONAME
+ _ZN10NmUiEngine14syncStateEventE11NmSyncStateRK4NmId @ 19 NONAME
+ _ZN10NmUiEngine15connectionEventE14NmConnectStateRK4NmId @ 20 NONAME
+ _ZN10NmUiEngine15connectionStateERK4NmId @ 21 NONAME
+ _ZN10NmUiEngine15mReferenceCountE @ 22 NONAME DATA 4
+ _ZN10NmUiEngine15messagePartFileERK4NmIdS2_S2_S2_ @ 23 NONAME
+ _ZN10NmUiEngine15releaseInstanceERPS_ @ 24 NONAME
+ _ZN10NmUiEngine16createNewMessageERK4NmId @ 25 NONAME
+ _ZN10NmUiEngine16fetchMessagePartERK4NmIdS2_S2_S2_ @ 26 NONAME
+ _ZN10NmUiEngine16handleMatchFoundERK4NmIdS2_ @ 27 NONAME
+ _ZN10NmUiEngine16mailboxListModelEv @ 28 NONAME
+ _ZN10NmUiEngine16messageListModelERK4NmIdS2_ @ 29 NONAME
+ _ZN10NmUiEngine16removeAttachmentERK9NmMessageRK4NmId @ 30 NONAME
+ _ZN10NmUiEngine16standardFolderIdERK4NmId12NmFolderType @ 31 NONAME
+ _ZN10NmUiEngine16staticMetaObjectE @ 32 NONAME DATA 16
+ _ZN10NmUiEngine18createReplyMessageERK4NmIdS2_b @ 33 NONAME
+ _ZN10NmUiEngine18handleConnectEventE14NmConnectStateRK4NmIdi @ 34 NONAME
+ _ZN10NmUiEngine18handleMailboxEventE14NmMailboxEventRK5QListI4NmIdE @ 35 NONAME
+ _ZN10NmUiEngine18handleMessageEventE14NmMessageEventRK4NmIdRK5QListIS1_ES3_ @ 36 NONAME
+ _ZN10NmUiEngine18operationCompletedERK26NmOperationCompletionEvent @ 37 NONAME
+ _ZN10NmUiEngine19getStaticMetaObjectEv @ 38 NONAME
+ _ZN10NmUiEngine20contentToMessagePartERK4NmIdS2_S2_R13NmMessagePart @ 39 NONAME
+ _ZN10NmUiEngine20createForwardMessageERK4NmIdS2_ @ 40 NONAME
+ _ZN10NmUiEngine20handleSyncStateEventE11NmSyncStateRK26NmOperationCompletionEvent @ 41 NONAME
+ _ZN10NmUiEngine22sendOperationCompletedEv @ 42 NONAME
+ _ZN10NmUiEngine23refreshMailboxListModelEv @ 43 NONAME
+ _ZN10NmUiEngine25messageListModelForSearchERK4NmId @ 44 NONAME
+ _ZN10NmUiEngine28handleCompletedSendOperationEv @ 45 NONAME
+ _ZN10NmUiEngine6searchERK4NmIdRK11QStringList @ 46 NONAME
+ _ZN10NmUiEngine7messageERK4NmIdS2_S2_ @ 47 NONAME
+ _ZN10NmUiEngine8goOnlineERK4NmId @ 48 NONAME
+ _ZN10NmUiEngine8instanceEv @ 49 NONAME
+ _ZN10NmUiEngine9goOfflineERK4NmId @ 50 NONAME
+ _ZN10NmUiEngine9mInstanceE @ 51 NONAME DATA 4
+ _ZN10NmUiEngine9syncStateERK4NmId @ 52 NONAME
+ _ZN10NmUiEngineC1Ev @ 53 NONAME
+ _ZN10NmUiEngineC2Ev @ 54 NONAME
+ _ZN10NmUiEngineD0Ev @ 55 NONAME
+ _ZN10NmUiEngineD1Ev @ 56 NONAME
+ _ZN10NmUiEngineD2Ev @ 57 NONAME
+ _ZN11NmOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 58 NONAME
+ _ZN11NmOperation11qt_metacastEPKc @ 59 NONAME
+ _ZN11NmOperation15cancelOperationEv @ 60 NONAME
+ _ZN11NmOperation15deleteOperationEv @ 61 NONAME
+ _ZN11NmOperation16staticMetaObjectE @ 62 NONAME DATA 16
+ _ZN11NmOperation17completeOperationEi @ 63 NONAME
+ _ZN11NmOperation17doCancelOperationEv @ 64 NONAME
+ _ZN11NmOperation17runAsyncOperationEv @ 65 NONAME
+ _ZN11NmOperation18operationCancelledEv @ 66 NONAME
+ _ZN11NmOperation18operationCompletedEi @ 67 NONAME
+ _ZN11NmOperation19doCompleteOperationEv @ 68 NONAME
+ _ZN11NmOperation19getStaticMetaObjectEv @ 69 NONAME
+ _ZN11NmOperation23addPreliminaryOperationEPS_ @ 70 NONAME
+ _ZN11NmOperation23updateOperationProgressEi @ 71 NONAME
+ _ZN11NmOperation24operationProgressChangedEi @ 72 NONAME
+ _ZN11NmOperation25doUpdateOperationProgressEv @ 73 NONAME
+ _ZN11NmOperation34handlePreliminaryOperationFinishedEv @ 74 NONAME
+ _ZN11NmOperationC2Ev @ 75 NONAME
+ _ZN11NmOperationD0Ev @ 76 NONAME
+ _ZN11NmOperationD1Ev @ 77 NONAME
+ _ZN11NmOperationD2Ev @ 78 NONAME
+ _ZN13NmDataManager10folderByIdERK4NmIdS2_ @ 79 NONAME
+ _ZN13NmDataManager11listFoldersE4NmIdR5QListIP8NmFolderE @ 80 NONAME
+ _ZN13NmDataManager11mailboxByIdERK4NmId @ 81 NONAME
+ _ZN13NmDataManager11qt_metacallEN11QMetaObject4CallEiPPv @ 82 NONAME
+ _ZN13NmDataManager11qt_metacastEPKc @ 83 NONAME
+ _ZN13NmDataManager12envelopeByIdERK4NmIdS2_S2_ @ 84 NONAME
+ _ZN13NmDataManager12listMessagesERK4NmIdS2_R5QListIP17NmMessageEnvelopeE @ 85 NONAME
+ _ZN13NmDataManager13listMailboxesER5QListIP9NmMailboxE @ 86 NONAME
+ _ZN13NmDataManager14folderTypeByIdE4NmIdS0_ @ 87 NONAME
+ _ZN13NmDataManager14listMailboxIdsER5QListI4NmIdE @ 88 NONAME
+ _ZN13NmDataManager16staticMetaObjectE @ 89 NONAME DATA 16
+ _ZN13NmDataManager19getStandardFolderIdERK4NmId12NmFolderType @ 90 NONAME
+ _ZN13NmDataManager19getStaticMetaObjectEv @ 91 NONAME
+ _ZN13NmDataManager20contentToMessagePartERK4NmIdS2_S2_R13NmMessagePart @ 92 NONAME
+ _ZN13NmDataManager6folderERK4NmIdS2_ @ 93 NONAME
+ _ZN13NmDataManager7mailboxERK4NmId @ 94 NONAME
+ _ZN13NmDataManager7messageERK4NmIdS2_S2_ @ 95 NONAME
+ _ZN13NmDataManagerC1Ev @ 96 NONAME
+ _ZN13NmDataManagerC2Ev @ 97 NONAME
+ _ZN13NmDataManagerD0Ev @ 98 NONAME
+ _ZN13NmDataManagerD1Ev @ 99 NONAME
+ _ZN13NmDataManagerD2Ev @ 100 NONAME
+ _ZN16NmFolderMetaData5setIdERK4NmId @ 101 NONAME
+ _ZN16NmFolderMetaData7setNameERK7QString @ 102 NONAME
+ _ZN16NmFolderMetaDataC1Ev @ 103 NONAME
+ _ZN16NmFolderMetaDataC2Ev @ 104 NONAME
+ _ZN16NmFolderMetaDataD0Ev @ 105 NONAME
+ _ZN16NmFolderMetaDataD1Ev @ 106 NONAME
+ _ZN16NmFolderMetaDataD2Ev @ 107 NONAME
+ _ZN17NmFolderListModel7refreshER5QListIP8NmFolderE @ 108 NONAME
+ _ZN17NmFolderListModelC1ER13NmDataManagerP7QObject @ 109 NONAME
+ _ZN17NmFolderListModelC2ER13NmDataManagerP7QObject @ 110 NONAME
+ _ZN17NmFolderListModelD0Ev @ 111 NONAME
+ _ZN17NmFolderListModelD1Ev @ 112 NONAME
+ _ZN17NmFolderListModelD2Ev @ 113 NONAME
+ _ZN17NmMailboxMetaData10setAddressERK7QString @ 114 NONAME
+ _ZN17NmMailboxMetaData5setIdERK4NmId @ 115 NONAME
+ _ZN17NmMailboxMetaData7setNameERK7QString @ 116 NONAME
+ _ZN17NmMailboxMetaData9setIconIdERK4NmId @ 117 NONAME
+ _ZN17NmMailboxMetaDataC1Ev @ 118 NONAME
+ _ZN17NmMailboxMetaDataC2Ev @ 119 NONAME
+ _ZN17NmMailboxMetaDataD0Ev @ 120 NONAME
+ _ZN17NmMailboxMetaDataD1Ev @ 121 NONAME
+ _ZN17NmMailboxMetaDataD2Ev @ 122 NONAME
+ _ZN18NmBaseClientPlugin10getActionsERK15NmActionRequestR5QListIP8NmActionE @ 123 NONAME
+ _ZN18NmBaseClientPlugin10markAsReadEv @ 124 NONAME
+ _ZN18NmBaseClientPlugin11forwardMailEv @ 125 NONAME
+ _ZN18NmBaseClientPlugin11openMessageEv @ 126 NONAME
+ _ZN18NmBaseClientPlugin11qt_metacallEN11QMetaObject4CallEiPPv @ 127 NONAME
+ _ZN18NmBaseClientPlugin11qt_metacastEPKc @ 128 NONAME
+ _ZN18NmBaseClientPlugin12markAsUnreadEv @ 129 NONAME
+ _ZN18NmBaseClientPlugin12replyAllMailEv @ 130 NONAME
+ _ZN18NmBaseClientPlugin13createNewMailEv @ 131 NONAME
+ _ZN18NmBaseClientPlugin13deleteMessageEv @ 132 NONAME
+ _ZN18NmBaseClientPlugin13handleRequestE23NmActionResponseCommandRK15NmActionRequest @ 133 NONAME
+ _ZN18NmBaseClientPlugin14openAttachmentEv @ 134 NONAME
+ _ZN18NmBaseClientPlugin14setPriorityLowEv @ 135 NONAME
+ _ZN18NmBaseClientPlugin15setPriorityHighEv @ 136 NONAME
+ _ZN18NmBaseClientPlugin16removeAttachmentEv @ 137 NONAME
+ _ZN18NmBaseClientPlugin16staticMetaObjectE @ 138 NONAME DATA 16
+ _ZN18NmBaseClientPlugin17setPriorityNormalEv @ 139 NONAME
+ _ZN18NmBaseClientPlugin18mailboxListChangedERK4NmIdN10NmSettings16MailboxEventTypeE @ 140 NONAME
+ _ZN18NmBaseClientPlugin19getStaticMetaObjectEv @ 141 NONAME
+ _ZN18NmBaseClientPlugin22mailboxPropertyChangedERK4NmId8QVariantS3_ @ 142 NONAME
+ _ZN18NmBaseClientPlugin22updateEnvelopePropertyE20NmEnvelopeProperties @ 143 NONAME
+ _ZN18NmBaseClientPlugin24createEditorViewCommandsERK15NmActionRequestR5QListIP8NmActionE @ 144 NONAME
+ _ZN18NmBaseClientPlugin24createViewerViewCommandsERK15NmActionRequestR5QListIP8NmActionE @ 145 NONAME
+ _ZN18NmBaseClientPlugin25createMessageListCommandsERK15NmActionRequestR5QListIP8NmActionE @ 146 NONAME
+ _ZN18NmBaseClientPlugin26createNewMailViewerToolBarEv @ 147 NONAME
+ _ZN18NmBaseClientPlugin27deleteMessageFromViewerViewEv @ 148 NONAME
+ _ZN18NmBaseClientPlugin6attachEv @ 149 NONAME
+ _ZN18NmBaseClientPlugin6searchEv @ 150 NONAME
+ _ZN18NmBaseClientPlugin7refreshEv @ 151 NONAME
+ _ZN18NmBaseClientPlugin8goOnlineERK4NmId @ 152 NONAME
+ _ZN18NmBaseClientPlugin8sendMailEv @ 153 NONAME
+ _ZN18NmBaseClientPlugin8settingsEv @ 154 NONAME
+ _ZN18NmBaseClientPlugin9goOfflineERK4NmId @ 155 NONAME
+ _ZN18NmBaseClientPlugin9replyMailEv @ 156 NONAME
+ _ZN18NmBaseClientPluginC2Ev @ 157 NONAME
+ _ZN18NmBaseClientPluginD0Ev @ 158 NONAME
+ _ZN18NmBaseClientPluginD1Ev @ 159 NONAME
+ _ZN18NmBaseClientPluginD2Ev @ 160 NONAME
+ _ZN18NmMailboxListModel11qt_metacallEN11QMetaObject4CallEiPPv @ 161 NONAME
+ _ZN18NmMailboxListModel11qt_metacastEPKc @ 162 NONAME
+ _ZN18NmMailboxListModel16refreshModelItemERK4NmIdb @ 163 NONAME
+ _ZN18NmMailboxListModel16staticMetaObjectE @ 164 NONAME DATA 16
+ _ZN18NmMailboxListModel17createMailboxItemEPK9NmMailbox @ 165 NONAME
+ _ZN18NmMailboxListModel18handleMailboxEventE14NmMailboxEventRK5QListI4NmIdE @ 166 NONAME
+ _ZN18NmMailboxListModel19getStaticMetaObjectEv @ 167 NONAME
+ _ZN18NmMailboxListModel7refreshER5QListIP9NmMailboxE @ 168 NONAME
+ _ZN18NmMailboxListModelC1ER13NmDataManagerP7QObject @ 169 NONAME
+ _ZN18NmMailboxListModelC2ER13NmDataManagerP7QObject @ 170 NONAME
+ _ZN18NmMailboxListModelD0Ev @ 171 NONAME
+ _ZN18NmMailboxListModelD1Ev @ 172 NONAME
+ _ZN18NmMailboxListModelD2Ev @ 173 NONAME
+ _ZN18NmMessageListModel10removeItemEiR22NmMessageListModelItem @ 174 NONAME
+ _ZN18NmMessageListModel11qt_metacallEN11QMetaObject4CallEiPPv @ 175 NONAME
+ _ZN18NmMessageListModel11qt_metacastEPKc @ 176 NONAME
+ _ZN18NmMessageListModel11setDividersEb @ 177 NONAME
+ _ZN18NmMessageListModel11setNewParamEP14NmUiStartParam @ 178 NONAME
+ _ZN18NmMessageListModel13itemFromModelERK4NmId @ 179 NONAME
+ _ZN18NmMessageListModel14dividersActiveEv @ 180 NONAME
+ _ZN18NmMessageListModel14updateEnvelopeE20NmEnvelopePropertiesRK4NmId @ 181 NONAME
+ _ZN18NmMessageListModel16currentMailboxIdEv @ 182 NONAME
+ _ZN18NmMessageListModel16staticMetaObjectE @ 183 NONAME DATA 16
+ _ZN18NmMessageListModel17createMessageItemEP17NmMessageEnvelope @ 184 NONAME
+ _ZN18NmMessageListModel18handleMessageEventE14NmMessageEventRK4NmIdRK5QListIS1_E @ 185 NONAME
+ _ZN18NmMessageListModel19getStaticMetaObjectEv @ 186 NONAME
+ _ZN18NmMessageListModel21dividerInsertionIndexEi @ 187 NONAME
+ _ZN18NmMessageListModel21setEnvelopePropertiesE20NmEnvelopePropertiesRK5QListI4NmIdE @ 188 NONAME
+ _ZN18NmMessageListModel21updateMessageEnvelopeERK4NmIdS2_S2_ @ 189 NONAME
+ _ZN18NmMessageListModel22createTitleDividerItemEP17NmMessageEnvelope @ 190 NONAME
+ _ZN18NmMessageListModel22insertDividerIntoModelEP17NmMessageEnvelopei @ 191 NONAME
+ _ZN18NmMessageListModel22insertMessageIntoModelEP17NmMessageEnvelopeib @ 192 NONAME
+ _ZN18NmMessageListModel22removeMessageFromModelERK4NmId @ 193 NONAME
+ _ZN18NmMessageListModel25insertNewMessageIntoModelERK4NmIdS2_S2_ @ 194 NONAME
+ _ZN18NmMessageListModel7changedERK17NmMessageEnvelopeS2_ @ 195 NONAME
+ _ZN18NmMessageListModel7refreshE4NmIdS0_RK5QListIP17NmMessageEnvelopeE @ 196 NONAME
+ _ZN18NmMessageListModelC1ER13NmDataManagerP7QObject @ 197 NONAME
+ _ZN18NmMessageListModelC2ER13NmDataManagerP7QObject @ 198 NONAME
+ _ZN18NmMessageListModelD0Ev @ 199 NONAME
+ _ZN18NmMessageListModelD1Ev @ 200 NONAME
+ _ZN18NmMessageListModelD2Ev @ 201 NONAME
+ _ZN19NmDataPluginFactory10loadPluginERK4QDirRK7QString @ 202 NONAME
+ _ZN19NmDataPluginFactory12mPluginArrayE @ 203 NONAME DATA 4
+ _ZN19NmDataPluginFactory14pluginInstanceE4NmId @ 204 NONAME
+ _ZN19NmDataPluginFactory15mReferenceCountE @ 205 NONAME DATA 4
+ _ZN19NmDataPluginFactory15pluginInstancesEv @ 206 NONAME
+ _ZN19NmDataPluginFactory15releaseInstanceERPS_ @ 207 NONAME
+ _ZN19NmDataPluginFactory17interfaceInstanceE4NmId @ 208 NONAME
+ _ZN19NmDataPluginFactory17interfaceInstanceEP7QObject @ 209 NONAME
+ _ZN19NmDataPluginFactory18mPluginLoaderArrayE @ 210 NONAME DATA 4
+ _ZN19NmDataPluginFactory8instanceEv @ 211 NONAME
+ _ZN19NmDataPluginFactory9mInstanceE @ 212 NONAME DATA 4
+ _ZN19NmDataPluginFactoryC1Ev @ 213 NONAME
+ _ZN19NmDataPluginFactoryC2Ev @ 214 NONAME
+ _ZN19NmDataPluginFactoryD0Ev @ 215 NONAME
+ _ZN19NmDataPluginFactoryD1Ev @ 216 NONAME
+ _ZN19NmDataPluginFactoryD2Ev @ 217 NONAME
+ _ZN22NmCheckOutboxOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 218 NONAME
+ _ZN22NmCheckOutboxOperation11qt_metacastEPKc @ 219 NONAME
+ _ZN22NmCheckOutboxOperation16staticMetaObjectE @ 220 NONAME DATA 16
+ _ZN22NmCheckOutboxOperation19getStaticMetaObjectEv @ 221 NONAME
+ _ZN22NmMessageListModelItem11envelopePtrEv @ 222 NONAME
+ _ZN22NmMessageListModelItem11setEnvelopeEP17NmMessageEnvelope @ 223 NONAME
+ _ZN22NmMessageListModelItem11setEnvelopeERK17NmMessageEnvelope @ 224 NONAME
+ _ZN22NmMessageListModelItem11setExpandedEb @ 225 NONAME
+ _ZN22NmMessageListModelItem11setItemTypeENS_17NmMessageItemTypeE @ 226 NONAME
+ _ZN22NmMessageListModelItem15setTitleDividerERK7QString @ 227 NONAME
+ _ZN22NmMessageListModelItem19callEmitDataChangedEv @ 228 NONAME
+ _ZN22NmMessageListModelItemC1Ev @ 229 NONAME
+ _ZN22NmMessageListModelItemC2Ev @ 230 NONAME
+ _ZN22NmMessageListModelItemD0Ev @ 231 NONAME
+ _ZN22NmMessageListModelItemD1Ev @ 232 NONAME
+ _ZN22NmMessageListModelItemD2Ev @ 233 NONAME
+ _ZN25NmAddAttachmentsOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 234 NONAME
+ _ZN25NmAddAttachmentsOperation11qt_metacastEPKc @ 235 NONAME
+ _ZN25NmAddAttachmentsOperation16staticMetaObjectE @ 236 NONAME DATA 16
+ _ZN25NmAddAttachmentsOperation19getStaticMetaObjectEv @ 237 NONAME
+ _ZN25NmAddAttachmentsOperation21completeOperationPartERK7QStringRK4NmIdi @ 238 NONAME
+ _ZN25NmAddAttachmentsOperation22operationPartCompletedERK7QStringRK4NmIdi @ 239 NONAME
+ _ZN25NmAddAttachmentsOperationC2Ev @ 240 NONAME
+ _ZN25NmAddAttachmentsOperationD0Ev @ 241 NONAME
+ _ZN25NmAddAttachmentsOperationD1Ev @ 242 NONAME
+ _ZN25NmAddAttachmentsOperationD2Ev @ 243 NONAME
+ _ZN25NmStoreEnvelopesOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 244 NONAME
+ _ZN25NmStoreEnvelopesOperation11qt_metacastEPKc @ 245 NONAME
+ _ZN25NmStoreEnvelopesOperation16staticMetaObjectE @ 246 NONAME DATA 16
+ _ZN25NmStoreEnvelopesOperation19getStaticMetaObjectEv @ 247 NONAME
+ _ZN26NmMessageCreationOperation11qt_metacallEN11QMetaObject4CallEiPPv @ 248 NONAME
+ _ZN26NmMessageCreationOperation11qt_metacastEPKc @ 249 NONAME
+ _ZN26NmMessageCreationOperation16staticMetaObjectE @ 250 NONAME DATA 16
+ _ZN26NmMessageCreationOperation19getStaticMetaObjectEv @ 251 NONAME
+ _ZN7NmIcons7getIconENS_4IconE @ 252 NONAME
+ _ZN7NmIcons9freeIconsEv @ 253 NONAME
+ _ZNK10NmUiEngine10metaObjectEv @ 254 NONAME
+ _ZNK10NmUiEngine16isSendingMessageEv @ 255 NONAME
+ _ZNK10NmUiEngine16messageBeingSentEv @ 256 NONAME
+ _ZNK11NmOperation10metaObjectEv @ 257 NONAME
+ _ZNK11NmOperation9isRunningEv @ 258 NONAME
+ _ZNK13NmDataManager10metaObjectEv @ 259 NONAME
+ _ZNK16NmFolderMetaData2idEv @ 260 NONAME
+ _ZNK16NmFolderMetaData4nameEv @ 261 NONAME
+ _ZNK17NmFolderListModel11columnCountERK11QModelIndex @ 262 NONAME
+ _ZNK17NmFolderListModel4dataERK11QModelIndexi @ 263 NONAME
+ _ZNK17NmFolderListModel6parentERK11QModelIndex @ 264 NONAME
+ _ZNK17NmFolderListModel8rowCountERK11QModelIndex @ 265 NONAME
+ _ZNK17NmMailboxMetaData2idEv @ 266 NONAME
+ _ZNK17NmMailboxMetaData4nameEv @ 267 NONAME
+ _ZNK17NmMailboxMetaData6IconIdEv @ 268 NONAME
+ _ZNK17NmMailboxMetaData7addressEv @ 269 NONAME
+ _ZNK18NmBaseClientPlugin10metaObjectEv @ 270 NONAME
+ _ZNK18NmMailboxListModel10metaObjectEv @ 271 NONAME
+ _ZNK18NmMailboxListModel4dataERK11QModelIndexi @ 272 NONAME
+ _ZNK18NmMessageListModel10metaObjectEv @ 273 NONAME
+ _ZNK18NmMessageListModel17getInsertionIndexERK17NmMessageEnvelope @ 274 NONAME
+ _ZNK18NmMessageListModel30messagesBelongUnderSameDividerEPK17NmMessageEnvelopeS2_ @ 275 NONAME
+ _ZNK18NmMessageListModel4dataERK11QModelIndexi @ 276 NONAME
+ _ZNK22NmCheckOutboxOperation10metaObjectEv @ 277 NONAME
+ _ZNK22NmMessageListModelItem12titleDividerEv @ 278 NONAME
+ _ZNK22NmMessageListModelItem8envelopeEv @ 279 NONAME
+ _ZNK22NmMessageListModelItem8expandedEv @ 280 NONAME
+ _ZNK22NmMessageListModelItem8itemTypeEv @ 281 NONAME
+ _ZNK25NmAddAttachmentsOperation10metaObjectEv @ 282 NONAME
+ _ZNK25NmStoreEnvelopesOperation10metaObjectEv @ 283 NONAME
+ _ZNK26NmMessageCreationOperation10metaObjectEv @ 284 NONAME
+ _ZTI10NmUiEngine @ 285 NONAME
+ _ZTI11NmOperation @ 286 NONAME
+ _ZTI13NmDataManager @ 287 NONAME
+ _ZTI16NmFolderMetaData @ 288 NONAME
+ _ZTI17NmFolderListModel @ 289 NONAME
+ _ZTI17NmMailboxMetaData @ 290 NONAME
+ _ZTI18NmBaseClientPlugin @ 291 NONAME
+ _ZTI18NmMailboxListModel @ 292 NONAME
+ _ZTI18NmMessageListModel @ 293 NONAME
+ _ZTI19NmDataPluginFactory @ 294 NONAME
+ _ZTI22NmCheckOutboxOperation @ 295 NONAME
+ _ZTI22NmMessageListModelItem @ 296 NONAME
+ _ZTI25NmAddAttachmentsOperation @ 297 NONAME
+ _ZTI25NmStoreEnvelopesOperation @ 298 NONAME
+ _ZTI26NmMessageCreationOperation @ 299 NONAME
+ _ZTV10NmUiEngine @ 300 NONAME
+ _ZTV11NmOperation @ 301 NONAME
+ _ZTV13NmDataManager @ 302 NONAME
+ _ZTV16NmFolderMetaData @ 303 NONAME
+ _ZTV17NmFolderListModel @ 304 NONAME
+ _ZTV17NmMailboxMetaData @ 305 NONAME
+ _ZTV18NmBaseClientPlugin @ 306 NONAME
+ _ZTV18NmMailboxListModel @ 307 NONAME
+ _ZTV18NmMessageListModel @ 308 NONAME
+ _ZTV19NmDataPluginFactory @ 309 NONAME
+ _ZTV22NmCheckOutboxOperation @ 310 NONAME
+ _ZTV22NmMessageListModelItem @ 311 NONAME
+ _ZTV25NmAddAttachmentsOperation @ 312 NONAME
+ _ZTV25NmStoreEnvelopesOperation @ 313 NONAME
+ _ZTV26NmMessageCreationOperation @ 314 NONAME
+ _ZThn8_N18NmBaseClientPlugin10getActionsERK15NmActionRequestR5QListIP8NmActionE @ 315 NONAME
+ _ZThn8_N18NmBaseClientPluginD0Ev @ 316 NONAME
+ _ZThn8_N18NmBaseClientPluginD1Ev @ 317 NONAME
+ _ZN10NmUiEngine18updateActiveFolderERK4NmIdS2_ @ 318 NONAME
+ _ZN19NmDataPluginFactory33applicationStateInterfaceInstanceE4NmId @ 319 NONAME
+ _ZN19NmDataPluginFactory33applicationStateInterfaceInstanceEP7QObject @ 320 NONAME
+ _ZN10NmUiEngine17fetchMessagePartsERK4NmIdS2_S2_RK5QListIS0_E @ 321 NONAME
+ _ZN18NmMessageListModel18setIgnoreFolderIdsEb @ 322 NONAME
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/emailuis/nmailuiengine/inc/nmapplicationstateinterface.h Fri May 14 04:41:45 2010 +0300
@@ -0,0 +1,37 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+#ifndef NMAPPLICATIONSTATEINTERFACE_H_
+#define NMAPPLICATIONSTATEINTERFACE_H_
+
+
+/*!
+ \class NmApplicationStateInterface
+ \brief provides an interface to indicate application state information to protocol plugins
+*/
+class NmApplicationStateInterface
+{
+public:
+ virtual void updateActiveFolder(const NmId &mailboxId, const NmId &folderId) = 0;
+};
+
+Q_DECLARE_INTERFACE(NmApplicationStateInterface, "sf.app.commonmail.emailuis.nmailuiengine.NmApplicationStateInterface/1.0")
+
+
+#endif /* NMAPPLICATIONSTATEINTERFACE_H_ */
+
+
--- a/emailuis/nmailuiengine/inc/nmbaseclientplugin.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/inc/nmbaseclientplugin.h Fri May 14 04:41:45 2010 +0300
@@ -72,12 +72,12 @@
protected:
virtual quint32 pluginId() = 0;
+ void handleRequest(NmActionResponseCommand command, const NmActionRequest &request);
private:
void createMessageListCommands(const NmActionRequest &request, QList<NmAction*> &actionList);
void createEditorViewCommands(const NmActionRequest &request, QList<NmAction*> &actionList);
void createViewerViewCommands(const NmActionRequest &request, QList<NmAction*> &actionList);
- void handleRequest(NmActionResponseCommand command, const NmActionRequest &request);
void updateEnvelopeProperty(NmEnvelopeProperties property);
protected:
--- a/emailuis/nmailuiengine/inc/nmdatamanager.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/inc/nmdatamanager.h Fri May 14 04:41:45 2010 +0300
@@ -64,6 +64,8 @@
NmMessagePart &messagePart);
NmId getStandardFolderId(const NmId &mailboxId,
NmFolderType folderType);
+
+ NmFolderType folderTypeById(NmId mailboxId, NmId folderId);
private:
NmDataPluginFactory *mFactory;
--- a/emailuis/nmailuiengine/inc/nmdatapluginfactory.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/inc/nmdatapluginfactory.h Fri May 14 04:41:45 2010 +0300
@@ -22,6 +22,7 @@
#include "nmuienginedef.h"
class NmDataPluginInterface;
+class NmApplicationStateInterface;
class QDir;
class QPluginLoader;
@@ -37,12 +38,14 @@
static void releaseInstance(NmDataPluginFactory *&instance);
NmDataPluginInterface *interfaceInstance(QObject *plugin);
NmDataPluginInterface *interfaceInstance(NmId mailboxId);
+ NmApplicationStateInterface *applicationStateInterfaceInstance(NmId mailboxId);
QObject *pluginInstance(NmId mailboxId);
QList<QObject*> *pluginInstances();
QObject *loadPlugin(
const QDir &pluginDir,
const QString& pluginName);
private:
+ NmApplicationStateInterface *applicationStateInterfaceInstance(QObject *plugin);
NmDataPluginFactory();
virtual ~NmDataPluginFactory();
static NmDataPluginFactory *mInstance; // owned
--- a/emailuis/nmailuiengine/inc/nmdataplugininterface.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/inc/nmdataplugininterface.h Fri May 14 04:41:45 2010 +0300
@@ -104,6 +104,12 @@
const NmId &folderId,
const NmId &messageId,
const NmId &messagePartId) = 0;
+
+ virtual QPointer<NmOperation> fetchMessageParts(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId,
+ const QList<NmId> &messagePartIds) = 0;
virtual XQSharableFile messagePartFile(
const NmId &mailboxId,
--- a/emailuis/nmailuiengine/inc/nmmailboxmetadata.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/inc/nmmailboxmetadata.h Fri May 14 04:41:45 2010 +0300
@@ -36,6 +36,8 @@
void setId(const NmId &id);
NmId IconId() const;
void setIconId(const NmId &id);
+ QString address() const;
+ void setAddress(const QString &address);
private:
--- a/emailuis/nmailuiengine/inc/nmmessagelistmodel.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/inc/nmmessagelistmodel.h Fri May 14 04:41:45 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2009 - 2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -20,10 +20,9 @@
#include <QStandardItemModel>
+#include "nmcommon.h"
+#include "nmmessagelistmodelitem.h"
#include "nmuienginedef.h"
-#include "nmcommon.h"
-
-#include "nmmessagelistmodelitem.h"
#include "nmuiviewids.h"
class NmMessage;
@@ -31,73 +30,104 @@
class QModelIndex;
class NmMessageEnvelope;
+
class NMUIENGINE_EXPORT NmMessageListModel : public QStandardItemModel
{
Q_OBJECT
+
public:
- NmMessageListModel(
- NmDataManager &dataManager,
- QObject *parent = 0);
+
+ NmMessageListModel(NmDataManager &dataManager,
+ QObject *parent = 0);
+
virtual ~NmMessageListModel();
+
QVariant data(const QModelIndex &index,
int role = Qt::DisplayRole) const;
- void refresh(
- const NmId mailboxId,
- const NmId folderId,
- const QList<NmMessageEnvelope*> &messageEnvelopeList);
+
+ void refresh(const NmId mailboxId,
+ const NmId folderId,
+ const QList<NmMessageEnvelope*> &messageEnvelopeList);
+
bool dividersActive();
- // This function is temporary, to be removed when
- // divider state can be modified with settings
+
+ // This function is temporary, to be removed when divider state can be
+ // modified with settings.
void setDividers(bool active);
- void setEnvelopeProperties(
- NmEnvelopeProperties property,
- const QList<NmId> &messageIds);
+
+ void setEnvelopeProperties(NmEnvelopeProperties property,
+ const QList<NmId> &messageIds);
+
NmId currentMailboxId();
+
+ void setIgnoreFolderIds(bool ignore);
+
+
public slots:
- void handleMessageEvent(
- NmMessageEvent event,
- const NmId &folderId,
- const QList<NmId> &messageIds);
+
+ void handleMessageEvent(NmMessageEvent event,
+ const NmId &folderId,
+ const QList<NmId> &messageIds);
+
private:
+
bool messagesBelongUnderSameDivider(
const NmMessageEnvelope *message1,
const NmMessageEnvelope *message2) const;
+
void insertDividerIntoModel(
NmMessageEnvelope *messageForDivider,
int parentRow);
+
void insertMessageIntoModel(
NmMessageEnvelope *messageEnvelope,
int childRow,
bool emitSignal);
+
void insertNewMessageIntoModel(
const NmId &mailboxId,
const NmId &folderId,
const NmId &msgId);
- int getInsertionIndex(
- const NmMessageEnvelope &envelope) const;
+
+ int getInsertionIndex(const NmMessageEnvelope &envelope) const;
+
int dividerInsertionIndex(int messageIndex);
+
NmMessageListModelItem *createTitleDividerItem(NmMessageEnvelope *messageForDivider);
+
NmMessageListModelItem *createMessageItem(NmMessageEnvelope *message);
+
void removeMessageFromModel(const NmId &msgId);
+
void removeItem(int row, NmMessageListModelItem &item);
+
NmMessageListModelItem *itemFromModel(const NmId &messageId);
- bool changed(const NmMessageEnvelope &first, const NmMessageEnvelope &second);
+
+ bool changed(const NmMessageEnvelope &first,
+ const NmMessageEnvelope &second);
+
void updateMessageEnvelope(const NmId &mailboxId,
- const NmId &folderId,
- const NmId &msgId);
+ const NmId &folderId,
+ const NmId &msgId);
+
void updateEnvelope(NmEnvelopeProperties property, const NmId &msgId);
+
signals:
+
void setNewParam(NmUiStartParam *startParam);
-
-private:
- NmDataManager &mDataManager; // not owned
+
+
+private: // Data
+
+ NmDataManager &mDataManager;
bool mDividersActive;
- NmMessageListModelItem *mParentPtr; // not owned
+ NmMessageListModelItem *mParentPtr; // Not owned
NmId mCurrentMailboxId;
NmId mCurrentFolderId;
-
+ NmFolderType mCurrentFolderType;
+ bool mIgnoreFolderIds;
};
#endif /* NMMESSAGELISTMODEL_H_*/
--- a/emailuis/nmailuiengine/inc/nmmessagesearchlistmodel.h Fri May 14 04:17:40 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,70 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef NMMESSAGESEARCHLISTMODEL_H_
-#define NMMESSAGESEARCHLISTMODEL_H_
-
-#include <QSortFilterProxyModel>
-#include <QVector>
-
-#include "nmuienginedef.h" // For NMUIENGINE_EXPORT
-#include "nmcommon.h"
-
-
-class NMUIENGINE_EXPORT NmMessageSearchListModel : public QSortFilterProxyModel
-{
- Q_OBJECT
-
-public: // Construction and destruction
-
- NmMessageSearchListModel(QObject *parent = 0);
-
- ~NmMessageSearchListModel();
-
-
-public:
-
- void clearSearchResults();
-
- int searchResultCount() const;
-
-
-public: // From QSortFilterProxyModel
-
- QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
-
-
-protected: // From QSortFilterProxyModel
-
- bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const;
-
-
-public slots:
-
- bool addSearchResult(const NmId &messageId);
-
- void refreshContent();
-
-
-private: // Data
-
- QVector<NmId> mSearchResults;
-};
-
-#endif /* NMMESSAGESEARCHLISTMODEL_H_ */
-
-// End of file.
--- a/emailuis/nmailuiengine/inc/nmuiengine.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/inc/nmuiengine.h Fri May 14 04:41:45 2010 +0300
@@ -28,7 +28,6 @@
class QAbstractItemModel;
class NmMailboxListModel;
class NmMessageListModel;
-class NmMessageSearchListModel;
class NmDataManager;
class NmDataPluginFactory;
class NmMailboxMetaData;
@@ -50,12 +49,17 @@
public:
static NmUiEngine *instance();
+
static void releaseInstance(NmUiEngine *&instance);
NmMailboxListModel &mailboxListModel();
+
void refreshMailboxListModel();
- NmMessageListModel &messageListModel(const NmId &mailboxId, const NmId &folderId);
- NmMessageSearchListModel &messageSearchListModel(QAbstractItemModel *sourceModel);
+
+ NmMessageListModel &messageListModel(const NmId &mailboxId,
+ const NmId &folderId);
+
+ NmMessageListModel &messageListModelForSearch(const NmId &mailboxId);
NmId standardFolderId(const NmId &mailboxId, NmFolderType folderType);
@@ -75,6 +79,12 @@
const NmId &messageId,
const NmId &messagePartId);
+ QPointer<NmOperation> fetchMessageParts(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId,
+ const QList<NmId> &messagePartIds);
+
XQSharableFile messagePartFile(
const NmId &mailboxId,
const NmId &folderId,
@@ -123,12 +133,12 @@
int goOffline(const NmId &mailboxId);
- int removeMessage(
- const NmId &mailboxId,
- const NmId &folderId,
- const NmId &messageId);
+ int removeMessage(const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId);
- void sendMessage(NmMessage *message, const QList<NmOperation*> &preliminaryOperations);
+ void sendMessage(NmMessage *message,
+ const QList<NmOperation*> &preliminaryOperations);
bool isSendingMessage() const;
@@ -145,6 +155,7 @@
QPointer<NmCheckOutboxOperation> checkOutbox(const NmId &mailboxId);
NmSyncState syncState(const NmId& mailboxId);
+
NmConnectState connectionState(const NmId& mailboxId);
int search(const NmId &mailboxId,
@@ -154,37 +165,54 @@
NmFolderType folderTypeById(NmId mailboxId, NmId folderId);
+ void updateActiveFolder(const NmId &mailboxId, const NmId &folderId);
+
public slots:
+
void handleCompletedSendOperation();
- void handleSyncStateEvent(NmSyncState syncState, const NmOperationCompletionEvent &event);
- void handleConnectEvent(NmConnectState connectState, const NmId &mailboxId, const int errorCode);
+
+ void handleSyncStateEvent(NmSyncState syncState,
+ const NmOperationCompletionEvent &event);
+
+ void handleConnectEvent(NmConnectState connectState,
+ const NmId &mailboxId,
+ const int errorCode);
+
private slots:
- void handleMessageEvent(
- NmMessageEvent event,
- const NmId &folderId,
- const QList<NmId> &messageIds,
- const NmId& mailboxId);
+
+ void handleMessageEvent(NmMessageEvent event,
+ const NmId &folderId,
+ const QList<NmId> &messageIds,
+ const NmId& mailboxId);
void handleMailboxEvent(NmMailboxEvent event,
const QList<NmId> &mailboxIds);
+ void handleMatchFound(const NmId &messageId, const NmId &folderId);
+
signals:
+
void syncStateEvent(NmSyncState, const NmId &);
void connectionEvent(NmConnectState, const NmId &);
void operationCompleted(const NmOperationCompletionEvent &event);
void sendOperationCompleted();
void messageDeleted(const NmId &mailboxId, const NmId &folderId, const NmId &messageId);
void mailboxDeleted(const NmId &mailboxId);
- void matchFound(const NmId &);
+ void matchFound(const NmId &, const NmId &);
void searchComplete();
-
+
+
private:
+
NmUiEngine();
+
virtual ~NmUiEngine();
-private:
+
+private: // Data
+
static NmUiEngine *mInstance;
static int mReferenceCount;
@@ -192,7 +220,7 @@
NmDataManager *mDataManager; // Owned
NmMailboxListModel *mMailboxListModel; // Owned
NmMessageListModel *mMessageListModel; // Owned
- NmMessageSearchListModel *mMessageSearchListModel; // Owned
+ NmMessageListModel *mMessageSearchListModel; // Owned
QPointer<NmMessageSendingOperation> mSendOperation; // Not owned
};
--- a/emailuis/nmailuiengine/inc/nmuiengineheaders.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/inc/nmuiengineheaders.h Fri May 14 04:41:45 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2009 - 2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -47,7 +47,6 @@
#include "nmmailboxlistmodel.h"
#include "nmfolderlistmodel.h"
#include "nmmessagelistmodel.h"
-#include "nmmessagesearchlistmodel.h"
#include "nmdatapluginfactory.h"
#include "nmdataplugininterface.h"
#include "nmmailboxlistmodelitem.h"
@@ -63,6 +62,7 @@
#include "nmmessagecreationoperation.h"
#include "nmcheckoutboxoperation.h"
#include "nmmessagecreationoperation.h"
+#include "nmapplicationstateinterface.h"
// nmailui
#include "nmactionrequest.h"
--- a/emailuis/nmailuiengine/nmailuiengine.pro Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/nmailuiengine.pro Fri May 14 04:41:45 2010 +0300
@@ -1,4 +1,4 @@
-# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+# Copyright (c) 2009 - 2010 Nokia Corporation and/or its subsidiary(-ies).
# All rights reserved.
# This component and the accompanying materials are made available
# under the terms of "Eclipse Public License v1.0"
@@ -36,7 +36,6 @@
inc/nmfoldermetadata.h \
inc/nmmessagelistmodelitem.h \
inc/nmmessagelistmodel.h \
- inc/nmmessagesearchlistmodel.h \
inc/nmuienginedef.h \
inc/nmdataplugininterface.h \
inc/nmicons.h \
@@ -45,7 +44,8 @@
inc/nmaddattachmentsoperation.h \
inc/nmmessagesendingoperation.h \
inc/nmcheckoutboxoperation.h \
- inc/nmstoreenvelopesoperation.h
+ inc/nmstoreenvelopesoperation.h \
+ inc/nmapplicationstateinterface.h
SOURCES += src/nmuiengine.cpp \
src/nmdatamanager.cpp \
@@ -56,7 +56,6 @@
src/nmfoldermetadata.cpp \
src/nmmessagelistmodelitem.cpp \
src/nmmessagelistmodel.cpp \
- src/nmmessagesearchlistmodel.cpp \
src/nmdatapluginfactory.cpp \
src/nmicons.cpp \
src/nmbaseclientplugin.cpp \
--- a/emailuis/nmailuiengine/src/nmbaseclientplugin.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/src/nmbaseclientplugin.cpp Fri May 14 04:41:45 2010 +0300
@@ -240,6 +240,7 @@
*/
void NmBaseClientPlugin::settings()
{
+ handleRequest(NmActionResponseCommandSettings, mMenuRequest);
}
/*!
--- a/emailuis/nmailuiengine/src/nmdatamanager.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/src/nmdatamanager.cpp Fri May 14 04:41:45 2010 +0300
@@ -280,4 +280,32 @@
}
+/*!
+ Returns folder type by id
+ \param mailboxId The ID of the mailbox containing the folder
+
+ \param folderId The ID of the folder
+
+ \return Folder type
+*/
+NmFolderType NmDataManager::folderTypeById(NmId mailboxId, NmId folderId)
+{
+ NmFolderType folderType(NmFolderOther);
+ if (getStandardFolderId(mailboxId,NmFolderInbox)==folderId){
+ folderType=NmFolderInbox;
+ }
+ else if (getStandardFolderId(mailboxId,NmFolderOutbox)==folderId){
+ folderType=NmFolderOutbox;
+ }
+ else if (getStandardFolderId(mailboxId,NmFolderDrafts)==folderId){
+ folderType=NmFolderDrafts;
+ }
+ else if (getStandardFolderId(mailboxId,NmFolderSent)==folderId){
+ folderType=NmFolderSent;
+ }
+ else if (getStandardFolderId(mailboxId,NmFolderDeleted)==folderId){
+ folderType=NmFolderDeleted;
+ }
+ return folderType;
+}
--- a/emailuis/nmailuiengine/src/nmdatapluginfactory.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/src/nmdatapluginfactory.cpp Fri May 14 04:41:45 2010 +0300
@@ -110,6 +110,26 @@
/*!
*/
+NmApplicationStateInterface *NmDataPluginFactory::applicationStateInterfaceInstance(QObject *plugin)
+{
+ NmApplicationStateInterface *pluginInterface = NULL;
+ if (plugin) {
+ pluginInterface= qobject_cast<NmApplicationStateInterface*>(plugin);
+ }
+ return pluginInterface;
+}
+
+/*!
+
+ */
+NmApplicationStateInterface *NmDataPluginFactory::applicationStateInterfaceInstance(NmId mailboxId)
+{
+ return applicationStateInterfaceInstance(pluginInstance(mailboxId));
+}
+
+/*!
+
+ */
QObject *NmDataPluginFactory::pluginInstance(NmId mailboxId)
{
QObject *value(NULL);
--- a/emailuis/nmailuiengine/src/nmmailboxlistmodel.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/src/nmmailboxlistmodel.cpp Fri May 14 04:41:45 2010 +0300
@@ -30,7 +30,7 @@
/*!
Constructor
*/
-NmMailboxListModel::NmMailboxListModel(NmDataManager &dataManager, QObject *parent)
+NmMailboxListModel::NmMailboxListModel(NmDataManager &dataManager, QObject *parent)
:QStandardItemModel(parent),
mDataManager(dataManager)
{
@@ -177,6 +177,7 @@
NmMailboxMetaData *newMeta = new NmMailboxMetaData();
newMeta->setId(mailbox->id());
newMeta->setName(mailbox->name());
+ newMeta->setAddress(mailbox->address().address());
NmMailboxListModelItem *item = new NmMailboxListModelItem();
item->setItemMetaData(newMeta);
--- a/emailuis/nmailuiengine/src/nmmailboxmetadata.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/src/nmmailboxmetadata.cpp Fri May 14 04:41:45 2010 +0300
@@ -34,6 +34,7 @@
QString mName;
NmId mId;
NmId mIconId;
+ QString mAddress;
};
@@ -102,7 +103,18 @@
d->mIconId = id;
}
-
+/*!
+ Get mailbox address
+*/
+QString NmMailboxMetaData::address() const
+{
+ return d->mAddress;
+}
-
-
+/*!
+ Set Mailbox address as \a address
+*/
+void NmMailboxMetaData::setAddress(const QString &address)
+{
+ d->mAddress = address;
+}
--- a/emailuis/nmailuiengine/src/nmmessagelistmodel.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/src/nmmessagelistmodel.cpp Fri May 14 04:41:45 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2009 - 2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -17,6 +17,7 @@
#include "nmuiengineheaders.h"
+static const int NmFolderTypeRole = Qt::UserRole+1;
/*!
\class NmMessageListModel
@@ -29,77 +30,102 @@
*/
/*!
- Constructor
- */
-NmMessageListModel::NmMessageListModel(NmDataManager &dataManager, QObject *parent)
-:QStandardItemModel(parent),
-mDataManager(dataManager),
-mDividersActive(false),
-mParentPtr(NULL)
+ Class constructor.
+*/
+NmMessageListModel::NmMessageListModel(NmDataManager &dataManager,
+ QObject *parent /* = 0 */)
+: QStandardItemModel(parent),
+ mDataManager(dataManager),
+ mDividersActive(false),
+ mParentPtr(NULL),
+ mCurrentFolderType(NmFolderInbox),
+ mIgnoreFolderIds(false)
{
// Check for setting whether dividers are active
// mDividersActive = ...
// update also the test cases
}
+
/*!
- Destructor
- */
+ Class destructor.
+*/
NmMessageListModel::~NmMessageListModel()
{
clear();
}
+
/*!
Returns data specified by \a index. Only Qt::DisplayRole is supported in \a role.
The refresh method must have been called before this method can return any real data.
- */
-
+*/
QVariant NmMessageListModel::data(const QModelIndex &index, int role) const
{
QVariant qVariant;
- if (index.isValid() && Qt::DisplayRole == role) {
- NmMessageListModelItem *item = static_cast<NmMessageListModelItem*>(itemFromIndex(index));
- qVariant = QVariant::fromValue(item);
+
+ if (index.isValid()){
+ if (role == Qt::DisplayRole) {
+ NmMessageListModelItem *item =
+ static_cast<NmMessageListModelItem*>(itemFromIndex(index));
+ qVariant = QVariant::fromValue(item);
+ }
+ else if (role == NmFolderTypeRole) {
+ qVariant = QVariant(mCurrentFolderType);
+ }
}
+
return qVariant;
}
+
/*!
This refreshes the data of the model.
- */
+
+ \param mailboxId The ID of the mailbox.
+ \param folderId The ID of the folder.
+ \param messageEnvelopeList A list containing the message meta data.
+*/
void NmMessageListModel::refresh(
- const NmId mailboxId,
- const NmId folderId,
- const QList<NmMessageEnvelope*> &messageEnvelopeList)
+ const NmId mailboxId,
+ const NmId folderId,
+ const QList<NmMessageEnvelope*> &messageEnvelopeList)
{
- // Store current mailbox and folder id
+ // Store the current mailbox and folder IDs.
mCurrentMailboxId = mailboxId;
mCurrentFolderId = folderId;
- // clear the model
+
+ // Store the type of the currently displayed folder.
+ mCurrentFolderType = mDataManager.folderTypeById(mailboxId, folderId);
+
+ // Clear the model.
clear();
- // Add items
+
+ // Add the items from the given list.
NmMessageEnvelope* insertedMessage(NULL);
int parentCount(0);
int childCount(0);
+
for (int i(0); i < messageEnvelopeList.count(); i++) {
NmMessageEnvelope* nextMessage = messageEnvelopeList[i];
- if (mDividersActive && !messagesBelongUnderSameDivider(
- insertedMessage, nextMessage)) {
+
+ if (mDividersActive &&
+ !messagesBelongUnderSameDivider(insertedMessage, nextMessage)) {
insertDividerIntoModel(nextMessage, parentCount);
parentCount++;
childCount = 0;
}
+
insertMessageIntoModel(nextMessage, childCount, false);
insertedMessage = nextMessage;
childCount++;
}
- //NMLOG(QString("nmailuiengine: model row count = %1").arg(rowCount()));
}
+
/*!
insertDividerIntoModel. Function inserts divider into model.
- */
+*/
void NmMessageListModel::insertDividerIntoModel(
NmMessageEnvelope *messageForDivider,
int parentRow)
@@ -112,7 +138,7 @@
/*!
Function inserts message into model. Message can be inserted
either to root or to parent. If parent is zero, item is added into root.
- */
+*/
void NmMessageListModel::insertMessageIntoModel(
NmMessageEnvelope *messageEnvelope, int childRow, bool emitSignal)
{
@@ -133,7 +159,7 @@
/*!
Function checks whether the messages can be drawn under same title divider
Check is done depending of the current sorting criteria
- */
+*/
bool NmMessageListModel::messagesBelongUnderSameDivider(
const NmMessageEnvelope *message1,
const NmMessageEnvelope *message2) const
@@ -154,53 +180,77 @@
/*!
- Function handles message events
- */
-void NmMessageListModel::handleMessageEvent(
- NmMessageEvent event,
- const NmId &folderId,
- const QList<NmId> &messageIds)
+ Handles the message events.
+
+ \param event The type of the message event.
+ \param folderId The folder containing the message.
+ \param messageIds A list of message IDs related to the event.
+*/
+void NmMessageListModel::handleMessageEvent(NmMessageEvent event,
+ const NmId &folderId,
+ const QList<NmId> &messageIds)
{
+ NMLOG(QString("nmmessagelistmodel::handleMessageEvent()"));
+
NmId mailboxId = mCurrentMailboxId;
+ const int idCount = messageIds.count();
- if (folderId == 0) {
- // const cast is used here because also the input parameter has to be changed
- const_cast<NmId&>(folderId) = mDataManager.getStandardFolderId(mailboxId, NmFolderInbox);
- NmUiStartParam *startParam = new NmUiStartParam(NmUiViewMessageList, mailboxId, folderId);
- emit setNewParam(startParam);
+ // Folder ID does not concern us if this model instance is used for e.g.
+ // searching messages.
+ if (!mIgnoreFolderIds) {
+ if (folderId == 0) {
+ // Const cast is used here because also the input parameter has to
+ // be changed.
+ const_cast<NmId&>(folderId) =
+ mDataManager.getStandardFolderId(mailboxId, NmFolderInbox);
+ NmUiStartParam *startParam =
+ new NmUiStartParam(NmUiViewMessageList, mailboxId, folderId);
+ emit setNewParam(startParam);
+ }
+
+ if (mCurrentFolderId == 0) {
+ // Folder ID was not known at time when the mailbox opened and we
+ // know that because of events the subscription is valid only for
+ // the current mailbox.
+ mCurrentFolderId = folderId;
+ }
+
+ if (mCurrentFolderId != folderId) {
+ // The event does not concern the folder currently being displayed.
+ // Thus, ignore it.
+ return;
+ }
}
- if (mCurrentFolderId == 0) {
- // Folder id was not known at time mailbox opened
- // and we know subscription is valid only for current
- // mailbox, because of events.
- mCurrentFolderId = folderId;
- }
- // Handle events if they concern currently displayed folder
- if (mCurrentFolderId == folderId) {
- NMLOG(QString("nmailuiengine: handleMessageEvent"));
- if (NmMessageChanged == event) {
- for (int a(0); a < messageIds.count(); a++) {
- updateMessageEnvelope(mailboxId, folderId,messageIds[a]);
+
+ // Go through the given message IDs and do the appropriate operations
+ // according to the type of the event.
+ for (int i(0); i < idCount; ++i) {
+ switch (event) {
+ case NmMessageChanged: {
+ updateMessageEnvelope(mailboxId, folderId, messageIds[i]);
+ break;
}
- }
- else if (NmMessageCreated == event) {
- for (int a(0); a < messageIds.count(); a++) {
- if(!itemFromModel(messageIds[a])) {
- insertNewMessageIntoModel(mailboxId, folderId, messageIds[a]);
+ case NmMessageCreated:
+ case NmMessageFound: {
+ if (!itemFromModel(messageIds[i])) {
+ insertNewMessageIntoModel(mailboxId, folderId, messageIds[i]);
}
+
+ break;
}
- } else {
- for (int a(0); a < messageIds.count(); a++) {
- removeMessageFromModel(messageIds[a]);
+ case NmMessageDeleted: {
+ removeMessageFromModel(messageIds[i]);
+ break;
}
}
}
}
+
/*!
Function inserts new message into correct position to model.
A new title divider is created if it is needed.
- */
+*/
void NmMessageListModel::insertNewMessageIntoModel(
const NmId &mailboxId,
const NmId &folderId,
@@ -266,7 +316,7 @@
/*!
Function check model index in which the new message should be inserted
with the currently active sort mode.
- */
+*/
int NmMessageListModel::getInsertionIndex(
const NmMessageEnvelope &envelope) const
{
@@ -300,7 +350,7 @@
/*!
Function finds preceding title divider index and sets the
mParentPtr variable.
- */
+*/
int NmMessageListModel::dividerInsertionIndex(int messageIndex)
{
bool found(false);
@@ -322,7 +372,7 @@
/*!
Create title divider item
- */
+*/
NmMessageListModelItem *NmMessageListModel::createTitleDividerItem(
NmMessageEnvelope *messageForDivider)
{
@@ -351,7 +401,7 @@
/*!
Create message item
- */
+*/
NmMessageListModelItem *NmMessageListModel::createMessageItem(
NmMessageEnvelope *envelope)
{
@@ -365,7 +415,7 @@
/*!
Returns divider state
- */
+*/
bool NmMessageListModel::dividersActive()
{
return mDividersActive;
@@ -373,7 +423,7 @@
/*!
Set divider state
- */
+*/
void NmMessageListModel::setDividers(bool active)
{
mDividersActive = active;
@@ -381,7 +431,7 @@
/*!
Change item property if differs
- */
+*/
void NmMessageListModel::setEnvelopeProperties(
NmEnvelopeProperties property,
const QList<NmId> &messageIds)
@@ -391,17 +441,32 @@
}
}
+
/*!
- Returns the id of the current mailbox
- */
+ Returns the ID of the current mailbox.
+*/
NmId NmMessageListModel::currentMailboxId()
{
return mCurrentMailboxId;
}
+
+/*!
+ Sets whether the model should ignore the folder IDs or not. The folder IDs
+ should be ignored e.g. when the model is used for searching messages
+ (i.e. used by the search view).
+
+ \param ignore If true, will ignore the folder IDs.
+*/
+void NmMessageListModel::setIgnoreFolderIds(bool ignore)
+{
+ mIgnoreFolderIds = ignore;
+}
+
+
/*!
Remove message from model if message exists in model
- */
+*/
void NmMessageListModel::removeMessageFromModel(const NmId &msgId)
{
QList<QStandardItem*> items = findItems("*", Qt::MatchWildcard | Qt::MatchRecursive);
@@ -453,7 +518,7 @@
/*!
Helper function to remove row
- */
+*/
void NmMessageListModel::removeItem(int row, NmMessageListModelItem &item)
{
QStandardItem *parent = item.parent();
@@ -462,7 +527,7 @@
/*!
Search item from model
- */
+*/
NmMessageListModelItem *NmMessageListModel::itemFromModel(const NmId &messageId)
{
QList<QStandardItem*> items = findItems("*", Qt::MatchWildcard | Qt::MatchRecursive);
@@ -485,7 +550,7 @@
/*!
Helper function for envelope comparison
- */
+*/
bool NmMessageListModel::changed(const NmMessageEnvelope &first, const NmMessageEnvelope &second)
{
return first != second;
@@ -493,7 +558,7 @@
/*!
Updates envelope if something is changed
- */
+*/
void NmMessageListModel::updateMessageEnvelope(const NmId &mailboxId,
const NmId &folderId,
const NmId &msgId)
@@ -514,7 +579,7 @@
/*!
Update envelope property
- */
+*/
void NmMessageListModel::updateEnvelope(NmEnvelopeProperties property, const NmId &msgId)
{
NmMessageListModelItem *item = itemFromModel(msgId);
--- a/emailuis/nmailuiengine/src/nmmessagesearchlistmodel.cpp Fri May 14 04:17:40 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,173 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include "nmuiengineheaders.h"
-
-/*!
- \class NmMessageSearchListModel
- \brief A proxy model used to filter out messages from the message list model
- that are not amongst the search results.
-*/
-
-/*!
- Class constructor.
-*/
-NmMessageSearchListModel::NmMessageSearchListModel(QObject *parent)
-: QSortFilterProxyModel(parent)
-{
- // No implementation required.
-}
-
-
-/*!
- Class destructor.
-*/
-NmMessageSearchListModel::~NmMessageSearchListModel()
-{
- clearSearchResults();
-}
-
-
-/*!
- Clears search results and removes the accepted source model items from this
- proxy model.
-*/
-void NmMessageSearchListModel::clearSearchResults()
-{
- mSearchResults.clear();
- invalidateFilter();
-}
-
-
-/*!
- Returns the number of search results i.e. IDs in the container.
-
- \return The number of search results.
-*/
-int NmMessageSearchListModel::searchResultCount() const
-{
- return mSearchResults.count();
-}
-
-
-/*!
- From QSortFilterProxyModel.
- Returns the data from the source model according to the given proxy index.
-
- \param index The index of this proxy model.
- \param role The item role.
-
- \return The item data wrapped in a QVariant.
-*/
-QVariant NmMessageSearchListModel::data(const QModelIndex &index,
- int role /* = Qt::DisplayRole */) const
-{
- QVariant retVal;
- QAbstractItemModel *model = sourceModel();
-
- if (model) {
- // Return the data from the source model by mapping the given index
- // in respect to the source model.
- QModelIndex sourceIndex = mapToSource(index);
- retVal = model->data(sourceIndex, role);
- }
- else {
- // Since no source model set, use the base class method implementation.
- retVal = QSortFilterProxyModel::data(index, role);
- }
-
- return retVal;
-}
-
-
-/*!
- From QSortFilterProxyModel.
- Filters the items of the source model depending on the current search results.
-
- \param source_row A source model row index.
- \param source_parent The parent model index of the row.
-
- \return True if the row should be accepted to the search list model, false
- otherwise.
-*/
-bool NmMessageSearchListModel::filterAcceptsRow(int source_row,
- const QModelIndex &source_parent) const
-{
- bool accept(false);
-
- // Get the source model.
- NmMessageListModel *model = qobject_cast<NmMessageListModel*>(sourceModel());
-
- if (model) {
- // Extract the model item corresponding the given row and index.
- QModelIndex listIndex = model->index(source_row, 0, source_parent);
- QVariant qVariant = model->data(listIndex);
- NmMessageListModelItem *item = qVariant.value<NmMessageListModelItem*>();
-
- if (item) {
- // Get the message ID from the item and compare it to the current
- // search results.
- const NmId itemId = item->envelope().messageId();
-
- if (mSearchResults.contains(itemId)) {
- // The message ID matches the search result => do accept the row.
- accept = true;
- }
- }
- }
-
- return accept;
-}
-
-
-/*!
- Adds the given message ID to the search results.
-
- \param messageId The ID to add.
-
- \return True if the given ID was added, false otherwise.
-*/
-bool NmMessageSearchListModel::addSearchResult(const NmId &messageId)
-{
- bool resultAdded(false);
-
- // Make sure not to add the same ID twice.
- if (!mSearchResults.contains(messageId)) {
- // Add the given ID to the results.
- mSearchResults.append(messageId);
- resultAdded = true;
-
- // Invalidate the filter in order to update the model. This forces
- // filterAcceptsRow() to be ran again for each row in the source model.
- invalidateFilter();
- }
-
- return resultAdded;
-}
-
-
-/*!
- Refreshes the content by forcing the model to re-process the source model
- items using the current filter (search results).
-*/
-void NmMessageSearchListModel::refreshContent()
-{
- invalidateFilter();
-}
-
-
-// End of file.
--- a/emailuis/nmailuiengine/src/nmoperation.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/src/nmoperation.cpp Fri May 14 04:41:45 2010 +0300
@@ -54,13 +54,17 @@
*/
void NmOperation::addPreliminaryOperation(NmOperation *operation)
{
- connect(operation, SIGNAL(operationCompleted()), this,
- SLOT(handlePreliminaryOperationFinished()));
-
- connect(operation, SIGNAL(operationCancelled()), this,
- SLOT(handlePreliminaryOperationFinished()));
-
- mPreliminaryOperations.append(operation);
+ // if the preliminary operation is already completed
+ // the input parameter can be null
+ if (operation && operation->isRunning()) {
+ connect(operation, SIGNAL(operationCompleted()), this,
+ SLOT(handlePreliminaryOperationFinished()));
+
+ connect(operation, SIGNAL(operationCancelled()), this,
+ SLOT(handlePreliminaryOperationFinished()));
+
+ mPreliminaryOperations.append(operation);
+ }
}
/*!
--- a/emailuis/nmailuiengine/src/nmuiengine.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiengine/src/nmuiengine.cpp Fri May 14 04:41:45 2010 +0300
@@ -182,59 +182,85 @@
}
}
+
/*!
- Returns a message list model for a folder identified by \a mailboxId and \a folderId.
- The model is updated dynamically. The ownership of the model object is not moved to the caller.
+ Returns a message list model for a folder identified by \a mailboxId and
+ \a folderId. The model is updated dynamically. The ownership of the model
+ object is not moved to the caller.
*/
-NmMessageListModel &NmUiEngine::messageListModel(const NmId &mailboxId, const NmId &folderId)
+NmMessageListModel &NmUiEngine::messageListModel(const NmId &mailboxId,
+ const NmId &folderId)
{
- if (!mMessageListModel){
+ if (!mMessageListModel) {
mMessageListModel = new NmMessageListModel(*mDataManager);
}
- else{
+ else {
mMessageListModel->clear();
}
- QObject *plugin =
- mPluginFactory->pluginInstance(mailboxId);
+
+ QObject *plugin = mPluginFactory->pluginInstance(mailboxId);
+
if (plugin) {
QObject::connect(plugin,
SIGNAL(messageEvent(NmMessageEvent, const NmId &, const QList<NmId> &, const NmId&)),
- mMessageListModel,
+ mMessageListModel,
SLOT(handleMessageEvent(NmMessageEvent, const NmId &, const QList<NmId> &)),
Qt::UniqueConnection );
QObject::connect(
plugin, SIGNAL(syncStateEvent(NmSyncState, const NmOperationCompletionEvent &)),
this, SLOT(handleSyncStateEvent(NmSyncState, const NmOperationCompletionEvent &)),
- Qt::UniqueConnection);
- // no need for mailbox event subscription here, already done in constructor
+ Qt::UniqueConnection);
+
+ // No need for mailbox event subscription here, already done in
+ // constructor.
}
+
QList<NmMessageEnvelope*> messageEnvelopeList;
mDataManager->listMessages(mailboxId, folderId, messageEnvelopeList);
mMessageListModel->refresh(mailboxId, folderId, messageEnvelopeList);
+
while (!messageEnvelopeList.isEmpty()) {
delete messageEnvelopeList.takeFirst();
}
+
return *mMessageListModel;
}
/*!
- Returns a reference of the message search list model. If the model does not
- exist yet, one is constructed.
+ Returns a message list model used in the search view.
- \param sourceModel The source model for the search list model.
+ \param mailboxId The ID of the mailbox to search messages from.
- \return The message search list model.
+ \return A message list model.
*/
-NmMessageSearchListModel &NmUiEngine::messageSearchListModel(
- QAbstractItemModel *sourceModel)
+NmMessageListModel &NmUiEngine::messageListModelForSearch(const NmId &mailboxId)
{
+ Q_UNUSED(mailboxId);
+
if (!mMessageSearchListModel) {
- mMessageSearchListModel = new NmMessageSearchListModel();
+ mMessageSearchListModel = new NmMessageListModel(*mDataManager);
+ mMessageSearchListModel->setIgnoreFolderIds(true);
+ }
+ else {
+ mMessageSearchListModel->clear();
}
- mMessageSearchListModel->setSourceModel(sourceModel);
+ QObject *plugin = mPluginFactory->pluginInstance(mailboxId);
+
+ if (plugin) {
+ QObject::connect(plugin,
+ SIGNAL(messageEvent(NmMessageEvent, const NmId &, const QList<NmId> &, const NmId&)),
+ mMessageSearchListModel,
+ SLOT(handleMessageEvent(NmMessageEvent, const NmId &, const QList<NmId> &)),
+ Qt::UniqueConnection);
+ }
+
+ // Refresh to set the mailbox ID.
+ QList<NmMessageEnvelope*> messageEnvelopeList;
+ mMessageSearchListModel->refresh(mailboxId, 0, messageEnvelopeList);
+
return *mMessageSearchListModel;
}
@@ -310,6 +336,25 @@
/*!
*/
+QPointer<NmOperation> NmUiEngine::fetchMessageParts(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId,
+ const QList<NmId> &messagePartIds)
+{
+ NMLOG("NmUiEngine::fetchMessageParts() <---");
+ QPointer<NmOperation> value(NULL);
+ NmDataPluginInterface *plugin =
+ mPluginFactory->interfaceInstance(mailboxId);
+ if (plugin) {
+ value = plugin->fetchMessageParts(mailboxId, folderId, messageId, messagePartIds);
+ }
+ return value;
+}
+
+/*!
+
+*/
XQSharableFile NmUiEngine::messagePartFile(
const NmId &mailboxId,
const NmId &folderId,
@@ -707,13 +752,17 @@
if (pluginInstance) {
// Make sure the required signals are connected.
- connect(pluginInstance, SIGNAL(matchFound(const NmId &)),
- this, SIGNAL(matchFound(const NmId &)), Qt::UniqueConnection);
- connect(pluginInstance, SIGNAL(matchFound(const NmId &)),
- mMessageSearchListModel, SLOT(addSearchResult(const NmId &)),
+ connect(pluginInstance, SIGNAL(matchFound(const NmId &, const NmId &)),
+ this, SIGNAL(matchFound(const NmId &, const NmId &)),
+ Qt::UniqueConnection);
+
+ connect(pluginInstance, SIGNAL(matchFound(const NmId &, const NmId &)),
+ this, SLOT(handleMatchFound(const NmId &, const NmId &)),
+ Qt::UniqueConnection);
+
+ connect(pluginInstance, SIGNAL(searchComplete()),
+ this, SIGNAL(searchComplete()),
Qt::UniqueConnection);
- connect(pluginInstance, SIGNAL(searchComplete()),
- this, SIGNAL(searchComplete()), Qt::UniqueConnection);
}
int retVal(NmNoError);
@@ -754,34 +803,31 @@
}
/*!
- Cancels the search operation if one is ongoing.
-
- \param mailboxId The ID of the mailbox containing the folder
-
- \param folderId The ID of the folder
-
\return Folder type
*/
NmFolderType NmUiEngine::folderTypeById(NmId mailboxId, NmId folderId)
-{
- NmFolderType folderType(NmFolderOther);
- if (standardFolderId(mailboxId,NmFolderInbox)==folderId){
- folderType=NmFolderInbox;
- }
- else if (standardFolderId(mailboxId,NmFolderOutbox)==folderId){
- folderType=NmFolderOutbox;
+{
+ NmFolderType ret(NmFolderInbox);
+ if (mDataManager){
+ ret = mDataManager->folderTypeById(mailboxId,folderId);
}
- else if (standardFolderId(mailboxId,NmFolderDrafts)==folderId){
- folderType=NmFolderDrafts;
+ return ret;
+}
+
+/*!
+ Indicates application state information to protocol plugin
+ \param mailboxId Id of active mailbox, 0 if application is closed.
+ \param folderId Id of active folder, 0 if application is closed.
+*/
+void NmUiEngine::updateActiveFolder(const NmId &mailboxId, const NmId &folderId)
+{
+ NmApplicationStateInterface *interface =
+ mPluginFactory->applicationStateInterfaceInstance(mailboxId);
+ if (interface) {
+ interface->updateActiveFolder(mailboxId, folderId);
}
- else if (standardFolderId(mailboxId,NmFolderSent)==folderId){
- folderType=NmFolderSent;
- }
- else if (standardFolderId(mailboxId,NmFolderDeleted)==folderId){
- folderType=NmFolderDeleted;
- }
- return folderType;
}
+
/*!
Handle completed send operation.
*/
@@ -849,6 +895,30 @@
}
}
+
+/*!
+ Adds the found message into the search model.
+
+ \param messageId The ID of the found message.
+ \param folderId The ID of the folder where the message is located.
+*/
+void NmUiEngine::handleMatchFound(const NmId &messageId, const NmId &folderId)
+{
+ if (!mMessageSearchListModel) {
+ // No search list model!
+ return;
+ }
+
+ // Add the found message into the search model.
+ QList<NmId> messageIdList;
+ messageIdList.append(messageId);
+
+ mMessageSearchListModel->handleMessageEvent(NmMessageFound,
+ folderId,
+ messageIdList);
+}
+
+
/*!
receives events when going online, and offline.
*/
--- a/emailuis/nmailuiwidgets/inc/nmeditortextedit.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiwidgets/inc/nmeditortextedit.h Fri May 14 04:41:45 2010 +0300
@@ -61,6 +61,7 @@
int mHeaderHeight;
QPointF mBgScrollPosition;
bool mFirstTime;
+ bool mFirstTimeToScrollPosUpdate;
QPair<bool, QColor> mCustomTextColor;//!<This property keeps info about using customTextColor and color to use.
};
--- a/emailuis/nmailuiwidgets/src/nmeditortextedit.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmailuiwidgets/src/nmeditortextedit.cpp Fri May 14 04:41:45 2010 +0300
@@ -30,7 +30,8 @@
Constructor
*/
NmEditorTextEdit::NmEditorTextEdit(QGraphicsItem *parent) :
- HbTextEdit(parent)
+ HbTextEdit(parent),
+ mFirstTimeToScrollPosUpdate(true)
{
}
@@ -151,6 +152,12 @@
*/
void NmEditorTextEdit::updateScrollPosition(const QPointF &newPosition)
{
+ // Temporary fix: When this is called for the first time, the editor is scrolled down for
+ // some reason so this will restore the scroll position.
+ if(mFirstTimeToScrollPosUpdate) {
+ mFirstTimeToScrollPosUpdate = false;
+ mBackgroundScrollArea->scrollContentsTo(QPointF(0,0));
+ }
mBgScrollPosition = newPosition;
}
--- a/emailuis/nmframeworkadapter/inc/nmframeworkadapter.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/inc/nmframeworkadapter.h Fri May 14 04:41:45 2010 +0300
@@ -20,6 +20,7 @@
#include <nmcommon.h>
#include <nmdataplugininterface.h>
+#include <nmapplicationstateinterface.h>
#include <CFSMailCommon.h>
#include <MFSMailEventObserver.h>
@@ -33,6 +34,7 @@
class NmOperation;
class NmMessageCreationOperation;
class CFSMailClient;
+class CFSMailFolder;
class CFSMailMessage;
class CFSMailMessagePart;
class NmStoreEnvelopesOperation;
@@ -45,10 +47,11 @@
class NmFrameworkAdapter :
public QObject,
public NmDataPluginInterface,
+ public NmApplicationStateInterface,
public MFSMailEventObserver
{
Q_OBJECT
- Q_INTERFACES(NmDataPluginInterface)
+ Q_INTERFACES(NmDataPluginInterface NmApplicationStateInterface)
public:
@@ -78,7 +81,13 @@
const NmId& mailboxId,
const NmId& folderId,
QList<NmMessageEnvelope*> &messageMetaDataList);
-
+
+ int listMessages(
+ const NmId& mailboxId,
+ const NmId& folderId,
+ QList<NmMessageEnvelope*> &messageMetaDataList,
+ const int maxAmountOfEnvelopes);
+
int listMessages(
const NmId& mailboxId,
const NmId& folderId,
@@ -95,6 +104,12 @@
const NmId &folderId,
const NmId &messageId,
const NmId &messagePartId);
+
+ QPointer<NmOperation> fetchMessageParts(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId,
+ const QList<NmId> &messagePartIds);
XQSharableFile messagePartFile(
const NmId &mailboxId,
@@ -177,19 +192,14 @@
const NmId &mailboxId,
const NmId &folderId,
NmFolder *&folder );
-
- int listMessages(
- const NmId& mailboxId,
- const NmId& folderId,
- QList<NmMessageEnvelope*> &messageMetaDataList,
- const int maxAmountOfEnvelopes);
int search(const NmId &mailboxId,
const QStringList &searchStrings);
int cancelSearch(const NmId &mailboxId);
-
+ void updateActiveFolder(const NmId &mailboxId, const NmId &folderId);
+
signals:
void mailboxEvent(NmMailboxEvent event, const QList<NmId> &mailboxIds);
@@ -206,7 +216,7 @@
void connectionEvent(NmConnectState state, const NmId mailboxId, int errorCode);
- void matchFound(const NmId &messageId);
+ void matchFound(const NmId &messageId, const NmId &folderId);
void searchComplete();
@@ -224,7 +234,11 @@
const NmId &folderId,
const NmId &messageId,
NmMessagePart &messagePart);
-
+
+ void getMessagesFromFolderL(CFSMailFolder *folder,
+ QList<NmMessageEnvelope*> &messageEnvelopeList,
+ const int maxEnvelopeCount);
+
void listMessagesL(
const NmId &mailboxId,
const NmId &folderId,
@@ -273,7 +287,7 @@
void handleSyncstateEvent(TAny* param1, TFSMailMsgId mailbox);
- void getFolderByIdL(
+ void getFolderByIdL(
const NmId& mailboxId,
const NmId& folderId,
NmFolder*& unreadCount );
--- a/emailuis/nmframeworkadapter/inc/nmframeworkadapterheaders.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/inc/nmframeworkadapterheaders.h Fri May 14 04:41:45 2010 +0300
@@ -39,6 +39,8 @@
#include <nmmessagesendingoperation.h>
#include <nmaddattachmentsoperation.h>
#include <nmmessagecreationoperation.h>
+#include <nmdataplugininterface.h>
+#include <nmapplicationstateinterface.h>
// nmailbase
#include <nmmailbox.h>
@@ -60,6 +62,7 @@
#include "nmfwareplymessagecreationoperation.h"
#include "nmfwamessagefetchingoperation.h"
#include "nmfwamessagepartfetchingoperation.h"
+#include "nmfwamessagepartsfetchingoperation.h"
#include "nmfwamessagesendingoperation.h"
#include "nmfwastoreenvelopesoperation.h"
#include "nmfwastoremessageoperation.h"
--- a/emailuis/nmframeworkadapter/inc/nmfwaaddattachmentsoperation.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/inc/nmfwaaddattachmentsoperation.h Fri May 14 04:41:45 2010 +0300
@@ -42,6 +42,7 @@
protected:
void doRunAsyncOperation();
+ void doCompleteOperation();
void doCancelOperation();
private:
--- a/emailuis/nmframeworkadapter/inc/nmfwamessagefetchingoperation.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/inc/nmfwamessagefetchingoperation.h Fri May 14 04:41:45 2010 +0300
@@ -39,6 +39,7 @@
protected:
void doRunAsyncOperation();
+ void doCompleteOperation();
void doCancelOperation();
private:
--- a/emailuis/nmframeworkadapter/inc/nmfwamessagepartfetchingoperation.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/inc/nmfwamessagepartfetchingoperation.h Fri May 14 04:41:45 2010 +0300
@@ -40,6 +40,7 @@
protected:
void doRunAsyncOperation();
+ void doCompleteOperation();
void doCancelOperation();
private:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/emailuis/nmframeworkadapter/inc/nmfwamessagepartsfetchingoperation.h Fri May 14 04:41:45 2010 +0300
@@ -0,0 +1,63 @@
+/*
+ * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description:
+ *
+ */
+
+#ifndef NMFWAMESSAGEPARTSFETCHINGOPERATION_H_
+#define NMFWAMESSAGEPARTSFETCHINGOPERATION_H_
+
+#include <nmoperation.h>
+#include <MFSMailRequestObserver.h>
+
+class NmMessage;
+class CFSMailClient;
+
+class NmFwaMessagePartsFetchingOperation : public NmOperation, public MFSMailRequestObserver
+{
+ Q_OBJECT
+public:
+ NmFwaMessagePartsFetchingOperation(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId,
+ const QList<NmId> &messagePartIds,
+ CFSMailClient &mailClient);
+
+ // from MFSMailRequestObserver
+ void RequestResponseL(TFSProgress aEvent, TInt aRequestId);
+
+protected:
+ void doRunAsyncOperation();
+ void doCompleteOperation();
+ void doCancelOperation();
+
+private:
+ ~NmFwaMessagePartsFetchingOperation();
+ void doRunAsyncOperationL();
+
+private:
+ NmId mMailboxId;
+ NmId mFolderId;
+ NmId mMessageId;
+ RArray<TFSMailMsgId> mMessagePartIds;
+
+ CFSMailClient &mMailClient;
+
+ int mLastProgressValue;
+
+ TInt mRequestId;
+};
+
+#endif /* NMFWAMESSAGEPARTSFETCHINGOPERATION_H_ */
--- a/emailuis/nmframeworkadapter/inc/nmmailboxsearchobserver.h Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/inc/nmmailboxsearchobserver.h Fri May 14 04:41:45 2010 +0300
@@ -47,7 +47,7 @@
signals:
- void matchFound(const NmId &messageId);
+ void matchFound(const NmId &messageId, const NmId &folderId);
void searchComplete();
};
--- a/emailuis/nmframeworkadapter/nmframeworkadapter.pro Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/nmframeworkadapter.pro Fri May 14 04:41:45 2010 +0300
@@ -13,7 +13,7 @@
#
# Description:
#
-# Version : %version: 26 %
+# Version : %version: e003sa37#27 %
TEMPLATE = lib
TARGET = nmframeworkadapter
@@ -38,7 +38,8 @@
inc/nmfwastoremessageoperation.h \
inc/nmfwacheckoutboxoperation.h \
inc/nmfwamessagepartfetchingoperation.h \
- inc/nmmailboxsearchobserver.h
+ inc/nmmailboxsearchobserver.h \
+ inc/nmfwamessagepartsfetchingoperation.h
SOURCES += src/nmframeworkadapter.cpp \
src/nmfwamessagefetchingoperation.cpp \
@@ -52,7 +53,8 @@
src/nmfwastoremessageoperation.cpp \
src/nmfwacheckoutboxoperation.cpp \
src/nmfwamessagepartfetchingoperation.cpp \
- src/nmmailboxsearchobserver.cpp
+ src/nmmailboxsearchobserver.cpp \
+ src/nmfwamessagepartsfetchingoperation.cpp
RESOURCES +=
--- a/emailuis/nmframeworkadapter/src/nmframeworkadapter.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/src/nmframeworkadapter.cpp Fri May 14 04:41:45 2010 +0300
@@ -276,6 +276,89 @@
}
}
+
+/*!
+ Fetches all the messages from the given folder and appends their meta data
+ into the given list.
+
+ \param folder The folder instance.
+ \param messageEnvelopeList The list where the data is stored to.
+ \param maxEnvelopeCount The maximum number of messages to get.
+*/
+void NmFrameworkAdapter::getMessagesFromFolderL(
+ CFSMailFolder *folder,
+ QList<NmMessageEnvelope*> &messageEnvelopeList,
+ const int maxEnvelopeCount)
+{
+ if (!folder || maxEnvelopeCount < 1) {
+ return;
+ }
+
+ int blockSize = NmListMessagesBlock;
+ int maxItemCount = NmMaxItemsInMessageList;
+
+ if (maxEnvelopeCount < NmMaxItemsInMessageList) {
+ maxItemCount = maxEnvelopeCount;
+
+ if(maxEnvelopeCount < NmListMessagesBlock) {
+ blockSize = maxEnvelopeCount;
+ }
+ }
+
+ // First prepare all the parameters and select message details to be listed.
+ TFSMailDetails details(EFSMsgDataEnvelope);
+
+ // Set the sorting criteria.
+ TFSMailSortCriteria criteria;
+ criteria.iField = EFSMailSortByDate;
+ criteria.iOrder = EFSMailDescending;
+ RArray<TFSMailSortCriteria> sorting;
+ CleanupClosePushL(sorting);
+ sorting.Append(criteria);
+
+ // Get the message list from the backend.
+ MFSMailIterator* iterator(NULL);
+ iterator = folder->ListMessagesL(details, sorting);
+
+ if (iterator) {
+ CleanupStack::PushL(iterator);
+ RPointerArray<CFSMailMessage> messages;
+ CleanupResetAndDestroy<CFSMailMessage>::PushL(messages);
+
+ // The message list is fetched in blocks to prevent OOM in protocol
+ // plugin side.
+ bool moreMessagesToFollow(false);
+ moreMessagesToFollow = iterator->NextL(TFSMailMsgId(), blockSize, messages);
+
+ for (int i = blockSize;
+ i < maxItemCount && moreMessagesToFollow;
+ i += blockSize) {
+ moreMessagesToFollow =
+ iterator->NextL(messages[i-1]->GetMessageId(), blockSize, messages);
+ }
+
+ // Add all the found emails into the result list.
+ const TInt messageCount(messages.Count());
+
+ for (TInt i = 0; i < messageCount; ++i) {
+ NmMessageEnvelope *newEnvelope(NULL);
+ newEnvelope = messages[i]->GetNmMessageEnvelope();
+
+ if (newEnvelope) {
+ messageEnvelopeList.append(newEnvelope);
+ }
+ }
+
+ CleanupStack::PopAndDestroy(&messages);
+ CleanupStack::Pop(iterator);
+ delete iterator;
+ iterator = NULL;
+ }
+
+ CleanupStack::PopAndDestroy(); // sorting
+}
+
+
/*!
Returns list of envelopes from the backend for specific mailbox and folder.
@@ -295,107 +378,67 @@
return err;
}
+
+/*!
+ Fetches the meta data for each message in the given mailbox and given
+ folder.
+
+ \param mailboxId The ID of the mailbox of which messages to list.
+ \param folderId The ID of the folder of which messages to list.
+ \param messageEnvelopeList The list where the message data is stored to.
+ Note that the ownership is transferred!
+ \param maxAmountOfEnvelopes The maximum number of messages to list.
+
+ \return If success, KErrNone, an error code otherwise.
+*/
int NmFrameworkAdapter::listMessages(
const NmId& mailboxId,
const NmId& folderId,
QList<NmMessageEnvelope*> &messageEnvelopeList,
const int maxAmountOfEnvelopes)
- {
+{
TInt err = KErrNone;
TRAP(err, listMessagesL(mailboxId,folderId, messageEnvelopeList,maxAmountOfEnvelopes) );
return err;
- }
+}
+
/*!
- Leaving version of list messages
- */
+ Fetches the meta data for each message in the given mailbox and given
+ folder. Note that this private method can leave.
+*/
void NmFrameworkAdapter::listMessagesL(
const NmId &mailboxId,
const NmId &folderId,
QList<NmMessageEnvelope*> &messageEnvelopeList,
const int maxAmountOfEnvelopes)
{
- CFSMailBox * currentMailbox(NULL);
- CFSMailFolder* folder(NULL);
-
- //If we are requesting 0 or less mails so we can return
- if( maxAmountOfEnvelopes <= 0)
- {
+ // If we are requesting 0 or less mails, we can just return.
+ if (maxAmountOfEnvelopes <= 0) {
return;
- }
+ }
- int blockSize = NmListMessagesBlock;
- int maxLimit = NmMaxItemsInMessageList;
- if( maxAmountOfEnvelopes < NmMaxItemsInMessageList )
- {
- maxLimit = maxAmountOfEnvelopes;
- if(maxAmountOfEnvelopes < NmListMessagesBlock)
- {
- blockSize = maxAmountOfEnvelopes;
- }
- }
-
+ CFSMailBox *mailbox(NULL);
+ mailbox = mFSfw->GetMailBoxByUidL(mailboxId);
- currentMailbox = mFSfw->GetMailBoxByUidL(mailboxId);
- if (!currentMailbox) {
+ if (!mailbox) {
User::Leave(KErrNotFound);
}
- CleanupStack::PushL(currentMailbox);
- folder = mFSfw->GetFolderByUidL(currentMailbox->GetId(), TFSMailMsgId(folderId));
+
+ CleanupStack::PushL(mailbox);
+
+ CFSMailFolder* folder(NULL);
+ folder = mFSfw->GetFolderByUidL(mailbox->GetId(), TFSMailMsgId(folderId));
if (folder) {
CleanupStack::PushL(folder);
- // First prepare all the parameters
- // select message details to be listed
- TFSMailDetails details(EFSMsgDataEnvelope);
-
- // set sorting criteria
- TFSMailSortCriteria criteria;
- criteria.iField = EFSMailSortByDate;
- criteria.iOrder = EFSMailDescending;
- RArray<TFSMailSortCriteria> sorting;
- CleanupClosePushL(sorting);
- sorting.Append(criteria);
-
- TFSMailMsgId currentMessageId; // first call contains NULL id as begin id
- // get messages list from the backend
- MFSMailIterator* iterator(NULL);
-
- iterator = folder->ListMessagesL(details, sorting);
- if (iterator) {
- CleanupStack::PushL(iterator);
- RPointerArray<CFSMailMessage> messages;
- CleanupResetAndDestroy<CFSMailMessage>::PushL(messages);
+ getMessagesFromFolderL(folder, messageEnvelopeList, maxAmountOfEnvelopes);
+ CleanupStack::PopAndDestroy(folder);
+ }
- //Message list is fetched in blocks to prevent OOM in protocol plugin side
- bool moreMessagesToFollow(false);
- moreMessagesToFollow = iterator->NextL(
- TFSMailMsgId(), blockSize, messages);
- for ( int i = blockSize;
- i < maxLimit && moreMessagesToFollow ;
- i += blockSize ) {
- moreMessagesToFollow = iterator->NextL(
- messages[i-1]->GetMessageId(), blockSize, messages);
- }
+ CleanupStack::PopAndDestroy(mailbox);
+}
- //Add all found emails to the result list
- for(TInt i=0; i<messages.Count(); i++) {
- NmMessageEnvelope* newEnvelope(NULL);
- newEnvelope = messages[i]->GetNmMessageEnvelope();
- if (newEnvelope) {
- messageEnvelopeList.append(newEnvelope);
- }
- }
- CleanupStack::PopAndDestroy( &messages );
- CleanupStack::Pop(iterator);
- delete iterator;
- iterator = NULL;
- }
- CleanupStack::PopAndDestroy(); // sorting
- CleanupStack::PopAndDestroy(folder);
- }
- CleanupStack::PopAndDestroy(currentMailbox);
-}
/*!
Returns list of messages from the backend for specific mailbox and folder.
@@ -417,6 +460,7 @@
return err;
}
+
/*!
Leaving version of list messages with NmMessageList input
*/
@@ -437,6 +481,7 @@
int blockSize = NmListMessagesBlock;
int maxLimit = NmMaxItemsInMessageList;
+
if( maxAmountOfEnvelopes < NmMaxItemsInMessageList )
{
maxLimit = maxAmountOfEnvelopes;
@@ -446,7 +491,6 @@
}
}
-
currentMailbox = mFSfw->GetMailBoxByUidL(mailboxId);
if (!currentMailbox) {
User::Leave(KErrNotFound);
@@ -516,6 +560,7 @@
CleanupStack::PopAndDestroy(currentMailbox);
}
+
/*!
Starts an asynchronous search for messages with the given search strings.
This is part of the public interface.
@@ -536,8 +581,8 @@
// Set connections for forwarding the signals emitted by the search
// observer.
- connect(mSearchObserver, SIGNAL(matchFound(const NmId &)),
- this, SIGNAL(matchFound(const NmId &)), Qt::UniqueConnection);
+ connect(mSearchObserver, SIGNAL(matchFound(const NmId &, const NmId &)),
+ this, SIGNAL(matchFound(const NmId &, const NmId &)), Qt::UniqueConnection);
connect(mSearchObserver, SIGNAL(searchComplete()),
this, SIGNAL(searchComplete()), Qt::UniqueConnection);
@@ -550,6 +595,7 @@
Cancels the search if one is ongoing.
\param mailboxId The ID of the mailbox running the search.
+
\return A possible error code.
*/
@@ -566,6 +612,17 @@
return err;
}
+/*!
+ Indicates application state information to protocol plugins
+ \param mailboxId Id of active mailbox, 0 if application is closed.
+ \param folderId Id of active folder, 0 if application is closed.
+*/
+void NmFrameworkAdapter::updateActiveFolder(const NmId &mailboxId, const NmId &folderId)
+{
+ // TODO ExtensionL from CFSMailClient & state update
+ Q_UNUSED(mailboxId);
+ Q_UNUSED(folderId);
+}
/*!
Starts an asynchronous search for messages with the given search strings.
@@ -654,6 +711,27 @@
}
/*!
+ Starts a message parts fetching operation.
+
+ \param mailboxId Id of the mailbox containing the folder.
+ \param folderId Id of the folder containing the message.
+ \param messageId Id of message containing the message parts
+ \param messagePartIds ids of message parts
+
+ \return An NmOperation object for the operation, ownership is transferred to caller
+ */
+QPointer<NmOperation> NmFrameworkAdapter::fetchMessageParts(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId,
+ const QList<NmId> &messagePartIds)
+{
+ QPointer<NmOperation> oper = new NmFwaMessagePartsFetchingOperation(
+ mailboxId, folderId, messageId, messagePartIds, *mFSfw);
+ return oper;
+}
+
+/*!
Returns sharable file handle to message part content
\param mailboxId Id of the mailbox containing the folder.
--- a/emailuis/nmframeworkadapter/src/nmfwaaddattachmentsoperation.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/src/nmfwaaddattachmentsoperation.cpp Fri May 14 04:41:45 2010 +0300
@@ -192,12 +192,20 @@
}
/*!
+ * Complete the operation
+ */
+void NmFwaAddAttachmentsOperation::doCompleteOperation()
+{
+ mRequestId = NmNotFoundError;
+}
+
+/*!
Cancels the async operation. \sa NmOperation
*/
void NmFwaAddAttachmentsOperation::doCancelOperation()
{
- if (mRequestId != KErrNotFound) {
+ if (mRequestId >= 0) {
TRAP_IGNORE(mMailClient.CancelL(mRequestId));
+ mRequestId = NmNotFoundError;
}
- mRequestId = NmCancelError;
}
--- a/emailuis/nmframeworkadapter/src/nmfwamessagefetchingoperation.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/src/nmfwamessagefetchingoperation.cpp Fri May 14 04:41:45 2010 +0300
@@ -62,9 +62,23 @@
}
}
+/*!
+ * Complete the operation
+ */
+void NmFwaMessageFetchingOperation::doCompleteOperation()
+{
+ mRequestId = NmNotFoundError;
+}
+
+/*!
+ Cancels the async operation. \sa NmOperation
+ */
void NmFwaMessageFetchingOperation::doCancelOperation()
{
- TRAP_IGNORE(mMailClient.CancelL(mRequestId));
+ if (mRequestId >= 0) {
+ TRAP_IGNORE(mMailClient.CancelL(mRequestId));
+ mRequestId = NmNotFoundError;
+ }
}
/*!
--- a/emailuis/nmframeworkadapter/src/nmfwamessagepartfetchingoperation.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/src/nmfwamessagepartfetchingoperation.cpp Fri May 14 04:41:45 2010 +0300
@@ -119,9 +119,20 @@
}
/*!
+ * Complete the operation
+ */
+void NmFwaMessagePartFetchingOperation::doCompleteOperation()
+{
+ mRequestId = NmNotFoundError;
+}
+/*!
+ Cancels the async operation. \sa NmOperation
*/
void NmFwaMessagePartFetchingOperation::doCancelOperation()
{
- TRAP_IGNORE(mMailClient.CancelL(mRequestId));
+ if (mRequestId >= 0) {
+ TRAP_IGNORE(mMailClient.CancelL(mRequestId));
+ mRequestId = NmNotFoundError;
+ }
}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/emailuis/nmframeworkadapter/src/nmfwamessagepartsfetchingoperation.cpp Fri May 14 04:41:45 2010 +0300
@@ -0,0 +1,148 @@
+/*
+ * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description:
+ *
+ */
+
+#include "nmframeworkadapterheaders.h"
+
+/*!
+
+ */
+NmFwaMessagePartsFetchingOperation::NmFwaMessagePartsFetchingOperation(
+ const NmId &mailboxId,
+ const NmId &folderId,
+ const NmId &messageId,
+ const QList<NmId> &messagePartIds,
+ CFSMailClient &mailClient)
+ : mMailboxId(mailboxId),
+ mFolderId(folderId),
+ mMessageId(messageId),
+ mMailClient(mailClient),
+ mLastProgressValue(0),
+ mRequestId(0)
+
+{
+ // Take own copy of the message part id list.
+ mMessagePartIds.Reset();
+ for (int i=0; i<messagePartIds.count(); ++i) {
+ mMessagePartIds.Append(
+ NmConverter::nmIdToMailMsgId(
+ messagePartIds.at(i)));
+ }
+
+}
+
+/*!
+
+ */
+NmFwaMessagePartsFetchingOperation::~NmFwaMessagePartsFetchingOperation()
+{
+ doCancelOperation();
+}
+
+/*!
+
+ */
+void NmFwaMessagePartsFetchingOperation::RequestResponseL(TFSProgress aEvent, TInt aRequestId)
+{
+ if (aRequestId == mRequestId) {
+ if (aEvent.iProgressStatus == TFSProgress::EFSStatus_RequestComplete ) {
+ completeOperation(aEvent.iError);
+ }
+ else if (aEvent.iProgressStatus == TFSProgress::EFSStatus_RequestCancelled) {
+ completeOperation(NmCancelError);
+ }
+ else if (aEvent.iProgressStatus == TFSProgress::EFSStatus_Status) {
+ int progress = 0;
+ if (aEvent.iMaxCount > 0) {
+ // calculate progress per cents
+ qreal counterValue = aEvent.iCounter;
+ qreal maxCount = aEvent.iMaxCount;
+ progress = (counterValue / maxCount)*100;
+ }
+ if (progress > mLastProgressValue) {
+ // send only increasing values to prevent downward changing percentage
+ mLastProgressValue = progress;
+ updateOperationProgress(mLastProgressValue);
+ }
+ }
+ }
+}
+
+/*!
+
+ */
+void NmFwaMessagePartsFetchingOperation::doRunAsyncOperation()
+{
+ TRAPD(err, doRunAsyncOperationL());
+ if (err != KErrNone) {
+ completeOperation(NmGeneralError);
+ }
+}
+
+/*!
+ Leaving version from doRunAsyncOperation
+ */
+void NmFwaMessagePartsFetchingOperation::doRunAsyncOperationL()
+{
+ if (mMessagePartIds.Count() > 0) {
+
+ const TFSMailMsgId mailboxId(mMailboxId.pluginId32(), mMailboxId.id32());
+ const TFSMailMsgId folderId(mFolderId.pluginId32(), mFolderId.id32());
+ const TFSMailMsgId messageId(mMessageId.pluginId32(), mMessageId.id32());
+
+ CFSMailMessage *message(NULL);
+ message = mMailClient.GetMessageByUidL(mailboxId, folderId, messageId, EFSMsgDataEnvelope);
+ CleanupStack::PushL(message);
+
+ if (message) {
+ CFSMailMessagePart* messagePart = message->ChildPartL( mMessagePartIds[0] );
+ CleanupStack::PushL(messagePart);
+ if (messagePart) {
+ mRequestId = messagePart->FetchMessagesPartsL(mMessagePartIds,*this,0);
+ }
+ else {
+ completeOperation(NmNotFoundError);
+ }
+ CleanupStack::PopAndDestroy(messagePart);
+ }
+ else {
+ completeOperation(NmNotFoundError);
+ }
+ CleanupStack::PopAndDestroy(message);
+ }
+ else {
+ completeOperation(NmNotFoundError);
+ }
+}
+
+/*!
+ * Complete the operation
+ */
+void NmFwaMessagePartsFetchingOperation::doCompleteOperation()
+{
+ mRequestId = NmNotFoundError;
+}
+
+/*!
+ Cancels the async operation. \sa NmOperation
+ */
+void NmFwaMessagePartsFetchingOperation::doCancelOperation()
+{
+ if (mRequestId >= 0) {
+ TRAP_IGNORE(mMailClient.CancelL(mRequestId));
+ mRequestId = NmNotFoundError;
+ }
+}
--- a/emailuis/nmframeworkadapter/src/nmmailboxsearchobserver.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmframeworkadapter/src/nmmailboxsearchobserver.cpp Fri May 14 04:41:45 2010 +0300
@@ -56,7 +56,8 @@
NmMessage *message = aMatchMessage->GetNmMessage();
if (message) {
- emit matchFound(message->envelope().messageId());
+ NmMessageEnvelope messageEnvelope = message->envelope();
+ emit matchFound(messageEnvelope.messageId(), messageEnvelope.folderId());
delete message;
}
}
--- a/emailuis/nmsettingui/src/nmmailboxsettingview.cpp Fri May 14 04:17:40 2010 +0300
+++ b/emailuis/nmsettingui/src/nmmailboxsettingview.cpp Fri May 14 04:41:45 2010 +0300
@@ -74,6 +74,9 @@
}
if (mForm) {
+ // Fix for dataform item recycling.
+ mForm->setItemRecycling(false);
+
// Set the form for the view.
setWidget(mForm);
--- a/inc/emailshutdownconst.h Fri May 14 04:17:40 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Constant definitions for Email shutdown
-*
-*/
-
-#include "../emailservices/emailservermonitor/inc/emailshutdownconst.h"
--- a/inc/emailshutdownconst.hrh Fri May 14 04:17:40 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Constant definitions for Cmail shutdown
-*
-*/
-
-#include "../emailservices/emailservermonitor/inc/emailshutdownconst.hrh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/inc/nmapplicationstateinterface.h Fri May 14 04:41:45 2010 +0300
@@ -0,0 +1,18 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+#include "../emailuis/nmailuiengine/inc/nmapplicationstateinterface.h"
--- a/inc/nmmessagesearchlistmodel.h Fri May 14 04:17:40 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include "../emailuis/nmailuiengine/inc/nmmessagesearchlistmodel.h"
-
-// End of file.
--- a/ipsservices/ipssosplugin/src/ipsplgmessagepartstoreroperation.cpp Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/ipssosplugin/src/ipsplgmessagepartstoreroperation.cpp Fri May 14 04:41:45 2010 +0300
@@ -287,9 +287,13 @@
RFile file = aPart->GetContentFileL();
CleanupClosePushL(file);
+ // if we don't do SetSize(0) characters from the original mail are left in the end of the mail
+ // if the modified mail contains less characters.
+ User::LeaveIfError( file.SetSize( 0 ) );
+
// Write new content to text/html part file - async function
- file.Write(0, *iDataBuffer, iDataBuffer->Length(), iStatus);
-
+ file.Write( 0, *iDataBuffer, iDataBuffer->Length(), iStatus );
+
CleanupStack::PopAndDestroy(2, data16);
SetActive();
}
--- a/ipsservices/ipssosplugin/src/ipsplgsosbaseplugin.cpp Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/ipssosplugin/src/ipsplgsosbaseplugin.cpp Fri May 14 04:41:45 2010 +0300
@@ -2779,7 +2779,8 @@
TBool ret( EFalse );
for ( TInt i = 0; i < iOperations.Count(); i++ )
{
- if( iOperations[i]->BaseOperation()->FSMailboxId() == aMailboxId )
+ if( iOperations[i]->BaseOperation() &&
+ iOperations[i]->BaseOperation()->FSMailboxId() == aMailboxId )
{
ret = ETrue;
}
--- a/ipsservices/nmimapclientplugin/src/nmimapclientplugin.cpp Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/nmimapclientplugin/src/nmimapclientplugin.cpp Fri May 14 04:41:45 2010 +0300
@@ -176,7 +176,7 @@
SIGNAL(goOffline(const NmId &)),
this, SLOT(goOffline(const NmId &)));
}
-
+ handleRequest(NmActionResponseCommandSettings, mMenuRequest);
mSettingsViewLauncher->launchSettingsView(id, mailbox->name());
}
--- a/ipsservices/nmipssettings/inc/nmipssettingslabeledcombobox.h Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/nmipssettings/inc/nmipssettingslabeledcombobox.h Fri May 14 04:41:45 2010 +0300
@@ -52,6 +52,7 @@
signals:
void currentIndexChanged(int index);
+ void propertyChanged(QMap<QString, QVariant> properties);
private slots:
--- a/ipsservices/nmipssettings/inc/nmipssettingstimeeditor.h Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/nmipssettings/inc/nmipssettingstimeeditor.h Fri May 14 04:41:45 2010 +0300
@@ -63,10 +63,14 @@
// Now owned.
HbPushButton *mButton;
+ // Owned.
HbDialog *mTimePickerDialog;
QTime mTime;
QString mLabel;
+
+ // Not owned.
+ HbAction *mPrimaryAction;
};
#endif // NMIPSSETTINGSTIMEEDITOR_H
--- a/ipsservices/nmipssettings/src/nmipssettingscustomitem.cpp Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/nmipssettings/src/nmipssettingscustomitem.cpp Fri May 14 04:41:45 2010 +0300
@@ -78,6 +78,8 @@
switch (type) {
case LabeledComboBox: {
widget = new NmIpsSettingsLabeledComboBox();
+ connect(widget, SIGNAL(propertyChanged(QMap<QString, QVariant>)),
+ this, SLOT(propertyChanged(QMap<QString, QVariant>)));
break;
}
case TimeEditor: {
--- a/ipsservices/nmipssettings/src/nmipssettingshelper.cpp Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/nmipssettings/src/nmipssettingshelper.cpp Fri May 14 04:41:45 2010 +0300
@@ -1023,7 +1023,7 @@
HbDataFormModelItem *item = mContentItems.value(IpsServices::ReceptionWeekDays);
QVariant widgetData = item->contentWidgetData(QString("selectedItems"));
QList<QVariant> selectedIndexes = widgetData.value< QList<QVariant> >();
- QVariant itemData = item->data(HbDataFormModelItem::HbDataFormModelItem::DescriptionRole + 1);
+ QVariant itemData = item->data(HbDataFormModelItem::DescriptionRole + 1);
QList<QVariant> itemValues = itemData.value< QList<QVariant> >();
int days(0);
@@ -1059,7 +1059,7 @@
void NmIpsSettingsHelper::refreshPeriodModified(int index)
{
HbDataFormModelItem* item = mContentItems.value(IpsServices::ReceptionRefreshPeriodDayTime);
- QVariant itemData = item->data(HbDataFormModelItem::HbDataFormModelItem::DescriptionRole + 1);
+ QVariant itemData = item->data(HbDataFormModelItem::DescriptionRole + 1);
int selectedValue = itemData.value< QList< QVariant > >().at(index).toInt();
handleReceivingScheduleSettingChange(IpsServices::ReceptionRefreshPeriodDayTime, selectedValue);
}
--- a/ipsservices/nmipssettings/src/nmipssettingslabeledcombobox.cpp Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/nmipssettings/src/nmipssettingslabeledcombobox.cpp Fri May 14 04:41:45 2010 +0300
@@ -56,9 +56,6 @@
// Connect signals and slots.
connect(mComboBox, SIGNAL(currentIndexChanged(int)),
this, SLOT(comboBoxIndexChanged(int)), Qt::UniqueConnection);
-
- connect(mComboBox, SIGNAL(currentIndexChanged(int)),
- this, SIGNAL(currentIndexChanged(int)), Qt::UniqueConnection);
}
/*!
@@ -134,4 +131,8 @@
{
QString label(mLabelTexts.value(index));
mLabel->setPlainText(label);
+ QMap<QString, QVariant> properties;
+ properties.insert("currentIndex", index);
+ emit propertyChanged(properties);
+ emit currentIndexChanged(index);
}
--- a/ipsservices/nmipssettings/src/nmipssettingstimeeditor.cpp Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/nmipssettings/src/nmipssettingstimeeditor.cpp Fri May 14 04:41:45 2010 +0300
@@ -39,7 +39,8 @@
NmIpsSettingsTimeEditor::NmIpsSettingsTimeEditor(QGraphicsItem *parent, Qt::WindowFlags wFlags)
: HbWidget(parent, wFlags),
mButton(0),
- mTimePickerDialog(0)
+ mTimePickerDialog(0),
+ mPrimaryAction(0)
{
// Create widget layout.
QGraphicsLinearLayout* layout = new QGraphicsLinearLayout(Qt::Vertical);
@@ -130,11 +131,12 @@
// Set dialog actions.
HbAction *okAction = new HbAction(QString(hbTrId("txt_common_button_ok")), mTimePickerDialog);
- mTimePickerDialog->setPrimaryAction(okAction);
-
- HbAction *cancelAction = new HbAction(QString(hbTrId("txt_common_button_cancel")),
- mTimePickerDialog);
- mTimePickerDialog->setSecondaryAction( cancelAction );
+ mTimePickerDialog->addAction(okAction);
+ mPrimaryAction = okAction;
+
+ HbAction *cancelAction = new HbAction(QString(hbTrId("txt_common_button_cancel")),
+ mTimePickerDialog);
+ mTimePickerDialog->addAction(cancelAction);
// Show the dialog.
mTimePickerDialog->open(this, SLOT(handleTimeAction(HbAction *)));
@@ -145,7 +147,7 @@
*/
void NmIpsSettingsTimeEditor::handleTimeAction(HbAction *action)
{
- if (action == mTimePickerDialog->primaryAction()) {
+ if (action==mPrimaryAction) {
// Get the time from the picker.
QTime newTime = static_cast<HbDateTimePicker *> (mTimePickerDialog->contentWidget())->time();
--- a/ipsservices/nmpopclientplugin/src/nmpopclientplugin.cpp Fri May 14 04:17:40 2010 +0300
+++ b/ipsservices/nmpopclientplugin/src/nmpopclientplugin.cpp Fri May 14 04:41:45 2010 +0300
@@ -33,8 +33,8 @@
Constructs a new NmPopClientPlugin.
*/
NmPopClientPlugin::NmPopClientPlugin()
-: mSettingsViewLauncher(NULL),
-mListOptionsMenuRequest(NULL)
+: mListOptionsMenuRequest(NULL),
+mSettingsViewLauncher(NULL)
{
NMLOG("NmPopClientPlugin::NmPopClientPlugin()-->");
NMLOG("<--NmPopClientPlugin::NmPopClientPlugin()");
@@ -182,6 +182,7 @@
this, SLOT(goOffline(const NmId &)));
}
+ handleRequest(NmActionResponseCommandSettings, mMenuRequest);
mSettingsViewLauncher->launchSettingsView(id, mailbox->name());
}