1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-06 14:16:32 +02:00

* Implemented new ViewPage API for various classes.

This commit is contained in:
Christian Muehlhaeuser
2012-07-03 02:47:46 +02:00
parent f5512d7b95
commit 752c1b38a0
8 changed files with 45 additions and 4 deletions

View File

@@ -235,3 +235,16 @@ FlexibleView::jumpToCurrentTrack()
m_gridView->jumpToCurrentTrack(); m_gridView->jumpToCurrentTrack();
return true; return true;
} }
bool
FlexibleView::setFilter( const QString& filter )
{
ViewPage::setFilter( filter );
m_trackView->setFilter( filter );
m_detailedView->setFilter( filter );
m_gridView->setFilter( filter );
return true;
}

View File

@@ -53,6 +53,7 @@ public:
// virtual void setShowModes( bool b ) { m_showModes = b; } // virtual void setShowModes( bool b ) { m_showModes = b; }
virtual bool showModes() const { return false; } virtual bool showModes() const { return false; }
virtual bool setFilter( const QString& filter );
virtual bool jumpToCurrentTrack(); virtual bool jumpToCurrentTrack();
void setTrackView( TrackView* view ); void setTrackView( TrackView* view );

View File

@@ -347,3 +347,11 @@ GridView::onCustomContextMenu( const QPoint& pos )
m_contextMenu->exec( viewport()->mapToGlobal( pos ) ); m_contextMenu->exec( viewport()->mapToGlobal( pos ) );
} }
bool
GridView::setFilter( const QString& filter )
{
ViewPage::setFilter( filter );
m_proxyModel->setFilter( filter );
}

View File

@@ -71,6 +71,7 @@ public:
virtual bool showModes() const { return true; } virtual bool showModes() const { return true; }
virtual bool setFilter( const QString& filter );
virtual bool jumpToCurrentTrack() { return false; } virtual bool jumpToCurrentTrack() { return false; }
public slots: public slots:

View File

@@ -503,9 +503,9 @@ TrackView::onFilterChanged( const QString& )
if ( selectedIndexes().count() ) if ( selectedIndexes().count() )
scrollTo( selectedIndexes().at( 0 ), QAbstractItemView::PositionAtCenter ); scrollTo( selectedIndexes().at( 0 ), QAbstractItemView::PositionAtCenter );
if ( !proxyModel()->playlistInterface()->filter().isEmpty() && !proxyModel()->playlistInterface()->trackCount() && model()->trackCount() ) if ( !filter().isEmpty() && !proxyModel()->playlistInterface()->trackCount() && model()->trackCount() )
{ {
m_overlay->setText( tr( "Sorry, your filter '%1' did not match any results." ).arg( proxyModel()->playlistInterface()->filter() ) ); m_overlay->setText( tr( "Sorry, your filter '%1' did not match any results." ).arg( filter() ) );
m_overlay->show(); m_overlay->show();
} }
else else
@@ -743,3 +743,11 @@ TrackView::jumpToCurrentTrack()
scrollTo( proxyModel()->currentIndex(), QAbstractItemView::PositionAtCenter ); scrollTo( proxyModel()->currentIndex(), QAbstractItemView::PositionAtCenter );
return true; return true;
} }
bool
TrackView::setFilter( const QString& filter )
{
ViewPage::setFilter( filter );
m_proxyModel->setFilter( filter );
}

View File

@@ -72,6 +72,7 @@ public:
virtual bool showModes() const { return true; } virtual bool showModes() const { return true; }
virtual bool showFilter() const { return true; } virtual bool showFilter() const { return true; }
virtual bool setFilter( const QString& filter );
virtual bool jumpToCurrentTrack(); virtual bool jumpToCurrentTrack();
QModelIndex hoveredIndex() const { return m_hoveredIndex; } QModelIndex hoveredIndex() const { return m_hoveredIndex; }

View File

@@ -293,9 +293,9 @@ TreeView::onFilterChangeFinished()
if ( selectedIndexes().count() ) if ( selectedIndexes().count() )
scrollTo( selectedIndexes().at( 0 ), QAbstractItemView::PositionAtCenter ); scrollTo( selectedIndexes().at( 0 ), QAbstractItemView::PositionAtCenter );
if ( !proxyModel()->playlistInterface()->filter().isEmpty() && !proxyModel()->playlistInterface()->trackCount() && model()->trackCount() ) if ( !filter().isEmpty() && !proxyModel()->playlistInterface()->trackCount() && model()->trackCount() )
{ {
m_overlay->setText( tr( "Sorry, your filter '%1' did not match any results." ).arg( proxyModel()->playlistInterface()->filter() ) ); m_overlay->setText( tr( "Sorry, your filter '%1' did not match any results." ).arg( filter() ) );
m_overlay->show(); m_overlay->show();
} }
else else
@@ -529,3 +529,11 @@ TreeView::guid() const
return m_guid; return m_guid;
} }
bool
TreeView::setFilter( const QString& filter )
{
ViewPage::setFilter( filter );
m_proxyModel->setFilter( filter );
}

View File

@@ -76,6 +76,7 @@ public:
virtual void setShowModes( bool b ) { m_showModes = b; } virtual void setShowModes( bool b ) { m_showModes = b; }
virtual bool showModes() const { return m_showModes; } virtual bool showModes() const { return m_showModes; }
virtual bool setFilter( const QString& filter );
virtual bool jumpToCurrentTrack(); virtual bool jumpToCurrentTrack();
QModelIndex hoveredIndex() const { return m_hoveredIndex; } QModelIndex hoveredIndex() const { return m_hoveredIndex; }