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