diff --git a/src/ncurses/Curses.ml b/src/ncurses/Curses.ml index e29f596fd7d611df222865ab954ab46022bdd0a5..59ff56fc04dcf555c01f94671bef543874f7ffa3 100644 --- a/src/ncurses/Curses.ml +++ b/src/ncurses/Curses.ml @@ -14,4 +14,5 @@ external mvwaddch: window -> int -> int -> char -> unit = "curses_mvwaddch" external addstr: string -> unit = "curses_addstr" external mvwaddstr: window -> int -> int -> string -> unit = "curses_mvwaddstr" external getmaxyx: window -> int * int = "curses_getmaxyx" +external getch : unit -> int = "curses_getch" diff --git a/src/ncurses/Curses.mli b/src/ncurses/Curses.mli index ac9b3697f0a8fdd33a91baa785a8aa3a1db1510b..fa72d6864160bb98146611fdae8c86b88aeb46e4 100644 --- a/src/ncurses/Curses.mli +++ b/src/ncurses/Curses.mli @@ -13,3 +13,6 @@ val mvwaddch: window -> int -> int -> char -> unit val addstr: string -> unit val mvwaddstr: window -> int -> int -> string -> unit val getmaxyx: window -> int * int + +val getch : unit -> int + diff --git a/src/ncurses/Curses_stub.c b/src/ncurses/Curses_stub.c index 39ee0c0dbff17af11e185e35c791e9c15915ff44..1178a0a66eb6b1cf41f1dd97034d5eff742f5535 100644 --- a/src/ncurses/Curses_stub.c +++ b/src/ncurses/Curses_stub.c @@ -112,4 +112,9 @@ value curses_getmaxyx(value win) CAMLreturn ( hw ); } +value curses_getch(value unit) { + CAMLparam1( unit ); + CAMLreturn (Val_int(getch())); +} + } diff --git a/src/ncurses/NCUI.mli b/src/ncurses/NCUI.mli index a67d16c57e6be8c1b880b357a2a9c2a21250c754..99984c495aad21f5c6f9b584d172429bd7e835e6 100644 --- a/src/ncurses/NCUI.mli +++ b/src/ncurses/NCUI.mli @@ -26,3 +26,5 @@ val set_root_widget : widget -> unit val screen_open : unit -> unit val screen_close : unit -> unit + +