diff options
author | Martin Gräßlin <mgraesslin@kde.org> | 2014-06-05 14:05:44 +0200 |
---|---|---|
committer | Martin Gräßlin <mgraesslin@kde.org> | 2014-06-12 07:06:07 +0200 |
commit | 988f09bb051dca0437ecec431ee44ed5b4a560d8 (patch) | |
tree | e86c5d2303b0fc1ee4c68ac3dd59ba326c464af1 /autotests/helper.h | |
parent | 0ed55dfa5d25bdcbef24f1b06be34467b620ae99 (diff) | |
download | kconfig-988f09bb051dca0437ecec431ee44ed5b4a560d8.tar.gz kconfig-988f09bb051dca0437ecec431ee44ed5b4a560d8.tar.bz2 |
Fix locale-aware reading in KDesktopFile
The underlying KConfig used QLocale::name() for getting the locale
aware part. But this returns "de_DE" while the desktop files store
"de".
In addition it constructs a QLocale object instead of using the
system locale. This has the advantage that the usage of
QLocale::setDafault() gets honored by KConfig.
REVIEW: 118564
Diffstat (limited to 'autotests/helper.h')
-rw-r--r-- | autotests/helper.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/autotests/helper.h b/autotests/helper.h new file mode 100644 index 00000000..83f1a8bc --- /dev/null +++ b/autotests/helper.h @@ -0,0 +1,43 @@ +/* + * Copyright 2014 Martin Gräßlin <mgraesslin@kde.org> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) version 3, or any + * later version accepted by the membership of KDE e.V. (or its + * successor approved by the membership of KDE e.V.), which shall + * act as a proxy defined in Section 6 of version 3 of the license. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. +*/ +#ifndef KCONFIG_AUTOTESTS_HELPER_H +#define KCONFIG_AUTOTESTS_HELPER_H + +#include <QLocale> + +/** + * @brief Helper to store the current default QLocale and resetting to it in the dtor. + **/ +class DefaultLocale +{ +public: + DefaultLocale() + : m_defaultLocale() + { + } + ~DefaultLocale() + { + QLocale::setDefault(m_defaultLocale); + } +private: + QLocale m_defaultLocale; +}; + +#endif |