From a75ccb9927d5d5d6b0d726df50661bd702771dfc Mon Sep 17 00:00:00 2001 From: Lars Toenning Date: Fri, 23 Aug 2024 21:43:37 +0200 Subject: [PATCH] refactor(ui): Do not allow to overwrite FSD settings from connect page Overwriting FSD settings from the connect page (instead of changing the server settings itself) introduced some complexity in the UI. As spontaniously changing the FSD settings is likely a VERY rare use-case and to simplify the logic/UI, it should only be done from the server settings itself. --- src/blackgui/components/loginadvcomponent.cpp | 15 --- src/blackgui/components/loginadvcomponent.h | 3 - src/blackgui/components/logincomponent.cpp | 26 ------ src/blackgui/components/logincomponent.h | 3 - src/blackgui/components/logincomponent.ui | 54 ----------- src/blackgui/components/logindialog.cpp | 4 - .../components/networkdetailscomponent.cpp | 70 +------------- .../components/networkdetailscomponent.h | 35 ------- .../components/networkdetailscomponent.ui | 93 ------------------- 9 files changed, 1 insertion(+), 302 deletions(-) diff --git a/src/blackgui/components/loginadvcomponent.cpp b/src/blackgui/components/loginadvcomponent.cpp index 45570662e..c95f2680e 100644 --- a/src/blackgui/components/loginadvcomponent.cpp +++ b/src/blackgui/components/loginadvcomponent.cpp @@ -81,9 +81,6 @@ namespace BlackGui::Components this->setForceSmall(true); this->showKillButton(false); - // override details - ui->comp_NetworkDetails->setAlwaysAllowOverride(true); - // Stored data this->loadRememberedUserData(); @@ -156,13 +153,6 @@ namespace BlackGui::Components const CUser user = this->getUserFromPilotGuiValues(); currentServer.setUser(user); - // FSD setup, then override - if (ui->comp_NetworkDetails->isFsdSetupOverrideEnabled()) - { - const CFsdSetup fsd = ui->comp_NetworkDetails->getFsdSetup(); - currentServer.setFsdSetup(fsd); - } - // update for own aircraft context sGui->getIContextOwnAircraft()->updateOwnAircraftPilot(currentServer.getUser()); @@ -226,11 +216,6 @@ namespace BlackGui::Components } } - void CLoginAdvComponent::resetState() - { - ui->comp_NetworkDetails->resetState(); - } - void CLoginAdvComponent::loadRememberedUserData() { const CServer lastServer = m_networkSetup.getLastServer(); diff --git a/src/blackgui/components/loginadvcomponent.h b/src/blackgui/components/loginadvcomponent.h index c2d51c1a7..6479427e0 100644 --- a/src/blackgui/components/loginadvcomponent.h +++ b/src/blackgui/components/loginadvcomponent.h @@ -61,9 +61,6 @@ namespace BlackGui::Components //! Login requested void toggleNetworkConnection(); - //! Reset state - void resetState(); - signals: //! Login void loginOrLogoffSuccessful(); diff --git a/src/blackgui/components/logincomponent.cpp b/src/blackgui/components/logincomponent.cpp index 3862c55bf..5b5ec6d45 100644 --- a/src/blackgui/components/logincomponent.cpp +++ b/src/blackgui/components/logincomponent.cpp @@ -89,10 +89,6 @@ namespace BlackGui::Components connect(ui->pb_OtherServersGotoSettings, &QPushButton::pressed, this, &CLoginComponent::requestNetworkSettings); connect(&m_networkSetup, &CNetworkSetup::setupChanged, this, &CLoginComponent::reloadOtherServersSetup, Qt::QueuedConnection); - ui->form_FsdDetails->showEnableInfo(true); - ui->form_FsdDetails->setFsdSetupEnabled(false); - ui->form_FsdDetails->setAlwaysAllowOverride(true); - ui->lblp_AircraftCombinedType->setToolTips("ok", "wrong"); ui->lblp_AirlineIcao->setToolTips("ok", "wrong"); ui->lblp_AircraftIcao->setToolTips("ok", "wrong"); @@ -124,7 +120,6 @@ namespace BlackGui::Components connect(ui->le_AircraftCombinedType, &QLineEdit::editingFinished, this, &CLoginComponent::validateAircraftValues); connect(ui->selector_AircraftIcao, &CDbAircraftIcaoSelectorComponent::changedAircraftIcao, this, &CLoginComponent::onChangedAircraftIcao, Qt::QueuedConnection); connect(ui->selector_AirlineIcao, &CDbAirlineIcaoSelectorComponent::changedAirlineIcao, this, &CLoginComponent::onChangedAirlineIcao, Qt::QueuedConnection); - connect(ui->tw_Details, &QTabWidget::currentChanged, this, &CLoginComponent::onDetailsTabChanged); if (sGui && sGui->getIContextSimulator()) { @@ -259,13 +254,6 @@ namespace BlackGui::Components const CUser user = this->getUserFromPilotGuiValues(); currentServer.setUser(user); - // FSD setup, then override - if (ui->form_FsdDetails->isFsdSetupEnabled()) - { - const CFsdSetup fsd = ui->form_FsdDetails->getValue(); - currentServer.setFsdSetup(fsd); - } - ui->frp_CurrentServer->setServer(currentServer); sGui->getIContextOwnAircraft()->updateOwnAircraftPilot(currentServer.getUser()); @@ -433,20 +421,6 @@ namespace BlackGui::Components ui->wi_VatsimButtons->setVisible(visible); } - void CLoginComponent::onDetailsTabChanged(int index) - { - Q_UNUSED(index) - const bool showNetwork = (ui->tw_Details->currentWidget() != ui->tb_FsdDetails); - - const CServer server = this->getCurrentServer(); - - // only override if not yet enabled - if (!ui->form_FsdDetails->isFsdSetupEnabled()) { ui->form_FsdDetails->setValue(server.getFsdSetup()); } - - ui->tw_Network->setVisible(showNetwork); - ui->tw_Details->setMinimumHeight(showNetwork ? 0 : 125); - } - CLoginComponent::CGuiAircraftValues CLoginComponent::getAircraftValuesFromGui() const { CGuiAircraftValues values; diff --git a/src/blackgui/components/logincomponent.h b/src/blackgui/components/logincomponent.h index 15a4e172b..0560a5b94 100644 --- a/src/blackgui/components/logincomponent.h +++ b/src/blackgui/components/logincomponent.h @@ -227,9 +227,6 @@ namespace BlackGui::Components //! Set the server buttons visible void setServerButtonsVisible(bool visible); - //! Tab index changed - void onDetailsTabChanged(int index); - static constexpr int OverlayMessageMs = 5000; static constexpr int LogoffIntervalSeconds = 20; //!< time before logoff diff --git a/src/blackgui/components/logincomponent.ui b/src/blackgui/components/logincomponent.ui index 87cb1b20b..5335298eb 100644 --- a/src/blackgui/components/logincomponent.ui +++ b/src/blackgui/components/logincomponent.ui @@ -258,59 +258,6 @@ - - - FSD details - - - - 3 - - - 3 - - - 3 - - - 3 - - - - - true - - - - - 0 - 0 - 293 - 55 - - - - - 2 - - - 2 - - - 2 - - - 2 - - - - - - - - - - Matching log @@ -887,7 +834,6 @@ pb_RefreshOtherServers pb_OtherServersGotoSettings pb_OverrideCredentialsOtherServers - sa_FsdDetails diff --git a/src/blackgui/components/logindialog.cpp b/src/blackgui/components/logindialog.cpp index db8f37138..f456c9f81 100644 --- a/src/blackgui/components/logindialog.cpp +++ b/src/blackgui/components/logindialog.cpp @@ -51,10 +51,6 @@ namespace BlackGui::Components { ui->comp_LoginOverviewComponent->showCurrentValues(); } - else - { - ui->comp_LoginComponent->resetState(); - } } ui->comp_LoginComponent->setVisible(!connected); diff --git a/src/blackgui/components/networkdetailscomponent.cpp b/src/blackgui/components/networkdetailscomponent.cpp index f1be5c1d3..c2b5f20f7 100644 --- a/src/blackgui/components/networkdetailscomponent.cpp +++ b/src/blackgui/components/networkdetailscomponent.cpp @@ -22,19 +22,13 @@ namespace BlackGui::Components ui(new Ui::CNetworkDetailsComponent) { ui->setupUi(this); - ui->tw_Details->setCurrentIndex(0); - ui->sw_NetworkServerDetails->setCurrentIndex(PageServer); connect(ui->comp_OtherServers, &CServerListSelector::serverChanged, this, &CNetworkDetailsComponent::onSelectedServerChanged); connect(ui->comp_VatsimServers, &CServerListSelector::serverChanged, this, &CNetworkDetailsComponent::onSelectedServerChanged); connect(ui->tw_Network, &QTabWidget::currentChanged, this, &CNetworkDetailsComponent::onServerTabWidgetChanged); - connect(ui->tw_Details, &QTabWidget::currentChanged, this, &CNetworkDetailsComponent::onDetailsTabChanged); connect(ui->pb_OtherServersGotoSettings, &QPushButton::pressed, this, &CNetworkDetailsComponent::requestNetworkSettings); connect(ui->pb_OverrideCredentialsVatsim, &QPushButton::clicked, this, &CNetworkDetailsComponent::onOverrideCredentialsToPilot); connect(ui->pb_OverrideCredentialsOtherServers, &QPushButton::clicked, this, &CNetworkDetailsComponent::onOverrideCredentialsToPilot); - connect(ui->pb_DetailsVatsim, &QPushButton::clicked, this, &CNetworkDetailsComponent::onChangePage); - connect(ui->pb_DetailsOtherServers, &QPushButton::clicked, this, &CNetworkDetailsComponent::onChangePage); - connect(ui->pb_BackToServer, &QPushButton::clicked, this, &CNetworkDetailsComponent::onChangePage); connect(&m_networkSetup, &CNetworkSetup::setupChanged, this, &CNetworkDetailsComponent::reloadOtherServersSetup, Qt::QueuedConnection); // web service data @@ -43,10 +37,6 @@ namespace BlackGui::Components connect(sGui->getWebDataServices(), &CWebDataServices::dataRead, this, &CNetworkDetailsComponent::onWebServiceDataRead, Qt::QueuedConnection); } - ui->form_FsdDetails->showEnableInfo(true); - ui->form_FsdDetails->setFsdSetupEnabled(false); - ui->form_FsdDetails->setReadOnly(false); - constexpr int MaxLength = 10; constexpr int MinLength = 0; CUpperCaseValidator *ucv = new CUpperCaseValidator(MinLength, MaxLength, ui->le_PartnerCallsign); @@ -74,12 +64,6 @@ namespace BlackGui::Components ui->frp_LoginMode->setLoginMode(mode); } - void CNetworkDetailsComponent::resetState() - { - ui->sw_NetworkServerDetails->setCurrentIndex(PageServer); - this->setBackTabName(); - } - bool CNetworkDetailsComponent::isVatsimServerSelected() const { const bool vatsim = ui->tw_Network->currentWidget() == ui->tb_NetworkVatsim; @@ -88,22 +72,7 @@ namespace BlackGui::Components bool CNetworkDetailsComponent::isOtherServerSelected() const { - return ui->tw_Details->currentWidget() == ui->tb_OtherServers; - } - - CFsdSetup CNetworkDetailsComponent::getFsdSetup() const - { - return ui->form_FsdDetails->getValue(); - } - - void CNetworkDetailsComponent::setAlwaysAllowOverride(bool allow) - { - ui->form_FsdDetails->setAlwaysAllowOverride(allow); - } - - bool CNetworkDetailsComponent::isFsdSetupOverrideEnabled() const - { - return ui->form_FsdDetails->isFsdSetupEnabled(); + return ui->tw_Network->currentWidget() == ui->tb_OtherServers; } void CNetworkDetailsComponent::setServerButtonsVisible(bool visible) @@ -112,21 +81,6 @@ namespace BlackGui::Components ui->wi_VatsimButtons->setVisible(visible); } - void CNetworkDetailsComponent::onDetailsTabChanged(int index) - { - if (index == DetailsBack) - { - ui->sw_NetworkServerDetails->setCurrentIndex(PageServer); - return; - } - - Q_UNUSED(index) - const CServer server = this->getCurrentServer(); - - // only override if not yet enabled - if (!ui->form_FsdDetails->isFsdSetupEnabled()) { ui->form_FsdDetails->setValue(server.getFsdSetup()); } - } - void CNetworkDetailsComponent::onOverrideCredentialsToPilot() { CServer server; @@ -176,28 +130,6 @@ namespace BlackGui::Components } } - void CNetworkDetailsComponent::onChangePage() - { - const QObject *s = QObject::sender(); - if (s == ui->pb_DetailsVatsim || s == ui->pb_DetailsOtherServers) - { - ui->sw_NetworkServerDetails->setCurrentIndex(PageDetails); - ui->tw_Details->setCurrentIndex(DetailsServer); - } - else - { - ui->sw_NetworkServerDetails->setCurrentIndex(PageServer); - } - this->setBackTabName(); - } - - void CNetworkDetailsComponent::setBackTabName() - { - const QString name = this->getCurrentServer().getName(); - const int index = ui->tw_Details->indexOf(ui->tb_BackToServer); - ui->tw_Details->setTabText(index, QStringLiteral("Back to server '%1'").arg(name)); - } - CServer CNetworkDetailsComponent::getCurrentVatsimServer() const { CServer server = ui->comp_VatsimServers->currentServer(); diff --git a/src/blackgui/components/networkdetailscomponent.h b/src/blackgui/components/networkdetailscomponent.h index 7e65e3652..0e16f3945 100644 --- a/src/blackgui/components/networkdetailscomponent.h +++ b/src/blackgui/components/networkdetailscomponent.h @@ -37,44 +37,18 @@ namespace BlackGui::Components LoginOthers, }; - //! Pages - enum Page - { - PageServer, - PageDetails - }; - - //! Details - enum Details - { - DetailsServer, - DetailsBack - }; - //! Ctor explicit CNetworkDetailsComponent(QWidget *parent = nullptr); //! Dtor virtual ~CNetworkDetailsComponent() override; - //! FSD setup - BlackMisc::Network::CFsdSetup getFsdSetup() const; - - //! Allow override even in read only mode - void setAlwaysAllowOverride(bool allow); - - //! Specific setup enabled? - bool isFsdSetupOverrideEnabled() const; - //! Login mode BlackMisc::Network::CLoginMode getLoginMode() const; //! Login mode void setLoginMode(BlackMisc::Network::CLoginMode mode); - //! Reset state - void resetState(); - //! @{ //! Selected server bool isVatsimServerSelected() const; @@ -116,21 +90,12 @@ namespace BlackGui::Components //! Set the server buttons visible void setServerButtonsVisible(bool visible); - //! Tab index changed - void onDetailsTabChanged(int index); - //! Override credentials void onOverrideCredentialsToPilot(); //! VATSIM data file was loaded void onWebServiceDataRead(BlackMisc::Network::CEntityFlags::Entity entity, BlackMisc::Network::CEntityFlags::ReadState state, int number, const QUrl &url); - //! Change page - void onChangePage(); - - //! Set the back tab - void setBackTabName(); - BlackCore::Data::CNetworkSetup m_networkSetup; //!< servers last used bool m_updatePilotOnServerChanges = true; QScopedPointer ui; diff --git a/src/blackgui/components/networkdetailscomponent.ui b/src/blackgui/components/networkdetailscomponent.ui index de68c62e8..a0261d85e 100644 --- a/src/blackgui/components/networkdetailscomponent.ui +++ b/src/blackgui/components/networkdetailscomponent.ui @@ -27,10 +27,6 @@ 0 - - - 0 - @@ -101,13 +97,6 @@ - - - - details - - - @@ -201,13 +190,6 @@ - - - - details - - - @@ -282,77 +264,6 @@ - - - - 2 - - - 2 - - - 2 - - - 2 - - - - - 0 - - - - FSD details - - - - 3 - - - 3 - - - 3 - - - 3 - - - - - - 150 - 75 - - - - - - - - - - :/pastel/icons/pastel/16/close.png:/pastel/icons/pastel/16/close.png - - - Back to server - - - - - - back to server - - - - - - - - - - @@ -378,16 +289,12 @@ tw_Network comp_VatsimServers - pb_DetailsVatsim pb_OverrideCredentialsVatsim le_PartnerCallsign comp_OtherServers pb_RefreshOtherServers pb_OtherServersGotoSettings - pb_DetailsOtherServers pb_OverrideCredentialsOtherServers - tw_Details - pb_BackToServer