Flow.Launcher/Wox/PluginLoader/PythonPluginWrapper.cs

36 lines
1.3 KiB
C#
Raw Normal View History

2014-07-07 15:05:06 +00:00
using System.Collections.Generic;
2014-07-06 14:57:11 +00:00
using System.IO;
2014-01-29 10:33:24 +00:00
using Wox.Plugin;
2014-07-06 14:57:11 +00:00
using Wox.RPC;
2014-01-29 10:33:24 +00:00
namespace Wox.PluginLoader
{
2014-07-06 14:57:11 +00:00
public class PythonPluginWrapper : BasePluginWrapper
{
2014-07-06 14:57:11 +00:00
private static string woxDirectory = Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath);
2014-07-06 14:57:11 +00:00
public override List<string> GetAllowedLanguages()
{
2014-07-06 14:57:11 +00:00
return new List<string>()
2013-12-26 16:39:07 +00:00
{
2014-07-06 14:57:11 +00:00
AllowedLanguage.Python
};
}
2014-07-07 15:05:06 +00:00
protected override string ExecuteQuery(Query query)
2014-01-10 16:19:14 +00:00
{
2014-07-07 15:05:06 +00:00
string fileName = Path.Combine(woxDirectory, "PYTHONTHOME\\Scripts\\python.exe");
string parameters = string.Format("{0} \"{1}\"", context.CurrentPluginMetadata.ExecuteFilePath,
JsonRPC.Send("query", query.GetAllRemainingParameter()));
return Execute(fileName, parameters);
}
2014-07-07 15:05:06 +00:00
protected override string ExecuteAction(string rpcRequest)
{
2014-07-07 15:05:06 +00:00
string fileName = Path.Combine(woxDirectory, "PYTHONTHOME\\Scripts\\python.exe");
string parameters = string.Format("{0} \"{1}\"", context.CurrentPluginMetadata.ExecuteFilePath,
rpcRequest);
return Execute(fileName, parameters);
}
}
2014-07-07 15:05:06 +00:00
}