From fa3ae62254969d2615b7da4cbb739e0390837a61 Mon Sep 17 00:00:00 2001 From: qianlifeng Date: Wed, 29 Jan 2014 22:44:57 +0800 Subject: [PATCH] Add web search feature & some UI changes. --- Doc/app.ico | Bin 0 -> 370070 bytes Doc/app.png | Bin 0 -> 11524 bytes Doc/app.psd | Bin 85993 -> 89219 bytes Python.Runtime.dll | Bin 0 -> 104448 bytes .../CommonStorage.cs | 18 +---- Wox.Infrastructure/Properties/AssemblyInfo.cs | 36 +++++++++ .../UserSettings}/UserSelectedRecords.cs | 6 +- .../UserSettings/UserSetting.cs | 48 ++++++++++++ Wox.Infrastructure/UserSettings/WebSearch.cs | 11 +++ Wox.Infrastructure/Wox.Infrastructure.csproj | 70 ++++++++++++++++++ Wox.Infrastructure/packages.config | 4 + Wox.Plugin.System/BaseSystemPlugin.cs | 2 +- .../ThirdpartyPluginIndicator.cs | 19 ++++- Wox.Plugin.System/WebSearchPlugin.cs | 40 ++++++++++ Wox.Plugin.System/Wox.Plugin.System.csproj | 5 ++ Wox.sln | 30 ++++++++ Wox/Images/app.png | Bin 8880 -> 11524 bytes Wox/Images/websearch/google.png | Bin 0 -> 3296 bytes Wox/Images/websearch/wiki.png | Bin 0 -> 1820 bytes Wox/MainWindow.xaml.cs | 1 + Wox/Models/UserSetting.cs | 14 ---- Wox/Models/WebSearch.cs | 10 --- Wox/ResultItem.xaml | 8 +- Wox/ResultItem.xaml.cs | 6 +- Wox/SettingWindow.xaml | 12 +-- Wox/SettingWindow.xaml.cs | 2 + Wox/WebSearchSetting.xaml | 31 ++------ Wox/WebSearchSetting.xaml.cs | 43 +++++++++++ Wox/Wox.csproj | 10 +-- Wox/app.ico | Bin 370070 -> 370070 bytes Wox/app.png | Bin 8880 -> 11524 bytes 31 files changed, 340 insertions(+), 86 deletions(-) create mode 100644 Doc/app.ico create mode 100644 Doc/app.png create mode 100644 Python.Runtime.dll rename {Wox/Helper => Wox.Infrastructure}/CommonStorage.cs (83%) create mode 100644 Wox.Infrastructure/Properties/AssemblyInfo.cs rename {Wox/Models => Wox.Infrastructure/UserSettings}/UserSelectedRecords.cs (88%) create mode 100644 Wox.Infrastructure/UserSettings/UserSetting.cs create mode 100644 Wox.Infrastructure/UserSettings/WebSearch.cs create mode 100644 Wox.Infrastructure/Wox.Infrastructure.csproj create mode 100644 Wox.Infrastructure/packages.config create mode 100644 Wox.Plugin.System/WebSearchPlugin.cs create mode 100644 Wox/Images/websearch/google.png create mode 100644 Wox/Images/websearch/wiki.png delete mode 100644 Wox/Models/UserSetting.cs delete mode 100644 Wox/Models/WebSearch.cs diff --git a/Doc/app.ico b/Doc/app.ico new file mode 100644 index 0000000000000000000000000000000000000000..8e914ac566fafe5d7bad0b1c78520ae7b8b4f34a GIT binary patch literal 370070 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%0Ap? zY}(z2_78KGGq1AA+Lp-dQ|OhK`F%Y40Cx0I@q?YO?D`3FUCj66mj_j{42M-Y0|EL@ z8NE#?@!Ns)-E@(ERs9_H_%QQd_Fnc}yf8o6?Y@T-Ec6R)SL&}lf@mQA=uRcIz z$>p9fCfnNjWnZ*J|2#$iJ%27W+8}o~T?^_ThEIl-FKgUS+}@ zm5jq#HC}0{zK_RTfJ|MiVX()uiVnxAo}EKmtVv5h_nh6YMBjDw?={wn$Yg-AgScyRN_`QJe}mAOZ|@~o=9U#b|>SI@;%PrE$Lez0{_rMXmrB?CeB zRnB2Em)&~besYs!uF=6_S?`3gy{t2@E47we=2-{%m)#4>OmpaZW$0%Y=HkqdIjNZL z{qE0)a>=YWibc<1S7$rF7Z3fH)E;~>5y&M{kg|_@?QH*^OK#4uFyAa=!(^qM%Gs2d z2f==<)-+_Fb&&stz7l69IlS?676aCJ`*lIg%gNft$m*wMF=Y-1+ZI{-R=+eueCW?` z29LQ6LEN9Ycu2W;v97OzU6YFQvz9>z`G<~6)%iImTV)-ZUAZu>i^cBOigVe0Y0P^Q zSLCBv z!%Nlq(W{`}>&HP?Y35O^_XDGH_IUda|16OF+{>BIu>KNj4j@PKH?R01QAAwqj|P2> z>OKkX<&BX21{o$>9Ogoj|>YwTIud*k$kU?P2N+*?Pv^jp(!v-b)vNnLS z>l{^R5JXta+u&S7oS|a=!Ou_o?6+)ax2k)7Z}d6P@4&BZa6_Q`8={}2;_7+}V!~{u z%RlTsRb3G4;^l3*qe~Z*{LAW*gIovfSGFjAXxyPP2M7c~=M)R=GF|>v&gv497{r-y zvbr~sr}-L`{LAi7g>`hXV29#F>j;9PN#96?84{lNB>&O82X^`&}mn45;i4 zWo2$q@(=y9j13Ovkb}Z4r4x~9X6bm;l8wkjxFr%aUp>YgWJ`Rp2Tf>={6@E^-sK-jVc#aomE-wzpw zbwF-=REj#$HF()hCQUO@{>K&0rM1dNkn#_{%J1hADhbYo3=$8pRgtwt!X8&a=1pm( zep``g@(&FAaY4)fp;OzXivyd_Sk{Yr$(gJz63+4QN{im7zD%p|DAVLWmbE@+0S#LI zaXy92I$X@t`Q4|=iSM#|pFyYOcb`0`GLV02wi}rw|9-#yXa|Cpf8ZW%!1(2p=4K}1 ze&o_oKIVT%+`hf2ldRi&_@{9z2ekpI*9K&g{6miXx_HPxa1Y%Y=GbA^i9Pqk4{P51 z&f$2;m5TiP*-OH!9Q2;#pUdYRcE6&Eyw+89cgOtg!J12^xW}JeTM;k$PbT(Nk>@t~1+GUFT``vR(G!(kaKl)JE>nf2L zq`Z>XR%D9&`?2{EvX3jtKjVAmf0yK+>uhvrmoi2Ev1h8)M%pabviCvk{gG<8Q5pY( zPC=gumTL5%@+`M)nIiw-sVdIx+5|sm?xrfPROu3rGl5c-HoBK9ljI-c*0Je+JF%AX z!+w&PhzC{q$C-I#2ekZ+%tTCxI%SglqfTf8u-E*;t?N=U58HUmdHLDzU(hmDud4D7 z!Uc79R;tp3$`xwgGEM#kU$Gzhp3Wb!#^a^N`f2QO6>_(Y{pZm}RCPZVSGzk=mSkUJ zk^dcS-^|FqP_lWEYWZiX{9EY^8(f?NxTf|&?Ql)#Hw z7<@i?p+&k2fVmPsdrEutIq7}s;Eulksl$tS$_4fmo#5x1%DA4h`?Z@Ri6`w-Ic<`E zJ>(x4TwU{4ZX@07+60VF9jEnwoK~qUvq6@PF;XR08?++Wu%I@EB z+{bo~lt`Pd>4hhf|McP)$rte}NDPqt6P|*^6Qz}2cp~{vFMg4H5x;`O0Lee$DM&m~ zTIq!+lK=GL7s(g#D@Y8G{1cvn#1o~JUU(w;PcMFvd=bBb!~n@Z;VDQwQCjJRCzAj4 z;upym@heCSko*&#g2WT0m0oxv`A;u?k$e%qg2VvHKjA4zJW*Qdg(s5#^x_xE7x61d z43PX2o`S>^rIlWIBKc1*evy0;zk4hhf|McP)$rte}NDPqt6P|*^ z6Qz}2cp~{vFMg4H5x;`O0Lee$DM&m~TIq!+lK=GL7s(g#D@Y8G{1cvn#1o~JUU(w; zPcMFvd=bBb!~n@Z;VDQwQCjJRCzAj4;upym@heCSko*&#g2WT0m0oxv`A;u?k$e%q zg2VvHKjA4zJW*Qdg(s5#^x_xE7x61d43PX2o`S>^rIlWIBKc1*evy0;zk4hhf|McP)$rte}NDPqt6P|*^6Qz}2cp~{vFMg4H5x;`O0Lee$DM&m~TIq!+ zlK=GL7s(g#D@Y8aiu@N>W;kJ>q$)(4!t&R>Ioa}G zP@eN^l7GUg6IRJTcx;r`gjpxdl7Dd6fSeUpPS#S@kIzqj5B&fd3lRSO;9uvs=<^p< z=C(aine(@)D(7zHT2c1;PZd|?PK4Spk^`NwOm&yXKWu4N)$zV_Rql=z`(OK4ZZekY z?+W&1-&ItVSB`!F*$2pDfaFC#T4B75Z$9V!L{VAJ_gAjW{^L}aZ<+Fah1a8~GW)Y7 z6}eq2dAkN123jwmAHJzgi{?4z^l*1tG{{&CROU4DdHmX<^6a&Ip6v4l2XgOuc-<>s z7ONalyyWhGM)W8869xzagaN_;VSq3|7$6J~1_%R$0m1-bfG|K9APf)&2m^!x!T@1_ zFhCd}3=jqg1B3y>0AYYIKo}ql5C#YXgaN_;VSq3|7$6J~1_%R$0m1-bfG|K9APf)& z2m^!x!T@1_FhCd}3=jqg1B3y>KoA(nB1aS;3J?W|0z?6#08xM_KolSf5Cw<=L;<1z mQGh5w6d(!^1&9Jf0ipm=fG9u|APNu#hyp|bqCnbH;Qs@&Yv>gK literal 0 HcmV?d00001 diff --git a/Doc/app.png b/Doc/app.png new file mode 100644 index 0000000000000000000000000000000000000000..8c9ca7971a62d99905b25ef3fb3e435e1d1ceaca GIT binary patch literal 11524 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 literal 0 HcmV?d00001 diff --git a/Doc/app.psd b/Doc/app.psd index 2ce1b96aaf047416f6ecd50d48b1a9e4b379e5e2..1694f8d5dd86ee56f57eaa92abb78921e28c3bf8 100644 GIT binary patch delta 23736 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 literal 0 HcmV?d00001 diff --git a/Wox/Helper/CommonStorage.cs b/Wox.Infrastructure/CommonStorage.cs similarity index 83% rename from Wox/Helper/CommonStorage.cs rename to Wox.Infrastructure/CommonStorage.cs index d920fe112..cfd671ed0 100644 --- a/Wox/Helper/CommonStorage.cs +++ b/Wox.Infrastructure/CommonStorage.cs @@ -1,14 +1,10 @@ using System; using System.Collections.Generic; using System.IO; -using System.Linq; -using System.Runtime.Serialization.Formatters.Binary; -using System.Text; -using System.Threading; using Newtonsoft.Json; -using Wox.Models; +using Wox.Infrastructure.UserSettings; -namespace Wox.Helper +namespace Wox.Infrastructure { [Serializable] public class CommonStorage @@ -22,14 +18,7 @@ namespace Wox.Helper private CommonStorage() { - //default setting - UserSetting = new UserSetting - { - Theme = "Default", - ReplaceWinR = true, - WebSearches = new List() - }; - + UserSetting = new UserSetting(); UserSelectedRecords = new UserSelectedRecords(); } @@ -81,5 +70,6 @@ namespace Wox.Helper return storage; } } + } } \ No newline at end of file diff --git a/Wox.Infrastructure/Properties/AssemblyInfo.cs b/Wox.Infrastructure/Properties/AssemblyInfo.cs new file mode 100644 index 000000000..d7dfdd271 --- /dev/null +++ b/Wox.Infrastructure/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// 有关程序集的常规信息通过以下 +// 特性集控制。更改这些特性值可修改 +// 与程序集关联的信息。 +[assembly: AssemblyTitle("Wox.Infrastructure")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Microsoft")] +[assembly: AssemblyProduct("Wox.Infrastructure")] +[assembly: AssemblyCopyright("Copyright © Microsoft 2014")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// 将 ComVisible 设置为 false 使此程序集中的类型 +// 对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型, +// 则将该类型上的 ComVisible 特性设置为 true。 +[assembly: ComVisible(false)] + +// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID +[assembly: Guid("aee57a31-29e5-4f03-a41f-7917910fe90f")] + +// 程序集的版本信息由下面四个值组成: +// +// 主版本 +// 次版本 +// 生成号 +// 修订号 +// +// 可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值, +// 方法是按如下所示使用“*”: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Wox/Models/UserSelectedRecords.cs b/Wox.Infrastructure/UserSettings/UserSelectedRecords.cs similarity index 88% rename from Wox/Models/UserSelectedRecords.cs rename to Wox.Infrastructure/UserSettings/UserSelectedRecords.cs index 158e131dc..214e0c325 100644 --- a/Wox/Models/UserSelectedRecords.cs +++ b/Wox.Infrastructure/UserSettings/UserSelectedRecords.cs @@ -1,12 +1,8 @@ using System; using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Runtime.Serialization.Formatters.Binary; -using Wox.Helper; using Wox.Plugin; -namespace Wox.Models +namespace Wox.Infrastructure.UserSettings { [Serializable] public class UserSelectedRecords diff --git a/Wox.Infrastructure/UserSettings/UserSetting.cs b/Wox.Infrastructure/UserSettings/UserSetting.cs new file mode 100644 index 000000000..d6f8510ef --- /dev/null +++ b/Wox.Infrastructure/UserSettings/UserSetting.cs @@ -0,0 +1,48 @@ +using System.Collections.Generic; +using System.IO; + +namespace Wox.Infrastructure.UserSettings +{ + public class UserSetting + { + public string Theme { get; set; } + public bool ReplaceWinR { get; set; } + public List WebSearches { get; set; } + + public UserSetting() + { + //default setting + Theme = "Default"; + ReplaceWinR = true; + WebSearches = LoadDefaultWebSearches(); + } + + private List LoadDefaultWebSearches() + { + List webSearches = new List(); + + WebSearch googleWebSearch = new WebSearch() + { + Title = "Google", + ActionWord = "g", + IconPath = Directory.GetCurrentDirectory() + @"\Images\websearch\google.png", + Url = "https://www.google.com/search?q={q}", + Enabled = true + }; + webSearches.Add(googleWebSearch); + + + WebSearch wikiWebSearch = new WebSearch() + { + Title = "Wikipedia", + ActionWord = "wiki", + IconPath = Directory.GetCurrentDirectory() + @"\Images\websearch\wiki.png", + Url = "http://en.wikipedia.org/wiki/{q}", + Enabled = true + }; + webSearches.Add(wikiWebSearch); + + return webSearches; + } + } +} diff --git a/Wox.Infrastructure/UserSettings/WebSearch.cs b/Wox.Infrastructure/UserSettings/WebSearch.cs new file mode 100644 index 000000000..d276eddfb --- /dev/null +++ b/Wox.Infrastructure/UserSettings/WebSearch.cs @@ -0,0 +1,11 @@ +namespace Wox.Infrastructure.UserSettings +{ + public class WebSearch + { + public string Title { get; set; } + public string ActionWord { get; set; } + public string IconPath { get; set; } + public string Url { get; set; } + public bool Enabled { get; set; } + } +} \ No newline at end of file diff --git a/Wox.Infrastructure/Wox.Infrastructure.csproj b/Wox.Infrastructure/Wox.Infrastructure.csproj new file mode 100644 index 000000000..9192eed42 --- /dev/null +++ b/Wox.Infrastructure/Wox.Infrastructure.csproj @@ -0,0 +1,70 @@ + + + + + Debug + AnyCPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3} + Library + Properties + Wox.Infrastructure + Wox.Infrastructure + v3.5 + 512 + ..\ + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\Newtonsoft.Json.5.0.8\lib\net35\Newtonsoft.Json.dll + + + + + + + + + + + + + + + + + + + + + {8451ecdd-2ea4-4966-bb0a-7bbc40138e80} + Wox.Plugin + + + + + + \ No newline at end of file diff --git a/Wox.Infrastructure/packages.config b/Wox.Infrastructure/packages.config new file mode 100644 index 000000000..9520f36d8 --- /dev/null +++ b/Wox.Infrastructure/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Wox.Plugin.System/BaseSystemPlugin.cs b/Wox.Plugin.System/BaseSystemPlugin.cs index e78896182..d07dcc269 100644 --- a/Wox.Plugin.System/BaseSystemPlugin.cs +++ b/Wox.Plugin.System/BaseSystemPlugin.cs @@ -12,7 +12,7 @@ namespace Wox.Plugin.System public List Query(Query query) { - if (string.IsNullOrEmpty(query.RawQuery) || query.RawQuery.EndsWith(" ")) return new List(); + if (string.IsNullOrEmpty(query.RawQuery)) return new List(); return QueryInternal(query); } diff --git a/Wox.Plugin.System/ThirdpartyPluginIndicator.cs b/Wox.Plugin.System/ThirdpartyPluginIndicator.cs index 24361a65d..406ef1b81 100644 --- a/Wox.Plugin.System/ThirdpartyPluginIndicator.cs +++ b/Wox.Plugin.System/ThirdpartyPluginIndicator.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Text; +using Wox.Infrastructure; namespace Wox.Plugin.System { @@ -15,7 +16,7 @@ namespace Wox.Plugin.System List results = new List(); if (string.IsNullOrEmpty(query.RawQuery)) return results; - foreach (PluginMetadata metadata in allPlugins.Select(o=>o.Metadata)) + foreach (PluginMetadata metadata in allPlugins.Select(o => o.Metadata)) { if (metadata.ActionKeyword.StartsWith(query.RawQuery)) { @@ -23,15 +24,27 @@ namespace Wox.Plugin.System Result result = new Result { Title = metadata.ActionKeyword, - SubTitle = string.Format("Activate {0} workflow",metadata.Name), + SubTitle = string.Format("Activate {0} plugin", metadata.Name), Score = 50, IcoPath = "Images/work.png", Action = () => changeQuery(metadataCopy.ActionKeyword + " "), DontHideWoxAfterSelect = true }; - results.Add(result); + results.Add(result); } } + + results.AddRange(CommonStorage.Instance.UserSetting.WebSearches.Where(o => o.ActionWord.StartsWith(query.RawQuery)).Select(n => new Result() + { + + Title = n.ActionWord, + SubTitle = string.Format("Activate {0} plugin", n.ActionWord), + Score = 50, + IcoPath = "Images/work.png", + Action = () => changeQuery(n.ActionWord + " "), + DontHideWoxAfterSelect = true + })); + return results; } diff --git a/Wox.Plugin.System/WebSearchPlugin.cs b/Wox.Plugin.System/WebSearchPlugin.cs new file mode 100644 index 000000000..bbfc85915 --- /dev/null +++ b/Wox.Plugin.System/WebSearchPlugin.cs @@ -0,0 +1,40 @@ +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.IO; +using System.Linq; +using Newtonsoft.Json; +using Wox.Infrastructure; +using Wox.Infrastructure.UserSettings; + +namespace Wox.Plugin.System +{ + public class WebSearchPlugin : BaseSystemPlugin + { + protected override List QueryInternal(Query query) + { + List results = new List(); + if (string.IsNullOrEmpty(query.ActionName)) return results; + + WebSearch webSearch = + CommonStorage.Instance.UserSetting.WebSearches.FirstOrDefault(o => o.ActionWord == query.ActionName); + + if (webSearch != null) + { + string keyword = query.ActionParameters.Count > 0 ? query.RawQuery.Substring(query.RawQuery.IndexOf(' ') + 1) : ""; + results.Add(new Result() + { + Title = string.Format("Search {0} for {1}", webSearch.Title, keyword), + IcoPath = webSearch.IconPath, + Action = () => Process.Start(webSearch.Url.Replace("{q}", keyword)) + }); + } + + return results; + } + + protected override void InitInternal(PluginInitContext context) + { + } + } +} diff --git a/Wox.Plugin.System/Wox.Plugin.System.csproj b/Wox.Plugin.System/Wox.Plugin.System.csproj index ecd002a74..2dadddea1 100644 --- a/Wox.Plugin.System/Wox.Plugin.System.csproj +++ b/Wox.Plugin.System/Wox.Plugin.System.csproj @@ -47,6 +47,7 @@ + @@ -59,6 +60,10 @@ + + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3} + Wox.Infrastructure + {8451ECDD-2EA4-4966-BB0A-7BBC40138E80} Wox.Plugin diff --git a/Wox.sln b/Wox.sln index 6f2ce1e01..11840b3ed 100644 --- a/Wox.sln +++ b/Wox.sln @@ -19,6 +19,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Runtime", "Pythonnet EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Wox.Plugin.Doc", "Plugins\Wox.Plugin.Doc\Wox.Plugin.Doc.csproj", "{6B6696B1-A547-4FD4-85EF-E1FD0F54AD2C}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Wox.Infrastructure", "Wox.Infrastructure\Wox.Infrastructure.csproj", "{4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -280,6 +282,34 @@ Global {6B6696B1-A547-4FD4-85EF-E1FD0F54AD2C}.UnitTests|Win32.ActiveCfg = Release|Any CPU {6B6696B1-A547-4FD4-85EF-E1FD0F54AD2C}.UnitTests|x64.ActiveCfg = Release|Any CPU {6B6696B1-A547-4FD4-85EF-E1FD0F54AD2C}.UnitTests|x86.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Debug|Win32.ActiveCfg = Debug|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Debug|x64.ActiveCfg = Debug|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Debug|x86.ActiveCfg = Debug|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.EmbeddingTest|Any CPU.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.EmbeddingTest|Any CPU.Build.0 = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.EmbeddingTest|Mixed Platforms.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.EmbeddingTest|Mixed Platforms.Build.0 = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.EmbeddingTest|Win32.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.EmbeddingTest|x64.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.EmbeddingTest|x86.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Release|Any CPU.Build.0 = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Release|Win32.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Release|x64.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.Release|x86.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.UnitTests|Any CPU.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.UnitTests|Any CPU.Build.0 = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.UnitTests|Mixed Platforms.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.UnitTests|Mixed Platforms.Build.0 = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.UnitTests|Win32.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.UnitTests|x64.ActiveCfg = Release|Any CPU + {4FD29318-A8AB-4D8F-AA47-60BC241B8DA3}.UnitTests|x86.ActiveCfg = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Wox/Images/app.png b/Wox/Images/app.png index d24f3550dd6456961e904b5ff8f493a4f7977380..8c9ca7971a62d99905b25ef3fb3e435e1d1ceaca 100644 GIT binary patch delta 8852 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 C=dtGi delta 6187 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

OOAwQvfi>>=-CJ*1g3qL$ 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 literal 0 HcmV?d00001 diff --git a/Wox/Images/websearch/wiki.png b/Wox/Images/websearch/wiki.png new file mode 100644 index 0000000000000000000000000000000000000000..8431136bdb15ecf76f5d408a2ef5300259a0f5bd GIT binary patch literal 1820 zcmc&#`&W{Q7XA1TAAnlvAevaIg@`C(nae>V-`c38PLpIaOz0RZyW^uVD>YCX?p4#T z#w%DRn6H|#a*Z|lD1i{g0$)AE)TEnZ=Fli*sR=U7FZUm~Kisv>*=L=z_Ah(wwb%I< zJucE3>4XFTz&biAEWtE6f48N%31z|GJ^}#qSJ7d6lk%Qxr;Z)1PQzL({&8g@X8H7U zYA>C?YpT|c5{SM{XeM-BjdIf-y@d1V6)7Li7hkxvDI&Gb^O5pkQdL-tMMKKPhz*{Y z8Frq!_M%Ew%j-7sxY_c8J-oG3-z1NH;7#Kvno{(_lV{?}%6((VIusPA2OI6gz?)tl zTHyb2^=^<|upy)WQNex^ej11mE-&%jI0c4s@eUE8){{=6W|i4Bu+Bay^gPcO8mmLm zEpIS4ksb45sIvwe>V4MWa~SnhCbqog#oJEc3KQ;JlE`!oG(X?w5COz*d?FpO^cxC+ zx0==M%qZ!D)8Qz?TyTC z!B3j6NdoR6(>OKH8bzO@OYkoRY0vUIkfTtxlE`trRw8FQKa)<8fi9X2y_>{w6LPY! z@j8n0VBqWl`cgjdV{)vn9f{5{Z-%xT`@yOZ6t>J^6N9`=4IjFj(YJRlTIUBxzxRL| z!41DUmCJJ#O?i%U9%Em7h!zRF#~FPFnib|m5Y!7MakH@dbnOp(m$Q(j^@Or6PMSQ} z(_F2;h?*EzT5#MQL|Zja-ddLmDFMf8*6=AVFYOvX^Hlh}Qj6xjV;`Dm2 z;U?>2@y3evv>Bm~TFK|$2Eycvw%D>3E+sRf4gN0F*`T6_6cSipVJbtnkbpJz#1a0h z7}0`uVB6r<*$ZdCX8BFSN5K>Y#3AM_)AcFVc--!iY@86wtG8HfB03*Qw;N-_Ca2vx zNl>WneKqT&dw-40Z$`*dD;GGo0i!C4Y|}s}yjfyb-6>{x$1iYqu5L#hQcs`k#z=ni zT0U2QOW{)ne<(NRJFULn;h%$_IR?|#SoZzL8Qrw<2BoSVKclWu_$%EVkN4>NG{bs-k96IZy=4qS**DteI%1t2obpnl+H4h!9EJ5$(pXMi7iZ?Uope( zT_0D>Ry+a2hQLVJe9+Jc5f@Lmg%_thssq*$2@K90fonH-=2PMLj3CHM8qZ%dN!I;J z)ufeEOZnMHbA#(}KKC^XWwY91kVMlbNgT--y8;*Gi2&Q(^d)6#&Md%&=@U?WM{>#+ zZWV|0e0c8|zR#umpHI?Ml z0;nQW^%B>wWoyL+=qME6sE{$e;%H*X=V~y5`tJ&h#6u$cylf^>;BP$~i-J1AM)(VN z20$$ymp8(PpHhrD{o1?S7N->-kx9m7^zY-6L-Icx&Q`N>@31~bYit|xd$$}I0aJT` zAWf9w8*u+X#d_%QmC04YOn2#aZ9(xa8iS*B;E36>w>)o}f~Os-YtT%-6ilHDxDa10 z{E`h5pqux6{;A{oFb`)qPshH?U~R_!DE9o#;)}~$Oy-nF<}b_{5Swu)XY&XBFEOpo zmL5bw1`vHNhZ%A-wK8>0{{sBeRxt(w{B!x%ebU!G`c|kt-DHz@EUd4{Y8W^doW9v6 zmVOP=Xjsz8R_51NRaiZ;e51khm3Yc{(7xEFSo73}nN=R6p%_PiIv|*MmwXlejbr zmSkE{&_5IW-dM`ESvMl+pZ1(jU;s@B`u_?mcMk`;n|>OwVaa%hm|^C^0WAMp61OhQ Va>EZNUK#&pM2E+P-3(zC{RKm#KY0KE literal 0 HcmV?d00001 diff --git a/Wox/MainWindow.xaml.cs b/Wox/MainWindow.xaml.cs index 967e636bf..1327c87c1 100644 --- a/Wox/MainWindow.xaml.cs +++ b/Wox/MainWindow.xaml.cs @@ -12,6 +12,7 @@ using System.Windows.Input; using System.Windows.Media.Animation; using Wox.Commands; using Wox.Helper; +using Wox.Infrastructure; using Wox.Plugin; using Wox.PluginLoader; using Application = System.Windows.Application; diff --git a/Wox/Models/UserSetting.cs b/Wox/Models/UserSetting.cs deleted file mode 100644 index a3cf980aa..000000000 --- a/Wox/Models/UserSetting.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Wox.Models -{ - public class UserSetting - { - public string Theme { get; set; } - public bool ReplaceWinR { get; set; } - public List WebSearches { get; set; } - } -} diff --git a/Wox/Models/WebSearch.cs b/Wox/Models/WebSearch.cs deleted file mode 100644 index b786abd96..000000000 --- a/Wox/Models/WebSearch.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace Wox.Models -{ - public class WebSearch - { - public string Keyword { get; set; } - public string IconPath { get; set; } - public string Website { get; set; } - public string Enabled { get; set; } - } -} \ No newline at end of file diff --git a/Wox/ResultItem.xaml b/Wox/ResultItem.xaml index d4004599e..6eecb91e8 100644 --- a/Wox/ResultItem.xaml +++ b/Wox/ResultItem.xaml @@ -15,12 +15,12 @@ - + - - + + - Title + Title sub title diff --git a/Wox/ResultItem.xaml.cs b/Wox/ResultItem.xaml.cs index 65c6c5c0b..dc29a993f 100644 --- a/Wox/ResultItem.xaml.cs +++ b/Wox/ResultItem.xaml.cs @@ -9,6 +9,7 @@ using System.Windows.Media; using System.Windows.Media.Imaging; using Wox.Annotations; using Wox.Helper; +using Wox.Infrastructure; using Wox.Plugin; using Brush = System.Windows.Media.Brush; @@ -16,7 +17,6 @@ namespace Wox { public partial class ResultItem : UserControl, INotifyPropertyChanged { - private bool selected; public Result Result { get; private set; } @@ -55,6 +55,10 @@ namespace Wox tbTitle.Text = result.Title; tbSubTitle.Text = result.SubTitle; + if (string.IsNullOrEmpty(result.SubTitle)) + { + SubTitleRowDefinition.Height = new GridLength(0); + } string path = string.Empty; if (!string.IsNullOrEmpty(result.IcoPath) && result.IcoPath.Contains(":\\") && File.Exists(result.IcoPath)) { diff --git a/Wox/SettingWindow.xaml b/Wox/SettingWindow.xaml index 9bc73c2aa..6a5bd51cf 100644 --- a/Wox/SettingWindow.xaml +++ b/Wox/SettingWindow.xaml @@ -26,28 +26,28 @@ - + - + - + - + - + - + diff --git a/Wox/SettingWindow.xaml.cs b/Wox/SettingWindow.xaml.cs index 15ffe0d14..91f05bdca 100644 --- a/Wox/SettingWindow.xaml.cs +++ b/Wox/SettingWindow.xaml.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Windows; using System.Windows.Controls; using Wox.Helper; +using Wox.Infrastructure; namespace Wox { @@ -38,6 +39,7 @@ namespace Wox themeComboBox.SelectedItem = CommonStorage.Instance.UserSetting.Theme; cbReplaceWinR.IsChecked = CommonStorage.Instance.UserSetting.ReplaceWinR; + webSearchView.ItemsSource = CommonStorage.Instance.UserSetting.WebSearches; } private List LoadAvailableThemes() diff --git a/Wox/WebSearchSetting.xaml b/Wox/WebSearchSetting.xaml index 073a1f72a..ab9f36be0 100644 --- a/Wox/WebSearchSetting.xaml +++ b/Wox/WebSearchSetting.xaml @@ -4,45 +4,30 @@ Icon="Images\app.png" ResizeMode="NoResize" WindowStartupLocation="CenterScreen" - Title="WebSearchSetting" Height="400" Width="674.766"> + Title="WebSearchSetting" Height="300" Width="674.766"> - - - - - - Search URL: - - Perform a search on a website and copy the result URL. Replace your search term with {query} in curly brackets + Title: + - Title: - - What to show in the Wox. The search query is automatically appended for clarity. + URL: + - Keyword: - - What you type to use this shortcut. - - Validation: - - - - - Type some text and click test to check it works. + ActionWord: + - + diff --git a/Wox/WebSearchSetting.xaml.cs b/Wox/WebSearchSetting.xaml.cs index 3e20b971e..b094da3dc 100644 --- a/Wox/WebSearchSetting.xaml.cs +++ b/Wox/WebSearchSetting.xaml.cs @@ -10,6 +10,9 @@ using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; +using Wox.Helper; +using Wox.Infrastructure; +using Wox.Infrastructure.UserSettings; namespace Wox { @@ -24,5 +27,45 @@ namespace Wox { Close(); } + + private void btnAdd_OnClick(object sender, RoutedEventArgs e) + { + string title = tbTitle.Text; + if (string.IsNullOrEmpty(title)) + { + MessageBox.Show("Please input Title field"); + return; + } + + string url = tbUrl.Text; + if (string.IsNullOrEmpty(url)) + { + MessageBox.Show("Please input URL field"); + return; + } + + string action = tbActionword.Text; + if (string.IsNullOrEmpty(action)) + { + MessageBox.Show("Please input ActionWord field"); + return; + } + if (CommonStorage.Instance.UserSetting.WebSearches.Exists(o => o.ActionWord == action)) + { + MessageBox.Show("ActionWord has existed, please input a new one."); + return; + } + + CommonStorage.Instance.UserSetting.WebSearches.Add(new WebSearch() + { + ActionWord = action, + Enabled = true, + IconPath="", + Url = url, + Title = title + }); + CommonStorage.Instance.Save(); + MessageBox.Show("Succeed!"); + } } } diff --git a/Wox/Wox.csproj b/Wox/Wox.csproj index c0df5d68f..865cc9ce7 100644 --- a/Wox/Wox.csproj +++ b/Wox/Wox.csproj @@ -119,9 +119,6 @@ - - - @@ -140,7 +137,6 @@ ResultItem.xaml - SettingWindow.xaml @@ -221,6 +217,10 @@ {097b4ac0-74e9-4c58-bcf8-c69746ec8271} Python.Runtime + + {4fd29318-a8ab-4d8f-aa47-60bc241b8da3} + Wox.Infrastructure + {69ce0206-cb41-453d-88af-df86092ef9b8} Wox.Plugin.System @@ -277,7 +277,7 @@ - xcopy /Y $(ProjectDir)Images\*.* $(TargetDir)Images\ + xcopy /Y /S $(ProjectDir)Images\*.* $(TargetDir)Images\ xcopy /Y $(ProjectDir)app.ico $(TargetDir) xcopy /Y $(ProjectDir)Themes\*.* $(TargetDir)Themes\ diff --git a/Wox/app.ico b/Wox/app.ico index c5f72ba8bb07e0e31e882d482a8576843a2f6192..8e914ac566fafe5d7bad0b1c78520ae7b8b4f34a 100644 GIT binary patch delta 14641 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 delta 11410 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 C=dtGi delta 6187 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

OOAwQvfi>>=-CJ*1g3qL$ z;}7Sr0}cHevMhUK9hW|;CNKi9cZhY2iPM)d(B$CObCPj73e>tuY}ve&P72Sl%nN!mBpNy=@6UycQc;cv$sW5$zu)s_n_0H(?l~lttu4^!0}Vb1uC28{579fK2Xmeh7un}gp5+ATRt!S;+IO{5*qs3 zcX0GT&jqUeE>?-FfE=`sxar{|kKsBW7d{2tR{sgHANDw^&|RQEd{@+tg8?IG!A6~Y zgSa|sFC$zF4W#G-88$tf}id-u!W?^Y9!$jxF%a^W8!1RG2c8j znR$+`)VlH_GHLDW9IIX8q0-oe+AMo#dQTkcPKRV9pt^vNsTP=B54FMW!ltx%hnt8P z#b19w7OSZYVI-A%VyTvxKW1n3X+u8L$ueRGcuXAyw}xzgN=B@s0Wwnc{6`|R`H4ls zPuD`gSF-6`&*~de9Xoti+_i05|Aa0Kyht@k)&435-IU*$9+$68gyhip7PSO~$dRok zv(3N3Et+s3%90RecYfGC70i0o%+ek5SJgHc!mzW=bF1EuhqfHMMFj(55Zjy9xpsd+ z0upuy{s2h(h*5(&VbRk3&nOfE(2E$p+78dA%QK{XmQMl)(6e)ed-;BHN}Nb& zGUbYs{-cUL@$1j>EFsB6o~5`eCq2n6Ofl!qLPnU=qyjVuz%B%p3ylx_HzFUDhyOv9 z<=@!45MKV}#D)HXxR7}M7p3uE!VARv&{}a*Ksx08RXBi}f|teh#O`eWO@Uq)spWuF zsPLB8O41>2!|fE!E;0#AALp_Gq%gTauE$&W{z!LnBuG@ol%dK0y+sLzDmgy`^PQ%p zW6wI6g>felPo)#D=Xx8vx&fgb$4$Lz(jlwa+lFHs(qsoSQq|QCjcn)KA%j2{-j)Gevc3tMAJN3Lb&TGwEHOwD1`y zQ!4U=xghaDH7>WD+2bb#2%x`!=WvQuvo|##p0hivO2Q`668#INY-=1`?dPmvne9!W zE|r6`a?U3KT4f-PTUEMaHu3U3ZXy`!WO_P9(Pgy?blT)WdArpM1*hAm z3EW(9+5o>Fai#aU{<_9=p=a)NX;lhapHyTWOhr@FdwpXm?b`7yt4YBjRj0>{cl