--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/phonebookui/Phonebook/Engine/src/PbkContactNameFormattingUtil.cpp Tue Feb 02 10:12:17 2010 +0200
@@ -0,0 +1,106 @@
+/*
+* Copyright (c) 2002 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:
+* Phonebook contact name formatting base
+*
+*/
+
+
+// INCLUDE FILES
+#include "PbkContactNameFormattingUtil.h"
+#include <cntviewbase.h>
+#include <PbkEngUtils.h>
+#include "MPbkFieldData.h"
+
+
+// ==================== MEMBER FUNCTIONS ====================
+
+TPtrC PbkContactNameFormattingUtil::FieldText
+ (const MPbkFieldDataArray& aContactData,
+ TPbkFieldId aFieldId)
+ {
+ TPtrC result;
+ const TInt count = aContactData.PbkFieldCount();
+ for (TInt i=0; i < count; ++i)
+ {
+ const MPbkFieldData& field = aContactData.PbkFieldAt(i);
+ if (field.PbkFieldId()==aFieldId &&
+ field.PbkFieldType()==KStorageTypeText)
+ {
+ TPtrC text(field.PbkFieldText());
+ if (!PbkEngUtils::IsEmptyOrAllSpaces(text))
+ {
+ result.Set(text);
+ }
+ break;
+ }
+ }
+ return result;
+ }
+
+/**
+ * Returns true if first character of aText is space.
+ * @precond aText.Length() > 0
+ */
+TBool PbkContactNameFormattingUtil::FirstCharIsSpace(const TDesC& aText)
+ {
+ return (TChar(aText[0]).IsSpace());
+ }
+
+/**
+ * Returns true if last character of aText is space.
+ * @precond aText.Length() > 0
+ */
+TBool PbkContactNameFormattingUtil::LastCharIsSpace(const TDesC& aText)
+ {
+ return (TChar(aText[aText.Length()-1]).IsSpace());
+ }
+
+/**
+ * Gets the phonebook field id corresponding to aIndex in the sort order array.
+ */
+TPbkFieldId PbkContactNameFormattingUtil::GetPbkFieldIdAt
+ (const RContactViewSortOrder& aSortOrder,
+ TInt aIndex)
+ {
+ switch (aSortOrder[aIndex].iUid)
+ {
+ case KUidContactFieldFamilyNameValue:
+ {
+ return EPbkFieldIdLastName;
+ }
+ case KUidContactFieldGivenNameValue:
+ {
+ return EPbkFieldIdFirstName;
+ }
+ case KUidContactFieldCompanyNameValue:
+ {
+ return EPbkFieldIdCompanyName;
+ }
+ case KUidContactFieldGivenNamePronunciationValue:
+ {
+ return EPbkFieldIdFirstNameReading;
+ }
+ case KUidContactFieldFamilyNamePronunciationValue:
+ {
+ return EPbkFieldIdLastNameReading;
+ }
+ default:
+ {
+ return EPbkFieldIdNone;
+ }
+ }
+ }
+
+// End of File