Bitcoin Core  0.20.99
P2P Digital Currency
receivecoinsdialog.h
Go to the documentation of this file.
1 // Copyright (c) 2011-2018 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_RECEIVECOINSDIALOG_H
6 #define BITCOIN_QT_RECEIVECOINSDIALOG_H
7 
8 #include <qt/guiutil.h>
9 
10 #include <QDialog>
11 #include <QHeaderView>
12 #include <QItemSelection>
13 #include <QKeyEvent>
14 #include <QMenu>
15 #include <QPoint>
16 #include <QVariant>
17 
18 class PlatformStyle;
19 class WalletModel;
20 
21 namespace Ui {
22  class ReceiveCoinsDialog;
23 }
24 
25 QT_BEGIN_NAMESPACE
26 class QModelIndex;
27 QT_END_NAMESPACE
28 
30 class ReceiveCoinsDialog : public QDialog
31 {
32  Q_OBJECT
33 
34 public:
35  enum ColumnWidths {
36  DATE_COLUMN_WIDTH = 130,
37  LABEL_COLUMN_WIDTH = 120,
38  AMOUNT_MINIMUM_COLUMN_WIDTH = 180,
39  MINIMUM_COLUMN_WIDTH = 130
40  };
41 
42  explicit ReceiveCoinsDialog(const PlatformStyle *platformStyle, QWidget *parent = nullptr);
44 
45  void setModel(WalletModel *model);
46 
47 public Q_SLOTS:
48  void clear();
49  void reject() override;
50  void accept() override;
51 
52 protected:
53  virtual void keyPressEvent(QKeyEvent *event) override;
54 
55 private:
56  Ui::ReceiveCoinsDialog *ui;
59  QMenu *contextMenu;
61 
62  QModelIndex selectedRow();
63  void copyColumnToClipboard(int column);
64  virtual void resizeEvent(QResizeEvent *event) override;
65 
66 private Q_SLOTS:
67  void on_receiveButton_clicked();
68  void on_showRequestButton_clicked();
69  void on_removeRequestButton_clicked();
70  void on_recentRequestsView_doubleClicked(const QModelIndex &index);
71  void recentRequestsView_selectionChanged(const QItemSelection &selected, const QItemSelection &deselected);
72  void updateDisplayUnit();
73  void showMenu(const QPoint &point);
74  void copyURI();
75  void copyLabel();
76  void copyMessage();
77  void copyAmount();
78 };
79 
80 #endif // BITCOIN_QT_RECEIVECOINSDIALOG_H
Dialog for requesting payment of bitcoins.
GUIUtil::TableViewLastColumnResizingFixer * columnResizingFixer
Ui::ReceiveCoinsDialog * ui
disconnectpool queuedTx clear()
Makes a QTableView last column feel as if it was being resized from its left border.
Definition: guiutil.h:174
Interface to Bitcoin wallet from Qt view code.
Definition: walletmodel.h:51
const PlatformStyle * platformStyle