/ src / qt / signverifymessagedialog.h
signverifymessagedialog.h
 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