24 #include "PlaylistDBInterface.h" 25 #include "Helper/typedefs.h" 26 #include "Helper/Playlist/PlaylistFwd.h" 27 #include "Helper/Playlist/PlaylistMode.h" 28 #include "Helper/Settings/SayonaraClass.h" 29 #include "Helper/Pimpl.h" 55 void sig_data_changed(
int idx);
66 virtual void play()=0;
67 virtual void pause()=0;
68 virtual void stop()=0;
71 virtual void next()=0;
74 virtual void replace_track(
int idx,
const MetaData& metadata);
84 QStringList toStringList()
const;
86 IdxList find_tracks(
int id)
const;
87 IdxList find_tracks(
const QString& filepath)
const;
88 int get_cur_track_idx()
const;
89 bool get_cur_track(
MetaData& metadata)
const;
91 void set_idx(
int idx);
93 quint64 get_running_time()
const;
95 virtual Playlist::Type get_type()
const = 0;
99 virtual bool is_empty()
const override;
100 virtual int get_count()
const override;
101 virtual const MetaDataList& get_playlist()
const override;
103 virtual void set_changed(
bool b)
override;
104 virtual bool was_changed()
const override;
105 virtual bool is_storable()
const override;
108 const MetaData& operator[](
int idx)
const;
109 const MetaData& at_const_ref(
int idx)
const;
111 virtual void clear();
113 virtual void move_tracks(
const SP::Set<int>& indexes,
int tgt);
115 virtual void copy_tracks(
const SP::Set<int>& indexes,
int tgt);
117 virtual void delete_tracks(
const SP::Set<int>& indexes);
119 virtual void insert_track(
const MetaData& metadata,
int tgt);
126 virtual void metadata_deleted(
const MetaDataList& v_md_deleted)=0;
128 virtual void metadata_changed_single(
const MetaData& metadata)=0;
132 void _sl_playlist_mode_changed();
The Mode class.
Definition: PlaylistMode.h:31
The MetaDataList class.
Definition: AbstractPlaylist.h:34
The SayonaraClass class provides access to Settings and notifications.
Definition: SayonaraClass.h:29
void insert_tracks(const MetaDataList &v_md, int idx, int pl_idx)
insert tracks into a playlist at a given index
Set namespace defines the setting: Which key and which type.
Definition: SettingKey.h:200
int create_playlist(const MetaDataList &v_md, const QString &name=QString(), bool temporary=true, Playlist::Type type=Playlist::Type::Std)
create a new playlist
The Playlist class.
Definition: AbstractPlaylist.h:46
void change_track(int track_idx, int pl_idx)
change the track in a given playlist
Global handler for playlists.
Definition: PlaylistHandler.h:57
The PlaylistDBInterface class.
Definition: PlaylistDBInterface.h:33
void append_tracks(const MetaDataList &v_md, int pl_idx)
append tracks at a given playlist index
A set structure. Inherited from std::set with some useful methods. For integer and String this set is...
Definition: AbstractPlaylist.h:37