mirror of
https://github.com/whoahq/whoa.git
synced 2026-02-01 00:02:45 +03:00
feat(ui): partially implement CSimpleTop dtor
This commit is contained in:
parent
509cec3f94
commit
a1fafb46ec
@ -165,3 +165,7 @@ void EventRegisterEx(EVENTID id, EVENTHANDLERFUNC handler, void* param, float pr
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EventUnregisterEx(EVENTID id, EVENTHANDLERFUNC handler, void* param, uint32_t flags) {
|
||||
// TODO
|
||||
}
|
||||
|
||||
@ -57,6 +57,8 @@ void EventRegister(EVENTID id, int32_t (*handler)(const void*, void*));
|
||||
|
||||
void EventRegisterEx(EVENTID id, int32_t (*handler)(const void*, void*), void* param, float priority);
|
||||
|
||||
void EventUnregisterEx(EVENTID id, EVENTHANDLERFUNC handler, void* param, uint32_t flags);
|
||||
|
||||
void OsNetPump(uint32_t timeout);
|
||||
|
||||
#endif
|
||||
|
||||
@ -397,10 +397,37 @@ CSimpleTop::CSimpleTop() : CLayoutFrame() {
|
||||
CSimpleTexture::Init();
|
||||
}
|
||||
|
||||
CSimpleTop::~CSimpleTop() {
|
||||
// TODO
|
||||
|
||||
this->DisableEvents();
|
||||
|
||||
HandleClose(this->m_screenLayer);
|
||||
|
||||
CSimpleTop::s_instance = nullptr;
|
||||
|
||||
// TODO
|
||||
}
|
||||
|
||||
void CSimpleTop::CompressStrata(int32_t strata) {
|
||||
// TODO
|
||||
}
|
||||
|
||||
void CSimpleTop::DisableEvents() {
|
||||
EventUnregisterEx(EVENT_ID_CHAR, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnChar), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_IME, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnIme), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_KEYDOWN, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnKeyDown), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_KEYUP, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnKeyUp), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_KEYDOWN_REPEATING, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnKeyDownRepeat), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_MOUSEMOVE, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnMouseMove), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_MOUSEMOVE_RELATIVE, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnMouseMoveRelative), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_MOUSEDOWN, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnMouseDown), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_MOUSEUP, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnMouseUp), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_MOUSEWHEEL, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnMouseWheel), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_SIZE, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnDisplaySizeChanged), this, -1);
|
||||
EventUnregisterEx(EVENT_ID_FOCUS, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnFocusChanged), this, -1);
|
||||
}
|
||||
|
||||
void CSimpleTop::EnableEvents() {
|
||||
EventRegisterEx(EVENT_ID_CHAR, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnChar), this, 1.0);
|
||||
EventRegisterEx(EVENT_ID_IME, reinterpret_cast<EVENTHANDLERFUNC>(CSimpleTop::OnIme), this, 1.0);
|
||||
|
||||
@ -61,9 +61,13 @@ class CSimpleTop : public CLayoutFrame {
|
||||
int32_t (*m_mousePositionCallback)(CMouseEvent*) = nullptr;
|
||||
int32_t (*m_displaySizeCallback)(const CSizeEvent&) = nullptr;
|
||||
|
||||
// Virtual member functions
|
||||
virtual ~CSimpleTop();
|
||||
|
||||
// Member functions
|
||||
CSimpleTop();
|
||||
void CompressStrata(int32_t strata);
|
||||
void DisableEvents();
|
||||
void EnableEvents();
|
||||
void HideFrame(CSimpleFrame* frame, int32_t a4);
|
||||
void MoveOrResizeFrame(const CMouseEvent& evt);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user