]> git.sesse.net Git - vlc/commitdiff
Add "enqueue" command. Original patch by Greg Farell
authorAntoine Cellerier <dionoea@videolan.org>
Thu, 10 Aug 2006 19:21:25 +0000 (19:21 +0000)
committerAntoine Cellerier <dionoea@videolan.org>
Thu, 10 Aug 2006 19:21:25 +0000 (19:21 +0000)
THANKS
modules/control/rc.c

diff --git a/THANKS b/THANKS
index 95b0770686dd14b8fd9c4c8b5f06126ce3aa77c9..758c3ae30d681a98371a7f1560ee1019d238fdb5 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -61,6 +61,7 @@ Eurodata Computer Club <retron.info> - VLC icon design (v0.8.4)
 François Seingier <francois.seingier at club-internet.fr> - TTL setting in the wx stream output dialog
 Frank Chao <frank0624 at gmail.com> - Chinese Traditional translation
 Fumio Nakayama <endymion at ca2.so-net.ne.jp> - Japanese translation
+Greg Farrell <greg at gregfarell dot org> - rc interface "enqueue" command
 Gregory Hazel <ghazel at gmail dot com> - wxWidgets fixes and improvements
 Goetz Waschk <waschk at informatik.uni-rostock dot de> - Mandrake packages
 Haakon Meland Eriksen - Norwegian translation
index 200ad4957948a5f62dabc985ae10827de173d86e..487ba17c23f6c8ab63a49b56fbff56de86dc974c 100644 (file)
@@ -358,6 +358,8 @@ static void RegisterCallbacks( intf_thread_t *p_intf )
 
     var_Create( p_intf, "add", VLC_VAR_STRING | VLC_VAR_ISCOMMAND );
     var_AddCallback( p_intf, "add", Playlist, NULL );
+    var_Create( p_intf, "enqueue", VLC_VAR_STRING | VLC_VAR_ISCOMMAND );
+    var_AddCallback( p_intf, "enqueue", Playlist, NULL );
     var_Create( p_intf, "playlist", VLC_VAR_VOID | VLC_VAR_ISCOMMAND );
     var_AddCallback( p_intf, "playlist", Playlist, NULL );
     var_Create( p_intf, "sort", VLC_VAR_VOID | VLC_VAR_ISCOMMAND );
@@ -872,6 +874,7 @@ static void Help( intf_thread_t *p_intf, vlc_bool_t b_longhelp)
     msg_rc(_("+----[ Remote control commands ]"));
     msg_rc(  "| ");
     msg_rc(_("| add XYZ  . . . . . . . . . . add XYZ to playlist"));
+    msg_rc(_("| enqueue XYZ  . . . . . . . queue XYZ to playlist"));
     msg_rc(_("| playlist . . .  show items currently in playlist"));
     msg_rc(_("| play . . . . . . . . . . . . . . . . play stream"));
     msg_rc(_("| stop . . . . . . . . . . . . . . . . stop stream"));
@@ -1280,6 +1283,18 @@ static int Playlist( vlc_object_t *p_this, char const *psz_cmd,
                               PLAYLIST_GO|PLAYLIST_APPEND, PLAYLIST_END );
         }
     }
+    else if( !strcmp( psz_cmd, "enqueue" ) &&
+             newval.psz_string && *newval.psz_string )
+    {
+        playlist_item_t *p_item = parse_MRL( p_intf, newval.psz_string );
+
+        if( p_item )
+        {
+            msg_rc( "trying to enqueue %s to playlist", newval.psz_string );
+            playlist_PlaylistAddInput( p_playlist, p_item,
+                              PLAYLIST_APPEND, PLAYLIST_END );
+        }
+    }
     else if( !strcmp( psz_cmd, "playlist" ) )
     {
         msg_Dbg( p_playlist, "Dumping category" );