mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-30 11:55:35 +08:00
Ref T660, add simulator directory to model view for validation
This commit is contained in:
committed by
Mat Sutcliffe
parent
f59b52bd6d
commit
9a384ebc54
@@ -30,16 +30,17 @@ namespace BlackGui
|
||||
|
||||
QPushButton *validateButton = new QPushButton("Validate", ui->bb_ValidationDialog);
|
||||
ui->bb_ValidationDialog->addButton(validateButton, QDialogButtonBox::ActionRole);
|
||||
connect(validateButton, &QPushButton::released, this, &CAircraftModelValidationDialog::validate);
|
||||
connect(validateButton, &QPushButton::released, this, &CAircraftModelValidationDialog::validate, Qt::QueuedConnection);
|
||||
}
|
||||
|
||||
CAircraftModelValidationDialog::~CAircraftModelValidationDialog()
|
||||
{ }
|
||||
|
||||
void CAircraftModelValidationDialog::setModels(const CAircraftModelList &models, const CSimulatorInfo &simulator)
|
||||
void CAircraftModelValidationDialog::setModels(const CAircraftModelList &models, const CSimulatorInfo &simulator, const QString &simulatorDir)
|
||||
{
|
||||
m_models = models;
|
||||
m_simulator = simulator;
|
||||
m_models = models;
|
||||
m_simulator = simulator;
|
||||
m_simulatorDir = simulatorDir;
|
||||
}
|
||||
|
||||
void CAircraftModelValidationDialog::triggerValidation(int delayMs)
|
||||
@@ -63,7 +64,7 @@ namespace BlackGui
|
||||
const bool ignoreEmpty = false;
|
||||
const int maxFailedFiles = 25;
|
||||
bool wasStopped = false;
|
||||
const CStatusMessageList msgs = CAircraftModelUtilities::validateModelFiles(m_simulator, m_models, valid, invalid, ignoreEmpty, maxFailedFiles, wasStopped, "");
|
||||
const CStatusMessageList msgs = CAircraftModelUtilities::validateModelFiles(m_simulator, m_models, valid, invalid, ignoreEmpty, maxFailedFiles, wasStopped, m_simulatorDir);
|
||||
ui->comp_StatusMessage->clear();
|
||||
ui->comp_StatusMessage->setNoSorting(); // we use the pre-sorted list
|
||||
ui->comp_StatusMessage->appendStatusMessagesToList(msgs);
|
||||
|
||||
@@ -38,7 +38,9 @@ namespace BlackGui
|
||||
//! Models
|
||||
void setModels(
|
||||
const BlackMisc::Simulation::CAircraftModelList &models,
|
||||
const BlackMisc::Simulation::CSimulatorInfo &simulator);
|
||||
const BlackMisc::Simulation::CSimulatorInfo &simulator,
|
||||
const QString &simulatorDir
|
||||
);
|
||||
|
||||
//! Trigger a validation
|
||||
void triggerValidation(int delayMs = 2500);
|
||||
@@ -50,6 +52,7 @@ namespace BlackGui
|
||||
QScopedPointer<Ui::CAircraftModelValidationDialog> ui;
|
||||
BlackMisc::Simulation::CAircraftModelList m_models;
|
||||
BlackMisc::Simulation::CSimulatorInfo m_simulator { BlackMisc::Simulation::CSimulatorInfo::None };
|
||||
QString m_simulatorDir;
|
||||
};
|
||||
} // ns
|
||||
} // ns
|
||||
|
||||
@@ -209,6 +209,12 @@ namespace BlackGui
|
||||
return this->derivedModel()->highlightModels();
|
||||
}
|
||||
|
||||
void CAircraftModelView::setCorrespondingSimulator(const CSimulatorInfo &simulator, const QString &simDir)
|
||||
{
|
||||
m_correspondingSimulator = simulator;
|
||||
m_correspondingSimulatorDir = simDir;
|
||||
}
|
||||
|
||||
void CAircraftModelView::dropEvent(QDropEvent *event)
|
||||
{
|
||||
// moves from myself are ignored
|
||||
@@ -473,7 +479,7 @@ namespace BlackGui
|
||||
void CAircraftModelView::displayModelValidationDialog()
|
||||
{
|
||||
if (!m_fileValidationDialog) { m_fileValidationDialog = new CAircraftModelValidationDialog(this); }
|
||||
m_fileValidationDialog->setModels(this->selectedObjects(), m_correspondingSimulator);
|
||||
m_fileValidationDialog->setModels(this->selectedObjects(), m_correspondingSimulator, m_correspondingSimulatorDir);
|
||||
m_fileValidationDialog->triggerValidation(1000);
|
||||
m_fileValidationDialog->exec();
|
||||
}
|
||||
|
||||
@@ -114,7 +114,7 @@ namespace BlackGui
|
||||
|
||||
//! Corresponding simulator
|
||||
//! \remark used for validation or loading data will be restricted to simulator
|
||||
void setCorrespondingSimulator(const BlackMisc::Simulation::CSimulatorInfo &simulator) { m_correspondingSimulator = simulator; }
|
||||
void setCorrespondingSimulator(const BlackMisc::Simulation::CSimulatorInfo &simulator, const QString &simDir);
|
||||
|
||||
//! Enable the validation context menu
|
||||
void setValidationContextMenu(const bool enabled) { m_withValidationContextMenu = enabled; }
|
||||
@@ -175,6 +175,7 @@ namespace BlackGui
|
||||
CAircraftModelStatisticsDialog *m_statisticsDialog = nullptr;
|
||||
CAircraftModelValidationDialog *m_fileValidationDialog = nullptr;
|
||||
BlackMisc::Simulation::CSimulatorInfo m_correspondingSimulator; //!< validation, simulator required when loading
|
||||
QString m_correspondingSimulatorDir;
|
||||
};
|
||||
} // ns
|
||||
} // ns
|
||||
|
||||
Reference in New Issue
Block a user