Sayonara Player
Friends | Public Types | Signals | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
AbstractPlaylist Class Referenceabstract

#include <AbstractPlaylist.h>

Detailed Description

The Playlist class.

Friends

class PlaylistHandler
 

Public Types

enum  SaveAsAnswer : quint8 {
  Success =0,
  AlreadyThere,
  ExternTracksError,
  Error
}
 

Signals

void sig_data_changed (int idx)
 

Public Member Functions

 AbstractPlaylist (int idx, const QString &name=QString())
 
QStringList toStringList () const
 
IdxList find_tracks (int id) const
 
IdxList find_tracks (const QString &filepath) const
 
int get_cur_track_idx () const
 
bool get_cur_track (MetaData &metadata) const
 
int get_idx () const
 
void set_idx (int idx)
 
void set_playlist_mode (const Playlist::Mode &mode)
 
quint64 get_running_time () const
 
virtual Playlist::Type get_type () const =0
 
virtual bool is_empty () const override
 
virtual int get_count () const override
 
virtual const MetaDataListget_playlist () const override
 
virtual void set_changed (bool b) override
 
virtual bool was_changed () const override
 
virtual bool is_storable () const override
 
const MetaDataoperator[] (int idx) const
 
const MetaDataat_const_ref (int idx) const
 
virtual void clear ()
 
virtual void move_tracks (const SP::Set< int > &indexes, int tgt)
 
virtual void copy_tracks (const SP::Set< int > &indexes, int tgt)
 
virtual void delete_tracks (const SP::Set< int > &indexes)
 
virtual void insert_track (const MetaData &metadata, int tgt)
 
virtual void insert_tracks (const MetaDataList &lst, int tgt)
 
virtual void append_tracks (const MetaDataList &lst)
 
virtual bool change_track (int idx)=0
 
virtual void metadata_deleted (const MetaDataList &v_md_deleted)=0
 
virtual void metadata_changed (const MetaDataList &v_md_old, const MetaDataList &v_md_new)=0
 
virtual void metadata_changed_single (const MetaData &metadata)=0
 
int get_id () const
 
void set_id (int db_id)
 
QString get_name () const
 
void set_name (const QString &name)
 
bool is_temporary () const
 
void set_temporary (bool b)
 
bool insert_temporary_into_db ()
 
SaveAsAnswer save ()
 
SaveAsAnswer save_as (const QString &str, bool force_override)
 
SaveAsAnswer rename (const QString &str)
 
bool delete_playlist ()
 
bool remove_from_db ()
 

Static Public Member Functions

static QString request_new_db_name ()
 

Protected Member Functions

virtual void play ()=0
 
virtual void pause ()=0
 
virtual void stop ()=0
 
virtual void fwd ()=0
 
virtual void bwd ()=0
 
virtual void next ()=0
 
virtual int create_playlist (const MetaDataList &v_md)=0
 
virtual void replace_track (int idx, const MetaData &metadata)
 
MetaDataListmetadata ()
 
MetaDatametadata (int idx)
 

Protected Attributes

bool _is_storable
 
int _playlist_idx
 
Playlist::Mode _playlist_mode
 
Settings_settings =nullptr
 
Inheritance diagram for AbstractPlaylist:
PlaylistDBInterface SayonaraClass StdPlaylist StreamPlaylist