File indexing completed on 2025-03-16 12:49:36
0001 /* 0002 SPDX-FileCopyrightText: 2013 Vishesh Handa <me@vhanda.in> 0003 0004 SPDX-License-Identifier: LGPL-2.1-or-later 0005 */ 0006 0007 0008 #ifndef OFFICE_2007_EXTRACTOR_H 0009 #define OFFICE_2007_EXTRACTOR_H 0010 0011 #include "extractorplugin.h" 0012 0013 #include <QIODevice> 0014 0015 class KArchiveDirectory; 0016 0017 namespace KFileMetaData 0018 { 0019 0020 class Office2007Extractor : public ExtractorPlugin 0021 { 0022 Q_OBJECT 0023 Q_PLUGIN_METADATA(IID "org.kde.kf5.kfilemetadata.ExtractorPlugin" 0024 FILE "office2007extractor.json") 0025 Q_INTERFACES(KFileMetaData::ExtractorPlugin) 0026 0027 public: 0028 explicit Office2007Extractor(QObject* parent = nullptr); 0029 0030 QStringList mimetypes() const override; 0031 void extract(ExtractionResult* result) override; 0032 0033 private: 0034 void extractTextWithTag(QIODevice* device, const QString& tag, ExtractionResult* result); 0035 void extractAllText(QIODevice* device, ExtractionResult* result); 0036 void extractTextFromFiles(const KArchiveDirectory* archiveDir, ExtractionResult* result); 0037 }; 0038 } 0039 0040 #endif // OFFICE_2007_EXTRACTOR_H