@hook decorator for plugins
This commit is contained in:
@@ -12,7 +12,7 @@ from electrum_gui.qt.util import ok_cancel_buttons
|
||||
from electrum.account import BIP32_Account
|
||||
from electrum.bitcoin import EncodeBase58Check, DecodeBase58Check, public_key_to_bc_address, bc_address_to_hash_160
|
||||
from electrum.i18n import _
|
||||
from electrum.plugins import BasePlugin
|
||||
from electrum.plugins import BasePlugin, hook
|
||||
from electrum.transaction import deserialize
|
||||
from electrum.wallet import NewWallet
|
||||
|
||||
@@ -76,12 +76,15 @@ class Plugin(BasePlugin):
|
||||
def enable(self):
|
||||
return BasePlugin.enable(self)
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
self.wallet = wallet
|
||||
|
||||
@hook
|
||||
def add_wallet_types(self, wallet_types):
|
||||
wallet_types.append(('btchip', _("BTChip wallet"), BTChipWallet))
|
||||
|
||||
@hook
|
||||
def installwizard_restore(self, wizard, storage):
|
||||
wallet = BTChipWallet(storage)
|
||||
try:
|
||||
@@ -91,6 +94,7 @@ class Plugin(BasePlugin):
|
||||
return
|
||||
return wallet
|
||||
|
||||
@hook
|
||||
def send_tx(self, tx):
|
||||
try:
|
||||
self.wallet.sign_transaction(tx, None, None)
|
||||
|
||||
@@ -22,7 +22,7 @@ try:
|
||||
except ImportError as e:
|
||||
loaded_qweb = False
|
||||
|
||||
from electrum import BasePlugin
|
||||
from electrum.plugins import BasePlugin, hook
|
||||
from electrum.i18n import _, set_language
|
||||
from electrum.util import user_dir
|
||||
from electrum.util import appdata_dir
|
||||
@@ -58,6 +58,7 @@ class Plugin(BasePlugin):
|
||||
def enable(self):
|
||||
return BasePlugin.enable(self)
|
||||
|
||||
@hook
|
||||
def receive_tx(self, tx, wallet):
|
||||
domain = wallet.get_account_addresses(None)
|
||||
is_relevant, is_send, v, fee = tx.get_value(domain, wallet.prevout_values)
|
||||
|
||||
@@ -26,7 +26,7 @@ from PyQt4.QtCore import *
|
||||
|
||||
from electrum import bitcoin, util
|
||||
from electrum import transaction
|
||||
from electrum.plugins import BasePlugin
|
||||
from electrum.plugins import BasePlugin, hook
|
||||
from electrum.i18n import _
|
||||
|
||||
import sys
|
||||
@@ -89,6 +89,7 @@ class Plugin(BasePlugin):
|
||||
def description(self):
|
||||
return description
|
||||
|
||||
@hook
|
||||
def init(self):
|
||||
self.win = self.gui.main_window
|
||||
self.win.connect(self.win, SIGNAL('cosigner:receive'), self.on_receive)
|
||||
@@ -108,6 +109,7 @@ class Plugin(BasePlugin):
|
||||
return True
|
||||
return self.wallet.wallet_type in ['2of2', '2of3']
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
self.wallet = wallet
|
||||
if not self.is_available():
|
||||
@@ -123,12 +125,14 @@ class Plugin(BasePlugin):
|
||||
else:
|
||||
self.cosigner_list.append((xpub, K, _hash))
|
||||
|
||||
@hook
|
||||
def transaction_dialog(self, d):
|
||||
self.send_button = b = QPushButton(_("Send to cosigner"))
|
||||
b.clicked.connect(lambda: self.do_send(d.tx))
|
||||
d.buttons.insertWidget(2, b)
|
||||
self.transaction_dialog_update(d)
|
||||
|
||||
@hook
|
||||
def transaction_dialog_update(self, d):
|
||||
if d.tx.is_complete():
|
||||
self.send_button.hide()
|
||||
|
||||
@@ -9,7 +9,7 @@ import threading
|
||||
import time
|
||||
import re
|
||||
from decimal import Decimal
|
||||
from electrum.plugins import BasePlugin
|
||||
from electrum.plugins import BasePlugin, hook
|
||||
from electrum.i18n import _
|
||||
from electrum_gui.qt.util import *
|
||||
from electrum_gui.qt.amountedit import AmountEdit
|
||||
@@ -338,6 +338,7 @@ class Plugin(BasePlugin):
|
||||
self.currencies = [self.fiat_unit()]
|
||||
self.exchanges = [self.config.get('use_exchange', "Blockchain")]
|
||||
|
||||
@hook
|
||||
def init(self):
|
||||
self.win = self.gui.main_window
|
||||
self.win.connect(self.win, SIGNAL("refresh_currencies()"), self.win.update_status)
|
||||
@@ -353,6 +354,7 @@ class Plugin(BasePlugin):
|
||||
self.win.emit(SIGNAL("refresh_currencies()"))
|
||||
self.win.emit(SIGNAL("refresh_currencies_combo()"))
|
||||
|
||||
@hook
|
||||
def get_fiat_balance_text(self, btc_balance, r):
|
||||
# return balance as: 1.23 USD
|
||||
r[0] = self.create_fiat_balance_text(Decimal(btc_balance) / 100000000)
|
||||
@@ -364,6 +366,7 @@ class Plugin(BasePlugin):
|
||||
if quote:
|
||||
r[0] = "%s"%quote
|
||||
|
||||
@hook
|
||||
def get_fiat_status_text(self, btc_balance, r2):
|
||||
# return status as: (1.23 USD) 1 BTC~123.45 USD
|
||||
text = ""
|
||||
@@ -391,6 +394,7 @@ class Plugin(BasePlugin):
|
||||
quote_text = "%.2f %s" % (quote_balance, quote_currency)
|
||||
return quote_text
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
self.wallet = wallet
|
||||
tx_list = {}
|
||||
|
||||
@@ -16,7 +16,7 @@ import PyQt4.QtCore as QtCore
|
||||
import PyQt4.QtGui as QtGui
|
||||
import aes
|
||||
import base64
|
||||
from electrum.plugins import BasePlugin
|
||||
from electrum.plugins import BasePlugin, hook
|
||||
from electrum.i18n import _
|
||||
|
||||
from electrum_gui.qt import HelpButton, EnterButton
|
||||
@@ -43,11 +43,12 @@ class Plugin(BasePlugin):
|
||||
|
||||
return decoded_message
|
||||
|
||||
|
||||
@hook
|
||||
def init(self):
|
||||
self.target_host = 'labelectrum.herokuapp.com'
|
||||
self.window = self.gui.main_window
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
self.wallet = wallet
|
||||
if self.wallet.get_master_public_key():
|
||||
@@ -77,6 +78,7 @@ class Plugin(BasePlugin):
|
||||
def requires_settings(self):
|
||||
return True
|
||||
|
||||
@hook
|
||||
def set_label(self, item,label, changed):
|
||||
if not changed:
|
||||
return
|
||||
|
||||
@@ -11,7 +11,7 @@ from electrum_gui.qt.util import ok_cancel_buttons, EnterButton
|
||||
from electrum.account import BIP32_Account
|
||||
from electrum.bitcoin import EncodeBase58Check, public_key_to_bc_address, bc_address_to_hash_160
|
||||
from electrum.i18n import _
|
||||
from electrum.plugins import BasePlugin
|
||||
from electrum.plugins import BasePlugin, hook
|
||||
from electrum.transaction import deserialize
|
||||
from electrum.wallet import NewWallet
|
||||
|
||||
@@ -74,12 +74,15 @@ class Plugin(BasePlugin):
|
||||
def enable(self):
|
||||
return BasePlugin.enable(self)
|
||||
|
||||
@hook
|
||||
def load_wallet(self, wallet):
|
||||
self.wallet = wallet
|
||||
|
||||
@hook
|
||||
def add_wallet_types(self, wallet_types):
|
||||
wallet_types.append(('trezor', _("Trezor wallet"), TrezorWallet))
|
||||
|
||||
@hook
|
||||
def installwizard_restore(self, wizard, storage):
|
||||
if storage.get('wallet_type') != 'trezor':
|
||||
return
|
||||
@@ -91,6 +94,7 @@ class Plugin(BasePlugin):
|
||||
return
|
||||
return wallet
|
||||
|
||||
@hook
|
||||
def send_tx(self, tx):
|
||||
try:
|
||||
self.wallet.sign_transaction(tx, None, None)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from PyQt4.QtGui import *
|
||||
from electrum import BasePlugin
|
||||
from electrum.plugins import BasePlugin, hook
|
||||
from electrum.i18n import _
|
||||
|
||||
class Plugin(BasePlugin):
|
||||
@@ -15,7 +15,7 @@ class Plugin(BasePlugin):
|
||||
self.vkb = None
|
||||
self.vkb_index = 0
|
||||
|
||||
|
||||
@hook
|
||||
def password_dialog(self, pw, grid, pos):
|
||||
vkb_button = QPushButton(_("+"))
|
||||
vkb_button.setFixedWidth(20)
|
||||
|
||||
Reference in New Issue
Block a user