diff options
| author | Martin Gräßlin <mgraesslin@kde.org> | 2014-06-05 14:05:44 +0200 | 
|---|---|---|
| committer | Thomas Braxton <kde.braxton@gmail.com> | 2014-06-12 17:48:21 -0500 | 
| commit | 69c203156d21385a8c263096cb35600e85a5c604 (patch) | |
| tree | 38a69b65bea0a85ef43df011194ce4e0742aec55 /autotests/helper.h | |
| parent | ac6703215ba5e152379173ba503f5ba3bd7e8a85 (diff) | |
| download | kconfig-69c203156d21385a8c263096cb35600e85a5c604.tar.gz kconfig-69c203156d21385a8c263096cb35600e85a5c604.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 | 
