From cd1548d0479fa0089181a9018b016645f6e7d9c2 Mon Sep 17 00:00:00 2001 From: Kamil118 Date: Mon, 17 Aug 2026 18:00:05 +0200 Subject: [PATCH] Better handling of invalid cultures, added icon --- GoToSleep.slnx | 5 ++ GoToSleep/App.config | 3 + GoToSleep/GoToSleep.Designer.cs | 2 + GoToSleep/GoToSleep.csproj | 27 ++++++++ GoToSleep/GoToSleep.resx | 77 ++++++++++++++++++++++ GoToSleep/Properties/Settings.Designer.cs | 26 ++++++++ GoToSleep/Properties/Settings.settings | 6 ++ GoToSleep/SystemPowerManager.cs | 13 +++- GoToSleep/icon.ico | Bin 0 -> 4286 bytes 9 files changed, 157 insertions(+), 2 deletions(-) create mode 100644 GoToSleep/App.config create mode 100644 GoToSleep/Properties/Settings.Designer.cs create mode 100644 GoToSleep/Properties/Settings.settings create mode 100644 GoToSleep/icon.ico diff --git a/GoToSleep.slnx b/GoToSleep.slnx index b7bfb4c..4fc4352 100644 --- a/GoToSleep.slnx +++ b/GoToSleep.slnx @@ -1,3 +1,8 @@ + + + + + diff --git a/GoToSleep/App.config b/GoToSleep/App.config new file mode 100644 index 0000000..49cc43e --- /dev/null +++ b/GoToSleep/App.config @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/GoToSleep/GoToSleep.Designer.cs b/GoToSleep/GoToSleep.Designer.cs index e8611a1..07ce602 100644 --- a/GoToSleep/GoToSleep.Designer.cs +++ b/GoToSleep/GoToSleep.Designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(GoToSleep)); comboBox1 = new ComboBox(); shutdownButton = new Button(); suspendButton = new Button(); @@ -125,6 +126,7 @@ AutoScaleMode = AutoScaleMode.Font; ClientSize = new Size(484, 64); Controls.Add(tableLayoutPanel2); + Icon = (Icon)resources.GetObject("$this.Icon"); MinimumSize = new Size(500, 103); Name = "GoToSleep"; Text = "Go To Sleep"; diff --git a/GoToSleep/GoToSleep.csproj b/GoToSleep/GoToSleep.csproj index f3cd6a5..4722b37 100644 --- a/GoToSleep/GoToSleep.csproj +++ b/GoToSleep/GoToSleep.csproj @@ -6,8 +6,20 @@ enable true enable + Debug;Release;Release-Standalone + icon.ico + + win-x64 + false + true + + + + + + @@ -17,4 +29,19 @@ + + + True + True + Settings.settings + + + + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + \ No newline at end of file diff --git a/GoToSleep/GoToSleep.resx b/GoToSleep/GoToSleep.resx index 8b2ff64..53a33d2 100644 --- a/GoToSleep/GoToSleep.resx +++ b/GoToSleep/GoToSleep.resx @@ -117,4 +117,81 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAgBAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///////////////wAAAP8AAAD///////////////////////////8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA//////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP////////////// + ////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD///////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////////////wAAAP8AAAD///////// + //8AAAD/AAAA/wAAAP///////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////////////AAAA/wAA + AP//////AAAAAP//////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////////////////////wAAAAAAAAAA//////// + //8AAAD/AAAA/wAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////////////////////////////////// + //////////////////8AAAD/AAAA////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////wAAAP8AAAD/AAAA/wAA + AP///////////////////////////wAAAP8AAAD/AAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP///////////wAAAP8AAAD///////////8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD/////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////AAAA/wAAAP8AAAD///////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP////8AAAD/AAAA/wAAAP////////////////8AAAD/AAAA////////////AAAA/wAA + AP8AAAD///////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAD/AAAA/wAAAP////////////////8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + ////////////////////////AAAAAAAAAAAAAAAA//////////8AAAD/AAAA/wAAAP///////////wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA//////////8AAAD/AAAA//////////////////////////////////////8AAAD/AAAA//// + //////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD/////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD//////////////////////wAA + AP8AAAD/AAAA////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP///////////wAAAP8AAAD/AAAA////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////wAAAP8AAAD/AAAA////////////AAAA/wAA + AP8AAAD/AAAA/////////////////wAAAP8AAAD///////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////wAAAP8AAAD/AAAA//// + ////////////////////////////////////////AAAA/wAAAP8AAAD///////////8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////AAAA/wAA + AP8AAAD/////////////////AAAA/wAAAP8AAAD/AAAA/wAAAP//////AAAA/wAAAP8AAAD//////wAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD/////AAAA/wAAAP8AAAD///////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP//////////AAAA/wAAAP8AAAD///////////////////////////8AAAD/AAAA/wAA + AP8AAAD/AAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////AAAA/wAAAP8AAAD//////wAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////////////AAAA/wAAAP8AAAD//////wAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP////////////////////////////////////8AAAAA////////////////AAAA/wAA + AP8AAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA/////wAAAP8AAAD/AAAA//////////////////////////////////// + ////////AAAA/wAAAP///////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////////////wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD//////////////////////////////////////////////////////////wAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + \ No newline at end of file diff --git a/GoToSleep/Properties/Settings.Designer.cs b/GoToSleep/Properties/Settings.Designer.cs new file mode 100644 index 0000000..e005509 --- /dev/null +++ b/GoToSleep/Properties/Settings.Designer.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace GoToSleep.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "18.9.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + } +} diff --git a/GoToSleep/Properties/Settings.settings b/GoToSleep/Properties/Settings.settings new file mode 100644 index 0000000..049245f --- /dev/null +++ b/GoToSleep/Properties/Settings.settings @@ -0,0 +1,6 @@ + + + + + + diff --git a/GoToSleep/SystemPowerManager.cs b/GoToSleep/SystemPowerManager.cs index 996f2cb..52c64ed 100644 --- a/GoToSleep/SystemPowerManager.cs +++ b/GoToSleep/SystemPowerManager.cs @@ -64,7 +64,17 @@ namespace GoToSleep timeString = prepareTimeString(timeString); //var tmp = parser.Parse(timeString); - var results = DateTimeRecognizer.RecognizeDateTime(timeString, CultureInfo.CurrentCulture.ToString()); + List? results = null; + + try + { + results = DateTimeRecognizer.RecognizeDateTime(timeString, CultureInfo.CurrentCulture.ToString()); + } + catch + { + //results remain null, will go into fallback + } + if (results == null || results.Count == 0) { results = DateTimeRecognizer.RecognizeDateTime(timeString, Culture.English); @@ -73,7 +83,6 @@ namespace GoToSleep throw new ArgumentException(); } } - result = DateTime.Parse((results[0].Resolution["values"] as List>)[0]["value"]); } diff --git a/GoToSleep/icon.ico b/GoToSleep/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..2df15dd9fb9e7e78f3883a40bb1e2b1c8e3f50f9 GIT binary patch literal 4286 zcmeH@L2kn^3a~8Ek37(l%T4$+}Y+rknCRYkHGPwzS|YC#_a@n5$q*LwabFVR)uDuINrlWc)5XdBO*EJO8N% z_{v0u0cmC0UN_z{Yqek7aF%~xth-O)GwvSqzvkW8aWwkY? z*L4rwn4_lm>ABXC{XPB)Z}D5