Make wordwrapping functions take font arguments

They need to know how wide the text is going to be in a particular
font, so font::string_wordwrap and font::string_wordwrap_balanced now
take a flags argument like all the printing and dimensions-getting
functions. next_wrap and next_wrap_s take a Font* now, they're internal
to Font.cpp so they can take a Font and avoid double flag-parsing. But
if any non-Font.cpp code needs next_wrap/next_wrap_s in the future, I'd
just make a public wrapper that takes a uint32_t flags and passes the
Font* to the internal functions.
This commit is contained in:
Dav999-v
2023-01-21 02:31:44 +01:00
committed by Misa Elizabeth Kai
parent 0eaceed0a2
commit 25feb9dbb5
7 changed files with 119 additions and 109 deletions

View File

@@ -318,7 +318,7 @@ static bool max_check_string(const char* str, const char* max)
else
{
short lines;
font::string_wordwrap(str, max_w_px, &lines); // TODO: needs to be passed the font!
font::string_wordwrap(print_flags, str, max_w_px, &lines);
does_overflow = lines*SDL_max(10, font_h) > (short) max_h_px;
}