From 9235db2520fd1d058029b90342569573bd5896dd Mon Sep 17 00:00:00 2001 From: mrdeveloper Date: Sat, 24 Oct 2020 17:53:17 +0200 Subject: [PATCH] Extend libwallet for multisig info Add option for create multisig wallet --- src/libwalletqt/Wallet.cpp | 4 ++++ src/libwalletqt/Wallet.h | 3 +++ src/wizard/menu.cpp | 2 ++ src/wizard/menu.ui | 7 +++++++ src/wizard/walletwizard.h | 2 +- 5 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/libwalletqt/Wallet.cpp b/src/libwalletqt/Wallet.cpp index e9ea81d..d122f38 100644 --- a/src/libwalletqt/Wallet.cpp +++ b/src/libwalletqt/Wallet.cpp @@ -472,6 +472,10 @@ void Wallet::pauseRefresh() const m_walletImpl->pauseRefresh(); } +QString Wallet::getMultisigInfo() const { + return QString::fromStdString(m_walletImpl->getMultisigInfo()); +} + PendingTransaction *Wallet::createTransaction(const QString &dst_addr, const QString &payment_id, quint64 amount, quint32 mixin_count, PendingTransaction::Priority priority) diff --git a/src/libwalletqt/Wallet.h b/src/libwalletqt/Wallet.h index 6cf1ef4..26e1d15 100644 --- a/src/libwalletqt/Wallet.h +++ b/src/libwalletqt/Wallet.h @@ -205,6 +205,9 @@ public: Q_INVOKABLE void startRefresh() const; Q_INVOKABLE void pauseRefresh() const; + //! multisig wallet + Q_INVOKABLE QString getMultisigInfo() const; + //! returns current wallet's block height //! (can be less than daemon's blockchain height when wallet sync in progress) Q_INVOKABLE quint64 blockChainHeight() const; diff --git a/src/wizard/menu.cpp b/src/wizard/menu.cpp index fc16cba..d1b28e8 100644 --- a/src/wizard/menu.cpp +++ b/src/wizard/menu.cpp @@ -30,6 +30,8 @@ int MenuPage::nextId() const { return WalletWizard::Page_Restore; if(ui->radioViewOnly->isChecked()) return WalletWizard::Page_ViewOnly; + if(ui->radioCreateMultisig->isChecked()) + return WalletWizard::Page_CreateMultisigWallet; return 0; } diff --git a/src/wizard/menu.ui b/src/wizard/menu.ui index 2ed69e2..5326c7f 100644 --- a/src/wizard/menu.ui +++ b/src/wizard/menu.ui @@ -34,6 +34,13 @@ + + + + Create new multisig wallet + + + diff --git a/src/wizard/walletwizard.h b/src/wizard/walletwizard.h index 589ac99..6df839c 100644 --- a/src/wizard/walletwizard.h +++ b/src/wizard/walletwizard.h @@ -17,7 +17,7 @@ class WalletWizard : public QWizard Q_OBJECT public: - enum Page { Page_Menu, Page_CreateWallet, Page_CreateWalletSeed, Page_OpenWallet, Page_Network, Page_Restore, Page_ViewOnly }; + enum Page { Page_Menu, Page_CreateWallet, Page_CreateWalletSeed, Page_OpenWallet, Page_Network, Page_Restore, Page_ViewOnly, Page_CreateMultisigWallet }; explicit WalletWizard(AppContext *ctx, WalletWizard::Page startPage = WalletWizard::Page::Page_Menu, QWidget *parent = nullptr); signals: