Miam-Player  0.8.0
A nice music player
tableview.h
Go to the documentation of this file.
1 #ifndef TABLEVIEW_H
2 #define TABLEVIEW_H
3 
4 #include <QMenu>
5 #include <QTableView>
6 
8 #include <library/jumptowidget.h>
10 #include "uniquelibraryitemmodel.h"
11 
17 class MIAMUNIQUELIBRARY_LIBRARY TableView : public QTableView, public SelectedTracksModel
18 {
19  Q_OBJECT
20 private:
21  UniqueLibraryItemModel *_model;
22 
23  JumpToWidget *_jumpToWidget;
24 
25  int _skipCount;
26 
27  QMenu _menu;
28  QAction *_actionSendToTagEditor;
29 
30  QWidget *_artistHeader;
31 
32 public:
33  explicit TableView(QWidget *parent = nullptr);
34 
35  virtual ~TableView();
36 
38  void adjust();
39 
41  virtual bool eventFilter(QObject *obj, QEvent *event) override;
42 
43  inline JumpToWidget* jumpToWidget() const { return _jumpToWidget; }
44 
46  virtual void keyboardSearch(const QString &search) override;
47 
48  inline UniqueLibraryItemModel *model() const { return _model; }
49 
50  virtual QList<QUrl> selectedTracks() override;
51 
52  virtual void updateSelectedTracks() override;
53 
54 protected:
55  virtual void contextMenuEvent(QContextMenuEvent *e) override;
56 
58  virtual void mouseMoveEvent(QMouseEvent *event) override;
59 
61  virtual void mousePressEvent(QMouseEvent *event) override;
62 
63  virtual void paintEvent(QPaintEvent *event) override;
64 
65 public slots:
66  void jumpTo(const QString &letter);
67 
68 signals:
69  void sendToTagEditor(const QList<QUrl> &tracks);
70 };
71 
72 #endif // TABLEVIEW_H
virtual void updateSelectedTracks()=0
The SelectedTracksModel class.
Definition: selectedtracksmodel.h:14
JumpToWidget * jumpToWidget() const
Definition: tableview.h:43
UniqueLibraryItemModel * model() const
Definition: tableview.h:48
The UniqueLibraryItemModel class is the model used to store all tracks in a list view.
Definition: uniquelibraryitemmodel.h:16
The ListView class is used to display thousands of tracks in a single list.
Definition: tableview.h:17
The JumpToWidget class displays letters which can be clicked to jump to a particular position in your...
Definition: jumptowidget.h:16
virtual QList< QUrl > selectedTracks()=0
#define MIAMUNIQUELIBRARY_LIBRARY
Definition: miamuniquelibrary_global.hpp:8