feather/src/SendWidget.h
tobtoht fdc7a09c6c
Some checks are pending
ci/gh-actions/build / build-ubuntu-without-scanner (push) Waiting to run
ci/gh-actions/guix / cache-sources (push) Waiting to run
ci/gh-actions/guix / aarch64-linux-gnu (push) Blocked by required conditions
ci/gh-actions/guix / arm-linux-gnueabihf (push) Blocked by required conditions
ci/gh-actions/guix / arm64-apple-darwin (push) Blocked by required conditions
ci/gh-actions/guix / i686-linux-gnu (push) Blocked by required conditions
ci/gh-actions/guix / riscv64-linux-gnu (push) Blocked by required conditions
ci/gh-actions/guix / x86_64-apple-darwin (push) Blocked by required conditions
ci/gh-actions/guix / x86_64-linux-gnu.no-tor-bundle (push) Blocked by required conditions
ci/gh-actions/guix / x86_64-linux-gnu.pack (push) Blocked by required conditions
ci/gh-actions/guix / x86_64-linux-gnu (push) Blocked by required conditions
ci/gh-actions/guix / x86_64-w64-mingw32.installer (push) Blocked by required conditions
ci/gh-actions/guix / x86_64-w64-mingw32 (push) Blocked by required conditions
ci/gh-actions/guix / bundle-logs (push) Blocked by required conditions
coins: don't refresh for each freeze/thaw
2024-10-10 14:22:47 +02:00

67 lines
1.6 KiB
C++

// SPDX-License-Identifier: BSD-3-Clause
// SPDX-FileCopyrightText: 2020-2024 The Monero Project
#ifndef FEATHER_SENDWIDGET_H
#define FEATHER_SENDWIDGET_H
#include <QWidget>
class Wallet;
namespace Ui {
class SendWidget;
}
class SendWidget : public QWidget
{
Q_OBJECT
public:
explicit SendWidget(Wallet *wallet, QWidget *parent = nullptr);
void fill(const QString &address, const QString &description, double amount = 0, bool overrideDescription = true);
void fill(double amount);
void clearFields();
void payToMany();
~SendWidget() override;
public slots:
void skinChanged();
void scanClicked();
void sendClicked();
void clearClicked();
void aliasClicked();
void btnMaxClicked();
void amountEdited(const QString &text);
void addressEdited();
void currencyComboChanged(int index);
void fillAddress(const QString &address);
void updateConversionLabel();
void onOpenAliasResolved(const QString &openAlias, const QString &address, bool dnssecValid);
void onPreferredFiatCurrencyChanged();
void setWebsocketEnabled(bool enabled);
void setManualFeeSelectionEnabled(bool enabled);
void setSubtractFeeFromAmountEnabled(bool enabled);
void disableSendButton();
void enableSendButton();
void disallowSending();
private slots:
void onDataFromQR(const QString &data);
private:
void setupComboBox();
double amountDouble();
bool keyImageSync(bool sendAll, quint64 amount);
quint64 amount();
double conversionAmount();
QScopedPointer<Ui::SendWidget> ui;
Wallet *m_wallet;
bool m_disallowSending = false;
};
#endif // FEATHER_SENDWIDGET_H