Bitcoin Core  27.99.0
P2P Digital Currency
psbtoperationsdialog.h
Go to the documentation of this file.
1 // Copyright (c) 2011-2020 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 
5 #ifndef BITCOIN_QT_PSBTOPERATIONSDIALOG_H
6 #define BITCOIN_QT_PSBTOPERATIONSDIALOG_H
7 
8 #include <QDialog>
9 #include <QString>
10 
11 #include <psbt.h>
12 #include <qt/clientmodel.h>
13 #include <qt/walletmodel.h>
14 
15 namespace Ui {
17 }
18 
20 class PSBTOperationsDialog : public QDialog
21 {
22  Q_OBJECT
23 
24 public:
25  explicit PSBTOperationsDialog(QWidget* parent, WalletModel* walletModel, ClientModel* clientModel);
27 
29 
30 public Q_SLOTS:
31  void signTransaction();
32  void broadcastTransaction();
33  void copyToClipboard();
34  void saveTransaction();
35 
36 private:
37  Ui::PSBTOperationsDialog* m_ui;
41 
42  enum class StatusLevel {
43  INFO,
44  WARN,
45  ERR
46  };
47 
48  size_t couldSignInputs(const PartiallySignedTransaction &psbtx);
50  QString renderTransaction(const PartiallySignedTransaction &psbtx);
51  void showStatus(const QString &msg, StatusLevel level);
53 };
54 
55 #endif // BITCOIN_QT_PSBTOPERATIONSDIALOG_H
Model for Bitcoin network client.
Definition: clientmodel.h:54
Dialog showing transaction details.
PartiallySignedTransaction m_transaction_data
PSBTOperationsDialog(QWidget *parent, WalletModel *walletModel, ClientModel *clientModel)
Ui::PSBTOperationsDialog * m_ui
void openWithPSBT(PartiallySignedTransaction psbtx)
size_t couldSignInputs(const PartiallySignedTransaction &psbtx)
void showTransactionStatus(const PartiallySignedTransaction &psbtx)
void showStatus(const QString &msg, StatusLevel level)
QString renderTransaction(const PartiallySignedTransaction &psbtx)
Interface to Bitcoin wallet from Qt view code.
Definition: walletmodel.h:48
A version of CTransaction with the PSBT format.
Definition: psbt.h:947