2
0
Эх сурвалжийг харах

Add aspect ratio to monitor test mode listing

Camilla Berglund 9 жил өмнө
parent
commit
9d42e146e7
1 өөрчлөгдсөн 8 нэмэгдсэн , 1 устгасан
  1. 8 1
      tests/monitors.c

+ 8 - 1
tests/monitors.c

@@ -49,14 +49,21 @@ static void usage(void)
     printf("       monitors -h\n");
 }
 
+static int euclid(int a, int b)
+{
+    return b ? euclid(b, a % b) : a;
+}
+
 static const char* format_mode(const GLFWvidmode* mode)
 {
     static char buffer[512];
+    const int gcd = euclid(mode->width, mode->height);
 
     sprintf(buffer,
-            "%i x %i x %i (%i %i %i) %i Hz",
+            "%i x %i x %i (%i:%i) (%i %i %i) %i Hz",
             mode->width, mode->height,
             mode->redBits + mode->greenBits + mode->blueBits,
+            mode->width / gcd, mode->height / gcd,
             mode->redBits, mode->greenBits, mode->blueBits,
             mode->refreshRate);