Merge remote-tracking branch 'upstream/master'

This commit is contained in:
CodingAnarchy 2014-03-05 01:53:33 -07:00
commit 4b22844137
2 changed files with 16 additions and 7 deletions

View File

@ -757,8 +757,9 @@ class ElectrumWindow(QMainWindow):
if self.amount_e.is_shortcut:
self.amount_e.is_shortcut = False
sendable = self.get_sendable_balance()
inputs, total, fee = self.wallet.choose_tx_inputs( sendable, 0, self.get_payment_sources())
fee = self.wallet.estimated_fee(inputs)
# there is only one output because we are completely spending inputs
inputs, total, fee = self.wallet.choose_tx_inputs( sendable, 0, 1, self.get_payment_sources())
fee = self.wallet.estimated_fee(inputs, 1)
amount = total - fee
self.amount_e.setText( self.format_amount(amount) )
self.fee_e.setText( self.format_amount( fee ) )
@ -770,7 +771,8 @@ class ElectrumWindow(QMainWindow):
if not is_fee: fee = None
if amount is None:
return
inputs, total, fee = self.wallet.choose_tx_inputs(amount, fee, self.get_payment_sources())
# assume that there will be 2 outputs (one for change)
inputs, total, fee = self.wallet.choose_tx_inputs(amount, fee, 2, self.get_payment_sources())
if not is_fee:
self.fee_e.setText( self.format_amount( fee ) )
if inputs:

View File

@ -32,6 +32,7 @@ class Exchanger(threading.Thread):
self.parent = parent
self.quote_currencies = None
self.lock = threading.Lock()
self.query_rates = threading.Event()
self.use_exchange = self.parent.config.get('use_exchange', "Blockchain")
self.parent.exchanges = EXCHANGES
self.parent.currencies = ["EUR","GBP","USD"]
@ -94,8 +95,9 @@ class Exchanger(threading.Thread):
def run(self):
self.is_running = True
while self.is_running:
self.query_rates.clear()
self.update_rate()
time.sleep(150)
self.query_rates.wait(150)
def update_cd(self):
@ -379,7 +381,10 @@ class Plugin(BasePlugin):
ok_button = QPushButton(_("OK"))
def on_change(x):
cur_request = str(self.currencies[x])
try:
cur_request = str(self.currencies[x])
except Exception:
return
if cur_request != self.config.get('currency', "EUR"):
self.config.set_key('currency', cur_request, True)
if cur_request == "USD" and self.config.get('use_exchange', "Blockchain") == "CoinDesk":
@ -397,7 +402,9 @@ class Plugin(BasePlugin):
cur_request = str(self.exchanges[x])
if cur_request != self.config.get('use_exchange', "Blockchain"):
self.config.set_key('use_exchange', cur_request, True)
self.exchanger.update_rate()
self.currencies = []
combo.clear()
self.exchanger.query_rates.set()
if cur_request == "CoinDesk":
if self.config.get('currency', "EUR") == "USD":
hist_checkbox.setEnabled(True)
@ -459,7 +466,7 @@ class Plugin(BasePlugin):
combo.currentIndexChanged.connect(on_change)
combo_ex.currentIndexChanged.connect(on_change_ex)
hist_checkbox.stateChanged.connect(on_change_hist)
combo.connect(d, SIGNAL('refresh_currencies_combo()'), lambda: set_currencies(combo))
combo.connect(self.win, SIGNAL('refresh_currencies_combo()'), lambda: set_currencies(combo))
combo_ex.connect(d, SIGNAL('refresh_exchanges_combo()'), lambda: set_exchanges(combo_ex))
ok_button.clicked.connect(lambda: ok_clicked())
layout.addWidget(combo,1,1)