29#ifndef SAYONARA_PLAYLISTHANDLER_H
30#define SAYONARA_PLAYLISTHANDLER_H
32#include "PlaylistDBInterface.h"
33#include "PlaylistInterface.h"
35#include "Utils/Pimpl.h"
36#include "Utils/Playlist/PlaylistFwd.h"
37#include "Utils/Library/LibraryNamespaces.h"
51 class LocalPathPlaylistCreator;
63 const std::shared_ptr<Util::FileSystem>& fileSystem);
68 [[nodiscard]]
int count()
const override;
70 PlaylistPtr playlist(
int playlistIndex)
override;
71 PlaylistPtr playlistById(
int playlistId)
override;
73 [[nodiscard]]
int activeIndex()
const override;
75 [[nodiscard]]
int currentIndex()
const override;
76 void setCurrentIndex(
int playlistIndex)
override;
78 [[nodiscard]] QString requestNewPlaylistName(
const QString& prefix = QString())
const override;
81 createPlaylist(
const MetaDataList& tracks,
const QString& name = QString(),
bool temporary =
true,
82 bool isLocked =
false)
override;
84 int createPlaylist(
const QStringList& paths,
const QString& name = QString(),
bool temporary =
true,
88 int createCommandLinePlaylist(
const QStringList& pathList,
91 int createEmptyPlaylist(
bool override =
false)
override;
94 void closePlaylist(
int playlistIndex);
97 int addNewPlaylist(
const QString& name,
bool editable,
bool overwriteLocked);
98 [[nodiscard]]
int exists(
const QString& name)
const;
101 void trackChanged(
int oldIndex,
int newIndex);
105 void playstateChanged(PlayState state);
106 void wwwTrackFinished(
const MetaData& track);
107 void playlistRenamed(
int id,
const QString& oldNamde,
const QString& newName);
108 void playlistDeleted(
int id);
111 void sigNewPlaylistAdded(
int playlistIndex);
112 void sigPlaylistNameChanged(
int playlistIndex);
113 void sigCurrentPlaylistChanged(
int playlistIndex);
114 void sigActivePlaylistChanged(
int playlistIndex);
115 void sigTrackDeletionRequested(
const MetaDataList& tracks, Library::TrackDeletionMode deletion_mode);
116 void sigPlaylistClosed(
int playlistIndex);
Definition CustomPlaylist.h:30
Definition PlayManager.h:34
Definition PlaylistInterface.h:43
Definition PlaylistInterface.h:59
Definition PlaylistHandler.h:57
Definition LocalPathPlaylistCreator.h:36
Helper functions.
Definition MetaTypeRegistry.h:25