PowerToys/Wox.Plugin/Result.cs

73 lines
1.7 KiB
C#
Raw Normal View History

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;
using System.IO;
2013-12-19 23:51:20 +08:00
namespace Wox.Plugin {
2014-07-05 23:10:34 +08:00
public class Result {
public string Title { get; set; }
public string SubTitle { get; set; }
public string IcoPath { get; set; }
public string FullIcoPath
{
get
{
if (string.IsNullOrEmpty(IcoPath)) return string.Empty;
if (IcoPath.StartsWith("data:"))
{
return IcoPath;
}
return Path.Combine(PluginDirectory, IcoPath);
}
}
/// <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;
}
}
2013-12-19 23:51:20 +08:00
}