gui: Show current wallet name in window title

This commit is contained in:
João Barbosa 2019-01-11 23:49:36 +00:00
parent 8a79261124
commit fe7048b39b
4 changed files with 28 additions and 11 deletions

View file

@ -85,20 +85,12 @@ BitcoinGUI::BitcoinGUI(interfaces::Node& node, const PlatformStyle *_platformSty
move(QApplication::desktop()->availableGeometry().center() - frameGeometry().center()); move(QApplication::desktop()->availableGeometry().center() - frameGeometry().center());
} }
QString windowTitle = tr(PACKAGE_NAME) + " - ";
#ifdef ENABLE_WALLET #ifdef ENABLE_WALLET
enableWallet = WalletModel::isWalletEnabled(); enableWallet = WalletModel::isWalletEnabled();
#endif // ENABLE_WALLET #endif // ENABLE_WALLET
if(enableWallet)
{
windowTitle += tr("Wallet");
} else {
windowTitle += tr("Node");
}
windowTitle += " " + m_network_style->getTitleAddText();
QApplication::setWindowIcon(m_network_style->getTrayAndWindowIcon()); QApplication::setWindowIcon(m_network_style->getTrayAndWindowIcon());
setWindowIcon(m_network_style->getTrayAndWindowIcon()); setWindowIcon(m_network_style->getTrayAndWindowIcon());
setWindowTitle(windowTitle); updateWindowTitle();
rpcConsole = new RPCConsole(node, _platformStyle, nullptr); rpcConsole = new RPCConsole(node, _platformStyle, nullptr);
helpMessageDialog = new HelpMessageDialog(node, this, false); helpMessageDialog = new HelpMessageDialog(node, this, false);
@ -599,12 +591,14 @@ void BitcoinGUI::removeWallet(WalletModel* walletModel)
} }
rpcConsole->removeWallet(walletModel); rpcConsole->removeWallet(walletModel);
walletFrame->removeWallet(walletModel); walletFrame->removeWallet(walletModel);
updateWindowTitle();
} }
void BitcoinGUI::setCurrentWallet(WalletModel* wallet_model) void BitcoinGUI::setCurrentWallet(WalletModel* wallet_model)
{ {
if (!walletFrame) return; if (!walletFrame) return;
walletFrame->setCurrentWallet(wallet_model); walletFrame->setCurrentWallet(wallet_model);
updateWindowTitle();
} }
void BitcoinGUI::setCurrentWalletBySelectorIndex(int index) void BitcoinGUI::setCurrentWalletBySelectorIndex(int index)
@ -1207,6 +1201,21 @@ void BitcoinGUI::updateProxyIcon()
} }
} }
void BitcoinGUI::updateWindowTitle()
{
QString window_title = tr(PACKAGE_NAME) + " - ";
#ifdef ENABLE_WALLET
if (walletFrame) {
WalletModel* const wallet_model = walletFrame->currentWalletModel();
if (wallet_model && !wallet_model->getWalletName().isEmpty()) {
window_title += wallet_model->getDisplayName() + " - ";
}
}
#endif
window_title += m_network_style->getTitleAddText();
setWindowTitle(window_title);
}
void BitcoinGUI::showNormalIfMinimized(bool fToggleHidden) void BitcoinGUI::showNormalIfMinimized(bool fToggleHidden)
{ {
if(!clientModel) if(!clientModel)

View file

@ -243,6 +243,7 @@ public Q_SLOTS:
private: private:
/** Set the proxy-enabled icon as shown in the UI. */ /** Set the proxy-enabled icon as shown in the UI. */
void updateProxyIcon(); void updateProxyIcon();
void updateWindowTitle();
public Q_SLOTS: public Q_SLOTS:
#ifdef ENABLE_WALLET #ifdef ENABLE_WALLET

View file

@ -208,11 +208,17 @@ void WalletFrame::usedReceivingAddresses()
walletView->usedReceivingAddresses(); walletView->usedReceivingAddresses();
} }
WalletView *WalletFrame::currentWalletView() WalletView* WalletFrame::currentWalletView() const
{ {
return qobject_cast<WalletView*>(walletStack->currentWidget()); return qobject_cast<WalletView*>(walletStack->currentWidget());
} }
WalletModel* WalletFrame::currentWalletModel() const
{
WalletView* wallet_view = currentWalletView();
return wallet_view ? wallet_view->getWalletModel() : nullptr;
}
void WalletFrame::outOfSyncWarningClicked() void WalletFrame::outOfSyncWarningClicked()
{ {
Q_EMIT requestedSyncWarningInfo(); Q_EMIT requestedSyncWarningInfo();

View file

@ -60,7 +60,8 @@ private:
const PlatformStyle *platformStyle; const PlatformStyle *platformStyle;
public: public:
WalletView *currentWalletView(); WalletView* currentWalletView() const;
WalletModel* currentWalletModel() const;
public Q_SLOTS: public Q_SLOTS:
/** Switch to overview (home) page */ /** Switch to overview (home) page */