refs #618, allow to modify and validate data when loaded for a view

* allows to reject data considered incorrect
* data can be modified and adjusted after loading before displaying
This commit is contained in:
Klaus Basan
2016-03-24 04:59:09 +01:00
parent 353d96514e
commit d509c6b0b5
4 changed files with 65 additions and 10 deletions

View File

@@ -289,6 +289,19 @@ namespace BlackGui
CViewWithDbObjects::customMenu(menu);
}
CStatusMessage CAircraftModelView::validateLoadedData(const CAircraftModelList &models) const
{
static const CStatusMessage ok(this, CStatusMessage::SeverityInfo, "model validation passed", true);
if (models.isEmpty()) { return CStatusMessage(this, CStatusMessage::SeverityInfo, "no data", true); }
if (this->m_validation == AllowOnlySingeSimulator)
{
const CSimulatorInfo sim = models.simulatorsSupported();
if (sim.isSingleSimulator()) { return ok; }
return CStatusMessage(this, CStatusMessage::SeverityError, "data need to be from one simulator");
}
return CViewWithDbObjects::validateLoadedData(models);
}
void CAircraftModelView::ps_toggleHighlightStashedModels()
{
bool h = derivedModel()->highlightModelStrings();