vlc | branch: master | Edward Wang <[email protected]> | Mon Jan 2 14:02:56 2012 +0100| [4b21b04e9fde44100c61c259ce8282a504aaa748] | committer: Jean-Baptiste Kempf
Qt: Move the clear playlist button to the context menu Modified-by: Jean-Baptiste Kempf <[email protected]> Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4b21b04e9fde44100c61c259ce8282a504aaa748 --- modules/gui/qt4/components/playlist/playlist.cpp | 18 +----------------- .../gui/qt4/components/playlist/playlist_model.cpp | 17 +++++++++++++++++ .../gui/qt4/components/playlist/playlist_model.hpp | 2 +- 3 files changed, 19 insertions(+), 18 deletions(-) diff --git a/modules/gui/qt4/components/playlist/playlist.cpp b/modules/gui/qt4/components/playlist/playlist.cpp index 32b0ea9..7d04d12 100644 --- a/modules/gui/qt4/components/playlist/playlist.cpp +++ b/modules/gui/qt4/components/playlist/playlist.cpp @@ -112,13 +112,6 @@ PlaylistWidget::PlaylistWidget( intf_thread_t *_p_i, QWidget *_par ) layout->addLayout( topbarLayout, 0, 1 ); topbarLayout->setSpacing( 10 ); - /* Button to clear playlist */ - QToolButton *clearPlaylistButton = new QToolButton( this ); - clearPlaylistButton->setIcon( style()->standardIcon( QStyle::SP_TrashIcon ) ); - clearPlaylistButton->setToolTip( qtr("Clear playlist") ); - topbarLayout->addWidget( clearPlaylistButton ); - CONNECT( clearPlaylistButton, clicked(), this, clearPlaylist() ); - /* Button to switch views */ QToolButton *viewButton = new QToolButton( this ); viewButton->setIcon( style()->standardIcon( QStyle::SP_FileDialogDetailedView ) ); @@ -262,16 +255,7 @@ void PlaylistWidget::changeView( const QModelIndex& index ) void PlaylistWidget::clearPlaylist() { - PLModel *model = PLModel::getPLModel( p_intf ); - if( model->rowCount() < 1 ) return; - - QModelIndexList* l = new QModelIndexList(); - for( int i = 0; i < model->rowCount(); i++) - { - QModelIndex indexrecord = model->index( i, 0, QModelIndex() ); - l->append( indexrecord ); - } - model->doDelete(*l); + PLModel::getPLModel( p_intf )->clearPlaylist(); } #include <QSignalMapper> #include <QMenu> diff --git a/modules/gui/qt4/components/playlist/playlist_model.cpp b/modules/gui/qt4/components/playlist/playlist_model.cpp index 8b3e089..4e69d3c 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.cpp +++ b/modules/gui/qt4/components/playlist/playlist_model.cpp @@ -888,6 +888,19 @@ void PLModel::search( const QString& search_text, const QModelIndex & idx, bool rebuild(); } +void PLModel::clearPlaylist() +{ + if( rowCount() < 1 ) return; + + QModelIndexList l; + for( int i = 0; i < rowCount(); i++) + { + QModelIndex indexrecord = index( i, 0, QModelIndex() ); + l.append( indexrecord ); + } + doDelete(l); +} + /*********** Popup *********/ bool PLModel::popup( const QModelIndex & index, const QPoint &point, const QModelIndexList &list ) { @@ -964,6 +977,10 @@ bool PLModel::popup( const QModelIndex & index, const QPoint &point, const QMode } menu.addSeparator(); + + menu.addAction( QIcon( ":/toolbar/clear" ), qtr("Clear playlist"), + this, SLOT( clearPlaylist() ) ); + /* Playlist sorting */ if( !sortingMenu ) { diff --git a/modules/gui/qt4/components/playlist/playlist_model.hpp b/modules/gui/qt4/components/playlist/playlist_model.hpp index 6c66c7e..ea3bfb2 100644 --- a/modules/gui/qt4/components/playlist/playlist_model.hpp +++ b/modules/gui/qt4/components/playlist/playlist_model.hpp @@ -120,7 +120,7 @@ signals: public slots: virtual void activateItem( const QModelIndex &index ); - + void clearPlaylist(); private: /* General */ PLItem *rootItem; _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
