Annotation of freem_fileman/DDGF.m, revision 1.1.1.1

1.1       snw         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>