mirror of
https://github.com/Ed94/Odin.git
synced 2026-06-13 09:22:22 -07:00
34 lines
1.2 KiB
Odin
34 lines
1.2 KiB
Odin
package glfw
|
|
|
|
when ODIN_OS == .Windows {
|
|
import win32 "core:sys/windows"
|
|
|
|
foreign import glfw { "lib/glfw3.lib", "system:user32.lib", "system:gdi32.lib", "system:shell32.lib" }
|
|
|
|
@(default_calling_convention="c", link_prefix="glfw")
|
|
foreign glfw {
|
|
GetWin32Adapter :: proc(monitor: MonitorHandle) -> cstring ---
|
|
GetWin32Monitor :: proc(monitor: MonitorHandle) -> cstring ---
|
|
GetWin32Window :: proc(window: WindowHandle) -> win32.HWND ---
|
|
GetWGLContext :: proc(window: WindowHandle) -> rawptr ---
|
|
}
|
|
} else when ODIN_OS == .Linux {
|
|
// TODO: Native Linux
|
|
// Display* glfwGetX11Display(void);
|
|
// RRCrtc glfwGetX11Adapter(GLFWmonitor* monitor);
|
|
// RROutput glfwGetX11Monitor(GLFWmonitor* monitor);
|
|
// Window glfwGetX11Window(GLFWwindow* window);
|
|
// void glfwSetX11SelectionString(const char* string);
|
|
// const char* glfwGetX11SelectionString(void);
|
|
|
|
// struct wl_display* glfwGetWaylandDisplay(void);
|
|
// struct wl_output* glfwGetWaylandMonitor(GLFWmonitor* monitor);
|
|
// struct wl_surface* glfwGetWaylandWindow(GLFWwindow* window);
|
|
} else when ODIN_OS == .Darwin {
|
|
// TODO: Native Darwin
|
|
// CGDirectDisplayID glfwGetCocoaMonitor(GLFWmonitor* monitor);
|
|
// id glfwGetCocoaWindow(GLFWwindow* window);
|
|
// id glfwGetNSGLContext(GLFWwindow* window);
|
|
}
|
|
|