1 /*
2  * This file is a part of Luminance HDR package.
3  * ----------------------------------------------------------------------
4  * Copyright (C) 2013 Davide Anastasia
5  *
6  *  This program is free software; you can redistribute it and/or modify
7  *  it under the terms of the GNU General Public License as published by
8  *  the Free Software Foundation; either version 2 of the License, or
9  *  (at your option) any later version.
10  *
11  *  This program is distributed in the hope that it will be useful,
12  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  *  GNU General Public License for more details.
15  *
16  *  You should have received a copy of the GNU General Public License
17  *  along with this program; if not, write to the Free Software
18  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  * ----------------------------------------------------------------------
20  */
21 
22 #ifndef TRANSLATORMANAGER_H
23 #define TRANSLATORMANAGER_H
24 
25 #include <QScopedPointer>
26 #include <QTranslator>
27 
28 //! \brief QTranslator context manager
29 class TranslatorManager {
30    public:
31     typedef QScopedPointer<QTranslator> ScopedQTranslator;
32 
33     static void setLanguage(const QString &lang,
34                             bool installQtTranslation = true);
35 
36    private:
37     static void setAppTranslator(const QString &lang);
38     static void setQtTranslator(const QString &lang);
39 
40     static void cleanAppTranslator();
41     static void cleanQtTranslator();
42 
43     static ScopedQTranslator sm_appTranslator;
44     static ScopedQTranslator sm_qtTranslator;
45 };
46 
47 #endif  // TRANSLATORMANAGER_H
48