Files
A2osX/LIB/LIBGUI.S.PANE.txt
2025-11-05 21:23:53 +01:00

117 lines
1.9 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
NEW
AUTO 3,1
*--------------------------------------
* pWND *guiNewPane(pWND, wFlags, iX, iY, wW, wH)
*--------------------------------------
PANE.New lda #S.OBJ.T.PANE
jsr OBJ.New
bcs .99
* >STYA ZPpOBJ
>GETSTKW
ldy #S.OBJ.H
jsr OBJ.SetAXAtY
>GETSTKW 2
ldy #S.OBJ.W
jsr OBJ.SetAXAtY
>GETSTKW 4
ldy #S.OBJ.Y1
jsr OBJ.SetAXAtY
>GETSTKW 6
ldy #S.OBJ.X1
jsr OBJ.SetAXAtY
>GETSTKB 8
ldy #S.OBJ.F
jsr OBJ.SetAXAtY
>GETSTKW 10
>STAX ZPpWND
ldy #S.OBJ.pParent
jsr OBJ.SetAXAtY
jsr OBJ.SetX2Y2
jsr WND.AddNext.I
>LDYA ZPpOBJ
clc
.99 rts
*--------------------------------------
PANE.fEnter ldy #S.OBJ.BGCOLOR
lda (ZPpOBJ),y
iny
cmp (ZPpOBJ),y
beq PANE.fEnter.8
ldy #S.OBJ.S
lda (ZPpOBJ),y
bit #S.OBJ.S.SELECTED
beq PANE.fPaintA
PANE.fEnter.8 clc
rts
*--------------------------------------
PANE.fLeave ldy #S.OBJ.BGCOLOR
lda (ZPpOBJ),y
iny
cmp (ZPpOBJ),y
beq PANE.fEnter.8
ldy #S.OBJ.S
lda (ZPpOBJ),y
bit #S.OBJ.S.SELECTED
beq PANE.fEnter.8
*--------------------------------------
PANE.fPaintA eor #S.OBJ.S.SELECTED
sta (ZPpOBJ),y
jmp OBJ.PaintpOBJ
*--------------------------------------
PANE.fPaint lda #S.CB.CMD.FILLRECT
sta CB.Cache+S.CB.CMD
lda #S.CB.OP.SET+S.CB.OP.COLOR
sta CB.Cache+S.CB.OP
ldy #S.OBJ.S
lda (ZPpOBJ),y
ldy #S.OBJ.BGCOLOR
bit #S.OBJ.S.SELECTED
beq .10
iny
.10 ldx #S.CB.M.MONO
lda (ZPpOBJ),y
sta CB.Cache+S.CB.COLOR
beq .1
inc
beq .1
ldx #S.CB.M.C16
.1 stx CB.Cache+S.CB.M
stz CB.Cache+S.CB.pPat+1
jsr CB.ZeroX1Y1
jsr CB.SetX2Y2
jmp CB.WriteW
*--------------------------------------
MAN
SAVE usr/src/lib/libgui.s.pane
LOAD usr/src/lib/libgui.s
ASM