qtmobility/src/messaging/qmessagecontentcontainerid_symbian.cpp
changeset 8 71781823f776
parent 1 2b40d63a9c3d
child 11 06b8e2af4411
--- a/qtmobility/src/messaging/qmessagecontentcontainerid_symbian.cpp	Fri May 14 16:41:33 2010 +0300
+++ b/qtmobility/src/messaging/qmessagecontentcontainerid_symbian.cpp	Thu May 27 13:42:11 2010 +0300
@@ -39,20 +39,15 @@
 **
 ****************************************************************************/
 #include "qmessagecontentcontainerid.h"
+#include <messagingutil_p.h>
+
 
 QTM_BEGIN_NAMESPACE
 
 class QMessageContentContainerIdPrivate
 {
 public:
-    enum {
-		Invalid = -1, 
-		Body = 0 
-	};
-
-    int _number;
-
-    QMessageContentContainerIdPrivate() : _number(Invalid) {}
+    QString _id;
 };
 
 QMessageContentContainerId::QMessageContentContainerId()
@@ -69,9 +64,8 @@
 QMessageContentContainerId::QMessageContentContainerId(const QString& id)
 : d_ptr(new QMessageContentContainerIdPrivate)
 {
-	if (!id.isEmpty()) {
-		d_ptr->_number = id.toUInt();
-	}
+    if(!SymbianHelpers::stripIdPrefix(id).isEmpty())
+        d_ptr->_id = id;
 }
 
 QMessageContentContainerId::~QMessageContentContainerId()
@@ -81,26 +75,29 @@
 
 bool QMessageContentContainerId::operator==(const QMessageContentContainerId& other) const
 {
-	return (d_ptr->_number == other.d_ptr->_number);
+	return (d_ptr->_id == other.d_ptr->_id);
 }
 
 QMessageContentContainerId& QMessageContentContainerId::operator=(const QMessageContentContainerId& other)
 {
 	if (&other != this) {
-		d_ptr->_number = other.d_ptr->_number;
+		d_ptr->_id = other.d_ptr->_id;
 	}
-	
-	return *this;
+
+    return *this;
 }
 
 QString QMessageContentContainerId::toString() const
 {
-	return QString::number(d_ptr->_number);
+    if(!isValid())
+        return QString();
+
+	return d_ptr->_id;
 }
 
 bool QMessageContentContainerId::isValid() const
 {
-	return (d_ptr->_number != QMessageContentContainerIdPrivate::Invalid);
+	return !d_ptr->_id.isEmpty();
 }
 
 QTM_END_NAMESPACE