mirror of https://github.com/A2osX/A2osX.git
LIBTUI:Improved LBOX
This commit is contained in:
parent
f0adfc775d
commit
02e4c892c8
Binary file not shown.
|
@ -10,8 +10,11 @@ NEW
|
||||||
.INB inc/libtui.i
|
.INB inc/libtui.i
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
EV.SAVE .EQ $C0
|
EV.SAVE .EQ $C0
|
||||||
EV.CHECKBOX .EQ $C1
|
EV.QUIT .EQ $C1
|
||||||
EV.RADIO .EQ $C2
|
EV.CHECKBOX .EQ $C2
|
||||||
|
EV.RADIO .EQ $C3
|
||||||
|
EV.LBOX1.CHANGED .EQ $C4
|
||||||
|
EV.LBOX1.PRESSED .EQ $C5
|
||||||
EV.OK .EQ $CE
|
EV.OK .EQ $CE
|
||||||
EV.CANCEL .EQ $CF
|
EV.CANCEL .EQ $CF
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -146,10 +149,10 @@ CS.RUN.LOOP lda hSCRN
|
||||||
|
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.3 cmp #EV.RADIO
|
.3 cmp #EV.LBOX1.CHANGED
|
||||||
bne .8
|
bne .8
|
||||||
|
|
||||||
* Do something when RADIO got a new value
|
* Do something
|
||||||
|
|
||||||
bra CS.RUN.LOOP
|
bra CS.RUN.LOOP
|
||||||
|
|
||||||
|
@ -227,6 +230,8 @@ CS.LBOX1.Init >PUSHB hSCRN hParent
|
||||||
>PUSHBI 1 Y1
|
>PUSHBI 1 Y1
|
||||||
>PUSHBI 20 W
|
>PUSHBI 20 W
|
||||||
>PUSHBI 9 H
|
>PUSHBI 9 H
|
||||||
|
>PUSHBI EV.LBOX1.CHANGED
|
||||||
|
>PUSHBI EV.LBOX1.PRESSED
|
||||||
>PUSHW L.LBOX1.List
|
>PUSHW L.LBOX1.List
|
||||||
>PUSHEA.G LBOX1.Var
|
>PUSHEA.G LBOX1.Var
|
||||||
>PUSHBI S.OBJ.F.bHBorder+S.OBJ.F.bVBorder
|
>PUSHBI S.OBJ.F.bHBorder+S.OBJ.F.bVBorder
|
||||||
|
|
|
@ -115,10 +115,12 @@ S.TBOX.BufCnt .EQ S.OBJ+14
|
||||||
*
|
*
|
||||||
S.TBOX .EQ S.OBJ+16
|
S.TBOX .EQ S.OBJ+16
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
S.LBOX.Idx .EQ S.OBJ+0
|
S.LBOX.EV.CHANGED .EQ S.OBJ+0
|
||||||
S.LBOX.VScroll .EQ S.OBJ+2
|
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.HotKey .EQ S.OBJ+0
|
||||||
S.CBOX.EV .EQ S.OBJ+1
|
S.CBOX.EV .EQ S.OBJ+1
|
||||||
|
@ -139,7 +141,6 @@ S.RADIO.Idx .EQ S.OBJ+2
|
||||||
S.RADIO .EQ S.OBJ+4
|
S.RADIO .EQ S.OBJ+4
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
EV.RESIZE .EQ $80
|
EV.RESIZE .EQ $80
|
||||||
EV.QUIT .EQ $81
|
|
||||||
EV.HL.SELECTED .EQ $82
|
EV.HL.SELECTED .EQ $82
|
||||||
EV.HL.PRESSED .EQ $83
|
EV.HL.PRESSED .EQ $83
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
|
|
@ -2,7 +2,7 @@ NEW
|
||||||
AUTO 3,1
|
AUTO 3,1
|
||||||
.LIST OFF
|
.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
|
LBOX.New lda #S.OBJ.T.LBOX
|
||||||
jsr OBJ.Create
|
jsr OBJ.Create
|
||||||
|
@ -17,7 +17,15 @@ LBOX.New lda #S.OBJ.T.LBOX
|
||||||
|
|
||||||
ldy #S.OBJ.pBuf
|
ldy #S.OBJ.pBuf
|
||||||
jsr OBJ.PullWordY
|
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.PullHW
|
||||||
|
|
||||||
jsr OBJ.PullY1X1hParent
|
jsr OBJ.PullY1X1hParent
|
||||||
|
@ -29,7 +37,7 @@ LBOX.New lda #S.OBJ.T.LBOX
|
||||||
* clc
|
* clc
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.9 >POP 10
|
.9 >POP 12
|
||||||
|
|
||||||
.99 rts
|
.99 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -69,7 +77,7 @@ LBOX.Run ldy #S.OBJ.S
|
||||||
bra .7
|
bra .7
|
||||||
|
|
||||||
.2 cmp #C.VT
|
.2 cmp #C.VT
|
||||||
bne .9
|
bne .3
|
||||||
|
|
||||||
ldy #S.LBOX.Idx
|
ldy #S.LBOX.Idx
|
||||||
lda (ZPObjPtr),y
|
lda (ZPObjPtr),y
|
||||||
|
@ -92,16 +100,31 @@ LBOX.Run ldy #S.OBJ.S
|
||||||
>PUSHA
|
>PUSHA
|
||||||
|
|
||||||
jsr OBJ.Draw.Body
|
jsr OBJ.Draw.Body
|
||||||
|
|
||||||
inc pStack
|
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
|
rts
|
||||||
|
|
||||||
.8 clc
|
.8 lda #0
|
||||||
|
clc
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.9 lda #0
|
.9 lda #0
|
||||||
sec
|
sec
|
||||||
rts
|
.99 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
LBOX.Draw ldy #S.LBOX.VScroll
|
LBOX.Draw ldy #S.LBOX.VScroll
|
||||||
lda (ZPObjPtr),y
|
lda (ZPObjPtr),y
|
||||||
|
|
Loading…
Reference in New Issue