Browse Source

qeswaphelper: factorize code

master
ThomasV 3 years ago
parent
commit
22745365ad
  1. 45
      electrum/gui/qml/qeswaphelper.py

45
electrum/gui/qml/qeswaphelper.py

@ -293,39 +293,20 @@ class QESwapHelper(AuthMixin, QObject, QtEventListener):
# pay_amount and receive_amounts are always with fees already included # pay_amount and receive_amounts are always with fees already included
# so they reflect the net balance change after the swap # so they reflect the net balance change after the swap
if position < 0: # reverse swap self.isReverse = (position < 0)
self.isReverse = True self._send_amount = abs(position)
self.tosend = QEAmount(amount_sat=self._send_amount)
self._send_amount = abs(position) self._receive_amount = swap_manager.get_recv_amount(send_amount=self._send_amount, is_reverse=self.isReverse)
self.tosend = QEAmount(amount_sat=self._send_amount) self.toreceive = QEAmount(amount_sat=self._receive_amount)
# fee breakdown
self._receive_amount = swap_manager.get_recv_amount( self.serverfeeperc = f'{swap_manager.percentage:0.1f}%'
send_amount=self._send_amount, is_reverse=True) server_miningfee = swap_manager.lockup_fee if self.isReverse else swap_manager.normal_fee
self.toreceive = QEAmount(amount_sat=self._receive_amount) self.server_miningfee = QEAmount(amount_sat=server_miningfee)
if self.isReverse:
# fee breakdown
self.serverfeeperc = f'{swap_manager.percentage:0.1f}%'
server_miningfee = swap_manager.lockup_fee
self.server_miningfee = QEAmount(amount_sat=server_miningfee)
self.miningfee = QEAmount(amount_sat=swap_manager.get_claim_fee())
self.check_valid(self._send_amount, self._receive_amount) self.check_valid(self._send_amount, self._receive_amount)
else: # forward (normal) swap else:
self.isReverse = False # update tx only if slider isn't moved for a while
self._send_amount = position self.valid = False
self.tosend = QEAmount(amount_sat=self._send_amount)
self._receive_amount = swap_manager.get_recv_amount(send_amount=position, is_reverse=False)
self.toreceive = QEAmount(amount_sat=self._receive_amount)
# fee breakdown
self.serverfeeperc = f'{swap_manager.percentage:0.1f}%'
server_miningfee = swap_manager.normal_fee
self.server_miningfee = QEAmount(amount_sat=server_miningfee)
# the slow stuff we delegate to a delay timer which triggers after slider
# doesn't update for a while
self.valid = False # wait for timer
self._fwd_swap_updatetx_timer.start(250) self._fwd_swap_updatetx_timer.start(250)
def check_valid(self, send_amount, receive_amount): def check_valid(self, send_amount, receive_amount):

Loading…
Cancel
Save