File indexing completed on 2024-05-12 04:34:02
0001 /* 0002 SPDX-FileCopyrightText: 2008 Jakub Stachowski <qbast@go2.pl> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 #ifndef MOBI_DOCUMENT_H 0007 #define MOBI_DOCUMENT_H 0008 0009 #include <QTextDocument> 0010 #include <QUrl> 0011 #include <QVariant> 0012 0013 class QFile; 0014 namespace Mobipocket 0015 { 0016 class Document; 0017 class QFileStream; 0018 } 0019 0020 namespace Mobi 0021 { 0022 class MobiDocument : public QTextDocument 0023 { 0024 Q_OBJECT 0025 0026 public: 0027 explicit MobiDocument(const QString &fileName); 0028 ~MobiDocument() override; 0029 0030 Mobipocket::Document *mobi() const 0031 { 0032 return doc; 0033 } 0034 0035 protected: 0036 QVariant loadResource(int type, const QUrl &name) override; 0037 0038 private: 0039 QString fixMobiMarkup(const QString &data); 0040 Mobipocket::Document *doc; 0041 Mobipocket::QFileStream *file; 0042 }; 0043 0044 } 0045 #endif