From 67fb7e56d3a080844927d4d41764da1e9bb39795 Mon Sep 17 00:00:00 2001 From: Al12rs Date: Fri, 7 Sep 2018 22:04:03 +0200 Subject: Add option to create a Mod backup from the modlist context menu. --- src/mainwindow.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/mainwindow.cpp') diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 28d561b9..57988663 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -2409,6 +2409,16 @@ void MainWindow::reinstallMod_clicked() } } +void MainWindow::backupMod_clicked() +{ + ModInfo::Ptr modInfo = ModInfo::getByIndex(m_ContextRow); + QString backupDirectory = m_OrganizerCore.installationManager()->generateBackupName(modInfo->absolutePath()); + if (!copyDir(modInfo->absolutePath(), backupDirectory, false)) { + QMessageBox::information(this, tr("Failed"), + tr("Failed to create backup.")); + } + m_OrganizerCore.refreshModList(); +} void MainWindow::resumeDownload(int downloadIndex) { @@ -3626,6 +3636,8 @@ void MainWindow::on_modList_customContextMenuRequested(const QPoint &pos) menu->addAction(tr("Rename Mod..."), this, SLOT(renameMod_clicked())); menu->addAction(tr("Reinstall Mod"), this, SLOT(reinstallMod_clicked())); menu->addAction(tr("Remove Mod..."), this, SLOT(removeMod_clicked())); + menu->addAction(tr("Create Backup"), this, SLOT(backupMod_clicked())); + menu->addSeparator(); -- cgit v1.3.1