bitcoin/src/qt/addressbookpage.h

73 lines
1.7 KiB
C
Raw Normal View History

2011-07-07 08:33:15 -07:00
#ifndef ADDRESSBOOKPAGE_H
#define ADDRESSBOOKPAGE_H
2011-05-08 13:23:31 -07:00
#include <QDialog>
2011-05-12 05:44:52 -07:00
namespace Ui {
2011-07-07 08:33:15 -07:00
class AddressBookPage;
2011-05-12 05:44:52 -07:00
}
class AddressTableModel;
2011-05-12 05:44:52 -07:00
2011-05-13 13:00:27 -07:00
QT_BEGIN_NAMESPACE
class QTableView;
class QItemSelection;
class QSortFilterProxyModel;
class QMenu;
2011-05-13 13:00:27 -07:00
QT_END_NAMESPACE
2011-11-13 04:19:52 -08:00
/** Widget that shows a list of sending or receiving addresses.
*/
2011-07-07 08:33:15 -07:00
class AddressBookPage : public QDialog
2011-05-08 13:23:31 -07:00
{
Q_OBJECT
2011-05-12 05:44:52 -07:00
2011-05-08 13:23:31 -07:00
public:
enum Tabs {
2011-05-12 05:44:52 -07:00
SendingTab = 0,
ReceivingTab = 1
};
enum Mode {
2011-11-13 04:19:52 -08:00
ForSending, /**< Open address book to pick address for sending */
ForEditing /**< Open address book for editing */
};
2011-07-07 08:33:15 -07:00
explicit AddressBookPage(Mode mode, Tabs tab, QWidget *parent = 0);
~AddressBookPage();
2011-05-08 13:23:31 -07:00
void setModel(AddressTableModel *model);
2011-05-13 13:00:27 -07:00
const QString &getReturnValue() const { return returnValue; }
2011-07-07 08:33:15 -07:00
public slots:
void done(int retval);
void exportClicked();
2011-07-07 08:33:15 -07:00
2011-05-12 05:44:52 -07:00
private:
2011-07-07 08:33:15 -07:00
Ui::AddressBookPage *ui;
AddressTableModel *model;
Mode mode;
2011-07-07 08:33:15 -07:00
Tabs tab;
2011-05-13 13:00:27 -07:00
QString returnValue;
QSortFilterProxyModel *proxyModel;
QMenu *contextMenu;
QAction *deleteAction;
2011-05-13 13:00:27 -07:00
2011-05-12 08:55:24 -07:00
private slots:
2011-05-13 13:00:27 -07:00
void on_deleteButton_clicked();
2011-05-12 08:55:24 -07:00
void on_newAddressButton_clicked();
/** Copy address of currently selected address entry to clipboard */
2011-05-12 08:55:24 -07:00
void on_copyToClipboard_clicked();
void on_signMessage_clicked();
void selectionChanged();
void on_showQRCode_clicked();
/** Spawn contextual menu (right mouse menu) for address book entry */
void contextualMenu(const QPoint &point);
/** Copy label of currently selected address entry to clipboard */
void onCopyLabelAction();
/** Edit currently selected address entry */
void onEditAction();
2011-05-08 13:23:31 -07:00
};
#endif // ADDRESSBOOKDIALOG_H