NAME
POE::Component::Client::MPD::Playlist - module handling playlist commands
DESCRIPTION
POCOCM::Playlist
is responsible for handling general purpose commands. They are in a dedicated module to achieve easier code maintenance.
To achieve those commands, send the corresponding event to the POCOCM session you created: it will be responsible for dispatching the event where it is needed. Under no circumstance should you call directly subs or methods from this module directly.
Read POCOCM's pod to learn how to deal with answers from those commands.
PUBLIC EVENTS
The following is a list of playlist-related events accepted by POCOCM.
Retrieving information
pl.as_items()
Return an array of
Audio::MPD::Common::Item::Song
s, one for each of the songs in the current playlist.pl.items_changed_since( $plversion )
Return a list with all the songs (as
Audio::MPD::Common::Item::Song
objects) added to the playlist since playlist$plversion
.
Adding / removing songs
pl.add( $path, $path, ... )
Add the songs identified by
$path
(relative to MPD's music directory) to the current playlist.pl.delete( $number, $number, ... )
Remove song
$number
(starting from 0) from the current playlist.pl.deleteid( $songid, $songid, ... )
Remove the specified
$songid
(as assigned by mpd when inserted in playlist) from the current playlist.clear()
Remove all the songs from the current playlist.
crop()
Remove all of the songs from the current playlist *except* the current one.
Changing playlist order
pl.shuffle()
Shuffle the current playlist.
pl.swap( $song1, $song2 )
Swap positions of song number
$song1
and$song2
in the current playlist.pl.swapid( $songid1, $songid2 )
Swap positions of song id
$songid1
and$songid2
in the current playlist.pl.move( $song, $newpos )
Move song number
$song
to the position$newpos
.pl.moveid( $songid, $newpos )
Move song id
$songid
to the position$newpos
.
Managing playlists
pl.load( $playlist )
Load list of songs from specified
$playlist
file.pl.save( $playlist )
Save the current playlist to a file called
$playlist
in MPD's playlist directory.pl.rm( $playlist )
Delete playlist named
$playlist
from MPD's playlist directory.
SEE ALSO
For all related information (bug reporting, mailing-list, pointers to MPD and POE, etc.), refer to POE::Component::Client::MPD
's pod, section SEE ALSO
AUTHOR
Jerome Quelin, <jquelin@cpan.org>
COPYRIGHT & LICENSE
Copyright (c) 2007-2008 Jerome Quelin, all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.