21#ifndef SAYONARA_COMPONENTS_PLAYLIST
22#define SAYONARA_COMPONENTS_PLAYLIST
24#include "PlaylistDBInterface.h"
25#include "PlaylistModifiers.h"
27#include "Utils/Playlist/PlaylistFwd.h"
28#include "Utils/Playlist/PlaylistMode.h"
30#include "Utils/Pimpl.h"
56 void sigLockChanged();
57 void sigItemsChanged(
int index);
58 void sigTrackChanged(
int oldIndex,
int newIndex);
59 void sigBusyChanged(
bool b);
60 void sigCurrentScannedFileChanged(
const QString& currentFile);
64 const std::shared_ptr<Util::FileSystem>& fileSystem);
69 [[nodiscard]]
int currentTrackIndex()
const;
71 [[nodiscard]]
int index()
const;
72 void setIndex(
int idx);
74 [[nodiscard]]
Mode mode()
const;
75 void setMode(
const Mode& mode);
84 [[nodiscard]]
int count()
const;
86 [[nodiscard]]
bool isBusy()
const;
89 [[nodiscard]]
const MetaDataList& tracks()
const override;
91 bool changeTrack(
int index, MilliSeconds positionMs = 0);
93 [[nodiscard]]
bool wasChanged()
const override;
94 void resetChangedStatus();
97 void modifyTracks(Modificator&& modificator, Reason reason, Operation operation);
100 void setChanged(
bool b)
override;
101 void emitLockChanged()
override;
104 void metadataChanged();
105 void metadataDeleted();
106 void settingPlaylistModeChanged();
107 void currentMetadataChanged();
108 void durationChanged();
111 void replaceTrack(
int index,
const MetaData& track);
112 void setCurrentTrack(
int index);
Definition: PlayManager.h:34
Definition: PlaylistDBInterface.h:35
Definition: PlaylistHandler.h:57
The Mode class.
Definition: PlaylistMode.h:42
Definition: Playlist.h:49
Helper functions.
Definition: MetaTypeRegistry.h:25