Ref T335, adjusted consuming "slots" to use disabled flag if adding failed

This commit is contained in:
Klaus Basan
2018-09-12 16:32:02 +02:00
parent 409cc6c164
commit 6f6ec17c3d
8 changed files with 25 additions and 24 deletions

View File

@@ -108,7 +108,7 @@ namespace BlackCore
void modelMatchingCompleted(const BlackMisc::Simulation::CSimulatedAircraft &aircraft); void modelMatchingCompleted(const BlackMisc::Simulation::CSimulatedAircraft &aircraft);
//! Adding a remote aircraft failed //! Adding a remote aircraft failed
void addingRemoteModelFailed(const BlackMisc::Simulation::CSimulatedAircraft &aircraft, const BlackMisc::CStatusMessage &message); void addingRemoteModelFailed(const BlackMisc::Simulation::CSimulatedAircraft &aircraft, bool disabled, const BlackMisc::CStatusMessage &message);
//! Aircraft rendering changed //! Aircraft rendering changed
void aircraftRenderingChanged(const BlackMisc::Simulation::CSimulatedAircraft &aircraft); void aircraftRenderingChanged(const BlackMisc::Simulation::CSimulatedAircraft &aircraft);

View File

@@ -398,7 +398,7 @@ namespace BlackCore
bool c = connect(simulator, &ISimulator::simulatorStatusChanged, this, &CContextSimulator::onSimulatorStatusChanged); bool c = connect(simulator, &ISimulator::simulatorStatusChanged, this, &CContextSimulator::onSimulatorStatusChanged);
Q_ASSERT(c); Q_ASSERT(c);
c = connect(simulator, &ISimulator::physicallyAddingRemoteModelFailed, this, &CContextSimulator::addingRemoteAircraftFailed); c = connect(simulator, &ISimulator::physicallyAddingRemoteModelFailed, this, &CContextSimulator::onAddingRemoteAircraftFailed);
Q_ASSERT(c); Q_ASSERT(c);
c = connect(simulator, &ISimulator::ownAircraftModelChanged, this, &IContextSimulator::ownAircraftModelChanged); c = connect(simulator, &ISimulator::ownAircraftModelChanged, this, &IContextSimulator::ownAircraftModelChanged);
Q_ASSERT(c); Q_ASSERT(c);
@@ -667,10 +667,10 @@ namespace BlackCore
} }
} }
void CContextSimulator::addingRemoteAircraftFailed(const CSimulatedAircraft &remoteAircraft, const CStatusMessage &message) void CContextSimulator::onAddingRemoteAircraftFailed(const CSimulatedAircraft &remoteAircraft, bool disabled, const CStatusMessage &message)
{ {
if (!this->isSimulatorAvailable()) { return; } if (!this->isSimulatorAvailable()) { return; }
emit this->addingRemoteModelFailed(remoteAircraft, message); emit this->addingRemoteModelFailed(remoteAircraft, disabled, message);
} }
void CContextSimulator::xCtxUpdateSimulatorCockpitFromContext(const CSimulatedAircraft &ownAircraft, const CIdentifier &originator) void CContextSimulator::xCtxUpdateSimulatorCockpitFromContext(const CSimulatedAircraft &ownAircraft, const CIdentifier &originator)

View File

@@ -203,7 +203,7 @@ namespace BlackCore
void onCockpitChangedFromSimulator(const BlackMisc::Simulation::CSimulatedAircraft &ownAircraft); void onCockpitChangedFromSimulator(const BlackMisc::Simulation::CSimulatedAircraft &ownAircraft);
//! Failed adding remote aircraft //! Failed adding remote aircraft
void addingRemoteAircraftFailed(const BlackMisc::Simulation::CSimulatedAircraft &remoteAircraft, const BlackMisc::CStatusMessage &message); void onAddingRemoteAircraftFailed(const BlackMisc::Simulation::CSimulatedAircraft &remoteAircraft, bool disabled, const BlackMisc::CStatusMessage &message);
//! Relay status message to simulator under consideration of settings //! Relay status message to simulator under consideration of settings
void relayStatusMessageToSimulator(const BlackMisc::CStatusMessage &message); void relayStatusMessageToSimulator(const BlackMisc::CStatusMessage &message);

View File

@@ -78,7 +78,7 @@ namespace BlackCore
"weatherGridReceived", this, SIGNAL(weatherGridReceived(BlackMisc::Weather::CWeatherGrid, BlackMisc::CIdentifier))); "weatherGridReceived", this, SIGNAL(weatherGridReceived(BlackMisc::Weather::CWeatherGrid, BlackMisc::CIdentifier)));
Q_ASSERT(s); Q_ASSERT(s);
s = connection.connect(serviceName, IContextSimulator::ObjectPath(), IContextSimulator::InterfaceName(), s = connection.connect(serviceName, IContextSimulator::ObjectPath(), IContextSimulator::InterfaceName(),
"addingRemoteModelFailed", this, SIGNAL(addingRemoteModelFailed(BlackMisc::Simulation::CSimulatedAircraft, BlackMisc::CStatusMessage))); "addingRemoteModelFailed", this, SIGNAL(addingRemoteModelFailed(BlackMisc::Simulation::CSimulatedAircraft, bool, BlackMisc::CStatusMessage)));
Q_ASSERT(s); Q_ASSERT(s);
s = connection.connect(serviceName, IContextSimulator::ObjectPath(), IContextSimulator::InterfaceName(), s = connection.connect(serviceName, IContextSimulator::ObjectPath(), IContextSimulator::InterfaceName(),
"driverMessages", this, SIGNAL(driverMessages(BlackMisc::CStatusMessageList))); "driverMessages", this, SIGNAL(driverMessages(BlackMisc::CStatusMessageList)));

View File

@@ -127,17 +127,17 @@ namespace BlackGui
// connect // connect
connect(sGui->getIContextSimulator(), &IContextSimulator::modelSetChanged, this, &CMappingComponent::onModelSetChanged, Qt::QueuedConnection); connect(sGui->getIContextSimulator(), &IContextSimulator::modelSetChanged, this, &CMappingComponent::onModelSetChanged, Qt::QueuedConnection);
connect(sGui->getIContextSimulator(), &IContextSimulator::modelMatchingCompleted, this, &CMappingComponent::tokenBucketUpdateAircraft); connect(sGui->getIContextSimulator(), &IContextSimulator::modelMatchingCompleted, this, &CMappingComponent::tokenBucketUpdateAircraft, Qt::QueuedConnection);
connect(sGui->getIContextSimulator(), &IContextSimulator::aircraftRenderingChanged, this, &CMappingComponent::tokenBucketUpdateAircraft); connect(sGui->getIContextSimulator(), &IContextSimulator::aircraftRenderingChanged, this, &CMappingComponent::tokenBucketUpdateAircraft, Qt::QueuedConnection);
connect(sGui->getIContextSimulator(), &IContextSimulator::airspaceSnapshotHandled, this, &CMappingComponent::tokenBucketUpdate); connect(sGui->getIContextSimulator(), &IContextSimulator::airspaceSnapshotHandled, this, &CMappingComponent::tokenBucketUpdate, Qt::QueuedConnection);
connect(sGui->getIContextSimulator(), &IContextSimulator::addingRemoteModelFailed, this, &CMappingComponent::addingRemoteAircraftFailed); connect(sGui->getIContextSimulator(), &IContextSimulator::addingRemoteModelFailed, this, &CMappingComponent::onAddingRemoteAircraftFailed, Qt::QueuedConnection);
connect(sGui->getIContextSimulator(), &IContextSimulator::simulatorPluginChanged, this, &CMappingComponent::onSimulatorPluginChanged); connect(sGui->getIContextSimulator(), &IContextSimulator::simulatorPluginChanged, this, &CMappingComponent::onSimulatorPluginChanged, Qt::QueuedConnection);
connect(sGui->getIContextNetwork(), &IContextNetwork::changedRemoteAircraftModel, this, &CMappingComponent::onRemoteAircraftModelChanged); connect(sGui->getIContextNetwork(), &IContextNetwork::changedRemoteAircraftModel, this, &CMappingComponent::onRemoteAircraftModelChanged, Qt::QueuedConnection);
connect(sGui->getIContextNetwork(), &IContextNetwork::changedRemoteAircraftEnabled, this, &CMappingComponent::tokenBucketUpdateAircraft); connect(sGui->getIContextNetwork(), &IContextNetwork::changedRemoteAircraftEnabled, this, &CMappingComponent::tokenBucketUpdateAircraft, Qt::QueuedConnection);
connect(sGui->getIContextNetwork(), &IContextNetwork::changedFastPositionUpdates, this, &CMappingComponent::tokenBucketUpdateAircraft); connect(sGui->getIContextNetwork(), &IContextNetwork::changedFastPositionUpdates, this, &CMappingComponent::tokenBucketUpdateAircraft, Qt::QueuedConnection);
connect(sGui->getIContextNetwork(), &IContextNetwork::changedGndFlagCapability, this, &CMappingComponent::tokenBucketUpdateAircraft); connect(sGui->getIContextNetwork(), &IContextNetwork::changedGndFlagCapability, this, &CMappingComponent::tokenBucketUpdateAircraft, Qt::QueuedConnection);
connect(sGui->getIContextNetwork(), &IContextNetwork::removedAircraft, this, &CMappingComponent::tokenBucketUpdate); connect(sGui->getIContextNetwork(), &IContextNetwork::removedAircraft, this, &CMappingComponent::tokenBucketUpdate, Qt::QueuedConnection);
connect(sGui->getIContextNetwork(), &IContextNetwork::connectionStatusChanged, this, &CMappingComponent::onConnectionStatusChanged); connect(sGui->getIContextNetwork(), &IContextNetwork::connectionStatusChanged, this, &CMappingComponent::onConnectionStatusChanged, Qt::QueuedConnection);
connect(ui->tw_SpecializedViews, &QTabWidget::currentChanged, this, &CMappingComponent::onTabWidgetChanged); connect(ui->tw_SpecializedViews, &QTabWidget::currentChanged, this, &CMappingComponent::onTabWidgetChanged);
@@ -383,7 +383,7 @@ namespace BlackGui
const CStatusMessage msg = reset ? const CStatusMessage msg = reset ?
CStatusMessage(this).info("Model reset for '%1'") << callsign.toQString() : CStatusMessage(this).info("Model reset for '%1'") << callsign.toQString() :
CStatusMessage(this).info("Reset failed for '%1'") << callsign.toQString(); CStatusMessage(this).info("Reset failed for '%1'") << callsign.toQString();
this->showOverlayMessage(msg); this->showOverlayMessage(msg, 5000);
} }
void CMappingComponent::onModelPreviewChanged(int state) void CMappingComponent::onModelPreviewChanged(int state)
@@ -447,11 +447,12 @@ namespace BlackGui
ui->sp_MappingComponentSplitter->setSizes(newSizes); ui->sp_MappingComponentSplitter->setSizes(newSizes);
} }
void CMappingComponent::addingRemoteAircraftFailed(const CSimulatedAircraft &aircraft, const CStatusMessage &message) void CMappingComponent::onAddingRemoteAircraftFailed(const CSimulatedAircraft &aircraft, bool disabled, const CStatusMessage &message)
{ {
this->tokenBucketUpdate(); this->tokenBucketUpdate();
Q_UNUSED(aircraft); Q_UNUSED(aircraft);
Q_UNUSED(message); Q_UNUSED(message);
Q_UNUSED(disabled);
} }
void CMappingComponent::onTabWidgetChanged(int index) void CMappingComponent::onTabWidgetChanged(int index)

View File

@@ -138,7 +138,7 @@ namespace BlackGui
void showAircraftModelDetails(bool show); void showAircraftModelDetails(bool show);
//! Adding a remote aircraft failed //! Adding a remote aircraft failed
void addingRemoteAircraftFailed(const BlackMisc::Simulation::CSimulatedAircraft &aircraft, const BlackMisc::CStatusMessage &message); void onAddingRemoteAircraftFailed(const BlackMisc::Simulation::CSimulatedAircraft &aircraft, bool disabled, const BlackMisc::CStatusMessage &message);
//! Timer update //! Timer update
void timerUpdate(); void timerUpdate();

View File

@@ -183,13 +183,13 @@ namespace BlackGui
} }
} }
void CSimulatorComponent::onAddingRemoteModelFailed(const CSimulatedAircraft &aircraft, const CStatusMessage &message) void CSimulatorComponent::onAddingRemoteModelFailed(const CSimulatedAircraft &aircraft, bool disabled, const CStatusMessage &message)
{ {
ui->comp_StatusMessages->appendStatusMessageToList(CStatusMessage(this).warning("Adding model failed: '%1'") << aircraft.toQString(true)); ui->comp_StatusMessages->appendStatusMessageToList(CStatusMessage(this).warning("Adding model failed, disabled: %1: '%2'") << boolToYesNo(disabled) << aircraft.toQString(true));
ui->comp_StatusMessages->appendStatusMessageToList(message); ui->comp_StatusMessages->appendStatusMessageToList(message);
} }
void CSimulatorComponent::onSimulatorMessages(const BlackMisc::CStatusMessageList &messages) void CSimulatorComponent::onSimulatorMessages(const CStatusMessageList &messages)
{ {
if (messages.isEmpty()) { return; } if (messages.isEmpty()) { return; }
ui->comp_StatusMessages->appendStatusMessagesToList(messages); ui->comp_StatusMessages->appendStatusMessagesToList(messages);

View File

@@ -67,7 +67,7 @@ namespace BlackGui
void onSimulatorStatusChanged(int status); void onSimulatorStatusChanged(int status);
//! \copydoc ISimulator::addingRemoteModelFailed //! \copydoc ISimulator::addingRemoteModelFailed
void onAddingRemoteModelFailed(const BlackMisc::Simulation::CSimulatedAircraft &aircraft, const BlackMisc::CStatusMessage &message); void onAddingRemoteModelFailed(const BlackMisc::Simulation::CSimulatedAircraft &aircraft, bool disabled, const BlackMisc::CStatusMessage &message);
//! \copydoc ISimulator::onSimulatorMessages //! \copydoc ISimulator::onSimulatorMessages
void onSimulatorMessages(const BlackMisc::CStatusMessageList &messages); void onSimulatorMessages(const BlackMisc::CStatusMessageList &messages);