405 lines
7.5 KiB
Scheme
405 lines
7.5 KiB
Scheme
(define-interface ncurses-interface
|
|
(export init-screen
|
|
newterm
|
|
endwin
|
|
isendwin
|
|
delscreen
|
|
unctrl
|
|
keyname
|
|
filter
|
|
use_env
|
|
putwin
|
|
getwin
|
|
delay-output
|
|
start-color
|
|
init-pair
|
|
flushinp
|
|
curses-version
|
|
use-default-colors
|
|
assume-default-colors
|
|
define-key
|
|
baudrate
|
|
erasechar
|
|
has_ic
|
|
has_il
|
|
killchar
|
|
longname
|
|
termname
|
|
has-key
|
|
start-color
|
|
init-pair
|
|
init-color
|
|
has-colors
|
|
can-change-colors
|
|
color-pair
|
|
cbreak
|
|
nocbreak
|
|
echo
|
|
noecho
|
|
halfdelay
|
|
intrflush
|
|
keypad
|
|
meta
|
|
nodelay
|
|
raw
|
|
noraw
|
|
qiflush
|
|
noqiflush
|
|
beep
|
|
flash
|
|
def-prog-mode
|
|
def-shell-mode
|
|
reset-prog-mode
|
|
reset-shell-mode
|
|
resetty
|
|
savetty
|
|
curs-set
|
|
napms
|
|
mcprint
|
|
is-term-resized
|
|
resize-term
|
|
resizeterm
|
|
scr-dump
|
|
scr-restore
|
|
scr-init
|
|
scr-set
|
|
set-term
|
|
newwin
|
|
delwin
|
|
mvwin
|
|
subwin
|
|
derwin
|
|
mvderwin
|
|
dupwin
|
|
wsyncup
|
|
wcursyncup
|
|
wsyncdown
|
|
syncok
|
|
wrefresh
|
|
wnoutrefresh
|
|
redrawwin
|
|
doupdate
|
|
wredrawln
|
|
;;getyx
|
|
;;getparyx
|
|
;;getbegyx
|
|
;;getmaxyx
|
|
gety
|
|
getx
|
|
getmaxy
|
|
getmaxx
|
|
wresize
|
|
idlok
|
|
leaveok
|
|
scrollok
|
|
idcok
|
|
immedok
|
|
wsetscrreg
|
|
nl
|
|
nonl
|
|
waddch
|
|
waddstr
|
|
waddnstr
|
|
winsch
|
|
winsstr
|
|
winsnstr
|
|
wechochar
|
|
wattroff
|
|
wattron
|
|
wattrset
|
|
wstandend
|
|
wstandout
|
|
wbkgdset
|
|
wbkgd
|
|
getbkgd
|
|
wborder
|
|
box
|
|
whline
|
|
wvline
|
|
scroll
|
|
wscrl
|
|
wmove
|
|
wgetch
|
|
wgetstr
|
|
wgetnstr
|
|
winch
|
|
winstr
|
|
winnstr
|
|
werase
|
|
wclear
|
|
wclrtobot
|
|
wclrtoeol
|
|
clearok
|
|
wdelch
|
|
wdeleteln
|
|
winsertln
|
|
winsdelln
|
|
overlay
|
|
overwrite
|
|
copywin
|
|
touchline
|
|
touchwin
|
|
untouchwin
|
|
wtouchln
|
|
is-linetouched
|
|
is-wintouched
|
|
wprintw
|
|
newpad
|
|
subpad
|
|
prefresh
|
|
pnoutrefresh
|
|
pechochar
|
|
standard-screen
|
|
COLS
|
|
LINES
|
|
A-NORMAL
|
|
A-STANDOUT
|
|
A-UNDERLINE
|
|
A-REVERSE
|
|
A-BLINK
|
|
A-DIM
|
|
A-BOLD
|
|
A-PROTECT
|
|
A-INVIS
|
|
A-ALTCHARSET
|
|
COLOR-BLACK
|
|
COLOR-RED
|
|
COLOR-GREEN
|
|
COLOR-YELLOW
|
|
COLOR-BLUE
|
|
COLOR-MAGENTA
|
|
COLOR-CYAN
|
|
COLOR-WHITE
|
|
refresh
|
|
move
|
|
setscrreg
|
|
scrl
|
|
printw
|
|
clear
|
|
addch
|
|
echochar
|
|
addstr
|
|
addnstr
|
|
insch
|
|
insstr
|
|
insnstr
|
|
printw
|
|
attroff
|
|
attron
|
|
attrset
|
|
standend
|
|
standout
|
|
bkgdset
|
|
bkgd
|
|
border
|
|
hline
|
|
vline
|
|
getch
|
|
getstr
|
|
getnstr
|
|
erase
|
|
clear
|
|
clrtobot
|
|
clrtoeol
|
|
delch
|
|
deleteln
|
|
insdelln
|
|
insertln
|
|
mvwaddch
|
|
mvwaddstr
|
|
mvwaddnstr
|
|
mvwinsch
|
|
mvwinsstr
|
|
mvwinsnstr
|
|
mvwprintw
|
|
mvwhline
|
|
mvwvline
|
|
mvwgetch
|
|
mvwgetstr
|
|
mvwgetnstr
|
|
mvwdelch
|
|
set-stdscr-internal
|
|
set-standard-screen
|
|
make-window
|
|
window-c-pointer
|
|
|
|
color-black
|
|
color-red
|
|
color-green
|
|
color-yellow
|
|
color-blue
|
|
color-magenta
|
|
color-cyan
|
|
color-white
|
|
|
|
key-code-yes
|
|
key-min
|
|
key-break
|
|
key-sreset
|
|
key-reset
|
|
key-down
|
|
key-up
|
|
key-left
|
|
key-right
|
|
key-home
|
|
key-backspace
|
|
key-f0
|
|
key-f1
|
|
key-f2
|
|
key-f3
|
|
key-f4
|
|
key-f5
|
|
key-f6
|
|
key-f7
|
|
key-f8
|
|
key-f9
|
|
key-f10
|
|
key-f11
|
|
key-f12
|
|
key-dl
|
|
key-il
|
|
key-dc
|
|
key-ic
|
|
key-eic
|
|
key-clear
|
|
key-eos
|
|
key-eol
|
|
key-sf
|
|
key-sr
|
|
key-npage
|
|
key-ppage
|
|
key-stab
|
|
key-ctab
|
|
key-catab
|
|
key-enter
|
|
key-print
|
|
key-ll
|
|
key-a1
|
|
key-a3
|
|
key-b2
|
|
key-c1
|
|
key-c3
|
|
key-btab
|
|
key-beg
|
|
key-cancel
|
|
key-close
|
|
key-command
|
|
key-copy
|
|
key-create
|
|
key-end
|
|
key-exit
|
|
key-find
|
|
key-help
|
|
key-mark
|
|
key-message
|
|
key-move
|
|
key-next
|
|
key-open
|
|
key-options
|
|
key-previous
|
|
key-redo
|
|
key-reference
|
|
key-refresh
|
|
key-replace
|
|
key-restart
|
|
key-resume
|
|
key-save
|
|
key-sbeg
|
|
key-scancel
|
|
key-scommand
|
|
key-scopy
|
|
key-screate
|
|
key-sdc
|
|
key-sdl
|
|
key-select
|
|
key-send
|
|
key-seol
|
|
key-sexit
|
|
key-sfind
|
|
key-shelp
|
|
key-shome
|
|
key-sic
|
|
key-sleft
|
|
key-smessage
|
|
key-smove
|
|
key-snext
|
|
key-soptions
|
|
key-sprevious
|
|
key-sprint
|
|
key-sredo
|
|
key-sreplace
|
|
key-sright
|
|
key-srsume
|
|
key-ssave
|
|
key-ssuspend
|
|
key-sundo
|
|
key-suspend
|
|
key-undo
|
|
key-mouse
|
|
key-resize
|
|
key-event
|
|
|
|
get-terminal-window-size
|
|
set-terminal-window-size!
|
|
|
|
;; input-fields
|
|
|
|
buffer-full?
|
|
make-input-field
|
|
install-input-field
|
|
make&install-input-field
|
|
remove-input-field
|
|
|
|
input-field-refresh
|
|
input-field-reset
|
|
input-field-clear
|
|
input-field-move
|
|
input-field-resize
|
|
input-field-toggle-x-scroll
|
|
input-field-toggle-y-scroll
|
|
|
|
input-field?
|
|
input-field-default-text
|
|
|
|
input-field-text
|
|
set-input-field-text!
|
|
|
|
input-field-window-lines
|
|
|
|
input-field-prompt
|
|
set-input-field-prompt!
|
|
|
|
input-field-x-edit-pos
|
|
|
|
input-field-x-location
|
|
input-field-y-location
|
|
input-field-x-size
|
|
input-field-y-size
|
|
input-field-x-scroll
|
|
input-field-y-scroll
|
|
input-field-line
|
|
input-field-column
|
|
input-field-insert
|
|
|
|
cursor-over-input-field?
|
|
send-input-field
|
|
|
|
standard-behavior
|
|
standard-behavior-pro))
|
|
|
|
(define-structure ncurses ncurses-interface
|
|
(open scheme-with-scsh
|
|
srfi-1
|
|
external-calls
|
|
define-record-types
|
|
conditions
|
|
signals
|
|
; tty-debug
|
|
handle
|
|
ascii
|
|
(with-prefix (subset util (filter)) util-)
|
|
weak)
|
|
(files ncurses
|
|
ncurses-constants
|
|
input-fields))
|