Update CMakeLists.txt - play with openssl
[novacoin.git] / src / qt / sendcoinsdialog.h
1 #ifndef SENDCOINSDIALOG_H
2 #define SENDCOINSDIALOG_H
3
4 #include <QDialog>
5 #include <QString>
6
7 namespace Ui {
8     class SendCoinsDialog;
9 }
10 class WalletModel;
11 class SendCoinsEntry;
12 class SendCoinsRecipient;
13 class CoinControlDialog;
14
15 QT_BEGIN_NAMESPACE
16 class QUrl;
17 QT_END_NAMESPACE
18
19 /** Dialog for sending bitcoins */
20 class SendCoinsDialog : public QDialog
21 {
22     Q_OBJECT
23
24 public:
25     explicit SendCoinsDialog(QWidget *parent = 0);
26     ~SendCoinsDialog();
27
28     void setModel(WalletModel *model);
29
30     /** Set up the tab chain manually, as Qt messes up the tab chain by default in some cases (issue https://bugreports.qt-project.org/browse/QTBUG-10907).
31      */
32     QWidget *setupTabChain(QWidget *prev);
33
34     void pasteEntry(const SendCoinsRecipient &rv);
35     bool handleURI(const QString &uri);
36
37 public slots:
38     void clear();
39     void reject();
40     void accept();
41     SendCoinsEntry *addEntry();
42     void updateRemoveEnabled();
43     void setBalance(qint64 total, qint64 watchOnly, qint64 stake, qint64 unconfirmedBalance, qint64 immatureBalance);
44
45     void on_addressBookButton_clicked();
46     void on_pasteButton_clicked();
47
48 private:
49     Ui::SendCoinsDialog *ui;
50     WalletModel *model;
51     bool fNewRecipientAllowed;
52     CoinControlDialog *coinControl;
53
54 private slots:
55     void on_sendButton_clicked();
56     void removeEntry(SendCoinsEntry* entry);
57     void updateDisplayUnit();
58     void coinControlFeatureChanged(bool);
59     void coinControlButtonClicked();
60     void coinControlChangeChecked(int);
61     void coinControlUpdateLabels();
62     void coinControlClipboardQuantity();
63     void coinControlClipboardAmount();
64     void coinControlClipboardFee();
65     void coinControlClipboardAfterFee();
66     void coinControlClipboardBytes();
67     void coinControlClipboardPriority();
68     void coinControlClipboardLowOutput();
69     void coinControlClipboardChange();
70 };
71
72 #endif // SENDCOINSDIALOG_H