Skip to content

Commit

Permalink
Restore xml write
Browse files Browse the repository at this point in the history
rodlie committed Jan 15, 2024
1 parent 8f9a868 commit ce273ab
Showing 9 changed files with 33 additions and 59 deletions.
8 changes: 4 additions & 4 deletions src/app/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -27,7 +27,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/../cmake
include(friction-version)
include(friction-meta)
include(friction-common)
#include(friction-quazip)
include(friction-quazip)
include(friction-ffmpeg)

add_definitions(-DPROJECT_VERSION="${PROJECT_VERSION}")
@@ -116,7 +116,7 @@ if(UNIX AND NOT APPLE)
endif()

include_directories(
#${QUAZIP_INCLUDE_DIRS}
${QUAZIP_INCLUDE_DIRS}
${QSCINTILLA_INCLUDE_DIRS}
${FFMPEG_INCLUDE_DIRS}
${CMAKE_CURRENT_SOURCE_DIR}/../core
@@ -448,7 +448,7 @@ target_link_directories(
PRIVATE
${FFMPEG_LIBRARIES_DIRS}
${QSCINTILLA_LIBRARIES_DIRS}
#${QUAZIP_LIBRARIES_DIRS}
${QUAZIP_LIBRARIES_DIRS}
${CMAKE_CURRENT_BINARY_DIR}/../engine/skia
)

@@ -472,7 +472,7 @@ target_link_libraries(
PRIVATE
${PROJECT_NAME}core
${QT_LIBRARIES}
#${QUAZIP_LIBRARIES}
${QUAZIP_LIBRARIES}
${QSCINTILLA_LIBRARIES}
${FFMPEG_LIBRARIES}
${SKIA_LIBRARIES}
10 changes: 5 additions & 5 deletions src/app/GUI/mainwindow.cpp
Original file line number Diff line number Diff line change
@@ -147,7 +147,7 @@ MainWindow::MainWindow(Document& document,
Q_ASSERT(!sInstance);
sInstance = this;

//ImportHandler::sInstance->addImporter<eXevImporter>(); // not supported yet
ImportHandler::sInstance->addImporter<eXevImporter>(); // not supported yet
ImportHandler::sInstance->addImporter<evImporter>();
ImportHandler::sInstance->addImporter<eSvgImporter>();
//ImportHandler::sInstance->addImporter<eOraImporter>(); // removed
@@ -2215,11 +2215,11 @@ void MainWindow::saveFile(const QString& path,
const QString suffix = fi.suffix();
if (suffix == "friction" || suffix == "ev") {
saveToFile(path);
} /*else if (suffix == "xev") {
} else if (suffix == "xev") {
saveToFileXEV(path);
const auto& inst = DialogsInterface::instance();
inst.displayMessageToUser("Please note that the XEV format is still in the testing phase.");
}*/ else { RuntimeThrow("Unrecognized file extension " + suffix); }
} else { RuntimeThrow("Unrecognized file extension " + suffix); }
if (setPath) mDocument.setPath(path);
setFileChangedSinceSaving(false);
updateLastSaveDir(path);
@@ -2239,13 +2239,13 @@ void MainWindow::saveFileAs(const bool setPath)

const QString title = tr("Save File", "SaveDialog_Title");
const QString fileType = tr("Friction Files %1", "SaveDialog_FileType");
QString saveAs = eDialogs::saveFile(title, defPath, fileType.arg("(*.friction)"));
QString saveAs = eDialogs::saveFile(title, defPath, fileType.arg("(*.friction *.xev)"));
enableEventFilter();
if (!saveAs.isEmpty()) {
//const bool isXEV = saveAs.right(4) == ".xev";
//if (!isXEV && saveAs.right(3) != ".ev") { saveAs += ".ev"; }
QString suffix = QString::fromUtf8(".friction");
if (!saveAs.endsWith(suffix)) { saveAs.append(suffix); }
if (!saveAs.endsWith(suffix) && !saveAs.endsWith(".xev")) { saveAs.append(suffix); }
saveFile(saveAs, setPath);
}
}
3 changes: 1 addition & 2 deletions src/app/eimporters.h
Original file line number Diff line number Diff line change
@@ -32,8 +32,7 @@
class eXevImporter : public eImporter {
public:
bool supports(const QFileInfo& fileInfo) const {
Q_UNUSED(fileInfo)
return false; //fileInfo.suffix() == "xev";
return fileInfo.suffix() == "xev";
}

qsptr<BoundingBox> import(const QFileInfo& fileInfo,
8 changes: 4 additions & 4 deletions src/core/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -25,7 +25,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/../cmake
include(friction-version)
include(friction-meta)
include(friction-common)
#include(friction-quazip)
include(friction-quazip)
include(friction-ffmpeg)

message("-- ffmpeg include: ${FFMPEG_INCLUDE_DIRS}")
@@ -39,7 +39,7 @@ add_definitions(-DPROJECT_BRANCH="${GIT_BRANCH}")
add_definitions(-DCORE_LIBRARY)

include_directories(
#${QUAZIP_INCLUDE_DIRS}
${QUAZIP_INCLUDE_DIRS}
${FFMPEG_INCLUDE_DIRS}
${CMAKE_CURRENT_SOURCE_DIR}/../engine/skia
)
@@ -702,14 +702,14 @@ target_link_directories(
PRIVATE
${FFMPEG_LIBRARIES_DIRS}
${CMAKE_CURRENT_BINARY_DIR}/../engine/skia
#${QUAZIP_LIBRARIES_DIRS}
${QUAZIP_LIBRARIES_DIRS}
)

target_link_libraries(
${PROJECT_NAME}
PRIVATE
${QT_LIBRARIES}
#${QUAZIP_LIBRARIES}
${QUAZIP_LIBRARIES}
${FFMPEG_LIBRARIES}
${SKIA_LIBRARIES}
)
20 changes: 6 additions & 14 deletions src/core/zipfileloader.cpp
Original file line number Diff line number Diff line change
@@ -28,20 +28,15 @@
ZipFileLoader::ZipFileLoader() {}

void ZipFileLoader::setZipPath(const QString &path) {
Q_UNUSED(path)
RuntimeThrow("XEV not supported");
/*mDir.setPath(QFileInfo(path).path());
mDir.setPath(QFileInfo(path).path());
mZip.setZipName(path);
if(!mZip.open(QuaZip::mdUnzip))
RuntimeThrow("Could not open " + path);
mFile.setZip(&mZip);*/
mFile.setZip(&mZip);
}

void ZipFileLoader::process(const QString &file, const Processor &func) {
Q_UNUSED(file)
Q_UNUSED(func)
RuntimeThrow("XEV not supported");
/*if(!mZip.setCurrentFile(file))
if(!mZip.setCurrentFile(file))
RuntimeThrow("No " + file + " found in " + mZip.getZipName());
if(!mFile.open(QIODevice::ReadOnly))
RuntimeThrow("Could not open " + file + " from " + mZip.getZipName());
@@ -51,17 +46,14 @@ void ZipFileLoader::process(const QString &file, const Processor &func) {
mFile.close();
RuntimeThrow("Could not parse " + file + " from " + mZip.getZipName());
}
mFile.close();*/
mFile.close();
}

void ZipFileLoader::processText(const QString& file, const TextProcessor& func) {
Q_UNUSED(file)
Q_UNUSED(func)
RuntimeThrow("XEV not supported");
/*process(file, [&](QIODevice* const src) {
process(file, [&](QIODevice* const src) {
QTextStream stream(src);
func(stream);
});*/
});
}

QString ZipFileLoader::relPathToAbsPath(const QString& relPath) const {
9 changes: 3 additions & 6 deletions src/core/zipfileloader.h
Original file line number Diff line number Diff line change
@@ -26,10 +26,7 @@
#ifndef ZIPFILELOADER_H
#define ZIPFILELOADER_H

// since XEV is experimental we ignore it for now
// disable enough stuff to avoid quazip depend

//#include <quazipfile.h>
#include <quazipfile.h>

#include <QDir>

@@ -49,8 +46,8 @@ class CORE_EXPORT ZipFileLoader {
QString relPathToAbsPath(const QString& relPath) const;
private:
QDir mDir;
//QuaZip mZip;
//QuaZipFile mFile;
QuaZip mZip;
QuaZipFile mFile;
};

#endif // ZIPFILELOADER_H
24 changes: 6 additions & 18 deletions src/core/zipfilesaver.cpp
Original file line number Diff line number Diff line change
@@ -28,30 +28,22 @@
ZipFileSaver::ZipFileSaver() {}

void ZipFileSaver::setZipPath(const QString &path) {
Q_UNUSED(path)
RuntimeThrow("XEV not supported");
/*mZip.setZipName(path);
mZip.setZipName(path);
if(!mZip.open(QuaZip::mdCreate))
RuntimeThrow("Could not create " + path);
mFile.setZip(&mZip);*/
mFile.setZip(&mZip);
}

void ZipFileSaver::setIoDevice(QIODevice * const src) {
Q_UNUSED(src)
RuntimeThrow("XEV not supported");
/*mZip.setIoDevice(src);
mZip.setIoDevice(src);
if(!mZip.open(QuaZip::mdCreate))
RuntimeThrow("Could not open QIODevice");
mFile.setZip(&mZip);*/
mFile.setZip(&mZip);
}

void ZipFileSaver::process(const QString &file, const Processor &func,
const bool compress) {
Q_UNUSED(file)
Q_UNUSED(func)
Q_UNUSED(compress)
RuntimeThrow("XEV not supported");
/*if(!mFile.open(QIODevice::WriteOnly, QuaZipNewInfo(file),
if(!mFile.open(QIODevice::WriteOnly, QuaZipNewInfo(file),
NULL, compress ? Z_DEFLATED : 0)) {
RuntimeThrow("Could not open " + file + " in " + mZip.getZipName());
}
@@ -61,15 +53,11 @@ void ZipFileSaver::process(const QString &file, const Processor &func,
mFile.close();
RuntimeThrow("Could not write " + file + " to " + mZip.getZipName());
}
mFile.close();*/
mFile.close();
}

void ZipFileSaver::processText(const QString& file, const TextProcessor& func,
const bool compress) {
Q_UNUSED(file)
Q_UNUSED(func)
Q_UNUSED(compress)
RuntimeThrow("XEV not supported");
process(file, [&func](QIODevice* const dst) {
QTextStream stream(dst);
func(stream);
9 changes: 3 additions & 6 deletions src/core/zipfilesaver.h
Original file line number Diff line number Diff line change
@@ -26,10 +26,7 @@
#ifndef ZIPFILESAVER_H
#define ZIPFILESAVER_H

// since XEV is experimental we ignore it for now
// disable enough stuff to avoid quazip depend

//#include <quazipfile.h>
#include <quazipfile.h>

#include "exceptions.h"

@@ -47,8 +44,8 @@ class CORE_EXPORT ZipFileSaver {
void processText(const QString& file, const TextProcessor& func,
const bool compress = true);
private:
//QuaZip mZip;
//QuaZipFile mFile;
QuaZip mZip;
QuaZipFile mFile;
};

#endif // ZIPFILESAVER_H
1 change: 1 addition & 0 deletions src/scripts/build_ci.sh
Original file line number Diff line number Diff line change
@@ -52,6 +52,7 @@ qtdeclarative5-dev-tools \
qtdeclarative5-dev \
qtmultimedia5-dev \
qttools5-dev-tools \
libquazip5-dev \
libexpat1-dev \
libfreetype-dev \
libjpeg-turbo8-dev \

0 comments on commit ce273ab

Please sign in to comment.