mirror of
https://github.com/YACReader/yacreader
synced 2025-07-22 06:54:39 -04:00
QsLog
YACReader
YACReaderLibrary
comic_vine
db
qml
server
YACReaderLibrary.icns
YACReaderLibrary.pro
add_label_dialog.cpp
add_label_dialog.h
add_library_dialog.cpp
add_library_dialog.h
bundle_creator.cpp
bundle_creator.h
classic_comics_view.cpp
classic_comics_view.h
comic_files_manager.cpp
comic_files_manager.h
comic_flow.cpp
comic_flow.h
comic_flow_widget.cpp
comic_flow_widget.h
comics_remover.cpp
comics_remover.h
comics_view.cpp
comics_view.h
comics_view_transition.cpp
comics_view_transition.h
create_library_dialog.cpp
create_library_dialog.h
current_comic_view_helper.cpp
current_comic_view_helper.h
db_helper.cpp
db_helper.h
empty_container_info.cpp
empty_container_info.h
empty_folder_widget.cpp
empty_folder_widget.h
empty_label_widget.cpp
empty_label_widget.h
empty_reading_list_widget.cpp
empty_reading_list_widget.h
empty_special_list.cpp
empty_special_list.h
export_comics_info_dialog.cpp
export_comics_info_dialog.h
export_library_dialog.cpp
export_library_dialog.h
files.qrc
grid_comics_view.cpp
grid_comics_view.h
icon.ico
icon.rc
icon2.ico
icon3.ico
images.qrc
images_osx.qrc
images_win.qrc
import_comics_info_dialog.cpp
import_comics_info_dialog.h
import_library_dialog.cpp
import_library_dialog.h
import_widget.cpp
import_widget.h
info_comics_view.cpp
info_comics_view.h
library_creator.cpp
library_creator.h
library_window.cpp
library_window.h
main.cpp
no_libraries_widget.cpp
no_libraries_widget.h
no_search_results_widget.cpp
no_search_results_widget.h
options_dialog.cpp
options_dialog.h
package_manager.cpp
package_manager.h
properties_dialog.cpp
properties_dialog.h
qml.qrc
qml_osx.qrc
qml_win.qrc
rename_library_dialog.cpp
rename_library_dialog.h
server_config_dialog.cpp
server_config_dialog.h
yacreader_comic_info_helper.cpp
yacreader_comic_info_helper.h
yacreader_comics_selection_helper.cpp
yacreader_comics_selection_helper.h
yacreader_comics_views_manager.cpp
yacreader_comics_views_manager.h
yacreader_folders_view.cpp
yacreader_folders_view.h
yacreader_history_controller.cpp
yacreader_history_controller.h
yacreader_libraries.cpp
yacreader_libraries.h
yacreader_local_server.cpp
yacreader_local_server.h
yacreader_main_toolbar.cpp
yacreader_main_toolbar.h
yacreader_navigation_controller.cpp
yacreader_navigation_controller.h
yacreader_reading_lists_view.cpp
yacreader_reading_lists_view.h
yacreaderlibrary_de.ts
yacreaderlibrary_es.ts
yacreaderlibrary_fr.ts
yacreaderlibrary_nl.ts
yacreaderlibrary_pt.ts
yacreaderlibrary_ru.ts
yacreaderlibrary_source.ts
yacreaderlibrary_tr.ts
YACReaderLibraryServer
common
compressed_archive
custom_widgets
dependencies
files
images
release
shortcuts_management
tests
.gitattributes
.gitignore
CHANGELOG.md
COPYING.txt
INSTALL.md
README.txt
YACReader.1
YACReader.desktop
YACReader.pro
YACReader.svg
YACReaderLibrary.1
YACReaderLibrary.desktop
YACReaderLibrary.svg
background.png
cleanOSX.sh
compileOSX.sh
config.pri
icon.icns
mktarball.sh
releaseOSX.sh
56 lines
1.5 KiB
C++
56 lines
1.5 KiB
C++
#include "package_manager.h"
|
|
#include <QCoreApplication>
|
|
|
|
PackageManager::PackageManager()
|
|
:_7z(0)
|
|
{
|
|
|
|
}
|
|
|
|
void PackageManager::createPackage(const QString & libraryPath,const QString & dest)
|
|
{
|
|
QStringList attributes;
|
|
attributes << "a" << "-y" << "-ttar" << dest+".clc" << libraryPath ;
|
|
_7z = new QProcess();
|
|
connect(_7z,SIGNAL(error(QProcess::ProcessError)),this,SLOT(openingError(QProcess::ProcessError)));
|
|
connect(_7z,SIGNAL(finished(int,QProcess::ExitStatus)),this,SIGNAL(exported()));
|
|
#if defined Q_OS_UNIX && !defined Q_OS_MAC
|
|
_7z->start("7z",attributes); //TODO: use 7z.so
|
|
#else
|
|
_7z->start(QCoreApplication::applicationDirPath()+"/utils/7zip",attributes); //TODO: use 7z.dll
|
|
#endif
|
|
}
|
|
|
|
void PackageManager::extractPackage(const QString & packagePath,const QString & destDir)
|
|
{
|
|
QStringList attributes;
|
|
QString output = "-o";
|
|
output += destDir;
|
|
attributes << "x" << "-y" << output << packagePath;
|
|
_7z = new QProcess();
|
|
connect(_7z,SIGNAL(error(QProcess::ProcessError)),this,SLOT(openingError(QProcess::ProcessError)));
|
|
connect(_7z,SIGNAL(finished(int,QProcess::ExitStatus)),this,SIGNAL(imported()));
|
|
#if defined Q_OS_UNIX && !defined Q_OS_MAC
|
|
_7z->start("7z",attributes); //TODO: use 7z.so
|
|
#else
|
|
_7z->start(QCoreApplication::applicationDirPath()+"/utils/7zip",attributes); //TODO: use 7z.dll
|
|
#endif
|
|
}
|
|
|
|
void PackageManager::cancel()
|
|
{
|
|
if(_7z!=0)
|
|
{
|
|
_7z->disconnect();
|
|
_7z->kill();
|
|
if(creating)
|
|
{
|
|
//TODO remove dest+".clc"
|
|
}
|
|
else
|
|
{
|
|
//TODO fixed: is done by libraryWindow
|
|
}
|
|
}
|
|
}
|