diff --git a/src/blackgui/components/networkdetailscomponent.cpp b/src/blackgui/components/networkdetailscomponent.cpp index e438ae7d1..2c4a83486 100644 --- a/src/blackgui/components/networkdetailscomponent.cpp +++ b/src/blackgui/components/networkdetailscomponent.cpp @@ -52,8 +52,10 @@ namespace BlackGui ui->form_FsdDetails->showEnableInfo(true); ui->form_FsdDetails->setFsdSetupEnabled(false); + ui->form_FsdDetails->setReadOnly(false); ui->form_Voice->showEnableInfo(true); ui->form_Voice->setVoiceSetupEnabled(false); + ui->form_Voice->setReadOnly(false); constexpr int MaxLength = 10; constexpr int MinLength = 0; @@ -82,6 +84,12 @@ namespace BlackGui 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; @@ -108,6 +116,12 @@ namespace BlackGui return ui->form_FsdDetails->getValue(); } + void CNetworkDetailsComponent::setAlwaysAllowOverride(bool allow) + { + ui->form_FsdDetails->setAlwaysAllowOverride(allow); + ui->form_Voice->setAlwaysAllowOverride(allow); + } + bool CNetworkDetailsComponent::isFsdSetupOverrideEnabled() const { return ui->form_FsdDetails->isFsdSetupEnabled(); @@ -197,6 +211,14 @@ namespace BlackGui { 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 diff --git a/src/blackgui/components/networkdetailscomponent.h b/src/blackgui/components/networkdetailscomponent.h index a9e90befd..2fac1bc06 100644 --- a/src/blackgui/components/networkdetailscomponent.h +++ b/src/blackgui/components/networkdetailscomponent.h @@ -65,6 +65,9 @@ namespace BlackGui //! FSD setup BlackMisc::Network::CFsdSetup getFsdSetup() const; + //! Allow override even in read only mode + void setAlwaysAllowOverride(bool allow); + //! Specific setup enabled? bool isFsdSetupOverrideEnabled() const; @@ -80,6 +83,9 @@ namespace BlackGui //! Login mode void setLoginMode(BlackCore::INetwork::LoginMode mode); + //! Reset state + void resetState(); + //! Selected server @{ bool isVatsimServerSelected() const; bool isOtherServerSelected() const; @@ -126,6 +132,9 @@ namespace BlackGui //! 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 685210a1b..5a57fbc8e 100644 --- a/src/blackgui/components/networkdetailscomponent.ui +++ b/src/blackgui/components/networkdetailscomponent.ui @@ -362,7 +362,7 @@ - + :/pastel/icons/pastel/16/close.png:/pastel/icons/pastel/16/close.png