diff -r 000000000000 -r e686773b3f54 phonebookui/Phonebook/Engine/src/PbkContactNameFormattingUtil.cpp --- /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 +#include +#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