| 1 | DIR0K ;SFISC/MKO-GET KEYS FOR FIELD EDITOR ;12:16 PM  15 Feb 1995
 | 
|---|
| 2 |  ;;22.0;VA FileMan;;Mar 30, 1999
 | 
|---|
| 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  I $P(T,";",2)="TIMEOUT" Q:$P(T,";")=""  S DIR0TO=$P(T,";"),K="TO"
 | 
|---|
| 33 |  E  S @("K="_$P(T,";",2))
 | 
|---|
| 34 |  I DIR0(DIR0P_"IN")'[(U_K) D
 | 
|---|
| 35 |  . S DIR0(DIR0P_"IN")=DIR0(DIR0P_"IN")_U_K
 | 
|---|
| 36 |  . S DIR0(DIR0P_"OUT")=DIR0(DIR0P_"OUT")_$P(T,";")_";"
 | 
|---|
| 37 |  ;
 | 
|---|
| 38 |  Q
 | 
|---|
| 39 | GENMAP ;General field editor key sequences
 | 
|---|
| 40 |  ;;RIGHT;AR
 | 
|---|
| 41 |  ;;LEFT;AL
 | 
|---|
| 42 |  ;;JRT;F1_AR
 | 
|---|
| 43 |  ;;JLT;F1_AL
 | 
|---|
| 44 |  ;;FDE;F1_F1_AR
 | 
|---|
| 45 |  ;;FDB;F1_F1_AL
 | 
|---|
| 46 |  ;;WRT;F1_" "
 | 
|---|
| 47 |  ;;WRT;$C(12)
 | 
|---|
| 48 |  ;;WLT;$C(10)
 | 
|---|
| 49 |  ;;DEL;REMOVE
 | 
|---|
| 50 |  ;;DEL;F2
 | 
|---|
| 51 |  ;;CLR;F1_"D"
 | 
|---|
| 52 |  ;;CLR;$C(21)
 | 
|---|
| 53 |  ;;DEOF;F1_F2
 | 
|---|
| 54 |  ;;DLW;$C(23)
 | 
|---|
| 55 |  ;;CR;$C(13)
 | 
|---|
| 56 |  ;;UP;AU
 | 
|---|
| 57 |  ;;DOWN;AD
 | 
|---|
| 58 |  ;;TAB;$C(9)
 | 
|---|
| 59 |  ;;RPM;F3
 | 
|---|
| 60 |  ;;BS;$C(127)
 | 
|---|
| 61 |  ;;BS;$C(8)
 | 
|---|
| 62 |  ;;
 | 
|---|
| 63 | SMMAP ;ScreenMan specific key sequences
 | 
|---|
| 64 |  ;;FDL;F4
 | 
|---|
| 65 |  ;;NB;F1_F4
 | 
|---|
| 66 |  ;;NP;F1_AD
 | 
|---|
| 67 |  ;;NP;NEXTSC
 | 
|---|
| 68 |  ;;PP;F1_AU
 | 
|---|
| 69 |  ;;PP;PREVSC
 | 
|---|
| 70 |  ;;HLP;F1_"H"
 | 
|---|
| 71 |  ;;SEL;F1_"L"
 | 
|---|
| 72 |  ;;EX;F1_"E"
 | 
|---|
| 73 |  ;;QT;F1_"Q"
 | 
|---|
| 74 |  ;;CL;F1_"C"
 | 
|---|
| 75 |  ;;SV;F1_"S"
 | 
|---|
| 76 |  ;;RF;F1_"R"
 | 
|---|
| 77 |  ;;ZM;F1_"Z"
 | 
|---|
| 78 |  ;;
 | 
|---|