History

making quazip work

elisa-lj11 committed 10 years ago

Commit 212e4f91 parent 87cbb797 files · +85 −63Browse files

Showing the changes to libraries/script-engine/src/FileScriptingInterface.cpp (1 of 7 files). Show all

Unified · Split

libraries/script-engine/src/FileScriptingInterface.cpp+21−14
@@ -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
24FileScriptingInterface::FileScriptingInterface(QObject* parent) {27FileScriptingInterface::FileScriptingInterface(QObject* parent) : QObject(parent) {
25 // nothing for now28 // 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
92void FileScriptingInterface::recursiveFileScan(QFileInfo file) {95void 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}