66
77#include < qt/bitcoinunits.h>
88#include < qt/clientmodel.h>
9+ #include < qt/createwalletdialog.h>
910#include < qt/guiconstants.h>
1011#include < qt/guiutil.h>
1112#include < qt/modaloverlay.h>
@@ -339,6 +340,9 @@ void BitcoinGUI::createActions()
339340 m_close_wallet_action = new QAction (tr (" Close Wallet..." ), this );
340341 m_close_wallet_action->setStatusTip (tr (" Close wallet" ));
341342
343+ m_create_wallet_action = new QAction (tr (" Create Wallet..." ), this );
344+ m_create_wallet_action->setStatusTip (tr (" Create a new wallet" ));
345+
342346 showHelpMessageAction = new QAction (tr (" &Command-line options" ), this );
343347 showHelpMessageAction->setMenuRole (QAction::NoRole);
344348 showHelpMessageAction->setStatusTip (tr (" Show the %1 help message to get a list with possible Bitcoin command-line options" ).arg (PACKAGE_NAME));
@@ -394,6 +398,12 @@ void BitcoinGUI::createActions()
394398 connect (m_close_wallet_action, &QAction::triggered, [this ] {
395399 m_wallet_controller->closeWallet (walletFrame->currentWalletModel (), this );
396400 });
401+ connect (m_create_wallet_action, &QAction::triggered, [this ] {
402+ auto activity = new CreateWalletActivity (m_wallet_controller, this );
403+ connect (activity, &CreateWalletActivity::created, this , &BitcoinGUI::setCurrentWallet);
404+ connect (activity, &CreateWalletActivity::finished, activity, &QObject::deleteLater);
405+ activity->create ();
406+ });
397407 }
398408#endif // ENABLE_WALLET
399409
@@ -415,6 +425,7 @@ void BitcoinGUI::createMenuBar()
415425 QMenu *file = appMenuBar->addMenu (tr (" &File" ));
416426 if (walletFrame)
417427 {
428+ file->addAction (m_create_wallet_action);
418429 file->addAction (m_open_wallet_action);
419430 file->addAction (m_close_wallet_action);
420431 file->addSeparator ();
0 commit comments