Decompile fn_14469 (CUIFrameWnd::~CUIFrameWnd)
Batch #7020 by aDw: 0 byte-identical, 1 confirmed by peer review. - fn_14469 CUIFrameWnd::~CUIFrameWnd: logic confirmed by peer review Peer-reviewed-by: eAthena, Lumen Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
parent
d9bcd10f35
commit
bfd6001afd
3 changed files with 50 additions and 4 deletions
|
|
@ -1,8 +1,50 @@
|
|||
#include "UI/FrameSkin.h"
|
||||
#include "Resource/ResourceMgr.h"
|
||||
#include "Resource/TextureNames.h"
|
||||
#include "UI/Window/UIRegisterMgr.h"
|
||||
#include "UI/Window/WindowBorder.h"
|
||||
|
||||
#include <new>
|
||||
#include <utility>
|
||||
|
||||
// GLOBAL: gl_25106
|
||||
template <>
|
||||
CUIRegisterMgr* Singleton<CUIRegisterMgr>::s_instance = nullptr;
|
||||
|
||||
__declspec(noinline) CUIRegisterMgr::CUIRegisterMgr() {
|
||||
InitializeCriticalSection(&this->lock);
|
||||
}
|
||||
|
||||
// OFFSET: 0x009E69D0
|
||||
// FUNCTION: fn_14469
|
||||
CUIFrameWnd::~CUIFrameWnd() {
|
||||
if (static_cast<unsigned char>(this->unknown_00B4) != 0) {
|
||||
if (CUIRegisterMgr::s_instance == nullptr) {
|
||||
CUIRegisterMgr::s_instance = new (std::nothrow) CUIRegisterMgr;
|
||||
}
|
||||
std::map<int, std::pair<int, int>>& positions = CUIRegisterMgr::s_instance->unknown_000C;
|
||||
std::map<int, std::pair<int, int>>::iterator position = positions.lower_bound(this->geometry.id);
|
||||
if (position == positions.end() || this->geometry.id < position->first) {
|
||||
position = positions.insert(position, std::map<int, std::pair<int, int>>::value_type(this->geometry.id, std::pair<int, int>()));
|
||||
}
|
||||
position->second.first = this->geometry.x;
|
||||
position->second.second = this->geometry.y;
|
||||
}
|
||||
|
||||
if (static_cast<unsigned char>(this->unknown_00B4 >> 8) != 0) {
|
||||
if (CUIRegisterMgr::s_instance == nullptr) {
|
||||
CUIRegisterMgr::s_instance = new (std::nothrow) CUIRegisterMgr;
|
||||
}
|
||||
std::map<int, std::pair<int, int>>& sizes = CUIRegisterMgr::s_instance->unknown_0014;
|
||||
std::map<int, std::pair<int, int>>::iterator size = sizes.lower_bound(this->geometry.id);
|
||||
if (size == sizes.end() || this->geometry.id < size->first) {
|
||||
size = sizes.insert(size, std::map<int, std::pair<int, int>>::value_type(this->geometry.id, std::pair<int, int>()));
|
||||
}
|
||||
size->second.first = this->geometry.width;
|
||||
size->second.second = this->geometry.height;
|
||||
}
|
||||
}
|
||||
|
||||
// OFFSET: 0x009E6C70
|
||||
// FUNCTION: fn_14470
|
||||
void CUIFrameWnd::RefreshSkinColors() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue