controlpanelplugins/langandregplugin/src/cplanguageview.cpp
changeset 43 aae8b749572d
parent 41 ab0490982943
equal deleted inserted replaced
41:ab0490982943 43:aae8b749572d
   135             
   135             
   136             /*
   136             /*
   137              * Create region item.
   137              * Create region item.
   138              */
   138              */
   139             HbDataFormModelItem *regionItem = new HbDataFormModelItem(HbDataFormModelItem::ComboBoxItem,
   139             HbDataFormModelItem *regionItem = new HbDataFormModelItem(HbDataFormModelItem::ComboBoxItem,
   140                 hbTrId("Region"));
   140                 hbTrId("txt_cp_setlabel_region"));
   141  
   141  
   142             int regionIndex = mSupportedRegions.indexOf(setting.regionId);
   142             int regionIndex = mSupportedRegions.indexOf(setting.regionId);
   143             
   143             
   144             CPLANG_LOG(QLatin1String("Current region:") + setting.regionId);
   144             CPLANG_LOG(QLatin1String("Current region:") + setting.regionId);
   145             CPLANG_LOG(QString("Index of current region: %1").arg(regionIndex));
   145             CPLANG_LOG(QString("Index of current region: %1").arg(regionIndex));
   478             mCurrentSetting = *setting;  
   478             mCurrentSetting = *setting;  
   479             
   479             
   480             HbLocaleUtil::changeRegion(mCurrentSetting.regionId);
   480             HbLocaleUtil::changeRegion(mCurrentSetting.regionId);
   481             HbInputSettingProxy::instance()->setGlobalInputLanguage(mCurrentSetting.primaryWritingLan);
   481             HbInputSettingProxy::instance()->setGlobalInputLanguage(mCurrentSetting.primaryWritingLan);
   482             
   482             
   483             //update combobox
   483             //update index of primary writing language combobox
   484             mCurrentPrimaryInputLanguageItem->setContentWidgetData("currentIndex",mPrimaryInputLanguages.indexOf(mCurrentSetting.primaryWritingLan));
   484             int primaryInputIndex = mPrimaryInputLanguages.indexOf(mCurrentSetting.primaryWritingLan); //exact match
       
   485             if (primaryInputIndex < 0) { //exach match failed. partially match the language part.
       
   486                 for (int i = 0; i < mPrimaryInputLanguages.count();i++) {
       
   487                     if (mPrimaryInputLanguages.at(i).language() == mCurrentSetting.primaryWritingLan.language()) {
       
   488                         primaryInputIndex = i;
       
   489                         mCurrentSetting.primaryWritingLan = mPrimaryInputLanguages.at(i);
       
   490                         setting->primaryWritingLan = mPrimaryInputLanguages.at(i);
       
   491                         break;
       
   492                     }
       
   493                 }
       
   494             }
       
   495             
       
   496             mCurrentPrimaryInputLanguageItem->setContentWidgetData("currentIndex",primaryInputIndex);
       
   497             
       
   498             //update index of region combobox
   485             mCurrentRegionItem->setContentWidgetData("currentIndex",mSupportedRegions.indexOf(mCurrentSetting.regionId)); 
   499             mCurrentRegionItem->setContentWidgetData("currentIndex",mSupportedRegions.indexOf(mCurrentSetting.regionId)); 
   486             
   500             
   487             CPLANG_LOG(QString("Primary writing:") + HbInputSettingProxy::instance()->globalInputLanguage().asString());
   501             CPLANG_LOG(QString("Primary writing:") + HbInputSettingProxy::instance()->globalInputLanguage().asString());
   488             CPLANG_LOG(QString("Secondary writing:") + HbInputSettingProxy::instance()->globalSecondaryInputLanguage().asString());
   502             CPLANG_LOG(QString("Secondary writing:") + HbInputSettingProxy::instance()->globalSecondaryInputLanguage().asString());
   489             
   503