refactor to remove code duplication
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
This commit is contained in:
@@ -73,7 +73,7 @@ ExportInstanceDialog::ExportInstanceDialog(InstancePtr instance, QWidget* parent
|
||||
m_proxyModel->ignoreFilesWithPath().insert(FS::PathCombine(prefix, path));
|
||||
}
|
||||
m_proxyModel->ignoreFilesWithName().append({ ".DS_Store", "thumbs.db", "Thumbs.db" });
|
||||
loadPackIgnore();
|
||||
m_proxyModel->loadBlockedPathsFromFile(ignoreFileName());
|
||||
|
||||
m_ui->treeView->setModel(m_proxyModel);
|
||||
m_ui->treeView->setRootIndex(m_proxyModel->mapFromSource(model->index(root)));
|
||||
@@ -164,7 +164,7 @@ void ExportInstanceDialog::doExport()
|
||||
|
||||
void ExportInstanceDialog::done(int result)
|
||||
{
|
||||
savePackIgnore();
|
||||
m_proxyModel->saveBlockedPathsToFile(ignoreFileName());
|
||||
if (result == QDialog::Accepted) {
|
||||
doExport();
|
||||
return;
|
||||
@@ -191,30 +191,3 @@ QString ExportInstanceDialog::ignoreFileName()
|
||||
{
|
||||
return FS::PathCombine(m_instance->instanceRoot(), ".packignore");
|
||||
}
|
||||
|
||||
void ExportInstanceDialog::loadPackIgnore()
|
||||
{
|
||||
auto filename = ignoreFileName();
|
||||
QFile ignoreFile(filename);
|
||||
if (!ignoreFile.open(QIODevice::ReadOnly)) {
|
||||
return;
|
||||
}
|
||||
auto ignoreData = ignoreFile.readAll();
|
||||
auto string = QString::fromUtf8(ignoreData);
|
||||
#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
|
||||
m_proxyModel->setBlockedPaths(string.split('\n', Qt::SkipEmptyParts));
|
||||
#else
|
||||
m_proxyModel->setBlockedPaths(string.split('\n', QString::SkipEmptyParts));
|
||||
#endif
|
||||
}
|
||||
|
||||
void ExportInstanceDialog::savePackIgnore()
|
||||
{
|
||||
auto ignoreData = m_proxyModel->blockedPaths().toStringList().join('\n').toUtf8();
|
||||
auto filename = ignoreFileName();
|
||||
try {
|
||||
FS::write(filename, ignoreData);
|
||||
} catch (const Exception& e) {
|
||||
qWarning() << e.cause();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -60,8 +60,6 @@ class ExportInstanceDialog : public QDialog {
|
||||
|
||||
private:
|
||||
void doExport();
|
||||
void loadPackIgnore();
|
||||
void savePackIgnore();
|
||||
QString ignoreFileName();
|
||||
|
||||
private:
|
||||
|
||||
@@ -79,7 +79,7 @@ ExportPackDialog::ExportPackDialog(InstancePtr instance, QWidget* parent, ModPla
|
||||
}
|
||||
m_proxy->ignoreFilesWithName().append({ ".DS_Store", "thumbs.db", "Thumbs.db" });
|
||||
m_proxy->setSourceModel(model);
|
||||
loadPackIgnore();
|
||||
m_proxy->loadBlockedPathsFromFile(ignoreFileName());
|
||||
|
||||
const QDir::Filters filter(QDir::AllEntries | QDir::NoDotAndDotDot | QDir::AllDirs | QDir::Hidden);
|
||||
|
||||
@@ -112,7 +112,7 @@ ExportPackDialog::~ExportPackDialog()
|
||||
|
||||
void ExportPackDialog::done(int result)
|
||||
{
|
||||
savePackIgnore();
|
||||
m_proxy->saveBlockedPathsToFile(ignoreFileName());
|
||||
auto settings = m_instance->settings();
|
||||
settings->set("ExportName", m_ui->name->text());
|
||||
settings->set("ExportVersion", m_ui->version->text());
|
||||
@@ -180,30 +180,3 @@ QString ExportPackDialog::ignoreFileName()
|
||||
{
|
||||
return FS::PathCombine(m_instance->instanceRoot(), ".packignore");
|
||||
}
|
||||
|
||||
void ExportPackDialog::loadPackIgnore()
|
||||
{
|
||||
auto filename = ignoreFileName();
|
||||
QFile ignoreFile(filename);
|
||||
if (!ignoreFile.open(QIODevice::ReadOnly)) {
|
||||
return;
|
||||
}
|
||||
auto ignoreData = ignoreFile.readAll();
|
||||
auto string = QString::fromUtf8(ignoreData);
|
||||
#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
|
||||
m_proxy->setBlockedPaths(string.split('\n', Qt::SkipEmptyParts));
|
||||
#else
|
||||
m_proxy->setBlockedPaths(string.split('\n', QString::SkipEmptyParts));
|
||||
#endif
|
||||
}
|
||||
|
||||
void ExportPackDialog::savePackIgnore()
|
||||
{
|
||||
auto ignoreData = m_proxy->blockedPaths().toStringList().join('\n').toUtf8();
|
||||
auto filename = ignoreFileName();
|
||||
try {
|
||||
FS::write(filename, ignoreData);
|
||||
} catch (const Exception& e) {
|
||||
qWarning() << e.cause();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,8 +41,6 @@ class ExportPackDialog : public QDialog {
|
||||
void validate();
|
||||
|
||||
private:
|
||||
void loadPackIgnore();
|
||||
void savePackIgnore();
|
||||
QString ignoreFileName();
|
||||
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user