2013-12-19 23:51:20 +08:00
|
|
|
|
using System;
|
2013-12-23 23:53:38 +08:00
|
|
|
|
using System.Collections;
|
2013-12-20 19:38:10 +08:00
|
|
|
|
using System.Collections.Generic;
|
2014-07-16 18:52:00 +08:00
|
|
|
|
using System.IO;
|
2013-12-19 23:51:20 +08:00
|
|
|
|
|
2014-10-23 18:39:11 +08:00
|
|
|
|
namespace Wox.Plugin
|
|
|
|
|
{
|
2014-07-05 23:10:34 +08:00
|
|
|
|
|
2014-10-23 18:39:11 +08:00
|
|
|
|
public class Result
|
|
|
|
|
{
|
2014-05-10 09:24:16 +08:00
|
|
|
|
|
2014-10-23 18:39:11 +08:00
|
|
|
|
public string Title { get; set; }
|
|
|
|
|
public string SubTitle { get; set; }
|
|
|
|
|
public string IcoPath { get; set; }
|
|
|
|
|
|
|
|
|
|
public string FullIcoPath
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
2014-07-17 18:51:34 +08:00
|
|
|
|
if (string.IsNullOrEmpty(IcoPath)) return string.Empty;
|
2014-10-23 18:39:11 +08:00
|
|
|
|
if (IcoPath.StartsWith("data:"))
|
|
|
|
|
{
|
|
|
|
|
return IcoPath;
|
|
|
|
|
}
|
2014-07-16 18:52:00 +08:00
|
|
|
|
|
|
|
|
|
return Path.Combine(PluginDirectory, IcoPath);
|
2014-10-23 18:39:11 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// return true to hide wox after select result
|
|
|
|
|
/// </summary>
|
|
|
|
|
public Func<ActionContext, bool> Action { get; set; }
|
|
|
|
|
|
|
|
|
|
public int Score { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Auto add scores for MRU items
|
|
|
|
|
/// </summary>
|
|
|
|
|
public bool AutoAjustScore { get; set; }
|
|
|
|
|
|
|
|
|
|
//todo: this should be controlled by system, not visible to users
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Only resulsts that originQuery match with curren query will be displayed in the panel
|
|
|
|
|
/// </summary>
|
|
|
|
|
public Query OriginQuery { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Don't set this property if you are developing a plugin
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string PluginDirectory { get; set; }
|
|
|
|
|
|
|
|
|
|
public new bool Equals(object obj)
|
|
|
|
|
{
|
|
|
|
|
if (obj == null || !(obj is Result)) return false;
|
|
|
|
|
|
|
|
|
|
Result r = (Result)obj;
|
|
|
|
|
return r.Title == Title && r.SubTitle == SubTitle;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override string ToString()
|
|
|
|
|
{
|
|
|
|
|
return Title + SubTitle;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public Result()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public Result(string Title = null, string IcoPath = null, string SubTitle = null)
|
|
|
|
|
{
|
|
|
|
|
this.Title = Title;
|
|
|
|
|
this.IcoPath = IcoPath;
|
|
|
|
|
this.SubTitle = SubTitle;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public List<Result> ContextMenu { get; set; }
|
|
|
|
|
}
|
2013-12-19 23:51:20 +08:00
|
|
|
|
}
|