CrossHairs

100 REMark $$stak=384
110 REMark $$heap=384
120 REMark $$chan=3
130 :
140 REMark       CrossHairs
150 REMark ©PWitte March 26th 2000
160 REMark         V 0.00
170 REMark        Freeware
180 :
190 REMark     Click for full size!
200 :
210 REMark For details of use click here
220 c = FOPEN("con"): ERT c
230 xs% = SCR_XLIM(#c): ys% = SCR_YLIM(#c)
240 WINDOW#c; xs%, ys%, 0, 0
250 OVER#c; -1: INK#c; 7
260 :
270 RPTR#c; lx%, ly%, 9, s%, xr%, yr%, k$
280 CrossHairs lx%, ly%
290 toggle% = 0
300 :
310 REPeat main
320  RPTR#c; xp%, yp%, 9, s%, xr%, yr%, k$
330  k% = CODE(k$): IF k% = 27 OR k% = 2: EXIT main
340  CrossHairs lx%, ly%
350  CrossHairs xp%, yp%
360  lx% = xp%: ly% = yp%
370 :
380  IF k% = 1 THEN
390   IF toggle% = 0 THEN
400    toggle% = 1
410    dx% = xp%: dy% = yp%
420    Displ dx%, dy%, xp%, yp%
430    nx% = xp%: ny% = yp%
440   ELSE
450    toggle% = 0
460    Displ dx%, dy%, nx%, ny%
470   END IF
480  ELSE
490   IF toggle% = 1 THEN
500    Displ dx%, dy%, nx%, ny%
510    Displ dx%, dy%, xp%, yp%
520    nx% = xp%: ny% = yp%
530   END IF
540  END IF
550 END REPeat main
560 :
570 DEFine PROCedure CrossHairs(x%, y%)
580 BLOCK#c; xs%, 1, 0, y%, 7
590 BLOCK#c; 1, ys%, x%, 0, 7
600 END DEFine CrossHairs
610 :
620 DEFine PROCedure Displ(px%, py%, nx%, ny%)
630 LOCal x%, y%, l%, s$
640 s$ = ' ' & nx% & '/' & ny% & ' ': l% = LEN(s$) * 6
650 IF (px% + l%) > xs%: x% = px% - l%: ELSE : x% = px%
660 IF (py% - 12) < 0: y% = py% + 2: ELSE : y% = py% - 12
670 BLOCK#c; l% - 8, 10, x% + 4, y%, 7
680 CURSOR#c; x%, y%: PRINT#c; s$;
690 END DEFine Displ
700 :
  
Generated with sb2htm on 2019 Mar 13
©pjwitte March 2oi9