controlpanelplugins/langandregplugin/src/cplanguagepluginutil.cpp
author hgs
Wed, 29 Sep 2010 10:09:58 +0800
changeset 40 593f946f4fec
permissions -rw-r--r--
201037_2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
40
593f946f4fec 201037_2
hgs
parents:
diff changeset
     1
/*
593f946f4fec 201037_2
hgs
parents:
diff changeset
     2
 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
593f946f4fec 201037_2
hgs
parents:
diff changeset
     3
 * All rights reserved.
593f946f4fec 201037_2
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
593f946f4fec 201037_2
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0""
593f946f4fec 201037_2
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
593f946f4fec 201037_2
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
593f946f4fec 201037_2
hgs
parents:
diff changeset
     8
 *
593f946f4fec 201037_2
hgs
parents:
diff changeset
     9
 * Initial Contributors:
593f946f4fec 201037_2
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
593f946f4fec 201037_2
hgs
parents:
diff changeset
    11
 *
593f946f4fec 201037_2
hgs
parents:
diff changeset
    12
 * Contributors:
593f946f4fec 201037_2
hgs
parents:
diff changeset
    13
 *
593f946f4fec 201037_2
hgs
parents:
diff changeset
    14
 * Description:  utility class
593f946f4fec 201037_2
hgs
parents:
diff changeset
    15
 *
593f946f4fec 201037_2
hgs
parents:
diff changeset
    16
 */
593f946f4fec 201037_2
hgs
parents:
diff changeset
    17
#include "cplanguagepluginutil.h"
593f946f4fec 201037_2
hgs
parents:
diff changeset
    18
#include <QLocale>
593f946f4fec 201037_2
hgs
parents:
diff changeset
    19
#include <hblocaleutil.h>
593f946f4fec 201037_2
hgs
parents:
diff changeset
    20
#include "cplanguagepluginlog.h"
593f946f4fec 201037_2
hgs
parents:
diff changeset
    21
#include <hbinputsettingproxy>
593f946f4fec 201037_2
hgs
parents:
diff changeset
    22
593f946f4fec 201037_2
hgs
parents:
diff changeset
    23
QStringList CpLanguagePluginUtil::localizedLanguageNames(const QStringList &languageNames)
593f946f4fec 201037_2
hgs
parents:
diff changeset
    24
{
593f946f4fec 201037_2
hgs
parents:
diff changeset
    25
    QStringList localizedLanguages;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    26
    
593f946f4fec 201037_2
hgs
parents:
diff changeset
    27
    CPLANG_LOG("=================All languages=======================");
593f946f4fec 201037_2
hgs
parents:
diff changeset
    28
    foreach(const QString &language,languageNames) {
593f946f4fec 201037_2
hgs
parents:
diff changeset
    29
        CPLANG_LOG("Language: " + language + "\tLocalised:" + HbLocaleUtil::localisedLanguageName(language));
593f946f4fec 201037_2
hgs
parents:
diff changeset
    30
        localizedLanguages << HbLocaleUtil::localisedLanguageName(language);
593f946f4fec 201037_2
hgs
parents:
diff changeset
    31
    }
593f946f4fec 201037_2
hgs
parents:
diff changeset
    32
    CPLANG_LOG("======================================================");
593f946f4fec 201037_2
hgs
parents:
diff changeset
    33
    
593f946f4fec 201037_2
hgs
parents:
diff changeset
    34
    return localizedLanguages;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    35
}
593f946f4fec 201037_2
hgs
parents:
diff changeset
    36
593f946f4fec 201037_2
hgs
parents:
diff changeset
    37
QStringList CpLanguagePluginUtil::localizedRegionNames(const QStringList &regionNames)
593f946f4fec 201037_2
hgs
parents:
diff changeset
    38
{
593f946f4fec 201037_2
hgs
parents:
diff changeset
    39
    QStringList localizedRegions;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    40
    
593f946f4fec 201037_2
hgs
parents:
diff changeset
    41
    CPLANG_LOG("=================All regions=======================");
593f946f4fec 201037_2
hgs
parents:
diff changeset
    42
    foreach(const QString &region,regionNames) {
593f946f4fec 201037_2
hgs
parents:
diff changeset
    43
        CPLANG_LOG("Region: " + region + "\tLocalised:" + HbLocaleUtil::localisedRegionName(region));
593f946f4fec 201037_2
hgs
parents:
diff changeset
    44
        localizedRegions << HbLocaleUtil::localisedRegionName(region);
593f946f4fec 201037_2
hgs
parents:
diff changeset
    45
    }
593f946f4fec 201037_2
hgs
parents:
diff changeset
    46
    CPLANG_LOG("===================================================");
593f946f4fec 201037_2
hgs
parents:
diff changeset
    47
    return localizedRegions;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    48
}
593f946f4fec 201037_2
hgs
parents:
diff changeset
    49
593f946f4fec 201037_2
hgs
parents:
diff changeset
    50
QStringList CpLanguagePluginUtil::localizedInputLanguageNames(const QList<HbInputLanguage> &inputLanguages)
593f946f4fec 201037_2
hgs
parents:
diff changeset
    51
{
593f946f4fec 201037_2
hgs
parents:
diff changeset
    52
    QStringList localizedInputLanguages;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    53
    
593f946f4fec 201037_2
hgs
parents:
diff changeset
    54
    CPLANG_LOG("=================All Input languages=======================");
593f946f4fec 201037_2
hgs
parents:
diff changeset
    55
    foreach (HbInputLanguage inputLanguage, inputLanguages) {
593f946f4fec 201037_2
hgs
parents:
diff changeset
    56
        CPLANG_LOG("Input language:" + inputLanguage.asString() + "\tLocalised:" + inputLanguage.localisedName());
593f946f4fec 201037_2
hgs
parents:
diff changeset
    57
        if (inputLanguage == HbInputLanguage()) {
593f946f4fec 201037_2
hgs
parents:
diff changeset
    58
            localizedInputLanguages << hbTrId("txt_cp_setlabel_secondary_writing_language_val_non");
593f946f4fec 201037_2
hgs
parents:
diff changeset
    59
        }
593f946f4fec 201037_2
hgs
parents:
diff changeset
    60
        else {
593f946f4fec 201037_2
hgs
parents:
diff changeset
    61
            localizedInputLanguages << inputLanguage.localisedName();
593f946f4fec 201037_2
hgs
parents:
diff changeset
    62
        }
593f946f4fec 201037_2
hgs
parents:
diff changeset
    63
    }
593f946f4fec 201037_2
hgs
parents:
diff changeset
    64
    CPLANG_LOG("============================================================");
593f946f4fec 201037_2
hgs
parents:
diff changeset
    65
    
593f946f4fec 201037_2
hgs
parents:
diff changeset
    66
    return localizedInputLanguages;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    67
}
593f946f4fec 201037_2
hgs
parents:
diff changeset
    68
593f946f4fec 201037_2
hgs
parents:
diff changeset
    69
bool CpLanguagePluginUtil::isChineseVariant()
593f946f4fec 201037_2
hgs
parents:
diff changeset
    70
{    
593f946f4fec 201037_2
hgs
parents:
diff changeset
    71
    QStringList supportedLanguages = HbLocaleUtil::supportedLanguages();
593f946f4fec 201037_2
hgs
parents:
diff changeset
    72
    foreach(const QString &language, supportedLanguages) {
593f946f4fec 201037_2
hgs
parents:
diff changeset
    73
        if (QLocale(language).language() == QLocale::Chinese) {
593f946f4fec 201037_2
hgs
parents:
diff changeset
    74
            CPLANG_LOG("Chinese Variant.");
593f946f4fec 201037_2
hgs
parents:
diff changeset
    75
            return true;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    76
        }
593f946f4fec 201037_2
hgs
parents:
diff changeset
    77
    }
593f946f4fec 201037_2
hgs
parents:
diff changeset
    78
    return false;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    79
}
593f946f4fec 201037_2
hgs
parents:
diff changeset
    80
593f946f4fec 201037_2
hgs
parents:
diff changeset
    81
//End of File
593f946f4fec 201037_2
hgs
parents:
diff changeset
    82