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);
92 bool prepareTrack(
int index);
94 [[nodiscard]]
bool wasChanged()
const override;
95 void resetChangedStatus();
98 void modifyTracks(Modificator&& modificator, Reason reason, Operation operation);
101 void setChanged(
bool b)
override;
102 void emitLockChanged()
override;
105 void metadataChanged();
106 void metadataDeleted();
107 void settingPlaylistModeChanged();
108 void currentMetadataChanged();
109 void durationChanged();
112 void replaceTrack(
int index,
const MetaData& track);
113 [[nodiscard]]
int findFirstValidIndex(
int index)
const;
Definition PlayManager.h:34
Definition PlaylistDBInterface.h:35
Definition PlaylistHandler.h:57
The Mode class.
Definition PlaylistMode.h:42
Helper functions.
Definition MetaTypeRegistry.h:25