From 02d505714a69b3d4e13c880223d88fef4b62a9e5 Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Wed, 27 Apr 2022 14:40:23 -0500 Subject: [PATCH] added more ncurses functions --- modules/ncurses/module.onyx | 239 ++++++++++++++++- modules/ncurses/ncurses.c | 444 ++++++++++++++++++++++++++++++++ modules/ncurses/onyx_ncurses.so | Bin 158200 -> 216176 bytes 3 files changed, 682 insertions(+), 1 deletion(-) diff --git a/modules/ncurses/module.onyx b/modules/ncurses/module.onyx index 3ca8d6b9..5908a1f3 100644 --- a/modules/ncurses/module.onyx +++ b/modules/ncurses/module.onyx @@ -25,7 +25,7 @@ void __get_max_yx(WINDOW *w, int *y, int *x) { getmaxyx(w, *y, *x); } """ cast_map :: (#type struct {type: type_expr; name: str;}).[ .{ WINDOW, "WINDOW *" }, - ] + ] */ // initscr @@ -35,6 +35,7 @@ void __get_max_yx(WINDOW *w, int *y, int *x) { getmaxyx(w, *y, *x); } newterm :: (type: cstr, out_fd, in_fd: ^u32) -> SCREEN --- set_term :: (new: SCREEN) -> SCREEN --- delscreen :: (sp: SCREEN) -> void --- + exit_curses :: (code: i32) -> void --- // color start_color :: () -> i32 --- @@ -269,12 +270,113 @@ void __get_max_yx(WINDOW *w, int *y, int *x) { getmaxyx(w, *y, *x); } mvvline :: (y, x: i32, ch: chtype, n: i32) -> i32 --- mvwvline :: (w: WINDOW, y, x: i32, ch: chtype, n: i32) -> i32 --- + // new_pair + allow_pair :: (fg, bg: i32) -> i32 --- + find_pair :: (fg, bg: i32) -> i32 --- + free_pair :: (pair: i32) -> i32 --- + + // default_colors + use_default_colors :: () -> i32 --- + assume_default_colors :: (fg, bg: i32) -> i32 --- + + // termattrs + buadrate :: () -> i32 --- + erasechar :: () -> u8 --- + has_ic :: () -> bool --- + has_il :: () -> bool --- + killchar :: () -> u8 --- + longname :: () -> cptr(u8) --- + term_attrs :: () -> attr_t --- + termattrs :: () -> chtype --- + termname :: () -> void --- + + // beep + beep :: () -> void --- + flash :: () -> void --- + + // overlay + overlay :: (srcwin: WINDOW, dstwin: WINDOW) -> i32 --- + overwrite :: (srcwin: WINDOW, dstwin: WINDOW) -> i32 --- + copywin :: (srcwin: WINDOW, dstwin: WINDOW, sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol, overlay: i32) -> i32 --- + + // pad + newpad :: (nlines, ncols: i32) -> WINDOW --- + subpad :: (orig: WINDOW, nlines, ncols: i32, begin_y, begin_x: i32) -> WINDOW --- + prefresh :: (pad: WINDOW, pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol: i32) -> i32 --- + pnoutrefresh :: (pad: WINDOW, pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol: i32) -> i32 --- + pechochar :: (pad: WINDOW, ch: chtype) -> i32 --- + + // define_key + define_key :: (definition: cstr, keycode: i32) -> i32 --- + keyok :: (keycode: i32, enable: bool) -> i32 --- + key_defined :: (definition: cstr) -> i32 --- + + // delch + delch :: () -> i32 --- + wdelch :: (w: WINDOW) -> i32 --- + mvdelch :: (y, x: i32) -> i32 --- + mvwdelch :: (w: WINDOW, y, x: i32) -> i32 --- + + // deleteln + deleteln :: () -> i32 --- + wdeleteln :: (w: WINDOW) -> i32 --- + insdelln :: (n: i32) -> i32 --- + winsdelln :: (w: WINDOW, n: i32) -> i32 --- + insertln :: () -> i32 --- + winsertln :: (w: WINDOW) -> i32 --- + + // slk + slk_init :: (fmt: i32) -> i32 --- + slk_set :: (labnum: i32, label: cstr, fmt: i32) -> i32 --- + slk_label :: (labnum: i32) -> cptr(u8) --- + slk_refresh :: () -> i32 --- + slk_noutrefresh :: () -> i32 --- + slk_clear :: () -> i32 --- + slk_restore :: () -> i32 --- + slk_touch :: () -> i32 --- + slk_attron :: (attrs: chtype) -> i32 --- + slk_attroff :: (attrs: chtype) -> i32 --- + slk_attrset :: (attrs: chtype) -> i32 --- + slk_attr :: () -> attr_t --- + slk_color :: (pair: i32) -> i32 --- + + // legacy + getattrs :: (w: WINDOW) -> i32 --- + getbegx :: (w: WINDOW) -> i32 --- + getbegy :: (w: WINDOW) -> i32 --- + getcurx :: (w: WINDOW) -> i32 --- + getcury :: (w: WINDOW) -> i32 --- + getmaxx :: (w: WINDOW) -> i32 --- + getmaxy :: (w: WINDOW) -> i32 --- + getparx :: (w: WINDOW) -> i32 --- + getpary :: (w: WINDOW) -> i32 --- + + // mouse + has_mouse :: () -> bool --- + getmouse :: (@out event: ^MEvent) -> i32 --- + ungetmouse :: (@out event: ^MEvent) -> i32 --- + mousemask :: (newmask: mmask_t, @out oldmask: ^mmask_t) -> mmask_t --- + wenclone :: (w: WINDOW, y, x: i32) -> bool --- + mouse_trafo :: (py, px: ^i32, to_screen: bool) -> bool --- + wmouse_trafo :: (w: WINDOW, py, px: ^i32, to_screen: bool) -> bool --- + mouseinterval :: (erval: i32) -> i32 --- + + // resizeterm + is_term_resized :: (lines, columns: i32) -> bool --- + resize_term :: (lines, columns: i32) -> bool --- + resizeterm :: (lines, columns: i32) -> bool --- + + // scroll + scroll :: (w: WINDOW) -> i32 --- + scrl :: (n: i32) -> i32 --- + wscrl :: (w: WINDOW, n: i32) -> i32 --- // variables __get_stdscr :: () -> WINDOW --- NCURSES_ACS :: (a: i32) -> chtype --- } + stdscr :: __get_stdscr getyx :: __get_yx getparyx :: __get_par_yx @@ -334,6 +436,51 @@ SCREEN :: #distinct u64 chtype :: u32 attr_t :: u32 +mmask_t :: u64 +MEvent :: struct { + id: u16; + x, y, z: i32; + bstate: mmask_t; +} + +BUTTON1_RELEASED :: 0x01 << (0 * 6) +BUTTON1_PRESSED :: 0x02 << (0 * 6) +BUTTON1_CLICKED :: 0x04 << (0 * 6) +BUTTON1_DOUBLE_CLICKED :: 0x08 << (0 * 6) +BUTTON1_TRIPLE_CLICKED :: 0x10 << (0 * 6) +BUTTON2_RELEASED :: 0x01 << (1 * 6) +BUTTON2_PRESSED :: 0x02 << (1 * 6) +BUTTON2_CLICKED :: 0x04 << (1 * 6) +BUTTON2_DOUBLE_CLICKED :: 0x08 << (1 * 6) +BUTTON2_TRIPLE_CLICKED :: 0x10 << (1 * 6) +BUTTON3_RELEASED :: 0x01 << (2 * 6) +BUTTON3_PRESSED :: 0x02 << (2 * 6) +BUTTON3_CLICKED :: 0x04 << (2 * 6) +BUTTON3_DOUBLE_CLICKED :: 0x08 << (2 * 6) +BUTTON3_TRIPLE_CLICKED :: 0x10 << (2 * 6) +BUTTON4_RELEASED :: 0x01 << (3 * 6) +BUTTON4_PRESSED :: 0x02 << (3 * 6) +BUTTON4_CLICKED :: 0x04 << (3 * 6) +BUTTON4_DOUBLE_CLICKED :: 0x08 << (3 * 6) +BUTTON4_TRIPLE_CLICKED :: 0x10 << (3 * 6) +BUTTON5_RELEASED :: 0x01 << (4 * 6) +BUTTON5_PRESSED :: 0x02 << (4 * 6) +BUTTON5_CLICKED :: 0x04 << (4 * 6) +BUTTON5_DOUBLE_CLICKED :: 0x08 << (4 * 6) +BUTTON5_TRIPLE_CLICKED :: 0x10 << (4 * 6) +BUTTON_CTRL :: 0x01 << (6 * 6) +BUTTON_SHIFT :: 0x02 << (6 * 6) +BUTTON_ALT :: 0x04 << (6 * 6) +REPORT_MOUSE_POSITION :: 0x08 << (6 * 6) + +BUTTON_RELEASE :: macro (e: mmask_t, button: i32) => (e & (1 << (button * 6))) != 0; +BUTTON_PRESS :: macro (e: mmask_t, button: i32) => (e & (2 << (button * 6))) != 0; +BUTTON_CLICK :: macro (e: mmask_t, button: i32) => (e & (4 << (button * 6))) != 0; +BUTTON_DOUBLE_CLICK :: macro (e: mmask_t, button: i32) => (e & (8 << (button * 6))) != 0; +BUTTON_TRIPLE_CLICK :: macro (e: mmask_t, button: i32) => (e & (16 << (button * 6))) != 0; + +ALL_MOUSE_EVENTS :: (1 << (7 * 6)) - 1 + A_NORMAL :: 0 A_ATTRIBUTES :: 0xffffff00 A_CHARTEXT :: 0xff @@ -364,3 +511,93 @@ COLOR_MAGENTA :: 5 COLOR_CYAN :: 6 COLOR_WHITE :: 7 + +KEY_DOWN :: 0402 /* down-arrow key */ +KEY_UP :: 0403 /* up-arrow key */ +KEY_LEFT :: 0404 /* left-arrow key */ +KEY_RIGHT :: 0405 /* right-arrow key */ +KEY_HOME :: 0406 /* home key */ +KEY_BACKSPACE :: 0407 /* backspace key */ +KEY_F0 :: 0410 /* Function keys. Space for 64 */ +KEY_F :: macro (n) => KEY_FO + n /* Value of function key n */ +KEY_DL :: 0510 /* delete-line key */ +KEY_IL :: 0511 /* insert-line key */ +KEY_DC :: 0512 /* delete-character key */ +KEY_IC :: 0513 /* insert-character key */ +KEY_EIC :: 0514 /* sent by rmir or smir in insert mode */ +KEY_CLEAR :: 0515 /* clear-screen or erase key */ +KEY_EOS :: 0516 /* clear-to-end-of-screen key */ +KEY_EOL :: 0517 /* clear-to-end-of-line key */ +KEY_SF :: 0520 /* scroll-forward key */ +KEY_SR :: 0521 /* scroll-backward key */ +KEY_NPAGE :: 0522 /* next-page key */ +KEY_PPAGE :: 0523 /* previous-page key */ +KEY_STAB :: 0524 /* set-tab key */ +KEY_CTAB :: 0525 /* clear-tab key */ +KEY_CATAB :: 0526 /* clear-all-tabs key */ +KEY_ENTER :: 0527 /* enter/send key */ +KEY_PRINT :: 0532 /* print key */ +KEY_LL :: 0533 /* lower-left key (home down) */ +KEY_A1 :: 0534 /* upper left of keypad */ +KEY_A3 :: 0535 /* upper right of keypad */ +KEY_B2 :: 0536 /* center of keypad */ +KEY_C1 :: 0537 /* lower left of keypad */ +KEY_C3 :: 0540 /* lower right of keypad */ +KEY_BTAB :: 0541 /* back-tab key */ +KEY_BEG :: 0542 /* begin key */ +KEY_CANCEL :: 0543 /* cancel key */ +KEY_CLOSE :: 0544 /* close key */ +KEY_COMMAND :: 0545 /* command key */ +KEY_COPY :: 0546 /* copy key */ +KEY_CREATE :: 0547 /* create key */ +KEY_END :: 0550 /* end key */ +KEY_EXIT :: 0551 /* exit key */ +KEY_FIND :: 0552 /* find key */ +KEY_HELP :: 0553 /* help key */ +KEY_MARK :: 0554 /* mark key */ +KEY_MESSAGE :: 0555 /* message key */ +KEY_MOVE :: 0556 /* move key */ +KEY_NEXT :: 0557 /* next key */ +KEY_OPEN :: 0560 /* open key */ +KEY_OPTIONS :: 0561 /* options key */ +KEY_PREVIOUS :: 0562 /* previous key */ +KEY_REDO :: 0563 /* redo key */ +KEY_REFERENCE :: 0564 /* reference key */ +KEY_REFRESH :: 0565 /* refresh key */ +KEY_REPLACE :: 0566 /* replace key */ +KEY_RESTART :: 0567 /* restart key */ +KEY_RESUME :: 0570 /* resume key */ +KEY_SAVE :: 0571 /* save key */ +KEY_SBEG :: 0572 /* shifted begin key */ +KEY_SCANCEL :: 0573 /* shifted cancel key */ +KEY_SCOMMAND :: 0574 /* shifted command key */ +KEY_SCOPY :: 0575 /* shifted copy key */ +KEY_SCREATE :: 0576 /* shifted create key */ +KEY_SDC :: 0577 /* shifted delete-character key */ +KEY_SDL :: 0600 /* shifted delete-line key */ +KEY_SELECT :: 0601 /* select key */ +KEY_SEND :: 0602 /* shifted end key */ +KEY_SEOL :: 0603 /* shifted clear-to-end-of-line key */ +KEY_SEXIT :: 0604 /* shifted exit key */ +KEY_SFIND :: 0605 /* shifted find key */ +KEY_SHELP :: 0606 /* shifted help key */ +KEY_SHOME :: 0607 /* shifted home key */ +KEY_SIC :: 0610 /* shifted insert-character key */ +KEY_SLEFT :: 0611 /* shifted left-arrow key */ +KEY_SMESSAGE :: 0612 /* shifted message key */ +KEY_SMOVE :: 0613 /* shifted move key */ +KEY_SNEXT :: 0614 /* shifted next key */ +KEY_SOPTIONS :: 0615 /* shifted options key */ +KEY_SPREVIOUS :: 0616 /* shifted previous key */ +KEY_SPRINT :: 0617 /* shifted print key */ +KEY_SREDO :: 0620 /* shifted redo key */ +KEY_SREPLACE :: 0621 /* shifted replace key */ +KEY_SRIGHT :: 0622 /* shifted right-arrow key */ +KEY_SRSUME :: 0623 /* shifted resume key */ +KEY_SSAVE :: 0624 /* shifted save key */ +KEY_SSUSPEND :: 0625 /* shifted suspend key */ +KEY_SUNDO :: 0626 /* shifted undo key */ +KEY_SUSPEND :: 0627 /* suspend key */ +KEY_UNDO :: 0630 /* undo key */ +KEY_MOUSE :: 0631 /* Mouse event has occurred */ + diff --git a/modules/ncurses/ncurses.c b/modules/ncurses/ncurses.c index 8ccc641c..029c211c 100644 --- a/modules/ncurses/ncurses.c +++ b/modules/ncurses/ncurses.c @@ -47,6 +47,11 @@ ONYX_DEF(delscreen, (WASM_I64), ()) { return NULL; } +ONYX_DEF(exit_curses, (WASM_I32), ()) { + exit_curses(P(0, i32)); + return NULL; +} + ONYX_DEF(start_color, (), (WASM_I32)) { results->data[0] = WASM_I32_VAL(start_color()); return NULL; @@ -977,6 +982,371 @@ ONYX_DEF(mvwvline, (WASM_I64, WASM_I32, WASM_I32, WASM_I32, WASM_I32), (WASM_I32 return NULL; } +ONYX_DEF(allow_pair, (WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(allow_pair(P(0, i32), P(1, i32))); + return NULL; +} + +ONYX_DEF(find_pair, (WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(find_pair(P(0, i32), P(1, i32))); + return NULL; +} + +ONYX_DEF(free_pair, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(free_pair(P(0, i32))); + return NULL; +} + +ONYX_DEF(use_default_colors, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(use_default_colors()); + return NULL; +} + +ONYX_DEF(assume_default_colors, (WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(assume_default_colors(P(0, i32), P(1, i32))); + return NULL; +} + +ONYX_DEF(buadrate, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(buadrate()); + return NULL; +} + +ONYX_DEF(erasechar, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(erasechar()); + return NULL; +} + +ONYX_DEF(has_ic, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(has_ic()); + return NULL; +} + +ONYX_DEF(has_il, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(has_il()); + return NULL; +} + +ONYX_DEF(killchar, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(killchar()); + return NULL; +} + +ONYX_DEF(longname, (), (WASM_I64)) { + results->data[0] = WASM_I64_VAL(longname()); + return NULL; +} + +ONYX_DEF(term_attrs, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(term_attrs()); + return NULL; +} + +ONYX_DEF(termattrs, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(termattrs()); + return NULL; +} + +ONYX_DEF(termname, (), ()) { + termname(); + return NULL; +} + +ONYX_DEF(beep, (), ()) { + beep(); + return NULL; +} + +ONYX_DEF(flash, (), ()) { + flash(); + return NULL; +} + +ONYX_DEF(overlay, (WASM_I64, WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(overlay((WINDOW *) P(0, i64), (WINDOW *) P(1, i64))); + return NULL; +} + +ONYX_DEF(overwrite, (WASM_I64, WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(overwrite((WINDOW *) P(0, i64), (WINDOW *) P(1, i64))); + return NULL; +} + +ONYX_DEF(copywin, (WASM_I64, WASM_I64, WASM_I32, WASM_I32, WASM_I32, WASM_I32, WASM_I32, WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(copywin((WINDOW *) P(0, i64), (WINDOW *) P(1, i64), P(2, i32), P(3, i32), P(4, i32), P(5, i32), P(6, i32), P(7, i32), P(8, i32))); + return NULL; +} + +ONYX_DEF(newpad, (WASM_I32, WASM_I32), (WASM_I64)) { + results->data[0] = WASM_I64_VAL(newpad(P(0, i32), P(1, i32))); + return NULL; +} + +ONYX_DEF(subpad, (WASM_I64, WASM_I32, WASM_I32, WASM_I32, WASM_I32), (WASM_I64)) { + results->data[0] = WASM_I64_VAL(subpad((WINDOW *) P(0, i64), P(1, i32), P(2, i32), P(3, i32), P(4, i32))); + return NULL; +} + +ONYX_DEF(prefresh, (WASM_I64, WASM_I32, WASM_I32, WASM_I32, WASM_I32, WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(prefresh((WINDOW *) P(0, i64), P(1, i32), P(2, i32), P(3, i32), P(4, i32), P(5, i32), P(6, i32))); + return NULL; +} + +ONYX_DEF(pnoutrefresh, (WASM_I64, WASM_I32, WASM_I32, WASM_I32, WASM_I32, WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(pnoutrefresh((WINDOW *) P(0, i64), P(1, i32), P(2, i32), P(3, i32), P(4, i32), P(5, i32), P(6, i32))); + return NULL; +} + +ONYX_DEF(pechochar, (WASM_I64, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(pechochar((WINDOW *) P(0, i64), P(1, i32))); + return NULL; +} + +ONYX_DEF(define_key, (WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(define_key(ONYX_PTR(P(0, i32)), P(1, i32))); + return NULL; +} + +ONYX_DEF(keyok, (WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(keyok(P(0, i32), P(1, i32))); + return NULL; +} + +ONYX_DEF(key_defined, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(key_defined(ONYX_PTR(P(0, i32)))); + return NULL; +} + +ONYX_DEF(delch, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(delch()); + return NULL; +} + +ONYX_DEF(wdelch, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(wdelch((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(mvdelch, (WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(mvdelch(P(0, i32), P(1, i32))); + return NULL; +} + +ONYX_DEF(mvwdelch, (WASM_I64, WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(mvwdelch((WINDOW *) P(0, i64), P(1, i32), P(2, i32))); + return NULL; +} + +ONYX_DEF(deleteln, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(deleteln()); + return NULL; +} + +ONYX_DEF(wdeleteln, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(wdeleteln((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(insdelln, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(insdelln(P(0, i32))); + return NULL; +} + +ONYX_DEF(winsdelln, (WASM_I64, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(winsdelln((WINDOW *) P(0, i64), P(1, i32))); + return NULL; +} + +ONYX_DEF(insertln, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(insertln()); + return NULL; +} + +ONYX_DEF(winsertln, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(winsertln((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(slk_init, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_init(P(0, i32))); + return NULL; +} + +ONYX_DEF(slk_set, (WASM_I32, WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_set(P(0, i32), ONYX_PTR(P(1, i32)), P(2, i32))); + return NULL; +} + +ONYX_DEF(slk_label, (WASM_I32), (WASM_I64)) { + results->data[0] = WASM_I64_VAL(slk_label(P(0, i32))); + return NULL; +} + +ONYX_DEF(slk_refresh, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_refresh()); + return NULL; +} + +ONYX_DEF(slk_noutrefresh, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_noutrefresh()); + return NULL; +} + +ONYX_DEF(slk_clear, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_clear()); + return NULL; +} + +ONYX_DEF(slk_restore, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_restore()); + return NULL; +} + +ONYX_DEF(slk_touch, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_touch()); + return NULL; +} + +ONYX_DEF(slk_attron, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_attron(P(0, i32))); + return NULL; +} + +ONYX_DEF(slk_attroff, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_attroff(P(0, i32))); + return NULL; +} + +ONYX_DEF(slk_attrset, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_attrset(P(0, i32))); + return NULL; +} + +ONYX_DEF(slk_attr, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_attr()); + return NULL; +} + +ONYX_DEF(slk_color, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(slk_color(P(0, i32))); + return NULL; +} + +ONYX_DEF(getattrs, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getattrs((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(getbegx, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getbegx((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(getbegy, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getbegy((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(getcurx, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getcurx((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(getcury, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getcury((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(getmaxx, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getmaxx((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(getmaxy, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getmaxy((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(getparx, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getparx((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(getpary, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getpary((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(has_mouse, (), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(has_mouse()); + return NULL; +} + +ONYX_DEF(getmouse, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(getmouse(ONYX_PTR(P(0, i32)))); + return NULL; +} + +ONYX_DEF(ungetmouse, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(ungetmouse(ONYX_PTR(P(0, i32)))); + return NULL; +} + +ONYX_DEF(mousemask, (WASM_I64, WASM_I32), (WASM_I64)) { + results->data[0] = WASM_I64_VAL(mousemask(P(0, i64), ONYX_PTR(P(1, i32)))); + return NULL; +} + +ONYX_DEF(wenclone, (WASM_I64, WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(wenclone((WINDOW *) P(0, i64), P(1, i32), P(2, i32))); + return NULL; +} + +ONYX_DEF(mouse_trafo, (WASM_I32, WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(mouse_trafo(ONYX_PTR(P(0, i32)), ONYX_PTR(P(1, i32)), P(2, i32))); + return NULL; +} + +ONYX_DEF(wmouse_trafo, (WASM_I64, WASM_I32, WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(wmouse_trafo((WINDOW *) P(0, i64), ONYX_PTR(P(1, i32)), ONYX_PTR(P(2, i32)), P(3, i32))); + return NULL; +} + +ONYX_DEF(mouseinterval, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(mouseinterval(P(0, i32))); + return NULL; +} + +ONYX_DEF(is_term_resized, (WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(is_term_resized(P(0, i32), P(1, i32))); + return NULL; +} + +ONYX_DEF(resize_term, (WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(resize_term(P(0, i32), P(1, i32))); + return NULL; +} + +ONYX_DEF(resizeterm, (WASM_I32, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(resizeterm(P(0, i32), P(1, i32))); + return NULL; +} + +ONYX_DEF(scroll, (WASM_I64), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(scroll((WINDOW *) P(0, i64))); + return NULL; +} + +ONYX_DEF(scrl, (WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(scrl(P(0, i32))); + return NULL; +} + +ONYX_DEF(wscrl, (WASM_I64, WASM_I32), (WASM_I32)) { + results->data[0] = WASM_I32_VAL(wscrl((WINDOW *) P(0, i64), P(1, i32))); + return NULL; +} + ONYX_DEF(__get_stdscr, (), (WASM_I64)) { results->data[0] = WASM_I64_VAL(__get_stdscr()); return NULL; @@ -996,6 +1366,7 @@ ONYX_LIBRARY { ONYX_FUNC(newterm) ONYX_FUNC(set_term) ONYX_FUNC(delscreen) + ONYX_FUNC(exit_curses) ONYX_FUNC(start_color) ONYX_FUNC(has_colors) ONYX_FUNC(can_change_color) @@ -1182,6 +1553,79 @@ ONYX_LIBRARY { ONYX_FUNC(mvwhline) ONYX_FUNC(mvvline) ONYX_FUNC(mvwvline) + ONYX_FUNC(allow_pair) + ONYX_FUNC(find_pair) + ONYX_FUNC(free_pair) + ONYX_FUNC(use_default_colors) + ONYX_FUNC(assume_default_colors) + ONYX_FUNC(buadrate) + ONYX_FUNC(erasechar) + ONYX_FUNC(has_ic) + ONYX_FUNC(has_il) + ONYX_FUNC(killchar) + ONYX_FUNC(longname) + ONYX_FUNC(term_attrs) + ONYX_FUNC(termattrs) + ONYX_FUNC(termname) + ONYX_FUNC(beep) + ONYX_FUNC(flash) + ONYX_FUNC(overlay) + ONYX_FUNC(overwrite) + ONYX_FUNC(copywin) + ONYX_FUNC(newpad) + ONYX_FUNC(subpad) + ONYX_FUNC(prefresh) + ONYX_FUNC(pnoutrefresh) + ONYX_FUNC(pechochar) + ONYX_FUNC(define_key) + ONYX_FUNC(keyok) + ONYX_FUNC(key_defined) + ONYX_FUNC(delch) + ONYX_FUNC(wdelch) + ONYX_FUNC(mvdelch) + ONYX_FUNC(mvwdelch) + ONYX_FUNC(deleteln) + ONYX_FUNC(wdeleteln) + ONYX_FUNC(insdelln) + ONYX_FUNC(winsdelln) + ONYX_FUNC(insertln) + ONYX_FUNC(winsertln) + ONYX_FUNC(slk_init) + ONYX_FUNC(slk_set) + ONYX_FUNC(slk_label) + ONYX_FUNC(slk_refresh) + ONYX_FUNC(slk_noutrefresh) + ONYX_FUNC(slk_clear) + ONYX_FUNC(slk_restore) + ONYX_FUNC(slk_touch) + ONYX_FUNC(slk_attron) + ONYX_FUNC(slk_attroff) + ONYX_FUNC(slk_attrset) + ONYX_FUNC(slk_attr) + ONYX_FUNC(slk_color) + ONYX_FUNC(getattrs) + ONYX_FUNC(getbegx) + ONYX_FUNC(getbegy) + ONYX_FUNC(getcurx) + ONYX_FUNC(getcury) + ONYX_FUNC(getmaxx) + ONYX_FUNC(getmaxy) + ONYX_FUNC(getparx) + ONYX_FUNC(getpary) + ONYX_FUNC(has_mouse) + ONYX_FUNC(getmouse) + ONYX_FUNC(ungetmouse) + ONYX_FUNC(mousemask) + ONYX_FUNC(wenclone) + ONYX_FUNC(mouse_trafo) + ONYX_FUNC(wmouse_trafo) + ONYX_FUNC(mouseinterval) + ONYX_FUNC(is_term_resized) + ONYX_FUNC(resize_term) + ONYX_FUNC(resizeterm) + ONYX_FUNC(scroll) + ONYX_FUNC(scrl) + ONYX_FUNC(wscrl) ONYX_FUNC(__get_stdscr) ONYX_FUNC(NCURSES_ACS) NULL diff --git a/modules/ncurses/onyx_ncurses.so b/modules/ncurses/onyx_ncurses.so index ca0c57c57da270458262de8f7c0425096fc8c0d4..e3be48003cbb007ba3792594380468bb36564e22 100755 GIT binary patch literal 216176 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 literal 158200 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 O4Xiw^>&`#u$NvFHKJ~o- -- 2.25.1