new Button widgets

This commit is contained in:
ThomasV 2015-03-14 12:28:19 +01:00
parent 94c0d86821
commit 01cfb8f8f1
10 changed files with 78 additions and 110 deletions

View File

@ -89,12 +89,10 @@ class InstallWizard(QDialog):
button.setChecked(True) button.setChecked(True)
vbox.addStretch(1) vbox.addStretch(1)
hbox, button = ok_cancel_buttons2(self, _('Next')) vbox.addLayout(Buttons(CancelButton(self), OkButton(self, _('Next'))))
vbox.addLayout(hbox)
self.set_layout(vbox) self.set_layout(vbox)
self.show() self.show()
self.raise_() self.raise_()
button.setDefault(True)
if not self.exec_(): if not self.exec_():
return None, None return None, None
@ -131,8 +129,8 @@ class InstallWizard(QDialog):
func = self.is_any func = self.is_any
vbox, seed_e = seed_dialog.enter_seed_box(msg, self, sid) vbox, seed_e = seed_dialog.enter_seed_box(msg, self, sid)
vbox.addStretch(1) vbox.addStretch(1)
hbox, button = ok_cancel_buttons2(self, _('Next')) button = OkButton(self, _('Next'))
vbox.addLayout(hbox) vbox.addLayout(Buttons(CancelButton(self), button))
button.setEnabled(False) button.setEnabled(False)
seed_e.textChanged.connect(lambda: button.setEnabled(func(self.get_seed_text(seed_e)))) seed_e.textChanged.connect(lambda: button.setEnabled(func(self.get_seed_text(seed_e))))
self.set_layout(vbox) self.set_layout(vbox)
@ -151,8 +149,8 @@ class InstallWizard(QDialog):
vbox.addLayout(vbox2) vbox.addLayout(vbox2)
entries.append(seed_e2) entries.append(seed_e2)
vbox.addStretch(1) vbox.addStretch(1)
hbox, button = ok_cancel_buttons2(self, _('Next')) button = OkButton(self, _('Next'))
vbox.addLayout(hbox) vbox.addLayout(Buttons(CancelButton(self), button))
button.setEnabled(False) button.setEnabled(False)
f = lambda: button.setEnabled( map(lambda e: Wallet.is_xpub(self.get_seed_text(e)), entries) == [True]*len(entries)) f = lambda: button.setEnabled( map(lambda e: Wallet.is_xpub(self.get_seed_text(e)), entries) == [True]*len(entries))
for e in entries: for e in entries:
@ -173,23 +171,18 @@ class InstallWizard(QDialog):
vbox.addLayout(vbox2) vbox.addLayout(vbox2)
entries.append(seed_e2) entries.append(seed_e2)
vbox.addStretch(1) vbox.addStretch(1)
hbox, button = ok_cancel_buttons2(self, _('Next')) button = OkButton(self, _('Next'))
vbox.addLayout(hbox) vbox.addLayout(Buttons(CancelButton(self), button))
button.setEnabled(False) button.setEnabled(False)
f = lambda: button.setEnabled( map(lambda e: self.is_any(self.get_seed_text(e)), entries) == [True]*len(entries)) f = lambda: button.setEnabled( map(lambda e: self.is_any(self.get_seed_text(e)), entries) == [True]*len(entries))
for e in entries: for e in entries:
e.textChanged.connect(f) e.textChanged.connect(f)
self.set_layout(vbox) self.set_layout(vbox)
if not self.exec_(): if not self.exec_():
return return
return map(lambda e: self.get_seed_text(e), entries) return map(lambda e: self.get_seed_text(e), entries)
def waiting_dialog(self, task, msg= _("Electrum is generating your addresses, please wait.")): def waiting_dialog(self, task, msg= _("Electrum is generating your addresses, please wait.")):
def target(): def target():
task() task()
@ -239,7 +232,7 @@ class InstallWizard(QDialog):
vbox.addLayout(grid) vbox.addLayout(grid)
vbox.addStretch(1) vbox.addStretch(1)
vbox.addLayout(ok_cancel_buttons(self, _('Next'))) vbox.addLayout(Buttons(CancelButton(self), OkButton(self, _('Next'))))
self.set_layout(vbox) self.set_layout(vbox)
if not self.exec_(): if not self.exec_():
@ -261,7 +254,7 @@ class InstallWizard(QDialog):
vbox.addWidget(logo) vbox.addWidget(logo)
vbox.addWidget(QLabel(msg)) vbox.addWidget(QLabel(msg))
vbox.addStretch(1) vbox.addStretch(1)
vbox.addLayout(close_button(self, _('Next'))) vbox.addLayout(Buttons(CloseButton(self, _('Next'))))
if not self.exec_(): if not self.exec_():
return None return None
@ -282,7 +275,7 @@ class InstallWizard(QDialog):
if i==0: if i==0:
button.setChecked(True) button.setChecked(True)
vbox.addStretch(1) vbox.addStretch(1)
vbox.addLayout(ok_cancel_buttons(self, _("Next"))) vbox.addLayout(Buttons(CancelButton(self), OkButton(self, _('Next'))))
if not self.exec_(): if not self.exec_():
return return
wallet_type = choices[group2.checkedId()][0] wallet_type = choices[group2.checkedId()][0]
@ -300,7 +293,7 @@ class InstallWizard(QDialog):
label.setWordWrap(True) label.setWordWrap(True)
vbox.addWidget(label) vbox.addWidget(label)
vbox.addStretch(1) vbox.addStretch(1)
vbox.addLayout(ok_cancel_buttons(self, yes_label, no_label)) vbox.addLayout(Buttons(CancelButton(self, no_label), OkButton(self, yes_label)))
if not self.exec_(): if not self.exec_():
return None return None
return True return True
@ -308,7 +301,7 @@ class InstallWizard(QDialog):
def show_seed(self, seed, sid): def show_seed(self, seed, sid):
vbox = seed_dialog.show_seed_box_msg(seed, sid) vbox = seed_dialog.show_seed_box_msg(seed, sid)
vbox.addLayout(ok_cancel_buttons(self, _("Next"))) vbox.addLayout(Buttons(CancelButton(self), OkButton(self, _("Next"))))
self.set_layout(vbox) self.set_layout(vbox)
return self.exec_() return self.exec_()

View File

@ -61,10 +61,7 @@ import csv
from electrum import ELECTRUM_VERSION from electrum import ELECTRUM_VERSION
import re import re
from util import MyTreeWidget, HelpButton, EnterButton, line_dialog, text_dialog, ok_cancel_buttons, close_button, WaitingDialog from util import *
from util import filename_field, ok_cancel_buttons2, address_field
from util import MONOSPACE_FONT
class StatusBarButton(QPushButton): class StatusBarButton(QPushButton):
@ -1849,7 +1846,7 @@ class ElectrumWindow(QMainWindow):
grid.addWidget(line2, 2, 1) grid.addWidget(line2, 2, 1)
vbox.addLayout(grid) vbox.addLayout(grid)
vbox.addLayout(ok_cancel_buttons(d)) vbox.addLayout(Buttons(CancelButton(d), OkButton(d)))
if not d.exec_(): if not d.exec_():
return return
@ -1873,11 +1870,9 @@ class ElectrumWindow(QMainWindow):
@protected @protected
def new_account_dialog(self, password): def new_account_dialog(self, password):
dialog = QDialog(self) dialog = QDialog(self)
dialog.setModal(1) dialog.setModal(1)
dialog.setWindowTitle(_("New Account")) dialog.setWindowTitle(_("New Account"))
vbox = QVBoxLayout() vbox = QVBoxLayout()
vbox.addWidget(QLabel(_('Account name')+':')) vbox.addWidget(QLabel(_('Account name')+':'))
e = QLineEdit() e = QLineEdit()
@ -1887,22 +1882,18 @@ class ElectrumWindow(QMainWindow):
l = QLabel(msg) l = QLabel(msg)
l.setWordWrap(True) l.setWordWrap(True)
vbox.addWidget(l) vbox.addWidget(l)
vbox.addLayout(Buttons(CancelButton(dialog), OkButton(dialog)))
vbox.addLayout(ok_cancel_buttons(dialog))
dialog.setLayout(vbox) dialog.setLayout(vbox)
r = dialog.exec_() r = dialog.exec_()
if not r: return if not r:
return
name = str(e.text()) name = str(e.text())
self.wallet.create_pending_account(name, password) self.wallet.create_pending_account(name, password)
self.update_address_tab() self.update_address_tab()
self.update_account_selector() self.update_account_selector()
self.tabs.setCurrentIndex(3) self.tabs.setCurrentIndex(3)
def show_master_public_keys(self): def show_master_public_keys(self):
dialog = QDialog(self) dialog = QDialog(self)
@ -1933,22 +1924,17 @@ class ElectrumWindow(QMainWindow):
name = str(b.text()) name = str(b.text())
mpk = mpk_dict.get(name, "") mpk = mpk_dict.get(name, "")
mpk_text.setText(mpk) mpk_text.setText(mpk)
mpk_text.selectAll() # for easy copying
group.buttonReleased.connect(show_mpk) group.buttonReleased.connect(show_mpk)
first_button.setChecked(True) first_button.setChecked(True)
show_mpk(first_button) show_mpk(first_button)
#combobox.currentIndexChanged[str].connect(lambda acc: show_mpk(acc))
elif len(mpk_dict) == 1: elif len(mpk_dict) == 1:
mpk = mpk_dict.values()[0] mpk = mpk_dict.values()[0]
mpk_text = ShowQRTextEdit(text=mpk) mpk_text = ShowQRTextEdit(text=mpk)
mpk_text.setMaximumHeight(170) mpk_text.setMaximumHeight(170)
mpk_text.selectAll() # for easy copying
vbox.addWidget(mpk_text) vbox.addWidget(mpk_text)
vbox.addLayout(close_button(dialog)) vbox.addLayout(Buttons(CopyButton(mpk_text, self.app), CloseButton(dialog)))
dialog.setLayout(vbox) dialog.setLayout(vbox)
dialog.exec_() dialog.exec_()
@ -2009,7 +1995,7 @@ class ElectrumWindow(QMainWindow):
vbox.addWidget( QLabel(_("Public key") + ':')) vbox.addWidget( QLabel(_("Public key") + ':'))
keys = ShowQRTextEdit(text='\n'.join(pubkey_list)) keys = ShowQRTextEdit(text='\n'.join(pubkey_list))
vbox.addWidget(keys) vbox.addWidget(keys)
vbox.addLayout(close_button(d)) vbox.addLayout(Buttons(CopyButton(keys, self.app), CloseButton(d)))
d.setLayout(vbox) d.setLayout(vbox)
d.exec_() d.exec_()
@ -2032,7 +2018,7 @@ class ElectrumWindow(QMainWindow):
vbox.addWidget( QLabel(_("Private key") + ':')) vbox.addWidget( QLabel(_("Private key") + ':'))
keys = ShowQRTextEdit(text='\n'.join(pk_list)) keys = ShowQRTextEdit(text='\n'.join(pk_list))
vbox.addWidget(keys) vbox.addWidget(keys)
vbox.addLayout(close_button(d)) vbox.addLayout(Buttons(CopyButton(keys, self.app), CloseButton(d)))
d.setLayout(vbox) d.setLayout(vbox)
d.exec_() d.exec_()
@ -2187,7 +2173,7 @@ class ElectrumWindow(QMainWindow):
grid.addWidget(pw, 1, 1) grid.addWidget(pw, 1, 1)
vbox.addLayout(grid) vbox.addLayout(grid)
vbox.addLayout(ok_cancel_buttons(d)) vbox.addLayout(Buttons(CancelButton(d), OkButton(d)))
d.setLayout(vbox) d.setLayout(vbox)
run_hook('password_dialog', pw, grid, 1) run_hook('password_dialog', pw, grid, 1)
@ -2384,9 +2370,9 @@ class ElectrumWindow(QMainWindow):
hbox, filename_e, csv_button = filename_field(self, self.config, defaultname, select_msg) hbox, filename_e, csv_button = filename_field(self, self.config, defaultname, select_msg)
vbox.addLayout(hbox) vbox.addLayout(hbox)
h, b = ok_cancel_buttons2(d, _('Export')) b = OkButton(d, _('Export'))
b.setEnabled(False) b.setEnabled(False)
vbox.addLayout(h) vbox.addLayout(Buttons(CancelButton(d), b))
private_keys = {} private_keys = {}
addresses = self.wallet.addresses(True) addresses = self.wallet.addresses(True)
@ -2469,40 +2455,30 @@ class ElectrumWindow(QMainWindow):
def export_history_dialog(self): def export_history_dialog(self):
d = QDialog(self) d = QDialog(self)
d.setWindowTitle(_('Export History')) d.setWindowTitle(_('Export History'))
d.setMinimumSize(400, 200) d.setMinimumSize(400, 200)
vbox = QVBoxLayout(d) vbox = QVBoxLayout(d)
defaultname = os.path.expanduser('~/electrum-history.csv') defaultname = os.path.expanduser('~/electrum-history.csv')
select_msg = _('Select file to export your wallet transactions to') select_msg = _('Select file to export your wallet transactions to')
hbox, filename_e, csv_button = filename_field(self, self.config, defaultname, select_msg) hbox, filename_e, csv_button = filename_field(self, self.config, defaultname, select_msg)
vbox.addLayout(hbox) vbox.addLayout(hbox)
vbox.addStretch(1) vbox.addStretch(1)
hbox = Buttons(CancelButton(d), OkButton(d, _('Export')))
h, b = ok_cancel_buttons2(d, _('Export')) vbox.addLayout(hbox)
vbox.addLayout(h) run_hook('export_history_dialog', self, hbox)
run_hook('export_history_dialog', self,hbox)
self.update() self.update()
if not d.exec_(): if not d.exec_():
return return
filename = filename_e.text() filename = filename_e.text()
if not filename: if not filename:
return return
try: try:
self.do_export_history(self.wallet, filename, csv_button.isChecked()) self.do_export_history(self.wallet, filename, csv_button.isChecked())
except (IOError, os.error), reason: except (IOError, os.error), reason:
export_error_label = _("Electrum was unable to produce a transaction export.") export_error_label = _("Electrum was unable to produce a transaction export.")
QMessageBox.critical(self, _("Unable to export history"), export_error_label + "\n" + str(reason)) QMessageBox.critical(self, _("Unable to export history"), export_error_label + "\n" + str(reason))
return return
QMessageBox.information(self,_("History exported"), _("Your wallet history has been successfully exported.")) QMessageBox.information(self,_("History exported"), _("Your wallet history has been successfully exported."))
@ -2572,8 +2548,8 @@ class ElectrumWindow(QMainWindow):
vbox.addLayout(h) vbox.addLayout(h)
vbox.addStretch(1) vbox.addStretch(1)
hbox, button = ok_cancel_buttons2(d, _('Sweep')) button = OkButton(d, _('Sweep'))
vbox.addLayout(hbox) vbox.addLayout(Buttons(CancelButton(d), button))
button.setEnabled(False) button.setEnabled(False)
def get_address(): def get_address():
@ -2787,7 +2763,7 @@ class ElectrumWindow(QMainWindow):
vbox.addLayout(grid) vbox.addLayout(grid)
vbox.addStretch(1) vbox.addStretch(1)
vbox.addLayout(close_button(d)) vbox.addLayout(Buttons(CloseButton(d)))
d.setLayout(vbox) d.setLayout(vbox)
# run the dialog # run the dialog
@ -2873,7 +2849,7 @@ class ElectrumWindow(QMainWindow):
print_msg("Error: cannot display plugin", p) print_msg("Error: cannot display plugin", p)
traceback.print_exc(file=sys.stdout) traceback.print_exc(file=sys.stdout)
grid.setRowStretch(i+1,1) grid.setRowStretch(i+1,1)
vbox.addLayout(close_button(d)) vbox.addLayout(Buttons(CloseButton(d)))
d.exec_() d.exec_()
def show_account_details(self, k): def show_account_details(self, k):
@ -2898,9 +2874,7 @@ class ElectrumWindow(QMainWindow):
text.setReadOnly(True) text.setReadOnly(True)
text.setMaximumHeight(170) text.setMaximumHeight(170)
vbox.addWidget(text) vbox.addWidget(text)
mpk_text = '\n'.join( account.get_master_pubkeys() ) mpk_text = '\n'.join( account.get_master_pubkeys() )
text.setText(mpk_text) text.setText(mpk_text)
vbox.addLayout(Buttons(CloseButton(d)))
vbox.addLayout(close_button(d))
d.exec_() d.exec_()

View File

@ -166,7 +166,7 @@ class NetworkDialog(QDialog):
grid.addWidget(self.proxy_port, 4, 3) grid.addWidget(self.proxy_port, 4, 3)
# buttons # buttons
vbox.addLayout(ok_cancel_buttons(self)) vbox.addLayout(Buttons(CancelButton(self), OkButton(self)))
self.setLayout(vbox) self.setLayout(vbox)

View File

@ -74,7 +74,7 @@ def make_password_dialog(self, wallet, msg, new_pass=True):
self.new_pw.textChanged.connect(lambda: update_password_strength(self.pw_strength, self.new_pw.text())) self.new_pw.textChanged.connect(lambda: update_password_strength(self.pw_strength, self.new_pw.text()))
vbox.addStretch(1) vbox.addStretch(1)
vbox.addLayout(ok_cancel_buttons(self)) vbox.addLayout(Buttons(CancelButton(self), OkButton(self)))
return vbox return vbox

View File

@ -22,7 +22,6 @@ import PyQt4.QtCore as QtCore
from electrum.i18n import _ from electrum.i18n import _
from electrum import mnemonic from electrum import mnemonic
from qrcodewidget import QRCodeWidget, QRDialog from qrcodewidget import QRCodeWidget, QRDialog
from util import close_button
from qrtextedit import ShowQRTextEdit, ScanQRTextEdit from qrtextedit import ShowQRTextEdit, ScanQRTextEdit
class SeedDialog(QDialog): class SeedDialog(QDialog):
@ -34,7 +33,7 @@ class SeedDialog(QDialog):
vbox = show_seed_box_msg(seed) vbox = show_seed_box_msg(seed)
if imported_keys: if imported_keys:
vbox.addWidget(QLabel("<b>"+_("WARNING")+":</b> " + _("Your wallet contains imported keys. These keys cannot be recovered from seed.") + "</b><p>")) vbox.addWidget(QLabel("<b>"+_("WARNING")+":</b> " + _("Your wallet contains imported keys. These keys cannot be recovered from seed.") + "</b><p>"))
vbox.addLayout(close_button(self)) vbox.addLayout(Buttons(CloseButton(self)))
self.setLayout(vbox) self.setLayout(vbox)

View File

@ -93,32 +93,35 @@ class HelpButton(QPushButton):
else: else:
QMessageBox.information(self, 'Help', self.help_text, 'OK') QMessageBox.information(self, 'Help', self.help_text, 'OK')
class Buttons(QHBoxLayout):
def __init__(self, *buttons):
QHBoxLayout.__init__(self)
self.addStretch(1)
for b in buttons:
self.addWidget(b)
class CloseButton(QPushButton):
def __init__(self, dialog):
QPushButton.__init__(self, _("Close"))
self.clicked.connect(dialog.close)
self.setDefault(True)
def close_button(dialog, label=None): class CopyButton(QPushButton):
hbox = QHBoxLayout() def __init__(self, text, app):
hbox.addStretch(1) QPushButton.__init__(self, _("Copy"))
b = QPushButton(label or _("Close")) self.clicked.connect(lambda: app.clipboard().setText(str(text.toPlainText())))
hbox.addWidget(b)
b.clicked.connect(dialog.close)
b.setDefault(True)
return hbox
def ok_cancel_buttons2(dialog, ok_label=None, cancel_label=None): class OkButton(QPushButton):
hbox = QHBoxLayout() def __init__(self, dialog, label=None):
hbox.addStretch(1) QPushButton.__init__(self, label or _("OK"))
b = QPushButton(cancel_label or _('Cancel')) self.clicked.connect(dialog.accept)
hbox.addWidget(b) self.setDefault(True)
b.clicked.connect(dialog.reject)
b = QPushButton(ok_label or _("OK")) class CancelButton(QPushButton):
hbox.addWidget(b) def __init__(self, dialog, label=None):
b.clicked.connect(dialog.accept) QPushButton.__init__(self, label or _("Cancel"))
b.setDefault(True) self.clicked.connect(dialog.reject)
return hbox, b
def ok_cancel_buttons(dialog, ok_label=None, cancel_label=None):
hbox, b = ok_cancel_buttons2(dialog, ok_label, cancel_label)
return hbox
def line_dialog(parent, title, label, ok_label, default=None): def line_dialog(parent, title, label, ok_label, default=None):
dialog = QDialog(parent) dialog = QDialog(parent)
@ -132,7 +135,7 @@ def line_dialog(parent, title, label, ok_label, default=None):
if default: if default:
txt.setText(default) txt.setText(default)
l.addWidget(txt) l.addWidget(txt)
l.addLayout(ok_cancel_buttons(dialog, ok_label)) l.addLayout(Buttons(CancelButton(dialog), OkButton(dialog, ok_label)))
if dialog.exec_(): if dialog.exec_():
return unicode(txt.text()) return unicode(txt.text())
@ -149,7 +152,7 @@ def text_dialog(parent, title, label, ok_label, default=None):
if default: if default:
txt.setText(default) txt.setText(default)
l.addWidget(txt) l.addWidget(txt)
l.addLayout(ok_cancel_buttons(dialog, ok_label)) l.addLayout(Buttons(CancelButton(dialog), OkButton(dialog, ok_label)))
if dialog.exec_(): if dialog.exec_():
return unicode(txt.toPlainText()) return unicode(txt.toPlainText())

View File

@ -9,7 +9,6 @@ from base64 import b64encode, b64decode
import electrum import electrum
from electrum_gui.qt.password_dialog import make_password_dialog, run_password_dialog from electrum_gui.qt.password_dialog import make_password_dialog, run_password_dialog
from electrum_gui.qt.util import ok_cancel_buttons
from electrum.account import BIP32_Account from electrum.account import BIP32_Account
from electrum.bitcoin import EncodeBase58Check, DecodeBase58Check, public_key_to_bc_address, bc_address_to_hash_160 from electrum.bitcoin import EncodeBase58Check, DecodeBase58Check, public_key_to_bc_address, bc_address_to_hash_160
from electrum.i18n import _ from electrum.i18n import _

View File

@ -15,14 +15,15 @@
# Version: 0.1 # Version: 0.1
# Todo: optionally use OA resolvers; add DNSCrypt support # Todo: optionally use OA resolvers; add DNSCrypt support
from electrum_gui.qt.util import EnterButton import re
from electrum.plugins import BasePlugin, hook
from electrum.util import print_error
from electrum.i18n import _
from PyQt4.QtGui import * from PyQt4.QtGui import *
from PyQt4.QtCore import * from PyQt4.QtCore import *
import re from electrum_gui.qt.util import *
from electrum.plugins import BasePlugin, hook
from electrum.util import print_error
from electrum.i18n import _
# Import all of the rdtypes, as py2app and similar get confused with the dnspython # Import all of the rdtypes, as py2app and similar get confused with the dnspython
# autoloader and won't include all the rdatatypes # autoloader and won't include all the rdatatypes
@ -182,7 +183,7 @@ class Plugin(BasePlugin):
grid.addWidget(line1, 1, 1) grid.addWidget(line1, 1, 1)
vbox.addLayout(grid) vbox.addLayout(grid)
vbox.addLayout(ok_cancel_buttons(d)) vbox.addLayout(Buttons(CancelButton(d), OkButton(d)))
if not d.exec_(): if not d.exec_():
return return
@ -224,7 +225,7 @@ class Plugin(BasePlugin):
grid2.addWidget(QLabel(address), 4, 1) grid2.addWidget(QLabel(address), 4, 1)
vbox2.addLayout(grid2) vbox2.addLayout(grid2)
vbox2.addLayout(ok_cancel_buttons(d2)) vbox2.addLayout(Buttons(CancelButton(d2), OkButton(d2)))
if not d2.exec_(): if not d2.exec_():
return return

View File

@ -16,7 +16,7 @@ from electrum.transaction import deserialize
from electrum.wallet import BIP32_HD_Wallet from electrum.wallet import BIP32_HD_Wallet
from electrum.util import print_error from electrum.util import print_error
from electrum_gui.qt.util import ok_cancel_buttons, EnterButton from electrum_gui.qt.util import *
try: try:
from trezorlib.client import types from trezorlib.client import types
@ -519,7 +519,7 @@ class TrezorQtGuiMixin(object):
vbox = QVBoxLayout() vbox = QVBoxLayout()
vbox.addWidget(QLabel(msg)) vbox.addWidget(QLabel(msg))
vbox.addWidget(matrix) vbox.addWidget(matrix)
vbox.addLayout(ok_cancel_buttons(d)) vbox.addLayout(Buttons(CancelButton(d), OkButton(d)))
d.setLayout(vbox) d.setLayout(vbox)
if not d.exec_(): return if not d.exec_(): return

View File

@ -38,9 +38,8 @@ from electrum.wallet import Wallet_2of3
from electrum.i18n import _ from electrum.i18n import _
from electrum.plugins import BasePlugin, run_hook, hook from electrum.plugins import BasePlugin, run_hook, hook
from electrum_gui.qt.util import text_dialog, EnterButton, WaitingDialog from electrum_gui.qt.util import *
from electrum_gui.qt.qrcodewidget import QRCodeWidget from electrum_gui.qt.qrcodewidget import QRCodeWidget
from electrum_gui.qt import ok_cancel_buttons, ok_cancel_buttons2, close_button
from electrum_gui.qt.amountedit import AmountEdit from electrum_gui.qt.amountedit import AmountEdit
from electrum_gui.qt.main_window import StatusBarButton from electrum_gui.qt.main_window import StatusBarButton
@ -532,7 +531,7 @@ class Plugin(BasePlugin):
grid.addWidget(QLabel(_('Code')), 1, 0) grid.addWidget(QLabel(_('Code')), 1, 0)
grid.addWidget(pw, 1, 1) grid.addWidget(pw, 1, 1)
vbox.addLayout(grid) vbox.addLayout(grid)
vbox.addLayout(ok_cancel_buttons(d)) vbox.addLayout(Buttons(CancelButton(d), OkButton(d)))
if not d.exec_(): if not d.exec_():
return return
return pw.get_amount() return pw.get_amount()
@ -617,7 +616,7 @@ class Plugin(BasePlugin):
#grid.addWidget(QLabel(_("Next Billing Address:")), i, 0) #grid.addWidget(QLabel(_("Next Billing Address:")), i, 0)
#grid.addWidget(QLabel(self.billing_info['billing_address']), i, 1) #grid.addWidget(QLabel(self.billing_info['billing_address']), i, 1)
vbox.addLayout(close_button(d)) vbox.addLayout(Buttons(CloseButton(d)))
d.exec_() d.exec_()
@ -642,9 +641,9 @@ class Plugin(BasePlugin):
email_e = QLineEdit() email_e = QLineEdit()
vbox.addWidget(email_e) vbox.addWidget(email_e)
vbox.addStretch() vbox.addStretch()
hbox, accept_button = ok_cancel_buttons2(window, _('Accept')) accept_button = OkButton(window, _('Accept'))
accept_button.setEnabled(False) accept_button.setEnabled(False)
vbox.addLayout(hbox) vbox.addLayout(Buttons(CancelButton(window), accept_button))
def request_TOS(): def request_TOS():
tos = server.get_terms_of_service() tos = server.get_terms_of_service()
@ -688,9 +687,9 @@ class Plugin(BasePlugin):
hbox.addStretch(1) hbox.addStretch(1)
vbox.addLayout(hbox) vbox.addLayout(hbox)
hbox, b = ok_cancel_buttons2(window, _('Next')) b = OkButton(window, _('Next'))
b.setEnabled(False) b.setEnabled(False)
vbox.addLayout(hbox) vbox.addLayout(Buttons(CancelButton(window), b))
pw.textChanged.connect(lambda: b.setEnabled(len(pw.text())==6)) pw.textChanged.connect(lambda: b.setEnabled(len(pw.text())==6))
window.exec_() window.exec_()