|
|
@ -38,6 +38,7 @@ except: |
|
|
|
|
|
|
|
from wallet import format_satoshis |
|
|
|
import bmp, mnemonic, pyqrnative, qrscanner |
|
|
|
import exchange_rate |
|
|
|
|
|
|
|
from decimal import Decimal |
|
|
|
|
|
|
@ -334,6 +335,9 @@ class ElectrumWindow(QMainWindow): |
|
|
|
self.connect(self, QtCore.SIGNAL('updatesignal'), self.update_wallet) |
|
|
|
#self.connect(self, SIGNAL('editamount'), self.edit_amount) |
|
|
|
self.history_list.setFocus(True) |
|
|
|
|
|
|
|
self.exchanger = exchange_rate.Exchanger(self) |
|
|
|
self.connect(self, SIGNAL("refresh_balance()"), self.update_wallet) |
|
|
|
|
|
|
|
# dark magic fix by flatfly; https://bitcointalk.org/index.php?topic=73651.msg959913#msg959913 |
|
|
|
if platform.system() == 'Windows': |
|
|
@ -383,6 +387,7 @@ class ElectrumWindow(QMainWindow): |
|
|
|
c, u = self.wallet.get_balance() |
|
|
|
text = _( "Balance" ) + ": %s "%( format_satoshis(c,False,self.wallet.num_zeros) ) |
|
|
|
if u: text += "[%s unconfirmed]"%( format_satoshis(u,True,self.wallet.num_zeros).strip() ) |
|
|
|
text += self.create_quote_text(Decimal(c+u)/100000000) |
|
|
|
icon = QIcon(":icons/status_connected.png") |
|
|
|
else: |
|
|
|
text = _( "Not connected" ) |
|
|
@ -401,7 +406,15 @@ class ElectrumWindow(QMainWindow): |
|
|
|
self.update_contacts_tab() |
|
|
|
self.update_completions() |
|
|
|
|
|
|
|
|
|
|
|
def create_quote_text(self, btc_balance): |
|
|
|
quote_currency = self.config.get("currency", "None") |
|
|
|
quote_balance = self.exchanger.exchange(btc_balance, quote_currency) |
|
|
|
if quote_balance is None: |
|
|
|
quote_text = "" |
|
|
|
else: |
|
|
|
quote_text = " (%.2f %s)" % (quote_balance, quote_currency) |
|
|
|
return quote_text |
|
|
|
|
|
|
|
def create_history_tab(self): |
|
|
|
self.history_list = l = MyTreeWidget(self) |
|
|
|
l.setColumnCount(5) |
|
|
@ -1586,19 +1599,33 @@ class ElectrumWindow(QMainWindow): |
|
|
|
if not self.config.is_modifiable('language'): |
|
|
|
for w in [lang_combo, lang_label]: w.setEnabled(False) |
|
|
|
|
|
|
|
currencies = self.exchanger.get_currencies() |
|
|
|
currencies.insert(0, "None") |
|
|
|
|
|
|
|
cur_label=QLabel(_('Currency') + ':') |
|
|
|
grid_ui.addWidget(cur_label , 9, 0) |
|
|
|
cur_combo = QComboBox() |
|
|
|
cur_combo.addItems(currencies) |
|
|
|
try: |
|
|
|
index = currencies.index(self.config.get('currency', "None")) |
|
|
|
except: |
|
|
|
index = 0 |
|
|
|
cur_combo.setCurrentIndex(index) |
|
|
|
grid_ui.addWidget(cur_combo, 9, 1) |
|
|
|
grid_ui.addWidget(HelpButton(_('Select which currency is used for quotes. ')), 9, 2) |
|
|
|
|
|
|
|
view_label=QLabel(_('Receive Tab') + ':') |
|
|
|
grid_ui.addWidget(view_label , 9, 0) |
|
|
|
grid_ui.addWidget(view_label , 10, 0) |
|
|
|
view_combo = QComboBox() |
|
|
|
view_combo.addItems([_('Simple'), _('Advanced'), _('Point of Sale')]) |
|
|
|
view_combo.setCurrentIndex(self.receive_tab_mode) |
|
|
|
grid_ui.addWidget(view_combo, 9, 1) |
|
|
|
grid_ui.addWidget(view_combo, 10, 1) |
|
|
|
hh = _('This selects the interaction mode of the "Receive" tab. ') + '\n\n' \ |
|
|
|
+ _('Simple') + ': ' + _('Show only addresses and labels.') + '\n\n' \ |
|
|
|
+ _('Advanced') + ': ' + _('Show address balances and add extra menu items to freeze/prioritize addresses.') + '\n\n' \ |
|
|
|
+ _('Point of Sale') + ': ' + _('Show QR code window and amounts requested for each address. Add menu item to request amount.') + '\n\n' |
|
|
|
|
|
|
|
grid_ui.addWidget(HelpButton(hh), 9, 2) |
|
|
|
grid_ui.addWidget(HelpButton(hh), 10, 2) |
|
|
|
|
|
|
|
vbox.addLayout(ok_cancel_buttons(d)) |
|
|
|
d.setLayout(vbox) |
|
|
@ -1661,6 +1688,11 @@ class ElectrumWindow(QMainWindow): |
|
|
|
if lang_request != self.config.get('language'): |
|
|
|
self.config.set_key("language", lang_request, True) |
|
|
|
need_restart = True |
|
|
|
|
|
|
|
cur_request = str(currencies[cur_combo.currentIndex()]) |
|
|
|
if cur_request != self.config.get('currency', "None"): |
|
|
|
self.config.set_key('currency', cur_request, True) |
|
|
|
self.update_wallet() |
|
|
|
|
|
|
|
if need_restart: |
|
|
|
QMessageBox.warning(self, _('Success'), _('Please restart Electrum to activate the new GUI settings'), _('OK')) |
|
|
|