21 #ifndef JUMPTOTRACKDIALOG_P_H
22 #define JUMPTOTRACKDIALOG_P_H
27 #include "metadataformatter.h"
28 #include "ui_jumptotrackdialog.h"
31 class QSortFilterProxyModel;
40 class JumpToTrackDialog :
public QDialog,
private Ui::JumpToTrackDialog
45 enum { QueueRole = Qt::UserRole + 1 };
47 explicit JumpToTrackDialog(
PlayListModel *model, QWidget* parent =
nullptr);
51 void on_queuePushButton_clicked();
52 void on_jumpToPushButton_clicked();
53 void jumpTo(
const QModelIndex&);
54 void queueUnqueue(
const QModelIndex&,
const QModelIndex&);
57 bool eventFilter(QObject *o, QEvent *e)
override;
58 TrackListModel* m_listModel;
59 QSortFilterProxyModel* m_proxyModel;
63 QHash<int, QString> m_queueText;
70 class TrackListModel :
public QAbstractListModel
74 explicit TrackListModel(
PlayListModel *model, QObject *parent);
76 QVariant data(
const QModelIndex &index,
int role)
const override;
77 int rowCount(
const QModelIndex &parent)
const override;
80 void onListChanged(
int flags);
84 QSet<PlayListTrack *> m_queue;
The PlayListManager class is used to handle multiple playlists.
Definition: playlistmanager.h:37
The PlayListModel class provides a data model for the playlist.
Definition: playlistmodel.h:97