qt gui: clean-up QCheckBox.stateChanged handling
Some checkboxes, e.g. main_window.warn_if_testnet became buggy with pyqt6:
looks like the stateChanged signal passes an int, not a Qt.CheckState.
(and note that Qt.CheckState is an Enum, not an IntEnum).
So `x == Qt.CheckState.Checked` would always evaluate to False.
```
def on_cb(_x):
print(f"heyheyhey. {_x=!r}, {Qt.CheckState.Checked=!r}, {cb.checkState()=!r}, {cb.isChecked()=!r}")
cb = QCheckBox("")
cb.stateChanged.connect(on_cb)
```
heyheyhey. x=2, Qt.CheckState.Checked=<CheckState.Checked: 2>, cb.checkState()=<CheckState.Checked: 2>, cb.isChecked()=True
heyheyhey. x=0, Qt.CheckState.Checked=<CheckState.Checked: 2>, cb.checkState()=<CheckState.Unchecked: 0>, cb.isChecked()=False
This commit is contained in:
@@ -139,8 +139,8 @@ class ChannelsList(MyTreeView):
|
||||
def force_close(self, channel_id):
|
||||
self.save_backup = True
|
||||
backup_cb = QCheckBox('Create a backup now', checked=True)
|
||||
def on_checked(b):
|
||||
self.save_backup = bool(b)
|
||||
def on_checked(_x):
|
||||
self.save_backup = backup_cb.isChecked()
|
||||
backup_cb.stateChanged.connect(on_checked)
|
||||
chan = self.lnworker.channels[channel_id]
|
||||
to_self_delay = chan.config[REMOTE].to_self_delay
|
||||
|
||||
@@ -594,9 +594,9 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, Logger, QtEventListener):
|
||||
])
|
||||
cb = QCheckBox(_("Don't show this again."))
|
||||
cb_checked = False
|
||||
def on_cb(x):
|
||||
def on_cb(_x):
|
||||
nonlocal cb_checked
|
||||
cb_checked = x == Qt.CheckState.Checked
|
||||
cb_checked = cb.isChecked()
|
||||
cb.stateChanged.connect(on_cb)
|
||||
self.show_warning(msg, title=_('Testnet'), checkbox=cb)
|
||||
if cb_checked:
|
||||
|
||||
@@ -114,8 +114,8 @@ class SettingsDialog(QDialog, QtEventListener):
|
||||
# lightning
|
||||
trampoline_cb = checkbox_from_configvar(self.config.cv.LIGHTNING_USE_GOSSIP)
|
||||
trampoline_cb.setChecked(not self.config.LIGHTNING_USE_GOSSIP)
|
||||
def on_trampoline_checked(use_trampoline):
|
||||
use_trampoline = bool(use_trampoline)
|
||||
def on_trampoline_checked(_x):
|
||||
use_trampoline = trampoline_cb.isChecked()
|
||||
if not use_trampoline:
|
||||
if not window.question('\n'.join([
|
||||
_("Are you sure you want to disable trampoline?"),
|
||||
@@ -137,15 +137,15 @@ class SettingsDialog(QDialog, QtEventListener):
|
||||
|
||||
legacy_add_trampoline_cb = checkbox_from_configvar(self.config.cv.LIGHTNING_LEGACY_ADD_TRAMPOLINE)
|
||||
legacy_add_trampoline_cb.setChecked(self.config.LIGHTNING_LEGACY_ADD_TRAMPOLINE)
|
||||
def on_legacy_add_trampoline_checked(b):
|
||||
self.config.LIGHTNING_LEGACY_ADD_TRAMPOLINE = bool(b)
|
||||
def on_legacy_add_trampoline_checked(_x):
|
||||
self.config.LIGHTNING_LEGACY_ADD_TRAMPOLINE = legacy_add_trampoline_cb.isChecked()
|
||||
legacy_add_trampoline_cb.stateChanged.connect(on_legacy_add_trampoline_checked)
|
||||
|
||||
remote_wt_cb = checkbox_from_configvar(self.config.cv.WATCHTOWER_CLIENT_ENABLED)
|
||||
remote_wt_cb.setChecked(self.config.WATCHTOWER_CLIENT_ENABLED)
|
||||
def on_remote_wt_checked(x):
|
||||
self.config.WATCHTOWER_CLIENT_ENABLED = bool(x)
|
||||
self.watchtower_url_e.setEnabled(bool(x))
|
||||
def on_remote_wt_checked(_x):
|
||||
self.config.WATCHTOWER_CLIENT_ENABLED = remote_wt_cb.isChecked()
|
||||
self.watchtower_url_e.setEnabled(remote_wt_cb.isChecked())
|
||||
remote_wt_cb.stateChanged.connect(on_remote_wt_checked)
|
||||
watchtower_url = self.config.WATCHTOWER_CLIENT_URL
|
||||
self.watchtower_url_e = QLineEdit(watchtower_url)
|
||||
@@ -194,8 +194,8 @@ class SettingsDialog(QDialog, QtEventListener):
|
||||
|
||||
msat_cb = checkbox_from_configvar(self.config.cv.BTC_AMOUNTS_PREC_POST_SAT)
|
||||
msat_cb.setChecked(self.config.BTC_AMOUNTS_PREC_POST_SAT > 0)
|
||||
def on_msat_checked(v):
|
||||
prec = 3 if v == Qt.CheckState.Checked else 0
|
||||
def on_msat_checked(_x):
|
||||
prec = 3 if msat_cb.isChecked() else 0
|
||||
if self.config.amt_precision_post_satoshi != prec:
|
||||
self.config.amt_precision_post_satoshi = prec
|
||||
self.config.BTC_AMOUNTS_PREC_POST_SAT = prec
|
||||
@@ -224,8 +224,8 @@ class SettingsDialog(QDialog, QtEventListener):
|
||||
|
||||
thousandsep_cb = checkbox_from_configvar(self.config.cv.BTC_AMOUNTS_ADD_THOUSANDS_SEP)
|
||||
thousandsep_cb.setChecked(self.config.BTC_AMOUNTS_ADD_THOUSANDS_SEP)
|
||||
def on_set_thousandsep(v):
|
||||
checked = v == Qt.CheckState.Checked
|
||||
def on_set_thousandsep(_x):
|
||||
checked = thousandsep_cb.isChecked()
|
||||
if self.config.amt_add_thousands_sep != checked:
|
||||
self.config.amt_add_thousands_sep = checked
|
||||
self.config.BTC_AMOUNTS_ADD_THOUSANDS_SEP = checked
|
||||
@@ -258,14 +258,14 @@ class SettingsDialog(QDialog, QtEventListener):
|
||||
|
||||
updatecheck_cb = checkbox_from_configvar(self.config.cv.AUTOMATIC_CENTRALIZED_UPDATE_CHECKS)
|
||||
updatecheck_cb.setChecked(self.config.AUTOMATIC_CENTRALIZED_UPDATE_CHECKS)
|
||||
def on_set_updatecheck(v):
|
||||
self.config.AUTOMATIC_CENTRALIZED_UPDATE_CHECKS = (v == Qt.CheckState.Checked)
|
||||
def on_set_updatecheck(_x):
|
||||
self.config.AUTOMATIC_CENTRALIZED_UPDATE_CHECKS = updatecheck_cb.isChecked()
|
||||
updatecheck_cb.stateChanged.connect(on_set_updatecheck)
|
||||
|
||||
filelogging_cb = checkbox_from_configvar(self.config.cv.WRITE_LOGS_TO_DISK)
|
||||
filelogging_cb.setChecked(self.config.WRITE_LOGS_TO_DISK)
|
||||
def on_set_filelogging(v):
|
||||
self.config.WRITE_LOGS_TO_DISK = (v == Qt.CheckState.Checked)
|
||||
def on_set_filelogging(_x):
|
||||
self.config.WRITE_LOGS_TO_DISK = filelogging_cb.isChecked()
|
||||
self.need_restart = True
|
||||
filelogging_cb.stateChanged.connect(on_set_filelogging)
|
||||
|
||||
@@ -355,8 +355,8 @@ class SettingsDialog(QDialog, QtEventListener):
|
||||
self.fx.set_exchange(exchange)
|
||||
self.app.update_fiat_signal.emit()
|
||||
|
||||
def on_history_rates(checked):
|
||||
self.config.FX_HISTORY_RATES = bool(checked)
|
||||
def on_history_rates(_x):
|
||||
self.config.FX_HISTORY_RATES = self.history_rates_cb.isChecked()
|
||||
if not self.fx:
|
||||
return
|
||||
update_exchanges()
|
||||
|
||||
Reference in New Issue
Block a user