summaryrefslogtreecommitdiffstats
path: root/pictureswidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'pictureswidget.cpp')
-rw-r--r--pictureswidget.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/pictureswidget.cpp b/pictureswidget.cpp
index ac44229..8492dd2 100644
--- a/pictureswidget.cpp
+++ b/pictureswidget.cpp
@@ -170,6 +170,11 @@ void PictureView::setPVData(int replace){
mPV->addFiles(pics, replace);
}
+void PictureView::setPVAll(){
+ PicDataList data = mModel->allFiles();
+ mPV->addFiles(data, true);
+}
+
void PictureView::hideEvent(QHideEvent *){
QByteArray pvHeader = header()->saveState();
QSettings s;
@@ -253,6 +258,8 @@ PicFilesModel::PicFilesModel(const QStringList &headers, QObject *parent) : SmTr
mDeleteMappingsQ->prepare("DELETE FROM pics_mappings WHERE ipics_id = :id");
mAddMappingsQ = new QSqlQuery(mDb);
mAddMappingsQ->prepare("INSERT INTO pics_mappings(ipics_id, imapping_id) VALUES(:pid, :id)");
+ mAllFilesQ = new QSqlQuery(mDb);
+ mAllFilesQ->prepare("SELECT pics.tfilename, pics.isize, pics.tformat, pics.dtadded, pics.cmd5sum, pics.ipicsid FROM pics");
}
QList<int> PicFilesModel::mappingIds(const QList<QVariant> &fileIds){
@@ -325,6 +332,23 @@ QList<QVariant> PicFilesModel::dataList(const QModelIndex &idx) const{
return retval;
}
+QList<QList<QVariant> > PicFilesModel::allFiles() const {
+ QList<QList<QVariant> > retval;
+ if(!mAllFilesQ->exec()){
+ return retval;
+ }
+ while(mAllFilesQ->next()){
+ QList<QVariant> data;
+ data << mAllFilesQ->value(0) << mAllFilesQ->value(1) << mAllFilesQ->value(2); // Filename, size and Mime type
+ data << Helper::createArchivePath(mAllFilesQ->value(0).toString(), mAllFilesQ->value(4).toString()); // full path;
+ data << mAllFilesQ->value(5) << mAllFilesQ->value(3) << mAllFilesQ->value(4); //Id, added and md5
+ QLocale l;
+ data << l.toString(mAllFilesQ->value(1).toInt());
+ retval << data;
+ }
+ return retval;
+}
+
void PicFilesModel::removeFiles(const QList<QPersistentModelIndex> &files){
foreach(QPersistentModelIndex pi, files){
mDeleteFileQ->bindValue(":id", pi.data(IdRole));