aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChrisDill <chrisdude134@gmail.com>2018-09-27 15:52:56 +0100
committerChrisDill <chrisdude134@gmail.com>2018-09-27 15:52:56 +0100
commit1836e02c1ef9909d25bbb89b9d9fdd6ec934aada (patch)
treead84b68b7632e9c9e53931fb9888a4d4cf08a4a8 /src
parent9efe5c6802b25f0e773b659f87153f309b8af8e2 (diff)
downloadraylib-1836e02c1ef9909d25bbb89b9d9fdd6ec934aada.tar.gz
raylib-1836e02c1ef9909d25bbb89b9d9fdd6ec934aada.zip
Added monitor functions
- Get number of monitors - Get size, physical size and name of primary monitor. Could pass monitor id instead not sure.
Diffstat (limited to 'src')
-rw-r--r--src/core.c49
-rw-r--r--src/raylib.h6
2 files changed, 55 insertions, 0 deletions
diff --git a/src/core.c b/src/core.c
index fc1a5a09..e785e735 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 a44b77ee..ee8744e7 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