move config settings that are related to invoice creation to receive tab.
This commit is contained in:
@@ -175,10 +175,16 @@ class ReceiveTab(QWidget, MessageBoxMixin, Logger):
|
|||||||
from .request_list import RequestList
|
from .request_list import RequestList
|
||||||
self.request_list = RequestList(self)
|
self.request_list = RequestList(self)
|
||||||
self.toolbar, menu = self.request_list.create_toolbar_with_menu('')
|
self.toolbar, menu = self.request_list.create_toolbar_with_menu('')
|
||||||
|
menu.addConfig(
|
||||||
|
_('Add on-chain fallback to lightning requests'), 'bolt11_fallback', True,
|
||||||
|
callback=self.on_toggle_bolt11_fallback)
|
||||||
|
menu.addConfig(
|
||||||
|
_('Add lightning requests to bitcoin URIs'), 'bip21_lightning', False,
|
||||||
|
tooltip=_('This may result in large QR codes'),
|
||||||
|
callback=self.update_current_request)
|
||||||
menu.addToggle(_("Show QR code window"), self.window.toggle_qr_window)
|
menu.addToggle(_("Show QR code window"), self.window.toggle_qr_window)
|
||||||
menu.addAction(_("Import requests"), self.window.import_requests)
|
menu.addAction(_("Import requests"), self.window.import_requests)
|
||||||
menu.addAction(_("Export requests"), self.window.export_requests)
|
menu.addAction(_("Export requests"), self.window.export_requests)
|
||||||
|
|
||||||
# layout
|
# layout
|
||||||
vbox_g = QVBoxLayout()
|
vbox_g = QVBoxLayout()
|
||||||
vbox_g.addLayout(grid)
|
vbox_g.addLayout(grid)
|
||||||
@@ -199,6 +205,12 @@ class ReceiveTab(QWidget, MessageBoxMixin, Logger):
|
|||||||
vbox.setStretchFactor(self.request_list, 60)
|
vbox.setStretchFactor(self.request_list, 60)
|
||||||
self.request_list.update() # after parented and put into a layout, can update without flickering
|
self.request_list.update() # after parented and put into a layout, can update without flickering
|
||||||
|
|
||||||
|
def on_toggle_bolt11_fallback(self):
|
||||||
|
if not self.wallet.lnworker:
|
||||||
|
return
|
||||||
|
self.wallet.lnworker.clear_invoices_cache()
|
||||||
|
self.update_current_request()
|
||||||
|
|
||||||
def on_tab_changed(self, i):
|
def on_tab_changed(self, i):
|
||||||
self.config.set_key('receive_tabs_index', i)
|
self.config.set_key('receive_tabs_index', i)
|
||||||
title, data = self.get_tab_data(i)
|
title, data = self.get_tab_data(i)
|
||||||
|
|||||||
@@ -104,21 +104,6 @@ class SettingsDialog(QDialog, QtEventListener):
|
|||||||
self.app.update_status_signal.emit()
|
self.app.update_status_signal.emit()
|
||||||
nz.valueChanged.connect(on_nz)
|
nz.valueChanged.connect(on_nz)
|
||||||
|
|
||||||
# invoices
|
|
||||||
bolt11_fallback_cb = QCheckBox(_('Add on-chain fallback to lightning invoices'))
|
|
||||||
bolt11_fallback_cb.setChecked(bool(self.config.get('bolt11_fallback', True)))
|
|
||||||
bolt11_fallback_cb.setToolTip(_('Add fallback addresses to BOLT11 lightning invoices.'))
|
|
||||||
def on_bolt11_fallback(x):
|
|
||||||
self.config.set_key('bolt11_fallback', bool(x))
|
|
||||||
bolt11_fallback_cb.stateChanged.connect(on_bolt11_fallback)
|
|
||||||
|
|
||||||
bip21_lightning_cb = QCheckBox(_('Add lightning invoice to bitcoin URIs'))
|
|
||||||
bip21_lightning_cb.setChecked(bool(self.config.get('bip21_lightning', False)))
|
|
||||||
bip21_lightning_cb.setToolTip(_('This may create larger qr codes.'))
|
|
||||||
def on_bip21_lightning(x):
|
|
||||||
self.config.set_key('bip21_lightning', bool(x))
|
|
||||||
bip21_lightning_cb.stateChanged.connect(on_bip21_lightning)
|
|
||||||
|
|
||||||
# lightning
|
# lightning
|
||||||
help_recov = _(messages.MSG_RECOVERABLE_CHANNELS)
|
help_recov = _(messages.MSG_RECOVERABLE_CHANNELS)
|
||||||
recov_cb = QCheckBox(_("Create recoverable channels"))
|
recov_cb = QCheckBox(_("Create recoverable channels"))
|
||||||
@@ -426,10 +411,6 @@ class SettingsDialog(QDialog, QtEventListener):
|
|||||||
gui_widgets.append((nz_label, nz))
|
gui_widgets.append((nz_label, nz))
|
||||||
gui_widgets.append((msat_cb, None))
|
gui_widgets.append((msat_cb, None))
|
||||||
gui_widgets.append((thousandsep_cb, None))
|
gui_widgets.append((thousandsep_cb, None))
|
||||||
invoices_widgets = []
|
|
||||||
invoices_widgets.append((bolt11_fallback_cb, None))
|
|
||||||
invoices_widgets.append((bip21_lightning_cb, None))
|
|
||||||
|
|
||||||
lightning_widgets = []
|
lightning_widgets = []
|
||||||
lightning_widgets.append((recov_cb, None))
|
lightning_widgets.append((recov_cb, None))
|
||||||
lightning_widgets.append((trampoline_cb, None))
|
lightning_widgets.append((trampoline_cb, None))
|
||||||
@@ -452,7 +433,6 @@ class SettingsDialog(QDialog, QtEventListener):
|
|||||||
|
|
||||||
tabs_info = [
|
tabs_info = [
|
||||||
(gui_widgets, _('Appearance')),
|
(gui_widgets, _('Appearance')),
|
||||||
(invoices_widgets, _('Invoices')),
|
|
||||||
(lightning_widgets, _('Lightning')),
|
(lightning_widgets, _('Lightning')),
|
||||||
(fiat_widgets, _('Fiat')),
|
(fiat_widgets, _('Fiat')),
|
||||||
(misc_widgets, _('Misc')),
|
(misc_widgets, _('Misc')),
|
||||||
|
|||||||
@@ -582,6 +582,20 @@ class MyMenu(QMenu):
|
|||||||
m.setToolTip(tooltip)
|
m.setToolTip(tooltip)
|
||||||
return m
|
return m
|
||||||
|
|
||||||
|
def addConfig(self, text:str, name:str, default:bool, *, tooltip='', callback=None):
|
||||||
|
b = self.config.get(name, default)
|
||||||
|
m = self.addAction(text, lambda: self._do_toggle_config(name, default, callback))
|
||||||
|
m.setCheckable(True)
|
||||||
|
m.setChecked(b)
|
||||||
|
m.setToolTip(tooltip)
|
||||||
|
return m
|
||||||
|
|
||||||
|
def _do_toggle_config(self, name, default, callback):
|
||||||
|
b = self.config.get(name, default)
|
||||||
|
self.config.set_key(name, not b)
|
||||||
|
if callback:
|
||||||
|
callback()
|
||||||
|
|
||||||
|
|
||||||
class MyTreeView(QTreeView):
|
class MyTreeView(QTreeView):
|
||||||
ROLE_CLIPBOARD_DATA = Qt.UserRole + 100
|
ROLE_CLIPBOARD_DATA = Qt.UserRole + 100
|
||||||
|
|||||||
Reference in New Issue
Block a user