5 #include <QSystemTrayIcon>
7 class TransactionTableModel;
14 class QAbstractItemModel;
18 class BitcoinGUI : public QMainWindow
22 explicit BitcoinGUI(QWidget *parent = 0);
23 void setModel(ClientModel *model);
25 /* Transaction table tab indices */
34 void changeEvent(QEvent *e);
35 void closeEvent(QCloseEvent *event);
42 QLabel *labelConnections;
43 QLabel *labelConnectionsIcon;
45 QLabel *labelTransactions;
51 QAction *receivingAddresses;
55 QSystemTrayIcon *trayIcon;
56 QList<QTableView *> transactionViews;
59 QWidget *createTabs();
60 void createTrayIcon();
61 void setTabsModel(QAbstractItemModel *transaction_model);
64 void setBalance(qint64 balance);
65 void setAddress(const QString &address);
66 void setNumConnections(int count);
67 void setNumBlocks(int count);
68 void setNumTransactions(int count);
69 void error(const QString &title, const QString &message);
70 /* It is currently not possible to pass a return value to another thread through
71 BlockingQueuedConnection, so use an indirected pointer.
72 http://bugreports.qt.nokia.com/browse/QTBUG-10440
74 void askFee(qint64 nFeeRequired, bool *payFee);
77 void sendcoinsClicked();
78 void addressbookClicked();
79 void optionsClicked();
80 void receivingAddressesClicked();
82 void newAddressClicked();
83 void copyClipboardClicked();
84 void trayIconActivated(QSystemTrayIcon::ActivationReason reason);
85 void transactionDetails(const QModelIndex& idx);
86 void incomingTransaction(const QModelIndex & parent, int start, int end);