do not use hardcoded tab indexes
This commit is contained in:
parent
cc852ef6a5
commit
f92807f019
@ -123,13 +123,15 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
self.completions = QStringListModel()
|
self.completions = QStringListModel()
|
||||||
|
|
||||||
self.tabs = tabs = QTabWidget(self)
|
self.tabs = tabs = QTabWidget(self)
|
||||||
tabs.addTab(self.create_history_tab(), _('History') )
|
self.send_tab = self.create_send_tab()
|
||||||
tabs.addTab(self.create_send_tab(), _('Send') )
|
self.receive_tab = self.create_receive_tab()
|
||||||
tabs.addTab(self.create_receive_tab(), _('Receive') )
|
|
||||||
self.addresses_tab = self.create_addresses_tab()
|
self.addresses_tab = self.create_addresses_tab()
|
||||||
|
self.utxo_tab = self.create_utxo_tab()
|
||||||
|
tabs.addTab(self.create_history_tab(), _('History') )
|
||||||
|
tabs.addTab(self.send_tab, _('Send') )
|
||||||
|
tabs.addTab(self.receive_tab, _('Receive') )
|
||||||
if self.config.get('show_addresses_tab', False):
|
if self.config.get('show_addresses_tab', False):
|
||||||
tabs.addTab(self.addresses_tab, _('Addresses'))
|
tabs.addTab(self.addresses_tab, _('Addresses'))
|
||||||
self.utxo_tab = self.create_utxo_tab()
|
|
||||||
if self.config.get('show_utxo_tab', False):
|
if self.config.get('show_utxo_tab', False):
|
||||||
tabs.addTab(self.utxo_tab, _('Coins'))
|
tabs.addTab(self.utxo_tab, _('Coins'))
|
||||||
tabs.addTab(self.create_contacts_tab(), _('Contacts') )
|
tabs.addTab(self.create_contacts_tab(), _('Contacts') )
|
||||||
@ -691,6 +693,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
def create_history_tab(self):
|
def create_history_tab(self):
|
||||||
from history_list import HistoryList
|
from history_list import HistoryList
|
||||||
self.history_list = l = HistoryList(self)
|
self.history_list = l = HistoryList(self)
|
||||||
|
l.searchable_list = l
|
||||||
return l
|
return l
|
||||||
|
|
||||||
def show_address(self, addr):
|
def show_address(self, addr):
|
||||||
@ -785,6 +788,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
hbox.addWidget(self.receive_qr)
|
hbox.addWidget(self.receive_qr)
|
||||||
|
|
||||||
w = QWidget()
|
w = QWidget()
|
||||||
|
w.searchable_list = self.request_list
|
||||||
vbox = QVBoxLayout(w)
|
vbox = QVBoxLayout(w)
|
||||||
vbox.addLayout(hbox)
|
vbox.addLayout(hbox)
|
||||||
vbox.addStretch(1)
|
vbox.addStretch(1)
|
||||||
@ -926,11 +930,16 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
self.qr_window.setVisible(False)
|
self.qr_window.setVisible(False)
|
||||||
self.update_receive_qr()
|
self.update_receive_qr()
|
||||||
|
|
||||||
|
def show_send_tab(self):
|
||||||
|
self.tabs.setCurrentIndex(self.tabs.indexOf(self.send_tab))
|
||||||
|
|
||||||
|
def show_receive_tab(self):
|
||||||
|
self.tabs.setCurrentIndex(self.tabs.indexOf(self.receive_tab))
|
||||||
|
|
||||||
def receive_at(self, addr):
|
def receive_at(self, addr):
|
||||||
if not bitcoin.is_address(addr):
|
if not bitcoin.is_address(addr):
|
||||||
return
|
return
|
||||||
self.tabs.setCurrentIndex(2)
|
self.show_receive_tab()
|
||||||
self.receive_address_e.setText(addr)
|
self.receive_address_e.setText(addr)
|
||||||
self.new_request_button.setEnabled(True)
|
self.new_request_button.setEnabled(True)
|
||||||
|
|
||||||
@ -1092,6 +1101,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
vbox.addWidget(self.invoices_label)
|
vbox.addWidget(self.invoices_label)
|
||||||
vbox.addWidget(self.invoice_list)
|
vbox.addWidget(self.invoice_list)
|
||||||
vbox.setStretchFactor(self.invoice_list, 1000)
|
vbox.setStretchFactor(self.invoice_list, 1000)
|
||||||
|
w.searchable_list = self.invoice_list
|
||||||
run_hook('create_send_tab', grid)
|
run_hook('create_send_tab', grid)
|
||||||
return w
|
return w
|
||||||
|
|
||||||
@ -1393,7 +1403,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
self.max_button.setEnabled(not b)
|
self.max_button.setEnabled(not b)
|
||||||
|
|
||||||
def prepare_for_payment_request(self):
|
def prepare_for_payment_request(self):
|
||||||
self.tabs.setCurrentIndex(1)
|
self.show_send_tab()
|
||||||
self.payto_e.is_pr = True
|
self.payto_e.is_pr = True
|
||||||
for e in [self.payto_e, self.amount_e, self.message_e]:
|
for e in [self.payto_e, self.amount_e, self.message_e]:
|
||||||
e.setFrozen(True)
|
e.setFrozen(True)
|
||||||
@ -1445,7 +1455,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
except BaseException as e:
|
except BaseException as e:
|
||||||
self.show_error(_('Invalid bitcoin URI:') + '\n' + str(e))
|
self.show_error(_('Invalid bitcoin URI:') + '\n' + str(e))
|
||||||
return
|
return
|
||||||
self.tabs.setCurrentIndex(1)
|
self.show_send_tab()
|
||||||
r = out.get('r')
|
r = out.get('r')
|
||||||
sig = out.get('sig')
|
sig = out.get('sig')
|
||||||
name = out.get('name')
|
name = out.get('name')
|
||||||
@ -1489,6 +1499,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
|
|
||||||
def create_list_tab(self, l):
|
def create_list_tab(self, l):
|
||||||
w = QWidget()
|
w = QWidget()
|
||||||
|
w.searchable_list = l
|
||||||
vbox = QVBoxLayout()
|
vbox = QVBoxLayout()
|
||||||
w.setLayout(vbox)
|
w.setLayout(vbox)
|
||||||
vbox.setMargin(0)
|
vbox.setMargin(0)
|
||||||
@ -1528,11 +1539,11 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
|
|
||||||
def spend_coins(self, coins):
|
def spend_coins(self, coins):
|
||||||
self.set_pay_from(coins)
|
self.set_pay_from(coins)
|
||||||
self.tabs.setCurrentIndex(1)
|
self.show_send_tab()
|
||||||
self.update_fee()
|
self.update_fee()
|
||||||
|
|
||||||
def paytomany(self):
|
def paytomany(self):
|
||||||
self.tabs.setCurrentIndex(1)
|
self.show_send_tab()
|
||||||
self.payto_e.paytomany()
|
self.payto_e.paytomany()
|
||||||
msg = '\n'.join([
|
msg = '\n'.join([
|
||||||
_('Enter a list of outputs in the \'Pay to\' field.'),
|
_('Enter a list of outputs in the \'Pay to\' field.'),
|
||||||
@ -1544,7 +1555,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
|
|
||||||
def payto_contacts(self, labels):
|
def payto_contacts(self, labels):
|
||||||
paytos = [self.get_contact_payto(label) for label in labels]
|
paytos = [self.get_contact_payto(label) for label in labels]
|
||||||
self.tabs.setCurrentIndex(1)
|
self.show_send_tab()
|
||||||
if len(paytos) == 1:
|
if len(paytos) == 1:
|
||||||
self.payto_e.setText(paytos[0])
|
self.payto_e.setText(paytos[0])
|
||||||
self.amount_e.setFocus()
|
self.amount_e.setFocus()
|
||||||
@ -1708,18 +1719,9 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
|||||||
self.do_search('')
|
self.do_search('')
|
||||||
|
|
||||||
def do_search(self, t):
|
def do_search(self, t):
|
||||||
i = self.tabs.currentIndex()
|
tab = self.tabs.currentWidget()
|
||||||
if i == 0:
|
if hasattr(tab, 'searchable_list'):
|
||||||
self.history_list.filter(t)
|
tab.searchable_list.filter(t)
|
||||||
elif i == 1:
|
|
||||||
self.invoice_list.filter(t)
|
|
||||||
elif i == 2:
|
|
||||||
self.request_list.filter(t)
|
|
||||||
elif i == 3:
|
|
||||||
self.address_list.filter(t)
|
|
||||||
elif i == 4:
|
|
||||||
self.contact_list.filter(t)
|
|
||||||
|
|
||||||
|
|
||||||
def new_contact_dialog(self):
|
def new_contact_dialog(self):
|
||||||
d = WindowModalDialog(self, _("New Contact"))
|
d = WindowModalDialog(self, _("New Contact"))
|
||||||
|
|||||||
@ -29,6 +29,7 @@ from electrum.bitcoin import is_address
|
|||||||
|
|
||||||
|
|
||||||
class UTXOList(MyTreeWidget):
|
class UTXOList(MyTreeWidget):
|
||||||
|
filter_columns = [0, 2] # Address, Label
|
||||||
|
|
||||||
def __init__(self, parent=None):
|
def __init__(self, parent=None):
|
||||||
MyTreeWidget.__init__(self, parent, self.create_menu, [ _('Address'), _('Output point'), _('Label'), _('Amount'), ''], 2)
|
MyTreeWidget.__init__(self, parent, self.create_menu, [ _('Address'), _('Output point'), _('Label'), _('Amount'), ''], 2)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user