diff --git a/ui/text/text_utilities.cpp b/ui/text/text_utilities.cpp index 7e16fa1..59dfef0 100644 --- a/ui/text/text_utilities.cpp +++ b/ui/text/text_utilities.cpp @@ -43,7 +43,15 @@ TextWithEntities Link(const QString &text, const QString &url) { } TextWithEntities Link(const QString &text, int index) { - return Link(text, QString("internal:index") + QChar(index)); + return Link(text, u"internal:index"_q + QChar(index)); +} + +TextWithEntities Link(TextWithEntities text, const QString &url) { + return Wrapped(std::move(text), EntityType::CustomUrl, url); +} + +TextWithEntities Link(TextWithEntities text, int index) { + return Link(std::move(text), u"internal:index"_q + QChar(index)); } TextWithEntities PlainLink(const QString &text) { diff --git a/ui/text/text_utilities.h b/ui/text/text_utilities.h index e41b9a8..61721ef 100644 --- a/ui/text/text_utilities.h +++ b/ui/text/text_utilities.h @@ -29,8 +29,12 @@ inline constexpr auto Upper = details::ToUpperType{}; [[nodiscard]] TextWithEntities Italic(const QString &text); [[nodiscard]] TextWithEntities Link( const QString &text, - const QString &url = "internal:action"); + const QString &url = u"internal:action"_q); [[nodiscard]] TextWithEntities Link(const QString &text, int index); +[[nodiscard]] TextWithEntities Link( + TextWithEntities text, + const QString &url = u"internal:action"_q); +[[nodiscard]] TextWithEntities Link(TextWithEntities text, int index); [[nodiscard]] TextWithEntities PlainLink(const QString &text); [[nodiscard]] TextWithEntities Wrapped( TextWithEntities text,