]> git.sesse.net Git - vlc/blobdiff - modules/gui/skins2/commands/cmd_add_item.cpp
skins2: use new input-item variable for callbacks on input variables and some cleanup
[vlc] / modules / gui / skins2 / commands / cmd_add_item.cpp
index 632c468b0b9112ced1d32ea10e294c60bb5ffeb3..90ceb5ff25053115894139f247bfcb8296929790 100644 (file)
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
-#include <vlc/vlc.h>
-#include "cmd_add_item.hpp"
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
 
+#include <vlc_common.h>
+#include <vlc_playlist.h>
+#include <vlc_url.h>
+#include "cmd_add_item.hpp"
 
 void CmdAddItem::execute()
 {
     playlist_t *pPlaylist = getIntf()->p_sys->p_playlist;
-    if( pPlaylist == NULL )
-    {
+    if( !pPlaylist )
+        return;
+
+    char* psz_uri = make_URI(  m_name.c_str() );
+    if( !psz_uri )
         return;
-    }
 
     if( m_playNow )
     {
         // Enqueue and play the item
-        playlist_Add( pPlaylist, m_name.c_str(), NULL,
-                      PLAYLIST_APPEND | PLAYLIST_GO, PLAYLIST_END, VLC_TRUE );
+        playlist_Add( pPlaylist, psz_uri, NULL,
+                      PLAYLIST_APPEND | PLAYLIST_GO, PLAYLIST_END, true,
+                      false );
     }
     else
     {
         // Enqueue the item only
-        playlist_Add( pPlaylist, m_name.c_str(), NULL,
-                      PLAYLIST_APPEND, PLAYLIST_END, VLC_TRUE );
+        playlist_Add( pPlaylist, psz_uri, NULL,
+                      PLAYLIST_APPEND, PLAYLIST_END, true, false );
     }
+    free( psz_uri );
 }