|
|
@ -13,6 +13,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
WalletStack::WalletStack(QWidget *parent) : |
|
|
|
WalletStack::WalletStack(QWidget *parent) : |
|
|
|
QStackedWidget(parent), |
|
|
|
QStackedWidget(parent), |
|
|
|
|
|
|
|
gui(0), |
|
|
|
clientModel(0), |
|
|
|
clientModel(0), |
|
|
|
bOutOfSync(true) |
|
|
|
bOutOfSync(true) |
|
|
|
{ |
|
|
|
{ |
|
|
@ -25,7 +26,7 @@ WalletStack::~WalletStack() |
|
|
|
|
|
|
|
|
|
|
|
bool WalletStack::addWallet(const QString& name, WalletModel *walletModel) |
|
|
|
bool WalletStack::addWallet(const QString& name, WalletModel *walletModel) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (!gui || !clientModel || mapWalletViews.count(name) > 0) |
|
|
|
if (!gui || !clientModel || !walletModel || mapWalletViews.count(name) > 0) |
|
|
|
return false; |
|
|
|
return false; |
|
|
|
|
|
|
|
|
|
|
|
WalletView *walletView = new WalletView(this, gui); |
|
|
|
WalletView *walletView = new WalletView(this, gui); |
|
|
@ -35,12 +36,18 @@ bool WalletStack::addWallet(const QString& name, WalletModel *walletModel) |
|
|
|
walletView->showOutOfSyncWarning(bOutOfSync); |
|
|
|
walletView->showOutOfSyncWarning(bOutOfSync); |
|
|
|
addWidget(walletView); |
|
|
|
addWidget(walletView); |
|
|
|
mapWalletViews[name] = walletView; |
|
|
|
mapWalletViews[name] = walletView; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Ensure a walletView is able to show the main window
|
|
|
|
|
|
|
|
connect(walletView, SIGNAL(showNormalIfMinimized()), gui, SLOT(showNormalIfMinimized())); |
|
|
|
|
|
|
|
|
|
|
|
return true; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
bool WalletStack::removeWallet(const QString& name) |
|
|
|
bool WalletStack::removeWallet(const QString& name) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (mapWalletViews.count(name) == 0) return false; |
|
|
|
if (mapWalletViews.count(name) == 0) |
|
|
|
|
|
|
|
return false; |
|
|
|
|
|
|
|
|
|
|
|
WalletView *walletView = mapWalletViews.take(name); |
|
|
|
WalletView *walletView = mapWalletViews.take(name); |
|
|
|
removeWidget(walletView); |
|
|
|
removeWidget(walletView); |
|
|
|
return true; |
|
|
|
return true; |
|
|
@ -57,7 +64,8 @@ void WalletStack::removeAllWallets() |
|
|
|
bool WalletStack::handlePaymentRequest(const SendCoinsRecipient &recipient) |
|
|
|
bool WalletStack::handlePaymentRequest(const SendCoinsRecipient &recipient) |
|
|
|
{ |
|
|
|
{ |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
if (!walletView) return false; |
|
|
|
if (!walletView) |
|
|
|
|
|
|
|
return false; |
|
|
|
|
|
|
|
|
|
|
|
return walletView->handlePaymentRequest(recipient); |
|
|
|
return walletView->handlePaymentRequest(recipient); |
|
|
|
} |
|
|
|
} |
|
|
@ -108,49 +116,59 @@ void WalletStack::gotoSendCoinsPage(QString addr) |
|
|
|
void WalletStack::gotoSignMessageTab(QString addr) |
|
|
|
void WalletStack::gotoSignMessageTab(QString addr) |
|
|
|
{ |
|
|
|
{ |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
if (walletView) walletView->gotoSignMessageTab(addr); |
|
|
|
if (walletView) |
|
|
|
|
|
|
|
walletView->gotoSignMessageTab(addr); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void WalletStack::gotoVerifyMessageTab(QString addr) |
|
|
|
void WalletStack::gotoVerifyMessageTab(QString addr) |
|
|
|
{ |
|
|
|
{ |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
if (walletView) walletView->gotoVerifyMessageTab(addr); |
|
|
|
if (walletView) |
|
|
|
|
|
|
|
walletView->gotoVerifyMessageTab(addr); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void WalletStack::encryptWallet(bool status) |
|
|
|
void WalletStack::encryptWallet(bool status) |
|
|
|
{ |
|
|
|
{ |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
if (walletView) walletView->encryptWallet(status); |
|
|
|
if (walletView) |
|
|
|
|
|
|
|
walletView->encryptWallet(status); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void WalletStack::backupWallet() |
|
|
|
void WalletStack::backupWallet() |
|
|
|
{ |
|
|
|
{ |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
if (walletView) walletView->backupWallet(); |
|
|
|
if (walletView) |
|
|
|
|
|
|
|
walletView->backupWallet(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void WalletStack::changePassphrase() |
|
|
|
void WalletStack::changePassphrase() |
|
|
|
{ |
|
|
|
{ |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
if (walletView) walletView->changePassphrase(); |
|
|
|
if (walletView) |
|
|
|
|
|
|
|
walletView->changePassphrase(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void WalletStack::unlockWallet() |
|
|
|
void WalletStack::unlockWallet() |
|
|
|
{ |
|
|
|
{ |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
if (walletView) walletView->unlockWallet(); |
|
|
|
if (walletView) |
|
|
|
|
|
|
|
walletView->unlockWallet(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void WalletStack::setEncryptionStatus() |
|
|
|
void WalletStack::setEncryptionStatus() |
|
|
|
{ |
|
|
|
{ |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
WalletView *walletView = (WalletView*)currentWidget(); |
|
|
|
if (walletView) walletView->setEncryptionStatus(); |
|
|
|
if (walletView) |
|
|
|
|
|
|
|
walletView->setEncryptionStatus(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void WalletStack::setCurrentWallet(const QString& name) |
|
|
|
bool WalletStack::setCurrentWallet(const QString& name) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (mapWalletViews.count(name) == 0) return; |
|
|
|
if (mapWalletViews.count(name) == 0) |
|
|
|
|
|
|
|
return false; |
|
|
|
|
|
|
|
|
|
|
|
WalletView *walletView = mapWalletViews.value(name); |
|
|
|
WalletView *walletView = mapWalletViews.value(name); |
|
|
|
setCurrentWidget(walletView); |
|
|
|
setCurrentWidget(walletView); |
|
|
|
walletView->setEncryptionStatus(); |
|
|
|
walletView->setEncryptionStatus(); |
|
|
|
|
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|