mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-13 07:28:59 +01:00
Minimal architectural changes necessary to support multiple wallets in bitcoin-qt
- This commit is a minimal restructuring necessary to support multiple wallets in the UI. Please see multiwallet-qt.txt for details.
This commit is contained in:
129
src/qt/walletframe.cpp
Normal file
129
src/qt/walletframe.cpp
Normal file
@@ -0,0 +1,129 @@
|
||||
/*
|
||||
* Qt4 bitcoin GUI.
|
||||
*
|
||||
* W.J. van der Laan 2011-2012
|
||||
* The Bitcoin Developers 2011-2013
|
||||
*/
|
||||
#include "walletframe.h"
|
||||
#include "bitcoingui.h"
|
||||
#include "walletstack.h"
|
||||
|
||||
#include <QVBoxLayout>
|
||||
#include <QMessageBox>
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
WalletFrame::WalletFrame(BitcoinGUI *_gui) :
|
||||
QFrame(_gui),
|
||||
gui(_gui),
|
||||
clientModel(0)
|
||||
{
|
||||
// Leave HBox hook for adding a list view later
|
||||
QHBoxLayout *walletFrameLayout = new QHBoxLayout(this);
|
||||
walletStack = new WalletStack(this);
|
||||
walletStack->setBitcoinGUI(gui);
|
||||
walletFrameLayout->addWidget(walletStack);
|
||||
}
|
||||
|
||||
WalletFrame::~WalletFrame()
|
||||
{
|
||||
}
|
||||
|
||||
void WalletFrame::setClientModel(ClientModel *clientModel)
|
||||
{
|
||||
this->clientModel = clientModel;
|
||||
walletStack->setClientModel(clientModel);
|
||||
}
|
||||
|
||||
bool WalletFrame::addWallet(const QString& name, WalletModel *walletModel)
|
||||
{
|
||||
return walletStack->addWallet(name, walletModel);
|
||||
}
|
||||
|
||||
bool WalletFrame::setCurrentWallet(const QString& name)
|
||||
{
|
||||
// TODO: Check if valid name
|
||||
walletStack->setCurrentWallet(name);
|
||||
return true;
|
||||
}
|
||||
|
||||
void WalletFrame::removeAllWallets()
|
||||
{
|
||||
walletStack->removeAllWallets();
|
||||
}
|
||||
|
||||
bool WalletFrame::handleURI(const QString &uri)
|
||||
{
|
||||
return walletStack->handleURI(uri);
|
||||
}
|
||||
|
||||
void WalletFrame::showOutOfSyncWarning(bool fShow)
|
||||
{
|
||||
if (!walletStack) {
|
||||
QMessageBox box;
|
||||
box.setText("walletStack is null");
|
||||
box.exec();
|
||||
return;
|
||||
}
|
||||
walletStack->showOutOfSyncWarning(fShow);
|
||||
}
|
||||
|
||||
void WalletFrame::gotoOverviewPage()
|
||||
{
|
||||
walletStack->gotoOverviewPage();
|
||||
}
|
||||
|
||||
void WalletFrame::gotoHistoryPage()
|
||||
{
|
||||
walletStack->gotoHistoryPage();
|
||||
}
|
||||
|
||||
void WalletFrame::gotoAddressBookPage()
|
||||
{
|
||||
walletStack->gotoAddressBookPage();
|
||||
}
|
||||
|
||||
void WalletFrame::gotoReceiveCoinsPage()
|
||||
{
|
||||
walletStack->gotoReceiveCoinsPage();
|
||||
}
|
||||
|
||||
void WalletFrame::gotoSendCoinsPage()
|
||||
{
|
||||
walletStack->gotoSendCoinsPage();
|
||||
}
|
||||
|
||||
void WalletFrame::gotoSignMessageTab(QString addr)
|
||||
{
|
||||
walletStack->gotoSignMessageTab(addr);
|
||||
}
|
||||
|
||||
void WalletFrame::gotoVerifyMessageTab(QString addr)
|
||||
{
|
||||
walletStack->gotoSignMessageTab(addr);
|
||||
}
|
||||
|
||||
void WalletFrame::encryptWallet(bool status)
|
||||
{
|
||||
walletStack->encryptWallet(status);
|
||||
}
|
||||
|
||||
void WalletFrame::backupWallet()
|
||||
{
|
||||
walletStack->backupWallet();
|
||||
}
|
||||
|
||||
void WalletFrame::changePassphrase()
|
||||
{
|
||||
walletStack->changePassphrase();
|
||||
}
|
||||
|
||||
void WalletFrame::unlockWallet()
|
||||
{
|
||||
walletStack->unlockWallet();
|
||||
}
|
||||
|
||||
void WalletFrame::setEncryptionStatus()
|
||||
{
|
||||
walletStack->setEncryptionStatus();
|
||||
}
|
||||
Reference in New Issue
Block a user