Miam-Player  0.8.0
A nice music player
uniquelibrary.h
Go to the documentation of this file.
1 #ifndef UNIQUELIBRARY_H
2 #define UNIQUELIBRARY_H
3 
4 #include <QTranslator>
5 
6 #include <model/sqldatabase.h>
7 #include <abstractview.h>
9 
11 
12 #include "ui_uniquelibrary.h"
13 
20 {
21  Q_OBJECT
22 private:
23  QStandardItem *_currentTrack;
24 
26 
27  QTranslator translator;
28 
29  QModelIndexList *_randomHistoryList;
30 
31 public:
32  explicit UniqueLibrary(MediaPlayer *mediaPlayer, QWidget *parent = nullptr);
33 
34  virtual ~UniqueLibrary();
35 
36  inline QStandardItem* currentTrack() const { return _currentTrack; }
37 
38  inline UniqueLibraryFilterProxyModel* proxy() const { return _proxy; }
39 
40  inline QModelIndexList* randomHistoryList() const { return _randomHistoryList; }
41 
42  inline virtual QSize sizeHint() const override { return QSize(420, 850); }
43 
44  inline virtual ViewType type() const override { return VT_BuiltIn; }
45 
46  virtual bool viewProperty(Settings::ViewProperty vp) const override;
47 
48 protected:
49  virtual void changeEvent(QEvent *event) override;
50 
51  virtual void closeEvent(QCloseEvent *event) override;
52 
53 private:
54  bool play(const QModelIndex &index, QAbstractItemView::ScrollHint sh = QAbstractItemView::PositionAtCenter);
55 
56 public slots:
57  bool playSingleTrack(const QModelIndex &index);
58 
59  virtual void setMusicSearchEngine(MusicSearchEngine *musicSearchEngine) override;
60 
61  virtual void setViewProperty(Settings::ViewProperty vp, QVariant value) override;
62 
63  virtual void volumeSliderDecrease() override;
64 
65  virtual void volumeSliderIncrease() override;
66 };
67 
68 #endif // UNIQUELIBRARY_H
ViewProperty
Definition: settings.h:32
UniqueLibraryFilterProxyModel * proxy() const
Definition: uniquelibrary.h:38
Definition: ui_uniquelibrary.h:217
QModelIndexList * randomHistoryList() const
Definition: uniquelibrary.h:40
virtual void setMusicSearchEngine(MusicSearchEngine *)
Definition: abstractview.h:52
ViewType
Definition: abstractview.h:39
QStandardItem * currentTrack() const
Definition: uniquelibrary.h:36
virtual bool viewProperty(Settings::ViewProperty) const
Definition: abstractview.h:61
virtual void setViewProperty(Settings::ViewProperty vp, QVariant value)=0
virtual QSize sizeHint() const override
Definition: uniquelibrary.h:42
virtual void volumeSliderIncrease()
Definition: abstractview.h:68
The UniqueLibrary class.
Definition: uniquelibrary.h:19
virtual void volumeSliderDecrease()
Definition: abstractview.h:70
The AbstractView class is the base class for all views in Miam-Player.
Definition: abstractview.h:22
virtual ViewType type() const override
Definition: uniquelibrary.h:44
The MusicSearchEngine class.
Definition: musicsearchengine.h:15
The UniqueLibraryFilterProxyModel class.
Definition: uniquelibraryfilterproxymodel.h:15
The MediaPlayer class is a central class which controls local and remote sources. ...
Definition: mediaplayer.h:22
#define MIAMUNIQUELIBRARY_LIBRARY
Definition: miamuniquelibrary_global.hpp:8
Definition: abstractview.h:40