mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-03-10 09:06:15 +01:00
When no external signers are available, the option to enable external signers should always be disabled. However the encrypt wallet checkbox can erroneously re-enable the external signer checkbox. To avoid this, CreateWalletDialog now stores whether signers were available during setSigners so that future calls to external_signer_checkbox->setEnabled can account for whether signers are available.
41 lines
1,003 B
C++
41 lines
1,003 B
C++
// Copyright (c) 2019 The Bitcoin Core developers
|
|
// Distributed under the MIT software license, see the accompanying
|
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
#ifndef BITCOIN_QT_CREATEWALLETDIALOG_H
|
|
#define BITCOIN_QT_CREATEWALLETDIALOG_H
|
|
|
|
#include <QDialog>
|
|
|
|
class ExternalSigner;
|
|
class WalletModel;
|
|
|
|
namespace Ui {
|
|
class CreateWalletDialog;
|
|
}
|
|
|
|
/** Dialog for creating wallets
|
|
*/
|
|
class CreateWalletDialog : public QDialog
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit CreateWalletDialog(QWidget* parent);
|
|
virtual ~CreateWalletDialog();
|
|
|
|
void setSigners(const std::vector<ExternalSigner>& signers);
|
|
|
|
QString walletName() const;
|
|
bool isEncryptWalletChecked() const;
|
|
bool isDisablePrivateKeysChecked() const;
|
|
bool isMakeBlankWalletChecked() const;
|
|
bool isDescriptorWalletChecked() const;
|
|
bool isExternalSignerChecked() const;
|
|
|
|
private:
|
|
Ui::CreateWalletDialog *ui;
|
|
bool m_has_signers = false;
|
|
};
|
|
|
|
#endif // BITCOIN_QT_CREATEWALLETDIALOG_H
|