TrinityCore
Loading...
Searching...
No Matches
Locales.cpp
Go to the documentation of this file.
1/*
2 * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
3
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the
6 * Free Software Foundation; either version 2 of the License, or (at your
7 * option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#include "Locales.h"
19#include <boost/locale/generator.hpp>
20
21namespace
22{
23std::locale _global;
24std::locale _calendar;
25}
26
28{
29 // Change global locale from "C" to UTF-8 for c runtime functions
30 std::locale utf8("");
31 _global = utf8;
32 _global = std::locale(_global, std::locale::classic(), std::locale::numeric);
33 std::locale::global(_global);
34
35 std::setlocale(LC_ALL, "");
36 std::setlocale(LC_NUMERIC, "C");
37
38 boost::locale::generator g;
39 _calendar = g.generate(utf8, "");
40}
41
43{
44 return _global;
45}
46
48{
49 return _calendar;
50}
TC_COMMON_API std::locale const & GetGlobalLocale()
Definition Locales.cpp:42
TC_COMMON_API void Init()
Definition Locales.cpp:27
TC_COMMON_API std::locale const & GetCalendarLocale()
Definition Locales.cpp:47