I like where your thoughts are going on this. Frankly I haven't looked too much into the detail of the widget because so far it seems to me like it's still in a live brain-storming phase. I don't quite see it yet, or the use. That said, a couple years ago I used a AHK script that did much of what we're discussing (it's no longer maintained) so I kind of "get it".
I like the idea of minimizing Dan's effort, which is why I'm always bothering him with ideas about an API and automation for developers rather than hard-coding features. He really doesn't want to implement this sort of mechanics but at the same time he's always open to providing useful functionality to a wide audience while minimizing the drain on his free time. So discussions like this are healthy.
We actually could do all of this without troubling Dan at all.
Yes, the XML file is well-documented and can be modified by external processes. My .NET library (ugh, which still needs to be published a year later now...) can do this easily. But even easier, we can already use the -ts command-line switch to set the total task time. (
https://github.com/abstractspoon/ToDoList_Wiki/wiki/Command-Line#ts) This would require some finesse however since we would need to get the total time spent from the log (assuming it has all the time and that they should be the same) in order to load that value back into the task.
We can also modify the .csv that has time data. I already have code to do it.
As to TDL re-loading the tasklist if it detects a change, I believe there's a Preference to do that transparently or to prompt.
We can do Import and Export of data using built-in Plugin functionality though this isn't fully operational (at least the .NET interface isn't) and it's not documented at all. So for now this is still a work in development. But this means the tasklist can be exported to another program for maintenance and then re-imported back. All we need in addition to this is a simple mechanism to trigger the export/import without having to go through menu options.
In summary, yeah, we can do all of this ourselves already. But it would be best to work out with Dan what he really wants to do with the app first, before going too far outside of the box for a solution.
T