The function exit-dialog
is the means to successfully return a value from the current dialog. Hence, it might be called from an
OK
button so that pressing the button would cause the dialog to return successfully, while the
Cancel
button would call the counterpart function abort-dialog.
If there is no current dialog then exit-dialog
does nothing and returns nil
. If there is a current dialog then exit-dialog
either returns non-nil or does a non-local exit. Therefore code that depends on exit-dialog
returning must be written carefully - see the discussion under abort-dialog for details.
(capi:display-dialog
(capi:make-container
(make-instance 'capi:text-input-pane
:callback-type :data
:callback 'capi:exit-dialog)
:title "Test Dialog"))
(example-edit-file "capi/dialogs/simple-dialog")
CAPI User Guide and Reference Manual (Macintosh version) - 3 Aug 2017