Annotation of freem_fileman/DIR0K.m, revision 1.1.1.1

1.1       snw         1: DIR0K  ;SFISC/MKO-GET KEYS FOR FIELD EDITOR ;08:42 AM  30 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: GETKEY ;Get key sequences
                      6:        N AU,AD,AR,AL,F1,F2,F3,F4,I,K,T
                      7:        N REMOVE,PREVSC,NEXTSC
                      8:        S AU=$P(DDGLKEY,U,2)
                      9:        S AD=$P(DDGLKEY,U,3)
                     10:        S AR=$P(DDGLKEY,U,4)
                     11:        S AL=$P(DDGLKEY,U,5)
                     12:        S F1=$P(DDGLKEY,U,6)
                     13:        S F2=$P(DDGLKEY,U,7)
                     14:        S F3=$P(DDGLKEY,U,8)
                     15:        S F4=$P(DDGLKEY,U,9)
                     16:        S REMOVE=$P(DDGLKEY,U,13)
                     17:        S PREVSC=$P(DDGLKEY,U,14)
                     18:        S NEXTSC=$P(DDGLKEY,U,15)
                     19:        ;
                     20:        S DIR0(DIR0P_"IN")="",DIR0(DIR0P_"OUT")=""
                     21:        ;
                     22:        I DIR0P="C" S I="" F  S I=$O(DIR0MAP(I)) Q:I'=+$P(I,"E")  S T=DIR0MAP(I) D INOUT
                     23:        F I=1:1 S T=$P($T(GENMAP+I),";;",2,999) Q:T=""  D INOUT
                     24:        I DIR0P="" F I=1:1 S T=$P($T(SMMAP+I),";;",2,999) Q:T=""  D INOUT
                     25:        ;
                     26:        S DIR0(DIR0P_"IN")=DIR0(DIR0P_"IN")_U
                     27:        S DIR0(DIR0P_"OUT")=$E(DIR0(DIR0P_"OUT"),1,$L(DIR0(DIR0P_"OUT"))-1)
                     28:        Q
                     29:        ;
                     30: INOUT  ;Set DIR0("IN") and DIR0("OUT")
                     31:        I $P(T,";",2)="KEYDOWN" Q:$P(T,";")=""  S DIR0KD=$P(T,";"),K="KD"
                     32:        E  S @("K="_$P(T,";",2))
                     33:        I DIR0(DIR0P_"IN")'[(U_K) D
                     34:        . S DIR0(DIR0P_"IN")=DIR0(DIR0P_"IN")_U_K
                     35:        . S DIR0(DIR0P_"OUT")=DIR0(DIR0P_"OUT")_$P(T,";")_";"
                     36:        ;
                     37:        Q
                     38: GENMAP ;General field editor key sequences
                     39:        ;;RIGHT;AR
                     40:        ;;LEFT;AL
                     41:        ;;JRT;F1_AR
                     42:        ;;JLT;F1_AL
                     43:        ;;FDE;F1_F1_AR
                     44:        ;;FDB;F1_F1_AL
                     45:        ;;WRT;F1_" "
                     46:        ;;WRT;$C(12)
                     47:        ;;WLT;$C(10)
                     48:        ;;DEL;REMOVE
                     49:        ;;DEL;F2
                     50:        ;;CLR;F1_"D"
                     51:        ;;CLR;$C(21)
                     52:        ;;DEOF;F1_F2
                     53:        ;;DLW;$C(23)
                     54:        ;;CR;$C(13)
                     55:        ;;UP;AU
                     56:        ;;DOWN;AD
                     57:        ;;TAB;$C(9)
                     58:        ;;RPM;F3
                     59:        ;;BS;$C(127)
                     60:        ;;BS;$C(8)
                     61:        ;;
                     62: SMMAP  ;ScreenMan specific key sequences
                     63:        ;;FDL;F4
                     64:        ;;NB;F1_F4
                     65:        ;;NP;F1_AD
                     66:        ;;NP;NEXTSC
                     67:        ;;PP;F1_AU
                     68:        ;;PP;PREVSC
                     69:        ;;HLP;F1_"H"
                     70:        ;;SEL;F1_"L"
                     71:        ;;EX;F1_"E"
                     72:        ;;QT;F1_"Q"
                     73:        ;;CL;F1_"C"
                     74:        ;;SV;F1_"S"
                     75:        ;;RF;F1_"R"
                     76:        ;;ZM;F1_"Z"
                     77:        ;;

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