rodecomp/Source/UI/Window/WindowRegistration.cpp
ragnarok-clanker f1e20439ff Confirm 3 functions in Source/UI/Window/WindowRegistration.cpp, Source/UI/Window/WindowRetirement.cpp, ...
Batch #14833 by kyoshi: 2 byte-identical, 1 confirmed by peer review.

- fn_17120 UIWindowMgr::RegisterWindow: byte-identical (already on main)
- fn_17219 UIWindowMgr::Schedule: byte-identical (already on main)
- fn_17208 UIWindowMgr::CreateLayoutWindow: logic confirmed by peer review (already on main)

Peer-reviewed-by: ragnarok-clanker, Tanke, codeplay
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-11-07 19:13:25 +00:00

37 lines
1 KiB
C++

#include "UI/Window/UIWindow.h"
#include "UI/Window/UIWindowMgr.h"
extern template std::_List_node<UIWindow*, void*>* std::list<UIWindow*>::_Emplace<UIWindow* const&>(std::_List_node<UIWindow*, void*>* const, UIWindow* const&);
// OFFSET: 0x00A8B060
// FUNCTION: fn_17120
void UIWindowMgr::RegisterWindow(UIWindow* window) {
for (UIWindow* existing : this->registeredWindows) {
if (existing == window) {
return;
}
}
this->registeredWindows.push_back(window);
}
// OFFSET: 0x00AA7200
// FUNCTION: fn_17236
void UIWindowMgr::UnregisterWindow(UIWindow* window) {
for (auto entry = this->registeredWindows.begin(); entry != this->registeredWindows.end(); ++entry) {
if (*entry == window) {
this->registeredWindows.erase(entry);
return;
}
}
}
// OFFSET: 0x00AA6650
// FUNCTION: fn_17231
void UIWindowMgr::InvalidateRegisteredWindows() {
for (auto entry = this->registeredWindows.begin(); entry != this->registeredWindows.end(); ++entry) {
(*entry)->Invalidate();
}
this->registeredWindows.clear();
}