How it currently works:
You set a stopwatch once, and can never really stop it
Only restart it and see how much time has passed
This is not perfect:
because sometimes you want to track the time it takes to complete some task, but you could be taking pauses while doing that task
That means that you would have to start your stopwatch, check how much time has passed once you wanna take a break and write that down
Then when you're done with your break, you'll just start the stopwatch again
This would be great already, if you didn't have to write down the time
How this should work now:
The first time you start a stopwatch, it writes the time it started at into a json file
If you pause a stopwatch, it writes the difference between that starting time and A_Now, so now there's a json property that has the time that has passed since starting to the pause
You unpause your timer by specifically using an Unpause method, that doesn't overwrite the time that has passed overall, but does overwrite the time it started at (to be able to do the math we need)
Since the collectedTime property is not empty, the stopwatch keeps adding time to that property through TimeAdd (or DateAdd, don't remember)
Once you get the passed time for the last time and decide to start a new stopwatch, you use the Start method, which differs from Unpause only by overwriting the json collectedTime property with nothing
The class should support multiple stopwatch objects (so not static anymore)
I'll have to think whether I need multiple ever, or rather how I'm going to express that with a hotkey