Miam-Player  0.8.0
A nice music player
settings.h
Go to the documentation of this file.
1 #ifndef SETTINGS_H
2 #define SETTINGS_H
3 
4 #include <QSettings>
5 
6 #include "miamcore_global.h"
7 
13 class MIAMCORE_LIBRARY Settings : public QSettings
14 {
15  Q_OBJECT
16 
17 private:
19  static Settings *settings;
20 
22  Settings(const QString &organization = "MmeMiamMiam",
23  const QString &application = "MiamPlayer");
24 
25  Q_ENUMS(RequestSqlModel)
26  Q_ENUMS(ViewProperty)
27 
28 public:
29  enum RequestSqlModel { RSM_Hierarchical = 1,
30  RSM_Flat = 2};
31 
32  enum ViewProperty { VP_MediaControls = 0,
33  VP_SearchArea = 1,
34  VP_OwnWindow = 2,
35  VP_PlaylistFeature = 3,
36  VP_FileExplorerFeature = 4,
37  VP_VolumeIndicatorToggled = 5,
38  VP_HasAreaForRescan = 6,
39  VP_HasTracksToDisplay = 7,
40  VP_HideMenuBar = 8,
41  VP_LibraryCoverSize = 9,
42  VP_LibraryHasCovers = 10,
43  VP_LibraryHasCoverBelowTracks = 11,
44  VP_LibraryCoverBelowTracksOpacity = 12,
45  VP_LibraryHasStarsNextToTrack = 13,
46  VP_LibraryHasStarsForUnrated = 14,
47  VP_CanSendTracksToEditor = 15};
48 
50  static Settings* instance();
51 
53  int buttonsSize() const;
54 
55  qreal coverBelowTracksOpacity() const;
56 
58  int coverSizeLibraryTree() const;
59  int coverSizeUniqueLibrary() const;
60 
62  bool isCoverBelowTracksEnabled() const;
63 
65  bool isMediaButtonVisible(const QString & buttonName) const;
66 
68  bool isShowNeverScored() const;
69 
71  bool isVolumeBarTextAlwaysVisible() const;
72 
74  bool libraryHasStars() const;
75 
76  void setCoverBelowTracksEnabled(bool b);
77 
78  void setCoverBelowTracksOpacity(int v);
79 
80  void setCovers(bool b);
81 
82  void setCoverSizeLibraryTree(int s);
83  void setCoverSizeUniqueLibrary(int s);
84 
86  void setMediaButtonVisible(const QString & buttonName, const bool &value);
87 
88  void setShowNeverScored(bool b);
89 
91  void setStarsInLibrary(const bool &value);
92 
93  QMap<QString, QVariant> shortcuts() const;
94 
95  RequestSqlModel sqlModel() const;
96 
98  QString theme() const;
99 
101  qreal volume() const;
102 
103 private:
104  void initShortcuts();
105 
106 public slots:
108  void setButtonsSize(int s);
109 
111  void setThemeName(const QString &theme);
112 
114  void setVolume(qreal v);
115 
116  void setVolumeBarTextAlwaysVisible(bool b);
117 
118 signals:
119  void mediaButtonVisibilityChanged(const QString &buttonName, bool value);
120 
121  void themeHasChanged(const QString &theme);
122 
123  void viewPropertyChanged(ViewProperty vp, const QVariant &value);
124 };
125 
126 #endif // SETTINGS_H
ViewProperty
Definition: settings.h:32
Settings class contains all relevant pairs of (keys, values) used by Miam-Player. ...
Definition: settings.h:13
#define MIAMCORE_LIBRARY
Definition: miamcore_global.h:11
RequestSqlModel
Definition: settings.h:29