summaryrefslogtreecommitdiffstats
path: root/src/library/banshee/bansheeplaylistmodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/library/banshee/bansheeplaylistmodel.cpp')
-rw-r--r--src/library/banshee/bansheeplaylistmodel.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/library/banshee/bansheeplaylistmodel.cpp b/src/library/banshee/bansheeplaylistmodel.cpp
index 7c6a1256a0..666d426dcd 100644
--- a/src/library/banshee/bansheeplaylistmodel.cpp
+++ b/src/library/banshee/bansheeplaylistmodel.cpp
@@ -5,6 +5,7 @@
#include "library/queryutil.h"
#include "library/starrating.h"
#include "library/previewbuttondelegate.h"
+#include "library/trackcollectionmanager.h"
#include "track/beatfactory.h"
#include "track/beats.h"
#include "mixer/playermanager.h"
@@ -32,11 +33,13 @@
#define CLM_PREVIEW "preview"
namespace {
+
QAtomicInt sTableNumber;
+
}
-BansheePlaylistModel::BansheePlaylistModel(QObject* pParent, TrackCollection* pTrackCollection, BansheeDbConnection* pConnection)
- : BaseSqlTableModel(pParent, pTrackCollection, "mixxx.db.model.banshee_playlist"),
+BansheePlaylistModel::BansheePlaylistModel(QObject* pParent, TrackCollectionManager* pTrackCollectionManager, BansheeDbConnection* pConnection)
+ : BaseSqlTableModel(pParent, pTrackCollectionManager, "mixxx.db.model.banshee_playlist"),
m_pConnection(pConnection),
m_playlistId(-1) {
m_tempTableName = BANSHEE_TABLE + QString::number(sTableNumber.fetchAndAddAcquire(1));
@@ -50,7 +53,7 @@ void BansheePlaylistModel::dropTempTable() {
if (m_playlistId >= 0) {
// Clear old playlist
m_playlistId = -1;
- QSqlQuery query(m_pTrackCollection->database());
+ QSqlQuery query(m_database);
QString strQuery("DROP TABLE IF EXISTS %1");
if (!query.exec(strQuery.arg(m_tempTableName))) {
LOG_FAILED_QUERY(query);
@@ -71,7 +74,7 @@ void BansheePlaylistModel::setTableModel(int playlistId) {
// setup new playlist
m_playlistId = playlistId;
- QSqlQuery query(m_pTrackCollection->database());
+ QSqlQuery query(m_database);
QString strQuery("CREATE TEMP TABLE IF NOT EXISTS %1"
" (" CLM_TRACK_ID " INTEGER, "
CLM_VIEW_ORDER " INTEGER, "
@@ -209,7 +212,7 @@ void BansheePlaylistModel::setTableModel(int playlistId) {
<< CLM_COMPOSER;
QSharedPointer<BaseTrackCache> trackSource(
- new BaseTrackCache(m_pTrackCollection, m_tempTableName, CLM_TRACK_ID,
+ new BaseTrackCache(m_pTrackCollectionManager->internalCollection(), m_tempTableName, CLM_TRACK_ID,
trackSourceColumns, false));
setTable(m_tempTableName, CLM_TRACK_ID, tableColumns, trackSource);
@@ -315,7 +318,7 @@ TrackPointer BansheePlaylistModel::getTrack(const QModelIndex& index) const {
}
bool track_already_in_library = false;
- TrackPointer pTrack = m_pTrackCollection->getOrAddTrack(
+ TrackPointer pTrack = m_pTrackCollectionManager->getOrAddTrack(
TrackRef::fromFileInfo(location),
&track_already_in_library);