From aba573026ec3ca79e30d0350a645d91169421443 Mon Sep 17 00:00:00 2001 From: Arno Date: Tue, 29 Mar 2016 20:29:26 +0200 Subject: Make the SlideDialog do somethin Well, implement functionality. Seems to work as intended. --- picfilesmodel.cpp | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'picfilesmodel.cpp') diff --git a/picfilesmodel.cpp b/picfilesmodel.cpp index 482af09..11d8f43 100644 --- a/picfilesmodel.cpp +++ b/picfilesmodel.cpp @@ -301,6 +301,47 @@ QList PicFilesModel::mappingPIdsFromFiles(QList fileIds) const{ return retval; } +void PicFilesModel::selectFromAll(){ + mAllPics.clear(); + QSqlQuery q("SELECT tfilename, cmd5sum, ipicsid FROM pics", mDb); + while(q.next()){ + QList cur; + cur << q.value(0) << q.value(1) << q.value(2); + mAllPics << cur; + } + mCurrentPics = &mAllPics; +} + +void PicFilesModel::selectFromRecent(int days){ + mAllPics.clear(); + QString qTempl = QString("SELECT tfilename, cmd5sum, ipicsid FROM pics WHERE dtadded > now() - interval '%1 days'").arg(QString::number(days)); + QSqlQuery q(qTempl, mDb); + while(q.next()){ + QList cur; + cur << q.value(0) << q.value(1) << q.value(2); + mAllPics << cur; + } + mCurrentPics = &mAllPics; +} + +void PicFilesModel::selectFromSelection(QList ids){ + mAllPics.clear(); + QStringList idQS; + foreach (QVariant i, ids){ + idQS << QString::number(i.toInt()); + } + QString inPart = idQS.join(','); + QString qTempl = QString("SELECT tfilename, cmd5sum, ipicsid FROM pics, pics_mappings WHERE pics_mappings.imappings_parents_id IN (%1) AND pics_mappings.ipics_id = pics.ipicsid").arg(inPart); + QSqlQuery q(qTempl, mDb); + while(q.next()){ + QList cur; + cur << q.value(0) << q.value(1) << q.value(2); + mAllPics << cur; + } + mCurrentPics = &mAllPics; +} + +// delete this func once the one above works void PicFilesModel::allPicIds(){ mAllPics.clear(); mCurrentBatch = 0; -- cgit v1.2.3-70-g09d2