The following example of a notification callback shows the handling of the
userNotify(eventType: Integer; theObject: Object; eventTag: Integer; info: Any) updating; begin if eventTag = BackupComplete then finalise(false /*completed ok*/); return; endif; if eventTag = BackupAbort or eventTag = BackupCancel then finalise(true /*aborted*/); return; endif; if backupCancelled then // The user has cancelled the backup, avoid processing any of // the events handled below return; endif; if eventTag = FileBackupStart then currentFile := info.DbFile; if currentFile <> null then beginNotification(currentFile, DbFile.BackupProgressEvent, Response_Continuous, BackupProgress); updateProgress("Processing file...", currentFile.name, 0); endif; elseif eventTag = FileBackupComplete then if currentFile <> null then endNotification(currentFile, DbFile.BackupProgressEvent); endif; currentFile := null; elseif eventTag = BackupProgress then if currentFile <> null then updateProgress("Processing File...", currentFile.name, info.Integer); endif; endif; end;