51 SdlWidget(SDL_Renderer* renderer, SDL_Rect rect,
bool input);
52#if defined(WITH_SDL_IMAGE_DIALOGS)
53 SdlWidget(SDL_Renderer* renderer, SDL_Rect rect, SDL_RWops* ops);
58 bool fill(SDL_Renderer* renderer, SDL_Color color);
59 bool fill(SDL_Renderer* renderer,
const std::vector<SDL_Color>& colors);
60 bool update_text(SDL_Renderer* renderer,
const std::string& text, SDL_Color fgcolor);
61 bool update_text(SDL_Renderer* renderer,
const std::string& text, SDL_Color fgcolor,
64 [[nodiscard]]
bool wrap()
const;
65 bool set_wrap(
bool wrap =
true,
size_t width = 0);
66 [[nodiscard]]
const SDL_Rect& rect()
const;
68#define widget_log_error(res, what) SdlWidget::error_ex(res, what, __FILE__, __LINE__, __func__)
69 static bool error_ex(Sint32 res,
const char* what,
const char* file,
size_t line,
77 SDL_Texture* render_text(SDL_Renderer* renderer,
const std::string& text, SDL_Color fgcolor,
78 SDL_Rect& src, SDL_Rect& dst);
79 SDL_Texture* render_text_wrapped(SDL_Renderer* renderer,
const std::string& text,
80 SDL_Color fgcolor, SDL_Rect& src, SDL_Rect& dst);
82 TTF_Font* _font =
nullptr;
83 SDL_Texture* _image =
nullptr;
87 size_t _text_width = 0;