Skip to content

Commit 0f08773

Browse files
committed
Fix grammar and typos
Copilot was used for most of these changes.
1 parent 74b733b commit 0f08773

10 files changed

Lines changed: 43 additions & 43 deletions

File tree

README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Shutdown Timer Classic 🕒
22

3-
Shutdown Timer Classic is a small little Windows application that allows you to set a timer that will shutdown, restart, hibernate, sleep or lock your PC.
3+
Shutdown Timer Classic is a small Windows application that allows you to set a timer that will shut down, restart, hibernate, sleep, or lock your PC.
44

55
![Screenshot of the main menu](media/screenshots/Menu.png)
66

@@ -17,14 +17,14 @@ The Microsoft Store is the only official download that will receive automatic up
1717

1818
**Alternative**: [GitHub Releases](https://github.com/lukaslangrock/ShutdownTimerClassic/releases) or [my mirror](https://files.langrock.info/apps/ShutdownTimerClassic/).
1919

20-
These builds are provided with each stable release and include both the binaries itself for portable use and an installer. If you want to use the raw binaries themself, please extract the entire archive and keep all the files in the same folder.
20+
These builds are provided with each stable release and include both the binaries themselves for portable use and an installer. If you want to use the raw binaries themselves, please extract the entire archive and keep all the files in the same folder.
2121

22-
**Development builds**: As this is a low priority side-project of mine, releases are rare. However, the CI for this projects is set-up to produce and publish build artifacts for each new commit. These are very much development builds, they might not work correctly and they may represent features in an unfinished state, so use them at your own disgrecion (this is also why there is no link here, they are not meant for people not at all familar with software development).
22+
**Development builds**: As this is a low priority side project of mine, releases are rare. However, the CI for this project is set up to produce and publish build artifacts for each new commit. These are development builds; they might not work correctly and they may represent features in an unfinished state, so use them at your own discretion (this is also why there is no link here; they are not meant for people unfamiliar with software development).
2323

2424
# Usage ✨
2525

26-
Shutdown Timer is a very simple application hence it is easy to use.
27-
Just choose a power action from the drop-down menu and then dial in the time span you want. If the counter reaches zero the chosen power action will be executed.
26+
Shutdown Timer is a simple application, so it is easy to use.
27+
Just choose a power action from the drop-down menu and then dial in the time span you want. If the counter reaches zero, the chosen power action will be executed.
2828

2929
Upon reaching zero, the Shutdown Timer will (actually Windows will do this, Shutdown Timer just gives the command to) force close any still running applications to ensure the shutdown does not get interrupted.
3030
Therefore you may experience data loss if any application is in the process of saving or processing data when the shutdown begins.
@@ -78,19 +78,19 @@ To launch the application with additional arguments, navigate to folder where th
7878
For installations with the Installer, you should find the folder at `C:\Program Files (x86)\Lukas Langrock\Shutdown Timer Classic`.
7979
If you opted for the ZIP without an isntaller, copy **all** the files in the ZIP to any folder of your choosing and do not rename any files itself.
8080

81-
Now, right click in the explorer, select "Open in Terminal" and type `.\ShutdownTimerClassic.exe`, adding the respective arguments using their exact name and seperated by a space:
81+
Now, right click in the explorer, select "Open in Terminal" and type `.\ShutdownTimerClassic.exe`, adding the respective arguments using their exact name and separated by a space:
8282

8383
```
8484
Argument Description
8585
8686
/SetTime <time> Sets the time for the countdown. Either type in the seconds, use HH:mm:ss or HH:mm.
8787
8888
/SetAction <action> Sets the power action which will be executed after the countdown reached zero.
89-
Type in the exact name as seen in the UI (eg: Shutdown, Restart or Sleep. Do not use shutdown Reboot or SLEEP)
89+
Type in the exact name as seen in the UI (eg: Shutdown, Restart or Sleep. Do not use other variations like shutdown, Reboot, SLEEP, ...).
9090
9191
/SetMode <mode> Sets the control mode. Modes available:
92-
Prefill: Prefills settings but let user manually change them too. Timer won't start automatically.
93-
Lock: Overrides settings so the user can not change them. Timer won't start automatically.
92+
Prefill: Prefills settings but lets the user manually change them too. Timer won't start automatically.
93+
Lock: Overrides settings so the user cannot change them. Timer won't start automatically.
9494
Launch: Overrides settings and starts the timer.
9595
ForcedLaunch: Overrides settings and starts the timer. Disables all UI controls and exit dialogs.
9696
@@ -108,7 +108,7 @@ Argument Description
108108
```
109109

110110
Example: `.\ShutdownTimerClassic.exe /SetTime 01:00 /SetAction Hibernate /SetMode Launch`
111-
This command will launch launch Shutdown Timer in hibernation mode with 1 hours, 0 minutes and 0 seconds and start the countdown.
111+
This command will launch Shutdown Timer in hibernation mode with 1 hour, 0 minutes, and 0 seconds and start the countdown.
112112

113113
If you want to redistribute my executable with your own app/script you are free to do so. Please just keep it updated and mention this project somewhere in the description (ie: follow the license for this project).
114114

Structure.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ I'd recommend using **Visual Studio Community 2022** as it's the IDE I use for d
1111

1212
## Application Structure 🕸
1313

14-
The application's entry point is `Program.cs` which initializes the settings, applys CLI arguments using `ArgProcessor.cs`, and registers `Helpers/ExceptionHandler.cs` to catch unhandled or thread exceptions and then launches an instance of `Menu.cs` (or `Countdown.cs` in case the CLI args request it).
14+
The application's entry point is `Program.cs` which initializes the settings, applies CLI arguments using `ArgProcessor.cs`, and registers `Helpers/ExceptionHandler.cs` to catch unhandled or thread exceptions and then launches an instance of `Menu.cs` (or `Countdown.cs` in case the CLI args request it).
1515

1616
### Forms 🎨
1717

@@ -30,7 +30,7 @@ It will call `Helpers/ExitWindows.cs` when the timer reaches zero and uses `Help
3030

3131
**`Helpers/ArgProcessor.cs`** is responsible for reading CLI arguments and is only used by `Program.cs`
3232

33-
**`Helpers/ExceptionHandler.cs`** will gather information about the system and the application and generated a log file which it places on the user's desktop and informs them about the exception. This replaces the default .NET exception handler. It's turned off in debugging mode.
33+
**`Helpers/ExceptionHandler.cs`** will gather information about the system and the application and generates a log file that it places on the user's desktop and informs them about the exception. This replaces the default .NET exception handler. It's turned off in debugging mode.
3434

3535
**`Helpers/ExecutionState.cs`** keeps the system awake during the countdown.
3636

@@ -44,7 +44,7 @@ The settings do need to be saved to the `settings.json` file before exiting the
4444

4545
### Dependencies 📚
4646

47-
This app depends on `Microsoft.Windows.SDK.Contracts` for interacting with newer Windows API's which are otherwise only available to UWP apps and `Newtonsoft.Json` for serializing/deserializing the settings to and from the `settings.json` file.
47+
This app depends on `Microsoft.Windows.SDK.Contracts` for interacting with newer Windows APIs which are otherwise only available to UWP apps and `Newtonsoft.Json` for serializing/deserializing the settings to and from the `settings.json` file.
4848

4949
### Other files and folders 👾
5050

src/ShutdownTimer/Countdown.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ private void Countdown_Load(object sender, EventArgs e)
9292
else if (SettingsProvider.Settings.TrayIconTheme == "Dark") { lighttheme = false; }
9393
else { lighttheme = WindowsAPIs.SystemUsesLightTheme(); }
9494

95-
// When the dark theme is selected we are using the light icon to generate contrast (and vise versa), you wouldn't want a white icon on a white background.
95+
// When the dark theme is selected we are using the light icon to generate contrast (and vice versa), you wouldn't want a white icon on a white background.
9696
notifyIcon.Icon = lighttheme ? Properties.Resources.icon_dark : Properties.Resources.icon_light;
9797

9898
// Load password and set the lock state
@@ -108,7 +108,7 @@ private void Countdown_Load(object sender, EventArgs e)
108108

109109
TopMost = !SettingsProvider.Settings.DisableAlwaysOnTop;
110110

111-
// Prevent font-fallback and subsequent layout issues. This application is currently only in english and doesn't require display of non-latin chacracters.
111+
// Prevent font-fallback and subsequent layout issues. This application is currently only in English and doesn't require display of non-Latin characters.
112112
this.Font = new Font("Microsoft Sans Serif", 8.25f, FontStyle.Regular, GraphicsUnit.Point, 0);
113113

114114
if (!IsForegroundUI)
@@ -188,7 +188,7 @@ private void LockStatePictureBox_Click(object sender, EventArgs e)
188188
break;
189189

190190
case 2: // lock state 'unlocked': change lockstate to 'locked'
191-
ExceptionHandler.Log("lockState = unlocked, asking user for confirmation lock the UI");
191+
ExceptionHandler.Log("lockState = unlocked, asking user for confirmation to lock the UI");
192192
DialogResult result = MessageBox.Show("Would you like to re-lock the countdown?", "Password Protection", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
193193
if (result == DialogResult.Yes)
194194
{
@@ -281,7 +281,7 @@ private void ExitApplication()
281281
ExceptionHandler.Log("Stopping timer");
282282
Timer.Pause();
283283
ExceptionHandler.Log("Confirming application halt to user");
284-
SendNotification("Your timer was canceled successfully!\nThe application will now close"); // Show windows toast notification as confirmation
284+
SendNotification("Your timer was canceled successfully!\nThe application will now close."); // Show windows toast notification as confirmation
285285
ExceptionHandler.Log("Saving all settings");
286286
SaveSettings();
287287
ExceptionHandler.Log("Exiting...");
@@ -536,7 +536,7 @@ private bool UnlockUIByPassword(bool reasonBecauseOfAction = false)
536536
}
537537

538538
/// <summary>
539-
/// Sends a toast notification (or trymenu balloontip on legacy systems) to the user, unless it was disabled in settings
539+
/// Sends a toast notification (or tray menu balloon tip on legacy systems) to the user, unless it was disabled in settings
540540
/// </summary>
541541
/// <param name="message">Message content to be displayed in notification</param>
542542
private void SendNotification(string message)

src/ShutdownTimer/Helpers/ArgProcessor.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ private static void ReadArgs(string[] args)
3030
{
3131
ExceptionHandler.Log("Reading args...");
3232

33-
//Control Modes:
34-
//Prefill: Prefills settings but let user manually change them too. Timer won't start automatically.
35-
//Lock: Overrides settings so the user can not change them. Timer won't start automatically.
36-
//Launch: Overrides settings and starts the timer.
37-
//ForcedLaunch: Overrides settings and starts the timer. Disables all UI controls and exit dialogs.
33+
// Control Modes:
34+
// Prefill: Prefills settings but lets the user manually change them too. Timer won't start automatically.
35+
// Lock: Overrides settings so the user cannot change them. Timer won't start automatically.
36+
// Launch: Overrides settings and starts the timer.
37+
// ForcedLaunch: Overrides settings and starts the timer. Disables all UI controls and exit dialogs.
3838

3939
// Read args and do some processing
4040
for (var i = 0; i < args.Length; i++)
@@ -97,7 +97,7 @@ private static void ExportTimeToInt()
9797
switch (count)
9898
{
9999
case 0:
100-
ExceptionHandler.Log("Invalid time args");
100+
ExceptionHandler.Log("Invalid time args.");
101101
break;
102102

103103
case 1:

src/ShutdownTimer/Helpers/Numerics.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ public static string AddZeros(int input)
8080
}
8181

8282
/// <summary>
83-
/// determine if a given set of hours, minutes, and seconds regards a time of the current day or the next day
83+
/// Determine if a given set of hours, minutes, and seconds regards a time of the current day or the next day
8484
/// </summary>
8585
/// <returns>true if today, false if tomorrow</returns>
8686
public static bool TodayOrTomorrow(int hours, int minutes, int seconds)

src/ShutdownTimer/Helpers/Settings.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public static void Load()
5353
Settings = new SettingsData();
5454
CheckSettings();
5555
SettingsLoaded = true;
56-
ExceptionHandler.Log("Successfully created new tempoarary settings object in application memory");
56+
ExceptionHandler.Log("Successfully created new temporary settings object in application memory");
5757
}
5858
}
5959

@@ -73,7 +73,7 @@ private static void CheckSettings()
7373
//
7474
String[] importVerString = Settings.AppVersion.Split('.');
7575
int[] importVer = new int[] { 0, 0, 0, 0 }; // defaults in case string is corrupted and does not contain 4 numbers
76-
for (int i = 0; i < 4; i++) // read version number into useable integer array
76+
for (int i = 0; i < 4; i++) // read version number into usable integer array
7777
{
7878
try { importVer[i] = Convert.ToInt32(importVerString[i]); }
7979
catch { ExceptionHandler.Log("Part " + (i + 1).ToString() + " of settings version number unreadable '" + importVerString[i] + "' filling with 0"); }

src/ShutdownTimer/InputBox.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ private void InputBox_Load(object sender, EventArgs e)
2424
messageLabel.Text = Message;
2525
if (PasswordMode) { inputTextBox.PasswordChar = Convert.ToChar("*"); }
2626

27-
// Prevent font-fallback and subsequent layout issues. This application is currently only in english and doesn't require display of non-latin chacracters.
27+
// Prevent font-fallback and subsequent layout issues. This application is currently only in English and doesn't require display of non-Latin characters.
2828
this.Font = new Font("Microsoft Sans Serif", 8.25f, FontStyle.Regular, GraphicsUnit.Point, 0);
2929
}
3030

0 commit comments

Comments
 (0)