File indexing completed on 2024-06-23 05:49:22
0001 /* 0002 This file is part of the Kasten Framework, made within the KDE community. 0003 0004 SPDX-FileCopyrightText: 2008 Friedrich W. H. Kossebau <kossebau@kde.org> 0005 0006 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0007 */ 0008 0009 #ifndef KASTEN_TESTDOCUMENTFILELOADTHREAD_HPP 0010 #define KASTEN_TESTDOCUMENTFILELOADTHREAD_HPP 0011 0012 // Qt 0013 #include <QThread> 0014 0015 class QFile; 0016 0017 namespace Kasten { 0018 0019 class TestDocument; 0020 0021 class TestDocumentFileLoadThread : public QThread 0022 { 0023 Q_OBJECT 0024 0025 public: 0026 TestDocumentFileLoadThread(QObject* parent, const QByteArray& header, 0027 QFile* file); 0028 ~TestDocumentFileLoadThread() override; 0029 0030 public: // QThread API 0031 void run() override; 0032 0033 public: 0034 TestDocument* document() const; 0035 0036 Q_SIGNALS: 0037 void documentRead(Kasten::TestDocument* document); 0038 0039 private: 0040 QFile* mFile; 0041 const QByteArray mHeader; 0042 0043 TestDocument* mDocument = nullptr; 0044 }; 0045 0046 inline TestDocumentFileLoadThread::TestDocumentFileLoadThread(QObject* parent, const QByteArray& header, QFile* file) 0047 : QThread(parent) 0048 , mFile(file) 0049 , mHeader(header) 0050 {} 0051 0052 inline TestDocument* TestDocumentFileLoadThread::document() const { return mDocument; } 0053 0054 } 0055 0056 #endif