mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-01 21:58:48 +00:00
Qt: Give better error messages when Wii save importing fails.
This commit is contained in:
parent
d9c686db30
commit
2932b5f8cd
4 changed files with 63 additions and 31 deletions
|
@ -1066,19 +1066,39 @@ void MenuBar::ImportWiiSave()
|
|||
if (file.isEmpty())
|
||||
return;
|
||||
|
||||
bool cancelled = false;
|
||||
auto can_overwrite = [&] {
|
||||
bool yes = ModalMessageBox::question(
|
||||
this, tr("Save Import"),
|
||||
tr("Save data for this title already exists in the NAND. Consider backing up "
|
||||
"the current data before overwriting.\nOverwrite now?")) == QMessageBox::Yes;
|
||||
cancelled = !yes;
|
||||
return yes;
|
||||
return ModalMessageBox::question(
|
||||
this, tr("Save Import"),
|
||||
tr("Save data for this title already exists in the NAND. Consider backing up "
|
||||
"the current data before overwriting.\nOverwrite now?")) == QMessageBox::Yes;
|
||||
};
|
||||
if (WiiSave::Import(file.toStdString(), can_overwrite))
|
||||
ModalMessageBox::information(this, tr("Save Import"), tr("Successfully imported save files."));
|
||||
else if (!cancelled)
|
||||
ModalMessageBox::critical(this, tr("Save Import"), tr("Failed to import save files."));
|
||||
|
||||
const auto result = WiiSave::Import(file.toStdString(), can_overwrite);
|
||||
switch (result)
|
||||
{
|
||||
case WiiSave::CopyResult::Success:
|
||||
ModalMessageBox::information(this, tr("Save Import"), tr("Successfully imported save file."));
|
||||
break;
|
||||
case WiiSave::CopyResult::CorruptedSource:
|
||||
ModalMessageBox::critical(this, tr("Save Import"),
|
||||
tr("Failed to import save file. The given file appears to be "
|
||||
"corrupted or is not a valid Wii save."));
|
||||
break;
|
||||
case WiiSave::CopyResult::TitleMissing:
|
||||
ModalMessageBox::critical(
|
||||
this, tr("Save Import"),
|
||||
tr("Failed to import save file. Please launch the game once, then try again."));
|
||||
break;
|
||||
case WiiSave::CopyResult::Cancelled:
|
||||
break;
|
||||
default:
|
||||
ModalMessageBox::critical(
|
||||
this, tr("Save Import"),
|
||||
tr("Failed to import save file. Your NAND may be corrupt, or something is preventing "
|
||||
"access to files within it. Try repairing your NAND (Tools -> Manage NAND -> Check "
|
||||
"NAND...), then import the save again."));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void MenuBar::ExportWiiSaves()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue