X-Git-Url: https://develop.uap-core.de/gitweb/uwplayer.git/blobdiff_plain/83d9f3aaf8206aa081ead0ff630a1c33ed670d71..848befbcc166fff6fdde6a635cf7a31f9f9185e0:/application/playlist.c?ds=sidebyside diff --git a/application/playlist.c b/application/playlist.c index 1b31180..eb9dfc0 100644 --- a/application/playlist.c +++ b/application/playlist.c @@ -27,19 +27,22 @@ #include "player.h" #include "utils.h" +#include + void PlayListInit(MainWindow *win) { + win->playlist.tracks = cxArrayListCreate(cxDefaultAllocator, NULL, CX_STORE_POINTERS, 64); win->playlist.current_track = -1; } void PlayListAddFile(MainWindow *win, const char *file) { char *f = strdup(file); - win->playlist.tracks = ucx_list_append(win->playlist.tracks, f); + cxListAdd(win->playlist.tracks, f); } void PlayListPlayNext(MainWindow *win, bool force) { - UcxList *tracks = win->playlist.tracks; + CxList *tracks = win->playlist.tracks; if(!tracks) return; - size_t len = ucx_list_size(tracks); + size_t len = tracks->size; int current = win->playlist.current_track; if(win->playlist.repeatTrack) { @@ -52,7 +55,7 @@ void PlayListPlayNext(MainWindow *win, bool force) { current++; } else if(win->playlist.autoplayFolder) { char *next_file = util_find_next_file(win->file); - win->playlist.tracks = ucx_list_append(win->playlist.tracks, next_file); + cxListAdd(win->playlist.tracks, next_file); current = len; } else { current = 0; @@ -62,12 +65,12 @@ void PlayListPlayNext(MainWindow *win, bool force) { } void PlayListPlayTrack(MainWindow *win, int i) { - UcxList *tracks = win->playlist.tracks; - if(i < ucx_list_size(tracks)) { - win->playlist.current_track = i; - UcxList *fileElm = ucx_list_get(tracks, i); - if(fileElm) { - win->file = fileElm->data; + CxList *tracks = win->playlist.tracks; + if(i < tracks->size) { + char *file = cxListAt(tracks, i); + if(file) { + win->playlist.current_track = i; + win->file = file; PlayerOpenFile(win); win->playlist.current_track = i; }