equal
deleted
inserted
replaced
27 #include <QProgressBar> |
27 #include <QProgressBar> |
28 #include <QBuffer> |
28 #include <QBuffer> |
29 |
29 |
30 #include "pagedata.h" |
30 #include "pagedata.h" |
31 #include "databrowser.h" |
31 #include "databrowser.h" |
|
32 #include "hwconsts.h" |
32 |
33 |
33 #include "quazip.h" |
34 #include "quazip.h" |
34 #include "quazipfile.h" |
35 #include "quazipfile.h" |
35 |
36 |
36 PageDataDownload::PageDataDownload(QWidget* parent) : AbstractPage(parent) |
37 PageDataDownload::PageDataDownload(QWidget* parent) : AbstractPage(parent) |
139 return false; |
140 return false; |
140 } |
141 } |
141 |
142 |
142 QuaZipFile file(&zip); |
143 QuaZipFile file(&zip); |
143 |
144 |
|
145 QDir extractDir(*cfgdir); |
|
146 extractDir.cd("Data"); |
|
147 |
144 for(bool more = zip.goToFirstFile(); more; more = zip.goToNextFile()) |
148 for(bool more = zip.goToFirstFile(); more; more = zip.goToNextFile()) |
145 { |
149 { |
146 if(!file.open(QIODevice::ReadOnly)) |
150 if(!file.open(QIODevice::ReadOnly)) |
147 { |
151 { |
148 qWarning("file.open(): %d", file.getZipError()); |
152 qWarning("file.open(): %d", file.getZipError()); |
149 return false; |
153 return false; |
150 } |
154 } |
151 |
155 |
152 |
156 |
153 QString fileName = file.getActualFileName(); |
157 QString fileName = file.getActualFileName(); |
154 QString filePath = QDir::tempPath() + "/" + fileName; |
158 QString filePath = extractDir.filePath(fileName); |
155 if (fileName.endsWith("/")) |
159 if (fileName.endsWith("/")) |
156 { |
160 { |
157 QFileInfo fi(filePath); |
161 QFileInfo fi(filePath); |
158 QDir().mkpath(fi.filePath()); |
162 QDir().mkpath(fi.filePath()); |
159 } else |
163 } else |
160 { |
164 { |
161 qDebug() << filePath; |
165 qDebug() << "Extracting" << filePath; |
162 QFile out(filePath); |
166 QFile out(filePath); |
163 if(!out.open(QFile::WriteOnly)) |
167 if(!out.open(QFile::WriteOnly)) |
164 { |
168 { |
165 qWarning() << "out.open():" << out.errorString(); |
169 qWarning() << "out.open():" << out.errorString(); |
166 return false; |
170 return false; |