signverifymessagedialog.h raw
1 // Copyright (c) 2011-present 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_SIGNVERIFYMESSAGEDIALOG_H
6 #define BITCOIN_QT_SIGNVERIFYMESSAGEDIALOG_H
7
8 #include <QDialog>
9
10 class PlatformStyle;
11 class WalletModel;
12
13 namespace Ui {
14 class SignVerifyMessageDialog;
15 }
16
17 class SignVerifyMessageDialog : public QDialog
18 {
19 Q_OBJECT
20
21 public:
22 explicit SignVerifyMessageDialog(const PlatformStyle *platformStyle, QWidget *parent);
23 ~SignVerifyMessageDialog();
24
25 void setModel(WalletModel *model);
26 void setAddress_SM(const QString &address);
27 void setAddress_VM(const QString &address);
28
29 void showTab_SM(bool fShow);
30 void showTab_VM(bool fShow);
31
32 protected:
33 bool eventFilter(QObject *object, QEvent *event) override;
34 void changeEvent(QEvent* e) override;
35
36 private:
37 Ui::SignVerifyMessageDialog *ui;
38 WalletModel* model{nullptr};
39 const PlatformStyle *platformStyle;
40
41 private Q_SLOTS:
42 /* sign message */
43 void on_addressBookButton_SM_clicked();
44 void on_pasteButton_SM_clicked();
45 void on_signMessageButton_SM_clicked();
46 void on_copySignatureButton_SM_clicked();
47 void on_clearButton_SM_clicked();
48 /* verify message */
49 void on_addressBookButton_VM_clicked();
50 void on_verifyMessageButton_VM_clicked();
51 void on_clearButton_VM_clicked();
52 };
53
54 #endif // BITCOIN_QT_SIGNVERIFYMESSAGEDIALOG_H
55