diff --git a/src/core.c b/src/core.c index fc1a5a093..e785e7355 100644 --- a/src/core.c +++ b/src/core.c @@ -770,6 +770,55 @@ int GetScreenHeight(void) return screenHeight; } +// Get number of monitors +int GetMonitorCount(void) +{ + int monitorCount; + glfwGetMonitors(&monitorCount); + return monitorCount; +} + +// Get primary monitor width +int GetMonitorWidth(void) +{ + GLFWmonitor *monitor = glfwGetPrimaryMonitor(); + const GLFWvidmode * mode = glfwGetVideoMode(monitor); + return mode->width; +} + +// Get primary monitor height +int GetMonitorHeight(void) +{ + GLFWmonitor *monitor = glfwGetPrimaryMonitor(); + const GLFWvidmode * mode = glfwGetVideoMode(monitor); + return mode->height; +} + +// Get primary montior physical width in millimetres +int GetMonitorPhysicalWidth(void) +{ + int physicalWidth; + GLFWmonitor *monitor = glfwGetPrimaryMonitor(); + glfwGetMonitorPhysicalSize(monitor, &physicalWidth, NULL); + return physicalWidth; +} + +// Get primary monitor physical height in millimetres +int GetMonitorPhysicalHeight(void) +{ + int physicalHeight; + GLFWmonitor *monitor = glfwGetPrimaryMonitor(); + glfwGetMonitorPhysicalSize(monitor, NULL, &physicalHeight); + return physicalHeight; +} + +// Get the human-readable, UTF-8 encoded name of the primary monitor +const char *GetMonitorName(void) +{ + GLFWmonitor *monitor = glfwGetPrimaryMonitor(); + return glfwGetMonitorName(monitor); +} + // Show mouse cursor void ShowCursor() { diff --git a/src/raylib.h b/src/raylib.h index a44b77eeb..ee8744e74 100644 --- a/src/raylib.h +++ b/src/raylib.h @@ -814,6 +814,12 @@ RLAPI void SetWindowMinSize(int width, int height); // Set window RLAPI void SetWindowSize(int width, int height); // Set window dimensions RLAPI int GetScreenWidth(void); // Get current screen width RLAPI int GetScreenHeight(void); // Get current screen height +RLAPI int GetMonitorCount(void); // Get number of connected monitors +RLAPI int GetMonitorWidth(void); // Get primary monitor width +RLAPI int GetMonitorHeight(void); // Get primary monitor height +RLAPI int GetMonitorPhysicalWidth(void); // Get primary monitor physical width in millimetres +RLAPI int GetMonitorPhysicalHeight(void); // Get primary monitor physical height in millimetres +RLAPI const char *GetMonitorName(void); // Get the human-readable, UTF-8 encoded name of the primary monitor // Cursor-related functions RLAPI void ShowCursor(void); // Shows cursor