10 #include "ui_settingsnetworkserverscomponent.h"
24 using namespace swift::config;
29 using namespace swift::misc::network;
30 using namespace swift::misc::aviation;
31 using namespace swift::misc::audio;
35 CSettingsNetworkServersComponent::CSettingsNetworkServersComponent(QWidget *parent)
41 connect(ui->pb_RemoveServer, &QPushButton::pressed,
this,
42 &CSettingsNetworkServersComponent::alterTrafficServer);
43 connect(ui->pb_SaveServer, &QPushButton::pressed,
this, &CSettingsNetworkServersComponent::alterTrafficServer);
44 connect(ui->tvp_Servers, &QTableView::clicked,
this, &CSettingsNetworkServersComponent::serverSelected);
45 this->reloadSettings();
50 void CSettingsNetworkServersComponent::reloadSettings()
56 if (serverList.isEmpty() && CBuildConfig::isLocalDeveloperDebugBuild())
60 ui->tvp_Servers->updateContainer(serverList);
63 void CSettingsNetworkServersComponent::serverSelected(
const QModelIndex &index)
65 const CServer clickedServer = ui->tvp_Servers->at(index);
66 ui->form_Server->setServer(clickedServer);
69 void CSettingsNetworkServersComponent::alterTrafficServer()
71 const QObject *sender = QObject::sender();
72 const CServer server(ui->form_Server->getServer());
76 if (sender == ui->pb_RemoveServer)
79 serverList.removeByName(server.getName());
81 else if (sender == ui->pb_SaveServer)
89 CLogMessage::preformatted(msgs);
93 serverList.replaceOrAdd(&CServer::getName, server.getName(), server);
97 qFatal(
"Wrong sender");
101 msg = m_trafficNetworkServers.
setAndSave(serverList);
102 this->reloadSettings();
107 CLogMessage::preformatted(msg);
data::CGlobalSetup getGlobalSetup() const
Global setup.
swift::misc::network::CServerList getPredefinedServersPlusHardcodedServers() const
Predefined plus hardcoded.
Settings for network servers.
virtual ~CSettingsNetworkServersComponent()
Destructor.
CStatusMessage setAndSave(const T &value, qint64 timestamp=0)
Write and save in the same step. Must be called from the thread in which the owner lives.
const T & getThreadLocal() const
Read the current value.
T get() const
Get a copy of the current value.
bool isEmpty() const
Message empty.
bool isEmpty() const
Synonym for empty.
Streamable status message, e.g.
void addCategories(const CLogCategoryList &categories)
Add categories, avoids duplicates.
Status messages, e.g. from Core -> GUI.
bool isFailure() const
Any message is marked as failure.
void addCategories(const CLogCategoryList &categories)
Add some categories to all messages in the list.
Value object encapsulating information of a server.
Value object encapsulating a list of servers.
SWIFT_GUI_EXPORT swift::gui::CGuiApplication * sGui
Single instance of GUI application object.
Core data traits (aka cached values) and classes.
Backend services of the swift project, like dealing with the network or the simulators.
High level reusable GUI components.
Free functions in swift::misc.