using System.Collections.Generic; namespace Wox.Plugin.SystemPlugins { public abstract class BaseSystemPlugin : ISystemPlugin { public string PluginDirectory { get; set; } public virtual string Name { get { return "System workflow"; } } public virtual string Description { get { return "System workflow"; } } public virtual string IcoPath { get { return null; } } public virtual bool Enabled { get; set; } protected abstract List QueryInternal(Query query); protected abstract void InitInternal(PluginInitContext context); public List Query(Query query) { if (Enabled && string.IsNullOrEmpty(query.RawQuery)) { //if (string.IsNullOrEmpty(query.RawQuery)) return new List(); return QueryInternal(query); } else { new List(); } } public void Init(PluginInitContext context) { InitInternal(context); } /// /// Used to save settings /// public virtual string PluginId { get { return null; } } } }