29 #ifndef PLAYLISTVIEW_H_ 30 #define PLAYLISTVIEW_H_ 32 #include "Gui/Utils/SearchableWidget/SearchableView.h" 33 #include "Gui/Utils/Widgets/Dragable.h" 34 #include "Gui/Utils/Widgets/WidgetTemplate.h" 36 #include "Gui/InfoDialog/InfoDialogContainer.h" 38 #include "Utils/Playlist/PlaylistFwd.h" 39 #include "Utils/MetaData/MetaDataFwd.h" 40 #include "Utils/Pimpl.h" 59 void sigDoubleClicked(
int row);
60 void sigDeleteTracks(
const IndexSet& rows);
61 void sigBookmarkPressed(
int trackIdx, Seconds timestamp);
64 explicit View(PlaylistPtr pl, QWidget* parent=
nullptr);
67 void gotoRow(
int row);
68 void deleteSelectedTracks();
79 void removeSelectedRows();
83 void currentTrackChanged(
int track_index,
int playlistIndex);
84 void asyncDropFinished(
bool success,
int dropIndex);
85 void ratingChanged(Rating rating);
86 void columnsChanged();
87 void showRatingChanged();
88 void findTrackTriggered();
89 void reverseTriggered();
90 void bookmarkTriggered(Seconds timestamp);
92 void moveSelectedRowsUp();
93 void moveSelectedRowsDown();
94 void playSelectedTrack();
95 void gotoToCurrentTrack();
96 void playlistBusyChanged(
bool b);
97 void currentScannedFileChanged(
const QString& currentFile);
101 void initContextMenu();
104 int calcDragDropLine(QPoint pos);
105 void handleDrop(QDropEvent* event);
106 void handleInnerDragDrop(
int row,
bool copy);
111 QMimeData* dragableMimedata()
const override;
112 int mapModelIndexToIndex(
const QModelIndex& idx)
const override;
115 void skinChanged()
override;
122 void dragEnterEvent(QDragEnterEvent* event)
override;
123 void dragMoveEvent(QDragMoveEvent* event)
override;
124 void dropEvent(QDropEvent* event)
override;
125 void mousePressEvent(QMouseEvent* event)
override;
126 void mouseDoubleClickEvent(QMouseEvent* event)
override;
127 void keyPressEvent(QKeyEvent* event)
override;
128 bool viewportEvent(QEvent* event)
override;
129 void contextMenuEvent(QContextMenuEvent* e)
override;
An interface used to abstract the usage of the info dialog. An implementing class has to return the i...
Definition: InfoDialogContainer.h:61
void dropEventFromOutside(QDropEvent *event)
called from GUI_Playlist when data has not been dropped directly into the view widget....
void dragLeaveEvent(QDragLeaveEvent *event) override
we start the drag action, all lines has to be cleared
MetaDataList infoDialogData() const override
get the metadata that should be used for the info dialog So for lists, the selected tracks are used h...
Definition: typedefs.h:32
A set structure. Inherited from std::set with some useful methods. For integer and String this set is...
Definition: Set.h:35
MD::Interpretation metadataInterpretation() const override
get the interpretation for the metadata. Maybe a list of metadata should be intrepeted as albums whil...
The Dragable class.
Definition: Dragable.h:60
The PlaylistView class.
Definition: PlaylistView.h:50