diff options
Diffstat (limited to 'src/client/Client.cpp')
| -rw-r--r-- | src/client/Client.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/client/Client.cpp b/src/client/Client.cpp index 3a46e23..d851e55 100644 --- a/src/client/Client.cpp +++ b/src/client/Client.cpp @@ -211,11 +211,31 @@ void Client::notifyUpdateAvailable() } } +void Client::notifyAuthUserChanged() +{ + for (std::vector<ClientListener*>::iterator iterator = listeners.begin(), end = listeners.end(); iterator != end; ++iterator) + { + (*iterator)->NotifyAuthUserChanged(this); + } +} + void Client::AddListener(ClientListener * listener) { listeners.push_back(listener); } +void Client::RemoveListener(ClientListener * listener) +{ + for (std::vector<ClientListener*>::iterator iterator = listeners.begin(), end = listeners.end(); iterator != end; ++iterator) + { + if((*iterator) == listener) + { + listeners.erase(iterator); + return; + } + } +} + void Client::Shutdown() { ClearThumbnailRequests(); @@ -256,6 +276,7 @@ Client::~Client() void Client::SetAuthUser(User user) { authUser = user; + notifyAuthUserChanged(); } User Client::GetAuthUser() |
