diff options
author | Nicholas Piper <nicholas@users.sourceforge.net> | 2005-11-26 14:23:29 +0000 |
---|---|---|
committer | Nicholas Piper <nicholas@users.sourceforge.net> | 2005-11-26 14:23:29 +0000 |
commit | 3c462c99bda5e8e6b9b756cadf13ece68c765a48 (patch) | |
tree | 81716b7dd3b518df5c0ec0ca5e309698ba0e9b03 | |
parent | 999142da89879afff0f36244aaff7815c20e3d43 (diff) | |
download | libgpod-3c462c99bda5e8e6b9b756cadf13ece68c765a48.tar.gz libgpod-3c462c99bda5e8e6b9b756cadf13ece68c765a48.tar.xz libgpod-3c462c99bda5e8e6b9b756cadf13ece68c765a48.zip |
Add sw_get_playlist_tracks() and define G_BEGIN_DECLS/G_END_DECLS for swig
git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1174 f01d2545-417e-4e96-918e-98f8d0dbbcb6
-rwxr-xr-x | bindings/python/examples/play.py | 10 | ||||
-rw-r--r-- | bindings/python/gpod.i | 15 |
2 files changed, 23 insertions, 2 deletions
diff --git a/bindings/python/examples/play.py b/bindings/python/examples/play.py index 6ad6f60..0d299f8 100755 --- a/bindings/python/examples/play.py +++ b/bindings/python/examples/play.py @@ -8,8 +8,9 @@ ipod_mount = '/mnt/ipod' remove_track = "The Dancer" -#dbname = os.path.join(os.environ['HOME'],".gtkpod/iTunesDB") -dbname = os.path.join(ipod_mount,"iPod_Control/iTunes/iTunesDB") +dbname = os.path.join(os.environ['HOME'],".gtkpod/iTunesDB") +#dbname = os.path.join(os.environ['HOME'],".gtkpod/local_0.itdb") +#dbname = os.path.join(ipod_mount,"iPod_Control/iTunes/iTunesDB") itdb = gpod.itdb_parse_file(dbname, None) if not itdb: @@ -17,6 +18,11 @@ if not itdb: sys.exit(2) itdb.mountpoint = ipod_mount +for playlist in gpod.sw_get_playlists(itdb): + print playlist.name + print gpod.itdb_playlist_tracks_number(playlist) + for track in gpod.sw_get_playlist_tracks(playlist): + print track.title for track in gpod.sw_get_tracks(itdb): lists = [] diff --git a/bindings/python/gpod.i b/bindings/python/gpod.i index 610a288..a516916 100644 --- a/bindings/python/gpod.i +++ b/bindings/python/gpod.i @@ -20,6 +20,17 @@ PyObject* sw_get_tracks(Itdb_iTunesDB *itdb) { return list; } +PyObject* sw_get_playlist_tracks(Itdb_Playlist *pl) { + PyObject *list; + gint i; + GList *l; + list = PyList_New(g_list_length(pl->members)); + for (l = pl->members, i = 0; l; l = l->next, ++i) { + PyList_SET_ITEM(list, i, SWIG_NewPointerObj((void*)(l->data), SWIGTYPE_p_Itdb_Track, 0)); + } + return list; + } + PyObject* sw_get_playlists(Itdb_iTunesDB *itdb) { PyObject *list; gint i; @@ -37,6 +48,10 @@ typedef int gboolean; typedef int gint32; typedef unsigned int guint32; +#define G_BEGIN_DECLS +#define G_END_DECLS + PyObject* sw_get_tracks(Itdb_iTunesDB *itdb); PyObject* sw_get_playlists(Itdb_iTunesDB *itdb); +PyObject* sw_get_playlist_tracks(Itdb_Playlist *pl); %include "../../src/itdb.h" |