mirror of
https://github.com/JulianGro/overte.git
synced 2025-04-09 13:12:40 +02:00
No errors upon build
This commit is contained in:
parent
212e4f9cca
commit
9833ba1987
5 changed files with 52 additions and 23 deletions
10
cmake/externals/quazip/CMakeLists.txt
vendored
10
cmake/externals/quazip/CMakeLists.txt
vendored
|
@ -14,8 +14,8 @@ endif ()
|
|||
|
||||
ExternalProject_Add(
|
||||
${EXTERNAL_NAME}
|
||||
URL http://s3-us-west-1.amazonaws.com/hifi-production/dependencies/quazip-0.6.2.zip
|
||||
URL_MD5 514851970f1a14d815bdc3ad6267af4d
|
||||
URL https://s3-us-west-1.amazonaws.com/hifi-production/dependencies/quazip-0.7.2.zip
|
||||
URL_MD5 2955176048a31262c09259ca8d309d19
|
||||
BINARY_DIR ${EXTERNAL_PROJECT_PREFIX}/build
|
||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DCMAKE_PREFIX_PATH=${QT_CMAKE_PREFIX_PATH} -DCMAKE_INSTALL_NAME_DIR:PATH=<INSTALL_DIR>/lib -DZLIB_ROOT=${ZLIB_ROOT}
|
||||
LOG_DOWNLOAD 1
|
||||
|
@ -37,11 +37,11 @@ set(${EXTERNAL_NAME_UPPER}_INCLUDE_DIRS ${${EXTERNAL_NAME_UPPER}_INCLUDE_DIR} CA
|
|||
set(${EXTERNAL_NAME_UPPER}_DLL_PATH ${INSTALL_DIR}/lib CACHE FILEPATH "Location of QuaZip DLL")
|
||||
|
||||
if (APPLE)
|
||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/libquazip.1.0.0.dylib CACHE FILEPATH "Location of QuaZip release library")
|
||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/libquazip5d.1.0.0.dylib CACHE FILEPATH "Location of QuaZip release library")
|
||||
elseif (WIN32)
|
||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/quazip.lib CACHE FILEPATH "Location of QuaZip release library")
|
||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/quazip5d.lib CACHE FILEPATH "Location of QuaZip release library")
|
||||
else ()
|
||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/libquazip.so CACHE FILEPATH "Location of QuaZip release library")
|
||||
set(${EXTERNAL_NAME_UPPER}_LIBRARY_RELEASE ${INSTALL_DIR}/lib/libquazip5d.so CACHE FILEPATH "Location of QuaZip release library")
|
||||
endif ()
|
||||
|
||||
include(SelectLibraryConfigurations)
|
||||
|
|
|
@ -8,4 +8,8 @@ find_package(QuaZip REQUIRED)
|
|||
target_include_directories(${TARGET_NAME} SYSTEM PUBLIC ${QUAZIP_INCLUDE_DIRS})
|
||||
target_link_libraries(${TARGET_NAME} ${QUAZIP_LIBRARIES})
|
||||
|
||||
if (WIN32)
|
||||
add_paths_to_fixup_libs(${QUAZIP_DLL_PATH})
|
||||
endif ()
|
||||
|
||||
link_hifi_libraries(shared networking octree gpu ui procedural model model-networking recording avatars fbx entities controllers animation audio physics)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
//
|
||||
// FileScriptingInterface.cpp
|
||||
// interface/src/scripting
|
||||
// libraries/script-engine/src
|
||||
//
|
||||
// Created by Elisa Lupin-Jimenez on 6/28/16.
|
||||
// Copyright 2016 High Fidelity, Inc.
|
||||
|
@ -10,15 +10,18 @@
|
|||
//
|
||||
|
||||
#include <QTemporaryDir>
|
||||
#include <QDir>
|
||||
#include <QFile>
|
||||
#include <QDebug>
|
||||
#include <QBuffer>
|
||||
#include <QTextCodec>
|
||||
#include <QIODevice>
|
||||
#include <QUrl>
|
||||
#include <QByteArray>
|
||||
#include <QString>
|
||||
#include <QFileInfo>
|
||||
#include <quazip/quazip.h>
|
||||
#include <quazip/JlCompress.h>
|
||||
#include <quazip5/quazip.h>
|
||||
#include <quazip5/JlCompress.h>
|
||||
#include "ResourceManager.h"
|
||||
|
||||
#include "FileScriptingInterface.h"
|
||||
|
@ -28,27 +31,43 @@ FileScriptingInterface::FileScriptingInterface(QObject* parent) : QObject(parent
|
|||
// nothing for now
|
||||
}
|
||||
|
||||
void FileScriptingInterface::downloadZip() {
|
||||
QUrl url(*parent);
|
||||
void FileScriptingInterface::runUnzip(QString path, QString importURL) {
|
||||
downloadZip(path, importURL);
|
||||
|
||||
}
|
||||
|
||||
QString FileScriptingInterface::getTempDir() {
|
||||
QTemporaryDir dir;
|
||||
dir.setAutoRemove(false);
|
||||
return dir.path();
|
||||
// remember I must do something to delete this temp dir later
|
||||
}
|
||||
|
||||
void FileScriptingInterface::downloadZip(QString path, const QString link) {
|
||||
QUrl url = QUrl(link);
|
||||
auto request = ResourceManager::createResourceRequest(nullptr, url);
|
||||
connect(request, &ResourceRequest::finished, this, &FileScriptingInterface::unzipFile);
|
||||
connect(request, &ResourceRequest::finished, this, [this, path]{
|
||||
unzipFile(path);
|
||||
});
|
||||
request->send();
|
||||
}
|
||||
|
||||
// clement's help :D
|
||||
void FileScriptingInterface::unzipFile() {
|
||||
void FileScriptingInterface::unzipFile(QString path) {
|
||||
ResourceRequest* request = qobject_cast<ResourceRequest*>(sender());
|
||||
QUrl url = request->getUrl();
|
||||
|
||||
if (request->getResult() == ResourceRequest::Success) {
|
||||
qDebug() << "Zip file was downloaded";
|
||||
QTemporaryDir dir;
|
||||
QDir dir(path);
|
||||
QByteArray compressedFileContent = request->getData(); // <-- Downloaded file is in here
|
||||
QBuffer buffer(&compressedFileContent);
|
||||
buffer.open(QIODevice::ReadOnly);
|
||||
|
||||
//QString zipFileName = QFile::decodeName(compressedFileContent);
|
||||
QString dirName = dir.path();
|
||||
JlCompress::extractDir(buffer, dirName);
|
||||
qDebug() << "Zip directory is stored at: " + dirName;
|
||||
JlCompress::extractDir(&buffer, dirName);
|
||||
|
||||
QFileInfoList files = dir.entryInfoList();
|
||||
foreach (QFileInfo file, files) {
|
||||
|
@ -67,7 +86,7 @@ void FileScriptingInterface::unzipFile() {
|
|||
}*/
|
||||
|
||||
|
||||
//QString zipFileName = QFile::decodeName(&compressedFileContent);
|
||||
|
||||
|
||||
//QFile file =
|
||||
//need to convert this byte array to a file
|
||||
|
@ -100,10 +119,10 @@ void FileScriptingInterface::recursiveFileScan(QFileInfo file, QString* dirName)
|
|||
QFileInfoList files;
|
||||
|
||||
if (file.fileName().contains(".zip")) {
|
||||
JlCompress::extractDir(file);
|
||||
JlCompress::extractDir(file.fileName());
|
||||
qDebug() << "Extracting archive: " + file.fileName();
|
||||
}
|
||||
files = file.entryInfoList();
|
||||
files = file.dir().entryInfoList();
|
||||
|
||||
/*if (files.empty()) {
|
||||
files = JlCompress::getFileList(file.fileName());
|
||||
|
@ -111,7 +130,7 @@ void FileScriptingInterface::recursiveFileScan(QFileInfo file, QString* dirName)
|
|||
|
||||
foreach (QFileInfo file, files) {
|
||||
qDebug() << "Looking into file: " + file.fileName();
|
||||
recursiveFileScan(file, &dirName);
|
||||
recursiveFileScan(file, dirName);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
//
|
||||
// FileScriptingInterface.h
|
||||
// interface/src/scripting
|
||||
// libraries/script-engine/src
|
||||
//
|
||||
// Created by Elisa Lupin-Jimenez on 6/28/16.
|
||||
// Copyright 2016 High Fidelity, Inc.
|
||||
|
@ -14,23 +14,26 @@
|
|||
|
||||
#include <QtCore/QObject>
|
||||
#include <QFileInfo>
|
||||
#include <QString>
|
||||
|
||||
class FileScriptingInterface : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
FileScriptingInterface(QObject* parent);
|
||||
void runUnzip(QString path, QString importURL);
|
||||
QString getTempDir();
|
||||
|
||||
public slots:
|
||||
void unzipFile();
|
||||
void unzipFile(QString path);
|
||||
|
||||
signals:
|
||||
void downloadZip();
|
||||
|
||||
private:
|
||||
//void downloadZip();
|
||||
//void unzipFile();
|
||||
void recursiveFileScan(QFileInfo file, QString* dirName);
|
||||
void downloadZip(QString path, const QString link);
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -1208,10 +1208,13 @@ Window.svoImportRequested.connect(importSVO);
|
|||
// attempt to start ZIP download project
|
||||
function importZIP(importURL) {
|
||||
print("Import ZIP requested: " + importURL);
|
||||
if (!Entities.canAdjustLocks()) {
|
||||
/*if (!Entities.canAdjustLocks()) {
|
||||
Window.alert(INSUFFICIENT_PERMISSIONS_IMPORT_ERROR_MSG);
|
||||
return;
|
||||
}
|
||||
}*/
|
||||
var path = File.getTempDir();
|
||||
print("Temporary path to zip: " + path);
|
||||
File.runUnzip(path, importURL);
|
||||
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue