コード例 #1
0
 def get_max_amount(self):
     from electrum_ltc.transaction import TxOutput
     if run_hook('abort_send', self):
         return ''
     inputs = self.wallet.get_spendable_coins(None)
     if not inputs:
         return ''
     addr = None
     if self.send_screen:
         addr = str(self.send_screen.screen.address)
     if not addr:
         addr = self.wallet.dummy_address()
     outputs = [TxOutput(TYPE_ADDRESS, addr, '!')]
     try:
         tx = self.wallet.make_unsigned_transaction(inputs, outputs)
     except NoDynamicFeeEstimates as e:
         Clock.schedule_once(lambda dt, bound_e=e: self.show_error(str(bound_e)))
         return ''
     except NotEnoughFunds:
         return ''
     except InternalAddressCorruption as e:
         self.show_error(str(e))
         send_exception_to_crash_reporter(e)
         return ''
     amount = tx.output_value()
     __, x_fee_amount = run_hook('get_tx_extra_fee', self.wallet, tx) or (None, 0)
     amount_after_all_fees = amount - x_fee_amount
     return format_satoshis_plain(amount_after_all_fees, self.decimal_point())
コード例 #2
0
 def on_qr_result(requestCode, resultCode, intent):
     try:
         if resultCode == -1:  # RESULT_OK:
             #  this doesn't work due to some bug in jnius:
             # contents = intent.getStringExtra("text")
             String = autoclass("java.lang.String")
             contents = intent.getStringExtra(String("text"))
             on_complete(contents)
     except Exception as e:  # exc would otherwise get lost
         send_exception_to_crash_reporter(e)
     finally:
         activity.unbind(on_activity_result=on_qr_result)
コード例 #3
0
 def load_wallet(self, wallet):
     if self.wallet:
         self.stop_wallet()
     self.wallet = wallet
     self.wallet_name = wallet.basename()
     self.update_wallet()
     # Once GUI has been initialized check if we want to announce something
     # since the callback has been called before the GUI was initialized
     if self.receive_screen:
         self.receive_screen.clear()
     self.update_tabs()
     run_hook('load_wallet', wallet, self)
     try:
         wallet.try_detecting_internal_addresses_corruption()
     except InternalAddressCorruption as e:
         self.show_error(str(e))
         send_exception_to_crash_reporter(e)
コード例 #4
0
ファイル: main_window.py プロジェクト: thrasher-/electrum-ltc
 def load_wallet(self, wallet):
     if self.wallet:
         self.stop_wallet()
     self.wallet = wallet
     self.wallet_name = wallet.basename()
     self.update_wallet()
     # Once GUI has been initialized check if we want to announce something
     # since the callback has been called before the GUI was initialized
     if self.receive_screen:
         self.receive_screen.clear()
     self.update_tabs()
     run_hook('load_wallet', wallet, self)
     try:
         wallet.try_detecting_internal_addresses_corruption()
     except InternalAddressCorruption as e:
         self.show_error(str(e))
         send_exception_to_crash_reporter(e)
コード例 #5
0
ファイル: screens.py プロジェクト: tonymorony/electrum-ltc
 def get_new_address(self) -> bool:
     """Sets the address field, and returns whether the set address
     is unused."""
     if not self.app.wallet:
         return False
     self.clear()
     unused = True
     try:
         addr = self.app.wallet.get_unused_address()
         if addr is None:
             addr = self.app.wallet.get_receiving_address() or ''
             unused = False
     except InternalAddressCorruption as e:
         addr = ''
         self.app.show_error(str(e))
         send_exception_to_crash_reporter(e)
     self.screen.address = addr
     return unused
コード例 #6
0
ファイル: screens.py プロジェクト: thrasher-/electrum-ltc
 def get_new_address(self) -> bool:
     """Sets the address field, and returns whether the set address
     is unused."""
     if not self.app.wallet:
         return False
     self.clear()
     unused = True
     try:
         addr = self.app.wallet.get_unused_address()
         if addr is None:
             addr = self.app.wallet.get_receiving_address() or ''
             unused = False
     except InternalAddressCorruption as e:
         addr = ''
         self.app.show_error(str(e))
         send_exception_to_crash_reporter(e)
     self.screen.address = addr
     return unused
コード例 #7
0
ファイル: main_window.py プロジェクト: thrasher-/electrum-ltc
 def get_max_amount(self):
     from electrum_ltc.transaction import TxOutput
     if run_hook('abort_send', self):
         return ''
     inputs = self.wallet.get_spendable_coins(None, self.electrum_config)
     if not inputs:
         return ''
     addr = str(self.send_screen.screen.address) or self.wallet.dummy_address()
     outputs = [TxOutput(TYPE_ADDRESS, addr, '!')]
     try:
         tx = self.wallet.make_unsigned_transaction(inputs, outputs, self.electrum_config)
     except NoDynamicFeeEstimates as e:
         Clock.schedule_once(lambda dt, bound_e=e: self.show_error(str(bound_e)))
         return ''
     except NotEnoughFunds:
         return ''
     except InternalAddressCorruption as e:
         self.show_error(str(e))
         send_exception_to_crash_reporter(e)
         return ''
     amount = tx.output_value()
     __, x_fee_amount = run_hook('get_tx_extra_fee', self.wallet, tx) or (None, 0)
     amount_after_all_fees = amount - x_fee_amount
     return format_satoshis_plain(amount_after_all_fees, self.decimal_point())