Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Thursday, June 13, 2019
 
 

SDL_ListModes (3)

Name

SDL_ListModes - Returns a pointer to an array of available screen dimensions for the given format and video flags

Synopsis

#include "SDL.h"

SDL_Rect **SDL_ListModes(SDL_PixelFormat *format, Uint32 flags);

Description

SDL_ListModes(3)               SDL API Reference              SDL_ListModes(3)



NAME
       SDL_ListModes  -  Returns  a  pointer  to  an array of available screen
       dimensions for the given format and video flags

SYNOPSIS
       #include "SDL.h"

       SDL_Rect **SDL_ListModes(SDL_PixelFormat *format, Uint32 flags);

DESCRIPTION
       Return a pointer to an array of available  screen  dimensions  for  the
       given  format and video flags, sorted largest to smallest. Returns NULL
       if there are no dimensions available for a particular format, or -1  if
       any dimension is okay for the given format.

       If  format  is  NULL,  the mode list will be for the format returned by
       SDL_GetVideoInfo()->vfmt. The flag parameter is an OR'd combination  of
       surface  flags.  The  flags are the same as those used SDL_SetVideoMode
       and they play a strong role in  deciding  what  modes  are  valid.  For
       instance,  if  you pass SDL_HWSURFACE as a flag only modes that support
       hardware video surfaces will be returned.

EXAMPLE
       SDL_Rect **modes;
       int i;
       .
       .
       .

       /* Get available fullscreen/hardware modes */
       modes=SDL_ListModes(NULL, SDL_FULLSCREEN|SDL_HWSURFACE);

       /* Check is there are any modes available */
       if(modes == (SDL_Rect **)0){
         printf("No modes available!
       ");
         exit(-1);
       }

       /* Check if or resolution is restricted */
       if(modes == (SDL_Rect **)-1){
         printf("All resolutions available.
       ");
       }
       else{
         /* Print valid modes */
         printf("Available Modes
       ");
         for(i=0;modes[i];++i)
           printf("  %d x %d
       ", modes[i]->w, modes[i]->h);
       }
       .
       .

ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | library/sdl      |
       +---------------+------------------+
       |Stability      | Volatile         |
       +---------------+------------------+
SEE ALSO
       SDL_SetVideoMode, SDL_GetVideoInfo, SDL_Rect, SDL_PixelFormat



NOTES
       This    software    was    built    from    source     available     at
       https://github.com/oracle/solaris-userland.    The  original  community
       source       was        downloaded        from         https://www.lib-
       sdl.org/release/SDL-1.2.15.tar.gz

       Further information about this software can be found on the open source
       community website at https://www.libsdl.org/.



SDL                         Tue 11 Sep 2001, 23:01            SDL_ListModes(3)