From ca1426eabc873f781eb0dd389d45634b7d183250 Mon Sep 17 00:00:00 2001 From: Kae <80987908+Novaenia@users.noreply.github.com> Date: Mon, 22 Apr 2024 06:07:59 +1000 Subject: Lua chat callbacks + better font styling golly gee whiz!! i hope i didn't fuck something up --- source/windowing/StarCanvasWidget.cpp | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) (limited to 'source/windowing/StarCanvasWidget.cpp') diff --git a/source/windowing/StarCanvasWidget.cpp b/source/windowing/StarCanvasWidget.cpp index 16ec994..b4a3cbf 100644 --- a/source/windowing/StarCanvasWidget.cpp +++ b/source/windowing/StarCanvasWidget.cpp @@ -68,7 +68,18 @@ void CanvasWidget::drawTriangles(List> const& triangl } void CanvasWidget::drawText(String s, TextPositioning position, unsigned fontSize, Vec4B const& color, FontMode mode, float lineSpacing, String font, String processingDirectives) { - m_renderOps.append(make_tuple(std::move(s), std::move(position), fontSize, color, mode, lineSpacing, std::move(font), std::move(processingDirectives))); + TextStyle style; + style.fontSize = fontSize; + style.color = color; + style.shadow = fontModeToColor(mode).toRgba(); + style.lineSpacing = lineSpacing; + style.font = font; + style.directives = processingDirectives; + m_renderOps.append(make_tuple(std::move(s), std::move(position), std::move(style))); +} + +void CanvasWidget::drawText(String s, TextPositioning position, TextStyle style) { + m_renderOps.append(make_tuple(std::move(s), std::move(position), std::move(style))); } Vec2I CanvasWidget::mousePosition() const { @@ -145,7 +156,7 @@ void CanvasWidget::renderImpl() { if (auto args = op.ptr()) tupleUnpackFunction(bind(&CanvasWidget::renderTriangles, this, renderingOffset, _1, _2), *args); if (auto args = op.ptr()) - tupleUnpackFunction(bind(&CanvasWidget::renderText, this, renderingOffset, _1, _2, _3, _4, _5, _6, _7, _8), *args); + tupleUnpackFunction(bind(&CanvasWidget::renderText, this, renderingOffset, _1, _2, _3), *args); } } @@ -256,14 +267,9 @@ void CanvasWidget::renderTriangles(Vec2F const& renderingOffset, List