feat(event): pass custom window proc in gx device creation

This commit is contained in:
fallenoak 2023-03-14 17:15:54 -05:00 committed by GitHub
parent 9ccd1884f3
commit 32f9c81abf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 41 additions and 1 deletions

View File

@ -1,4 +1,5 @@
#include "client/Console.hpp"
#include "event/Window.hpp"
#include "gx/Device.hpp"
#include "util/CVar.hpp"
#include <cstring>
@ -200,7 +201,7 @@ void ConsoleDeviceInitialize(const char* title) {
api = GxApi_GLL;
#endif
CGxDevice* device = GxDevCreate(api, nullptr, format);
CGxDevice* device = GxDevCreate(api, OsWindowProc, format);
// TODO
}

View File

@ -1,5 +1,12 @@
file(GLOB PRIVATE_SOURCES "*.cpp")
if(WHOA_SYSTEM_WIN)
file(GLOB WIN_SOURCES
"win/*.cpp"
)
list(APPEND PRIVATE_SOURCES ${WIN_SOURCES})
endif()
if(WHOA_SYSTEM_MAC)
file(GLOB MAC_SOURCES
"mac/*.cpp"
@ -8,6 +15,13 @@ if(WHOA_SYSTEM_MAC)
list(APPEND PRIVATE_SOURCES ${MAC_SOURCES})
endif()
if(WHOA_SYSTEM_LINUX)
file(GLOB LINUX_SOURCES
"linux/*.cpp"
)
list(APPEND PRIVATE_SOURCES ${LINUX_SOURCES})
endif()
add_library(event STATIC
${PRIVATE_SOURCES}
)

8
src/event/Window.hpp Normal file
View File

@ -0,0 +1,8 @@
#ifndef EVENT_WINDOW_HPP
#define EVENT_WINDOW_HPP
#include <cstdint>
int32_t OsWindowProc(void* window, uint32_t message, uint32_t wparam, int32_t lparam);
#endif

View File

@ -0,0 +1,5 @@
#include "event/Window.hpp"
int32_t OsWindowProc(void* window, uint32_t message, uint32_t wparam, int32_t lparam) {
return 0;
}

5
src/event/mac/Window.cpp Normal file
View File

@ -0,0 +1,5 @@
#include "event/Window.hpp"
int32_t OsWindowProc(void* window, uint32_t message, uint32_t wparam, int32_t lparam) {
return 0;
}

7
src/event/win/Window.cpp Normal file
View File

@ -0,0 +1,7 @@
#include "event/Window.hpp"
#include <windows.h>
int32_t OsWindowProc(void* window, uint32_t message, uint32_t wparam, int32_t lparam) {
// TODO
return 0;
}