Qmmp
Public Types | Public Slots | Signals | Public Member Functions
PlayListModel Class Reference

#include <playlistmodel.h>

List of all members.

Public Types

enum  SortMode {
  TITLE = 0, ALBUM, DISCNUMBER, ARTIST,
  FILENAME, PATH_AND_FILENAME, DATE, TRACK,
  FILE_CREATION_DATE, FILE_MODIFICATION_DATE, GROUP
}

Public Slots

void add (PlayListTrack *track)
void add (QList< PlayListTrack * > tracks)
void add (const QString &path)
void add (const QStringList &paths)
void insert (int index, PlayListTrack *track)
void insert (PlayListItem *before, PlayListTrack *track)
void insert (int index, QList< PlayListTrack * > tracks)
void insert (int index, const QString &path)
void insert (int index, const QStringList &paths)
void insert (int index, const QList< QUrl > &urls)
void clear ()
void clearSelection ()
void removeSelected ()
void removeUnselected ()
void removeTrack (int i)
void removeTrack (PlayListItem *track)
void invertSelection ()
void selectAll ()
void showDetails (QWidget *parent=0)
void doCurrentVisibleRequest ()
void randomizeList ()
void reverseList ()
void sortSelection (int mode)
void sort (int mode)
void addToQueue ()
void setQueued (PlayListTrack *item)
void removeInvalidTracks ()
void removeDuplicates ()
void clearQueue ()
void stopAfterSelected ()
void updateGroups ()

Signals

void listChanged ()
void currentChanged ()
void trackAdded (PlayListTrack *track)
void nameChanged (const QString &name)
void loaderFinished ()
void countChanged ()

Public Member Functions

 PlayListModel (const QString &name, QObject *parent=0)
 ~PlayListModel ()
QString name () const
void setName (const QString &name)
int count () const
int trackCount () const
PlayListTrackcurrentTrack () const
PlayListTracknextTrack () const
int indexOf (PlayListItem *item) const
PlayListItemitem (int index) const
PlayListTracktrack (int index) const
PlayListGroup * group (int index) const
int currentIndex () const
bool setCurrent (int index)
bool setCurrent (PlayListTrack *item)
bool isTrack (int index) const
bool isGroup (int index) const
bool isSelected (int index) const
void setSelected (int index, bool selected=true)
void setSelected (QList< PlayListTrack * > tracks, bool selected=true)
void setSelected (QList< PlayListItem * > items, bool selected=true)
bool next ()
bool previous ()
QList< PlayListItem * > mid (int pos, int count=-1) const
void moveItems (int from, int to)
bool isQueued (PlayListTrack *item) const
void setCurrentToQueued ()
bool isEmptyQueue () const
int queuedIndex (PlayListTrack *track) const
int queueSize () const
bool isStopAfter (PlayListItem *item) const
const SimpleSelectiongetSelection (int row)
QList< int > selectedIndexes () const
QList< PlayListTrack * > selectedTracks () const
QList< PlayListItem * > items () const
int firstSelectedUpper (int row)
int firstSelectedLower (int row)
int totalLength () const
void loadPlaylist (const QString &f_name)
void savePlaylist (const QString &f_name)
bool isLoaderRunning () const
bool contains (const QString &url)
int numberOfTrack (int index) const

Detailed Description

The PlayListModel class provides a data model for the playlist.

Author:
Vladimir Kuznetsov <vovanec@gmail.com>
Ilya Kotov <forkotov02@hotmail.ru>

Member Enumeration Documentation

enum SortMode

Enum of the available sort modes

Enumerator:
TITLE 

by title

ALBUM 

by album

DISCNUMBER 

by discnumber

ARTIST 

by artist

FILENAME 

by file name

PATH_AND_FILENAME 

by path and file name

DATE 

by date

TRACK 

by track

FILE_CREATION_DATE 

by file creation date

FILE_MODIFICATION_DATE 

by file modification date

GROUP 

by group name


Constructor & Destructor Documentation

PlayListModel ( const QString &  name,
QObject *  parent = 0 
)

Constructs a playlist model.

Parameters:
namePlaylist name.
parentQObject parent

Object destructor.


Member Function Documentation

void add ( PlayListTrack track) [slot]

Adds track to the playlist.

void add ( QList< PlayListTrack * >  tracks) [slot]

Adds a list of items to the playlist.

Parameters:
itemsList of items.
void add ( const QString &  path) [slot]

Adds a list of files and directories to the playlist

Parameters:
pathFull path of file or directory.
void add ( const QStringList &  paths) [slot]

Adds a list of files and directories to the playlist

Parameters:
pathsFull paths of files and directories.
void addToQueue ( ) [slot]

Adds/removes selected items to/from playback queue.

void clear ( ) [slot]

Removes all items.

void clearQueue ( ) [slot]

Removes all items from queue.

void clearSelection ( ) [slot]

Clears selection.

bool contains ( const QString &  url)

Returns true if the playlist contains an item with URL url; otherwise returns false.

int count ( ) const

Returns number of items.

void countChanged ( ) [signal]

Emitted when playlist items are added or removed.

void currentChanged ( ) [signal]

Emitted when current item has changed.

int currentIndex ( ) const

Returns index of the current item.

Returns the current track.

void doCurrentVisibleRequest ( ) [slot]

Emits update signals manually.

int firstSelectedLower ( int  row)

Returns number of first item that selected lower the row item.

int firstSelectedUpper ( int  row)

Returns number of first item that selected upper the row item.

const SimpleSelection& getSelection ( int  row)

Returns current selection(playlist can contain a lot of selections, this method returns selection which row belongs to)

int indexOf ( PlayListItem item) const

Returns the row of the item

void insert ( int  index,
PlayListTrack track 
) [slot]

Inserts track at index position index in the playlist.

void insert ( int  index,
QList< PlayListTrack * >  tracks 
) [slot]

Inserts tracks at index position index in the playlist.

void insert ( int  index,
const QString &  path 
) [slot]

Inserts file or directory at index position index in the playlist.

Parameters:
pathFull path of file or directory.
indexPosition in the playlist.
void insert ( int  index,
const QStringList &  paths 
) [slot]

Adds a list of files and directories at index position index in the playlist.

Parameters:
pathsFull paths of files and directories.
indexPosition in the playlist.
void insert ( int  index,
const QList< QUrl > &  urls 
) [slot]

Adds a list of URLs at index position index in the playlist.

Parameters:
pathsurls a list of URLs.
indexPosition in the playlist.
void invertSelection ( ) [slot]

Inverts selection (selects unselected items and unselects selected items)

bool isEmptyQueue ( ) const

Returns true if play queue is empty,otherwise returns - false.

bool isLoaderRunning ( ) const

Returns true if the file loader thread is active; otherwise returns false.

bool isQueued ( PlayListTrack item) const

Returns true if f file is in play queue, otherwise returns false.

bool isSelected ( int  index) const

Returns true if item with index is selected, otherwise returns false

bool isStopAfter ( PlayListItem item) const

Returns true if playback stops after item, otherwise returns false.

PlayListItem* item ( int  index) const

Returns the item with the index index or 0 if item doesn't exist.

QList<PlayListItem*> items ( ) const

Returns list of all PlayListItem pointers.

void listChanged ( ) [signal]

Emitted when the state of PlayListModel has changed.

void loaderFinished ( ) [signal]

Emitted when playlist loader thread has finished.

void loadPlaylist ( const QString &  f_name)

Loads playlist with f_name name.

QList<PlayListItem *> mid ( int  pos,
int  count = -1 
) const

Returns a list of the items, starting at position pos

Parameters:
posFirst item position.
countA number of items. If count is -1 (the default), all items from pos are returned.
void moveItems ( int  from,
int  to 
)

Moves the item at index position from to index position to.

QString name ( ) const

Returns playlist name.

void nameChanged ( const QString &  name) [signal]

Emitted when playlist name has chanded.

Parameters:
nameNew playlist name.
bool next ( )

Advances to the next item. Returns false if next iten doesn't exist, otherwise returns true

Returns the next playing track or 0 if next track is unknown.

bool previous ( )

Goes back to the previous item. Returns false if previous iten doesn't exist, otherwise returns true

int queuedIndex ( PlayListTrack track) const

Returns index of f file in queue.e

int queueSize ( ) const

Returns the number of items in the queue

void randomizeList ( ) [slot]

Randomly changes items order.

void removeDuplicates ( ) [slot]

Removes duplicate items by URL.

void removeInvalidTracks ( ) [slot]

Removes invalid items from playlist

void removeSelected ( ) [slot]

Removes selected items.

void removeTrack ( int  i) [slot]

Removes items with i index.

void removeTrack ( PlayListItem track) [slot]

Removes item item from playlist

void removeUnselected ( ) [slot]

Removes unselected items.

void reverseList ( ) [slot]

Reverces items order.

void savePlaylist ( const QString &  f_name)

Saves current songs to the playlist with f_name name.

void selectAll ( ) [slot]

Selects all items.

QList<int> selectedIndexes ( ) const

Returns list with selected items indexes.

QList<PlayListTrack *> selectedTracks ( ) const

Returns list of PlayListItem pointers that are selected.

bool setCurrent ( int  index)

Sets current index. Returns false if item with this index doesn't exist, otherwise returns true

Parameters:
indexNumber of item.
bool setCurrent ( PlayListTrack item)

Sets current item to item. Returns true if success, otherwise returns false

Sets current song to the file that is nex in queue, if queue is empty - does nothing

void setName ( const QString &  name)

Sets the name of the playlist to name.

void setQueued ( PlayListTrack item) [slot]

Adds/removes item f to/from playback queue.

void setSelected ( int  index,
bool  selected = true 
)

Sets the selected state of the item to select

Parameters:
indexNumber of item.
selectedSelection state (true - select, false - unselect)
void showDetails ( QWidget *  parent = 0) [slot]

Shows details for the first selected item.

Parameters:
parentparent Widget.
void sort ( int  mode) [slot]

Sorts items in mode sort mode.

void sortSelection ( int  mode) [slot]

Sorts selected items in mode sort mode.

void stopAfterSelected ( ) [slot]

Toggles 'stop after selected' feature.

int totalLength ( ) const

Returns total lenght in seconds of all songs.

void trackAdded ( PlayListTrack track) [signal]

Emitted when new track has added.

Parameters:
trackPointer of the new playlist track.
int trackCount ( ) const

Returns number of tracks.

void updateGroups ( ) [slot]

Rebuilds groups


The documentation for this class was generated from the following file:
 All Classes Functions Variables Enumerations Enumerator