Fix constness of ArgsManager methods
[bitcoinplatinum.git] / src / qt / platformstyle.h
blob4e763e760ea26a90457468106161978721ab259f
1 // Copyright (c) 2015 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.
5 #ifndef BITCOIN_QT_PLATFORMSTYLE_H
6 #define BITCOIN_QT_PLATFORMSTYLE_H
8 #include <QIcon>
9 #include <QPixmap>
10 #include <QString>
12 /* Coin network-specific GUI style information */
13 class PlatformStyle
15 public:
16 /** Get style associated with provided platform name, or 0 if not known */
17 static const PlatformStyle *instantiate(const QString &platformId);
19 const QString &getName() const { return name; }
21 bool getImagesOnButtons() const { return imagesOnButtons; }
22 bool getUseExtraSpacing() const { return useExtraSpacing; }
24 QColor TextColor() const { return textColor; }
25 QColor SingleColor() const { return singleColor; }
27 /** Colorize an image (given filename) with the icon color */
28 QImage SingleColorImage(const QString& filename) const;
30 /** Colorize an icon (given filename) with the icon color */
31 QIcon SingleColorIcon(const QString& filename) const;
33 /** Colorize an icon (given object) with the icon color */
34 QIcon SingleColorIcon(const QIcon& icon) const;
36 /** Colorize an icon (given filename) with the text color */
37 QIcon TextColorIcon(const QString& filename) const;
39 /** Colorize an icon (given object) with the text color */
40 QIcon TextColorIcon(const QIcon& icon) const;
42 private:
43 PlatformStyle(const QString &name, bool imagesOnButtons, bool colorizeIcons, bool useExtraSpacing);
45 QString name;
46 bool imagesOnButtons;
47 bool colorizeIcons;
48 bool useExtraSpacing;
49 QColor singleColor;
50 QColor textColor;
51 /* ... more to come later */
54 #endif // BITCOIN_QT_PLATFORMSTYLE_H