1
0

restore invoices_label and requests_label. move paytomany and toggle_qr_window from main menu to toolbar

This commit is contained in:
ThomasV
2023-03-11 18:08:00 +01:00
parent d6a65a06a7
commit 5ad4023e7d
5 changed files with 15 additions and 7 deletions

View File

@@ -134,6 +134,7 @@ class InvoiceList(MyTreeView):
def hide_if_empty(self):
b = self.std_model.rowCount() > 0
self.setVisible(b)
self.send_tab.invoices_label.setVisible(b)
def create_menu(self, position):
wallet = self.wallet

View File

@@ -730,9 +730,6 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, Logger, QtEventListener):
tools_menu.addAction(_("&Encrypt/decrypt message"), self.encrypt_message)
tools_menu.addSeparator()
paytomany_menu = tools_menu.addAction(_("&Pay to many"), self.send_tab.paytomany)
tools_menu.addAction(_("&Show QR code in separate window"), self.toggle_qr_window)
raw_transaction_menu = tools_menu.addMenu(_("&Load transaction"))
raw_transaction_menu.addAction(_("&From file"), self.do_process_from_file)
raw_transaction_menu.addAction(_("&From text"), self.do_process_from_text)

View File

@@ -168,11 +168,16 @@ class ReceiveTab(QWidget, MessageBoxMixin, Logger):
self.receive_tabs.setSizePolicy(receive_tabs_sp)
self.receive_tabs.setVisible(False)
self.receive_requests_label = QLabel(_('Requests'))
# with QDarkStyle, this label may partially cover the qrcode widget.
# setMaximumWidth prevents that
self.receive_requests_label.setMaximumWidth(400)
from .request_list import RequestList
self.request_list = RequestList(self)
self.toolbar = self.request_list.create_toolbar_with_menu(
_('Requests'),
'',
[
(_("Toggle QR code window"), self.window.toggle_qr_window),
(_("Import requests"), self.window.import_requests),
(_("Export requests"), self.window.export_requests),
])
@@ -188,9 +193,10 @@ class ReceiveTab(QWidget, MessageBoxMixin, Logger):
self.searchable_list = self.request_list
vbox = QVBoxLayout(self)
vbox.addLayout(self.toolbar)
vbox.addLayout(hbox)
vbox.addStretch()
vbox.addLayout(self.toolbar)
vbox.addWidget(self.receive_requests_label)
vbox.addWidget(self.request_list)
vbox.setStretchFactor(hbox, 40)
vbox.setStretchFactor(self.request_list, 60)

View File

@@ -167,6 +167,7 @@ class RequestList(MyTreeView):
def hide_if_empty(self):
b = self.std_model.rowCount() > 0
self.setVisible(b)
self.receive_tab.receive_requests_label.setVisible(b)
if not b:
# list got hidden, so selected item should also be cleared:
self.item_changed(None)

View File

@@ -146,11 +146,13 @@ class SendTab(QWidget, MessageBoxMixin, Logger):
self.set_onchain(False)
self.invoices_label = QLabel(_('Invoices'))
from .invoice_list import InvoiceList
self.invoice_list = InvoiceList(self)
self.toolbar = self.invoice_list.create_toolbar_with_menu(
_('Invoices'),
'',
[
(_("&Pay to many"), self.paytomany),
(_("Import invoices"), self.window.import_invoices),
(_("Export invoices"), self.window.export_invoices),
])
@@ -162,9 +164,10 @@ class SendTab(QWidget, MessageBoxMixin, Logger):
hbox.addStretch(1)
vbox = QVBoxLayout(self)
vbox.addLayout(self.toolbar)
vbox.addLayout(hbox)
vbox.addStretch(1)
vbox.addLayout(self.toolbar)
vbox.addWidget(self.invoices_label)
vbox.addWidget(self.invoice_list)
vbox.setStretchFactor(self.invoice_list, 1000)
self.searchable_list = self.invoice_list