1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-04-08 10:02:29 +02:00

* Renamed PlItem to TrackModelItem.

This commit is contained in:
Christian Muehlhaeuser 2011-04-06 11:48:49 +02:00
parent 01befb0955
commit 17c1cdc2c1
16 changed files with 109 additions and 110 deletions

View File

@ -78,7 +78,6 @@ set( libSources
playlist/collectionflatmodel.cpp
playlist/collectionview.cpp
playlist/playlistmanager.cpp
playlist/plitem.cpp
playlist/playlistmodel.cpp
playlist/playlistproxymodel.cpp
playlist/playlistview.cpp
@ -86,6 +85,7 @@ set( libSources
playlist/queueproxymodel.cpp
playlist/queueview.cpp
playlist/trackmodel.cpp
playlist/trackmodelitem.cpp
playlist/trackproxymodel.cpp
playlist/trackview.cpp
playlist/trackheader.cpp
@ -232,7 +232,6 @@ set( libHeaders
playlist/collectionflatmodel.h
playlist/collectionview.h
playlist/playlistmanager.h
playlist/plitem.h
playlist/playlistmodel.h
playlist/playlistproxymodel.h
playlist/playlistview.h
@ -240,6 +239,7 @@ set( libHeaders
playlist/queueproxymodel.h
playlist/queueview.h
playlist/trackmodel.h
playlist/trackmodelitem.h
playlist/trackproxymodel.h
playlist/trackview.h
playlist/trackheader.h

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -42,11 +42,11 @@ CollectionFlatModel::~CollectionFlatModel()
}
void
void
CollectionFlatModel::addCollections( const QList< collection_ptr >& collections )
{
qDebug() << Q_FUNC_INFO << "Adding collections!";
foreach( const collection_ptr& col, collections )
foreach( const collection_ptr& col, collections )
{
addCollection( col );
}
@ -120,7 +120,7 @@ CollectionFlatModel::removeCollection( const collection_ptr& collection )
QTime timer;
timer.start();
// QList<PlItem*> plitems = m_collectionIndex.values( collection );
// QList<TrackModelItem*> plitems = m_collectionIndex.values( collection );
QList< QPair< int, int > > rows;
QList< QPair< int, int > > sortrows;
QPair< int, int > row;
@ -167,7 +167,7 @@ CollectionFlatModel::removeCollection( const collection_ptr& collection )
emit beginRemoveRows( QModelIndex(), row.first, row.second );
for ( int i = row.second; i >= row.first; i-- )
{
PlItem* item = itemFromIndex( index( i, 0, QModelIndex() ) );
TrackModelItem* item = itemFromIndex( index( i, 0, QModelIndex() ) );
delete item;
}
emit endRemoveRows();
@ -212,12 +212,12 @@ CollectionFlatModel::processTracksToAdd()
emit beginInsertRows( QModelIndex(), c, c + maxc - 1 );
//beginResetModel();
PlItem* plitem;
TrackModelItem* plitem;
QList< Tomahawk::query_ptr >::iterator iter = m_tracksToAdd.begin();
for( int i = 0; i < maxc; ++i )
{
plitem = new PlItem( *iter, m_rootItem );
plitem = new TrackModelItem( *iter, m_rootItem );
plitem->index = createIndex( m_rootItem->children.count() - 1, 0, plitem );
connect( plitem, SIGNAL( dataChanged() ), SLOT( onDataChanged() ) );
@ -245,7 +245,7 @@ CollectionFlatModel::onTracksRemoved( const QList<Tomahawk::query_ptr>& tracks )
QList<Tomahawk::query_ptr> t = tracks;
for ( int i = rowCount( QModelIndex() ); i >= 0 && t.count(); i-- )
{
PlItem* item = itemFromIndex( index( i, 0, QModelIndex() ) );
TrackModelItem* item = itemFromIndex( index( i, 0, QModelIndex() ) );
if ( !item )
continue;
@ -275,7 +275,7 @@ CollectionFlatModel::onTracksRemoved( const QList<Tomahawk::query_ptr>& tracks )
void
CollectionFlatModel::onDataChanged()
{
PlItem* p = (PlItem*)sender();
TrackModelItem* p = (TrackModelItem*)sender();
// emit itemSizeChanged( p->index );
if ( p )

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -23,7 +23,7 @@
#include <QList>
#include <QHash>
#include "plitem.h"
#include "trackmodelitem.h"
#include "trackmodel.h"
#include "collection.h"
#include "query.h"

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -40,7 +40,6 @@ CollectionModel::CollectionModel( QObject* parent )
CollectionModel::~CollectionModel()
{
// delete m_rootItem;
}
@ -50,8 +49,8 @@ CollectionModel::index( int row, int column, const QModelIndex& parent ) const
if ( !m_rootItem || row < 0 || column < 0 )
return QModelIndex();
PlItem* parentItem = itemFromIndex( parent );
PlItem* childItem = parentItem->children.value( row );
TrackModelItem* parentItem = itemFromIndex( parent );
TrackModelItem* childItem = parentItem->children.value( row );
if ( !childItem )
return QModelIndex();
@ -65,7 +64,7 @@ CollectionModel::rowCount( const QModelIndex& parent ) const
if ( parent.column() > 0 )
return 0;
PlItem* parentItem = itemFromIndex( parent );
TrackModelItem* parentItem = itemFromIndex( parent );
if ( !parentItem )
return 0;
@ -83,15 +82,15 @@ CollectionModel::columnCount( const QModelIndex& parent ) const
QModelIndex
CollectionModel::parent( const QModelIndex& child ) const
{
PlItem* entry = itemFromIndex( child );
TrackModelItem* entry = itemFromIndex( child );
if ( !entry )
return QModelIndex();
PlItem* parentEntry = entry->parent;
TrackModelItem* parentEntry = entry->parent;
if ( !parentEntry )
return QModelIndex();
PlItem* grandparentEntry = parentEntry->parent;
TrackModelItem* grandparentEntry = parentEntry->parent;
if ( !grandparentEntry )
return QModelIndex();
@ -106,7 +105,7 @@ CollectionModel::data( const QModelIndex& index, int role ) const
if ( role != Qt::DisplayRole )
return QVariant();
PlItem* entry = itemFromIndex( index );
TrackModelItem* entry = itemFromIndex( index );
if ( !entry )
return QVariant();
@ -199,7 +198,7 @@ CollectionModel::removeCollection( const collection_ptr& collection )
disconnect( collection.data(), SIGNAL( tracksFinished( Tomahawk::collection_ptr ) ),
this, SLOT( onTracksAddingFinished( Tomahawk::collection_ptr ) ) );
QList<PlItem*> plitems = m_collectionIndex.values( collection );
QList<TrackModelItem*> plitems = m_collectionIndex.values( collection );
m_collectionIndex.remove( collection );
}
@ -210,17 +209,17 @@ CollectionModel::onTracksAdded( const QList<Tomahawk::query_ptr>& tracks, const
{
// int c = rowCount( QModelIndex() );
PlItem* plitem;
TrackModelItem* plitem;
foreach( const Tomahawk::query_ptr& query, tracks )
{
PlItem* parent = m_rootItem;
TrackModelItem* parent = m_rootItem;
if ( parent->hash.contains( query->artist() ) )
{
parent = parent->hash.value( query->artist() );
}
else
{
parent = new PlItem( query->artist(), m_rootItem );
parent = new TrackModelItem( query->artist(), m_rootItem );
m_rootItem->hash.insert( query->artist(), parent );
}
@ -232,14 +231,14 @@ CollectionModel::onTracksAdded( const QList<Tomahawk::query_ptr>& tracks, const
}
else
{
PlItem* subitem = new PlItem( query->album(), parent );
TrackModelItem* subitem = new TrackModelItem( query->album(), parent );
parent->hash.insert( query->album(), subitem );
parent->childCount++;
subitem->childCount++;
parent = subitem;
}
plitem = new PlItem( query, parent );
plitem = new TrackModelItem( query, parent );
m_collectionIndex.insertMulti( collection, plitem );
}
@ -275,11 +274,11 @@ CollectionModel::onSourceOffline( Tomahawk::source_ptr src )
}
PlItem*
TrackModelItem*
CollectionModel::itemFromIndex( const QModelIndex& index ) const
{
if ( index.isValid() )
return static_cast<PlItem*>( index.internalPointer() );
return static_cast<TrackModelItem*>( index.internalPointer() );
else
{
return m_rootItem;

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -23,7 +23,7 @@
#include <QList>
#include <QHash>
#include "plitem.h"
#include "trackmodelitem.h"
#include "collection.h"
#include "query.h"
#include "typedefs.h"
@ -62,7 +62,7 @@ public:
virtual void setRepeatMode( PlaylistInterface::RepeatMode mode ) {}
virtual void setShuffled( bool shuffled ) {}
PlItem* itemFromIndex( const QModelIndex& index ) const;
TrackModelItem* itemFromIndex( const QModelIndex& index ) const;
signals:
void repeatModeChanged( PlaylistInterface::RepeatMode mode );
@ -79,8 +79,8 @@ private slots:
void onSourceOffline( Tomahawk::source_ptr src );
private:
PlItem* m_rootItem;
QMap< Tomahawk::collection_ptr, PlItem* > m_collectionIndex;
TrackModelItem* m_rootItem;
QMap< Tomahawk::collection_ptr, TrackModelItem* > m_collectionIndex;
};
#endif // COLLECTIONMODEL_H

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -35,8 +35,8 @@ CollectionProxyModel::CollectionProxyModel( QObject* parent )
bool
CollectionProxyModel::lessThan( const QModelIndex& left, const QModelIndex& right ) const
{
PlItem* p1 = itemFromIndex( left );
PlItem* p2 = itemFromIndex( right );
TrackModelItem* p1 = itemFromIndex( left );
TrackModelItem* p2 = itemFromIndex( right );
if ( !p1 )
return true;

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -24,10 +24,10 @@
#include "query.h"
#include "result.h"
#include "playlist/plitem.h"
#include "playlist/trackproxymodel.h"
#include "playlist/trackview.h"
#include "playlist/trackheader.h"
#include "trackmodelitem.h"
#include "trackproxymodel.h"
#include "trackview.h"
#include "trackheader.h"
#include "utils/tomahawkutils.h"
@ -68,7 +68,7 @@ PlaylistItemDelegate::createEditor( QWidget* parent, const QStyleOptionViewItem&
void
PlaylistItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index ) const
{
PlItem* item = m_model->itemFromIndex( m_model->mapToSource( index ) );
TrackModelItem* item = m_model->itemFromIndex( m_model->mapToSource( index ) );
if ( !item || item->query().isNull() )
return;

View File

@ -92,7 +92,7 @@ PlaylistModel::loadPlaylist( const Tomahawk::playlist_ptr& playlist, bool loadEn
if ( !loadEntries )
return;
PlItem* plitem;
TrackModelItem* plitem;
QList<plentry_ptr> entries = playlist->entries();
if ( entries.count() )
{
@ -105,7 +105,7 @@ PlaylistModel::loadPlaylist( const Tomahawk::playlist_ptr& playlist, bool loadEn
foreach( const plentry_ptr& entry, entries )
{
qDebug() << entry->query()->toString();
plitem = new PlItem( entry, m_rootItem );
plitem = new TrackModelItem( entry, m_rootItem );
plitem->index = createIndex( m_rootItem->children.count() - 1, 0, plitem );
connect( plitem, SIGNAL( dataChanged() ), SLOT( onDataChanged() ) );
@ -158,7 +158,7 @@ PlaylistModel::clear()
delete m_rootItem;
m_rootItem = 0;
emit endResetModel();
m_rootItem = new PlItem( 0, this );
m_rootItem = new TrackModelItem( 0, this );
}
}
@ -252,13 +252,13 @@ PlaylistModel::onTracksInserted( unsigned int row, const QList<Tomahawk::query_p
emit beginInsertRows( QModelIndex(), crows.first, crows.second );
int i = 0;
PlItem* plitem;
TrackModelItem* plitem;
foreach( const query_ptr& query, tracks )
{
plentry_ptr entry = plentry_ptr( new PlaylistEntry() );
entry->setQuery( query );
plitem = new PlItem( entry, m_rootItem, row + i );
plitem = new TrackModelItem( entry, m_rootItem, row + i );
plitem->index = createIndex( row + i, 0, plitem );
i++;
@ -274,7 +274,7 @@ PlaylistModel::onTracksInserted( unsigned int row, const QList<Tomahawk::query_p
void
PlaylistModel::onDataChanged()
{
PlItem* p = (PlItem*)sender();
TrackModelItem* p = (TrackModelItem*)sender();
if ( p && p->index.isValid() )
emit dataChanged( p->index, p->index.sibling( p->index.row(), columnCount() - 1 ) );
}
@ -350,7 +350,7 @@ PlaylistModel::dropMimeData( const QMimeData* data, Qt::DropAction action, int r
e->setAnnotation( "" ); // FIXME
e->setQuery( query );
PlItem* plitem = new PlItem( e, m_rootItem, beginRow );
TrackModelItem* plitem = new TrackModelItem( e, m_rootItem, beginRow );
plitem->index = createIndex( beginRow++, 0, plitem );
connect( plitem, SIGNAL( dataChanged() ), SLOT( onDataChanged() ) );
@ -411,7 +411,7 @@ PlaylistModel::playlistEntries() const
if ( !idx.isValid() )
continue;
PlItem* item = itemFromIndex( idx );
TrackModelItem* item = itemFromIndex( idx );
if ( item )
l << item->entry();
}

View File

@ -22,7 +22,7 @@
#include <QList>
#include <QHash>
#include "plitem.h"
#include "trackmodelitem.h"
#include "trackmodel.h"
#include "collection.h"
#include "query.h"

View File

@ -33,7 +33,7 @@ using namespace Tomahawk;
TrackModel::TrackModel( QObject* parent )
: QAbstractItemModel( parent )
, m_rootItem( new PlItem( 0, this ) )
, m_rootItem( new TrackModelItem( 0, this ) )
, m_readOnly( true )
{
qDebug() << Q_FUNC_INFO;
@ -55,8 +55,8 @@ TrackModel::index( int row, int column, const QModelIndex& parent ) const
if ( !m_rootItem || row < 0 || column < 0 )
return QModelIndex();
PlItem* parentItem = itemFromIndex( parent );
PlItem* childItem = parentItem->children.value( row );
TrackModelItem* parentItem = itemFromIndex( parent );
TrackModelItem* childItem = parentItem->children.value( row );
if ( !childItem )
return QModelIndex();
@ -70,7 +70,7 @@ TrackModel::rowCount( const QModelIndex& parent ) const
if ( parent.column() > 0 )
return 0;
PlItem* parentItem = itemFromIndex( parent );
TrackModelItem* parentItem = itemFromIndex( parent );
if ( !parentItem )
return 0;
@ -88,15 +88,15 @@ TrackModel::columnCount( const QModelIndex& parent ) const
QModelIndex
TrackModel::parent( const QModelIndex& child ) const
{
PlItem* entry = itemFromIndex( child );
TrackModelItem* entry = itemFromIndex( child );
if ( !entry )
return QModelIndex();
PlItem* parentEntry = entry->parent;
TrackModelItem* parentEntry = entry->parent;
if ( !parentEntry )
return QModelIndex();
PlItem* grandparentEntry = parentEntry->parent;
TrackModelItem* grandparentEntry = parentEntry->parent;
if ( !grandparentEntry )
return QModelIndex();
@ -108,7 +108,7 @@ TrackModel::parent( const QModelIndex& child ) const
QVariant
TrackModel::data( const QModelIndex& index, int role ) const
{
PlItem* entry = itemFromIndex( index );
TrackModelItem* entry = itemFromIndex( index );
if ( !entry )
return QVariant();
@ -222,13 +222,13 @@ void
TrackModel::setCurrentItem( const QModelIndex& index )
{
qDebug() << Q_FUNC_INFO;
PlItem* oldEntry = itemFromIndex( m_currentIndex );
TrackModelItem* oldEntry = itemFromIndex( m_currentIndex );
if ( oldEntry )
{
oldEntry->setIsPlaying( false );
}
PlItem* entry = itemFromIndex( index );
TrackModelItem* entry = itemFromIndex( index );
if ( entry )
{
m_currentIndex = index;
@ -283,7 +283,7 @@ TrackModel::mimeData( const QModelIndexList &indexes ) const
continue;
QModelIndex idx = index( i.row(), 0, i.parent() );
PlItem* item = itemFromIndex( idx );
TrackModelItem* item = itemFromIndex( idx );
if ( item )
{
const query_ptr& query = item->query();
@ -315,7 +315,7 @@ TrackModel::removeIndex( const QModelIndex& index, bool moreToCome )
if ( index.column() > 0 )
return;
PlItem* item = itemFromIndex( index );
TrackModelItem* item = itemFromIndex( index );
if ( item )
{
emit beginRemoveRows( index.parent(), index.row(), index.row() );
@ -337,11 +337,11 @@ TrackModel::removeIndexes( const QList<QModelIndex>& indexes )
}
PlItem*
TrackModelItem*
TrackModel::itemFromIndex( const QModelIndex& index ) const
{
if ( index.isValid() )
return static_cast<PlItem*>( index.internalPointer() );
return static_cast<TrackModelItem*>( index.internalPointer() );
else
{
return m_rootItem;
@ -352,7 +352,7 @@ TrackModel::itemFromIndex( const QModelIndex& index ) const
void
TrackModel::onPlaybackFinished( const Tomahawk::result_ptr& result )
{
PlItem* oldEntry = itemFromIndex( m_currentIndex );
TrackModelItem* oldEntry = itemFromIndex( m_currentIndex );
if ( oldEntry && !oldEntry->query().isNull() && oldEntry->query()->results().contains( result ) )
{
oldEntry->setIsPlaying( false );
@ -363,7 +363,7 @@ TrackModel::onPlaybackFinished( const Tomahawk::result_ptr& result )
void
TrackModel::onPlaybackStopped()
{
PlItem* oldEntry = itemFromIndex( m_currentIndex );
TrackModelItem* oldEntry = itemFromIndex( m_currentIndex );
if ( oldEntry )
{
oldEntry->setIsPlaying( false );

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -22,7 +22,7 @@
#include <QAbstractItemModel>
#include "playlistinterface.h"
#include "playlist/plitem.h"
#include "trackmodelitem.h"
#include "dllmacro.h"
@ -80,9 +80,9 @@ public:
virtual void append( const Tomahawk::query_ptr& query ) = 0;
PlItem* itemFromIndex( const QModelIndex& index ) const;
TrackModelItem* itemFromIndex( const QModelIndex& index ) const;
PlItem* m_rootItem;
TrackModelItem* m_rootItem;
signals:
void repeatModeChanged( PlaylistInterface::RepeatMode mode );

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -16,7 +16,7 @@
* along with Tomahawk. If not, see <http://www.gnu.org/licenses/>.
*/
#include "plitem.h"
#include "trackmodelitem.h"
#include "utils/tomahawkutils.h"
#include "playlist.h"
@ -27,7 +27,7 @@
using namespace Tomahawk;
PlItem::~PlItem()
TrackModelItem::~TrackModelItem()
{
// Don't use qDeleteAll here! The children will remove themselves
// from the list when they get deleted and the qDeleteAll iterator
@ -42,7 +42,7 @@ PlItem::~PlItem()
}
PlItem::PlItem( PlItem* parent, QAbstractItemModel* model )
TrackModelItem::TrackModelItem( TrackModelItem* parent, QAbstractItemModel* model )
{
this->parent = parent;
this->model = model;
@ -56,7 +56,7 @@ PlItem::PlItem( PlItem* parent, QAbstractItemModel* model )
}
PlItem::PlItem( const QString& caption, PlItem* parent )
TrackModelItem::TrackModelItem( const QString& caption, TrackModelItem* parent )
{
this->parent = parent;
this->caption = caption;
@ -72,35 +72,35 @@ PlItem::PlItem( const QString& caption, PlItem* parent )
}
PlItem::PlItem( const Tomahawk::query_ptr& query, PlItem* parent, int row )
TrackModelItem::TrackModelItem( const Tomahawk::query_ptr& query, TrackModelItem* parent, int row )
: QObject( parent )
{
setupItem( query, parent, row );
}
PlItem::PlItem( const Tomahawk::plentry_ptr& entry, PlItem* parent, int row )
TrackModelItem::TrackModelItem( const Tomahawk::plentry_ptr& entry, TrackModelItem* parent, int row )
: QObject( parent )
, m_entry( entry )
{
setupItem( entry->query(), parent, row );
}
const Tomahawk::plentry_ptr&
PlItem::entry() const
const Tomahawk::plentry_ptr&
TrackModelItem::entry() const
{
return m_entry;
}
const Tomahawk::query_ptr&
PlItem::query() const
const Tomahawk::query_ptr&
TrackModelItem::query() const
{
if ( !m_entry.isNull() ) return m_entry->query(); else return m_query;
}
void
PlItem::setupItem( const Tomahawk::query_ptr& query, PlItem* parent, int row )
TrackModelItem::setupItem( const Tomahawk::query_ptr& query, TrackModelItem* parent, int row )
{
this->parent = parent;
if ( parent )
@ -132,7 +132,7 @@ PlItem::setupItem( const Tomahawk::query_ptr& query, PlItem* parent, int row )
connect( query.data(), SIGNAL( resultsRemoved( Tomahawk::result_ptr ) ),
SIGNAL( dataChanged() ) );
connect( query.data(), SIGNAL( resultsChanged() ),
SIGNAL( dataChanged() ) );
}

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -29,17 +29,17 @@
#include "dllmacro.h"
class DLLEXPORT PlItem : public QObject
class DLLEXPORT TrackModelItem : public QObject
{
Q_OBJECT
public:
virtual ~PlItem();
virtual ~TrackModelItem();
explicit PlItem( PlItem* parent = 0, QAbstractItemModel* model = 0 );
explicit PlItem( const QString& caption, PlItem* parent = 0 );
explicit PlItem( const Tomahawk::query_ptr& query, PlItem* parent = 0, int row = -1 );
explicit PlItem( const Tomahawk::plentry_ptr& entry, PlItem* parent = 0, int row = -1 );
explicit TrackModelItem( TrackModelItem* parent = 0, QAbstractItemModel* model = 0 );
explicit TrackModelItem( const QString& caption, TrackModelItem* parent = 0 );
explicit TrackModelItem( const Tomahawk::query_ptr& query, TrackModelItem* parent = 0, int row = -1 );
explicit TrackModelItem( const Tomahawk::plentry_ptr& entry, TrackModelItem* parent = 0, int row = -1 );
const Tomahawk::plentry_ptr& entry() const;
const Tomahawk::query_ptr& query() const;
@ -47,9 +47,9 @@ public:
bool isPlaying() { return m_isPlaying; }
void setIsPlaying( bool b ) { m_isPlaying = b; emit dataChanged(); }
PlItem* parent;
QVector<PlItem*> children;
QHash<QString, PlItem*> hash;
TrackModelItem* parent;
QVector<TrackModelItem*> children;
QHash<QString, TrackModelItem*> hash;
QString caption;
int childCount;
QPersistentModelIndex index;
@ -60,7 +60,7 @@ signals:
void dataChanged();
private:
void setupItem( const Tomahawk::query_ptr& query, PlItem* parent, int row = -1 );
void setupItem( const Tomahawk::query_ptr& query, TrackModelItem* parent, int row = -1 );
Tomahawk::plentry_ptr m_entry;
Tomahawk::query_ptr m_query;

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -76,7 +76,7 @@ TrackProxyModel::tracks()
for ( int i = 0; i < rowCount( QModelIndex() ); i++ )
{
PlItem* item = itemFromIndex( mapToSource( index( i, 0 ) ) );
TrackModelItem* item = itemFromIndex( mapToSource( index( i, 0 ) ) );
if ( item )
queries << item->query();
}
@ -135,7 +135,7 @@ TrackProxyModel::siblingItem( int itemsAway )
// Try to find the next available PlaylistItem (with results)
if ( idx.isValid() ) do
{
PlItem* item = itemFromIndex( mapToSource( idx ) );
TrackModelItem* item = itemFromIndex( mapToSource( idx ) );
qDebug() << item->query()->toString();
if ( item && item->query()->playable() )
{
@ -156,14 +156,14 @@ TrackProxyModel::siblingItem( int itemsAway )
bool
TrackProxyModel::filterAcceptsRow( int sourceRow, const QModelIndex& sourceParent ) const
{
PlItem* pi = itemFromIndex( sourceModel()->index( sourceRow, 0, sourceParent ) );
TrackModelItem* pi = itemFromIndex( sourceModel()->index( sourceRow, 0, sourceParent ) );
if ( !pi )
return false;
const Tomahawk::query_ptr& q = pi->query();
if( q.isNull() ) // uh oh? filter out invalid queries i guess
return false;
Tomahawk::result_ptr r;
if ( q->numResults() )
r = q->results().first();

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -59,7 +59,7 @@ public:
bool showOfflineResults() const { return m_showOfflineResults; }
void setShowOfflineResults( bool b ) { m_showOfflineResults = b; }
PlItem* itemFromIndex( const QModelIndex& index ) const { return sourceModel()->itemFromIndex( index ); }
TrackModelItem* itemFromIndex( const QModelIndex& index ) const { return sourceModel()->itemFromIndex( index ); }
signals:
void repeatModeChanged( PlaylistInterface::RepeatMode mode );

View File

@ -1,5 +1,5 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
*
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
@ -69,12 +69,12 @@ TrackView::TrackView( QWidget* parent )
f.setPointSize( f.pointSize() - 1 );
setFont( f );
#endif
#ifdef Q_WS_MAC
f.setPointSize( f.pointSize() - 2 );
setFont( f );
#endif
connect( this, SIGNAL( doubleClicked( QModelIndex ) ), SLOT( onItemActivated( QModelIndex ) ) );
}
@ -119,7 +119,7 @@ TrackView::setModel( TrackModel* model )
connect( m_model, SIGNAL( itemSizeChanged( QModelIndex ) ), SLOT( onItemResized( QModelIndex ) ) );
connect( m_model, SIGNAL( loadingStarted() ), m_loadingSpinner, SLOT( fadeIn() ) );
connect( m_model, SIGNAL( loadingFinished() ), m_loadingSpinner, SLOT( fadeOut() ) );
connect( m_proxyModel, SIGNAL( filterChanged( QString ) ), SLOT( onFilterChanged( QString ) ) );
setAcceptDrops( true );
@ -129,7 +129,7 @@ TrackView::setModel( TrackModel* model )
void
TrackView::onItemActivated( const QModelIndex& index )
{
PlItem* item = m_model->itemFromIndex( m_proxyModel->mapToSource( index ) );
TrackModelItem* item = m_model->itemFromIndex( m_proxyModel->mapToSource( index ) );
if ( item && item->query()->numResults() )
{
qDebug() << "Result activated:" << item->query()->toString() << item->query()->results().first()->url();
@ -178,7 +178,7 @@ TrackView::addItemsToQueue()
if ( idx.column() )
continue;
PlItem* item = model()->itemFromIndex( proxyModel()->mapToSource( idx ) );
TrackModelItem* item = model()->itemFromIndex( proxyModel()->mapToSource( idx ) );
if ( item && item->query()->numResults() )
{
PlaylistManager::instance()->queue()->model()->append( item->query() );