Ignore:
Timestamp:
Aug 2, 2010, 9:27:30 PM (15 years ago)
Author:
Dmitry A. Kuminov
Message:

trunk: Merged in qt 4.6.3 sources from branches/vendor/nokia/qt.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/src/gui/inputmethod/qinputcontextfactory.cpp

    r651 r769  
    7474#ifdef Q_WS_S60
    7575#include "qcoefepinputcontext_p.h"
     76#include "akninputlanguageinfo.h"
    7677#endif
    7778
     
    199200}
    200201
     202#if defined(Q_WS_S60)
     203/*!
     204    \internal
     205
     206    This function contains pure Symbian exception handling code for
     207    getting S60 language list.
     208    Returned object ownership is transfered to caller.
     209*/
     210static CAknInputLanguageList* s60LangListL()
     211{
     212    CAknInputLanguageInfo *langInfo = AknInputLanguageInfoFactory::CreateInputLanguageInfoL();
     213    CleanupStack::PushL(langInfo);
     214    // In rare phone there is more than 7 languages installed -> use 7 as an array granularity
     215    CAknInputLanguageList *langList = new (ELeave) CAknInputLanguageList(7);
     216    CleanupStack::PushL(langList);
     217    langInfo->AppendAvailableLanguagesL(langList);
     218    CleanupStack::Pop(langList);
     219    CleanupStack::PopAndDestroy(langInfo);
     220    return langList;
     221}
     222
     223/*!
     224    \internal
     225
     226    This function utility function return S60 language list.
     227    Returned object ownership is transfered to caller.
     228*/
     229static CAknInputLanguageList* s60LangList()
     230{
     231    CAknInputLanguageList *langList = NULL;
     232    TRAP_IGNORE(langList = s60LangListL());
     233    q_check_ptr(langList);
     234    return langList;
     235}
     236#endif
     237
    201238/*!
    202239    Returns the languages supported by the QInputContext object
     
    230267#if defined(Q_WS_S60)
    231268    if (key == QLatin1String("coefep"))
    232         return QStringList(QString());
     269        {
     270        CAknInputLanguageList *langList = s60LangList();
     271        int count = langList->Count();
     272        for (int i = 0; i < count; ++i)
     273            {
     274            result.append(QString(qt_symbianLocaleName(langList->At(i)->LanguageCode())));
     275            }
     276        delete langList;
     277        }
    233278#endif
    234279#if defined(QT_NO_LIBRARY) || defined(QT_NO_SETTINGS)
Note: See TracChangeset for help on using the changeset viewer.