mirror of
https://github.com/feather-wallet/feather.git
synced 2024-12-22 11:39:25 +00:00
airgap: allow showing address QR code
This commit is contained in:
parent
9056047b1b
commit
7c89a7d5bb
3 changed files with 22 additions and 10 deletions
|
@ -6,6 +6,7 @@
|
|||
|
||||
#include "utils/Utils.h"
|
||||
#include "components.h"
|
||||
#include "dialog/QrCodeDialog.h"
|
||||
|
||||
AddressCheckerIndexDialog::AddressCheckerIndexDialog(Wallet *wallet, QWidget *parent)
|
||||
: WindowModalDialog(parent)
|
||||
|
@ -14,20 +15,30 @@ AddressCheckerIndexDialog::AddressCheckerIndexDialog(Wallet *wallet, QWidget *pa
|
|||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
connect(ui->btn_showAddress, &QPushButton::clicked, [this] {
|
||||
this->showAddress(ui->line_index->text().toUInt());
|
||||
connect(ui->btn_showQRcode, &QPushButton::clicked, [this]{
|
||||
QString address = this->address();
|
||||
QrCode qr(address, QrCode::Version::AUTO, QrCode::ErrorCorrectionLevel::HIGH);
|
||||
QrCodeDialog dialog{this, &qr, "Address"};
|
||||
dialog.exec();
|
||||
});
|
||||
|
||||
connect(ui->line_index, &QLineEdit::textChanged, [this]{
|
||||
ui->address->setText(this->address());
|
||||
});
|
||||
|
||||
auto indexValidator = new U32Validator(this);
|
||||
ui->line_index->setValidator(indexValidator);
|
||||
ui->line_index->setText("0");
|
||||
|
||||
this->showAddress(0);
|
||||
this->adjustSize();
|
||||
}
|
||||
|
||||
void AddressCheckerIndexDialog::showAddress(uint32_t index) {
|
||||
ui->address->setText(m_wallet->address(m_wallet->currentSubaddressAccount(), index));
|
||||
uint32_t AddressCheckerIndexDialog::index() {
|
||||
return ui->line_index->text().toUInt();
|
||||
}
|
||||
|
||||
QString AddressCheckerIndexDialog::address() {
|
||||
return m_wallet->address(m_wallet->currentSubaddressAccount(), this->index());
|
||||
}
|
||||
|
||||
AddressCheckerIndexDialog::~AddressCheckerIndexDialog() = default;
|
|
@ -20,7 +20,8 @@ class AddressCheckerIndexDialog : public WindowModalDialog
|
|||
~AddressCheckerIndexDialog() override;
|
||||
|
||||
private:
|
||||
void showAddress(uint32_t index);
|
||||
uint32_t index();
|
||||
QString address();
|
||||
|
||||
QScopedPointer<Ui::AddressCheckerIndexDialog> ui;
|
||||
Wallet *m_wallet;
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>712</width>
|
||||
<height>127</height>
|
||||
<width>458</width>
|
||||
<height>99</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
|
@ -34,9 +34,9 @@
|
|||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="btn_showAddress">
|
||||
<widget class="QPushButton" name="btn_showQRcode">
|
||||
<property name="text">
|
||||
<string>Show address</string>
|
||||
<string>Show QR code</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
|
Loading…
Reference in a new issue