~rabbits/left

ee73f170f8847d7898d2ef7f7c0be2ade4ebe72a — neauoire 4 months ago 15ec76e
Use skey in button trap
1 files changed, 12 insertions(+), 17 deletions(-)

M src/left.tal
M src/left.tal => src/left.tal +12 -17
@@ 130,25 130,15 @@ BRK
@on-button-trap ( -> )

	#00 ;draw-filepath JSR2
	.Controller/key DEI DUP #0d EQU #03 MUL SUB ,capture-trap JSR
	#01 ;draw-filepath JSR2
	.Controller/key DEI
		DUP #1b EQU ,&escape JCN
		DUP .filepath ;skey JSR2 ,&open JCN
		#01 ;draw-filepath JSR2
		POP

BRK

@capture-trap ( button -- )

	DUP ,&no-null JCN POP JMP2r &no-null
	[ #08 ] NEQk NIP ,&no-pop JCN ;filepath ;spop JSR2 POP JMP2r &no-pop
	[ #0a ] NEQk NIP ,&no-load JCN ;file-open JSR2 &no-load
	[ #7f ] NEQk NIP ,&no-delete JCN ;filepath ;sclr JSR2 POP JMP2r &no-delete
	[ #20 ] GTHk NIP ,&no-special JCN ;untrap JSR2 POP JMP2r &no-special
	;filepath ;slen JSR2 NIP #2f EQU ,&no-push JCN
		DUP ;filepath ;sput JSR2
		#0000 ;set-scroll-y JSR2
		&no-push
	POP

JMP2r
	&open ( c -- ) ;file-open JSR2
	&escape ( c -- ) POP ;untrap JSR2 BRK

@on-mouse-trap ( -> )



@@ 1227,12 1217,17 @@ JMP2

@skey ( key buf -- proc )

	OVR ,&no-null JCN
		POP JMP2r
		&no-null
	OVR #08 EQU ,&bs JCN
	OVR #7f EQU ,&del JCN
	OVR #21 LTH ,&eval JCN #00 SWP ;sput JSR2 #00

JMP2r
	&eval POP2 #01 JMP2r
	&bs NIP #00 SWP ;spop JSR2 #00 JMP2r
	&del NIP #00 SWP ;sclr JSR2 #00 JMP2r

@pstr ( str* -- )