summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Snelders <programming@ertai.nl>2012-07-08 20:51:13 +0200
committerEike Rathke <erack@redhat.com>2012-07-09 12:25:58 +0200
commit02b435f235d2863ee344054262200152edbba3a3 (patch)
treefb3ca6d1ad183f74f00ecdd47f92f97c63ec3059
parent43d7d0684af0df1d5bde69d361365e786bf249bf (diff)
- fdo#45830 - Language/User Interface: current choice indicated as default
Change-Id: I3ac2e8e3219c12be84ce38cb98342f0dce0d6476
-rw-r--r--cui/source/options/optgdlg.cxx6
-rw-r--r--svtools/source/misc/langtab.src1
-rw-r--r--svx/inc/svx/langbox.hxx1
-rw-r--r--svx/source/dialog/langbox.cxx11
4 files changed, 16 insertions, 3 deletions
diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx
index 6317c83e9699..06e232915c95 100644
--- a/cui/source/options/optgdlg.cxx
+++ b/cui/source/options/optgdlg.cxx
@@ -1355,7 +1355,7 @@ OfaLanguagesTabPage::OfaLanguagesTabPage( Window* pParent, const SfxItemSet& rSe
aComplexLanguageLB.InsertDefaultLanguage( ::com::sun::star::i18n::ScriptType::COMPLEX );
aLocaleSettingLB.SetLanguageList( LANG_LIST_ALL | LANG_LIST_ONLY_KNOWN, sal_False, sal_False, sal_False);
- aLocaleSettingLB.InsertDefaultLanguage( ::com::sun::star::i18n::ScriptType::WEAK );
+ aLocaleSettingLB.InsertSystemLanguage( );
const NfCurrencyTable& rCurrTab = SvNumberFormatter::GetTheCurrencyTable();
const NfCurrencyEntry& rCurr = SvNumberFormatter::GetCurrencyEntry( LANGUAGE_SYSTEM );
@@ -1697,7 +1697,7 @@ void OfaLanguagesTabPage::Reset( const SfxItemSet& rSet )
if ( !sLang.isEmpty() )
aLocaleSettingLB.SelectLanguage(lcl_LangStringToLangType(sLang));
else
- aLocaleSettingLB.SelectLanguage( LANGUAGE_SYSTEM );
+ aLocaleSettingLB.SelectLanguage( LANGUAGE_USER_SYSTEM_CONFIG );
sal_Bool bReadonly = pLangConfig->aSysLocaleOptions.IsReadOnly(SvtSysLocaleOptions::E_LOCALE);
aLocaleSettingLB.Enable(!bReadonly);
aLocaleSettingFT.Enable(!bReadonly);
@@ -1904,7 +1904,7 @@ IMPL_LINK( OfaLanguagesTabPage, LocaleSettingHdl, SvxLanguageBox*, pBox )
}
sal_uInt16 nPos;
- if ( eLang == LANGUAGE_SYSTEM )
+ if ( eLang == LANGUAGE_USER_SYSTEM_CONFIG )
nPos = aCurrencyLB.GetEntryPos( (void*) NULL );
else
{
diff --git a/svtools/source/misc/langtab.src b/svtools/source/misc/langtab.src
index 0882cf220dfa..dfb5bcaf0ed9 100644
--- a/svtools/source/misc/langtab.src
+++ b/svtools/source/misc/langtab.src
@@ -41,6 +41,7 @@ StringArray STR_ARR_SVT_LANGUAGE_TABLE
< "[None]" ; LANGUAGE_NONE ; > ;
< "Unknown" ; LANGUAGE_DONTKNOW ; > ;
< "Default" ; LANGUAGE_SYSTEM ; > ;
+ < "Default" ; LANGUAGE_USER_SYSTEM_CONFIG ; > ;
< "Afrikaans (South Africa)" ; LANGUAGE_AFRIKAANS ; > ;
< "Albanian" ; LANGUAGE_ALBANIAN ; > ;
< "Arabic" ; LANGUAGE_ARABIC_PRIMARY_ONLY ; > ;
diff --git a/svx/inc/svx/langbox.hxx b/svx/inc/svx/langbox.hxx
index 7baf253e01f6..37a7699ed51f 100644
--- a/svx/inc/svx/langbox.hxx
+++ b/svx/inc/svx/langbox.hxx
@@ -89,6 +89,7 @@ public:
sal_uInt16 InsertLanguage( const LanguageType eLangType, sal_uInt16 nPos = LISTBOX_APPEND );
sal_uInt16 InsertDefaultLanguage( sal_Int16 nType, sal_uInt16 nPos = LISTBOX_APPEND );
+ sal_uInt16 InsertSystemLanguage( sal_uInt16 nPos = LISTBOX_APPEND );
sal_uInt16 InsertLanguage( const LanguageType eLangType,
sal_Bool bCheckEntry, sal_uInt16 nPos = LISTBOX_APPEND );
void RemoveLanguage( const LanguageType eLangType );
diff --git a/svx/source/dialog/langbox.cxx b/svx/source/dialog/langbox.cxx
index bfcb51181568..09f8163bf01b 100644
--- a/svx/source/dialog/langbox.cxx
+++ b/svx/source/dialog/langbox.cxx
@@ -349,6 +349,10 @@ sal_uInt16 SvxLanguageBox::ImplInsertLanguage( const LanguageType nLangType, sal
nRealLang = MsLangId::resolveSystemLanguageByScriptType(nRealLang, nType);
aStrEntry.AppendAscii(" - ");
aStrEntry.Append(m_pLangTable->GetString( nRealLang ));
+ } else if (nRealLang == LANGUAGE_USER_SYSTEM_CONFIG) {
+ nRealLang = MsLangId::getSystemLanguage();
+ aStrEntry.AppendAscii(" - ");
+ aStrEntry.Append(m_pLangTable->GetString( nRealLang ));
}
aStrEntry = ApplyLreOrRleEmbedding( aStrEntry );
@@ -385,6 +389,13 @@ sal_uInt16 SvxLanguageBox::InsertDefaultLanguage( sal_Int16 nType, sal_uInt16 nP
//------------------------------------------------------------------------
+sal_uInt16 SvxLanguageBox::InsertSystemLanguage( sal_uInt16 nPos )
+{
+ return ImplInsertLanguage( LANGUAGE_USER_SYSTEM_CONFIG, nPos, ::com::sun::star::i18n::ScriptType::WEAK );
+}
+
+//------------------------------------------------------------------------
+
sal_uInt16 SvxLanguageBox::InsertLanguage( const LanguageType nLangType,
sal_Bool bCheckEntry, sal_uInt16 nPos )
{