Ref T659, improved handling of override checkbox in FSD details/voice

* the checkbox can be always enabled
* or disabled in read only mode
This commit is contained in:
Klaus Basan
2019-08-06 20:09:00 +02:00
committed by Mat Sutcliffe
parent 4e9bf35cfc
commit d546ebdcba
7 changed files with 60 additions and 3 deletions

View File

@@ -65,6 +65,16 @@ namespace BlackGui
ui->cb_3LetterAirlineICAO->setChecked(setup.force3LetterAirlineCodes());
}
void CFsdSetupForm::setAlwaysAllowOverride(bool allow)
{
m_alwaysAllowOverride = allow;
if (allow)
{
ui->cb_Override->setEnabled(true);
CGuiUtility::checkBoxReadOnly(ui->cb_Override, false);
}
}
bool CFsdSetupForm::isFsdSetupEnabled() const
{
return ui->cb_Override->isChecked();
@@ -86,12 +96,20 @@ namespace BlackGui
ui->le_TextCodec->setReadOnly(readonly);
ui->pb_SetDefaults->setEnabled(!readonly);
CGuiUtility::checkBoxesReadOnly(this, readonly);
CGuiUtility::checkBoxReadOnly(ui->cb_Override, false); // always editable
if (m_alwaysAllowOverride)
{
ui->cb_Override->setEnabled(true);
CGuiUtility::checkBoxReadOnly(ui->cb_Override, false);
}
/**
if (readonly && ui->cb_Override->isChecked())
{
// this is no value which will be stored
ui->cb_Override->setChecked(false);
}
**/
this->forceStyleSheetUpdate();
}