Sequencers
Marco Ciot
TYPE CloseNotifier = POINTER TO RECORD (Sequencers.Notifier) END;
PROCEDURE (n: CloseNotifier) Notify (VAR msg: Sequencers.Message); VAR res: INTEGER; BEGIN WITH | msg: Sequencers.CloseMsg DO Dialog.Beep; Dialog.GetOK("#Mondig:ATTENTION: Exit will stop data recording!!! Stop anyway? ", "", "", "", {Dialog.yes, Dialog.no, Dialog.cancel}, res); IF ~(res = Dialog.yes) THEN msg.sticky := TRUE; END; ELSE END; END Notify;
PROCEDURE MakeSticky*; VAR n: CloseNotifier; BEGIN IF stickyDialog = NIL THEN HostWindows.dir.minimized := TRUE; HostWindows.dir.minimized := FALSE; HostWindows.dir.l := 1100; HostWindows.dir.t := 600; HostWindows.dir.r := 1400; HostWindows.dir.b := 900; StdApi.OpenAuxDialog('Mondata/Rsrc/HPM-Tool', '#Mondata:StorageForwarder', stickyDialog); NEW(n); stickyDialog.Domain().GetSequencer()(Sequencers.Sequencer).InstallNotifier(n); END; END MakeSticky;