You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
310 lines
4.4 KiB
310 lines
4.4 KiB
<HTML |
|
><HEAD |
|
><TITLE |
|
>SDL_ListModes</TITLE |
|
><META |
|
NAME="GENERATOR" |
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ |
|
"><LINK |
|
REL="HOME" |
|
TITLE="SDL Library Documentation" |
|
HREF="index.html"><LINK |
|
REL="UP" |
|
TITLE="Video" |
|
HREF="video.html"><LINK |
|
REL="PREVIOUS" |
|
TITLE="SDL_VideoDriverName" |
|
HREF="sdlvideodrivername.html"><LINK |
|
REL="NEXT" |
|
TITLE="SDL_VideoModeOK" |
|
HREF="sdlvideomodeok.html"></HEAD |
|
><BODY |
|
CLASS="REFENTRY" |
|
BGCOLOR="#FFF8DC" |
|
TEXT="#000000" |
|
LINK="#0000ee" |
|
VLINK="#551a8b" |
|
ALINK="#ff0000" |
|
><DIV |
|
CLASS="NAVHEADER" |
|
><TABLE |
|
SUMMARY="Header navigation table" |
|
WIDTH="100%" |
|
BORDER="0" |
|
CELLPADDING="0" |
|
CELLSPACING="0" |
|
><TR |
|
><TH |
|
COLSPAN="3" |
|
ALIGN="center" |
|
>SDL Library Documentation</TH |
|
></TR |
|
><TR |
|
><TD |
|
WIDTH="10%" |
|
ALIGN="left" |
|
VALIGN="bottom" |
|
><A |
|
HREF="sdlvideodrivername.html" |
|
ACCESSKEY="P" |
|
>Prev</A |
|
></TD |
|
><TD |
|
WIDTH="80%" |
|
ALIGN="center" |
|
VALIGN="bottom" |
|
></TD |
|
><TD |
|
WIDTH="10%" |
|
ALIGN="right" |
|
VALIGN="bottom" |
|
><A |
|
HREF="sdlvideomodeok.html" |
|
ACCESSKEY="N" |
|
>Next</A |
|
></TD |
|
></TR |
|
></TABLE |
|
><HR |
|
ALIGN="LEFT" |
|
WIDTH="100%"></DIV |
|
><H1 |
|
><A |
|
NAME="SDLLISTMODES" |
|
></A |
|
>SDL_ListModes</H1 |
|
><DIV |
|
CLASS="REFNAMEDIV" |
|
><A |
|
NAME="AEN1159" |
|
></A |
|
><H2 |
|
>Name</H2 |
|
>SDL_ListModes -- Returns a pointer to an array of available screen dimensions for |
|
the given format and video flags</DIV |
|
><DIV |
|
CLASS="REFSYNOPSISDIV" |
|
><A |
|
NAME="AEN1162" |
|
></A |
|
><H2 |
|
>Synopsis</H2 |
|
><DIV |
|
CLASS="FUNCSYNOPSIS" |
|
><A |
|
NAME="AEN1163" |
|
></A |
|
><P |
|
></P |
|
><PRE |
|
CLASS="FUNCSYNOPSISINFO" |
|
>#include "SDL.h"</PRE |
|
><P |
|
><CODE |
|
><CODE |
|
CLASS="FUNCDEF" |
|
>SDL_Rect **<B |
|
CLASS="FSFUNC" |
|
>SDL_ListModes</B |
|
></CODE |
|
>(SDL_PixelFormat *format, Uint32 flags);</CODE |
|
></P |
|
><P |
|
></P |
|
></DIV |
|
></DIV |
|
><DIV |
|
CLASS="REFSECT1" |
|
><A |
|
NAME="AEN1169" |
|
></A |
|
><H2 |
|
>Description</H2 |
|
><P |
|
>Return a pointer to an array of available screen dimensions for the given |
|
format and video flags, sorted largest to smallest. Returns |
|
<TT |
|
CLASS="LITERAL" |
|
>NULL</TT |
|
> if there are no dimensions available for a particular |
|
format, or <SPAN |
|
CLASS="RETURNVALUE" |
|
>-1</SPAN |
|
> if any dimension is okay for |
|
the given format.</P |
|
><P |
|
>If <TT |
|
CLASS="PARAMETER" |
|
><I |
|
>format</I |
|
></TT |
|
> is <TT |
|
CLASS="LITERAL" |
|
>NULL</TT |
|
>, the mode list |
|
will be for the format returned by <A |
|
HREF="sdlgetvideoinfo.html" |
|
>SDL_GetVideoInfo()</A |
|
>-><TT |
|
CLASS="STRUCTFIELD" |
|
><I |
|
>vfmt</I |
|
></TT |
|
>. The <TT |
|
CLASS="PARAMETER" |
|
><I |
|
>flag</I |
|
></TT |
|
> 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="AEN1184" |
|
></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 our 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="AEN1187" |
|
></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 |
|
SUMMARY="Footer navigation table" |
|
WIDTH="100%" |
|
BORDER="0" |
|
CELLPADDING="0" |
|
CELLSPACING="0" |
|
><TR |
|
><TD |
|
WIDTH="33%" |
|
ALIGN="left" |
|
VALIGN="top" |
|
><A |
|
HREF="sdlvideodrivername.html" |
|
ACCESSKEY="P" |
|
>Prev</A |
|
></TD |
|
><TD |
|
WIDTH="34%" |
|
ALIGN="center" |
|
VALIGN="top" |
|
><A |
|
HREF="index.html" |
|
ACCESSKEY="H" |
|
>Home</A |
|
></TD |
|
><TD |
|
WIDTH="33%" |
|
ALIGN="right" |
|
VALIGN="top" |
|
><A |
|
HREF="sdlvideomodeok.html" |
|
ACCESSKEY="N" |
|
>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" |
|
ACCESSKEY="U" |
|
>Up</A |
|
></TD |
|
><TD |
|
WIDTH="33%" |
|
ALIGN="right" |
|
VALIGN="top" |
|
>SDL_VideoModeOK</TD |
|
></TR |
|
></TABLE |
|
></DIV |
|
></BODY |
|
></HTML |
|
> |