2016-01-06 14:45:08 +08:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
2015-11-03 03:27:46 +08:00
|
|
|
|
|
|
|
|
|
namespace Wox.Plugin
|
|
|
|
|
{
|
|
|
|
|
public interface IFeatures { }
|
|
|
|
|
|
|
|
|
|
public interface IContextMenu : IFeatures
|
|
|
|
|
{
|
|
|
|
|
List<Result> LoadContextMenus(Result selectedResult);
|
|
|
|
|
}
|
|
|
|
|
|
2015-11-05 06:49:40 +08:00
|
|
|
|
[Obsolete("If a plugin has a action keyword, then it is exclusive. This interface will be remove in v1.3.0")]
|
2015-11-03 03:27:46 +08:00
|
|
|
|
public interface IExclusiveQuery : IFeatures
|
|
|
|
|
{
|
2015-11-05 06:49:40 +08:00
|
|
|
|
[Obsolete("If a plugin has a action keyword, then it is exclusive. This method will be remove in v1.3.0")]
|
2015-11-03 03:27:46 +08:00
|
|
|
|
bool IsExclusiveQuery(Query query);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Represent plugin query will be executed in UI thread directly. Don't do long-running operation in Query method if you implement this interface
|
|
|
|
|
/// <remarks>This will improve the performance of instant search like websearch or cmd plugin</remarks>
|
|
|
|
|
/// </summary>
|
|
|
|
|
public interface IInstantQuery : IFeatures
|
|
|
|
|
{
|
2015-11-03 08:34:27 +08:00
|
|
|
|
[Obsolete("Empty interface is enough. it will be removed in v1.3.0 and possibly replaced by attribute")]
|
2015-11-03 03:27:46 +08:00
|
|
|
|
bool IsInstantQuery(string query);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Represent plugins that support internationalization
|
|
|
|
|
/// </summary>
|
|
|
|
|
public interface IPluginI18n : IFeatures
|
|
|
|
|
{
|
|
|
|
|
string GetTranslatedPluginTitle();
|
|
|
|
|
|
|
|
|
|
string GetTranslatedPluginDescription();
|
|
|
|
|
}
|
2015-11-09 11:20:02 +08:00
|
|
|
|
|
|
|
|
|
public interface IMultipleActionKeywords
|
|
|
|
|
{
|
|
|
|
|
event ActionKeywordsChangedEventHandler ActionKeywordsChanged;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class ActionKeywordsChangedEventArgs : EventArgs
|
|
|
|
|
{
|
|
|
|
|
public string OldActionKeyword { get; set; }
|
|
|
|
|
public string NewActionKeyword { get; set; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public delegate void ActionKeywordsChangedEventHandler(IMultipleActionKeywords sender, ActionKeywordsChangedEventArgs e);
|
2015-11-03 03:27:46 +08:00
|
|
|
|
}
|