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);
63 Playlist(
int playlistIndex,
const QString& name,
PlayManager* playManager,
64 const std::shared_ptr<Util::FileSystem>& fileSystem);
69 [[nodiscard]]
int findCurrentTrackIndex()
const;
70 [[nodiscard]]
bool isCurrentTrack(
int index)
const;
72 [[nodiscard]]
int index()
const;
73 void setIndex(
int idx);
75 [[nodiscard]]
Mode mode()
const;
76 void setMode(
const Mode& mode);
82 bool continueFromStop();
83 bool canContinueFromStop()
const;
85 void toggleStopAfterTrack(
int index);
86 [[nodiscard]]
bool isLastTrackBeforeStop(
int index)
const;
87 [[nodiscard]]
int findLastIndexBeforeStop()
const;
89 [[nodiscard]]
int count()
const;
91 [[nodiscard]]
bool isBusy()
const;
94 [[nodiscard]]
const MetaDataList& tracks()
const override;
96 bool changeTrack(
int index, MilliSeconds positionMs = 0);
97 bool prepareTrack(
int index);
99 [[nodiscard]]
bool wasChanged()
const override;
100 void resetChangedStatus();
103 void modifyTracks(Modificator&& modificator, Reason reason, Operation operation);
106 void setChanged(
bool b)
override;
107 void emitLockChanged()
override;
110 void metadataChanged();
111 void metadataDeleted();
112 void settingPlaylistModeChanged();
113 void currentMetadataChanged();
114 void durationChanged();
117 void replaceTrack(
int index,
const MetaData& track);
118 [[nodiscard]]
int findFirstValidIndex(
int index)
const;