Code Snippet
**************************************************
*-- Class: cussqlthermo
*-- ParentClass:
*-- BaseClass: line
*---Created by: Mike Yearwood
*-- Time Stamp: 10/18/05 09:07:11 PM
*
DEFINE CLASS CusSqlThermo AS LINE
*-- Holds SET TALK setting at initialization.
PROTECTED cOldSetTalk
cOldSetTalk = ""
*-- Holds SET NOTIFY setting at initialization.
PROTECTED cOldSetNotify
cOldSetNotify = ""
*-- Holds the output window at initialization.
PROTECTED cOldOutputWindow
cOldOutputWindow = ""
*-- Holds the name of the temporary output window.
PROTECTED cNewOutputWindow
cNewOutputWindow = ""
*----Holds Escape settings
PROTECTED cOnEscape
cOnEscape= ""
PROTECTED cSetEscape
cSetEscape = ""
NAME = "CusSqlThermo"
PROCEDURE DESTROY
SET TALK OFF
LOCAL ;
lcNewOutputWindow, ;
lcOldOutputWindow, ;
lcOldSetNotify, ;
lcOldSetTalk, lcOnEscape, lcSetEscape
WITH THIS
lcNewOutputWindow = .cNewOutputWindow
lcOldOutputWindow = .cOldOutputWindow
lcOldSetNotify = .cOldSetNotify
lcOldSetTalk = .cOldSetTalk
lcOnEscape = .cOnEscape
lcSetEscape = .cSetEscape
ENDWITH
IF VERSION(5)>=700
SET NOTIFY &lcOldSetNotify
ENDIF
SET TALK &lcOldOutputWindow
RELEASE WINDOWS &lcNewOutputWindow
SET TALK &lcOldSetTalk
* Now restore our settings
ON ESCAPE &lcOnEscape
IF m.lcSetEscape = "OFF"
SET ESCAPE OFF
ELSE
SET ESCAPE ON
ENDIF
ENDPROC
PROCEDURE INIT
*Class that activates SQL thermometer bar during init
*and restores altered settings during destroy.
WITH THIS
.cOldSetTalk = SET("TALK")
SET TALK OFF
.cOldOutputWindow = SET("TALK",1)
.cNewOutputWindow = "SQLThermo" + SYS(2015)
.cOnEscape = ON('ESCAPE')
.cSetEscape = SET('ESCAPE')
SET ESCAPE ON
ON ESCAPE plStop = YesNo("Are you sure you want to stop ")
LOCAL lcNewOutputWindow
lcNewOutputWindow = .cNewOutputWindow
DEFINE WINDOW &lcNewOutputWindow. FROM -1000,-1000 TO -500,-500
ACTIVATE WINDOW &lcNewOutputWindow. IN SCREEN
SET TALK WINDOW &lcNewOutputWindow
IF VERSION(5)>=700
.cOldSetNotify = SET("NOTIFY")
SET NOTIFY ON
ENDIF
ENDWITH
SET TALK ON
RETURN .T.
ENDPROC
ENDDEFINE
*