Bitcoin Core  0.19.99
P2P Digital Currency
askpassphrasedialog.h
Go to the documentation of this file.
1 // Copyright (c) 2011-2019 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_ASKPASSPHRASEDIALOG_H
6 #define BITCOIN_QT_ASKPASSPHRASEDIALOG_H
7 
8 #include <QDialog>
9 
11 
12 class WalletModel;
13 
14 namespace Ui {
15  class AskPassphraseDialog;
16 }
17 
20 class AskPassphraseDialog : public QDialog
21 {
22  Q_OBJECT
23 
24 public:
25  enum Mode {
29  Decrypt
30  };
31 
32  explicit AskPassphraseDialog(Mode mode, QWidget *parent, SecureString* passphrase_out = nullptr);
34 
35  void accept();
36 
37  void setModel(WalletModel *model);
38 
39 private:
40  Ui::AskPassphraseDialog *ui;
43  bool fCapsLock;
45 
46 private Q_SLOTS:
47  void textChanged();
48  void secureClearPassFields();
49  void toggleShowPassword(bool);
50 
51 protected:
52  bool event(QEvent *event);
53  bool eventFilter(QObject *object, QEvent *event);
54 };
55 
56 #endif // BITCOIN_QT_ASKPASSPHRASEDIALOG_H
std::basic_string< char, std::char_traits< char >, secure_allocator< char > > SecureString
Definition: secure.h:60
Ask passphrase twice and encrypt.
Ask passphrase and unlock.
Ui::AskPassphraseDialog * ui
SecureString * m_passphrase_out
Interface to Bitcoin wallet from Qt view code.
Definition: walletmodel.h:50
Multifunctional dialog to ask for passphrases.
Ask old passphrase + new passphrase twice.