mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-03-24 09:49:42 +01:00
* Extended PlaylistInterface with posOfResult/Query.
This commit is contained in:
parent
3ecbab3c63
commit
adb185f0cb
src/libtomahawk
@ -79,6 +79,42 @@ PlaylistInterface::siblingResult( int itemsAway ) const
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
PlaylistInterface::posOfResult( const Tomahawk::result_ptr& result ) const
|
||||
{
|
||||
const QList< Tomahawk::query_ptr > queries = tracks();
|
||||
|
||||
int res = 0;
|
||||
foreach ( const Tomahawk::query_ptr& query, queries )
|
||||
{
|
||||
if ( query && query->numResults() && query->results().contains( result ) )
|
||||
return res;
|
||||
|
||||
res++;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
PlaylistInterface::posOfQuery( const Tomahawk::query_ptr& query ) const
|
||||
{
|
||||
const QList< Tomahawk::query_ptr > queries = tracks();
|
||||
|
||||
int res = 0;
|
||||
foreach ( const Tomahawk::query_ptr& q, queries )
|
||||
{
|
||||
if ( query == q )
|
||||
return res;
|
||||
|
||||
res++;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
QList<Tomahawk::query_ptr>
|
||||
PlaylistInterface::filterTracks( const QList<Tomahawk::query_ptr>& queries )
|
||||
{
|
||||
|
@ -38,9 +38,9 @@ public:
|
||||
explicit PlaylistInterface();
|
||||
virtual ~PlaylistInterface();
|
||||
|
||||
const QString id() { return m_id; }
|
||||
const QString id() const { return m_id; }
|
||||
|
||||
virtual QList< Tomahawk::query_ptr > tracks() = 0;
|
||||
virtual QList< Tomahawk::query_ptr > tracks() const = 0;
|
||||
virtual bool isFinished() const { return m_finished; }
|
||||
|
||||
virtual int trackCount() const = 0;
|
||||
@ -53,7 +53,7 @@ public:
|
||||
virtual Tomahawk::result_ptr nextResult() const;
|
||||
virtual Tomahawk::result_ptr previousResult() const;
|
||||
|
||||
virtual qint64 siblingIndex( int itemsAway ) const = 0;
|
||||
virtual qint64 siblingIndex( int itemsAway, qint64 rootIndex = -1 ) const = 0;
|
||||
virtual Tomahawk::result_ptr siblingResult( int itemsAway ) const;
|
||||
|
||||
virtual Tomahawk::result_ptr resultAt( qint64 index ) const = 0;
|
||||
@ -61,6 +61,9 @@ public:
|
||||
virtual qint64 indexOfResult( const Tomahawk::result_ptr& result ) const = 0;
|
||||
virtual qint64 indexOfQuery( const Tomahawk::query_ptr& query ) const = 0;
|
||||
|
||||
virtual int posOfResult( const Tomahawk::result_ptr& result ) const;
|
||||
virtual int posOfQuery( const Tomahawk::query_ptr& query ) const;
|
||||
|
||||
virtual PlaylistModes::RepeatMode repeatMode() const = 0;
|
||||
virtual bool shuffled() const = 0;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user