From 02e4c892c8b75051e0c2a3591c9e4642342966e1 Mon Sep 17 00:00:00 2001 From: burniouf Date: Fri, 26 Jan 2024 15:05:51 +0100 Subject: [PATCH] LIBTUI:Improved LBOX --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes BIN/TUITEST.S.txt | 13 +++++++++---- INC/LIBTUI.I.txt | 9 +++++---- LIB/LIBTUI.S.LBOX.txt | 35 +++++++++++++++++++++++++++++------ 4 files changed, 43 insertions(+), 14 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index de9b8659f6eb3f129f78740044942b221564ccd0..f91f0febfc4f871ff3bebf352a2de269449d8bb7 100644 GIT binary patch delta 383428 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,s8+=fw6Qt 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 z0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV= z5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz z00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_< z0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb z2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$## zAOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;| zfB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U< z00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa z0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV= z5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz z00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_< z0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb z2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$## zAOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;| pfB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2teTfO97YR{{Z_gY5)KL diff --git a/BIN/TUITEST.S.txt b/BIN/TUITEST.S.txt index 0935b28d..56cf7a18 100644 --- a/BIN/TUITEST.S.txt +++ b/BIN/TUITEST.S.txt @@ -10,8 +10,11 @@ NEW .INB inc/libtui.i *-------------------------------------- EV.SAVE .EQ $C0 -EV.CHECKBOX .EQ $C1 -EV.RADIO .EQ $C2 +EV.QUIT .EQ $C1 +EV.CHECKBOX .EQ $C2 +EV.RADIO .EQ $C3 +EV.LBOX1.CHANGED .EQ $C4 +EV.LBOX1.PRESSED .EQ $C5 EV.OK .EQ $CE EV.CANCEL .EQ $CF *-------------------------------------- @@ -146,10 +149,10 @@ CS.RUN.LOOP lda hSCRN rts -.3 cmp #EV.RADIO +.3 cmp #EV.LBOX1.CHANGED bne .8 -* Do something when RADIO got a new value +* Do something bra CS.RUN.LOOP @@ -227,6 +230,8 @@ CS.LBOX1.Init >PUSHB hSCRN hParent >PUSHBI 1 Y1 >PUSHBI 20 W >PUSHBI 9 H + >PUSHBI EV.LBOX1.CHANGED + >PUSHBI EV.LBOX1.PRESSED >PUSHW L.LBOX1.List >PUSHEA.G LBOX1.Var >PUSHBI S.OBJ.F.bHBorder+S.OBJ.F.bVBorder diff --git a/INC/LIBTUI.I.txt b/INC/LIBTUI.I.txt index d0cb2163..1dab7505 100644 --- a/INC/LIBTUI.I.txt +++ b/INC/LIBTUI.I.txt @@ -115,10 +115,12 @@ S.TBOX.BufCnt .EQ S.OBJ+14 * S.TBOX .EQ S.OBJ+16 *-------------------------------------- -S.LBOX.Idx .EQ S.OBJ+0 -S.LBOX.VScroll .EQ S.OBJ+2 +S.LBOX.EV.CHANGED .EQ S.OBJ+0 +S.LBOX.EV.PRESSED .EQ S.OBJ+1 +S.LBOX.Idx .EQ S.OBJ+2 +S.LBOX.VScroll .EQ S.OBJ+4 * -S.LBOX .EQ S.OBJ+4 +S.LBOX .EQ S.OBJ+6 *-------------------------------------- S.CBOX.HotKey .EQ S.OBJ+0 S.CBOX.EV .EQ S.OBJ+1 @@ -139,7 +141,6 @@ S.RADIO.Idx .EQ S.OBJ+2 S.RADIO .EQ S.OBJ+4 *-------------------------------------- EV.RESIZE .EQ $80 -EV.QUIT .EQ $81 EV.HL.SELECTED .EQ $82 EV.HL.PRESSED .EQ $83 *-------------------------------------- diff --git a/LIB/LIBTUI.S.LBOX.txt b/LIB/LIBTUI.S.LBOX.txt index b535ab1e..63f861dc 100644 --- a/LIB/LIBTUI.S.LBOX.txt +++ b/LIB/LIBTUI.S.LBOX.txt @@ -2,7 +2,7 @@ NEW AUTO 3,1 .LIST OFF *-------------------------------------- -* LBOX.New hParent,X1,Y1,W,H,pList,pVar,F 10 +* LBOX.New hParent,X1,Y1,W,H,EV.CHANGED,EV.PRESSED,pList,pVar,F 12 *-------------------------------------- LBOX.New lda #S.OBJ.T.LBOX jsr OBJ.Create @@ -17,7 +17,15 @@ LBOX.New lda #S.OBJ.T.LBOX ldy #S.OBJ.pBuf jsr OBJ.PullWordY + + >PULLA + ldy #S.LBOX.EV.PRESSED + sta (ZPObjPtr),y + >PULLA + ldy #S.LBOX.EV.CHANGED + sta (ZPObjPtr),y + jsr OBJ.PullHW jsr OBJ.PullY1X1hParent @@ -29,7 +37,7 @@ LBOX.New lda #S.OBJ.T.LBOX * clc rts -.9 >POP 10 +.9 >POP 12 .99 rts *-------------------------------------- @@ -69,7 +77,7 @@ LBOX.Run ldy #S.OBJ.S bra .7 .2 cmp #C.VT - bne .9 + bne .3 ldy #S.LBOX.Idx lda (ZPObjPtr),y @@ -92,16 +100,31 @@ LBOX.Run ldy #S.OBJ.S >PUSHA jsr OBJ.Draw.Body - + inc pStack + + bcs .99 + + ldy #S.LBOX.EV.CHANGED + lda (ZPObjPtr),y +* clc + rts + +.3 cmp #C.SPACE + bne .9 + + ldy #S.LBOX.EV.PRESSED + lda (ZPObjPtr),y + clc rts -.8 clc +.8 lda #0 + clc rts .9 lda #0 sec - rts +.99 rts *-------------------------------------- LBOX.Draw ldy #S.LBOX.VScroll lda (ZPObjPtr),y