diff options
| author | oy <Tom_Adams@web.de> | 2010-07-04 16:10:00 +0200 |
|---|---|---|
| committer | oy <Tom_Adams@web.de> | 2010-07-04 16:10:00 +0200 |
| commit | 5d442ae3290d5294d9cd692c62b59168237e62b7 (patch) | |
| tree | eacb0d04f743fa7c9248c393ae33f3dd63502a22 /src/game/client | |
| parent | c42679a10ef46704e3cbe20a237c37fe3a7cfd3f (diff) | |
| download | zcatch-5d442ae3290d5294d9cd692c62b59168237e62b7.tar.gz zcatch-5d442ae3290d5294d9cd692c62b59168237e62b7.zip | |
refresh the server browser if the "favorites"-tab is active and a new entry has been added with "add_favorite"-command
Diffstat (limited to 'src/game/client')
| -rw-r--r-- | src/game/client/components/menus.cpp | 2 | ||||
| -rw-r--r-- | src/game/client/components/menus.h | 1 | ||||
| -rw-r--r-- | src/game/client/components/menus_browser.cpp | 7 |
3 files changed, 10 insertions, 0 deletions
diff --git a/src/game/client/components/menus.cpp b/src/game/client/components/menus.cpp index 76943620..d4513393 100644 --- a/src/game/client/components/menus.cpp +++ b/src/game/client/components/menus.cpp @@ -712,6 +712,8 @@ void CMenus::OnInit() if(g_Config.m_ClShowWelcome) m_Popup = POPUP_FIRST_LAUNCH; g_Config.m_ClShowWelcome = 0; + + Console()->Chain("add_favorite", ConchainServerbrowserUpdate, this); } void CMenus::PopupMessage(const char *pTopic, const char *pBody, const char *pButton) diff --git a/src/game/client/components/menus.h b/src/game/client/components/menus.h index 9ea9c6ef..3ad737e5 100644 --- a/src/game/client/components/menus.h +++ b/src/game/client/components/menus.h @@ -191,6 +191,7 @@ class CMenus : public CComponent void RenderServerbrowserServerDetail(CUIRect View); void RenderServerbrowserFilters(CUIRect View); void RenderServerbrowser(CUIRect MainView); + static void ConchainServerbrowserUpdate(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData); // found in menus_settings.cpp void RenderSettingsGeneral(CUIRect MainView); diff --git a/src/game/client/components/menus_browser.cpp b/src/game/client/components/menus_browser.cpp index 90932125..7d9c9d7e 100644 --- a/src/game/client/components/menus_browser.cpp +++ b/src/game/client/components/menus_browser.cpp @@ -710,3 +710,10 @@ void CMenus::RenderServerbrowser(CUIRect MainView) UI()->DoLabel(&Button, Localize("Host address"), 14.0f, -1); } } + +void CMenus::ConchainServerbrowserUpdate(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData) +{ + pfnCallback(pResult, pCallbackUserData); + if(pResult->NumArguments() && g_Config.m_UiPage == PAGE_FAVORITES && ((CMenus *)pUserData)->Client()->State() == IClient::STATE_OFFLINE) + ((CMenus *)pUserData)->ServerBrowser()->Refresh(IServerBrowser::TYPE_FAVORITES); +} |