From 30f41c02aec763d32e62351452da9ef582bc3472 Mon Sep 17 00:00:00 2001 From: 3gg <3gg@shellblade.net> Date: Fri, 6 Mar 2026 13:30:59 -0800 Subject: Move contrib libraries to contrib repo --- .../src/video/offscreen/SDL_offscreenframebuffer.c | 79 ---------------------- 1 file changed, 79 deletions(-) delete mode 100644 contrib/SDL-3.2.8/src/video/offscreen/SDL_offscreenframebuffer.c (limited to 'contrib/SDL-3.2.8/src/video/offscreen/SDL_offscreenframebuffer.c') diff --git a/contrib/SDL-3.2.8/src/video/offscreen/SDL_offscreenframebuffer.c b/contrib/SDL-3.2.8/src/video/offscreen/SDL_offscreenframebuffer.c deleted file mode 100644 index e7f6103..0000000 --- a/contrib/SDL-3.2.8/src/video/offscreen/SDL_offscreenframebuffer.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2025 Sam Lantinga - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ -#include "SDL_internal.h" - -#ifdef SDL_VIDEO_DRIVER_OFFSCREEN - -#include "../SDL_sysvideo.h" -#include "../../SDL_properties_c.h" -#include "SDL_offscreenframebuffer_c.h" - -#define OFFSCREEN_SURFACE "SDL.internal.window.surface" - - -bool SDL_OFFSCREEN_CreateWindowFramebuffer(SDL_VideoDevice *_this, SDL_Window *window, SDL_PixelFormat *format, void **pixels, int *pitch) -{ - SDL_Surface *surface; - const SDL_PixelFormat surface_format = SDL_PIXELFORMAT_XRGB8888; - int w, h; - - // Create a new framebuffer - SDL_GetWindowSizeInPixels(window, &w, &h); - surface = SDL_CreateSurface(w, h, surface_format); - if (!surface) { - return false; - } - - // Save the info and return! - SDL_SetSurfaceProperty(SDL_GetWindowProperties(window), OFFSCREEN_SURFACE, surface); - *format = surface_format; - *pixels = surface->pixels; - *pitch = surface->pitch; - - return true; -} - -bool SDL_OFFSCREEN_UpdateWindowFramebuffer(SDL_VideoDevice *_this, SDL_Window *window, const SDL_Rect *rects, int numrects) -{ - static int frame_number; - SDL_Surface *surface; - - surface = (SDL_Surface *)SDL_GetPointerProperty(SDL_GetWindowProperties(window), OFFSCREEN_SURFACE, NULL); - if (!surface) { - return SDL_SetError("Couldn't find offscreen surface for window"); - } - - // Send the data to the display - if (SDL_GetHintBoolean(SDL_HINT_VIDEO_OFFSCREEN_SAVE_FRAMES, false)) { - char file[128]; - (void)SDL_snprintf(file, sizeof(file), "SDL_window%" SDL_PRIu32 "-%8.8d.bmp", - SDL_GetWindowID(window), ++frame_number); - SDL_SaveBMP(surface, file); - } - return true; -} - -void SDL_OFFSCREEN_DestroyWindowFramebuffer(SDL_VideoDevice *_this, SDL_Window *window) -{ - SDL_ClearProperty(SDL_GetWindowProperties(window), OFFSCREEN_SURFACE); -} - -#endif // SDL_VIDEO_DRIVER_OFFSCREEN -- cgit v1.2.3