#pragma once #ifndef NOMINMAX #define NOMINMAX #endif #include namespace XCEngine::UI::Editor { class Application; } namespace XCEngine::UI::Editor::Host { class WindowMessageDispatcher { public: static Application* GetApplicationFromWindow(HWND hwnd); static bool TryHandleNonClientCreate( HWND hwnd, UINT message, LPARAM lParam, LRESULT& outResult); static bool TryDispatch( Application& application, UINT message, WPARAM wParam, LPARAM lParam, LRESULT& outResult); private: static void RequestDeferredRenderFrame(Application& application); }; } // namespace XCEngine::UI::Editor::Host