File indexing completed on 2025-03-16 12:49:36
0001 /* 0002 This file is part of a KMetaData File Extractor 0003 SPDX-FileCopyrightText: 2013 Denis Steckelmacher <steckdenis@yahoo.fr> 0004 0005 SPDX-License-Identifier: LGPL-2.1-or-later 0006 */ 0007 0008 0009 #ifndef OFFICE_EXTRACTOR_H 0010 #define OFFICE_EXTRACTOR_H 0011 0012 #include "extractorplugin.h" 0013 0014 namespace KFileMetaData 0015 { 0016 0017 class OfficeExtractor : public ExtractorPlugin 0018 { 0019 Q_OBJECT 0020 Q_PLUGIN_METADATA(IID "org.kde.kf5.kfilemetadata.ExtractorPlugin" 0021 FILE "officeextractor.json") 0022 Q_INTERFACES(KFileMetaData::ExtractorPlugin) 0023 0024 public: 0025 explicit OfficeExtractor(QObject* parent = nullptr); 0026 0027 QStringList mimetypes() const override; 0028 void extract(ExtractionResult* result) override; 0029 0030 private: 0031 void findExe(const QString& mimeType, const QString& name, QString& fullPath); 0032 QString textFromFile(const QString& fileUrl, const QString& command, QStringList& arguments); 0033 0034 private: 0035 QStringList m_available_mime_types; 0036 0037 QString m_catdoc; 0038 QString m_catppt; 0039 QString m_xls2csv; 0040 }; 0041 } 0042 0043 #endif