One way to do it is to use the file manager as I mentioned here
https://community.slickedit.com/index.php/topic,15938.msg61009.html#msg61009File menu -> file manager -> new file list - or use the fileman command. Enter the folder you want to search in. Slick will create a buffer with a list of all the files. Use right click -> "append files" to add more files to the list. Right click, select sort - select sort by date in the primary sort. Untick secondary sort then tick it again to allow secondary sort criteria if you want.
Then go to the top of the file, hold down the shift key and press down arrow until all the files you want to search in have a "right arrow" (greater than sign) at the start. Then use right click -> global find (or replace).
You can do some of it with macros as below. The second macro below generates a fileman type listing of the current workspace files. As a side effect, it generates a list of workspace files into a text file in the configuration folder (because there should be write access to this folder) called flist1.txt.
I wouldn't be surprised if there's a window/buffer leak in here somewhere - as long as you close slick every now and then it should be fine...
Once you have the date sorted fileman listing, you could use the mouse and column selection to get a list of files to search in and pass that to the find in files dialog - via a macro.
#include "slick.sh"
_command yyy() name_info(',')
{
_macro('R',1);
cd('C:\temp1');
dir("+t -d *.*");
cd('C:\temp2');
append_dir("-d *.txt *.h");
fsort("e a d d");
top_of_buffer();
}
#include "slick.sh"
_command fileman_list_workspace_files_date_sorted() name_info(',')
{
_macro('R',1);
_str flist[];
_getWorkspaceFiles(_workspace_filename, flist);
if (flist._length() == 0)
return -1;
_str tfn = _ConfigPath() :+ 'flist1.txt';
int new_wid, orig_wid;
boolean was;
if (_open_temp_view(_maybe_quote_filename(tfn), new_wid, orig_wid, '', was, true, false, 0, true) != 0)
return -2;
if ( p_buf_name != tfn ) {
_delete_temp_view(new_wid);
activate_window(orig_wid);
return -3;
}
top();
int k;
for ( k = 0; k < flist._length(); ++k ) {
insert_line(flist[k]);
}
_save_file();
close_buffer();
typeless status = edit('+futf8 +t');
if (status) {
return (status);
}
fileman_mode();
read_list(tfn);
message('Sorting...');
fsort("e a d d");
top_of_buffer();
docname('List of ' :+ _workspace_filename);
p_modify = false;
p_buf_flags = p_buf_flags|VSBUFFLAG_THROW_AWAY_CHANGES;
}