summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--seriestreemodel.cpp19
-rw-r--r--seriestreemodel.h1
2 files changed, 20 insertions, 0 deletions
diff --git a/seriestreemodel.cpp b/seriestreemodel.cpp
index 846f00c..122c163 100644
--- a/seriestreemodel.cpp
+++ b/seriestreemodel.cpp
@@ -180,6 +180,25 @@ QFileInfoList SeriesTreeModel::findFiles(const QModelIndex &where) const{
return retval;
}
+QFileInfoList SeriesTreeModel::findMovies(const QModelIndexList &from) const{
+ if(from.isEmpty()){
+ return QFileInfoList();
+ }
+ QFileInfoList retval;
+ foreach(QModelIndex idx, from){
+ QFileInfoList files = findFiles(idx);
+ foreach(QFileInfo fi, files){
+ QString mime = Helper::mimeType(fi.absoluteFilePath());
+ if(mime.startsWith("video")){
+ if(!retval.contains(fi)){
+ retval << fi;
+ }
+ }
+ }
+ }
+ return retval;
+}
+
bool SeriesTreeModel::deleteFromSeries(const QModelIndex &what){
int nodeType = what.data(TypeRole).toInt();
QSqlQuery *query = 0;
diff --git a/seriestreemodel.h b/seriestreemodel.h
index 6cb55b8..7933310 100644
--- a/seriestreemodel.h
+++ b/seriestreemodel.h
@@ -32,6 +32,7 @@ class SeriesTreeModel : public SmTreeModel {
//find
QModelIndex findValue(const QVariant &value, const QModelIndex &parent = QModelIndex(), int column = 0) const;
QFileInfoList findFiles(const QModelIndex &where) const;
+ QFileInfoList findMovies(const QModelIndexList &from) const;
//delete
bool deleteFromSeries(const QModelIndex &what);