NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.64
REL="HOME"
TITLE="SDL Library Documentation"
REL="UP"
TITLE="Video"
REL="PREVIOUS"
TITLE="SDL_VideoDriverName"
HREF="sdlvideodrivername.html"><
LINK
REL="NEXT"
TITLE="SDL_VideoModeOK"
HREF="sdlvideomodeok.html"><
/HEAD
CLASS="REFENTRY"
BGCOLOR="#FFF8DC"
TEXT="#000000"
LINK="#0000ee"
VLINK="#551a8b"
ALINK="#ff0000"
CLASS="NAVHEADER"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
COLSPAN="3"
ALIGN="center"
>SDL Library Documentation<
/TH
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
HREF="sdlvideodrivername.html"
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
HREF="sdlvideomodeok.html"
ALIGN="LEFT"
NAME="SDLLISTMODES"
CLASS="REFNAMEDIV"
NAME="AEN754"
>SDL_ListModes -- Returns a pointer to an array of available screen dimensions for
the given format and video flags<
/DIV
CLASS="REFSYNOPSISDIV"
NAME="AEN757"
CLASS="FUNCSYNOPSIS"
NAME="AEN758"
CLASS="FUNCSYNOPSISINFO"
CLASS="FUNCDEF"
CLASS="FSFUNC"
>
(SDL_PixelFormat *format, Uint32 flags
);<
/CODE
CLASS="REFSECT1"
NAME="AEN764"
>Return a pointer to an array of available screen dimensions for the given
format and video flags, sorted largest to smallest. Returns
CLASS="LITERAL"
> if there are no dimensions available for a particular
CLASS="RETURNVALUE"
> if any dimension is okay for
CLASS="PARAMETER"
CLASS="LITERAL"
>, the mode list
will be
for the format returned by <
A
HREF="sdlgetvideoinfo.html"
CLASS="STRUCTFIELD"
CLASS="PARAMETER"
> parameter is an OR'd combination of <A
HREF="sdlsurface.html"
>surface</A
> flags. The flags are the same as those used <A
HREF="sdlsetvideomode.html"
><TT
CLASS="FUNCTION"
>SDL_SetVideoMode</TT
></A
> and they play a strong role in deciding what modes are valid. For instance, if you pass <TT
CLASS="LITERAL"
>SDL_HWSURFACE</TT
> as a flag only modes that support hardware video surfaces will be returned.</P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN779"
></A
><H2
>Example</H2
><PRE
CLASS="PROGRAMLISTING"
>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!\n");
exit(-1);
}
/* Check if or resolution is restricted */
if(modes == (SDL_Rect **)-1){
printf("All resolutions available.\n");
}
else{
/* Print valid modes */
printf("Available Modes\n");
for(i=0;modes[i];++i)
printf(" %d x %d\n", modes[i]->w, modes[i]->h);
}
.
.</PRE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN782"
></A
><H2
>See Also</H2
><P
><A
HREF="sdlsetvideomode.html"
><TT
CLASS="FUNCTION"
>SDL_SetVideoMode</TT
></A
>,
<A
HREF="sdlgetvideoinfo.html"
><TT
CLASS="FUNCTION"
>SDL_GetVideoInfo</TT
></A
>,
<A
HREF="sdlrect.html"
><SPAN
CLASS="STRUCTNAME"
>SDL_Rect</SPAN
></A
>,
<A
HREF="sdlpixelformat.html"
><SPAN
CLASS="STRUCTNAME"
>SDL_PixelFormat</SPAN
></A
></P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="sdlvideodrivername.html"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="sdlvideomodeok.html"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>SDL_VideoDriverName</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="video.html"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>SDL_VideoModeOK</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>