File indexing completed on 2024-05-05 04:39:50
0001 /* 0002 SPDX-FileCopyrightText: 2017 Aleix Pol Gonzalez <aleixpol@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-only 0005 */ 0006 0007 #ifndef FLATPAKPLUGIN_H 0008 #define FLATPAKPLUGIN_H 0009 0010 #include <interfaces/iruntime.h> 0011 #include <interfaces/iplugin.h> 0012 #include <util/path.h> 0013 // Qt 0014 #include <QProcess> 0015 #include <QHash> 0016 0017 class FlatpakPlugin : public KDevelop::IPlugin 0018 { 0019 Q_OBJECT 0020 public: 0021 FlatpakPlugin(QObject *parent, const QVariantList & args); 0022 ~FlatpakPlugin() override; 0023 0024 KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context, QWidget* parent) override; 0025 0026 private: 0027 void runtimeChanged(KDevelop::IRuntime* newRuntime); 0028 void rebuildCurrent(); 0029 void exportCurrent(); 0030 void setupArches(); 0031 void executeOnRemoteDevice(); 0032 void createRuntime(const KDevelop::Path &file, const QString &arch); 0033 0034 QHash<KDevelop::Path, KDevelop::IRuntime *> m_runtimes; 0035 }; 0036 0037 #endif