From 0ad3b6cdcd156daaaa0e3c717e7761f89dbe3b02 Mon Sep 17 00:00:00 2001 From: Kayne Ruse Date: Fri, 14 Aug 2015 21:44:19 +1000 Subject: [PATCH] Added a 'blank' parameter to Image::Create() --- src/common/image.cpp | 5 +++-- src/common/image.hpp | 2 +- src/example_scene.cpp | 5 +++++ src/example_scene.hpp | 5 ++++- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/common/image.cpp b/src/common/image.cpp index f18e521..02f9bf2 100644 --- a/src/common/image.cpp +++ b/src/common/image.cpp @@ -95,7 +95,7 @@ SDL_Texture* Image::Load(SDL_Renderer* renderer, std::string fname) { return texture; } -SDL_Texture* Image::Create(SDL_Renderer* renderer, Uint16 w, Uint16 h) { +SDL_Texture* Image::Create(SDL_Renderer* renderer, Uint16 w, Uint16 h, SDL_Color blank) { Free(); //make the texture @@ -124,8 +124,9 @@ SDL_Texture* Image::Create(SDL_Renderer* renderer, Uint16 w, Uint16 h) { //blank (black) texture SDL_SetRenderTarget(renderer, texture); - SDL_SetRenderDrawColor(renderer, 0, 0, 0, 0); + SDL_SetRenderDrawColor(renderer, blank.r, blank.g, blank.b, blank.a); SDL_RenderFillRect(renderer, nullptr); + SDL_SetRenderDrawColor(renderer, 0, 0, 0, 0); SDL_SetRenderTarget(renderer, nullptr); return texture; diff --git a/src/common/image.hpp b/src/common/image.hpp index 09e7c33..f45e0b0 100644 --- a/src/common/image.hpp +++ b/src/common/image.hpp @@ -39,7 +39,7 @@ public: Image& operator=(Image&&); SDL_Texture* Load(SDL_Renderer* renderer, std::string fname); - SDL_Texture* Create(SDL_Renderer* renderer, Uint16 w, Uint16 h); + SDL_Texture* Create(SDL_Renderer* renderer, Uint16 w, Uint16 h, SDL_Color blank = {0, 0, 0, 255}); SDL_Texture* CopyTexture(SDL_Renderer* renderer, SDL_Texture* ptr); SDL_Texture* SetTexture(SDL_Texture*); SDL_Texture* GetTexture() const; diff --git a/src/example_scene.cpp b/src/example_scene.cpp index a6ee517..4c0aa65 100644 --- a/src/example_scene.cpp +++ b/src/example_scene.cpp @@ -67,6 +67,9 @@ ExampleScene::ExampleScene(lua_State* L) { textBox.PushLine(GetRenderer(), font, "second line", {255, 255, 255, 255}); textBox.PushLine(GetRenderer(), font, "third line", {255, 255, 255, 255}); textBox.PushLine(GetRenderer(), font, "FOURTH LINE!!", {255, 0, 0, 0}); + + // + blankImage.Create(GetRenderer(), 256, 256); } ExampleScene::~ExampleScene() { @@ -98,6 +101,8 @@ void ExampleScene::RenderFrame(SDL_Renderer* renderer) { //DEBUG: testing UI button.DrawTo(renderer); textBox.DrawTo(renderer, 0, 550, -12); + + blankImage.DrawTo(renderer, 0, 0); } //------------------------- diff --git a/src/example_scene.hpp b/src/example_scene.hpp index 5208cc8..6361d3d 100644 --- a/src/example_scene.hpp +++ b/src/example_scene.hpp @@ -67,5 +67,8 @@ private: TTF_Font* font = nullptr; Image buttonBG; Button button; - TextBox<> textBox; + TextBox textBox; + + //blank image + Image blankImage; };