mirror of
https://github.com/OpenMW/openmw.git
synced 2025-03-28 21:06:40 +00:00
Merge branch 'launcher_navmesh_cache_progress' into 'master'
Fix navmesh cache progress bar jumps (#6499) Closes #6499 See merge request OpenMW/openmw!1485
This commit is contained in:
commit
307bc57cde
1 changed files with 11 additions and 4 deletions
|
@ -457,11 +457,18 @@ void Launcher::DataFilesPage::updateNavMeshProgress()
|
|||
QRegularExpressionMatch match = pattern.match(text);
|
||||
if (!match.hasMatch())
|
||||
return;
|
||||
int maximum = match.captured(2).toInt();
|
||||
int value = match.captured(1).toInt();
|
||||
const int maximum = match.captured(2).toInt();
|
||||
if (text.contains("cell"))
|
||||
maximum *= 100;
|
||||
ui.navMeshProgressBar->setMaximum(std::max(ui.navMeshProgressBar->maximum(), maximum));
|
||||
ui.navMeshProgressBar->setValue(match.captured(1).toInt());
|
||||
ui.navMeshProgressBar->setMaximum(maximum * 100);
|
||||
else if (maximum > ui.navMeshProgressBar->maximum())
|
||||
ui.navMeshProgressBar->setMaximum(maximum);
|
||||
else
|
||||
value += static_cast<int>(std::round(
|
||||
(ui.navMeshProgressBar->maximum() - maximum)
|
||||
* (static_cast<float>(value) / static_cast<float>(maximum))
|
||||
));
|
||||
ui.navMeshProgressBar->setValue(value);
|
||||
}
|
||||
|
||||
void Launcher::DataFilesPage::navMeshToolFinished(int exitCode, QProcess::ExitStatus exitStatus)
|
||||
|
|
Loading…
Reference in a new issue