tqt.py - electrum - Electrum Bitcoin wallet
HTML git clone https://git.parazyd.org/electrum
DIR Log
DIR Files
DIR Refs
DIR Submodules
---
tqt.py (1383B)
---
1 from functools import partial
2
3 from electrum.i18n import _
4 from electrum.plugin import hook
5 from electrum.wallet import Standard_Wallet, Abstract_Wallet
6
7 from ..hw_wallet.qt import QtHandlerBase, QtPluginBase
8 from ..hw_wallet.plugin import only_hook_if_libraries_available
9 from .digitalbitbox import DigitalBitboxPlugin
10
11
12 class Plugin(DigitalBitboxPlugin, QtPluginBase):
13 icon_unpaired = "digitalbitbox_unpaired.png"
14 icon_paired = "digitalbitbox.png"
15
16 def create_handler(self, window):
17 return DigitalBitbox_Handler(window)
18
19 @only_hook_if_libraries_available
20 @hook
21 def receive_menu(self, menu, addrs, wallet: Abstract_Wallet):
22 if type(wallet) is not Standard_Wallet:
23 return
24
25 keystore = wallet.get_keystore()
26 if type(keystore) is not self.keystore_class:
27 return
28
29 if not self.is_mobile_paired():
30 return
31
32 if len(addrs) == 1:
33 addr = addrs[0]
34 if wallet.get_txin_type(addr) != 'p2pkh':
35 return
36 def show_address():
37 keystore.thread.add(partial(self.show_address, wallet, addr, keystore))
38
39 menu.addAction(_("Show on {}").format(self.device), show_address)
40
41
42 class DigitalBitbox_Handler(QtHandlerBase):
43
44 def __init__(self, win):
45 super(DigitalBitbox_Handler, self).__init__(win, 'Digital Bitbox')