internetradio2.0/isdsclientsrc/irlanguagemapper.cpp
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Mon, 19 Apr 2010 14:01:53 +0300
changeset 0 09774dfdd46b
permissions -rw-r--r--
Revision: 201011 Kit: 201015

/*
* Copyright (c) 2006-2007 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:  ?Description
*
*/


#include <btsdp.h>

#include "irlanguagemapper.h"
#include "irdebug.h"

// ================= MEMBER FUNCTIONS =======================

// ---------------------------------------------------------
// IRLanguageMapper::MapLanguage
// ---------------------------------------------------------

TBufC8<KIRLanguageCodeLength> IRLanguageMapper::MapLanguage(TLanguage aLanguage)
	{
	IRLOG_DEBUG( "IRLanguageMapper::MapLanguage - Entering" );
	TUint16 value=0;

	switch(aLanguage)
		{
	case ELangEnglish:
		value = KLanguageEnglish;
		break;
	case ELangFrench:
		value = KLanguageFrench;
		break;
	case ELangGerman:
		value = KLanguageGerman;
		break;
	case ELangSpanish:
		value = KLanguageSpanish;
		break;
	case ELangItalian:
		value = KLanguageItalian;
		break;
	case ELangSwedish:
		value = KLanguageSwedish;
		break;
	case ELangDanish:
		value = KLanguageDanish;
		break;
	case ELangNorwegian:
		value = KLanguageNorwegian;
		break;
	case ELangFinnish:
		value = KLanguageFinnish;
		break;
	case ELangAmerican:
		value = KLanguageEnglish;
		break;
	case ELangSwissFrench:
		value = KLanguageFrench;
		break;
	case ELangSwissGerman:
		value = KLanguageGerman;
		break;
	case ELangPortuguese:
		value = KLanguagePortuguese;
		break;
	case ELangTurkish:
		value = KLanguageTurkish;
		break;
	case ELangIcelandic:
		value = KLanguageIcelandic;
		break;
	case ELangRussian:
		value = KLanguageRussian;
		break;
	case ELangHungarian:
		value = KLanguageHungarian;
		break;
	case ELangDutch:
		value = KLanguageDutch;
		break;
	case ELangBelgianFlemish:
		value = KLanguageDutch;
		break;
	case ELangAustralian:
		value = KLanguageEnglish;
		break;
	case ELangBelgianFrench:
		value = KLanguageFrench;
		break;
	case ELangAustrian:
		value = KLanguageGerman;
		break;
	case ELangNewZealand:
		value = KLanguageEnglish;
		break;
	case ELangInternationalFrench:
		value = KLanguageFrench;
		break;
	case ELangCzech:
		value = KLanguageCzech;
		break;
	case ELangSlovak:
		value = KLanguageSlovak;
		break;
	case ELangPolish:
		value = KLanguagePolish;
		break;
	case ELangSlovenian:
		value = KLanguageSlovenian;
		break;
	case ELangTaiwanChinese:
		value = KLanguageChinese;
		break;
	case ELangHongKongChinese:
		value = KLanguageChinese;
		break;
	case ELangPrcChinese:
		value = KLanguageChinese;
		break;
	case ELangJapanese:
		value = KLanguageJapanese;
		break;
	case ELangThai:
		value = KLanguageThai;
		break;
	case ELangAfrikaans:
		value = KLanguageAfrikaans;
		break;
	case ELangAlbanian:
		value = KLanguageAlbanian;
		break;
	case ELangAmharic:
		value = KLanguageAmharic;
		break;
	case ELangArabic:
		value = KLanguageArabic;
		break;
	case ELangArmenian:
		value = KLanguageArmenian;
		break;
	case ELangTagalog:
		value = KLanguageTagalog;
		break;
	case ELangBelarussian:
		value = KLanguageRussian;
		break;
	case ELangBengali:
		value = KLanguageBengali;
		break;
	case ELangBulgarian:
		value = KLanguageBulgarian;
		break;
	case ELangBurmese:
		value = KLanguageBurmese;
		break;
	case ELangCatalan:
		value = KLanguageCatalan;
		break;
	case ELangCroatian:
		value = KLanguageCroatian;
		break;
	case ELangCanadianEnglish:
		value = KLanguageEnglish;
		break;
	case ELangInternationalEnglish:
		value = KLanguageEnglish;
		break;
	case ELangSouthAfricanEnglish:
		value = KLanguageEnglish;
		break;
	case ELangEstonian:
		value = KLanguageEstonian;
		break;
	case ELangFarsi:
		value = KLanguagePersian;
		break;
	case ELangCanadianFrench:
		value = KLanguageFrench;
		break;
	case ELangScotsGaelic:
		value = KLanguageScotsGaelic;
		break;
	case ELangGeorgian:
		value = KLanguageGeorgian;
		break;
	case ELangGreek:
		value = KLanguageGreek;
		break;
	case ELangCyprusGreek:
		value = KLanguageGreek;
		break;
	case ELangGujarati:
		value = KLanguageGujarati;
		break;
	case ELangHebrew:
		value = KLanguageHebrew;
		break;
	case ELangHindi:
		value = KLanguageHindi;
		break;
	case ELangIndonesian:
		value = KLanguageIndonesian;
		break;
	case ELangIrish:
		value = KLanguageIrish;
		break;
	case ELangSwissItalian:
		value = KLanguageItalian;
		break;
	case ELangKannada:
		value = KLanguageKannada;
		break;
	case ELangKazakh:
		value = KLanguageKazakh;
		break;
	case ELangKhmer:
		value = KLanguageCambodian;
		break;
	case ELangKorean:
		value = KLanguageKorean;
		break;
	case ELangLao:
		value = KLanguageLaothian;
		break;
	case ELangLatvian:
		value = KLanguageLatvian;
		break;
	case ELangLithuanian:
		value = KLanguageLithuanian;
		break;
	case ELangMacedonian:
		value = KLanguageMacedonian;
		break;
	case ELangMalay:
		value = KLanguageMalay;
		break;
	case ELangMalayalam:
		value = KLanguageMalayalam;
		break;
	case ELangMarathi:
		value = KLanguageMarathi;
		break;
	case ELangMoldavian:
		value = KLanguageMoldavian;
		break;
	case ELangMongolian:
		value = KLanguageMongolian;
		break;
	case ELangNorwegianNynorsk:
		value = KLanguageNorwegian;
		break;
	case ELangBrazilianPortuguese:
		value = KLanguagePortuguese;
		break;
	case ELangPunjabi:
		value = KLanguagePunjabi;
		break;
	case ELangRomanian:
		value = KLanguageRomanian;
		break;
	case ELangSerbian:
		value = KLanguageSerbian;
		break;
	case ELangSinhalese:
		value = KLanguageSinhalese;
		break;
	case ELangSomali:
		value = KLanguageSomali;
		break;
	case ELangInternationalSpanish:
		value = KLanguageSpanish;
		break;
	case ELangLatinAmericanSpanish:
		value = KLanguageSpanish;
		break;
	case ELangSwahili:
		value = KLanguageSwahili;
		break;
	case ELangFinlandSwedish:
		value = KLanguageSwedish;
		break;
	case ELangTamil:
		value = KLanguageTamil;
		break;
	case ELangTelugu:
		value = KLanguageTelugu;
		break;
	case ELangTibetan:
		value = KLanguageTibetan;
		break;
	case ELangTigrinya:
		value = KLanguageTigrinya;
		break;
	case ELangCyprusTurkish:
		value = KLanguageTurkish;
		break;
	case ELangTurkmen:
		value = KLanguageTurkmen;
		break;
	case ELangUkrainian:
		value = KLanguageUkrainian;
		break;
	case ELangUrdu:
		value = KLanguageUrdu;
		break;
	case ELangVietnamese:
		value = KLanguageVietnamese;
		break;
	case ELangWelsh:
		value = KLanguageWelsh;
		break;
	case ELangZulu:
		value = KLanguageZulu;
		break;
	default:
		value = KLanguageEnglish;
		break;
		}

	/* translate the two bytes into actual 'string' */
	TBuf8<KIRLanguageCodeLength> ret;
	TUint char1 = (value >> 8) & 0xFFu;
	TUint char2 = value & 0xFFu;
	ret.Append(static_cast<TUint8>(char1));
	ret.Append(static_cast<TUint8>(char2));
	IRLOG_DEBUG( "IRLanguageMapper::MapLanguage - Exiting" );
	return ret;
	}

//  End of File