qTox  Version: nightly | Commit: bc751c8e1cac455f9690654fcfe0f560d2d7dfdd
style.h
Go to the documentation of this file.
1 /*
2  Copyright © 2014-2019 by The qTox Project Contributors
3 
4  This file is part of qTox, a Qt-based graphical interface for Tox.
5 
6  qTox is libre 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 3 of the License, or
9  (at your option) any later version.
10 
11  qTox 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 qTox. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 #pragma once
21 
22 #include <QColor>
23 #include <QFont>
24 
25 class QString;
26 class QWidget;
27 
28 class Style
29 {
30 public:
32  {
52  };
53 
54  enum Font
55  {
57  Big,
63  };
64 
65  enum MainTheme
66  {
69  };
70 
71  struct ThemeNameColor {
73  QString name;
74  QColor color;
75  };
76 
77  static QStringList getThemeColorNames();
78  static const QString getStylesheet(const QString& filename, const QFont& baseFont = QFont());
79  static const QString getImagePath(const QString& filename);
80  static QString getThemeFolder();
81  static QString getThemeName();
82  static QColor getColor(ColorPalette entry);
83  static QFont getFont(Font font);
84  static const QString resolve(const QString& filename, const QFont& baseFont = QFont());
85  static void repolish(QWidget* w);
86  static void setThemeColor(int color);
87  static void setThemeColor(const QColor& color);
88  static void applyTheme();
89  static QPixmap scaleSvgImage(const QString& path, uint32_t width, uint32_t height);
90  static void initPalette();
91  static void initDictColor();
92  static QString getThemePath();
93 
94 signals:
95  void themeChanged();
96 
97 private:
98  Style();
99 };
Style::getFont
static QFont getFont(Font font)
Definition: style.cpp:214
Style::MediumBold
@ MediumBold
Definition: style.h:60
Style::TransferGood
@ TransferGood
Definition: style.h:33
Style::Light
@ Light
Definition: style.h:67
Style::ThemeMediumDark
@ ThemeMediumDark
Definition: style.h:45
Style::ThemeLight
@ ThemeLight
Definition: style.h:47
Style::Link
@ Link
Definition: style.h:49
Style::Action
@ Action
Definition: style.h:48
Style::getThemePath
static QString getThemePath()
Definition: style.cpp:428
Style::ColorPalette
ColorPalette
Definition: style.h:31
Style::ThemeNameColor::name
QString name
Definition: style.h:73
Style::GroundExtra
@ GroundExtra
Definition: style.h:40
Style::getThemeName
static QString getThemeName()
Definition: style.cpp:116
Style::TransferMiddle
@ TransferMiddle
Definition: style.h:36
Style::StatusActive
@ StatusActive
Definition: style.h:39
Style::getImagePath
static const QString getImagePath(const QString &filename)
Definition: style.cpp:182
Style::ThemeNameColor::type
MainTheme type
Definition: style.h:72
Style::setThemeColor
static void setThemeColor(int color)
Definition: style.cpp:333
Style::Orange
@ Orange
Definition: style.h:42
Style::applyTheme
static void applyTheme()
Reloads some CCS.
Definition: style.cpp:376
Style::SmallLight
@ SmallLight
Definition: style.h:62
Style::getThemeFolder
static QString getThemeFolder()
Definition: style.cpp:123
Style::getThemeColorNames
static QStringList getThemeColorNames()
Definition: style.cpp:105
Style::SearchHighlighted
@ SearchHighlighted
Definition: style.h:50
Style::NameActive
@ NameActive
Definition: style.h:38
Style::ExtraBig
@ ExtraBig
Definition: style.h:56
Style::ThemeNameColor::color
QColor color
Definition: style.h:74
Style
Definition: style.h:28
Style::initPalette
static void initPalette()
Definition: style.cpp:391
Style::TransferWait
@ TransferWait
Definition: style.h:34
Style::Big
@ Big
Definition: style.h:57
Style::ThemeMedium
@ ThemeMedium
Definition: style.h:46
Style::ThemeDark
@ ThemeDark
Definition: style.h:44
Style::SelectText
@ SelectText
Definition: style.h:51
Style::repolish
static void repolish(QWidget *w)
Definition: style.cpp:319
Style::getColor
static QColor getColor(ColorPalette entry)
Definition: style.cpp:209
Style::GroundBase
@ GroundBase
Definition: style.h:41
Style::initDictColor
static void initDictColor()
Definition: style.cpp:408
Style::Font
Font
Definition: style.h:54
Style::resolve
static const QString resolve(const QString &filename, const QFont &baseFont=QFont())
Definition: style.cpp:234
Style::themeChanged
void themeChanged()
Style::getStylesheet
static const QString getStylesheet(const QString &filename, const QFont &baseFont=QFont())
Definition: style.cpp:165
Style::MainText
@ MainText
Definition: style.h:37
Style::ThemeNameColor
Definition: style.h:71
Style::BigBold
@ BigBold
Definition: style.h:58
Style::Dark
@ Dark
Definition: style.h:68
Style::scaleSvgImage
static QPixmap scaleSvgImage(const QString &path, uint32_t width, uint32_t height)
Definition: style.cpp:381
Style::Small
@ Small
Definition: style.h:61
Style::Style
Style()
Style::TransferBad
@ TransferBad
Definition: style.h:35
Style::Medium
@ Medium
Definition: style.h:59
Style::MainTheme
MainTheme
Definition: style.h:65
Style::Yellow
@ Yellow
Definition: style.h:43