emailuis/emailui/src/FreestyleEmailUiUtilities.cpp
branchRCL_3
changeset 18 6b8f3b30d0ec
parent 16 b5fbb9b25d57
child 20 efd4f1afd43e
--- a/emailuis/emailui/src/FreestyleEmailUiUtilities.cpp	Tue May 25 12:23:16 2010 +0300
+++ b/emailuis/emailui/src/FreestyleEmailUiUtilities.cpp	Wed Jun 09 09:22:57 2010 +0300
@@ -3058,18 +3058,55 @@
 
 	else
 		{
-		//Displayname = "firstname lastname"
-		displayname = HBufC::NewLC( aFirstname.Length() +
-									KSpace().Length() +
-									aLastname.Length() );
-		displayname->Des().Copy( aFirstname );
-		displayname->Des().Append( KSpace );
-		displayname->Des().Append( aLastname );
-		}
+		//Displayname="firstname lastname" or "LastnameFirstname" for Chinese
+
+        if( TFsEmailUiUtility::IsChineseWord( aFirstname ) 
+            || TFsEmailUiUtility::IsChineseWord( aLastname ) )
+            {
+            TInt length = aFirstname.Length() + aLastname.Length();
+            displayname = HBufC::NewLC( length );
+            displayname->Des().Copy( aLastname );
+            displayname->Des().Append( aFirstname );
+            }
+        else
+            {
+            TInt length = aFirstname.Length() + KSpace().Length() 
+            		+ aLastname.Length();
+            displayname = HBufC::NewLC( length );
+	    displayname->Des().Copy( aFirstname );
+	    displayname->Des().Append( KSpace );
+	    displayname->Des().Append( aLastname );
+	    }
+        }
 
 	return displayname;
 	}
 
+
+// ---------------------------------------------------------
+// Find if text is including Chinese word  
+// ---------------------------------------------------------
+//
+TBool TFsEmailUiUtility::IsChineseWord( const TDesC& aWord )
+    {
+    TBool isChineseSearchStr = EFalse;
+    const TUint KChineseUnicodeSpanBegin = 0x3400;
+    const TUint KChineseUnicodeSpanEnd = 0x9fff;
+    const TInt len = aWord.Length();
+
+    for ( TInt ii = 0; ii < len; ii++ )
+        {
+        if ( (TInt) aWord[ii] >= KChineseUnicodeSpanBegin 
+             && (TInt) aWord[ii] <= KChineseUnicodeSpanEnd )
+            {
+            isChineseSearchStr = ETrue;
+            break;
+            }
+        }
+    return isChineseSearchStr;
+    }
+
+
 // -----------------------------------------------------------------------------
 // TFsEmailUiUtility::GetFullIconFileNameL
 // -----------------------------------------------------------------------------