]> git.sesse.net Git - vlc/commitdiff
Qt: track the currentView and simplify the code
authorJean-Baptiste Kempf <jb@videolan.org>
Tue, 26 Jan 2010 00:23:38 +0000 (01:23 +0100)
committerJean-Baptiste Kempf <jb@videolan.org>
Tue, 26 Jan 2010 00:24:58 +0000 (01:24 +0100)
modules/gui/qt4/components/playlist/standardpanel.cpp
modules/gui/qt4/components/playlist/standardpanel.hpp

index ae4d309a491d73754a6685a0ff2db561763cf688..4da7e87e516a1f27af3f5f6afc1efe42ca3f0a24 100644 (file)
@@ -175,14 +175,9 @@ void StandardPLPanel::popupSelectColumn( QPoint pos )
 
 void StandardPLPanel::popupPlView( const QPoint &point )
 {
-    QAbstractItemView *aView;
-    if ( treeView && treeView->isVisible() ) aView = treeView;
-    else if( iconView && iconView->isVisible() ) aView = iconView;
-    else return;
-
-    QModelIndex index = aView->indexAt( point );
-    QPoint globalPoint = aView->viewport()->mapToGlobal( point );
-    QItemSelectionModel *selection = aView->selectionModel();
+    QModelIndex index = currentView->indexAt( point );
+    QPoint globalPoint = currentView->viewport()->mapToGlobal( point );
+    QItemSelectionModel *selection = currentView->selectionModel();
     QModelIndexList list = selection->selectedIndexes();
     model->popup( index, globalPoint, list );
 }
@@ -258,9 +253,7 @@ void StandardPLPanel::keyPressEvent( QKeyEvent *e )
 
 void StandardPLPanel::deleteSelection()
 {
-    //FIXME
-    if( !treeView ) return;
-    QItemSelectionModel *selection = treeView->selectionModel();
+    QItemSelectionModel *selection = currentView->selectionModel();
     QModelIndexList list = selection->selectedIndexes();
     model->doDelete( list );
 }
@@ -307,7 +300,7 @@ void StandardPLPanel::createTreeView()
     {
         for( int m = 1, c = 0; m != COLUMN_END; m <<= 1, c++ )
         {
-            treeView->setClumnHidden( c, !( m & COLUMN_DEFAULT ) );
+            treeView->setColumnHidden( c, !( m & COLUMN_DEFAULT ) );
             if( m == COLUMN_TITLE ) treeView->header()->resizeSection( c, 200 );
             else if( m == COLUMN_DURATION ) treeView->header()->resizeSection( c, 80 );
         }
@@ -341,11 +334,16 @@ void StandardPLPanel::toggleView()
 
         treeView->hide();
         iconView->show();
+        currentView = iconView;
     }
     else
     {
+        if( treeView == NULL )
+            createTreeView();
+
         iconView->hide();
         treeView->show();
+        currentView = treeView;
     }
 }
 
index 715583aeb9b0c139a9eb130725ba859fbc387aa3..0da499eb57365d6ad9544be03b29c969e44ef8e5 100644 (file)
@@ -71,6 +71,7 @@ private:
 
     QTreeView   *treeView;
     PlIconView  *iconView;
+    QAbstractItemView *currentView;
 
     int currentRootId;
     QSignalMapper *selectColumnsSigMapper;