Skip to content

Commit a87a2f0

Browse files
achow101majcosta
authored andcommitted
[backport#15450 5/5] Add Create Wallet menu action
Summary: Co-authored-by: João Barbosa <[email protected]> bitcoin/bitcoin@613de61 --- Depends on D7105 Concludes backport of Core [[bitcoin/bitcoin#15450 | PR15450]] Test Plan: ninja check check-functional Used the bitcoin-qt wallet on regtest mode to create wallets and make sure behavior is expected Reviewers: #bitcoin_abc, Fabien Reviewed By: #bitcoin_abc, Fabien Differential Revision: https://reviews.bitcoinabc.org/D7106
1 parent d41a0be commit a87a2f0

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

src/qt/bitcoingui.cpp

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#include <interfaces/node.h>
1212
#include <qt/bitcoinunits.h>
1313
#include <qt/clientmodel.h>
14+
#include <qt/createwalletdialog.h>
1415
#include <qt/guiconstants.h>
1516
#include <qt/guiutil.h>
1617
#ifdef Q_OS_MAC
@@ -397,6 +398,9 @@ void BitcoinGUI::createActions() {
397398
m_close_wallet_action = new QAction(tr("Close Wallet..."), this);
398399
m_close_wallet_action->setStatusTip(tr("Close wallet"));
399400

401+
m_create_wallet_action = new QAction(tr("Create Wallet..."), this);
402+
m_create_wallet_action->setStatusTip(tr("Create a new wallet"));
403+
400404
showHelpMessageAction =
401405
new QAction(platformStyle->TextColorIcon(":/icons/info"),
402406
tr("&Command-line options"), this);
@@ -480,6 +484,15 @@ void BitcoinGUI::createActions() {
480484
m_wallet_controller->closeWallet(walletFrame->currentWalletModel(),
481485
this);
482486
});
487+
connect(m_create_wallet_action, &QAction::triggered, [this] {
488+
auto activity = new CreateWalletActivity(
489+
m_wallet_controller, this, this->config->GetChainParams());
490+
connect(activity, &CreateWalletActivity::created, this,
491+
&BitcoinGUI::setCurrentWallet);
492+
connect(activity, &CreateWalletActivity::finished, activity,
493+
&QObject::deleteLater);
494+
activity->create();
495+
});
483496
}
484497
#endif // ENABLE_WALLET
485498

@@ -503,6 +516,7 @@ void BitcoinGUI::createMenuBar() {
503516
// Configure the menus
504517
QMenu *file = appMenuBar->addMenu(tr("&File"));
505518
if (walletFrame) {
519+
file->addAction(m_create_wallet_action);
506520
file->addAction(m_open_wallet_action);
507521
file->addAction(m_close_wallet_action);
508522
file->addSeparator();

src/qt/bitcoingui.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,7 @@ class BitcoinGUI : public QMainWindow {
146146
QAction *openRPCConsoleAction = nullptr;
147147
QAction *openAction = nullptr;
148148
QAction *showHelpMessageAction = nullptr;
149+
QAction *m_create_wallet_action{nullptr};
149150
QAction *m_open_wallet_action{nullptr};
150151
QMenu *m_open_wallet_menu{nullptr};
151152
QAction *m_close_wallet_action{nullptr};

0 commit comments

Comments
 (0)