Showing the changes to libraries/script-engine/src/FileScriptingInterface.cpp (1 of 7 files). Show all
Unified · Split
| @@ -11,17 +11,20 @@ · 10 unmodified lines | |||
| 11 | 11 | ||
| 12 | #include <QTemporaryDir> | 12 | #include <QTemporaryDir> |
| 13 | #include <QFile> | 13 | #include <QFile> |
| 14 | #include <QDebug> | ||
| 15 | #include <QBuffer> | ||
| 14 | #include <QUrl> | 16 | #include <QUrl> |
| 15 | #include <QByteArray> | 17 | #include <QByteArray> |
| 16 | #include <QString> | 18 | #include <QString> |
| 19 | #include <QFileInfo> | ||
| 17 | #include <quazip/quazip.h> | 20 | #include <quazip/quazip.h> |
| 18 | #include <JICompress.h> | 21 | #include <quazip/JlCompress.h> |
| 19 | #include "ResourceManager.h" | 22 | #include "ResourceManager.h" |
| 20 | 23 | ||
| 21 | #include "FileScriptingInterface.h" | 24 | #include "FileScriptingInterface.h" |
| 22 | 25 | ||
| 23 | 26 | ||
| 24 | FileScriptingInterface::FileScriptingInterface(QObject* parent) { | 27 | FileScriptingInterface::FileScriptingInterface(QObject* parent) : QObject(parent) { |
| 25 | // nothing for now | 28 | // nothing for now |
| 26 | } | 29 | } |
| 27 | 30 | ||
| @@ -45,11 +48,11 @@ void FileScriptingInterface::unzipFile() { · 17 unmodified lines | |||
| 45 | buffer.open(QIODevice::ReadOnly); | 48 | buffer.open(QIODevice::ReadOnly); |
| 46 | 49 | ||
| 47 | QString dirName = dir.path(); | 50 | QString dirName = dir.path(); |
| 48 | JICompress::extractDir(buffer, dirName); | 51 | JlCompress::extractDir(buffer, dirName); |
| 49 | 52 | ||
| 50 | QFileInfoList files = dir.entryInfoList(); | 53 | QFileInfoList files = dir.entryInfoList(); |
| 51 | foreach (QFileInfo file, files) { | 54 | foreach (QFileInfo file, files) { |
| 52 | recursiveFileScan(file); | 55 | recursiveFileScan(file, &dirName); |
| 53 | } | 56 | } |
| 54 | 57 | ||
| 55 | 58 | ||
| @@ -89,22 +92,26 @@ void FileScriptingInterface::unzipFile() { · 33 unmodified lines | |||
| 89 | 92 | ||
| 90 | } | 93 | } |
| 91 | 94 | ||
| 92 | void FileScriptingInterface::recursiveFileScan(QFileInfo file) { | 95 | void FileScriptingInterface::recursiveFileScan(QFileInfo file, QString* dirName) { |
| 93 | if (!file.isDir()) { | 96 | if (!file.isDir()) { |
| 94 | qDebug() << "Regular file logged:" + file.fileName(); | 97 | qDebug() << "Regular file logged: " + file.fileName(); |
| 95 | return; | 98 | return; |
| 96 | } | 99 | } |
| 100 | QFileInfoList files; | ||
| 101 | |||
| 97 | if (file.fileName().contains(".zip")) { | 102 | if (file.fileName().contains(".zip")) { |
| 98 | 103 | JlCompress::extractDir(file); | |
| 99 | } | 104 | qDebug() << "Extracting archive: " + file.fileName(); |
| 105 | } | ||
| 106 | files = file.entryInfoList(); | ||
| 100 | 107 | ||
| 101 | QFileInfoList files = file.entryInfoList(); | 108 | /*if (files.empty()) { |
| 102 | if (files.empty()) { | ||
| 103 | files = JlCompress::getFileList(file.fileName()); | 109 | files = JlCompress::getFileList(file.fileName()); |
| 104 | } | 110 | }*/ |
| 105 | foreach (QFileInfo file, files) { | ||
| 106 | if (file.fileName().contains(".zip")) { | ||
| 107 | 111 | ||
| 108 | } | 112 | foreach (QFileInfo file, files) { |
| 113 | qDebug() << "Looking into file: " + file.fileName(); | ||
| 114 | recursiveFileScan(file, &dirName); | ||
| 109 | } | 115 | } |
| 116 | return; | ||
| 110 | } | 117 | } |