DDGLBXA1 ;SFISC/MKO-SINGLE SELECTION LIST BOX ;11:33 AM 26 Apr 1996 ;;22.0;VA FileMan;;Mar 30, 1999 ;Per VHA Directive 10-93-142, this routine should not be modified. ; N DDGLQT,Y D CUP(DDGLLINE,1) ; S DDGLQT=0 F S Y=$$READ D Q:DDGLQT . I Y'[U,$T(@Y)="" W $C(7) Q . D @Y . D:$G(DDGLKEY("KMAP","KD"))]"" @DDGLKEY("KMAP","KD") ; S:$P(DDGLQT,U,2,999)]"" DDGLOUT("C")=$P(DDGLQT,U,2,999) Q ; UP ;Move up I DDGLLINE>1 D . D CUP(DDGLLINE,1) . W $E(DDGLSEL,1,DDGLNC) . S DDGLLINE=DDGLLINE-1 . S DDGLSEL=DDGLITEM(DDGLLINE) . ; . D CUP(DDGLLINE,1) . W $P(DDGLVID,DDGLDEL,6)_$E(DDGLSEL,1,DDGLNC)_$P(DDGLVID,DDGLDEL,10) ; E D . N DDGLE . D SHIFTDN(1,.DDGLE) Q:$G(DDGLE) . S DDGLSEL=DDGLITEM(1) . D DISP(DDGLSEL) Q ; DN ;Move down I DDGLLINE1 D . D CUP(DDGLLINE,1) . W $E(DDGLSEL,1,DDGLNC) . S DDGLLINE=1,DDGLSEL=DDGLITEM(1) . D CUP(1,1) . W $P(DDGLVID,DDGLDEL,6)_$E(DDGLSEL,1,DDGLNC)_$P(DDGLVID,DDGLDEL,10) ; E D . N DDGLE . D SHIFTDN(DDGLNL,.DDGLE) Q:$G(DDGLE) . S DDGLSEL=DDGLITEM(1) . D DISP(DDGLSEL) Q ; PDN ;Page down in list I DDGLLINE1 PUP Q ; ;Fill DDGLITEM array S DDGLT=DDGLFRST F DDGLI=1:1:DDGLNL D . S DDGLITEM(DDGLI)=DDGLT . S:DDGLT]"" DDGLT=$O(@DDGLGLO@(DDGLT)) ; S DDGLLINE=1,DDGLSEL=DDGLITEM(1) D DISP(DDGLSEL) Q ; BOT ;Move to bottom of list N DDGLAST,DDGLI,DDGLT,DDGLIND ; ;Set DDGLIND = index of last non-null DDGLITEM F DDGLIND=DDGLNL:-1:1 Q:DDGLITEM(DDGLIND)]"" ; S DDGLAST=$O(@DDGLGLO@(""),-1) I DDGLAST=DDGLITEM(DDGLIND) D:DDGLLINE