ollie/kde/krunner/ollie_runner.h

38 lines
937 B
C++

#ifndef OLLIE_RUNNER_H
#define OLLIE_RUNNER_H
#include <KRunner/AbstractRunner>
#include <KRunner/RunnerContext>
#include <KRunner/QueryMatch>
#include <QProcess>
#if QT_VERSION_MAJOR >= 6
namespace RunnerNS = KRunner;
#else
namespace RunnerNS = Plasma;
#endif
class OllieRunner : public RunnerNS::AbstractRunner
{
Q_OBJECT
public:
#if QT_VERSION_MAJOR >= 6
OllieRunner(QObject *parent, const KPluginMetaData &data);
#else
OllieRunner(QObject *parent, const KPluginMetaData &data, const QVariantList &args);
#endif
void match(RunnerNS::RunnerContext &context) override;
void run(const RunnerNS::RunnerContext &context, const RunnerNS::QueryMatch &match) override;
private:
QByteArray run9p(const QStringList &args);
void write9p(const QString &path, const QByteArray &data);
QString serverAddr();
QStringList listSessions();
void killSession(const QString &id);
};
#endif // OLLIE_RUNNER_H