Ref T348, if plugin is unloaded, also fire "simulator disconnected". Also change to Qt::QueuedConnection.

Related: Ref T317 Ref T247 Ref T335
This commit is contained in:
Klaus Basan
2018-09-14 00:08:07 +02:00
parent 64f8420b32
commit ba7906b0a6
5 changed files with 17 additions and 10 deletions

View File

@@ -47,7 +47,7 @@ namespace BlackGui
CSimulatorInfo simulator = CSimulatorInfo(CSimulatorInfo::P3D); // default
if (sGui->getIContextSimulator())
{
connect(sGui->getIContextSimulator(), &IContextSimulator::simulatorStatusChanged, this, &CAircraftModelStringCompleter::onSimulatorConnected);
connect(sGui->getIContextSimulator(), &IContextSimulator::simulatorStatusChanged, this, &CAircraftModelStringCompleter::onSimulatorConnected, Qt::QueuedConnection);
CSimulatorInfo pluginSimulator = sGui->getIContextSimulator()->getSimulatorPluginInfo().getSimulator();
if (pluginSimulator.isSingleSimulator())
{

View File

@@ -53,7 +53,7 @@ namespace BlackGui
Q_ASSERT_X(sGui, Q_FUNC_INFO, "Need sGui");
if (sGui->getIContextSimulator())
{
connect(sGui->getIContextSimulator(), &IContextSimulator::simulatorStatusChanged, this, &CInfoBarStatusComponent::onSimulatorStatusChanged);
connect(sGui->getIContextSimulator(), &IContextSimulator::simulatorStatusChanged, this, &CInfoBarStatusComponent::onSimulatorStatusChanged, Qt::QueuedConnection);
connect(sGui->getIContextSimulator(), &IContextSimulator::modelSetChanged, this, &CInfoBarStatusComponent::onMapperReady);
connect(sGui, &CGuiApplication::changedInternetAccessibility, this, &CInfoBarStatusComponent::onInternetAccessibleChanged);

View File

@@ -62,7 +62,7 @@ namespace BlackGui
this->addOrUpdateLiveDataByName("info", "no data yet", CIcons::StandardIconWarning16);
// connects
connect(sGui->getIContextSimulator(), &IContextSimulator::simulatorStatusChanged, this, &CSimulatorComponent::onSimulatorStatusChanged);
connect(sGui->getIContextSimulator(), &IContextSimulator::simulatorStatusChanged, this, &CSimulatorComponent::onSimulatorStatusChanged, Qt::QueuedConnection);
connect(&m_updateTimer, &QTimer::timeout, this, &CSimulatorComponent::update);
connect(ui->pb_RefreshInternals, &QPushButton::pressed, this, &CSimulatorComponent::refreshInternals);
if (sGui->supportsContexts() && sGui->getIContextSimulator())