Note that there are some explanatory texts on larger screens.

plurals
  1. USAnagoge
    primarykey
    data
    text
    plurals
    1. COSee my question - If the user navigates away from that directory using backspace and you set the .Root back to the original directory, the directory displayed does not change. It looks like .Root is meant to define the root of the shell namespace, not the current directory. The only way I found to set the current directory is to use a connected TShellTreeView.Path or hack the TShellListView source - neither off which are ideal.
      singulars
    2. COI like your approach to the problem. The two critical parts to me were how the dates can be operated on arithmetically to intersect them and how you separated the date range into individual days to process them. That and assuming no overlap in the rules made things easier, since you didn't have to have a data structure to keep track of the remaining slices of the date range. I ran a few tests on it, and after studying the code for a bit, the approach works well. I did add code for the real-world complexities (multiple rule sets, handling holidays, a few exceptions to the rules, etc.).
      singulars
    3. COI didn't see any particular routines in DateUtils that looked useful to intersect/slice date ranges, or similar things. If anyone knows of any particular RTL or third party routines, I'm all ears. I'm not a Delphi expert, so I'm very likely missing something. I think I can assume the slices to subtract out don't intersect each other (if I define the rules correctly), which seems to simplify the implementation some.
      singulars
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload