mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-25 10:15:43 +08:00
Ref T252, use overlay messages for model loading messages
This commit is contained in:
@@ -38,7 +38,7 @@ namespace BlackGui
|
|||||||
namespace Components
|
namespace Components
|
||||||
{
|
{
|
||||||
CDbOwnModelsComponent::CDbOwnModelsComponent(QWidget *parent) :
|
CDbOwnModelsComponent::CDbOwnModelsComponent(QWidget *parent) :
|
||||||
QFrame(parent),
|
COverlayMessagesFrame(parent),
|
||||||
ui(new Ui::CDbOwnModelsComponent)
|
ui(new Ui::CDbOwnModelsComponent)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
@@ -457,10 +457,10 @@ namespace BlackGui
|
|||||||
m_modelLoader->startLoading(mode, static_cast<int (*)(CAircraftModelList &, bool)>(&CDatabaseUtils::consolidateModelsWithDbData), modelDirectories);
|
m_modelLoader->startLoading(mode, static_cast<int (*)(CAircraftModelList &, bool)>(&CDatabaseUtils::consolidateModelsWithDbData), modelDirectories);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CDbOwnModelsComponent::onOwnModelsLoadingFinished(const CStatusMessage &status, const CSimulatorInfo &simulator, IAircraftModelLoader::LoadFinishedInfo info)
|
void CDbOwnModelsComponent::onOwnModelsLoadingFinished(const CStatusMessageList &statusMessages, const CSimulatorInfo &simulator, IAircraftModelLoader::LoadFinishedInfo info)
|
||||||
{
|
{
|
||||||
Q_ASSERT_X(simulator.isSingleSimulator(), Q_FUNC_INFO, "Expect single simulator");
|
Q_ASSERT_X(simulator.isSingleSimulator(), Q_FUNC_INFO, "Expect single simulator");
|
||||||
if (status.isSuccess() && m_modelLoader)
|
if (statusMessages.isSuccess() && m_modelLoader)
|
||||||
{
|
{
|
||||||
const CAircraftModelList models(m_modelLoader->getAircraftModels());
|
const CAircraftModelList models(m_modelLoader->getAircraftModels());
|
||||||
const int modelsLoaded = models.size();
|
const int modelsLoaded = models.size();
|
||||||
@@ -474,7 +474,11 @@ namespace BlackGui
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
ui->tvp_OwnAircraftModels->clear();
|
ui->tvp_OwnAircraftModels->clear();
|
||||||
CLogMessage(this).error("Loading of models failed, simulator '%1', details: %2") << simulator.toQString() << status.getMessage();
|
CLogMessage(this).error("Loading of models failed, simulator '%1'") << simulator.toQString();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (statusMessages.hasWarningOrErrorMessages()) {
|
||||||
|
this->showOverlayMessages(statusMessages);
|
||||||
}
|
}
|
||||||
|
|
||||||
// cache loads may occur in background, do not adjust UI settings
|
// cache loads may occur in background, do not adjust UI settings
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
#define BLACKGUI_COMPONENTS_DBOWNMODELSCOMPONENT_H
|
#define BLACKGUI_COMPONENTS_DBOWNMODELSCOMPONENT_H
|
||||||
|
|
||||||
#include "blackgui/menus/menudelegate.h"
|
#include "blackgui/menus/menudelegate.h"
|
||||||
|
#include "blackgui/overlaymessagesframe.h"
|
||||||
#include "blackmisc/datacache.h"
|
#include "blackmisc/datacache.h"
|
||||||
#include "blackmisc/simulation/aircraftmodel.h"
|
#include "blackmisc/simulation/aircraftmodel.h"
|
||||||
#include "blackmisc/simulation/aircraftmodellist.h"
|
#include "blackmisc/simulation/aircraftmodellist.h"
|
||||||
@@ -44,7 +45,7 @@ namespace BlackGui
|
|||||||
* Handling of own models on disk (the models installed for the simulator)
|
* Handling of own models on disk (the models installed for the simulator)
|
||||||
*/
|
*/
|
||||||
class CDbOwnModelsComponent :
|
class CDbOwnModelsComponent :
|
||||||
public QFrame,
|
public COverlayMessagesFrame,
|
||||||
public BlackMisc::Simulation::IModelsSetable,
|
public BlackMisc::Simulation::IModelsSetable,
|
||||||
public BlackMisc::Simulation::IModelsUpdatable,
|
public BlackMisc::Simulation::IModelsUpdatable,
|
||||||
public BlackMisc::Simulation::IModelsPerSimulatorSetable,
|
public BlackMisc::Simulation::IModelsPerSimulatorSetable,
|
||||||
@@ -131,7 +132,7 @@ namespace BlackGui
|
|||||||
void loadInstalledModels(const BlackMisc::Simulation::CSimulatorInfo &simulator, BlackMisc::Simulation::IAircraftModelLoader::LoadMode mode, const QStringList &modelDirectories = {});
|
void loadInstalledModels(const BlackMisc::Simulation::CSimulatorInfo &simulator, BlackMisc::Simulation::IAircraftModelLoader::LoadMode mode, const QStringList &modelDirectories = {});
|
||||||
|
|
||||||
//! Model loading finished
|
//! Model loading finished
|
||||||
void onOwnModelsLoadingFinished(const BlackMisc::CStatusMessage &status, const BlackMisc::Simulation::CSimulatorInfo &simulator, BlackMisc::Simulation::IAircraftModelLoader::LoadFinishedInfo info);
|
void onOwnModelsLoadingFinished(const BlackMisc::CStatusMessageList &statusMessages, const BlackMisc::Simulation::CSimulatorInfo &simulator, BlackMisc::Simulation::IAircraftModelLoader::LoadFinishedInfo info);
|
||||||
|
|
||||||
//! Request simulator models
|
//! Request simulator models
|
||||||
void requestSimulatorModels(const BlackMisc::Simulation::CSimulatorInfo &simulator, BlackMisc::Simulation::IAircraftModelLoader::LoadMode mode, const QStringList &modelDirectories = {});
|
void requestSimulatorModels(const BlackMisc::Simulation::CSimulatorInfo &simulator, BlackMisc::Simulation::IAircraftModelLoader::LoadMode mode, const QStringList &modelDirectories = {});
|
||||||
|
|||||||
Reference in New Issue
Block a user