Bitcoin ABC  0.28.12
P2P Digital Currency
addressbookpage.h
Go to the documentation of this file.
1 // Copyright (c) 2011-2015 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_ADDRESSBOOKPAGE_H
6 #define BITCOIN_QT_ADDRESSBOOKPAGE_H
7 
8 #include <QDialog>
9 
11 class AddressTableModel;
12 class PlatformStyle;
13 
14 namespace Ui {
15 class AddressBookPage;
16 }
17 
18 QT_BEGIN_NAMESPACE
19 class QItemSelection;
20 class QMenu;
21 class QModelIndex;
22 QT_END_NAMESPACE
23 
25 class AddressBookPage : public QDialog {
26  Q_OBJECT
27 
28 public:
29  enum Tabs { SendingTab = 0, ReceivingTab = 1 };
30 
31  enum Mode {
33  ForEditing
34  };
35 
36  explicit AddressBookPage(const PlatformStyle *platformStyle, Mode mode,
37  Tabs tab, QWidget *parent = nullptr);
39 
41  const QString &getReturnValue() const { return returnValue; }
42 
43 public Q_SLOTS:
44  void done(int retval) override;
45 
46 private:
47  Ui::AddressBookPage *ui;
51  QString returnValue;
53  QMenu *contextMenu;
54  // to be able to explicitly disable it
55  QAction *deleteAction;
57 
58 private Q_SLOTS:
65  void on_newAddress_clicked();
71  void onCopyLabelAction();
73  void onEditAction();
76 
78  void selectionChanged();
80  void contextualMenu(const QPoint &point);
82  void selectNewAddress(const QModelIndex &parent, int begin, int /*end*/);
83 
84 Q_SIGNALS:
85  void sendCoins(QString addr);
86 };
87 
88 #endif // BITCOIN_QT_ADDRESSBOOKPAGE_H
Widget that shows a list of sending or receiving addresses.
Ui::AddressBookPage * ui
void onEditAction()
Edit currently selected address entry (no button)
@ ForEditing
Open address book for editing.
@ ForSelection
Open address book to pick address.
void setModel(AddressTableModel *model)
void onCopyLabelAction()
Copy label of currently selected address entry to clipboard (no button)
QString newAddressToSelect
void done(int retval) override
AddressBookPage(const PlatformStyle *platformStyle, Mode mode, Tabs tab, QWidget *parent=nullptr)
void on_copyAddress_clicked()
Copy address of currently selected address entry to clipboard.
void on_exportButton_clicked()
Export button clicked.
const QString & getReturnValue() const
void sendCoins(QString addr)
void on_deleteAddress_clicked()
Delete currently selected address entry.
void contextualMenu(const QPoint &point)
Spawn contextual menu (right mouse menu) for address book entry.
AddressTableModel * model
void selectionChanged()
Set button states based on selected tab and selection.
void selectNewAddress(const QModelIndex &parent, int begin, int)
New entry/entries were added to address table.
void on_newAddress_clicked()
Create a new address for receiving coins and / or add a new address book entry.
AddressBookSortFilterProxyModel * proxyModel
QAction * deleteAction
Qt model of the address book in the core.