Browse Source

lua: add playlist.list()

The old playlist was a tree, while the new one is a list.

Expose the list of items.

Signed-off-by: Thomas Guillem <thomas@gllm.fr>
pull/89/head
Romain Vimont 8 years ago
committed by Thomas Guillem
parent
commit
849001b69f
  1. 21
      modules/lua/libs/playlist.c

21
modules/lua/libs/playlist.c

@ -389,6 +389,26 @@ static int vlclua_playlist_get(lua_State *L)
return 1;
}
static int vlclua_playlist_list(lua_State *L)
{
vlc_playlist_t *playlist = vlclua_get_playlist_internal(L);
vlc_playlist_Lock(playlist);
size_t count = vlc_playlist_Count(playlist);
lua_createtable(L, count, 0);
for (size_t i = 0; i < count; ++i)
{
push_playlist_item(L, vlc_playlist_Get(playlist, i));
lua_rawseti(L, -2, i + 1);
}
vlc_playlist_Unlock(playlist);
return 1;
}
static int vlclua_playlist_current(lua_State *L)
{
vlc_playlist_t *playlist = vlclua_get_playlist_internal(L);
@ -534,6 +554,7 @@ static const luaL_Reg vlclua_playlist_reg[] = {
{ "add", vlclua_playlist_add },
{ "enqueue", vlclua_playlist_enqueue },
{ "get", vlclua_playlist_get },
{ "list", vlclua_playlist_list },
{ "current", vlclua_playlist_current },
{ "current_item", vlclua_playlist_current_item },
{ "sort", vlclua_playlist_sort },

Loading…
Cancel
Save