X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=src%2Fqt%2Fbitcoingui.h;h=efe3e9cc6d72fc908eeec6ed9bb586b8195d77f7;hb=91d7e847e051c9aa8be87a72d2763872b6b4f385;hp=432a9e3b04ce735d32dc6fde88c9a6246b97c3cd;hpb=64c8b6994881ba2715cb08f48b406aaf1f28603c;p=novacoin.git diff --git a/src/qt/bitcoingui.h b/src/qt/bitcoingui.h index 432a9e3..efe3e9c 100644 --- a/src/qt/bitcoingui.h +++ b/src/qt/bitcoingui.h @@ -9,6 +9,9 @@ class ClientModel; class WalletModel; class TransactionView; class OverviewPage; +class AddressBookPage; +class SendCoinsDialog; +class Notificator; QT_BEGIN_NAMESPACE class QLabel; @@ -18,6 +21,7 @@ class QAbstractItemModel; class QModelIndex; class QProgressBar; class QStackedWidget; +class QUrl; QT_END_NAMESPACE class BitcoinGUI : public QMainWindow @@ -25,6 +29,8 @@ class BitcoinGUI : public QMainWindow Q_OBJECT public: explicit BitcoinGUI(QWidget *parent = 0); + ~BitcoinGUI(); + void setClientModel(ClientModel *clientModel); void setWalletModel(WalletModel *walletModel); @@ -39,45 +45,62 @@ public: protected: void changeEvent(QEvent *e); void closeEvent(QCloseEvent *event); + void dragEnterEvent(QDragEnterEvent *event); + void dropEvent(QDropEvent *event); private: ClientModel *clientModel; WalletModel *walletModel; QStackedWidget *centralWidget; + OverviewPage *overviewPage; QWidget *transactionsPage; + AddressBookPage *addressBookPage; + AddressBookPage *receiveCoinsPage; + SendCoinsDialog *sendCoinsPage; - QLabel *labelConnections; + QLabel *labelEncryptionIcon; QLabel *labelConnectionsIcon; - QLabel *labelBlocks; - QLabel *labelTransactions; + QLabel *labelBlocksIcon; QLabel *progressBarLabel; QProgressBar *progressBar; + QMenuBar *appMenuBar; QAction *overviewAction; QAction *historyAction; - QAction *quit; - QAction *sendCoins; - QAction *addressbook; - QAction *about; - QAction *receiveCoins; - QAction *options; - QAction *openBitcoin; + QAction *quitAction; + QAction *sendCoinsAction; + QAction *addressBookAction; + QAction *aboutAction; + QAction *receiveCoinsAction; + QAction *optionsAction; + QAction *openBitcoinAction; + QAction *exportAction; + QAction *encryptWalletAction; + QAction *changePassphraseAction; + QAction *aboutQtAction; QSystemTrayIcon *trayIcon; + Notificator *notificator; TransactionView *transactionView; + QMovie *syncIconMovie; + void createActions(); + void createMenuBar(); + void createToolBars(); QWidget *createTabs(); void createTrayIcon(); public slots: - void setBalance(qint64 balance); void setNumConnections(int count); void setNumBlocks(int count); - void setNumTransactions(int count); - void error(const QString &title, const QString &message); + void setEncryptionStatus(int status); + /** Set the status bar text if there are any warnings (removes sync progress bar if applicable) */ + void refreshStatusBar(); + + void error(const QString &title, const QString &message, bool modal = false); /* It is currently not possible to pass a return value to another thread through BlockingQueuedConnection, so use an indirected pointer. http://bugreports.qt.nokia.com/browse/QTBUG-10440 @@ -85,17 +108,23 @@ public slots: void askFee(qint64 nFeeRequired, bool *payFee); private slots: - void sendCoinsClicked(); - void addressbookClicked(); + // UI pages + void gotoOverviewPage(); + void gotoHistoryPage(); + void gotoAddressBookPage(); + void gotoReceiveCoinsPage(); + void gotoSendCoinsPage(); + + // Misc actions void optionsClicked(); - void receiveCoinsClicked(); void aboutClicked(); +#ifndef Q_WS_MAC void trayIconActivated(QSystemTrayIcon::ActivationReason reason); - void transactionDetails(const QModelIndex& idx); +#endif void incomingTransaction(const QModelIndex & parent, int start, int end); - - void gotoOverviewTab(); - void gotoHistoryTab(); + void encryptWallet(bool status); + void changePassphrase(); + void unlockWallet(); }; #endif