File indexing completed on 2024-04-28 04:39:03
0001 /* 0002 SPDX-FileCopyrightText: 2010 Friedrich W. H. Kossebau <kossebau@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 #ifndef OKTETADOCUMENTFACTORY_H 0008 #define OKTETADOCUMENTFACTORY_H 0009 0010 // plugin 0011 #include "oktetadocument.h" 0012 // KDev 0013 #include <interfaces/icore.h> 0014 #include <interfaces/idocumentcontroller.h> 0015 0016 namespace KDevelop 0017 { 0018 class OktetaPlugin; 0019 0020 0021 class OktetaDocumentFactory : public IDocumentFactory 0022 { 0023 public: 0024 explicit OktetaDocumentFactory( OktetaPlugin* plugin ); 0025 0026 public: // IDocumentFactory API 0027 IDocument* create( const QUrl &url, ICore* core ) override; 0028 0029 protected: 0030 OktetaPlugin* mPlugin; 0031 }; 0032 0033 0034 inline OktetaDocumentFactory::OktetaDocumentFactory( OktetaPlugin* plugin ) 0035 : mPlugin( plugin ) 0036 { 0037 } 0038 0039 inline IDocument* OktetaDocumentFactory::create( const QUrl &url, ICore* core ) 0040 { 0041 auto* document = new OktetaDocument( url, core ); 0042 document->setPlugin( mPlugin ); 0043 // m_plugin->activateDocument(d); 0044 return document; 0045 } 0046 0047 } 0048 0049 #endif