networkstyle.h raw
1 // Copyright (c) 2014-2019 The Limenka developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5 #ifndef LIMENKA_QT_NETWORKSTYLE_H
6 #define LIMENKA_QT_NETWORKSTYLE_H
7
8 #include <util/chaintype.h>
9
10 #include <QIcon>
11 #include <QPixmap>
12 #include <QString>
13
14 /* Coin network-specific GUI style information */
15 class NetworkStyle
16 {
17 public:
18 /** Get style associated with provided network id, or 0 if not known */
19 static const NetworkStyle* instantiate(const ChainType networkId);
20
21 const QString &getAppName() const { return appName; }
22 const QIcon &getAppIcon() const { return appIcon; }
23 const QIcon &getTrayAndWindowIcon() const { return trayAndWindowIcon; }
24 const QString &getTitleAddText() const { return titleAddText; }
25
26 QColor AdjustColour(QColor colour) const;
27 const std::pair<int, int> m_colour_shift;
28
29 private:
30 NetworkStyle(const QString &appName, const int iconColorHueShift, const int iconColorSaturationReduction, const char *titleAddText);
31
32 QString appName;
33 QIcon appIcon;
34 QIcon trayAndWindowIcon;
35 QString titleAddText;
36 };
37
38 #endif // LIMENKA_QT_NETWORKSTYLE_H
39