NEW
  AUTO 3,1
				.LIST OFF
*--------------------------------------
* BUT.New hParent,X1,Y1,HK,EV,pLabel,F	8
*--------------------------------------
BUT.New			lda #S.OBJ.T.BUT
				jsr OBJ.Create
				bcs .9

				>PULLA
				ldy #S.OBJ.F
				sta (ZPObjPtr),y
				
				ldy #S.BUT.pLabel
				jsr OBJ.PullWordY
				stx ZPPtr1
				sta ZPPtr1+1
				
				ldy #$ff

.1				iny
				lda (ZPPtr1),y
				bne .1
				
				tya
				inc
				inc
				ldy #S.OBJ.W
				sta (ZPObjPtr),y

				ldy #S.OBJ.H
				lda #1
				sta (ZPObjPtr),y

				>PULLA
				ldy #S.BUT.EV
				sta (ZPObjPtr),y
				
				>PULLA
				ldy #S.BUT.HotKey
				sta (ZPObjPtr),y
				
				jsr OBJ.PullY1X1hParent

				jsr CONT.Insert
				bcs .99
				
				lda hObj
*				clc
				rts				

.9				>POP 7
				
.99				rts			
*--------------------------------------
BUT.Run			lda (pStack)			Event
				ldy #S.BUT.HotKey
				cmp (ZPObjPtr),y
				beq .8
				
				ldy #S.OBJ.S
				lda (ZPObjPtr),y
				bpl .9
				
				lda (pStack)			Event
				cmp #C.SPACE
				bne .9
				
.8				ldy #S.BUT.EV
				lda (ZPObjPtr),y

				clc
				rts

.9				lda #0
				sec
				rts
*--------------------------------------
BUT.Draw		ldy #S.BUT.pLabel
				lda (ZPObjPtr),y
				sta ZPPtr1
				iny
				lda (ZPObjPtr),y
				sta ZPPtr1+1
	
				ldx #SEQ.INVERSE-SEQS
				jsr LB.SeqOut

				ldx #C.SPACE

				ldy #S.OBJ.S
				lda (ZPObjPtr),y
				bpl .1
				
				ldx #'['
				
.1				txa
				jsr LB.COut
	
				ldy #S.OBJ.InnerW
				lda (ZPObjPtr),y
				tax

				dex
				dex
				
				ldy #0

.2				lda (ZPPtr1),y
				beq .3

				jsr LB.COut
				iny
				dex
				bne .2

.3				txa
				beq .5
		
				lda #C.SPACE

.4				jsr LB.COut
				dex
				bne .4
				
.5				ldx #C.SPACE

				ldy #S.OBJ.S
				lda (ZPObjPtr),y
				bpl .20
				
				ldx #']'
				
.20				txa
				jsr LB.COut
				
.8				clc
				rts
*--------------------------------------
MAN
SAVE usr/src/lib/libtui.s.but
LOAD usr/src/lib/libtui.s
ASM
