Xcode/TemplatesForXcode/SDL Application/main.c
author Sam Lantinga <slouken@libsdl.org>
Sat, 11 Aug 2007 18:51:12 +0000
changeset 2220 4d2d0548f5b2
parent 2213 59a667370c57
permissions -rw-r--r--
Don't run indent on the Xcode templates
     1 
     2 /* Simple program:  Create a blank window, wait for keypress, quit.
     3 
     4    Please see the SDL documentation for details on using the SDL API:
     5    /Developer/Documentation/SDL/docs.html
     6 */
     7    
     8 #include <stdio.h>
     9 #include <stdlib.h>
    10 #include <string.h>
    11 #include <math.h>
    12 
    13 #include "SDL.h"
    14 
    15 int main(int argc, char *argv[])
    16 {
    17 	Uint32 initflags = SDL_INIT_VIDEO;  /* See documentation for details */
    18 	SDL_Surface *screen;
    19 	Uint8  video_bpp = 0;
    20 	Uint32 videoflags = SDL_SWSURFACE;
    21 	int    done;
    22         SDL_Event event;
    23 
    24 	/* Initialize the SDL library */
    25 	if ( SDL_Init(initflags) < 0 ) {
    26 		fprintf(stderr, "Couldn't initialize SDL: %s\n",
    27 			SDL_GetError());
    28 		exit(1);
    29 	}
    30 
    31 	/* Set 640x480 video mode */
    32 	screen=SDL_SetVideoMode(640,480, video_bpp, videoflags);
    33         if (screen == NULL) {
    34 		fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n",
    35                         video_bpp, SDL_GetError());
    36 		SDL_Quit();
    37 		exit(2);
    38 	}
    39 
    40 	done = 0;
    41 	while ( !done ) {
    42 
    43 		/* Check for events */
    44 		while ( SDL_PollEvent(&event) ) {
    45 			switch (event.type) {
    46 
    47 				case SDL_MOUSEMOTION:
    48 					break;
    49 				case SDL_MOUSEBUTTONDOWN:
    50 					break;
    51 				case SDL_KEYDOWN:
    52 					/* Any keypress quits the app... */
    53 				case SDL_QUIT:
    54 					done = 1;
    55 					break;
    56 				default:
    57 					break;
    58 			}
    59 		}
    60 	}
    61 	
    62 	/* Clean up the SDL library */
    63 	SDL_Quit();
    64 	return(0);
    65 }