[vlc-devel] commit: Qt iconView: initial attempt at item browsing/playing (Jakob Leben )
git version control
git at videolan.org
Mon Jan 25 16:52:07 CET 2010
vlc | branch: master | Jakob Leben <jleben at videolan.org> | Mon Jan 25 16:49:55 2010 +0100| [91d00d909f5ab02b1ffc6073500667cfb6679b7d] | committer: Jakob Leben
Qt iconView: initial attempt at item browsing/playing
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=91d00d909f5ab02b1ffc6073500667cfb6679b7d
---
modules/gui/qt4/components/playlist/icon_view.cpp | 14 ++++++++++++++
modules/gui/qt4/components/playlist/icon_view.hpp | 2 ++
2 files changed, 16 insertions(+), 0 deletions(-)
diff --git a/modules/gui/qt4/components/playlist/icon_view.cpp b/modules/gui/qt4/components/playlist/icon_view.cpp
index b55aee1..b3101e9 100644
--- a/modules/gui/qt4/components/playlist/icon_view.cpp
+++ b/modules/gui/qt4/components/playlist/icon_view.cpp
@@ -103,4 +103,18 @@ PlIconView::PlIconView( PLModel *model, QWidget *parent ) : QListView( parent )
PlListViewItemDelegate *pl = new PlListViewItemDelegate();
setItemDelegate( pl );
+
+ CONNECT( this, activated( const QModelIndex & ), this, activate( const QModelIndex & ) );
+}
+
+void PlIconView::activate( const QModelIndex & index )
+{
+ if( model()->hasChildren( index ) )
+ setRootIndex( index );
+ else
+ {
+ PLModel *plModel = qobject_cast<PLModel*>( model() );
+ if( !plModel ) return;
+ plModel->activateItem( index );
+ }
}
diff --git a/modules/gui/qt4/components/playlist/icon_view.hpp b/modules/gui/qt4/components/playlist/icon_view.hpp
index 1d73384..9819eb0 100644
--- a/modules/gui/qt4/components/playlist/icon_view.hpp
+++ b/modules/gui/qt4/components/playlist/icon_view.hpp
@@ -47,6 +47,8 @@ class PlIconView : public QListView
public:
PlIconView( PLModel *model, QWidget *parent = 0 );
+public slots:
+ void activate( const QModelIndex & index );
};
#endif
More information about the vlc-devel
mailing list