Hi.
Rainer Hihn, 20.03.2012 16:02:
> for a plugin development I need to register when a track ended /
> changed. Is there an easy, convenient way to get this done?
There are two events for that: playback_track_start and
playback_track_end, both emitted by xl.player.PLAYER. You can connect
to these the following way:
from xl import player
from xl import event
def on_playback_track_start(self, event, player, track):
"""
My callback for track start
"""
print "{0} started".format(track)
def on_playback_track_end(self, event, player, track):
"""
My callback for track end
"""
print "{0} ended".format(track)
event.add_callback(on_playback_track_start, "playback_track_start",
xl.player.PLAYER)
event.add_callback(on_playback_track_end, "playback_track_end",
xl.player.PLAYER)
Alternatively, if you write a class, you can derive from
xl.player.adapters.PlaybackAdapter and override its methods
on_playback_track_start and on_playback_track_end. The latter method
was missing until a few minutes ago but I’ve just added it.
Make sure to explicitely call its destroy() method within yours if you
derive from multiple classes. Otherwise you’ll leak callback references.
Regards, Mathias
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk9o5FMACgkQYfUFJ3ewsJj6egCdEi1btgWPQ1MgfA2m06j6HxAp
R6kAni+fQwO5I/bBA5JVSo+BUTL2U79G
=bfCv
-----END PGP SIGNATURE-----