refs #755, allow to refresh GUI parts during consolidation

This commit is contained in:
Klaus Basan
2016-09-03 22:55:43 +02:00
committed by Roland Winklmeier
parent 73d41d334b
commit c848d7ca61
3 changed files with 19 additions and 4 deletions

View File

@@ -76,6 +76,11 @@ namespace BlackCore
}
int CDatabaseUtils::consolidateModelsWithDbData(CAircraftModelList &models, bool force)
{
return CDatabaseUtils::consolidateModelsWithDbDataAllowsGuiRefresh(models, force, false);
}
int CDatabaseUtils::consolidateModelsWithDbDataAllowsGuiRefresh(CAircraftModelList &models, bool force, bool processEvents)
{
QTime timer;
timer.start();
@@ -83,10 +88,17 @@ namespace BlackCore
if (models.isEmpty()) { return c; }
for (CAircraftModel &model : models)
{
if (!force && model.hasValidDbKey()) { continue; }
if (!force && model.isLoadedFromDb()) { continue; }
bool modified = false;
model = CDatabaseUtils::consolidateModelWithDbData(model, force, &modified);
if (modified || model.hasValidDbKey()) { c++; }
if (modified || model.hasValidDbKey())
{
c++;
if (processEvents && c % 125 == 0)
{
sApp->processEventsFor(25);
}
}
}
CLogMessage().debug() << "Consolidated " << models.size() << " in " << timer.elapsed() << "ms";
return c;