File:  [Coherent Logic Development] / freem_fileman / USER / DDGF.m
Revision 1.1: download - view: text, annotated - select for diffs
Mon Apr 28 14:13:19 2025 UTC (3 months ago) by snw
Branches: MAIN
CVS tags: HEAD
Restructure repository

    1: DDGF	;SFISC/MKO-FORM BUILDING TOOL ;08:38 AM  12 Aug 1994
    2: 	;;21.0;VA FileMan;;Dec 28, 1994
    3: 	;Per VHA Directive 10-93-142, this routine should not be modified.
    4: 	;
    5: 	;Program-wide variables
    6: 	; DDGFILE  = File number^File name
    7: 	; DDGFFM   = Form number^Form name
    8: 	; DDGFPG   = Page number
    9: 	; DDGFWID  = Window id for given page
   10: 	; DDGFWIDB = Window id for block displayer for a given page
   11: 	; DDGFREF  = Global reference where data is stored
   12: 	; DDGFLIM  = Boundaries within which cursor can be moved
   13: 	;            $Y1^$X1^$Y2^$X2
   14: 	; DDGFBV   = If defined, we're in the block view page
   15: 	; DDGFMSG  = Indicates there's a message on the message line.
   16: 	;
   17: 	N %,%W,%X,%Y,C,D,D0,DI,DIC,DIEQ,DIW,DIZ,DQ,I,X,Y,DIOVRD
   18: 	I '$D(DIFM) N DIFM S DIFM=1 D INIZE^DIEFU
   19: 	D ^DDGF0 G:$G(DIERR) END^DDGF0
   20: 	D SEL^DDGFFM G:$D(DDGFFM)[0 END^DDGF0
   21: 	D ALL^DDGFASUB,^DDGF1,END^DDGF0
   22: 	Q
   23: 	;
   24: REFRESH	;Repaint all windows, status line
   25: 	D REPALL^DDGLIBW(),STATUS
   26: 	Q
   27: 	;
   28: STATUS	;Paint status line
   29: 	N DX,DY,N,S
   30: 	K DDGFMSG
   31: 	S DY=IOSL-7,DX=0 X IOXY
   32: 	W $P(DDGLCLR,DDGLDEL,3)_$TR($J("",IOM-1)," ","_")
   33: 	;
   34: 	S DY=IOSL-6 X IOXY
   35: 	W "File: "_$P(DDGFFILE,U,2)_" (#"_$P(DDGFFILE,U)_")"
   36: 	I $D(DDGFBV)#2 S DX=46 X IOXY W "BLOCK VIEWER"
   37: 	W !,"Form: "_$P(DDGFFM,U,2)
   38: 	S N=$G(@DDGFREF@("F",+$G(DDGFPG)))
   39: 	W !,"Page: "_$S(N]"":$P(N,U,6)_" ("_$P(N,U,5)_")",1:""),!!!
   40: 	I $D(DDGFBV)#2 W $P(DDGLVID,DDGLDEL)_"<PF1>V=Main Screen  <PF1>H=Help"_$P(DDGLVID,DDGLDEL,10)
   41: 	E  W $P(DDGLVID,DDGLDEL)_"<PF1>Q=Quit  <PF1>E=Exit  <PF1>S=Save  <PF1>V=Block Viewer  <PF1>H=Help"_$P(DDGLVID,DDGLDEL,10)
   42: 	Q
   43: 	;
   44: MSG(M)	;Print message
   45: 	N DDGFDY,DDGFDX
   46: 	S DDGFDY=DY,DDGFDX=DX S:$D(M)[0 M=""
   47: 	S DY=IOSL-2,DX=0 X IOXY
   48: 	;
   49: 	W $E(M,1,79)_$P(DDGLCLR,DDGLDEL)
   50: 	S:M]"" DDGFMSG=1 K:M="" DDGFMSG
   51: 	S DY=DDGFDY,DX=DDGFDX X IOXY
   52: 	Q
   53: 	;
   54: RESET	;Reset terminal and cleanup
   55: 	S DDGFREF="^TMP(""DDGF"",$J)",DDGLREF="^TMP(""DDGL"",$J)"
   56: 	K DDSFILE,DDSPAGE,DDSPARM,DR
   57: 	G KILL^DDGF0

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>