diff options
| author | 2015-11-04 02:40:47 -0500 | |
|---|---|---|
| committer | 2015-11-04 04:09:05 -0500 | |
| commit | 115e0a937136dd619cde866910a62dfd7deb4950 (patch) | |
| tree | 0d3d0aaef2b79f9b660346241ee640e320893117 /src/modules | |
| parent | favorites: Fix indentation (diff) | |
| download | KVIrc-115e0a937136dd619cde866910a62dfd7deb4950.tar.gz KVIrc-115e0a937136dd619cde866910a62dfd7deb4950.tar.bz2 KVIrc-115e0a937136dd619cde866910a62dfd7deb4950.zip | |
favorites: Hide server when unfavorited
Have the menu option labeled 'Unfavorite Server' when it is
currently favorited.
Diffstat (limited to 'src/modules')
| -rw-r--r-- | src/modules/options/OptionsWidget_servers.cpp | 10 | ||||
| -rw-r--r-- | src/modules/options/OptionsWidget_servers.h | 1 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/modules/options/OptionsWidget_servers.cpp b/src/modules/options/OptionsWidget_servers.cpp index b61540015..ba1631a3f 100644 --- a/src/modules/options/OptionsWidget_servers.cpp +++ b/src/modules/options/OptionsWidget_servers.cpp @@ -1475,6 +1475,8 @@ OptionsWidget_servers::OptionsWidget_servers(QWidget * parent) m_pClipboard = 0; + m_bShowingFavoritesOnly = KVI_OPTION_BOOL(KviOption_boolShowFavoriteServersOnly); + fillServerList(); updateFavoritesFilter(KVI_OPTION_BOOL(KviOption_boolShowFavoriteServersOnly)); @@ -1844,6 +1846,7 @@ void OptionsWidget_servers::customContextMenuRequested(const QPoint &pnt) { QTreeWidgetItem *it = static_cast<QTreeWidgetItem *>(m_pTreeWidget->itemAt(pnt)); bool bServer = (it && static_cast<IrcServerOptionsTreeWidgetItem *>(it)->m_pServerData); + bool bFavorite = (bServer && static_cast<IrcServerOptionsTreeWidgetItem *>(it)->m_pServerData->favorite()); m_pContextPopup->clear(); m_pContextPopup->addAction(*(g_pIconManager->getSmallIcon(KviIconManager::World)),__tr2qs_ctx("New Network","options"),this,SLOT(newNetwork())); m_pContextPopup->addAction(*(g_pIconManager->getSmallIcon(KviIconManager::Cut)),__tr2qs_ctx("Remove Network","options"),this,SLOT(removeCurrent())) @@ -1863,7 +1866,8 @@ void OptionsWidget_servers::customContextMenuRequested(const QPoint &pnt) m_pContextPopup->addAction(__tr2qs_ctx("Import List","options"))->setMenu(m_pImportPopup); m_pContextPopup->popup(QCursor::pos()); m_pContextPopup->addSeparator(); - m_pContextPopup->addAction(*(g_pIconManager->getSmallIcon(KviIconManager::ServerFavorite)),__tr2qs_ctx("Favorite Server","options"),this,SLOT(favoriteServer())); + m_pContextPopup->addAction(*(g_pIconManager->getSmallIcon(KviIconManager::ServerFavorite)), + __tr2qs_ctx(bFavorite?"Unfavorite Server":"Favorite Server","options"),this,SLOT(favoriteServer())); m_pContextPopup->setEnabled(bServer); } @@ -2022,11 +2026,15 @@ void OptionsWidget_servers::favoriteServer() unsigned icon = m_pLastEditedItem->m_pServerData->favorite() ? KviIconManager::ServerFavorite : KviIconManager::Server; m_pLastEditedItem->setIcon(0,*(g_pIconManager->getSmallIcon(icon))); + + if(m_bShowingFavoritesOnly) + updateFavoritesFilter(true); } } void OptionsWidget_servers::updateFavoritesFilter(bool bSet) { + m_bShowingFavoritesOnly = bSet; IrcServerOptionsTreeWidgetItem * network; for(unsigned i = 0; i < m_pTreeWidget->topLevelItemCount(); i++) { diff --git a/src/modules/options/OptionsWidget_servers.h b/src/modules/options/OptionsWidget_servers.h index adc0f7a22..ca330ac03 100644 --- a/src/modules/options/OptionsWidget_servers.h +++ b/src/modules/options/OptionsWidget_servers.h @@ -203,6 +203,7 @@ protected: QToolButton * m_pPasteServerButton; QToolButton * m_pImportButton; QToolButton * m_pFavoriteServerButton; + bool m_bShowingFavoritesOnly; private: void fillServerList(); void saveLastItem(); |
