summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicholas Piper <nicholas@users.sourceforge.net>2005-11-26 14:23:29 +0000
committerNicholas Piper <nicholas@users.sourceforge.net>2005-11-26 14:23:29 +0000
commit3c462c99bda5e8e6b9b756cadf13ece68c765a48 (patch)
tree81716b7dd3b518df5c0ec0ca5e309698ba0e9b03
parent999142da89879afff0f36244aaff7815c20e3d43 (diff)
downloadlibgpod-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-xbindings/python/examples/play.py10
-rw-r--r--bindings/python/gpod.i15
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"