capture mouse

This commit is contained in:
NishiOwO 2025-04-20 17:40:57 +09:00
parent 47353ce63b
commit 385a776a2e
No known key found for this signature in database
GPG Key ID: 27EF69B208EB9343
2 changed files with 12 additions and 0 deletions

View File

@ -52,9 +52,11 @@ LRESULT CALLBACK gf_draw_platform_proc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp
case WM_LBUTTONUP:
if(draw->input != NULL) {
if(msg == WM_LBUTTONDOWN) {
SetCapture(hWnd);
draw->input->mouse_flag |= GF_INPUT_MOUSE_LEFT_MASK;
} else {
draw->input->mouse_flag ^= GF_INPUT_MOUSE_LEFT_MASK;
ReleaseCapture();
}
}
break;
@ -62,9 +64,11 @@ LRESULT CALLBACK gf_draw_platform_proc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp
case WM_MBUTTONUP:
if(draw->input != NULL) {
if(msg == WM_MBUTTONDOWN) {
SetCapture(hWnd);
draw->input->mouse_flag |= GF_INPUT_MOUSE_MIDDLE_MASK;
} else {
draw->input->mouse_flag ^= GF_INPUT_MOUSE_MIDDLE_MASK;
ReleaseCapture();
}
}
break;
@ -72,9 +76,11 @@ LRESULT CALLBACK gf_draw_platform_proc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp
case WM_RBUTTONUP:
if(draw->input != NULL) {
if(msg == WM_RBUTTONDOWN) {
SetCapture(hWnd);
draw->input->mouse_flag |= GF_INPUT_MOUSE_RIGHT_MASK;
} else {
draw->input->mouse_flag ^= GF_INPUT_MOUSE_RIGHT_MASK;
ReleaseCapture();
}
}
break;

View File

@ -58,9 +58,11 @@ LRESULT CALLBACK gf_draw_platform_proc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp
case WM_LBUTTONUP:
if(draw->input != NULL) {
if(msg == WM_LBUTTONDOWN) {
SetCapture(hWnd);
draw->input->mouse_flag |= GF_INPUT_MOUSE_LEFT_MASK;
} else {
draw->input->mouse_flag ^= GF_INPUT_MOUSE_LEFT_MASK;
ReleaseCapture();
}
}
break;
@ -68,9 +70,11 @@ LRESULT CALLBACK gf_draw_platform_proc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp
case WM_MBUTTONUP:
if(draw->input != NULL) {
if(msg == WM_MBUTTONDOWN) {
SetCapture(hWnd);
draw->input->mouse_flag |= GF_INPUT_MOUSE_MIDDLE_MASK;
} else {
draw->input->mouse_flag ^= GF_INPUT_MOUSE_MIDDLE_MASK;
ReleaseCapture();
}
}
break;
@ -78,9 +82,11 @@ LRESULT CALLBACK gf_draw_platform_proc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp
case WM_RBUTTONUP:
if(draw->input != NULL) {
if(msg == WM_RBUTTONDOWN) {
SetCapture(hWnd);
draw->input->mouse_flag |= GF_INPUT_MOUSE_RIGHT_MASK;
} else {
draw->input->mouse_flag ^= GF_INPUT_MOUSE_RIGHT_MASK;
ReleaseCapture();
}
}
break;