Qt: fix BatchCreatePPUCaches cancel

This commit is contained in:
Megamouse 2021-07-19 23:43:05 +02:00
parent f83a877331
commit 954d83b6a0

View file

@ -1632,6 +1632,7 @@ void game_list_frame::BatchCreatePPUCaches()
pdlg->setAutoClose(false); pdlg->setAutoClose(false);
pdlg->setAutoReset(false); pdlg->setAutoReset(false);
pdlg->show(); pdlg->show();
QApplication::processEvents();
u32 created = 0; u32 created = 0;
@ -1644,7 +1645,6 @@ void game_list_frame::BatchCreatePPUCaches()
{ {
if (pdlg->wasCanceled()) if (pdlg->wasCanceled())
{ {
game_list_log.notice("PPU Cache Batch Creation was canceled");
break; break;
} }
QApplication::processEvents(); QApplication::processEvents();
@ -1653,12 +1653,28 @@ void game_list_frame::BatchCreatePPUCaches()
{ {
while (!Emu.IsStopped()) while (!Emu.IsStopped())
{ {
if (pdlg->wasCanceled())
{
break;
}
QApplication::processEvents(); QApplication::processEvents();
} }
pdlg->SetValue(++created); pdlg->SetValue(++created);
} }
} }
if (pdlg->wasCanceled())
{
game_list_log.notice("PPU Cache Batch Creation was canceled");
if (!Emu.IsStopped())
{
QApplication::processEvents();
Emu.Stop();
}
return;
}
pdlg->setLabelText(tr("Created PPU Caches for %n title(s)", "", created)); pdlg->setLabelText(tr("Created PPU Caches for %n title(s)", "", created));
pdlg->setCancelButtonText(tr("OK")); pdlg->setCancelButtonText(tr("OK"));
QApplication::beep(); QApplication::beep();