slot 0.0.1
A real time UI render framework
载入中...
搜索中...
未找到
Win32WindowHost.h
浏览该文件的文档.
1#pragma once
2
3#include "Core/Event.h"
4
5#include <windows.h>
6
7namespace z8 {
8
17private:
19 HWND AttachedWindow = nullptr;
20 HWND InputCoordinateWindow = nullptr;
21 POINT LastPointer{};
22 bool HasPointerPosition = false;
23 bool ReleasingCapture = false;
24
25 static MouseButton ResolveMouseButton(UINT message, WPARAM wParam);
26 float ResolveCoordinateScale() const;
27 MouseMovArgs ResolveMouseArgs(HWND sourceWindow, UINT message,
28 WPARAM wParam, LPARAM lParam);
29 static LPCWSTR ResolveSystemCursor(MouseCursor cursor);
30 static LRESULT CALLBACK WindowProcedure(HWND window, UINT message,
31 WPARAM wParam, LPARAM lParam);
32
33protected:
34 Win32WindowHost() = default;
35 virtual ~Win32WindowHost();
36
41 void AttachWindow(HWND window, EventTarget &inputTarget,
42 HWND coordinateWindow = nullptr);
43 void DetachWindow();
45 bool DispatchInputMessage(HWND window, UINT message, WPARAM wParam,
46 LPARAM lParam, LRESULT &result);
47 virtual LRESULT HandleWindowMessage(HWND window, UINT message,
48 WPARAM wParam, LPARAM lParam) = 0;
49};
50
51} // namespace z8
Definition Event.h:80
Definition Win32WindowHost.h:16
float ResolveCoordinateScale() const
Definition Win32WindowHost.cpp:201
POINT LastPointer
Definition Win32WindowHost.h:21
MouseMovArgs ResolveMouseArgs(HWND sourceWindow, UINT message, WPARAM wParam, LPARAM lParam)
Definition Win32WindowHost.cpp:178
virtual LRESULT HandleWindowMessage(HWND window, UINT message, WPARAM wParam, LPARAM lParam)=0
bool ReleasingCapture
Definition Win32WindowHost.h:23
static MouseButton ResolveMouseButton(UINT message, WPARAM wParam)
Definition Win32WindowHost.cpp:157
static LPCWSTR ResolveSystemCursor(MouseCursor cursor)
Definition Win32WindowHost.cpp:211
HWND InputCoordinateWindow
Definition Win32WindowHost.h:20
void AttachWindow(HWND window, EventTarget &inputTarget, HWND coordinateWindow=nullptr)
Definition Win32WindowHost.cpp:10
EventTarget * InputTarget
Definition Win32WindowHost.h:18
static LRESULT CALLBACK WindowProcedure(HWND window, UINT message, WPARAM wParam, LPARAM lParam)
Definition Win32WindowHost.cpp:226
void DetachWindow()
Definition Win32WindowHost.cpp:25
HWND AttachedWindow
Definition Win32WindowHost.h:19
virtual ~Win32WindowHost()
Definition Win32WindowHost.cpp:8
bool DispatchInputMessage(HWND window, UINT message, WPARAM wParam, LPARAM lParam, LRESULT &result)
Definition Win32WindowHost.cpp:36
bool HasPointerPosition
Definition Win32WindowHost.h:22
Win32WindowHost()=default
世界矩阵 描述坐标系,左手坐标系 使用 DirectX12 坐标系的描述
Definition Application.h:15
MouseCursor
Definition Event.h:27
MouseButton
Definition Event.h:22
Definition Event.h:41