mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2024-12-22 17:49:43 +01:00
Change font::print_wrap text argument from std::string to const char*
We no longer need to pass a std::string object to the print and len functions - in fact, we often only have a C string that we want to print or get the visual width of (that C string most often comes from loc::gettext), and it's a bit wasteful to wrap it in a new std::string object on every print/len call. This does mean adding a few more .c_str()s, but there's not many places where a std::string is being passed to these functions, and we already use .c_str() sometimes. -> Commit 1/3: font::print_wrap Commit 2/3: font::print Commit 3/3: font::len
This commit is contained in:
parent
58d21e956b
commit
264b6474be
4 changed files with 8 additions and 9 deletions
|
@ -1181,7 +1181,7 @@ void editorrender(void)
|
|||
graphics.fill_rect(0,238-textheight,320,240, graphics.getRGB(32,32,32));
|
||||
graphics.fill_rect(0,239-textheight,320,240, graphics.getRGB(0,0,0));
|
||||
|
||||
font::print_wrap(0, 4, 240-textheight, message, 255,255,255, 8, 312);
|
||||
font::print_wrap(0, 4, 240-textheight, message.c_str(), 255,255,255, 8, 312);
|
||||
}
|
||||
else if(ed.scripteditmod)
|
||||
{
|
||||
|
@ -1283,7 +1283,7 @@ void editorrender(void)
|
|||
|
||||
graphics.fill_rect(0, 238-textheight, 320, 240, graphics.getRGB(32, 32, 32));
|
||||
graphics.fill_rect(0, 239-textheight, 320, 240, graphics.getRGB(0, 0, 0));
|
||||
font::print_wrap(0, 4, 240-textheight, wrapped, 255, 255, 255, 8, 312);
|
||||
font::print_wrap(0, 4, 240-textheight, wrapped.c_str(), 255, 255, 255, 8, 312);
|
||||
std::string input = key.keybuffer;
|
||||
if (ed.entframe < 2)
|
||||
{
|
||||
|
@ -1640,7 +1640,7 @@ void editorrender(void)
|
|||
float alpha = graphics.lerp(ed.oldnotedelay, ed.notedelay);
|
||||
graphics.fill_rect(0, banner_y, 320, 10+textheight, graphics.getRGB(92,92,92));
|
||||
graphics.fill_rect(0, banner_y+1, 320, 8+textheight, graphics.getRGB(0,0,0));
|
||||
font::print_wrap(PR_CEN, -1,banner_y+5, wrapped, 196-((45.0f-alpha)*4), 196-((45.0f-alpha)*4), 196-((45.0f-alpha)*4));
|
||||
font::print_wrap(PR_CEN, -1,banner_y+5, wrapped.c_str(), 196-((45.0f-alpha)*4), 196-((45.0f-alpha)*4), 196-((45.0f-alpha)*4));
|
||||
}
|
||||
|
||||
graphics.drawfade();
|
||||
|
|
|
@ -1261,7 +1261,7 @@ int print_wrap(
|
|||
uint32_t flags,
|
||||
const int x,
|
||||
int y,
|
||||
const std::string& text,
|
||||
const char* text,
|
||||
const uint8_t r,
|
||||
const uint8_t g,
|
||||
const uint8_t b,
|
||||
|
@ -1292,7 +1292,6 @@ int print_wrap(
|
|||
flags &= ~PR_BOR;
|
||||
}
|
||||
|
||||
const char* str = text.c_str();
|
||||
// This could fit 64 non-BMP characters onscreen, should be plenty
|
||||
char buffer[256];
|
||||
size_t start = 0;
|
||||
|
@ -1301,7 +1300,7 @@ int print_wrap(
|
|||
{
|
||||
// Correct for the height of the resulting print.
|
||||
size_t len = 0;
|
||||
while (next_wrap(pf.font_sel, &start, &len, &str[start], maxwidth))
|
||||
while (next_wrap(pf.font_sel, &start, &len, &text[start], maxwidth))
|
||||
{
|
||||
y += linespacing;
|
||||
}
|
||||
|
@ -1309,7 +1308,7 @@ int print_wrap(
|
|||
start = 0;
|
||||
}
|
||||
|
||||
while (next_wrap_buf(pf.font_sel, buffer, sizeof(buffer), &start, str, maxwidth))
|
||||
while (next_wrap_buf(pf.font_sel, buffer, sizeof(buffer), &start, text, maxwidth))
|
||||
{
|
||||
print(flags, x, y, buffer, r, g, b);
|
||||
|
||||
|
|
|
@ -96,7 +96,7 @@ int print_wrap(
|
|||
uint32_t flags,
|
||||
int x,
|
||||
int y,
|
||||
const std::string& text,
|
||||
const char* text,
|
||||
uint8_t r, uint8_t g, uint8_t b,
|
||||
int linespacing = -1,
|
||||
int maxwidth = -1
|
||||
|
|
|
@ -614,7 +614,7 @@ static void menurender(void)
|
|||
}
|
||||
else if ((unsigned)game.currentmenuoption < loc::languagelist.size())
|
||||
{
|
||||
font::print_wrap(PR_CEN, -1, 8, loc::languagelist[game.currentmenuoption].credit, tr/2, tg/2, tb/2);
|
||||
font::print_wrap(PR_CEN, -1, 8, loc::languagelist[game.currentmenuoption].credit.c_str(), tr/2, tg/2, tb/2);
|
||||
font::print(PR_CEN, -1, 230, loc::languagelist[game.currentmenuoption].action_hint, tr/2, tg/2, tb/2);
|
||||
}
|
||||
break;
|
||||
|
|
Loading…
Reference in a new issue