From efa0fa2def503b1ae58a912602b1118547d6be0a Mon Sep 17 00:00:00 2001 From: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> Date: Tue, 21 Apr 2026 00:50:48 +1000 Subject: [PATCH] feat: add letter spacing to builder --- plugin/src/Caelestia/Config/fontbuilder.cpp | 5 +++++ plugin/src/Caelestia/Config/fontbuilder.hpp | 1 + 2 files changed, 6 insertions(+) diff --git a/plugin/src/Caelestia/Config/fontbuilder.cpp b/plugin/src/Caelestia/Config/fontbuilder.cpp index eb3a31d6..39c66cd2 100644 --- a/plugin/src/Caelestia/Config/fontbuilder.cpp +++ b/plugin/src/Caelestia/Config/fontbuilder.cpp @@ -27,6 +27,11 @@ FontBuilder FontBuilder::italic(bool on) { return *this; } +FontBuilder FontBuilder::letterSpacing(qreal spacing, bool absolute) { + m_font.setLetterSpacing(absolute ? QFont::AbsoluteSpacing : QFont::PercentageSpacing, spacing); + return *this; +} + FontBuilder FontBuilder::vaxis(QFont::Tag tag, float value) { m_font.setVariableAxis(tag, value); return *this; diff --git a/plugin/src/Caelestia/Config/fontbuilder.hpp b/plugin/src/Caelestia/Config/fontbuilder.hpp index 38178dfb..ffadf03b 100644 --- a/plugin/src/Caelestia/Config/fontbuilder.hpp +++ b/plugin/src/Caelestia/Config/fontbuilder.hpp @@ -17,6 +17,7 @@ public: [[nodiscard]] Q_INVOKABLE FontBuilder size(int pointSize); [[nodiscard]] Q_INVOKABLE FontBuilder weight(QFont::Weight weight); [[nodiscard]] Q_INVOKABLE FontBuilder italic(bool on = true); + [[nodiscard]] Q_INVOKABLE FontBuilder letterSpacing(qreal spacing, bool absolute = true); [[nodiscard]] Q_INVOKABLE FontBuilder vaxis(QFont::Tag tag, float value); [[nodiscard]] Q_INVOKABLE QFont build() const;