home *** CD-ROM | disk | FTP | other *** search
- '··············································································
- ' LockOUT v1.04 © 1996 Cadenza Software - Written by Matthew Bacon
- ' HiSoft BASIC ACC Toolkit - Written by Dave Nutkins
- ' (c) HiSoft 1991
- '··············································································
- ' Include C:\LOCKOUT\ACCTBOX.T
-
- DEFINT a-z
- '$option j20,y
- '$include C:\LOCKOUT\LOCKOUT.BH
-
- ' ** The main program loop **
-
- ON ERROR GOTO ERROR_HANDLER
- ' Register .ACC
- DIM Mess(7)
- id=PEEKW(PEEKL(GB+4)+4)
- mpos=menu_register(id," LockOUT v1.04")
-
- START_HANDLER:
- DO
- evnt_mesag VARPTR(mess(0))
- do_message
- LOOP
-
- ' ** End of main program loop **
-
- SUB AccOpened
- STATIC x,y,w,h,but,resorce_loaded
-
- ' If the .ACC has not been loaded before, then load .RSC
- IF resorce_loaded=0 THEN
- MOUSE 2
- ' If resource file does not exist, then display alert message
- IF rsrc_load(CURDIR$+"\LOCKOUT.RSC")=0 THEN
- junk=form_alert(1,"[1][ Error while loading | resource file. | ][ Abort ]")
- MOUSE 0:resorce_loaded=0:EXIT SUB
- END IF
- MOUSE 0
- END IF
-
- ' Display lock dialogue box
- SelectTree FORM_LOCK
- Sette_ptext ThePassword,""
-
- form_center tree&,x,y,w,h
- form_dial FMD_START,0,0,0,0,x,y,w,h
- junk=objc_draw(tree&,0,10,x,y,w,h)
- but=form_do(tree&,ThePassword) AND &h7fff
-
- IF Getob_type(but)=G_BUTTON THEN
- Exclob_state but,mask_selected
- END IF
-
- DO
- SELECT CASE but
- ' If LockOUT button was pressed, read password given
- CASE LockOUT
- ' Call the sub-program to unlock password
- CALL Locked(Gette_ptext$(ThePassword))
- form_dial FMD_FINISH,0,0,0,0,x,y,w,h
- EXIT SUB
- ' If Cancel button was pressed, quit
- CASE Cancel
- form_dial FMD_FINISH,0,0,0,0,x,y,w,h
- EXIT SUB
- END SELECT
- LOOP
- END SUB
-
- ' Sub-program for when the computer has been locked by a password
- SUB Locked(Password$)
- STATIC x,y,w,h,but
-
- SelectTree FORM_LOCKED
- Sette_ptext Password,""
-
- form_center tree&,x,y,w,h
- form_dial FMD_START,0,0,0,0,x,y,w,h
- junk=objc_draw(tree&,0,10,x,y,w,h)
- Try_Again:
- but=form_do(tree&,Password) AND &h7fff
-
- IF Getob_type(but)=G_BUTTON THEN
- Exclob_state but,mask_selected
- END IF
-
- DO
- SELECT CASE but
- ' If OK button was pressed, read password given
- CASE OK
- ' Was the password given correct
- IF Gette_ptext$(Password)=Password$ THEN
- ' Yes, then quit
- form_dial FMD_FINISH,0,0,0,0,x,y,w,h
- EXIT SUB
- ELSE
- ' No, try again
- Sette_ptext Password,""
- junk=objc_draw(tree&,Password,10,x,y,w,h)
- junk=objc_draw(tree&,OK,10,x,y,w,h)
- GOTO Try_Again
- END IF
- END SELECT
- LOOP
- END SUB
-
- ' Error Sub-programs ···························································
-
- ' Find out error occurred
- ERROR_HANDLER:
- ' Display alert and abort to main loop
- JUNK=form_alert(1,"[1][ An ERROR"+STR$(ERR)+" has occurred ! | Abort to main program | loop. | ][ Abort ]")
- SelectTree FORM_LOCK
- ' Go back to main loop
- ON ERROR GOTO ERROR_HANDLER
- GOTO START_HANDLER
-
- ' End ··········································································
-