From 4b1d3f776fd6886a28312c2034d3a8ede7fafc7b Mon Sep 17 00:00:00 2001 From: spx Date: Mon, 25 Mar 2013 21:39:11 +0900 Subject: [PATCH 1/2] DllExporter: Tweaks --- Plugins/API/DllExporter/Program.cs | 8 ++++++-- Plugins/PluginInputText/PluginInputText.csproj | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Plugins/API/DllExporter/Program.cs b/Plugins/API/DllExporter/Program.cs index 3920866a..9b2eef52 100644 --- a/Plugins/API/DllExporter/Program.cs +++ b/Plugins/API/DllExporter/Program.cs @@ -48,8 +48,12 @@ namespace DllExporter ildasmPath = Environment.ExpandEnvironmentVariables(@"%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.0A\Bin\ildasm.exe"); if (!System.IO.File.Exists(ildasmPath)) { - Console.WriteLine("DllExporter error: ildasm.exe not found"); - return 1; + ildasmPath = Environment.ExpandEnvironmentVariables(@"%ProgramFiles(x86)%\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\ildasm.exe"); + if (!System.IO.File.Exists(ildasmPath)) + { + Console.WriteLine("DllExporter error: ildasm.exe not found"); + return 1; + } } } diff --git a/Plugins/PluginInputText/PluginInputText.csproj b/Plugins/PluginInputText/PluginInputText.csproj index a7efe612..903d8a51 100644 --- a/Plugins/PluginInputText/PluginInputText.csproj +++ b/Plugins/PluginInputText/PluginInputText.csproj @@ -110,6 +110,6 @@ --> - "$(SolutionDir)Plugins\API\DllExporter.exe" "$(ConfigurationName)" "$(PlatformName)" "$(TargetDir)\" "$(TargetFileName)" "$(TargetedFrameworkDir)\ilasm.exe" "$(FrameworkSDKDir)bin\ildasm.exe" + "$(SolutionDir)Plugins\API\DllExporter.exe" "$(ConfigurationName)" "$(PlatformName)" "$(TargetDir)\" "$(TargetFileName)" \ No newline at end of file From 959bede3b558fd44a5b93866eb72e68384ac7895 Mon Sep 17 00:00:00 2001 From: spx Date: Mon, 25 Mar 2013 22:28:39 +0900 Subject: [PATCH 2/2] InputText: Added OnDismissAction --- Plugins/PluginInputText/Main.cs | 2 ++ Plugins/PluginInputText/PluginCode.cs | 12 ++++++++++++ 2 files changed, 14 insertions(+) diff --git a/Plugins/PluginInputText/Main.cs b/Plugins/PluginInputText/Main.cs index 40e6a2a9..a3365eba 100644 --- a/Plugins/PluginInputText/Main.cs +++ b/Plugins/PluginInputText/Main.cs @@ -114,6 +114,7 @@ namespace InputText internal List> OverrideOptions; internal List Commands; internal string Command; + internal string DismissAction; internal BangType Type; internal ExecuteBangParam(string args) @@ -122,6 +123,7 @@ namespace InputText this.OverrideOptions = new List>(); this.Commands = new List(); this.Command = args.Trim(); + this.DismissAction = null; this.Type = BangType.Unknown; } }; diff --git a/Plugins/PluginInputText/PluginCode.cs b/Plugins/PluginInputText/PluginCode.cs index ef4ce6ba..f4ce586a 100644 --- a/Plugins/PluginInputText/PluginCode.cs +++ b/Plugins/PluginInputText/PluginCode.cs @@ -43,6 +43,8 @@ namespace InputText ReadOption("Password", param.Options); ReadOption("TopMost", param.Options); + param.DismissAction = rm.ReadString("OnDismissAction", "", false); + #region Handle a single parameter // If our parameter list only contains a single word, then open a textbox immediately @@ -184,7 +186,12 @@ namespace InputText // If the user cancelled out of the inputbox (ESC key, etc.), then abort if (sInput == null) + { + // Execute OnDismissAction if defined + if (!String.IsNullOrEmpty(param.DismissAction)) + API.Execute(rm.GetSkin(), param.DismissAction); break; + } // Ask Rainmeter to set the variable using a bang (http://rainmeter.net/RainCMS/?q=Bangs) API.Execute(rm.GetSkin(), "!SetVariable " + param.Command + " \"" + sInput + "\""); @@ -201,7 +208,12 @@ namespace InputText // Execute the line, but if there's a problem (error or they cancel the // input textbox), then abort if (!ExecuteLine(param.Commands[i], param.Options, param.OverrideOptions[i])) + { + // Execute OnDismissAction if defined + if (!String.IsNullOrEmpty(param.DismissAction)) + API.Execute(rm.GetSkin(), param.DismissAction); break; + } // Continue to the next line, if there is any }