networkstyle.h raw
1 // Copyright (c) 2014-present The Bitcoin Core 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 BITCOIN_QT_NETWORKSTYLE_H
6 #define BITCOIN_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(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 private:
27 NetworkStyle(const QString& appName, int iconColorHueShift, int iconColorSaturationReduction, const char* titleAddText);
28
29 QString appName;
30 QIcon appIcon;
31 QIcon trayAndWindowIcon;
32 QString titleAddText;
33 };
34
35 #endif // BITCOIN_QT_NETWORKSTYLE_H
36