// Qt bitcoin GUI. // // Copyright (c) 2011-2012 W.J. van der Laan // Copyright (c) 2011-2012 The Bitcoin Developers // Copyright (c) 2017-2018 The Gostcoin Developers // Distributed under the MIT/X11 software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #ifndef WALLETFRAME_H #define WALLETFRAME_H #include class BitcoinGUI; class ClientModel; class WalletModel; class WalletStack; class WalletView; class WalletFrame : public QFrame { Q_OBJECT public: explicit WalletFrame(BitcoinGUI *_gui = 0); ~WalletFrame(); void setClientModel(ClientModel *clientModel); bool addWallet(const QString& name, WalletModel *walletModel); bool setCurrentWallet(const QString& name); void removeAllWallets(); bool handleURI(const QString &uri); void showOutOfSyncWarning(bool fShow); private: BitcoinGUI *gui; ClientModel *clientModel; WalletStack *walletStack; WalletView *currentWalletView(); public slots: /** Switch to overview (home) page */ void gotoOverviewPage(); /** Switch to history (transactions) page */ void gotoHistoryPage(); /** Switch to address book page */ void gotoAddressBookPage(); /** Switch to receive coins page */ void gotoReceiveCoinsPage(); /** Switch to send coins page */ void gotoSendCoinsPage(QString addr = ""); /** Show Sign/Verify Message dialog and switch to sign message tab */ void gotoSignMessageTab(QString addr = ""); /** Show Sign/Verify Message dialog and switch to verify message tab */ void gotoVerifyMessageTab(QString addr = ""); /** Encrypt the wallet */ void encryptWallet(bool status); /** Backup the wallet */ void backupWallet(); /** Change encrypted wallet passphrase */ void changePassphrase(); /** Ask for passphrase to unlock wallet temporarily */ void unlockWallet(); #ifdef USE_QRCODE /** Print paper wallet addresses */ void printPaperWallet(); #endif /** Set the encryption status as shown in the UI. @param[in] status current encryption status @see WalletModel::EncryptionStatus */ void setEncryptionStatus(); }; #endif // WALLETFRAME_H