White-Tiger / T-Clock

Highly configurable Windows taskbar clock
1.73k stars 168 forks source link

Feature request: Alarm clock list and mute all #125

Open njorder opened 6 years ago

njorder commented 6 years ago

Feature request:

I'm a long time T-Clock user. But for it being a taskbar clock, I find the alarm settings somewhat lacking in usability/features.

I want to set up a long list of alarms at specific times, to play a sound without popup. Everything I want is doable, but it's cumbersome to edit.

The following features would be an improvement imo :

  1. List (datagrid style) with all alarms. Enable/disable checkbox.
  2. Mute all or enable/disable all checkbox.
  3. Duplicate feature, duplicating last or currently highlighted alarm to new one. Saves lot of editing for setting up multiple alarms.

Btw, are alarms accessible for editing from anywhere outside the GUI?

White-Tiger commented 6 years ago

well... it has been on my todo for quite some time now. I've actually got a partial implementation of a list but it isn't as easy as it sounds. (because I wanted to have everything editable inline... but there are "too many" settings) "Mute all" isn't on my list though.. what is it supposed to do? or rather, why would one want to have it?

About external editing, well you could try to edit the settings directly..

16

Be aware though, that deleting an alarm requires reordering of all alarms that follow.. and there's a counter about how many exist.

njorder commented 6 years ago

Personally I use repeating alarms, like every 30min, when I do financial trading and need to check the charts before every bar close. This is more like a timer, but it shouldn't be referenced to clicking a start button, but to the hour. This could be set up with multiple alarms, or with a "repeating alarms" feature that sets a repeating time duration, referenced to the top of the hour, with an offset. So (5, -1) would beep at 0004, 0009, 0014, etc.

The mute all is useful/needed to mute any such frequent set of alarms (if >1) at various times when you don't want them active.

Yes, I can see the width of the Properties dialog is probably a bit too limited for an alarm grid. If so, then I think a popup window would be acceptable. Or maybe it could work by compressing the column widths/headings a bit.

Here I mocked up a draft of what I'm thinking: https://i.imgur.com/99Dz0pq.png

White-Tiger commented 6 years ago

Well.. my WIP looked like this: shot01463

Note that I didn't differentiate whether or not an alarm repeats daily, weekly, weekdays etc. or once every X minutes. The time field also adjusts based on that.. either a fixed time, or some relative value The "edit" button is just to have a full-blown dialog for editing.. I try to get everything inline though. (and it serves as a fall-back for someone who can only use the keyboard etc.)

njorder commented 6 years ago

I think you have a good idea there, so this could be a really great update.

"The time field also adjusts based on that.. either a fixed time, or some relative value"

I can't see exactly how you plan the editing of for example this time field, but in general I think it's important that number of clicks is minimized to every extent possible. Such that adding, enable/disable, etc is quick and effortless. For example, editing the time field should be as quickly as clicking the cell, type four numbers and enter. That should give a HH:mm alarm. Likely 99% of alarms are in this format, so if one needs seconds, that could require an edit dialog, or in my personal preference, I would have made the format 0600.45 to mean 06:00:45. Choice of Action and Repeat could on default duplicate last alarm, or selected alarm. In this way if I were to throw out 5 alarms it should take me just the minimum amount of time.

I think Days needs to be a field. Although personally I don't use that often I think many people would, and it's kind of a basic required field of an alarm. A simple cell taking a 1-to-7-digit number entry is likely understandable enough.

I'd prefer Blink to be on by default, and Message window off, as it's a bit intrusive. But that's perhaps just my personal view. In any case if it follows last/selected it shouldn't make so much of a difference what the default is.

As for the window, I would suggest to make it an individual window. Will give you more freedom. I don't see why this needs to be part of the Properties window. This is already how the Timers window shows, so it would be fine for both of them to have their own windows imo. Also it would be nice if a single left click (or right click) on their respective menu titles would open the Timers and Alarms window directly. Saves a click and a mouse movement.

..Not sure what you meant by "relative value". If you meant something like I suggested earlier, maybe I'd have some comment on that if you describe how you thought to solve it.

White-Tiger commented 6 years ago

well... most of the implementation isn't there... which is also the reason why the "action" field is currently only a file browse input as a prototype.. lacking the "test" button and everything else like: repeat, chime hour etc.

It's in fact not easy to have a simple list, yet powerful editing... which is why one of my alternative ideas is to use the "edit" button to display a fully functional editing dialog, while the list serves for information and quick editing... It's been a while since I've worked on it, so I've actually forgotten what to do with it or how far I've been.. That said, I guess most editing won't be as inline as shown above, but display a larger "popup" that includes all those options. (not a real popup but rather one that hosts all required fields / controls for setup)

The only reason why "Options.exe" exists, is to host update checking and also to host options later on.. so that the options dialog may be translated and may include images etc. Because it wouldn't bloat the app itself, only when someone configures something which only then adds temporarily stress on the PC (memory, CPU etc.) This also means the size might change.. especially re-sizeable.. but that was beyond the scope of the alarm list (which by itself was mainly done for the mouse input to simplify that... and it's way easier to implement there)

Anyway... just because I'd like to have it that way, doesn't mean it'll happen soon.. (or ever) I'm also not sure about your “type four numbers and enter” as it might conflict with the UI... and focus is UI input, not console input. What it can do is likely way to complex for just a few numbers.