[613] | 1 | DDGF4 ;SFISC/MKO-ACTIONS AFTER BLOCK SELECTION ;02:49 PM 12 Oct 1994
|
---|
| 2 | ;;22.0;VA FileMan;;Mar 30, 1999
|
---|
| 3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | ;Input:
|
---|
| 5 | ; B = Block number
|
---|
| 6 | ; C = Block name
|
---|
| 7 | ; C1 = Block $Y
|
---|
| 8 | ; C2 = Block $X1
|
---|
| 9 | ; C3 = Block $X2
|
---|
| 10 | ; DDGFHDR = 1, if block is immobile (header block)
|
---|
| 11 | ;
|
---|
| 12 | N DDGFE
|
---|
| 13 | S:'$G(DDGFHDR) DDGFHDR=0
|
---|
| 14 | D PAINTS
|
---|
| 15 | ;
|
---|
| 16 | S DDGFE=0 F S Y=$$READ W:$T(@Y)="" $C(7) D:$T(@Y)]"" @Y Q:DDGFE
|
---|
| 17 | D CLEANUP
|
---|
| 18 | Q
|
---|
| 19 | ;
|
---|
| 20 | LNU Q:C1'>$P(DDGFLIM,U)!DDGFHDR
|
---|
| 21 | D REDRAW
|
---|
| 22 | S C1=C1-1,DY=DY-1
|
---|
| 23 | D PAINTS
|
---|
| 24 | Q
|
---|
| 25 | LND Q:C1'<$P(DDGFLIM,U,3)!DDGFHDR
|
---|
| 26 | D REDRAW
|
---|
| 27 | S C1=C1+1,DY=DY+1
|
---|
| 28 | D PAINTS
|
---|
| 29 | Q
|
---|
| 30 | CHR Q:C2'<$P(DDGFLIM,U,4)!DDGFHDR
|
---|
| 31 | D REDRAW
|
---|
| 32 | S C2=C2+1,DX=DX+1
|
---|
| 33 | D PAINTS
|
---|
| 34 | Q
|
---|
| 35 | CHL Q:C2'>$P(DDGFLIM,U,2)!DDGFHDR
|
---|
| 36 | D REDRAW
|
---|
| 37 | S C2=C2-1,DX=DX-1
|
---|
| 38 | D PAINTS
|
---|
| 39 | Q
|
---|
| 40 | TBR N X
|
---|
| 41 | Q:C2+$L(C)>$P(DDGFLIM,U,4)!DDGFHDR
|
---|
| 42 | D REDRAW
|
---|
| 43 | S X=$$MIN(5,$P(DDGFLIM,U,4)-C2-$L(C)+1)
|
---|
| 44 | S C2=C2+X,DX=DX+X
|
---|
| 45 | D PAINTS
|
---|
| 46 | Q
|
---|
| 47 | TBL N X
|
---|
| 48 | Q:C2'>$P(DDGFLIM,U,2)!DDGFHDR
|
---|
| 49 | D REDRAW
|
---|
| 50 | S X=$$MIN(5,C2-$P(DDGFLIM,U,2))
|
---|
| 51 | S C2=C2-X,DX=DX-X
|
---|
| 52 | D PAINTS
|
---|
| 53 | Q
|
---|
| 54 | SCT Q:C1'>$P(DDGFLIM,U)!DDGFHDR
|
---|
| 55 | D REDRAW
|
---|
| 56 | S (C1,DY)=$P(DDGFLIM,U)
|
---|
| 57 | D PAINTS
|
---|
| 58 | Q
|
---|
| 59 | SCB Q:C1'<$P(DDGFLIM,U,3)!DDGFHDR
|
---|
| 60 | D REDRAW
|
---|
| 61 | S (C1,DY)=$P(DDGFLIM,U,3)
|
---|
| 62 | D PAINTS
|
---|
| 63 | Q
|
---|
| 64 | SCR N X
|
---|
| 65 | Q:C2+$L(C)>$P(DDGFLIM,U,4)!DDGFHDR
|
---|
| 66 | D REDRAW
|
---|
| 67 | S X=$P(DDGFLIM,U,4)-C2-$L(C)+1
|
---|
| 68 | S C2=C2+X,DX=DX+X
|
---|
| 69 | D PAINTS
|
---|
| 70 | Q
|
---|
| 71 | SCL N X
|
---|
| 72 | Q:C2'>$P(DDGFLIM,U,2)!DDGFHDR
|
---|
| 73 | D REDRAW
|
---|
| 74 | S X=C2-$P(DDGFLIM,U,2)
|
---|
| 75 | S C2=C2-X,DX=DX-X
|
---|
| 76 | D PAINTS
|
---|
| 77 | Q
|
---|
| 78 | ;
|
---|
| 79 | EDIT ;Edit block parameters
|
---|
| 80 | G:'$G(DDGFHDR) EDIT^DDGFBK
|
---|
| 81 | G EDIT^DDGFHBK
|
---|
| 82 | ;
|
---|
| 83 | REORDER ;Reorder fields on block
|
---|
| 84 | D EN^DDGFORD(B)
|
---|
| 85 | Q
|
---|
| 86 | ;
|
---|
| 87 | TO ;Time-out
|
---|
| 88 | W $C(7)
|
---|
| 89 | G DESELECT
|
---|
| 90 | ;
|
---|
| 91 | DESELECT ;
|
---|
| 92 | S DDGFE=1
|
---|
| 93 | Q
|
---|
| 94 | ;
|
---|
| 95 | CLEANUP ;
|
---|
| 96 | I '$G(DDGFBDEL) D
|
---|
| 97 | . S C3=C2+$L(C)-1
|
---|
| 98 | . S @DDGFREF@("F",DDGFPG,B)=C1_U_C2_U_C3_U_C_U_1,DDGFCHG=1
|
---|
| 99 | . S @DDGFREF@("BKRC",DDGFWIDB,C1,C2,C3,B)=$S($G(DDGFHDR):"H",1:"")
|
---|
| 100 | ;
|
---|
| 101 | I '$G(DDGFEBV),'$G(DDGFBDEL) D
|
---|
| 102 | . D WRITE^DDGLIBW(DDGFWIDB,C,C1-$P(DDGFLIM,U),C2-$P(DDGFLIM,U,2))
|
---|
| 103 | . X IOXY
|
---|
| 104 | K DDGFHDR,DDGFBDEL
|
---|
| 105 | Q
|
---|
| 106 | ;
|
---|
| 107 | RC(DDGFY,DDGFX) ;Update status line, reset DX and DY, move cursor
|
---|
| 108 | N S
|
---|
| 109 | I DDGFR D
|
---|
| 110 | . S DY=IOSL-6,DX=IOM-9,S="R"_(DDGFY+1)_",C"_(DDGFX+1)
|
---|
| 111 | . X IOXY W S_$J("",7-$L(S))
|
---|
| 112 | S DY=DDGFY,DX=DDGFX X IOXY
|
---|
| 113 | Q
|
---|
| 114 | ;
|
---|
| 115 | REDRAW ;
|
---|
| 116 | D REPAINT^DDGLIBW(DDGFWIDB,(C1-$P(DDGFLIM,U))_U_(C2-$P(DDGFLIM,U,2))_U_1_U_$$MIN($L(C),$P(DDGFLIM,U,4)-C2+1))
|
---|
| 117 | Q
|
---|
| 118 | ;
|
---|
| 119 | PAINTS ;
|
---|
| 120 | N Y,X
|
---|
| 121 | S Y=DY,X=DX
|
---|
| 122 | S DY=C1,DX=C2 X IOXY
|
---|
| 123 | W $P(DDGLVID,DDGLDEL,6)_$E(C,1,$$MIN($L(C),$P(DDGFLIM,U,4)-C2+1))_$P(DDGLVID,DDGLDEL,10)
|
---|
| 124 | D RC(Y,X)
|
---|
| 125 | Q
|
---|
| 126 | ;
|
---|
| 127 | MIN(X,Y,Z) ;Return the minimum of two or three numbers
|
---|
| 128 | N A
|
---|
| 129 | S A=$S(X<Y:X,1:Y)
|
---|
| 130 | Q:$G(Z)="" A
|
---|
| 131 | Q $S(A<Z:A,1:Z)
|
---|
| 132 | ;
|
---|
| 133 | READ() N S,Y
|
---|
| 134 | F R *Y:DTIME D C Q:Y'=-1
|
---|
| 135 | Q Y
|
---|
| 136 | ;
|
---|
| 137 | C I Y<0 S Y="TO" Q
|
---|
| 138 | S S=""
|
---|
| 139 | C1 S S=S_$C(Y)
|
---|
| 140 | I DDGF("SIN")'[(U_S) D I Y=-1 W $C(7) Q
|
---|
| 141 | . I $C(Y)'?1L S Y=-1 Q
|
---|
| 142 | . S S=$E(S,1,$L(S)-1)_$C(Y-32) S:DDGF("SIN")'[(U_S_U) Y=-1
|
---|
| 143 | ;
|
---|
| 144 | I DDGF("SIN")[(U_S_U),S'=$C(27) S Y=$P(DDGF("SOUT"),U,$L($P(DDGF("SIN"),U_S_U),U)) Q
|
---|
| 145 | R *Y:5 G:Y'=-1 C1 W $C(7)
|
---|
| 146 | Q
|
---|