mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-05 05:37:29 +02:00
* Extended PlaylistInterface with posOfResult/Query.
This commit is contained in:
@@ -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>
|
QList<Tomahawk::query_ptr>
|
||||||
PlaylistInterface::filterTracks( const QList<Tomahawk::query_ptr>& queries )
|
PlaylistInterface::filterTracks( const QList<Tomahawk::query_ptr>& queries )
|
||||||
{
|
{
|
||||||
|
@@ -38,9 +38,9 @@ public:
|
|||||||
explicit PlaylistInterface();
|
explicit PlaylistInterface();
|
||||||
virtual ~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 bool isFinished() const { return m_finished; }
|
||||||
|
|
||||||
virtual int trackCount() const = 0;
|
virtual int trackCount() const = 0;
|
||||||
@@ -53,7 +53,7 @@ public:
|
|||||||
virtual Tomahawk::result_ptr nextResult() const;
|
virtual Tomahawk::result_ptr nextResult() const;
|
||||||
virtual Tomahawk::result_ptr previousResult() 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 siblingResult( int itemsAway ) const;
|
||||||
|
|
||||||
virtual Tomahawk::result_ptr resultAt( qint64 index ) const = 0;
|
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 indexOfResult( const Tomahawk::result_ptr& result ) const = 0;
|
||||||
virtual qint64 indexOfQuery( const Tomahawk::query_ptr& query ) 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 PlaylistModes::RepeatMode repeatMode() const = 0;
|
||||||
virtual bool shuffled() const = 0;
|
virtual bool shuffled() const = 0;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user