21 Display Information
This section covers display/monitor enumeration and information.
21.1 Display Enumeration
procedure
(for ([id (get-displays)]) (printf "Display ~a: ~a~n" id (display-name id)))
procedure
procedure
(display-name display-id) → string?
display-id : exact-nonnegative-integer?
21.2 Display Bounds
procedure
(display-bounds display-id) →
exact-integer? exact-integer? exact-integer? exact-integer? display-id : exact-nonnegative-integer?
Returns (values x y width height) in screen coordinates.
(define-values (x y w h) (display-bounds (primary-display))) (printf "Primary display: ~ax~a at (~a, ~a)~n" w h x y)
procedure
(display-usable-bounds display-id) →
exact-integer? exact-integer? exact-integer? exact-integer? display-id : exact-nonnegative-integer?
Returns (values x y width height).
21.3 Display Modes
Display modes describe the resolution and refresh rate of a display.
procedure
(current-display-mode display-id) → cpointer?
display-id : exact-nonnegative-integer?
The returned pointer is owned by SDL and should not be freed.
procedure
(desktop-display-mode display-id) → cpointer?
display-id : exact-nonnegative-integer?
The returned pointer is owned by SDL and should not be freed.
procedure
(fullscreen-display-modes display-id) → (listof cpointer?)
display-id : exact-nonnegative-integer?
procedure
(display-mode-resolution mode) →
exact-integer? exact-integer? mode : cpointer?
(define mode (current-display-mode (primary-display))) (define-values (w h) (display-mode-resolution mode)) (printf "Current resolution: ~ax~a~n" w h)
procedure
(display-mode-refresh-rate mode) → real?
mode : cpointer?
21.4 Window-Display Relationship
procedure
win : window?
procedure
(display-content-scale display-id) → real?
display-id : exact-nonnegative-integer?
This is 1.0 for standard displays, 2.0 for Retina/HiDPI displays.
(define scale (display-content-scale (primary-display))) (when (> scale 1.0) (printf "HiDPI display detected (scale: ~a)~n" scale))
procedure
(window-display-scale win) → real?
win : window?
21.5 Display Mode Struct Accessors
These functions access fields of the SDL_DisplayMode struct:
procedure
(SDL_DisplayMode-displayID mode) → exact-nonnegative-integer?
mode : cpointer?
procedure
mode : cpointer?
procedure
(SDL_DisplayMode-w mode) → exact-integer?
mode : cpointer?
procedure
(SDL_DisplayMode-h mode) → exact-integer?
mode : cpointer?
procedure
(SDL_DisplayMode-pixel_density mode) → real?
mode : cpointer?
procedure
(SDL_DisplayMode-refresh_rate mode) → real?
mode : cpointer?
procedure
(SDL_DisplayMode-refresh_rate_numerator mode) → exact-integer?
mode : cpointer?
procedure
→ exact-integer? mode : cpointer?