Browse Source

add Bitcoin QObject for seed generation

patch-4
Sander van Grieken 3 years ago
parent
commit
c999b3a297
  1. 2
      electrum/gui/qml/qeapp.py
  2. 27
      electrum/gui/qml/qebitcoin.py

2
electrum/gui/qml/qeapp.py

@ -12,6 +12,7 @@ from .qenetwork import QENetwork
from .qewallet import QEWallet
from .qeqr import QEQR
from .qewalletdb import QEWalletDB
from .qebitcoin import QEBitcoin
class ElectrumQmlApplication(QGuiApplication):
@ -30,6 +31,7 @@ class ElectrumQmlApplication(QGuiApplication):
qmlRegisterType(QEWalletListModel, 'org.electrum', 1, 0, 'WalletListModel')
qmlRegisterType(QEWallet, 'org.electrum', 1, 0, 'Wallet')
qmlRegisterType(QEWalletDB, 'org.electrum', 1, 0, 'WalletDB')
qmlRegisterType(QEBitcoin, 'org.electrum', 1, 0, 'Bitcoin')
self.engine = QQmlApplicationEngine(parent=self)
self.engine.addImportPath('./qml')

27
electrum/gui/qml/qebitcoin.py

@ -0,0 +1,27 @@
from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject
from electrum.logging import get_logger
from electrum import mnemonic
class QEBitcoin(QObject):
def __init__(self, config, parent=None):
super().__init__(parent)
self.config = config
_logger = get_logger(__name__)
generatedSeedChanged = pyqtSignal()
generatedSeed = ''
@pyqtProperty('QString', notify=generatedSeedChanged)
def generated_seed(self):
return self.generatedSeed
@pyqtSlot()
@pyqtSlot(str)
@pyqtSlot(str,str)
def generate_seed(self, seed_type='standard', language='en'):
self._logger.debug('generating seed of type ' + str(seed_type))
self.generatedSeed = mnemonic.Mnemonic(language).make_seed(seed_type=seed_type)
self._logger.debug('seed generated')
self.generatedSeedChanged.emit()
Loading…
Cancel
Save