diff --git a/modules/gui/skins2/commands/cmd_playtree.cpp b/modules/gui/skins2/commands/cmd_playtree.cpp index f908f95267a3a51d5efdc1d0e8ee7316d3107cca..e74c12df272538fb9de77bb33f9ca94d3b2686ae 100644 --- a/modules/gui/skins2/commands/cmd_playtree.cpp +++ b/modules/gui/skins2/commands/cmd_playtree.cpp @@ -34,38 +34,3 @@ void CmdPlaytreeSort::execute() { // TODO } - -void CmdPlaytreeNext::execute() -{ - // TODO -} - -void CmdPlaytreePrevious::execute() -{ - // TODO -} - -void CmdPlaytreeRandom::execute() -{ - // TODO -} - -void CmdPlaytreeLoop::execute() -{ - // TODO -} - -void CmdPlaytreeRepeat::execute() -{ - // TODO -} - -void CmdPlaytreeLoad::execute() -{ - // TODO -} - -void CmdPlaytreeSave::execute() -{ - // TODO -} diff --git a/modules/gui/skins2/commands/cmd_playtree.hpp b/modules/gui/skins2/commands/cmd_playtree.hpp index ff9e796d85be2a0a0c319e13bb420c3fc7be89e7..21fe55074fd67553ccc06a0d0dd7458a6e9de415 100644 --- a/modules/gui/skins2/commands/cmd_playtree.hpp +++ b/modules/gui/skins2/commands/cmd_playtree.hpp @@ -51,105 +51,4 @@ class CmdPlaytreeDel: public CmdGeneric /// Command to sort the playtree DEFINE_COMMAND( PlaytreeSort, "playtree sort" ) -/// Command to jump to the next item -DEFINE_COMMAND( PlaytreeNext, "playtree next" ) - -/// Command to jump to the previous item -DEFINE_COMMAND( PlaytreePrevious, "playtree previous" ) - -/// Command to set the random state -class CmdPlaytreeRandom: public CmdGeneric -{ - public: - CmdPlaytreeRandom( intf_thread_t *pIntf, bool value ): - CmdGeneric( pIntf ), m_value( value ) {} - virtual ~CmdPlaytreeRandom() {} - - /// This method does the real job of the command - virtual void execute(); - - /// Return the type of the command - virtual string getType() const { return "playtree random"; } - - private: - /// Random state - bool m_value; -}; - -/// Command to set the loop state -class CmdPlaytreeLoop: public CmdGeneric -{ - public: - CmdPlaytreeLoop( intf_thread_t *pIntf, bool value ): - CmdGeneric( pIntf ), m_value( value ) {} - virtual ~CmdPlaytreeLoop() {} - - /// This method does the real job of the command - virtual void execute(); - - /// Return the type of the command - virtual string getType() const { return "playtree loop"; } - - private: - /// Loop state - bool m_value; -}; - -/// Command to set the repeat state -class CmdPlaytreeRepeat: public CmdGeneric -{ - public: - CmdPlaytreeRepeat( intf_thread_t *pIntf, bool value ): - CmdGeneric( pIntf ), m_value( value ) {} - virtual ~CmdPlaytreeRepeat() {} - - /// This method does the real job of the command - virtual void execute(); - - /// Return the type of the command - virtual string getType() const { return "playtree repeat"; } - - private: - /// Loop state - bool m_value; -}; - -/// Command to load a playlist -class CmdPlaytreeLoad: public CmdGeneric -{ - public: - CmdPlaytreeLoad( intf_thread_t *pIntf, bool value ): - CmdGeneric( pIntf ), m_value( value ) {} - virtual ~CmdPlaytreeLoad() {} - - /// This method does the real job of the command - virtual void execute(); - - /// Return the type of the command - virtual string getType() const { return "playtree load"; } - - private: - /// Loop state - bool m_value; -}; - -/// Command to save a playlist -class CmdPlaytreeSave: public CmdGeneric -{ - public: - CmdPlaytreeSave( intf_thread_t *pIntf, bool value ): - CmdGeneric( pIntf ), m_value( value ) {} - virtual ~CmdPlaytreeSave() {} - - /// This method does the real job of the command - virtual void execute(); - - /// Return the type of the command - virtual string getType() const { return "playtree save"; } - - private: - /// Loop state - bool m_value; -}; - #endif diff --git a/modules/gui/skins2/parser/interpreter.cpp b/modules/gui/skins2/parser/interpreter.cpp index f3613aadd8f0ba449575fd6ec3a0ca12103eb892..3b4c6c47646ead028c0162aaeffd7032e62d5d66 100644 --- a/modules/gui/skins2/parser/interpreter.cpp +++ b/modules/gui/skins2/parser/interpreter.cpp @@ -81,27 +81,10 @@ Interpreter::Interpreter( intf_thread_t *pIntf ): SkinObject( pIntf ) CmdGenericPtr( new CmdPlaylistRepeat( getIntf(), true ) ); m_commandMap["playlist.setRepeat(false)"] = CmdGenericPtr( new CmdPlaylistRepeat( getIntf(), false ) ); - REGISTER_CMD( "playtree.load()", CmdDlgPlaytreeLoad ) - REGISTER_CMD( "playtree.save()", CmdDlgPlaytreeSave ) - REGISTER_CMD( "playtree.add()", CmdDlgAdd ) VarTree &rVarTree = VlcProc::instance( getIntf() )->getPlaytreeVar(); m_commandMap["playtree.del()"] = CmdGenericPtr( new CmdPlaytreeDel( getIntf(), rVarTree ) ); - REGISTER_CMD( "playtree.next()", CmdPlaytreeNext ) - REGISTER_CMD( "playtree.previous()", CmdPlaytreePrevious ) REGISTER_CMD( "playtree.sort()", CmdPlaytreeSort ) - m_commandMap["playtree.setRandom(true)"] = - CmdGenericPtr( new CmdPlaytreeRandom( getIntf(), true ) ); - m_commandMap["playtree.setRandom(false)"] = - CmdGenericPtr( new CmdPlaytreeRandom( getIntf(), false ) ); - m_commandMap["playtree.setLoop(true)"] = - CmdGenericPtr( new CmdPlaytreeLoop( getIntf(), true ) ); - m_commandMap["playtree.setLoop(false)"] = - CmdGenericPtr( new CmdPlaytreeLoop( getIntf(), false ) ); - m_commandMap["playtree.setRepeat(true)"] = - CmdGenericPtr( new CmdPlaytreeRepeat( getIntf(), true ) ); - m_commandMap["playtree.setRepeat(false)"] = - CmdGenericPtr( new CmdPlaytreeRepeat( getIntf(), false ) ); REGISTER_CMD( "vlc.fullscreen()", CmdFullscreen ) REGISTER_CMD( "vlc.play()", CmdPlay ) REGISTER_CMD( "vlc.pause()", CmdPause ) diff --git a/modules/gui/skins2/vars/playtree.cpp b/modules/gui/skins2/vars/playtree.cpp index cd5430016f62e00740d975479f7df88b975dd9d4..a001cf47aba2ce60edd89456794d9453832a22bc 100644 --- a/modules/gui/skins2/vars/playtree.cpp +++ b/modules/gui/skins2/vars/playtree.cpp @@ -57,7 +57,26 @@ Playtree::~Playtree() void Playtree::delSelected() { - // TODO + Iterator it; + for (it = begin(); it != end() ; it++ ) + { + if( (*it).m_selected ) + { + playlist_item_t *p_item = (playlist_item_t *)(it->m_pData); + if( p_item->i_children == -1 ) + { + playlist_LockDelete( getIntf()->p_sys->p_playlist, + p_item->input.i_id ); + } + else + { + vlc_mutex_lock( &getIntf()->p_sys->p_playlist->object_lock ); + playlist_NodeDelete( getIntf()->p_sys->p_playlist, p_item, + VLC_TRUE, VLC_FALSE ); + vlc_mutex_unlock( &getIntf()->p_sys->p_playlist->object_lock ); + } + } + } notify(); }