summary refs log tree commit diff
path: root/src/ui/ThemeManager.h
blob: f2099730d44a194ad740169781b1cb6e91bf753c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// SPDX-FileCopyrightText: 2021 Nheko Contributors
//
// SPDX-License-Identifier: GPL-3.0-or-later

#pragma once

#include <QCommonStyle>

#include "Theme.h"

class ThemeManager : public QCommonStyle
{
        Q_OBJECT

public:
        inline static ThemeManager &instance();

        void setTheme(Theme *theme);
        QColor themeColor(const QString &key) const;

private:
        ThemeManager();

        ThemeManager(ThemeManager const &);
        void operator=(ThemeManager const &);

        Theme *theme_;
};

inline ThemeManager &
ThemeManager::instance()
{
        static ThemeManager instance;
        return instance;
}