Replace INetwork::CConnectionStatus with proper value object

This commit is contained in:
Roland Rossgotterer
2019-09-13 10:55:48 +02:00
parent 865b25df87
commit 4772aadc1a
42 changed files with 206 additions and 121 deletions

View File

@@ -24,6 +24,7 @@
#include <QWriteLocker>
using namespace BlackMisc;
using namespace BlackMisc::Network;
using namespace BlackMisc::Simulation;
using namespace BlackMisc::Aviation;
using namespace BlackMisc::PhysicalQuantities;
@@ -105,15 +106,15 @@ namespace BlackCore
m_atcCallsignTimestamps[callsign] = QDateTime::currentMSecsSinceEpoch();
}
void CAirspaceAnalyzer::onConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus oldStatus, BlackCore::INetwork::ConnectionStatus newStatus)
void CAirspaceAnalyzer::onConnectionStatusChanged(CConnectionStatus oldStatus, CConnectionStatus newStatus)
{
Q_UNUSED(oldStatus);
if (newStatus == INetwork::Disconnected)
if (newStatus.isDisconnected())
{
this->clear();
m_updateTimer.stop();
}
else if (newStatus == INetwork::Connected)
else if (newStatus.isConnected())
{
m_updateTimer.start();
}

View File

@@ -13,6 +13,7 @@
#include "blackcore/blackcoreexport.h"
#include "blackcore/network.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/simulation/airspaceaircraftsnapshot.h"
#include "blackmisc/simulation/ownaircraftprovider.h"
#include "blackmisc/simulation/remoteaircraftprovider.h"
@@ -109,7 +110,7 @@ namespace BlackCore
const BlackMisc::Geo::CCoordinateGeodetic &position, const BlackMisc::PhysicalQuantities::CLength &range);
//! Connection status of network changed
void onConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus oldStatus, BlackCore::INetwork::ConnectionStatus newStatus);
void onConnectionStatusChanged(BlackMisc::Network::CConnectionStatus oldStatus, BlackMisc::Network::CConnectionStatus newStatus);
//! Network position update
void onNetworkPositionUpdate(const BlackMisc::Aviation::CAircraftSituation &situation, const BlackMisc::Aviation::CTransponder &transponder);

View File

@@ -1220,22 +1220,10 @@ namespace BlackCore
);
}
void CAirspaceMonitor::onConnectionStatusChanged(INetwork::ConnectionStatus oldStatus, INetwork::ConnectionStatus newStatus)
void CAirspaceMonitor::onConnectionStatusChanged(CConnectionStatus oldStatus, CConnectionStatus newStatus)
{
Q_UNUSED(oldStatus);
switch (newStatus)
{
case INetwork::Connected:
break;
case INetwork::Disconnected:
case INetwork::DisconnectedError:
case INetwork::DisconnectedLost:
case INetwork::DisconnectedFailed:
this->clear();
break;
default:
break;
}
if (newStatus.isDisconnected()) { clear(); }
}
void CAirspaceMonitor::onPilotDisconnected(const CCallsign &callsign)

View File

@@ -386,7 +386,7 @@ namespace BlackCore
void onReceivedVatsimDataFile();
void onAircraftConfigReceived(const BlackMisc::Aviation::CCallsign &callsign, const QJsonObject &jsonObject, qint64 currentOffsetMs);
void onAircraftInterimUpdateReceived(const BlackMisc::Aviation::CAircraftSituation &situation);
void onConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus oldStatus, BlackCore::INetwork::ConnectionStatus newStatus);
void onConnectionStatusChanged(BlackMisc::Network::CConnectionStatus oldStatus, BlackMisc::Network::CConnectionStatus newStatus);
};
} // namespace

View File

@@ -25,6 +25,7 @@
#include "blackmisc/aviation/callsignset.h"
#include "blackmisc/aviation/comsystem.h"
#include "blackmisc/aviation/flightplan.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/network/clientlist.h"
#include "blackmisc/network/server.h"
#include "blackmisc/network/serverlist.h"
@@ -152,7 +153,7 @@ namespace BlackCore
//! Connection status changed
//! \sa IContextNetwork::connectedServerChanged
void connectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void connectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! The connected server has been changed
//! \remark can also be used to determine if the ecosystem has been changed

View File

@@ -583,20 +583,11 @@ namespace BlackCore
return sApp->getWebDataServices()->getVatsimVoiceServers();
}
void CContextNetwork::onFsdConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to)
void CContextNetwork::onFsdConnectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO << from << to; }
const INetwork::ConnectionStatus fromOld = m_currentStatus; // own status cached
m_currentStatus = to;
// if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO << from << to; }
if (fromOld == INetwork::Disconnecting)
{
// remark: vatlib does not know disconnecting. In vatlib's terminating connection method
// state Disconnecting is sent manually. We fix the vatlib state here regarding disconnecting
from = INetwork::Disconnecting;
}
if (to == INetwork::Disconnected)
if (to.isDisconnected())
{
// make sure airspace is really cleaned up
Q_ASSERT(m_airspace);
@@ -604,7 +595,7 @@ namespace BlackCore
}
// send 1st position
if (to == INetwork::Connected)
if (to.isConnected())
{
CLogMessage(this).info(u"Connected, own aircraft %1") << this->ownAircraft().getCallsignAsString();
@@ -617,14 +608,7 @@ namespace BlackCore
// send as message
static const QString chgMsg("Connection status changed from '%1' to '%2'");
if (to == INetwork::DisconnectedError)
{
CLogMessage(this).error(chgMsg) << INetwork::connectionStatusToString(from) << INetwork::connectionStatusToString(to);
}
else
{
CLogMessage(this).info(chgMsg) << INetwork::connectionStatusToString(from) << INetwork::connectionStatusToString(to);
}
CLogMessage(this).info(chgMsg) << from.toQString() << to.toQString();
// send as own signal
emit this->connectionStatusChanged(from, to);

View File

@@ -317,7 +317,7 @@ namespace BlackCore
void onChangedAtisReceived(const BlackMisc::Aviation::CCallsign &callsign);
//! Connection status changed
void onFsdConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onFsdConnectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! Relay to partner callsign
void createRelayMessageToPartnerCallsign(const BlackMisc::Network::CTextMessage &textMessage, const BlackMisc::Aviation::CCallsign &partnerCallsign, BlackMisc::Network::CTextMessageList &relayedMessages);

View File

@@ -796,11 +796,11 @@ namespace BlackCore
m_simulatorPlugin.second->changeRemoteAircraftEnabled(aircraft);
}
void CContextSimulator::xCtxNetworkConnectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CContextSimulator::xCtxNetworkConnectionStatusChanged(CConnectionStatus from, CConnectionStatus to)
{
Q_UNUSED(from);
BLACK_VERIFY_X(this->getIContextNetwork(), Q_FUNC_INFO, "Missing network context");
if (to == INetwork::Connected && this->getIContextNetwork())
if (to.isConnected() && this->getIContextNetwork())
{
m_networkSessionId = this->getIContextNetwork()->getConnectedServer().getServerSessionId(false);
if (m_simulatorPlugin.second) // check in case the plugin has been unloaded
@@ -808,7 +808,7 @@ namespace BlackCore
m_simulatorPlugin.second->setFlightNetworkConnected(true);
}
}
else if (INetwork::isDisconnectedStatus(to))
else if (to.isDisconnected())
{
m_networkSessionId.clear();
m_aircraftMatcher.clearMatchingStatistics();

View File

@@ -18,7 +18,7 @@
#include "blackcore/aircraftmatcher.h"
#include "blackcore/blackcoreexport.h"
#include "blackcore/weathermanager.h"
#include "blackcore/network.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/simulation/data/modelcaches.h"
#include "blackmisc/simulation/settings/modelmatchersettings.h"
#include "blackmisc/simulation/settings/simulatorsettings.h"
@@ -205,7 +205,7 @@ namespace BlackCore
void xCtxChangedRemoteAircraftEnabled(const BlackMisc::Simulation::CSimulatedAircraft &aircraft);
//! Network connection status
void xCtxNetworkConnectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to);
void xCtxNetworkConnectionStatusChanged(BlackMisc::Network::CConnectionStatus from, BlackMisc::Network::CConnectionStatus to);
//! Update simulator cockpit from context, because someone else has changed cockpit (e.g. GUI, 3rd party)
void xCtxUpdateSimulatorCockpitFromContext(const BlackMisc::Simulation::CSimulatedAircraft &ownAircraft, const BlackMisc::CIdentifier &originator);

View File

@@ -17,7 +17,6 @@
#include "blackcore/context/contextnetwork.h"
#include "blackcore/context/contextsimulator.h"
#include "blackcore/context/contextownaircraft.h"
#include "blackcore/network.h"
#include "blackmisc/network/server.h"
#include "blackmisc/network/fsdsetup.h"
#include "ui_aircraftcomponent.h"
@@ -163,14 +162,14 @@ namespace BlackGui
this->tabBar()->setTabText(ap, aps);
}
void CAircraftComponent::onConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to)
void CAircraftComponent::onConnectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (INetwork::isDisconnectedStatus(to))
if (to.isDisconnected())
{
ui->tvp_AircraftInRange->clear();
}
else if (INetwork::isConnectedStatus(to))
else if (to.isConnected())
{
if (sGui && sGui->getIContextNetwork())
{

View File

@@ -14,7 +14,7 @@
#include "blackgui/settings/viewupdatesettings.h"
#include "blackgui/enablefordockwidgetinfoarea.h"
#include "blackgui/blackguiexport.h"
#include "blackcore/network.h"
#include "blackmisc/network/connectionstatus.h"
#include <QObject>
#include <QScopedPointer>
@@ -86,7 +86,7 @@ namespace BlackGui
void onRowCountChanged(int count, bool withFilter);
//! Connection status has been changed
void onConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onConnectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! Settings have been changed
void onSettingsChanged();

View File

@@ -23,6 +23,7 @@
using namespace BlackMisc;
using namespace BlackMisc::Aviation;
using namespace BlackMisc::Network;
using namespace BlackCore;
using namespace BlackCore::Context;
@@ -163,10 +164,10 @@ namespace BlackGui
}
}
void CAircraftPartsHistory::connectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CAircraftPartsHistory::connectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (to == INetwork::Connected || to == INetwork::Disconnected)
if (to.isConnected() || to.isDisconnected())
{
this->initGui();
}

View File

@@ -11,11 +11,11 @@
#ifndef BLACKGUI_COMPONENT_AIRCRAFTPARTSHISTORY_H
#define BLACKGUI_COMPONENT_AIRCRAFTPARTSHISTORY_H
#include "blackcore/network.h"
#include <QFrame>
#include <QTabWidget>
#include <QTimer>
#include <QTextDocument>
#include "blackmisc/network/connectionstatus.h"
namespace Ui { class CAircraftPartsHistory; }
namespace BlackGui
@@ -65,7 +65,7 @@ namespace BlackGui
void toggleHistoryEnabled(bool enabled);
//! Connection status changed
void connectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void connectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
};
} // ns
} // ns

View File

@@ -19,6 +19,7 @@
using namespace BlackMisc;
using namespace BlackMisc::Aviation;
using namespace BlackMisc::Network;
using namespace BlackCore;
using namespace BlackCore::Context;
@@ -115,10 +116,10 @@ namespace BlackGui
this->updateStations();
}
void CAtcButtonComponent::onConnectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CAtcButtonComponent::onConnectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (INetwork::isDisconnectedStatus(to))
if (to.isDisconnected())
{
this->setVisible(false);
}

View File

@@ -12,6 +12,7 @@
#define BLACKGUI_COMPONENTS_ATCBUTTONCOMPONENT_H
#include "blackcore/context/contextnetwork.h"
#include "blackmisc/network/connectionstatus.h"
#include <QFrame>
#include <QScopedPointer>
@@ -62,7 +63,7 @@ namespace BlackGui
void onChangedAtcStations();
//! Connection status did change
void onConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onConnectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! Button has been clicked
void onButtonClicked();

View File

@@ -47,6 +47,7 @@ using namespace BlackGui::Views;
using namespace BlackGui::Settings;
using namespace BlackMisc;
using namespace BlackMisc::Aviation;
using namespace BlackMisc::Network;
using namespace BlackMisc::PhysicalQuantities;
using namespace BlackMisc::Weather;
using namespace BlackCore;
@@ -338,16 +339,16 @@ namespace BlackGui
this->update();
}
void CAtcStationComponent::connectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CAtcStationComponent::connectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (INetwork::isConnectedStatus(to))
if (to.isConnected())
{
ui->tvp_AtcStationsOnline->clear();
this->updateTreeView();
m_updateTimer.start();
}
else if (INetwork::isDisconnectedStatus(to))
else if (to.isDisconnected())
{
m_updateTimer.stop();
this->clearOnlineViews();

View File

@@ -15,11 +15,11 @@
#include "blackgui/settings/atcstationssettings.h"
#include "blackgui/overlaymessagesframe.h"
#include "blackgui/blackguiexport.h"
#include "blackcore/network.h"
#include "blackmisc/aviation/atcstation.h"
#include "blackmisc/aviation/comsystem.h"
#include "blackmisc/pq/frequency.h"
#include "blackmisc/identifiable.h"
#include "blackmisc/network/connectionstatus.h"
#include <QDateTime>
#include <QModelIndex>
@@ -121,7 +121,7 @@ namespace BlackGui
void changedAtcStationsOnline();
//! Connection status has been changed
void connectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void connectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! Request dummy ATC online stations
void testCreateDummyOnlineAtcStations(int number);

View File

@@ -16,6 +16,7 @@
using namespace BlackMisc;
using namespace BlackMisc::Aviation;
using namespace BlackMisc::Network;
using namespace BlackCore;
using namespace BlackCore::Context;
@@ -106,10 +107,10 @@ namespace BlackGui
this->updateCallsignsFromContext();
}
void CCallsignCompleter::onChangedConnectionStatus(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CCallsignCompleter::onChangedConnectionStatus(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
const bool connected = (INetwork::Connected == to);
const bool connected = to.isConnected();
ui->led_Status->setOn(connected);
ui->le_Callsign->clear();
ui->le_Callsign->setEnabled(connected);

View File

@@ -15,7 +15,7 @@
#include "blackgui/sharedstringlistcompleter.h"
#include "blackmisc/digestsignal.h"
#include "blackmisc/aviation/callsignset.h"
#include "blackcore/network.h"
#include "blackmisc/network/connectionstatus.h"
#include <QFrame>
#include <QScopedPointer>
#include <QTimer>
@@ -69,7 +69,7 @@ namespace BlackGui
void updateCallsignsFromContext();
void onEditingFinished();
void onChangedAircraftInRange();
void onChangedConnectionStatus(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onChangedConnectionStatus(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
bool isValidKnownCallsign(const QString &callsignString) const;
//! Shared completer data

View File

@@ -38,6 +38,7 @@ using namespace BlackCore;
using namespace BlackCore::Context;
using namespace BlackGui;
using namespace BlackMisc;
using namespace BlackMisc::Network;
namespace BlackGui
{
@@ -186,22 +187,19 @@ namespace BlackGui
this->onMapperReady();
}
void CInfoBarStatusComponent::onNetworkConnectionChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CInfoBarStatusComponent::onNetworkConnectionChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
switch (to)
switch (to.getConnectionStatus())
{
case INetwork::Disconnected:
case INetwork::DisconnectedError:
case INetwork::DisconnectedFailed:
case INetwork::DisconnectedLost:
case CConnectionStatus::Disconnected:
ui->led_Network->setOn(false);
break;
case INetwork::Connected:
case CConnectionStatus::Connected:
ui->led_Network->setOn(true);
ui->led_Network->setOnToolTip(u"Connected: " % sGui->getIContextNetwork()->getConnectedServer().getName());
break;
case INetwork::Connecting:
case CConnectionStatus::Connecting:
ui->led_Network->setTriStateColor(CLedWidget::Yellow);
break;
default:

View File

@@ -12,9 +12,9 @@
#define BLACKGUI_INFOBARSTATUSCOMPONENT_H
#include "blackcore/actionbind.h"
#include "blackcore/network.h"
#include "blackgui/blackguiexport.h"
#include "blackmisc/input/actionhotkeydefs.h"
#include "blackmisc/network/connectionstatus.h"
#include <QFrame>
#include <QObject>
@@ -72,7 +72,7 @@ namespace BlackGui
void onSimulatorStatusChanged(int status);
//! Network connection has been changed
void onNetworkConnectionChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onNetworkConnectionChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! Context menu requested
void onCustomAudioContextMenuRequested(const QPoint &position);

View File

@@ -22,13 +22,13 @@
#include "blackcore/context/contextsimulator.h"
#include "blackcore/webdataservices.h"
#include "blackcore/data/globalsetup.h"
#include "blackcore/network.h"
#include "blackcore/simulator.h"
#include "blackmisc/aviation/aircrafticaocode.h"
#include "blackmisc/aviation/airlineicaocode.h"
#include "blackmisc/aviation/airporticaocode.h"
#include "blackmisc/icons.h"
#include "blackmisc/logmessage.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/network/entityflags.h"
#include "blackmisc/network/serverlist.h"
#include "blackmisc/simulation/simulatorinternals.h"
@@ -445,10 +445,10 @@ namespace BlackGui
}
}
void CLoginComponent::onNetworkStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CLoginComponent::onNetworkStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (to != INetwork::Connected) { return; }
if (to != CConnectionStatus::Connected) { return; }
this->setUiLoginState(true);
this->updateGui();

View File

@@ -20,6 +20,7 @@
#include "blackmisc/simulation/data/lastmodel.h"
#include "blackmisc/simulation/simulatedaircraft.h"
#include "blackmisc/aviation/callsign.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/network/data/lastserver.h"
#include "blackmisc/network/entityflags.h"
#include "blackmisc/network/server.h"
@@ -225,7 +226,7 @@ namespace BlackGui
void onSimulatorStatusChanged(int status);
//! Network status has changed
void onNetworkStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onNetworkStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! Tab widget (server) changed
void onServerTabWidgetChanged(int index);

View File

@@ -12,6 +12,7 @@
#include "blackgui/guiapplication.h"
#include "blackcore/context/contextnetwork.h"
using namespace BlackMisc::Network;
using namespace BlackCore;
using namespace BlackCore::Context;
@@ -90,10 +91,10 @@ namespace BlackGui
this->close();
}
void CLoginDialog::onNetworkStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to)
void CLoginDialog::onNetworkStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (to == INetwork::Disconnected || to == INetwork::Connected)
if (to.isDisconnected() || to.isConnected())
{
this->init();
}

View File

@@ -12,8 +12,8 @@
#define BLACKGUI_COMPONENTS_LOGINDIALOG_H
#include "blackgui/blackguiexport.h"
#include "blackcore/network.h"
#include "blackmisc/aviation/airport.h"
#include "blackmisc/network/connectionstatus.h"
#include <QDialog>
#include <QScopedPointer>
@@ -49,7 +49,7 @@ namespace BlackGui
void onLoginOrLogoffCancelled();
void onLoginOrLogoffSuccessful();
void onRequestNetworkSettings();
void onNetworkStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onNetworkStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
QScopedPointer<Ui::CLoginDialog> ui;
};

View File

@@ -22,7 +22,6 @@
#include "blackcore/context/contextnetwork.h"
#include "blackcore/data/globalsetup.h"
#include "blackcore/webdataservices.h"
#include "blackcore/network.h"
#include "blackcore/simulator.h"
#include "blackmisc/simulation/simulatorinternals.h"
#include "blackmisc/simulation/aircraftmodel.h"

View File

@@ -24,6 +24,7 @@
using namespace BlackMisc;
using namespace BlackMisc::Aviation;
using namespace BlackMisc::Network;
using namespace BlackMisc::Simulation;
using namespace BlackCore;
using namespace BlackCore::Context;
@@ -154,12 +155,12 @@ namespace BlackGui
}
}
void CMainKeypadAreaComponent::connectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CMainKeypadAreaComponent::connectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
// Connected button
if (to == INetwork::Connected)
if (to.isConnected())
{
ui->pb_Connect->setText("Discon."); // full terms some too wide
ui->pb_Connect->setChecked(true);
@@ -274,7 +275,7 @@ namespace BlackGui
if (sGui->getIContextNetwork() && sGui->getIContextNetwork()->isConnected())
{
this->connectionStatusChanged(INetwork::Connected, INetwork::Connected);
this->connectionStatusChanged(CConnectionStatus::Connected, CConnectionStatus::Connected);
}
}
} // namespace

View File

@@ -11,10 +11,10 @@
#ifndef BLACKGUI_MAINKEYPADAREACOMPONENT_H
#define BLACKGUI_MAINKEYPADAREACOMPONENT_H
#include "blackcore/network.h"
#include "blackgui/blackguiexport.h"
#include "blackgui/components/maininfoareacomponent.h"
#include "blackmisc/identifier.h"
#include "blackmisc/network/connectionstatus.h"
#include <QFrame>
#include <QList>
@@ -74,7 +74,7 @@ namespace BlackGui
void buttonSelected();
//! \copydoc BlackCore::Context::IContextNetwork::connectionStatusChanged
void connectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void connectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! \copydoc BlackCore::Context::IContextOwnAircraft::changedAircraftCockpit
void ownAircraftCockpitChanged(const BlackMisc::Simulation::CSimulatedAircraft &aircraft, const BlackMisc::CIdentifier &originator);

View File

@@ -17,7 +17,7 @@
#include "blackgui/views/viewbase.h"
#include "blackcore/context/contextnetwork.h"
#include "blackcore/context/contextsimulator.h"
#include "blackcore/network.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/simulation/simulatedaircraft.h"
#include "blackmisc/simulation/simulatedaircraftlist.h"
#include "blackmisc/simulation/aircraftmodel.h"
@@ -449,15 +449,15 @@ namespace BlackGui
this->tokenBucketUpdateAircraft(aircraft);
}
void CMappingComponent::onConnectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CMappingComponent::onConnectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (INetwork::isDisconnectedStatus(to))
if (to.isDisconnected())
{
this->tokenBucketUpdate();
ui->tvp_RenderedAircraft->clear();
}
else if (INetwork::isConnectedStatus(to))
else if (to.isConnected())
{
if (sGui && sGui->getIContextNetwork())
{
@@ -564,15 +564,15 @@ namespace BlackGui
m_updateTimer.setInterval(ms);
}
void CMappingComponent::onNetworkConnectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CMappingComponent::onNetworkConnectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (INetwork::isDisconnectedStatus(to))
if (to.isDisconnected())
{
ui->tvp_RenderedAircraft->clear();
m_updateTimer.stop();
}
else if (INetwork::isConnectedStatus(to))
else if (to.isConnected())
{
ui->comp_SimulatorSelector->setReadOnly(true);
m_updateTimer.start();

View File

@@ -15,11 +15,11 @@
#include "blackgui/overlaymessagesframe.h"
#include "blackgui/enablefordockwidgetinfoarea.h"
#include "blackgui/blackguiexport.h"
#include "blackcore/network.h"
#include "blackmisc/tokenbucket.h"
#include "blackmisc/identifiable.h"
#include "blackmisc/identifier.h"
#include "blackmisc/propertyindex.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/simulation/aircraftmodellist.h"
#include "blackmisc/variant.h"
@@ -128,7 +128,7 @@ namespace BlackGui
void onRemoteAircraftModelChanged(const BlackMisc::Simulation::CSimulatedAircraft &aircraft, const BlackMisc::CIdentifier &originator);
//! Connection status has been changed
void onConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onConnectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! Widget changed
void onTabWidgetChanged(int index);
@@ -158,7 +158,7 @@ namespace BlackGui
void settingsChanged();
//! Connection status has been changed
void onNetworkConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onNetworkConnectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! Update simulated aircraft view
void updateRenderedAircraftView(bool forceUpdate = false);

View File

@@ -17,6 +17,7 @@
using namespace BlackCore;
using namespace BlackCore::Context;
using namespace BlackMisc::Network;
using namespace BlackMisc::Simulation;
namespace BlackGui
@@ -119,10 +120,10 @@ namespace BlackGui
this->initGui();
}
void CModelMatcherLogEnable::connectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CModelMatcherLogEnable::connectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (to == INetwork::Connected || to == INetwork::Disconnected)
if (to.isConnected() || to.isDisconnected())
{
this->initGui();
}

View File

@@ -11,7 +11,7 @@
#ifndef BLACKGUI_COMPONENTS_MODELMATCHERLOGENABLE_H
#define BLACKGUI_COMPONENTS_MODELMATCHERLOGENABLE_H
#include "blackcore/network.h"
#include "blackmisc/network/connectionstatus.h"
#include <QFrame>
#include <QScopedPointer>
@@ -54,7 +54,7 @@ namespace BlackGui
void valuesChanged();
//! Connection status has been changed
void connectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void connectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
};
} // ns
} // ns

View File

@@ -22,6 +22,7 @@
#include "blackmisc/audio/voicesetup.h"
#include "blackmisc/settingscache.h"
#include "blackmisc/datacache.h"
#include "blackmisc/network/connectionstatus.h"
namespace Ui { class CNetworkDetailsComponent; }
namespace BlackGui

View File

@@ -12,7 +12,7 @@
#include "blackgui/views/clientview.h"
#include "blackgui/views/userview.h"
#include "blackcore/context/contextnetwork.h"
#include "blackcore/network.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/network/userlist.h"
#include "ui_usercomponent.h"
@@ -98,16 +98,16 @@ namespace BlackGui
this->tabBar()->setTabText(ic, c);
}
void CUserComponent::onConnectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void CUserComponent::onConnectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
if (INetwork::isDisconnectedStatus(to))
if (to.isDisconnected())
{
ui->tvp_AllUsers->clear();
ui->tvp_Clients->clear();
m_updateTimer.stop();
}
else if (INetwork::isConnectedStatus(to))
else if (to.isConnected())
{
m_updateTimer.start();
}

View File

@@ -14,7 +14,8 @@
#include "blackgui/enablefordockwidgetinfoarea.h"
#include "blackgui/blackguiexport.h"
#include "blackgui/settings/viewupdatesettings.h"
#include "blackcore/network.h"
#include "blackmisc/aviation/callsign.h"
#include "blackmisc/network/connectionstatus.h"
#include <QObject>
#include <QScopedPointer>
@@ -59,7 +60,7 @@ namespace BlackGui
void onCountChanged(int count, bool withFilter);
//! Connection status
void onConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onConnectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//! Settings have been changed
void onSettingsChanged();

View File

@@ -13,6 +13,7 @@
#include "blackcore/network.h"
#include "blackgui/blackguiexport.h"
#include "blackmisc/network/connectionstatus.h"
#include <QFrame>
#include <QObject>
#include <QScopedPointer>

View File

@@ -0,0 +1,32 @@
/* Copyright (C) 2019
* swift project Community / Contributors
*
* This file is part of swift project. It is subject to the license terms in the LICENSE file found in the top-level
* directory of this distribution. No part of swift project, including this file, may be copied, modified, propagated,
* or distributed except according to the terms contained in the LICENSE file.
*/
#include "blackmisc/network/connectionstatus.h"
namespace BlackMisc
{
namespace Network
{
QString CConnectionStatus::convertToQString(bool i18n) const
{
Q_UNUSED(i18n);
switch (m_connectionStatus)
{
case Connected: return QStringLiteral("Connected");
case Connecting: return QStringLiteral("Connecting");
case Disconnecting: return QStringLiteral("Disconnecting");
case Disconnected: return QStringLiteral("Disconnected");
}
Q_UNREACHABLE();
return {};
}
} // namespace
} // namespace

View File

@@ -0,0 +1,70 @@
/* Copyright (C) 2019
* swift project Community / Contributors
*
* This file is part of swift project. It is subject to the license terms in the LICENSE file found in the top-level
* directory of this distribution. No part of swift project, including this file, may be copied, modified, propagated,
* or distributed except according to the terms contained in the LICENSE file.
*/
//! \file
#ifndef BLACKMISC_NETWORK_CONNECTIONSTATUS_H
#define BLACKMISC_NETWORK_CONNECTIONSTATUS_H
#include "blackmisc/blackmiscexport.h"
#include "blackmisc/valueobject.h"
namespace BlackMisc
{
namespace Network
{
//! Value object encapsulating information about a connection status
class BLACKMISC_EXPORT CConnectionStatus : public CValueObject<CConnectionStatus>
{
public:
//! Connection Status
enum ConnectionStatus
{
Connected,
Connecting,
Disconnecting,
Disconnected
};
//! Default constructor.
CConnectionStatus() = default;
//! Constructor
CConnectionStatus(ConnectionStatus status) : m_connectionStatus(status) {}
bool isConnected() const { return m_connectionStatus == Connected; }
bool isConnecting() const { return m_connectionStatus == Connecting; }
bool isDisconnecting() const { return m_connectionStatus == Disconnecting; }
bool isDisconnected() const { return m_connectionStatus == Disconnected; }
//! Get status
ConnectionStatus getConnectionStatus() const { return m_connectionStatus; }
//! Set status
void setConnectionStatus(ConnectionStatus status) { m_connectionStatus = status; }
//! \copydoc BlackMisc::Mixin::String::toQString
QString convertToQString(bool i18n = false) const;
private:
ConnectionStatus m_connectionStatus = Disconnected;
BLACK_METACLASS(
CConnectionStatus,
BLACK_METAMEMBER(connectionStatus)
);
};
} // namespace
} // namespace
Q_DECLARE_METATYPE(BlackMisc::Network::CConnectionStatus)
#endif // guard

View File

@@ -19,6 +19,7 @@
#include "blackmisc/network/authenticateduser.h"
#include "blackmisc/network/client.h"
#include "blackmisc/network/clientlist.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/network/ecosystem.h"
#include "blackmisc/network/ecosystemlist.h"
#include "blackmisc/network/entityflags.h"

View File

@@ -16,6 +16,7 @@ namespace BlackMisc
void registerMetadata()
{
CAuthenticatedUser::registerMetadata();
CConnectionStatus::registerMetadata();
CClient::registerMetadata();
qDBusRegisterMetaType<CClient::Capability>();
qRegisterMetaTypeStreamOperators<CClient::Capability>();

View File

@@ -22,7 +22,6 @@
#include "blackcore/context/contextaudio.h"
#include "blackcore/context/contextnetwork.h"
#include "blackcore/context/contextsimulator.h"
#include "blackcore/network.h"
#include "blackcore/webdataservices.h"
#include "blackcore/corefacadeconfig.h"
#include "blackmisc/audio/notificationsounds.h"
@@ -304,17 +303,16 @@ void SwiftGuiStd::onKickedFromNetwork(const QString &kickMessage)
// this->displayInOverlayWindow(CStatusMessage(this, CStatusMessage::SeverityError, msgText));
}
void SwiftGuiStd::onConnectionStatusChanged(INetwork::ConnectionStatus from, INetwork::ConnectionStatus to)
void SwiftGuiStd::onConnectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
Q_UNUSED(from);
this->updateGuiStatusInformation();
// sounds
switch (to)
switch (to.getConnectionStatus())
{
case INetwork::Connected: this->playNotifcationSound(CNotificationSounds::NotificationLogin); break;
case INetwork::Disconnected: this->playNotifcationSound(CNotificationSounds::NotificationLogoff); break;
case INetwork::DisconnectedError: this->playNotifcationSound(CNotificationSounds::NotificationError); break;
case CConnectionStatus::Connected: this->playNotifcationSound(CNotificationSounds::NotificationLogin); break;
case CConnectionStatus::Disconnected: this->playNotifcationSound(CNotificationSounds::NotificationLogoff); break;
default: break;
}
}

View File

@@ -25,7 +25,7 @@
#include "blackgui/managedstatusbar.h"
#include "blackgui/guiactionbind.h"
#include "blackcore/actionbind.h"
#include "blackcore/network.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/simulation/simulatedaircraft.h"
#include "blackmisc/simulation/autopublishdata.h"
#include "blackmisc/audio/notificationsounds.h"
@@ -209,7 +209,7 @@ private:
//! Connection status changed
//! \param from old status
//! \param to new status
void onConnectionStatusChanged(BlackCore::INetwork::ConnectionStatus from, BlackCore::INetwork::ConnectionStatus to);
void onConnectionStatusChanged(const BlackMisc::Network::CConnectionStatus &from, const BlackMisc::Network::CConnectionStatus &to);
//
// GUI related functions