GrantleeTheme

grantleetheme.h
1 /*
2  SPDX-FileCopyrightText: 2013-2021 Laurent Montel <[email protected]>
3 
4  SPDX-License-Identifier: LGPL-2.1-or-later
5 */
6 #ifndef GRANTLEETHEME_H
7 #define GRANTLEETHEME_H
8 
9 #include "grantleetheme_export.h"
10 
11 #include <QString>
12 #include <QStringList>
13 #include <QVariantHash>
14 #include <QSharedDataPointer>
15 
16 class GrantleeThemeTest;
17 
18 namespace GrantleeTheme {
19 class ThemeManager;
20 class ThemePrivate;
24 class GRANTLEETHEME_EXPORT Theme
25 {
26 public:
27  explicit Theme();
28  Theme(const Theme &other);
29  ~Theme();
30 
31  Q_REQUIRED_RESULT bool operator==(const Theme &other) const;
32  Theme &operator=(const Theme &other);
33 
34  Q_REQUIRED_RESULT bool isValid() const;
35 
36  Q_REQUIRED_RESULT QString description() const;
37  Q_REQUIRED_RESULT QString themeFilename() const;
38  Q_REQUIRED_RESULT QString name() const;
39  Q_REQUIRED_RESULT QStringList displayExtraVariables() const;
40  Q_REQUIRED_RESULT QString dirName() const;
41  Q_REQUIRED_RESULT QString absolutePath() const;
42  Q_REQUIRED_RESULT QString author() const;
43  Q_REQUIRED_RESULT QString authorEmail() const;
44 
45  void addThemePath(const QString &path);
46 
47  Q_REQUIRED_RESULT QString render(const QString &templateName, const QVariantHash &data, const QByteArray &applicationDomain = QByteArray());
48 
49  static void addPluginPath(const QString &path);
50 
51 private:
52  friend class ::GrantleeThemeTest;
53  friend class ThemeManager;
54  Theme(const QString &themePath, const QString &dirName, const QString &defaultDesktopFileName);
55 
57 };
58 }
59 
60 #endif // GRANTLEETHEME_H
The ThemeManager class.
The Theme class.
Definition: grantleetheme.h:24
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Sat Jan 16 2021 23:20:11 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.