File indexing completed on 2024-05-12 04:02:19

0001 /*
0002     SPDX-FileCopyrightText: 2016 Volker Krause <vkrause@kde.org>
0003 
0004     SPDX-License-Identifier: MIT
0005 */
0006 
0007 #ifndef KSYNTAXHIGHLIGHTING_HTMLHIGHLIGHTER_H
0008 #define KSYNTAXHIGHLIGHTING_HTMLHIGHLIGHTER_H
0009 
0010 #include "abstracthighlighter.h"
0011 #include "ksyntaxhighlighting_export.h"
0012 
0013 #include <QString>
0014 
0015 QT_BEGIN_NAMESPACE
0016 class QIODevice;
0017 QT_END_NAMESPACE
0018 
0019 namespace KSyntaxHighlighting
0020 {
0021 class HtmlHighlighterPrivate;
0022 
0023 class KSYNTAXHIGHLIGHTING_EXPORT HtmlHighlighter : public AbstractHighlighter
0024 {
0025 public:
0026     HtmlHighlighter();
0027     ~HtmlHighlighter() override;
0028 
0029     void highlightFile(const QString &fileName, const QString &title = QString());
0030     void highlightData(QIODevice *device, const QString &title = QString());
0031 
0032     void setOutputFile(const QString &fileName);
0033     void setOutputFile(FILE *fileHandle);
0034 
0035 protected:
0036     void applyFormat(int offset, int length, const Format &format) override;
0037 
0038 private:
0039     Q_DECLARE_PRIVATE(HtmlHighlighter)
0040 };
0041 }
0042 
0043 #endif // KSYNTAXHIGHLIGHTING_HTMLHIGHLIGHTER_H