summaryrefslogtreecommitdiffstats
path: root/filestreemodel.cpp
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2010-07-18 11:33:04 +0200
committerArno <am@disconnect.de>2010-07-18 11:33:04 +0200
commit88791c89ac1066a9c0118120e10ec3cc19c2ec72 (patch)
treeefe64de5f51bc4ab5821da7114ed9ebac16cccf7 /filestreemodel.cpp
parenta7a6b1c9f8f718b3082e6cc373459a1eba508848 (diff)
downloadSheMov-88791c89ac1066a9c0118120e10ec3cc19c2ec72.tar.gz
SheMov-88791c89ac1066a9c0118120e10ec3cc19c2ec72.tar.bz2
SheMov-88791c89ac1066a9c0118120e10ec3cc19c2ec72.zip
Implemented "move to burn directory" for TreeWidget
Files from the archive can be moved to a configurable directory with this function. The specified files won't be deleted from the database.
Diffstat (limited to 'filestreemodel.cpp')
-rw-r--r--filestreemodel.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/filestreemodel.cpp b/filestreemodel.cpp
index 348e536..8dc52ba 100644
--- a/filestreemodel.cpp
+++ b/filestreemodel.cpp
@@ -22,12 +22,15 @@ FilesTreeModel::FilesTreeModel(QStringList &headers, QObject *parent) : SmTreeMo
mUpdateQualityQuery->prepare("UPDATE files SET siquality = :quality WHERE ifiles_id = :id");
mInsertFileQuery = new QSqlQuery(mDb);
mInsertFileQuery->prepare("INSERT INTO files(iseriespart_id, tfilename, cmd5sum, bisize, idvd, sifiletype, sifileno, siquality) VALUES(:seriespartid, :fname, :md5, :size, :dvd, :type, :fileno, :quality)");
+ mFilesQuery = new QSqlQuery(mDb);
+ mFilesQuery->prepare("SELECT tfilename, cmd5sum FROM files WHERE iseriespart_id = :id");
}
FilesTreeModel::~FilesTreeModel(){
delete mUpdateDvdQuery;
delete mUpdateQualityQuery;
delete mInsertFileQuery;
+ delete mFilesQuery;
mDb = QSqlDatabase();
}
@@ -187,6 +190,17 @@ Qt::ItemFlags FilesTreeModel::flags(const QModelIndex &index) const{
return retval;
}
+QHash<QString, QString> FilesTreeModel::filesBySeriesPartId(int seriesPartId){
+ mFilesQuery->bindValue(":id", seriesPartId);
+ QHash<QString, QString> retval;
+ if(mFilesQuery->exec()){
+ while(mFilesQuery->next()){
+ retval.insert(mFilesQuery->value(0).toString(), mFilesQuery->value(1).toString());
+ }
+ }
+ return retval;
+}
+
bool FilesTreeModel::addFile(const QString &fullPath, int type, int quality, int filePart, int seriesPartId, int dvd){
QFileInfo fi(fullPath);
qint64 size = fi.size();