From 7f31271a8dd245c680f9a047fe81980d1564faf2 Mon Sep 17 00:00:00 2001 From: Mathias Wagner Date: Mon, 25 Nov 2024 12:03:39 +0100 Subject: [PATCH] Create Helper files --- Helper.cpp | 36 ++++++++++++++++++++++++++++++++++++ Helper.h | 10 ++++++++++ 2 files changed, 46 insertions(+) create mode 100644 Helper.cpp create mode 100644 Helper.h diff --git a/Helper.cpp b/Helper.cpp new file mode 100644 index 0000000..3dddb9d --- /dev/null +++ b/Helper.cpp @@ -0,0 +1,36 @@ +#include "Helper.h" +void drawTexture(SDL_Renderer *renderer, SDL_Texture *texture, int x, int y, int w, int h) { + SDL_Rect src; + src.x = 0; + src.y = 0; + SDL_QueryTexture(texture, nullptr, nullptr, &src.w, &src.h); + + SDL_Rect dist; + dist.x = x; + dist.y = y; + dist.w = w; + dist.h = h; + + SDL_RenderCopy(renderer, texture, &src, &dist); +} + +void drawText(SDL_Renderer *renderer, TTF_Font *font, const std::string text, int x, int y, int w, int h) { + SDL_Surface *surface = TTF_RenderText_Solid(font, text.c_str(), {255, 255, 255}); + SDL_Texture *texture = SDL_CreateTextureFromSurface(renderer, surface); + + SDL_Rect src; + src.x = 0; + src.y = 0; + SDL_QueryTexture(texture, nullptr, nullptr, &src.w, &src.h); + + SDL_Rect dist; + dist.x = x; + dist.y = y; + dist.w = w; + dist.h = h; + + SDL_RenderCopy(renderer, texture, &src, &dist); + + SDL_FreeSurface(surface); + SDL_DestroyTexture(texture); +} \ No newline at end of file diff --git a/Helper.h b/Helper.h new file mode 100644 index 0000000..5ac0e0a --- /dev/null +++ b/Helper.h @@ -0,0 +1,10 @@ +#ifndef CPP_LEARNING_HELPER_H +#define CPP_LEARNING_HELPER_H +#include +#include +#include + +void drawTexture(SDL_Renderer *renderer, SDL_Texture *texture, int x, int y, int w, int h); +void drawText(SDL_Renderer *renderer, TTF_Font *font, const std::string text, int x, int y, int w, int h); + +#endif \ No newline at end of file