File indexing completed on 2024-05-12 05:28:16

0001 // SPDX-FileCopyrightText: 2017 Christian Mollekopf <mollekopf@kolabsys.com>
0002 // SPDX-License-Identifier: LGPL-2.0-or-later
0003 
0004 #pragma once
0005 
0006 #include <QObject>
0007 #include <QString>
0008 #include <QTextDocument>
0009 
0010 namespace HtmlUtils
0011 {
0012 QString linkify(const QString &in);
0013 
0014 class HtmlUtils : public QObject
0015 {
0016     Q_OBJECT
0017 public:
0018     Q_INVOKABLE QString linkify(const QString &s)
0019     {
0020         return ::HtmlUtils::linkify(s);
0021     };
0022 
0023     Q_INVOKABLE QString toHtml(const QString &s)
0024     {
0025         if (Qt::mightBeRichText(s)) {
0026             return s;
0027         } else {
0028             return ::HtmlUtils::linkify(Qt::convertFromPlainText(s));
0029         }
0030     }
0031 };
0032 }