Bitcoin
Signals | Public Member Functions | Private Slots | Private Member Functions | Private Attributes | Friends | List of all members
WalletController Class Reference

#include <walletcontroller.h>

Inheritance diagram for WalletController:

Signals

void walletAdded (WalletModel *wallet_model)
 
void walletRemoved (WalletModel *wallet_model)
 
void coinsSent (WalletModel *wallet_model, SendCoinsRecipient recipient, QByteArray transaction)
 

Public Member Functions

 WalletController (interfaces::Node &node, const PlatformStyle *platform_style, OptionsModel *options_model, QObject *parent)
 
 ~WalletController ()
 
std::vector< WalletModel * > getOpenWallets () const
 Returns wallet models currently open. More...
 
std::map< std::string, bool > listWalletDir () const
 
OpenWalletActivityopenWallet (const std::string &name, QWidget *parent=nullptr)
 
void closeWallet (WalletModel *wallet_model, QWidget *parent=nullptr)
 

Private Slots

void addWallet (WalletModel *wallet_model)
 

Private Member Functions

WalletModelgetOrCreateWallet (std::unique_ptr< interfaces::Wallet > wallet)
 
void removeAndDeleteWallet (WalletModel *wallet_model)
 

Private Attributes

QThread m_activity_thread
 
interfaces::Nodem_node
 
const PlatformStyle *const m_platform_style
 
OptionsModel *const m_options_model
 
QMutex m_mutex
 
std::vector< WalletModel * > m_wallets
 
std::unique_ptr< interfaces::Handlerm_handler_load_wallet
 

Friends

class OpenWalletActivity
 

Detailed Description

Controller between interfaces::Node, WalletModel instances and the GUI.

Constructor & Destructor Documentation

◆ WalletController()

WalletController::WalletController ( interfaces::Node node,
const PlatformStyle platform_style,
OptionsModel options_model,
QObject *  parent 
)

◆ ~WalletController()

WalletController::~WalletController ( )

Member Function Documentation

◆ addWallet

void WalletController::addWallet ( WalletModel wallet_model)
privateslot

◆ closeWallet()

void WalletController::closeWallet ( WalletModel wallet_model,
QWidget *  parent = nullptr 
)

◆ coinsSent

void WalletController::coinsSent ( WalletModel wallet_model,
SendCoinsRecipient  recipient,
QByteArray  transaction 
)
signal

◆ getOpenWallets()

std::vector< WalletModel * > WalletController::getOpenWallets ( ) const

Returns wallet models currently open.

◆ getOrCreateWallet()

WalletModel * WalletController::getOrCreateWallet ( std::unique_ptr< interfaces::Wallet wallet)
private

◆ listWalletDir()

std::map< std::string, bool > WalletController::listWalletDir ( ) const

Returns all wallet names in the wallet dir mapped to whether the wallet is loaded.

◆ openWallet()

OpenWalletActivity * WalletController::openWallet ( const std::string &  name,
QWidget *  parent = nullptr 
)

◆ removeAndDeleteWallet()

void WalletController::removeAndDeleteWallet ( WalletModel wallet_model)
private

◆ walletAdded

void WalletController::walletAdded ( WalletModel wallet_model)
signal

◆ walletRemoved

void WalletController::walletRemoved ( WalletModel wallet_model)
signal

Friends And Related Function Documentation

◆ OpenWalletActivity

friend class OpenWalletActivity
friend

Member Data Documentation

◆ m_activity_thread

QThread WalletController::m_activity_thread
private

◆ m_handler_load_wallet

std::unique_ptr<interfaces::Handler> WalletController::m_handler_load_wallet
private

◆ m_mutex

QMutex WalletController::m_mutex
mutableprivate

◆ m_node

interfaces::Node& WalletController::m_node
private

◆ m_options_model

OptionsModel* const WalletController::m_options_model
private

◆ m_platform_style

const PlatformStyle* const WalletController::m_platform_style
private

◆ m_wallets

std::vector<WalletModel*> WalletController::m_wallets
private

The documentation for this class was generated from the following files: