Bitcoin Core  27.99.0
P2P Digital Currency
Public Slots | Signals | Public Member Functions | Private Slots | Private Member Functions | Private Attributes | List of all members
SendCoinsDialog Class Reference

Dialog for sending bitcoins. More...

#include <sendcoinsdialog.h>

Inheritance diagram for SendCoinsDialog:
[legend]
Collaboration diagram for SendCoinsDialog:
[legend]

Public Slots

void clear ()
 
void reject () override
 
void accept () override
 
SendCoinsEntryaddEntry ()
 
void updateTabsAndLabels ()
 
void setBalance (const interfaces::WalletBalances &balances)
 

Signals

void coinsSent (const uint256 &txid)
 
void message (const QString &title, const QString &message, unsigned int style)
 

Public Member Functions

 SendCoinsDialog (const PlatformStyle *platformStyle, QWidget *parent=nullptr)
 
 ~SendCoinsDialog ()
 
void setClientModel (ClientModel *clientModel)
 
void setModel (WalletModel *model)
 
QWidget * setupTabChain (QWidget *prev)
 Set up the tab chain manually, as Qt messes up the tab chain by default in some cases (issue https://bugreports.qt-project.org/browse/QTBUG-10907). More...
 
void setAddress (const QString &address)
 
void pasteEntry (const SendCoinsRecipient &rv)
 
bool handlePaymentRequest (const SendCoinsRecipient &recipient)
 
wallet::CCoinControlgetCoinControl ()
 

Private Slots

void sendButtonClicked (bool checked)
 
void on_buttonChooseFee_clicked ()
 
void on_buttonMinimizeFee_clicked ()
 
void removeEntry (SendCoinsEntry *entry)
 
void useAvailableBalance (SendCoinsEntry *entry)
 
void refreshBalance ()
 
void coinControlFeatureChanged (bool)
 
void coinControlButtonClicked ()
 
void coinControlChangeChecked (int)
 
void coinControlChangeEdited (const QString &)
 
void coinControlUpdateLabels ()
 
void coinControlClipboardQuantity ()
 
void coinControlClipboardAmount ()
 
void coinControlClipboardFee ()
 
void coinControlClipboardAfterFee ()
 
void coinControlClipboardBytes ()
 
void coinControlClipboardChange ()
 
void updateFeeSectionControls ()
 
void updateNumberOfBlocks (int count, const QDateTime &blockDate, double nVerificationProgress, SyncType synctype, SynchronizationState sync_state)
 
void updateSmartFeeLabel ()
 

Private Member Functions

void presentPSBT (PartiallySignedTransaction &psbt)
 
void processSendCoinsReturn (const WalletModel::SendCoinsReturn &sendCoinsReturn, const QString &msgArg=QString())
 
void minimizeFeeSection (bool fMinimize)
 
bool PrepareSendText (QString &question_string, QString &informative_text, QString &detailed_text)
 
bool signWithExternalSigner (PartiallySignedTransaction &psbt, CMutableTransaction &mtx, bool &complete)
 
void updateFeeMinimizedLabel ()
 
void updateCoinControlState ()
 

Private Attributes

Ui::SendCoinsDialog * ui
 
ClientModelclientModel {nullptr}
 
WalletModelmodel {nullptr}
 
std::unique_ptr< wallet::CCoinControlm_coin_control
 
std::unique_ptr< WalletModelTransactionm_current_transaction
 
bool fNewRecipientAllowed {true}
 
bool fFeeMinimized {true}
 
const PlatformStyleplatformStyle
 

Detailed Description

Dialog for sending bitcoins.

Definition at line 33 of file sendcoinsdialog.h.

Constructor & Destructor Documentation

◆ SendCoinsDialog()

SendCoinsDialog::SendCoinsDialog ( const PlatformStyle platformStyle,
QWidget *  parent = nullptr 
)
explicit

Definition at line 64 of file sendcoinsdialog.cpp.

Here is the call graph for this function:

◆ ~SendCoinsDialog()

SendCoinsDialog::~SendCoinsDialog ( )

Definition at line 232 of file sendcoinsdialog.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ accept

void SendCoinsDialog::accept ( )
overrideslot

Definition at line 583 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ addEntry

SendCoinsEntry * SendCoinsDialog::addEntry ( )
slot

Definition at line 588 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clear

void SendCoinsDialog::clear ( )
slot

Definition at line 558 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlButtonClicked

void SendCoinsDialog::coinControlButtonClicked ( )
privateslot

Definition at line 939 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlChangeChecked

void SendCoinsDialog::coinControlChangeChecked ( int  state)
privateslot

Definition at line 947 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlChangeEdited

void SendCoinsDialog::coinControlChangeEdited ( const QString &  text)
privateslot

Definition at line 962 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlClipboardAfterFee

void SendCoinsDialog::coinControlClipboardAfterFee ( )
privateslot

Definition at line 909 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlClipboardAmount

void SendCoinsDialog::coinControlClipboardAmount ( )
privateslot

Definition at line 897 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlClipboardBytes

void SendCoinsDialog::coinControlClipboardBytes ( )
privateslot

Definition at line 915 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlClipboardChange

void SendCoinsDialog::coinControlClipboardChange ( )
privateslot

Definition at line 921 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlClipboardFee

void SendCoinsDialog::coinControlClipboardFee ( )
privateslot

Definition at line 903 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlClipboardQuantity

void SendCoinsDialog::coinControlClipboardQuantity ( )
privateslot

Definition at line 891 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlFeatureChanged

void SendCoinsDialog::coinControlFeatureChanged ( bool  checked)
privateslot

Definition at line 927 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinControlUpdateLabels

void SendCoinsDialog::coinControlUpdateLabels ( )
privateslot

Definition at line 1016 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ coinsSent

void SendCoinsDialog::coinsSent ( const uint256 txid)
signal
Here is the caller graph for this function:

◆ getCoinControl()

wallet::CCoinControl* SendCoinsDialog::getCoinControl ( )
inline

Definition at line 53 of file sendcoinsdialog.h.

◆ handlePaymentRequest()

bool SendCoinsDialog::handlePaymentRequest ( const SendCoinsRecipient recipient)

Definition at line 695 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ message

void SendCoinsDialog::message ( const QString &  title,
const QString &  message,
unsigned int  style 
)
signal
Here is the caller graph for this function:

◆ minimizeFeeSection()

void SendCoinsDialog::minimizeFeeSection ( bool  fMinimize)
private

Definition at line 766 of file sendcoinsdialog.cpp.

Here is the caller graph for this function:

◆ on_buttonChooseFee_clicked

void SendCoinsDialog::on_buttonChooseFee_clicked ( )
privateslot

Definition at line 776 of file sendcoinsdialog.cpp.

Here is the call graph for this function:

◆ on_buttonMinimizeFee_clicked

void SendCoinsDialog::on_buttonMinimizeFee_clicked ( )
privateslot

Definition at line 781 of file sendcoinsdialog.cpp.

Here is the call graph for this function:

◆ pasteEntry()

void SendCoinsDialog::pasteEntry ( const SendCoinsRecipient rv)

Definition at line 671 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PrepareSendText()

bool SendCoinsDialog::PrepareSendText ( QString &  question_string,
QString &  informative_text,
QString &  detailed_text 
)
private

Definition at line 243 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ presentPSBT()

void SendCoinsDialog::presentPSBT ( PartiallySignedTransaction psbt)
private

Definition at line 397 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ processSendCoinsReturn()

void SendCoinsDialog::processSendCoinsReturn ( const WalletModel::SendCoinsReturn sendCoinsReturn,
const QString &  msgArg = QString() 
)
private

Definition at line 725 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ refreshBalance

void SendCoinsDialog::refreshBalance ( )
privateslot

Definition at line 718 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ reject

void SendCoinsDialog::reject ( )
overrideslot

Definition at line 578 of file sendcoinsdialog.cpp.

Here is the call graph for this function:

◆ removeEntry

void SendCoinsDialog::removeEntry ( SendCoinsEntry entry)
privateslot

Definition at line 622 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sendButtonClicked

void SendCoinsDialog::sendButtonClicked ( bool  checked)
privateslot

Definition at line 476 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setAddress()

void SendCoinsDialog::setAddress ( const QString &  address)

Definition at line 651 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setBalance

void SendCoinsDialog::setBalance ( const interfaces::WalletBalances balances)
slot

Definition at line 703 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setClientModel()

void SendCoinsDialog::setClientModel ( ClientModel clientModel)

Definition at line 136 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setModel()

void SendCoinsDialog::setModel ( WalletModel model)

Definition at line 145 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setupTabChain()

QWidget * SendCoinsDialog::setupTabChain ( QWidget *  prev)

Set up the tab chain manually, as Qt messes up the tab chain by default in some cases (issue https://bugreports.qt-project.org/browse/QTBUG-10907).

Definition at line 635 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ signWithExternalSigner()

bool SendCoinsDialog::signWithExternalSigner ( PartiallySignedTransaction psbt,
CMutableTransaction mtx,
bool &  complete 
)
private

Definition at line 446 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateCoinControlState()

void SendCoinsDialog::updateCoinControlState ( )
private

Definition at line 838 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateFeeMinimizedLabel()

void SendCoinsDialog::updateFeeMinimizedLabel ( )
private

Definition at line 826 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateFeeSectionControls

void SendCoinsDialog::updateFeeSectionControls ( )
privateslot

Definition at line 814 of file sendcoinsdialog.cpp.

Here is the caller graph for this function:

◆ updateNumberOfBlocks

void SendCoinsDialog::updateNumberOfBlocks ( int  count,
const QDateTime &  blockDate,
double  nVerificationProgress,
SyncType  synctype,
SynchronizationState  sync_state 
)
privateslot

Definition at line 853 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateSmartFeeLabel

void SendCoinsDialog::updateSmartFeeLabel ( )
privateslot

Definition at line 859 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateTabsAndLabels

void SendCoinsDialog::updateTabsAndLabels ( )
slot

Definition at line 616 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ useAvailableBalance

void SendCoinsDialog::useAvailableBalance ( SendCoinsEntry entry)
privateslot

Definition at line 787 of file sendcoinsdialog.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ clientModel

ClientModel* SendCoinsDialog::clientModel {nullptr}
private

Definition at line 68 of file sendcoinsdialog.h.

◆ fFeeMinimized

bool SendCoinsDialog::fFeeMinimized {true}
private

Definition at line 73 of file sendcoinsdialog.h.

◆ fNewRecipientAllowed

bool SendCoinsDialog::fNewRecipientAllowed {true}
private

Definition at line 72 of file sendcoinsdialog.h.

◆ m_coin_control

std::unique_ptr<wallet::CCoinControl> SendCoinsDialog::m_coin_control
private

Definition at line 70 of file sendcoinsdialog.h.

◆ m_current_transaction

std::unique_ptr<WalletModelTransaction> SendCoinsDialog::m_current_transaction
private

Definition at line 71 of file sendcoinsdialog.h.

◆ model

WalletModel* SendCoinsDialog::model {nullptr}
private

Definition at line 69 of file sendcoinsdialog.h.

◆ platformStyle

const PlatformStyle* SendCoinsDialog::platformStyle
private

Definition at line 74 of file sendcoinsdialog.h.

◆ ui

Ui::SendCoinsDialog* SendCoinsDialog::ui
private

Definition at line 67 of file sendcoinsdialog.h.


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