diff options
author | Andras Timar <andras.timar@collabora.com> | 2014-07-09 11:44:32 +0200 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2014-07-09 11:46:09 +0200 |
commit | 33c36fb9fbc69bbc32088532dd21db7153aee09d (patch) | |
tree | 8fd913d65851d144fe82dd1b1374636ee9c5d4e5 /unotools | |
parent | f285ac7c0a5df29d1476462fe2ba1b4d13b27aa4 (diff) |
localized GetFullName()
Change-Id: I4f2bffadef3db1bd07432202525734ab9b0cb0de
Diffstat (limited to 'unotools')
-rw-r--r-- | unotools/source/config/useroptions.cxx | 38 |
1 files changed, 32 insertions, 6 deletions
diff --git a/unotools/source/config/useroptions.cxx b/unotools/source/config/useroptions.cxx index 0f9299121f8e..6fab07777503 100644 --- a/unotools/source/config/useroptions.cxx +++ b/unotools/source/config/useroptions.cxx @@ -18,7 +18,7 @@ */ #include <unotools/useroptions.hxx> - +#include <unotools/syslocale.hxx> #include <unotools/configmgr.hxx> #include <com/sun/star/uno/Any.hxx> #include <com/sun/star/uno/Sequence.hxx> @@ -37,6 +37,7 @@ #include <com/sun/star/util/ChangesEvent.hpp> #include <comphelper/configurationhelper.hxx> #include <comphelper/processfactory.hxx> +#include <i18nlangtag/mslangid.hxx> using namespace utl; using namespace com::sun::star; @@ -194,11 +195,36 @@ void SvtUserOptions::Impl::SetToken (sal_uInt16 nToken, OUString const& sToken) OUString SvtUserOptions::Impl::GetFullName () const { - // TODO international name - OUString sFullName = GetToken(USER_OPT_FIRSTNAME).trim(); - if (!sFullName.isEmpty()) - sFullName += " "; - sFullName += GetToken(USER_OPT_LASTNAME).trim(); + OUString sFullName; + switch (LanguageType const eLang = SvtSysLocale().GetUILanguageTag().getLanguageType()) + { + case LANGUAGE_RUSSIAN: + sFullName = GetToken(USER_OPT_FIRSTNAME).trim(); + if (!sFullName.isEmpty()) + sFullName += " "; + sFullName += GetToken(USER_OPT_FATHERSNAME).trim(); + if (!sFullName.isEmpty()) + sFullName += " "; + sFullName += GetToken(USER_OPT_LASTNAME).trim(); + break; + default: + if (MsLangId::isFamilyNameFirst(eLang)) + { + sFullName = GetToken(USER_OPT_LASTNAME).trim(); + if (!sFullName.isEmpty()) + sFullName += " "; + sFullName += GetToken(USER_OPT_FIRSTNAME).trim(); + } + else + { + sFullName = GetToken(USER_OPT_FIRSTNAME).trim(); + if (!sFullName.isEmpty()) + sFullName += " "; + sFullName += GetToken(USER_OPT_LASTNAME).trim(); + } + break; + } + return sFullName; } |