I have a problem that I want a dialog box that uses the 'Cancel' button for something other than cancelling. I just discovered that if the user has just entered characters into an edit_field, then presses the 'Cancel' button, the edited field value is not committed (i.e. not assigned to the corresponding property in the property table). Anybody know how to force the issue?
If not, I'd like to propose a feature request for an option to have the cancel button be treated the same as the 'OK' button. Actually better still would be an option to omit both the OK & Cancel buttons entirely so all buttons can be handled as desired. As it stands, even ignoring the cancel-commit issue, I usually have some buttons in the accessory view and some masquerading as OK & Cancel. Really, when one is using a dialog box as a main plugin app UI - the whole OK/Cancel/Accessory paradigm doesn't really apply - its not a simple confirmation prompt...
Although a more robust solution that includes consistency between Mac & WIndows would be my first choice, this particular problem can be solved by setting immediate = true, then saving the value explicitly in the validate handler.