curses: beginning of screen support

db4
Philipp Brüschweiler 2009-10-20 13:58:19 +02:00
parent f2e5b168a7
commit 717f036e52
1 changed files with 24 additions and 0 deletions

View File

@ -122,6 +122,30 @@ PRIVATE>
] curry with-window
] with-destructors ; inline
TUPLE: curses-terminal < disposable
infd outfd ptr ;
: <curses-terminal> ( infd outfd ptr -- curses-terminal )
curses-terminal new-disposable
swap >>ptr
swap >>outfd
swap >>infd ;
M: curses-terminal dispose
[ outfd>> fclose ] [ infd>> fclose ]
[ ptr>> delscreen ] tri ;
: init-terminal ( terminal -- curses-terminal )
"xterm-color" swap [ "rb" fopen ] [ "wb" fopen ] bi
[ newterm curses-pointer-error ] 2keep <curses-terminal> ;
: start-remote-curses ( terminal window -- curses-terminal )
[
init-terminal
initscr curses-pointer-error drop
dup ptr>> set_term curses-pointer-error drop
] dip apply-options ;
<PRIVATE