comparison src/video/nds/SDL_ndsrender.c @ 5251:58265e606e4e

Window coordinates are in the global space and windows are not tied to a particular display. Also added Ctrl-Enter keybinding to the test code to toggle fullscreen mode for testing.
author Sam Lantinga <slouken@libsdl.org>
date Thu, 10 Feb 2011 14:44:25 -0800
parents be02be2ea897
children b530ef003506
comparison
equal deleted inserted replaced
5250:329d435f97f4 5251:58265e606e4e
105 105
106 106
107 SDL_Renderer * 107 SDL_Renderer *
108 NDS_CreateRenderer(SDL_Window * window, Uint32 flags) 108 NDS_CreateRenderer(SDL_Window * window, Uint32 flags)
109 { 109 {
110 SDL_VideoDisplay *display = window->display; 110 SDL_VideoDisplay *display = SDL_GetDisplayForWindow(window);
111 SDL_DisplayMode *displayMode = &display->current_mode; 111 SDL_DisplayMode *displayMode = &display->current_mode;
112 SDL_Renderer *renderer; 112 SDL_Renderer *renderer;
113 NDS_RenderData *data; 113 NDS_RenderData *data;
114 int i, n; 114 int i, n;
115 int bpp; 115 int bpp;
460 const SDL_Rect * srcrect, const SDL_Rect * dstrect) 460 const SDL_Rect * srcrect, const SDL_Rect * dstrect)
461 { 461 {
462 NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata; 462 NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
463 NDS_TextureData *txdat = (NDS_TextureData *) texture->driverdata; 463 NDS_TextureData *txdat = (NDS_TextureData *) texture->driverdata;
464 SDL_Window *window = renderer->window; 464 SDL_Window *window = renderer->window;
465 SDL_VideoDisplay *display = window->display; 465 SDL_VideoDisplay *display = SDL_GetDisplayForWindow(window);
466 int Bpp = SDL_BYTESPERPIXEL(texture->format); 466 int Bpp = SDL_BYTESPERPIXEL(texture->format);
467 467
468 if (txdat->type == NDSTX_BG) { 468 if (txdat->type == NDSTX_BG) {
469 txdat->scroll.x = dstrect->x; 469 txdat->scroll.x = dstrect->x;
470 txdat->scroll.y = dstrect->y; 470 txdat->scroll.y = dstrect->y;
485 static void 485 static void
486 NDS_RenderPresent(SDL_Renderer * renderer) 486 NDS_RenderPresent(SDL_Renderer * renderer)
487 { 487 {
488 NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata; 488 NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
489 SDL_Window *window = renderer->window; 489 SDL_Window *window = renderer->window;
490 SDL_VideoDisplay *display = window->display; 490 SDL_VideoDisplay *display = SDL_GetDisplayForWindow(window);
491 491
492 /* update sprites */ 492 /* update sprites */
493 // NDS_OAM_Update(&(data->oam_copy), data->sub); 493 // NDS_OAM_Update(&(data->oam_copy), data->sub);
494 /* vsync for NDS */ 494 /* vsync for NDS */
495 if (renderer->info.flags & SDL_RENDERER_PRESENTVSYNC) { 495 if (renderer->info.flags & SDL_RENDERER_PRESENTVSYNC) {