I see that TSaveDialog TypeChange event not firing bug was fixed. Thanks!
https://bugs.freepascal.org/view.php?id=36024However, I have noticed a few remaining issues:
1. In Windows changing the type automatically changes the filename. Should this be the default behavior on Cocoa as well?
If not, two workarounds come to mind. One, suppress the Cocoa overwrite prompt, and check for an existing file after calling Execute, if so, display your own overwrite prompt. Two, use the TypeChange event to change the displayed file name. However:
2. Setting Options = [] does not suppress the overwrite prompt, so if I implement my own overwrite prompt, after calling Execute, sometimes the user gets two prompts.
3. The FilterIndex reports a seemingly arbitrary index instead if the correct one. This makes it impossible to change the file name in the TypeChange event so it has the correct extension.
I get the same behavior in current release, fixes, and trunk.
I have attached an example application, and would appreciate if anyone can confirm the behavior.
Thanks,
VTwin