Currently the FileManager plugin depends on the old, obsoleted gamin library, [1] which is last released in 2006. Please port the directory monitor feature to newer technologies, e.g. GFileMonitor. [2]
[1] https://git.gnome.org/browse/gamin
[2] https://developer.gnome.org/gio/stable/GFileMonitor.html
See \src\plugins\contrib\FileManager\FileManager_wx30-unix.cbp for :
<add option="<code>pkg-config --cflags gamin</code>">
<add option="<code>pkg-config --libs gamin</code>"></add></add>
There is no gamin library for MacOS and as such the file manager plugin is not available on the Mac.
If C::B moved to C++17 then the file monitoring can be done with the C++17 std::filesystem library. An example of this can be seen in the following article:
https://solarianprogrammer.com/2019/01/13/cpp-17-filesystem-write-file-watcher-monitor/
Or we use https://docs.wxwidgets.org/trunk/classwx_file_system_watcher.html
but this is not well supported in mac OS
From your link, we can easily replicate this in wxWidgets with timer. The question is if we want this....
I think the warning comments in https://docs.wxwidgets.org/trunk/classwx_file_system_watcher.html for not detecting file changes in OSX are wrong if we use https://docs.wxwidgets.org/trunk/classwx_file_system_watcher.html#a88b7b3586065126dca5d5d57b080fa94 Looking at the wx code it seems to be implemented with this function....
Find attached a patch using wxFileSystemWatcher to replace our proprietary DirMonitor.
That one looks good to me. Thank you!
Applied patch by danselmi in [r13518]. Thank you!
Related
Commit: [r13518]