Annotation of freem_fileman/DDBRGE.m, revision 1.1
1.1 ! snw 1: DDBRGE ;SFISC/DCL-BROWSE GET/EXECUTE EVENT ;03:27 PM 29 Nov 1994;
! 2: ;;21.0;VA FileMan;;Dec 28, 1994
! 3: ;Per VHA Directive 10-93-142, this routine should not be modified.
! 4: EN N DDBGF
! 5: D GETKEY
! 6: S DDBRPE=0
! 7: W @IOSTBM
! 8: S DDBL=$G(DDBL,0) S:DDBL<0 DDBL=0 S:DDBL>DDBTL DDBL=DDBTL D PSR^DDBR0(1)
! 9: S DX=0,DY=$P(DDBSY,";",3) X IOXY
! 10: X DDGLZOSF("EOFF")
! 11: F S DDBRE=$$READ D Q:DDBRE="^"
! 12: .I $T(@DDBRE)="" W $C(7) Q
! 13: .X DDGLZOSF("EON")
! 14: .D @DDBRE
! 15: .I DDBRSA S DDBRSA(DDBRSA,"DDBL")=DDBL
! 16: .S DX=0,DY=$P(DDBSY,";",3) X IOXY
! 17: .S DDBRPE=DDBRE
! 18: .X DDGLZOSF("EOFF")
! 19: X DDGLZOSF("EON")
! 20: I $G(DDBFLG)["H" Q
! 21: CLS S DX=0 F DY=$P(DDBSY,";"):1:$P(DDBSY,";",4) X IOXY W $P(DDGLCLR,DDGLDEL)
! 22: I DDBRSA S X=DDBL D
! 23: .N DDBL S DDBL=X
! 24: .D SR^DDBRS(DDBRSA,$S(DDBRSA=2:1,1:2),.DDBRSA)
! 25: .W @IOSTBM
! 26: .S DX=0 F DY=$P(DDBSY,";"):1:$P(DDBSY,";",4) X IOXY W $P(DDGLCLR,DDGLDEL)
! 27: .Q
! 28: I $G(DDBC1),$G(DDBC0)]"" K @DDBC0@(1)
! 29: K ^TMP("DDBC","DDBC",$J)
! 30: S IOTM=1,IOBM=IOSL W @IOSTBM,$P(DDGLVID,DDGLDEL,9)
! 31: D:'$D(DDS) KILL^DDGLIB0($G(DDBFLG))
! 32: S DX=0,DY=IOSL-1 X IOXY
! 33: I DDBSRL+2=IOSL W @IOF
! 34: D:$G(DDBFLG)'["P" KTMP
! 35: END Q
! 36: KTMP D KTMP^DDBRU
! 37: Q
! 38: READ() N S,Y
! 39: F R *Y:DTIME D C Q:Y'=-1
! 40: Q Y
! 41: C I Y<0 S Y="TO" Q
! 42: S S=""
! 43: C1 S S=S_$C(Y)
! 44: I DDBGF("DDBIN")'[(U_S) D I Y=-1 W $C(7) Q
! 45: . I $C(Y)'?1L S Y=-1 Q
! 46: . S S=$E(S,1,$L(S)-1)_$C(Y-32) S:DDBGF("DDBIN")'[(U_S_U) Y=-1
! 47: I DDBGF("DDBIN")[(U_S_U),S'=$C(27) S Y=$P(DDBGF("DDBOUT"),U,$L($P(DDBGF("DDBIN"),U_S_U),U)) Q
! 48: R *Y:5 G:Y'=-1 C1 W $C(7)
! 49: Q
! 50: GETKEY N AU,AD,AR,AL,F1,F2,F3,F4,I,K,N,T
! 51: N FIND,SELECT,PREVSC,NEXTSC,HELP,KP7,KP8
! 52: S AU=$P(DDGLKEY,U,2)
! 53: S AD=$P(DDGLKEY,U,3)
! 54: S AR=$P(DDGLKEY,U,4)
! 55: S AL=$P(DDGLKEY,U,5)
! 56: S F1=$P(DDGLKEY,U,6)
! 57: S F2=$P(DDGLKEY,U,7)
! 58: S F3=$P(DDGLKEY,U,8)
! 59: S F4=$P(DDGLKEY,U,9)
! 60: S FIND=$P(DDGLKEY,U,10)
! 61: S SELECT=$P(DDGLKEY,U,11)
! 62: S PREVSC=$P(DDGLKEY,U,14)
! 63: S NEXTSC=$P(DDGLKEY,U,15)
! 64: S HELP=$P(DDGLKEY,U,16)
! 65: S KP7=$P(DDGLKEY,U,25)
! 66: S KP8=$P(DDGLKEY,U,26)
! 67: F N="DDB" D
! 68: . S DDBGF(N_"IN")="",DDBGF(N_"OUT")=""
! 69: . F I=1:1 S T=$P($T(@(N_"MAP")+I),";;",2,999) Q:T="" D
! 70: .. S @("K="_$P(T,";",2))
! 71: .. I DDBGF(N_"IN")'[(U_K) D
! 72: ... S DDBGF(N_"IN")=DDBGF(N_"IN")_U_K
! 73: ... S DDBGF(N_"OUT")=DDBGF(N_"OUT")_$P(T,";")_U
! 74: . S DDBGF(N_"IN")=DDBGF(N_"IN")_U
! 75: . S DDBGF(N_"OUT")=$E(DDBGF(N_"OUT"),1,$L(DDBGF(N_"OUT"))-1)
! 76: Q
! 77: TO S DDBRE="^" Q
! 78: HELP D HELP^DDBR0 Q
! 79: HELPS D HELPS^DDBR0 Q
! 80: RETURN D SWITCH^DDBR2("","R") Q
! 81: SWITCH D SWITCH^DDBR2() Q
! 82: RPS I 'DDBRSA D PSR^DDBR0(1) Q
! 83: N DDBRNI F DDBRNI=1,2 D
! 84: .I DDBRSA=2 D SR^DDBRS(2,1,.DDBRSA) W @IOSTBM D PSR^DDBR0(1) Q
! 85: .I DDBRSA=1 S DDBL=DDBRSA(DDBRSA,"DDBL") D SR^DDBRS(1,2,.DDBRSA) W @IOSTBM D PSR^DDBR0(1) Q
! 86: .Q
! 87: Q
! 88: NEXT D NOOF^DDBR1 Q
! 89: FIND D FIND^DDBR1 Q
! 90: GOTO D GOTO^DDBR1 Q
! 91: BOT D BOT^DDBR0 Q
! 92: TOP D TOP^DDBR0 Q
! 93: PD D PD^DDBR0 Q
! 94: PU D PU^DDBR0 Q
! 95: QUIT ;
! 96: EXIT D EXIT^DDBR0 Q
! 97: COLR D RR^DDBR0 Q
! 98: COLL D RL^DDBR0 Q
! 99: COLRE D RRE^DDBR0 Q
! 100: COLLE D RLE^DDBR0 Q
! 101: COLJ D COLJ^DDBR0 Q
! 102: LND D LD^DDBR0 Q
! 103: LNU D LU^DDBR0 Q
! 104: PF1Z I $G(^TMP("DDBPF1Z",$J))]"" X ^($J) G RPS
! 105: G BQT
! 106: PF2Z I $G(^TMP("DDBPF2Z",$J))]"" X ^($J) G RPS
! 107: G BQT
! 108: PF3Z I $G(^TMP("DDBPF3Z",$J))]"" X ^($J) G RPS
! 109: G BQT
! 110: PF4Z I $G(^TMP("DDBPF4Z",$J))]"" X ^($J) G RPS
! 111: G BQT
! 112: SCRN1 I DDBRSA=2 D SR^DDBRS(2,1,.DDBRSA) W @IOSTBM G RPS
! 113: G BQT
! 114: SCRN2 I DDBRSA=1 D SR^DDBRS(1,2,.DDBRSA) W @IOSTBM G RPS
! 115: G BQT
! 116: SPLIT I 'DDBRSA,$D(DDBRSA(1)) D SPLIT^DDBRS Q
! 117: G BQT
! 118: FULL I DDBRSA D FULL^DDBRS(.DDBRSA) Q
! 119: G BQT
! 120: RESIZU I DDBRSA,(DDBRSA(1,"IOBM")-1)>(DDBRSA(0,"IOTM")+2) S DDBRSA(1,"IOBM")=DDBRSA(1,"IOBM")-1,DDBRSA(2,"IOTM")=DDBRSA(2,"IOTM")-1 D 2,1,ENTB^DDBRS(.DDBRSA,-1) G RPS
! 121: G BQT
! 122: RESIZD I DDBRSA,(DDBRSA(2,"IOTM")+1)<(DDBRSA(0,"IOBM")-2) S DDBRSA(1,"IOBM")=DDBRSA(1,"IOBM")+1,DDBRSA(2,"IOTM")=DDBRSA(2,"IOTM")+1 D 1,2,ENTB^DDBRS(.DDBRSA,+1) G RPS
! 123: G BQT
! 124: BQT W $C(7)
! 125: Q
! 126: 1 S DX=0,DY=$P(DDBRSA(1,"DDBSY"),";",4) X IOXY W $P(DDGLCLR,DDGLDEL) Q
! 127: 2 S DX=0,DY=$P(DDBRSA(2,"DDBSY"),";") X IOXY W $P(DDGLCLR,DDGLDEL) Q
! 128: DDBMAP ;
! 129: ;;LNU;AU;
! 130: ;;LND;AD;
! 131: ;;COLR;AR;
! 132: ;;COLL;AL;
! 133: ;;EXIT;F1_"E";
! 134: ;;QUIT;F1_"Q";
! 135: ;;PU;F1_AU;
! 136: ;;PU;PREVSC;
! 137: ;;PD;F1_AD;
! 138: ;;PD;NEXTSC;
! 139: ;;COLRE;F1_AR;
! 140: ;;COLLE;F1_AL;
! 141: ;;COLJ;F1_"C";
! 142: ;;TOP;F1_"T";
! 143: ;;BOT;F1_"B";
! 144: ;;GOTO;F1_"G";
! 145: ;;FIND;F1_"F";
! 146: ;;FIND;FIND;
! 147: ;;NEXT;"N";
! 148: ;;NEXT;F1_"N";
! 149: ;;RPS;F1_"P";
! 150: ;;SWITCH;F1_"S";
! 151: ;;SWITCH;SELECT;
! 152: ;;RETURN;"R";
! 153: ;;HELP;F1_"H";
! 154: ;;HELP;"HELP";
! 155: ;;HELPS;F1_F1_"H";
! 156: ;;PF1Z;F1_"Z"; ^TMP(""DDBPF1Z",$J)=executable code (user defined)
! 157: ;;PF2Z;F2_"Z"; ^TMP(""DDBPF2Z",$J)=executable code (user defined)
! 158: ;;PF3Z;F3_"Z"; ^TMP(""DDBPF3Z",$J)=executable code (user defined)
! 159: ;;PF4Z;F4_"Z"; ^TMP(""DDBPF4Z",$J)=executable code (user defined)
! 160: ;;EXIT;"EXIT";
! 161: ;;SCRN1;F2_AU;
! 162: ;;SCRN2;F2_AD;
! 163: ;;SPLIT;F2_"S";
! 164: ;;FULL;F2_"F";
! 165: ;;RESIZU;F2_F2_AU;
! 166: ;;RESIZD;F2_F2_AD;
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>