5 #include <QSystemTrayIcon>
7 class TransactionTableModel;
14 class QAbstractItemModel;
19 class BitcoinGUI : public QMainWindow
23 explicit BitcoinGUI(QWidget *parent = 0);
24 void setModel(ClientModel *model);
26 /* Transaction table tab indices */
35 void changeEvent(QEvent *e);
36 void closeEvent(QCloseEvent *event);
43 QLabel *labelConnections;
44 QLabel *labelConnectionsIcon;
46 QLabel *labelTransactions;
47 QLabel *progressBarLabel;
48 QProgressBar *progressBar;
54 QAction *receivingAddresses;
58 QSystemTrayIcon *trayIcon;
59 QList<QTableView *> transactionViews;
62 QWidget *createTabs();
63 void createTrayIcon();
64 void setTabsModel(QAbstractItemModel *transaction_model);
67 void setBalance(qint64 balance);
68 void setAddress(const QString &address);
69 void setNumConnections(int count);
70 void setNumBlocks(int count);
71 void setNumTransactions(int count);
72 void error(const QString &title, const QString &message);
73 /* It is currently not possible to pass a return value to another thread through
74 BlockingQueuedConnection, so use an indirected pointer.
75 http://bugreports.qt.nokia.com/browse/QTBUG-10440
77 void askFee(qint64 nFeeRequired, bool *payFee);
80 void sendcoinsClicked();
81 void addressbookClicked();
82 void optionsClicked();
83 void receivingAddressesClicked();
85 void newAddressClicked();
86 void copyClipboardClicked();
87 void trayIconActivated(QSystemTrayIcon::ActivationReason reason);
88 void transactionDetails(const QModelIndex& idx);
89 void incomingTransaction(const QModelIndex & parent, int start, int end);