|
@@ -23,12 +23,42 @@
|
|
|
#include "platform/platform.h"
|
|
|
#include "console/console.h"
|
|
|
|
|
|
+#include "SDL.h"
|
|
|
+#include "windowManager/sdl/sdlWindow.h"
|
|
|
+
|
|
|
+static SDL_Window* gSplashWindow = nullptr;
|
|
|
+static SDL_Surface* gSplashImage = nullptr;
|
|
|
+static SDL_Texture* gSplashTexture = nullptr;
|
|
|
+static SDL_Renderer* gSplashRenderer = nullptr;
|
|
|
+
|
|
|
bool Platform::displaySplashWindow( String path )
|
|
|
{
|
|
|
if(path.isEmpty())
|
|
|
return false;
|
|
|
|
|
|
+ gSplashImage = SDL_LoadBMP(path);
|
|
|
+
|
|
|
+ //now the pop-up window
|
|
|
+ gSplashWindow = SDL_CreateWindow("", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
|
|
|
+ gSplashImage->w, gSplashImage->h, SDL_WINDOW_BORDERLESS | SDL_WINDOW_SHOWN);
|
|
|
+
|
|
|
+ gSplashRenderer = SDL_CreateRenderer(gSplashWindow, -1, SDL_RENDERER_ACCELERATED);
|
|
|
+
|
|
|
+ gSplashTexture = SDL_CreateTextureFromSurface(gSplashRenderer, gSplashImage);
|
|
|
+
|
|
|
+ SDL_RenderCopy(gSplashRenderer, gSplashTexture, NULL, NULL);
|
|
|
+
|
|
|
+ SDL_RenderPresent(gSplashRenderer);
|
|
|
+
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
+bool Platform::closeSplashWindow()
|
|
|
+{
|
|
|
+ SDL_DestroyTexture(gSplashTexture);
|
|
|
+ SDL_FreeSurface(gSplashImage);
|
|
|
+ SDL_DestroyRenderer(gSplashRenderer);
|
|
|
+ SDL_DestroyWindow(gSplashWindow);
|
|
|
|
|
|
+ return true;
|
|
|
+}
|