File indexing completed on 2025-02-16 04:57:41
0001 /* 0002 SPDX-FileCopyrightText: 2017-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "templateparser_private_export.h" 0010 #include "templateparserextracthtmlinforesult.h" 0011 #include <QObject> 0012 0013 namespace TemplateParser 0014 { 0015 class TemplateExtractTextFromMail; 0016 class TemplateExtractHtmlElementFromMail; 0017 0018 class TEMPLATEPARSER_TESTS_EXPORT TemplateParserExtractHtmlInfo : public QObject 0019 { 0020 Q_OBJECT 0021 public: 0022 explicit TemplateParserExtractHtmlInfo(QObject *parent = nullptr); 0023 ~TemplateParserExtractHtmlInfo() override; 0024 0025 void setHtmlForExtractingTextPlain(const QString &html); 0026 void setHtmlForExtractionHeaderAndBody(const QString &html); 0027 void setTemplate(const QString &str); 0028 void start(); 0029 0030 Q_SIGNALS: 0031 void finished(const TemplateParserExtractHtmlInfoResult &result); 0032 0033 private: 0034 void slotExtractHtmlElementFinished(bool success); 0035 void slotExtractToPlainTextFinished(bool success); 0036 0037 TemplateParserExtractHtmlInfoResult mResult; 0038 0039 QString mHtmlForExtractingTextPlain; 0040 QString mHtmlForExtractionHeaderAndBody; 0041 0042 QString mTemplateStr; 0043 0044 TemplateExtractTextFromMail *mTemplateWebEngineView = nullptr; 0045 TemplateExtractHtmlElementFromMail *mExtractHtmlElementWebEngineView = nullptr; 0046 }; 0047 }