summaryrefslogtreecommitdiffstats
path: root/rbutil/rbutilqt/base/rbunzip.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/rbutilqt/base/rbunzip.cpp')
-rw-r--r--rbutil/rbutilqt/base/rbunzip.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/rbutil/rbutilqt/base/rbunzip.cpp b/rbutil/rbutilqt/base/rbunzip.cpp
index 49d12156ea..fb964b52db 100644
--- a/rbutil/rbutilqt/base/rbunzip.cpp
+++ b/rbutil/rbutilqt/base/rbunzip.cpp
@@ -21,6 +21,7 @@
#include <QtCore>
+//! @brief extract archive to destination
UnZip::ErrorCode RbUnZip::extractArchive(const QString& dest)
{
QStringList files = this->fileList();
@@ -41,8 +42,25 @@ UnZip::ErrorCode RbUnZip::extractArchive(const QString& dest)
return error;
}
+
+//! @brief abort an extractArchive() operation.
void RbUnZip::abortUnzip(void)
{
m_abortunzip = true;
}
+
+//! @brief return total size of extracted files in archive.
+qulonglong RbUnZip::totalSize(void)
+{
+ QList<ZipEntry> l = this->entryList();
+ qulonglong total = 0;
+
+ int i = l.size();
+ while(i--)
+ total += l.at(i).uncompressedSize;
+
+ return total;
+
+}
+