mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-05 10:17:30 -05:00
![Hennadii Stepanov](/assets/img/avatar_default.png)
When Enter or Return is pressed the default button will be always clicked. All buttons can always be clicked from the keyboard by pressing spacebar when the button has focus.
77 lines
2 KiB
C++
77 lines
2 KiB
C++
// Copyright (c) 2011-2018 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_RECEIVECOINSDIALOG_H
|
|
#define BITCOIN_QT_RECEIVECOINSDIALOG_H
|
|
|
|
#include <qt/guiutil.h>
|
|
|
|
#include <QDialog>
|
|
#include <QHeaderView>
|
|
#include <QItemSelection>
|
|
#include <QKeyEvent>
|
|
#include <QMenu>
|
|
#include <QPoint>
|
|
#include <QVariant>
|
|
|
|
class PlatformStyle;
|
|
class WalletModel;
|
|
|
|
namespace Ui {
|
|
class ReceiveCoinsDialog;
|
|
}
|
|
|
|
QT_BEGIN_NAMESPACE
|
|
class QModelIndex;
|
|
QT_END_NAMESPACE
|
|
|
|
/** Dialog for requesting payment of bitcoins */
|
|
class ReceiveCoinsDialog : public QDialog
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
enum ColumnWidths {
|
|
DATE_COLUMN_WIDTH = 130,
|
|
LABEL_COLUMN_WIDTH = 120,
|
|
AMOUNT_MINIMUM_COLUMN_WIDTH = 180,
|
|
MINIMUM_COLUMN_WIDTH = 130
|
|
};
|
|
|
|
explicit ReceiveCoinsDialog(const PlatformStyle *platformStyle, QWidget *parent = nullptr);
|
|
~ReceiveCoinsDialog();
|
|
|
|
void setModel(WalletModel *model);
|
|
|
|
public Q_SLOTS:
|
|
void clear();
|
|
void reject() override;
|
|
void accept() override;
|
|
|
|
private:
|
|
Ui::ReceiveCoinsDialog *ui;
|
|
GUIUtil::TableViewLastColumnResizingFixer *columnResizingFixer;
|
|
WalletModel *model;
|
|
QMenu *contextMenu;
|
|
const PlatformStyle *platformStyle;
|
|
|
|
QModelIndex selectedRow();
|
|
void copyColumnToClipboard(int column);
|
|
virtual void resizeEvent(QResizeEvent *event) override;
|
|
|
|
private Q_SLOTS:
|
|
void on_receiveButton_clicked();
|
|
void on_showRequestButton_clicked();
|
|
void on_removeRequestButton_clicked();
|
|
void on_recentRequestsView_doubleClicked(const QModelIndex &index);
|
|
void recentRequestsView_selectionChanged(const QItemSelection &selected, const QItemSelection &deselected);
|
|
void updateDisplayUnit();
|
|
void showMenu(const QPoint &point);
|
|
void copyURI();
|
|
void copyLabel();
|
|
void copyMessage();
|
|
void copyAmount();
|
|
};
|
|
|
|
#endif // BITCOIN_QT_RECEIVECOINSDIALOG_H
|