17db96d56Sopenharmony_ci/*[clinic input] 27db96d56Sopenharmony_cipreserve 37db96d56Sopenharmony_ci[clinic start generated code]*/ 47db96d56Sopenharmony_ci 57db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_addch__doc__, 67db96d56Sopenharmony_ci"addch([y, x,] ch, [attr=_curses.A_NORMAL])\n" 77db96d56Sopenharmony_ci"Paint the character.\n" 87db96d56Sopenharmony_ci"\n" 97db96d56Sopenharmony_ci" y\n" 107db96d56Sopenharmony_ci" Y-coordinate.\n" 117db96d56Sopenharmony_ci" x\n" 127db96d56Sopenharmony_ci" X-coordinate.\n" 137db96d56Sopenharmony_ci" ch\n" 147db96d56Sopenharmony_ci" Character to add.\n" 157db96d56Sopenharmony_ci" attr\n" 167db96d56Sopenharmony_ci" Attributes for the character.\n" 177db96d56Sopenharmony_ci"\n" 187db96d56Sopenharmony_ci"Paint character ch at (y, x) with attributes attr,\n" 197db96d56Sopenharmony_ci"overwriting any character previously painted at that location.\n" 207db96d56Sopenharmony_ci"By default, the character position and attributes are the\n" 217db96d56Sopenharmony_ci"current settings for the window object."); 227db96d56Sopenharmony_ci 237db96d56Sopenharmony_ci#define _CURSES_WINDOW_ADDCH_METHODDEF \ 247db96d56Sopenharmony_ci {"addch", (PyCFunction)_curses_window_addch, METH_VARARGS, _curses_window_addch__doc__}, 257db96d56Sopenharmony_ci 267db96d56Sopenharmony_cistatic PyObject * 277db96d56Sopenharmony_ci_curses_window_addch_impl(PyCursesWindowObject *self, int group_left_1, 287db96d56Sopenharmony_ci int y, int x, PyObject *ch, int group_right_1, 297db96d56Sopenharmony_ci long attr); 307db96d56Sopenharmony_ci 317db96d56Sopenharmony_cistatic PyObject * 327db96d56Sopenharmony_ci_curses_window_addch(PyCursesWindowObject *self, PyObject *args) 337db96d56Sopenharmony_ci{ 347db96d56Sopenharmony_ci PyObject *return_value = NULL; 357db96d56Sopenharmony_ci int group_left_1 = 0; 367db96d56Sopenharmony_ci int y = 0; 377db96d56Sopenharmony_ci int x = 0; 387db96d56Sopenharmony_ci PyObject *ch; 397db96d56Sopenharmony_ci int group_right_1 = 0; 407db96d56Sopenharmony_ci long attr = A_NORMAL; 417db96d56Sopenharmony_ci 427db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 437db96d56Sopenharmony_ci case 1: 447db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "O:addch", &ch)) { 457db96d56Sopenharmony_ci goto exit; 467db96d56Sopenharmony_ci } 477db96d56Sopenharmony_ci break; 487db96d56Sopenharmony_ci case 2: 497db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Ol:addch", &ch, &attr)) { 507db96d56Sopenharmony_ci goto exit; 517db96d56Sopenharmony_ci } 527db96d56Sopenharmony_ci group_right_1 = 1; 537db96d56Sopenharmony_ci break; 547db96d56Sopenharmony_ci case 3: 557db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiO:addch", &y, &x, &ch)) { 567db96d56Sopenharmony_ci goto exit; 577db96d56Sopenharmony_ci } 587db96d56Sopenharmony_ci group_left_1 = 1; 597db96d56Sopenharmony_ci break; 607db96d56Sopenharmony_ci case 4: 617db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOl:addch", &y, &x, &ch, &attr)) { 627db96d56Sopenharmony_ci goto exit; 637db96d56Sopenharmony_ci } 647db96d56Sopenharmony_ci group_right_1 = 1; 657db96d56Sopenharmony_ci group_left_1 = 1; 667db96d56Sopenharmony_ci break; 677db96d56Sopenharmony_ci default: 687db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.addch requires 1 to 4 arguments"); 697db96d56Sopenharmony_ci goto exit; 707db96d56Sopenharmony_ci } 717db96d56Sopenharmony_ci return_value = _curses_window_addch_impl(self, group_left_1, y, x, ch, group_right_1, attr); 727db96d56Sopenharmony_ci 737db96d56Sopenharmony_ciexit: 747db96d56Sopenharmony_ci return return_value; 757db96d56Sopenharmony_ci} 767db96d56Sopenharmony_ci 777db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_addstr__doc__, 787db96d56Sopenharmony_ci"addstr([y, x,] str, [attr])\n" 797db96d56Sopenharmony_ci"Paint the string.\n" 807db96d56Sopenharmony_ci"\n" 817db96d56Sopenharmony_ci" y\n" 827db96d56Sopenharmony_ci" Y-coordinate.\n" 837db96d56Sopenharmony_ci" x\n" 847db96d56Sopenharmony_ci" X-coordinate.\n" 857db96d56Sopenharmony_ci" str\n" 867db96d56Sopenharmony_ci" String to add.\n" 877db96d56Sopenharmony_ci" attr\n" 887db96d56Sopenharmony_ci" Attributes for characters.\n" 897db96d56Sopenharmony_ci"\n" 907db96d56Sopenharmony_ci"Paint the string str at (y, x) with attributes attr,\n" 917db96d56Sopenharmony_ci"overwriting anything previously on the display.\n" 927db96d56Sopenharmony_ci"By default, the character position and attributes are the\n" 937db96d56Sopenharmony_ci"current settings for the window object."); 947db96d56Sopenharmony_ci 957db96d56Sopenharmony_ci#define _CURSES_WINDOW_ADDSTR_METHODDEF \ 967db96d56Sopenharmony_ci {"addstr", (PyCFunction)_curses_window_addstr, METH_VARARGS, _curses_window_addstr__doc__}, 977db96d56Sopenharmony_ci 987db96d56Sopenharmony_cistatic PyObject * 997db96d56Sopenharmony_ci_curses_window_addstr_impl(PyCursesWindowObject *self, int group_left_1, 1007db96d56Sopenharmony_ci int y, int x, PyObject *str, int group_right_1, 1017db96d56Sopenharmony_ci long attr); 1027db96d56Sopenharmony_ci 1037db96d56Sopenharmony_cistatic PyObject * 1047db96d56Sopenharmony_ci_curses_window_addstr(PyCursesWindowObject *self, PyObject *args) 1057db96d56Sopenharmony_ci{ 1067db96d56Sopenharmony_ci PyObject *return_value = NULL; 1077db96d56Sopenharmony_ci int group_left_1 = 0; 1087db96d56Sopenharmony_ci int y = 0; 1097db96d56Sopenharmony_ci int x = 0; 1107db96d56Sopenharmony_ci PyObject *str; 1117db96d56Sopenharmony_ci int group_right_1 = 0; 1127db96d56Sopenharmony_ci long attr = 0; 1137db96d56Sopenharmony_ci 1147db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 1157db96d56Sopenharmony_ci case 1: 1167db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "O:addstr", &str)) { 1177db96d56Sopenharmony_ci goto exit; 1187db96d56Sopenharmony_ci } 1197db96d56Sopenharmony_ci break; 1207db96d56Sopenharmony_ci case 2: 1217db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Ol:addstr", &str, &attr)) { 1227db96d56Sopenharmony_ci goto exit; 1237db96d56Sopenharmony_ci } 1247db96d56Sopenharmony_ci group_right_1 = 1; 1257db96d56Sopenharmony_ci break; 1267db96d56Sopenharmony_ci case 3: 1277db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiO:addstr", &y, &x, &str)) { 1287db96d56Sopenharmony_ci goto exit; 1297db96d56Sopenharmony_ci } 1307db96d56Sopenharmony_ci group_left_1 = 1; 1317db96d56Sopenharmony_ci break; 1327db96d56Sopenharmony_ci case 4: 1337db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOl:addstr", &y, &x, &str, &attr)) { 1347db96d56Sopenharmony_ci goto exit; 1357db96d56Sopenharmony_ci } 1367db96d56Sopenharmony_ci group_right_1 = 1; 1377db96d56Sopenharmony_ci group_left_1 = 1; 1387db96d56Sopenharmony_ci break; 1397db96d56Sopenharmony_ci default: 1407db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.addstr requires 1 to 4 arguments"); 1417db96d56Sopenharmony_ci goto exit; 1427db96d56Sopenharmony_ci } 1437db96d56Sopenharmony_ci return_value = _curses_window_addstr_impl(self, group_left_1, y, x, str, group_right_1, attr); 1447db96d56Sopenharmony_ci 1457db96d56Sopenharmony_ciexit: 1467db96d56Sopenharmony_ci return return_value; 1477db96d56Sopenharmony_ci} 1487db96d56Sopenharmony_ci 1497db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_addnstr__doc__, 1507db96d56Sopenharmony_ci"addnstr([y, x,] str, n, [attr])\n" 1517db96d56Sopenharmony_ci"Paint at most n characters of the string.\n" 1527db96d56Sopenharmony_ci"\n" 1537db96d56Sopenharmony_ci" y\n" 1547db96d56Sopenharmony_ci" Y-coordinate.\n" 1557db96d56Sopenharmony_ci" x\n" 1567db96d56Sopenharmony_ci" X-coordinate.\n" 1577db96d56Sopenharmony_ci" str\n" 1587db96d56Sopenharmony_ci" String to add.\n" 1597db96d56Sopenharmony_ci" n\n" 1607db96d56Sopenharmony_ci" Maximal number of characters.\n" 1617db96d56Sopenharmony_ci" attr\n" 1627db96d56Sopenharmony_ci" Attributes for characters.\n" 1637db96d56Sopenharmony_ci"\n" 1647db96d56Sopenharmony_ci"Paint at most n characters of the string str at (y, x) with\n" 1657db96d56Sopenharmony_ci"attributes attr, overwriting anything previously on the display.\n" 1667db96d56Sopenharmony_ci"By default, the character position and attributes are the\n" 1677db96d56Sopenharmony_ci"current settings for the window object."); 1687db96d56Sopenharmony_ci 1697db96d56Sopenharmony_ci#define _CURSES_WINDOW_ADDNSTR_METHODDEF \ 1707db96d56Sopenharmony_ci {"addnstr", (PyCFunction)_curses_window_addnstr, METH_VARARGS, _curses_window_addnstr__doc__}, 1717db96d56Sopenharmony_ci 1727db96d56Sopenharmony_cistatic PyObject * 1737db96d56Sopenharmony_ci_curses_window_addnstr_impl(PyCursesWindowObject *self, int group_left_1, 1747db96d56Sopenharmony_ci int y, int x, PyObject *str, int n, 1757db96d56Sopenharmony_ci int group_right_1, long attr); 1767db96d56Sopenharmony_ci 1777db96d56Sopenharmony_cistatic PyObject * 1787db96d56Sopenharmony_ci_curses_window_addnstr(PyCursesWindowObject *self, PyObject *args) 1797db96d56Sopenharmony_ci{ 1807db96d56Sopenharmony_ci PyObject *return_value = NULL; 1817db96d56Sopenharmony_ci int group_left_1 = 0; 1827db96d56Sopenharmony_ci int y = 0; 1837db96d56Sopenharmony_ci int x = 0; 1847db96d56Sopenharmony_ci PyObject *str; 1857db96d56Sopenharmony_ci int n; 1867db96d56Sopenharmony_ci int group_right_1 = 0; 1877db96d56Sopenharmony_ci long attr = 0; 1887db96d56Sopenharmony_ci 1897db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 1907db96d56Sopenharmony_ci case 2: 1917db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Oi:addnstr", &str, &n)) { 1927db96d56Sopenharmony_ci goto exit; 1937db96d56Sopenharmony_ci } 1947db96d56Sopenharmony_ci break; 1957db96d56Sopenharmony_ci case 3: 1967db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Oil:addnstr", &str, &n, &attr)) { 1977db96d56Sopenharmony_ci goto exit; 1987db96d56Sopenharmony_ci } 1997db96d56Sopenharmony_ci group_right_1 = 1; 2007db96d56Sopenharmony_ci break; 2017db96d56Sopenharmony_ci case 4: 2027db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOi:addnstr", &y, &x, &str, &n)) { 2037db96d56Sopenharmony_ci goto exit; 2047db96d56Sopenharmony_ci } 2057db96d56Sopenharmony_ci group_left_1 = 1; 2067db96d56Sopenharmony_ci break; 2077db96d56Sopenharmony_ci case 5: 2087db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOil:addnstr", &y, &x, &str, &n, &attr)) { 2097db96d56Sopenharmony_ci goto exit; 2107db96d56Sopenharmony_ci } 2117db96d56Sopenharmony_ci group_right_1 = 1; 2127db96d56Sopenharmony_ci group_left_1 = 1; 2137db96d56Sopenharmony_ci break; 2147db96d56Sopenharmony_ci default: 2157db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.addnstr requires 2 to 5 arguments"); 2167db96d56Sopenharmony_ci goto exit; 2177db96d56Sopenharmony_ci } 2187db96d56Sopenharmony_ci return_value = _curses_window_addnstr_impl(self, group_left_1, y, x, str, n, group_right_1, attr); 2197db96d56Sopenharmony_ci 2207db96d56Sopenharmony_ciexit: 2217db96d56Sopenharmony_ci return return_value; 2227db96d56Sopenharmony_ci} 2237db96d56Sopenharmony_ci 2247db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_bkgd__doc__, 2257db96d56Sopenharmony_ci"bkgd($self, ch, attr=_curses.A_NORMAL, /)\n" 2267db96d56Sopenharmony_ci"--\n" 2277db96d56Sopenharmony_ci"\n" 2287db96d56Sopenharmony_ci"Set the background property of the window.\n" 2297db96d56Sopenharmony_ci"\n" 2307db96d56Sopenharmony_ci" ch\n" 2317db96d56Sopenharmony_ci" Background character.\n" 2327db96d56Sopenharmony_ci" attr\n" 2337db96d56Sopenharmony_ci" Background attributes."); 2347db96d56Sopenharmony_ci 2357db96d56Sopenharmony_ci#define _CURSES_WINDOW_BKGD_METHODDEF \ 2367db96d56Sopenharmony_ci {"bkgd", _PyCFunction_CAST(_curses_window_bkgd), METH_FASTCALL, _curses_window_bkgd__doc__}, 2377db96d56Sopenharmony_ci 2387db96d56Sopenharmony_cistatic PyObject * 2397db96d56Sopenharmony_ci_curses_window_bkgd_impl(PyCursesWindowObject *self, PyObject *ch, long attr); 2407db96d56Sopenharmony_ci 2417db96d56Sopenharmony_cistatic PyObject * 2427db96d56Sopenharmony_ci_curses_window_bkgd(PyCursesWindowObject *self, PyObject *const *args, Py_ssize_t nargs) 2437db96d56Sopenharmony_ci{ 2447db96d56Sopenharmony_ci PyObject *return_value = NULL; 2457db96d56Sopenharmony_ci PyObject *ch; 2467db96d56Sopenharmony_ci long attr = A_NORMAL; 2477db96d56Sopenharmony_ci 2487db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("bkgd", nargs, 1, 2)) { 2497db96d56Sopenharmony_ci goto exit; 2507db96d56Sopenharmony_ci } 2517db96d56Sopenharmony_ci ch = args[0]; 2527db96d56Sopenharmony_ci if (nargs < 2) { 2537db96d56Sopenharmony_ci goto skip_optional; 2547db96d56Sopenharmony_ci } 2557db96d56Sopenharmony_ci attr = PyLong_AsLong(args[1]); 2567db96d56Sopenharmony_ci if (attr == -1 && PyErr_Occurred()) { 2577db96d56Sopenharmony_ci goto exit; 2587db96d56Sopenharmony_ci } 2597db96d56Sopenharmony_ciskip_optional: 2607db96d56Sopenharmony_ci return_value = _curses_window_bkgd_impl(self, ch, attr); 2617db96d56Sopenharmony_ci 2627db96d56Sopenharmony_ciexit: 2637db96d56Sopenharmony_ci return return_value; 2647db96d56Sopenharmony_ci} 2657db96d56Sopenharmony_ci 2667db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_attroff__doc__, 2677db96d56Sopenharmony_ci"attroff($self, attr, /)\n" 2687db96d56Sopenharmony_ci"--\n" 2697db96d56Sopenharmony_ci"\n" 2707db96d56Sopenharmony_ci"Remove attribute attr from the \"background\" set."); 2717db96d56Sopenharmony_ci 2727db96d56Sopenharmony_ci#define _CURSES_WINDOW_ATTROFF_METHODDEF \ 2737db96d56Sopenharmony_ci {"attroff", (PyCFunction)_curses_window_attroff, METH_O, _curses_window_attroff__doc__}, 2747db96d56Sopenharmony_ci 2757db96d56Sopenharmony_cistatic PyObject * 2767db96d56Sopenharmony_ci_curses_window_attroff_impl(PyCursesWindowObject *self, long attr); 2777db96d56Sopenharmony_ci 2787db96d56Sopenharmony_cistatic PyObject * 2797db96d56Sopenharmony_ci_curses_window_attroff(PyCursesWindowObject *self, PyObject *arg) 2807db96d56Sopenharmony_ci{ 2817db96d56Sopenharmony_ci PyObject *return_value = NULL; 2827db96d56Sopenharmony_ci long attr; 2837db96d56Sopenharmony_ci 2847db96d56Sopenharmony_ci attr = PyLong_AsLong(arg); 2857db96d56Sopenharmony_ci if (attr == -1 && PyErr_Occurred()) { 2867db96d56Sopenharmony_ci goto exit; 2877db96d56Sopenharmony_ci } 2887db96d56Sopenharmony_ci return_value = _curses_window_attroff_impl(self, attr); 2897db96d56Sopenharmony_ci 2907db96d56Sopenharmony_ciexit: 2917db96d56Sopenharmony_ci return return_value; 2927db96d56Sopenharmony_ci} 2937db96d56Sopenharmony_ci 2947db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_attron__doc__, 2957db96d56Sopenharmony_ci"attron($self, attr, /)\n" 2967db96d56Sopenharmony_ci"--\n" 2977db96d56Sopenharmony_ci"\n" 2987db96d56Sopenharmony_ci"Add attribute attr from the \"background\" set."); 2997db96d56Sopenharmony_ci 3007db96d56Sopenharmony_ci#define _CURSES_WINDOW_ATTRON_METHODDEF \ 3017db96d56Sopenharmony_ci {"attron", (PyCFunction)_curses_window_attron, METH_O, _curses_window_attron__doc__}, 3027db96d56Sopenharmony_ci 3037db96d56Sopenharmony_cistatic PyObject * 3047db96d56Sopenharmony_ci_curses_window_attron_impl(PyCursesWindowObject *self, long attr); 3057db96d56Sopenharmony_ci 3067db96d56Sopenharmony_cistatic PyObject * 3077db96d56Sopenharmony_ci_curses_window_attron(PyCursesWindowObject *self, PyObject *arg) 3087db96d56Sopenharmony_ci{ 3097db96d56Sopenharmony_ci PyObject *return_value = NULL; 3107db96d56Sopenharmony_ci long attr; 3117db96d56Sopenharmony_ci 3127db96d56Sopenharmony_ci attr = PyLong_AsLong(arg); 3137db96d56Sopenharmony_ci if (attr == -1 && PyErr_Occurred()) { 3147db96d56Sopenharmony_ci goto exit; 3157db96d56Sopenharmony_ci } 3167db96d56Sopenharmony_ci return_value = _curses_window_attron_impl(self, attr); 3177db96d56Sopenharmony_ci 3187db96d56Sopenharmony_ciexit: 3197db96d56Sopenharmony_ci return return_value; 3207db96d56Sopenharmony_ci} 3217db96d56Sopenharmony_ci 3227db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_attrset__doc__, 3237db96d56Sopenharmony_ci"attrset($self, attr, /)\n" 3247db96d56Sopenharmony_ci"--\n" 3257db96d56Sopenharmony_ci"\n" 3267db96d56Sopenharmony_ci"Set the \"background\" set of attributes."); 3277db96d56Sopenharmony_ci 3287db96d56Sopenharmony_ci#define _CURSES_WINDOW_ATTRSET_METHODDEF \ 3297db96d56Sopenharmony_ci {"attrset", (PyCFunction)_curses_window_attrset, METH_O, _curses_window_attrset__doc__}, 3307db96d56Sopenharmony_ci 3317db96d56Sopenharmony_cistatic PyObject * 3327db96d56Sopenharmony_ci_curses_window_attrset_impl(PyCursesWindowObject *self, long attr); 3337db96d56Sopenharmony_ci 3347db96d56Sopenharmony_cistatic PyObject * 3357db96d56Sopenharmony_ci_curses_window_attrset(PyCursesWindowObject *self, PyObject *arg) 3367db96d56Sopenharmony_ci{ 3377db96d56Sopenharmony_ci PyObject *return_value = NULL; 3387db96d56Sopenharmony_ci long attr; 3397db96d56Sopenharmony_ci 3407db96d56Sopenharmony_ci attr = PyLong_AsLong(arg); 3417db96d56Sopenharmony_ci if (attr == -1 && PyErr_Occurred()) { 3427db96d56Sopenharmony_ci goto exit; 3437db96d56Sopenharmony_ci } 3447db96d56Sopenharmony_ci return_value = _curses_window_attrset_impl(self, attr); 3457db96d56Sopenharmony_ci 3467db96d56Sopenharmony_ciexit: 3477db96d56Sopenharmony_ci return return_value; 3487db96d56Sopenharmony_ci} 3497db96d56Sopenharmony_ci 3507db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_bkgdset__doc__, 3517db96d56Sopenharmony_ci"bkgdset($self, ch, attr=_curses.A_NORMAL, /)\n" 3527db96d56Sopenharmony_ci"--\n" 3537db96d56Sopenharmony_ci"\n" 3547db96d56Sopenharmony_ci"Set the window\'s background.\n" 3557db96d56Sopenharmony_ci"\n" 3567db96d56Sopenharmony_ci" ch\n" 3577db96d56Sopenharmony_ci" Background character.\n" 3587db96d56Sopenharmony_ci" attr\n" 3597db96d56Sopenharmony_ci" Background attributes."); 3607db96d56Sopenharmony_ci 3617db96d56Sopenharmony_ci#define _CURSES_WINDOW_BKGDSET_METHODDEF \ 3627db96d56Sopenharmony_ci {"bkgdset", _PyCFunction_CAST(_curses_window_bkgdset), METH_FASTCALL, _curses_window_bkgdset__doc__}, 3637db96d56Sopenharmony_ci 3647db96d56Sopenharmony_cistatic PyObject * 3657db96d56Sopenharmony_ci_curses_window_bkgdset_impl(PyCursesWindowObject *self, PyObject *ch, 3667db96d56Sopenharmony_ci long attr); 3677db96d56Sopenharmony_ci 3687db96d56Sopenharmony_cistatic PyObject * 3697db96d56Sopenharmony_ci_curses_window_bkgdset(PyCursesWindowObject *self, PyObject *const *args, Py_ssize_t nargs) 3707db96d56Sopenharmony_ci{ 3717db96d56Sopenharmony_ci PyObject *return_value = NULL; 3727db96d56Sopenharmony_ci PyObject *ch; 3737db96d56Sopenharmony_ci long attr = A_NORMAL; 3747db96d56Sopenharmony_ci 3757db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("bkgdset", nargs, 1, 2)) { 3767db96d56Sopenharmony_ci goto exit; 3777db96d56Sopenharmony_ci } 3787db96d56Sopenharmony_ci ch = args[0]; 3797db96d56Sopenharmony_ci if (nargs < 2) { 3807db96d56Sopenharmony_ci goto skip_optional; 3817db96d56Sopenharmony_ci } 3827db96d56Sopenharmony_ci attr = PyLong_AsLong(args[1]); 3837db96d56Sopenharmony_ci if (attr == -1 && PyErr_Occurred()) { 3847db96d56Sopenharmony_ci goto exit; 3857db96d56Sopenharmony_ci } 3867db96d56Sopenharmony_ciskip_optional: 3877db96d56Sopenharmony_ci return_value = _curses_window_bkgdset_impl(self, ch, attr); 3887db96d56Sopenharmony_ci 3897db96d56Sopenharmony_ciexit: 3907db96d56Sopenharmony_ci return return_value; 3917db96d56Sopenharmony_ci} 3927db96d56Sopenharmony_ci 3937db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_border__doc__, 3947db96d56Sopenharmony_ci"border($self, ls=_curses.ACS_VLINE, rs=_curses.ACS_VLINE,\n" 3957db96d56Sopenharmony_ci" ts=_curses.ACS_HLINE, bs=_curses.ACS_HLINE,\n" 3967db96d56Sopenharmony_ci" tl=_curses.ACS_ULCORNER, tr=_curses.ACS_URCORNER,\n" 3977db96d56Sopenharmony_ci" bl=_curses.ACS_LLCORNER, br=_curses.ACS_LRCORNER, /)\n" 3987db96d56Sopenharmony_ci"--\n" 3997db96d56Sopenharmony_ci"\n" 4007db96d56Sopenharmony_ci"Draw a border around the edges of the window.\n" 4017db96d56Sopenharmony_ci"\n" 4027db96d56Sopenharmony_ci" ls\n" 4037db96d56Sopenharmony_ci" Left side.\n" 4047db96d56Sopenharmony_ci" rs\n" 4057db96d56Sopenharmony_ci" Right side.\n" 4067db96d56Sopenharmony_ci" ts\n" 4077db96d56Sopenharmony_ci" Top side.\n" 4087db96d56Sopenharmony_ci" bs\n" 4097db96d56Sopenharmony_ci" Bottom side.\n" 4107db96d56Sopenharmony_ci" tl\n" 4117db96d56Sopenharmony_ci" Upper-left corner.\n" 4127db96d56Sopenharmony_ci" tr\n" 4137db96d56Sopenharmony_ci" Upper-right corner.\n" 4147db96d56Sopenharmony_ci" bl\n" 4157db96d56Sopenharmony_ci" Bottom-left corner.\n" 4167db96d56Sopenharmony_ci" br\n" 4177db96d56Sopenharmony_ci" Bottom-right corner.\n" 4187db96d56Sopenharmony_ci"\n" 4197db96d56Sopenharmony_ci"Each parameter specifies the character to use for a specific part of the\n" 4207db96d56Sopenharmony_ci"border. The characters can be specified as integers or as one-character\n" 4217db96d56Sopenharmony_ci"strings. A 0 value for any parameter will cause the default character to be\n" 4227db96d56Sopenharmony_ci"used for that parameter."); 4237db96d56Sopenharmony_ci 4247db96d56Sopenharmony_ci#define _CURSES_WINDOW_BORDER_METHODDEF \ 4257db96d56Sopenharmony_ci {"border", _PyCFunction_CAST(_curses_window_border), METH_FASTCALL, _curses_window_border__doc__}, 4267db96d56Sopenharmony_ci 4277db96d56Sopenharmony_cistatic PyObject * 4287db96d56Sopenharmony_ci_curses_window_border_impl(PyCursesWindowObject *self, PyObject *ls, 4297db96d56Sopenharmony_ci PyObject *rs, PyObject *ts, PyObject *bs, 4307db96d56Sopenharmony_ci PyObject *tl, PyObject *tr, PyObject *bl, 4317db96d56Sopenharmony_ci PyObject *br); 4327db96d56Sopenharmony_ci 4337db96d56Sopenharmony_cistatic PyObject * 4347db96d56Sopenharmony_ci_curses_window_border(PyCursesWindowObject *self, PyObject *const *args, Py_ssize_t nargs) 4357db96d56Sopenharmony_ci{ 4367db96d56Sopenharmony_ci PyObject *return_value = NULL; 4377db96d56Sopenharmony_ci PyObject *ls = NULL; 4387db96d56Sopenharmony_ci PyObject *rs = NULL; 4397db96d56Sopenharmony_ci PyObject *ts = NULL; 4407db96d56Sopenharmony_ci PyObject *bs = NULL; 4417db96d56Sopenharmony_ci PyObject *tl = NULL; 4427db96d56Sopenharmony_ci PyObject *tr = NULL; 4437db96d56Sopenharmony_ci PyObject *bl = NULL; 4447db96d56Sopenharmony_ci PyObject *br = NULL; 4457db96d56Sopenharmony_ci 4467db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("border", nargs, 0, 8)) { 4477db96d56Sopenharmony_ci goto exit; 4487db96d56Sopenharmony_ci } 4497db96d56Sopenharmony_ci if (nargs < 1) { 4507db96d56Sopenharmony_ci goto skip_optional; 4517db96d56Sopenharmony_ci } 4527db96d56Sopenharmony_ci ls = args[0]; 4537db96d56Sopenharmony_ci if (nargs < 2) { 4547db96d56Sopenharmony_ci goto skip_optional; 4557db96d56Sopenharmony_ci } 4567db96d56Sopenharmony_ci rs = args[1]; 4577db96d56Sopenharmony_ci if (nargs < 3) { 4587db96d56Sopenharmony_ci goto skip_optional; 4597db96d56Sopenharmony_ci } 4607db96d56Sopenharmony_ci ts = args[2]; 4617db96d56Sopenharmony_ci if (nargs < 4) { 4627db96d56Sopenharmony_ci goto skip_optional; 4637db96d56Sopenharmony_ci } 4647db96d56Sopenharmony_ci bs = args[3]; 4657db96d56Sopenharmony_ci if (nargs < 5) { 4667db96d56Sopenharmony_ci goto skip_optional; 4677db96d56Sopenharmony_ci } 4687db96d56Sopenharmony_ci tl = args[4]; 4697db96d56Sopenharmony_ci if (nargs < 6) { 4707db96d56Sopenharmony_ci goto skip_optional; 4717db96d56Sopenharmony_ci } 4727db96d56Sopenharmony_ci tr = args[5]; 4737db96d56Sopenharmony_ci if (nargs < 7) { 4747db96d56Sopenharmony_ci goto skip_optional; 4757db96d56Sopenharmony_ci } 4767db96d56Sopenharmony_ci bl = args[6]; 4777db96d56Sopenharmony_ci if (nargs < 8) { 4787db96d56Sopenharmony_ci goto skip_optional; 4797db96d56Sopenharmony_ci } 4807db96d56Sopenharmony_ci br = args[7]; 4817db96d56Sopenharmony_ciskip_optional: 4827db96d56Sopenharmony_ci return_value = _curses_window_border_impl(self, ls, rs, ts, bs, tl, tr, bl, br); 4837db96d56Sopenharmony_ci 4847db96d56Sopenharmony_ciexit: 4857db96d56Sopenharmony_ci return return_value; 4867db96d56Sopenharmony_ci} 4877db96d56Sopenharmony_ci 4887db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_box__doc__, 4897db96d56Sopenharmony_ci"box([verch=0, horch=0])\n" 4907db96d56Sopenharmony_ci"Draw a border around the edges of the window.\n" 4917db96d56Sopenharmony_ci"\n" 4927db96d56Sopenharmony_ci" verch\n" 4937db96d56Sopenharmony_ci" Left and right side.\n" 4947db96d56Sopenharmony_ci" horch\n" 4957db96d56Sopenharmony_ci" Top and bottom side.\n" 4967db96d56Sopenharmony_ci"\n" 4977db96d56Sopenharmony_ci"Similar to border(), but both ls and rs are verch and both ts and bs are\n" 4987db96d56Sopenharmony_ci"horch. The default corner characters are always used by this function."); 4997db96d56Sopenharmony_ci 5007db96d56Sopenharmony_ci#define _CURSES_WINDOW_BOX_METHODDEF \ 5017db96d56Sopenharmony_ci {"box", (PyCFunction)_curses_window_box, METH_VARARGS, _curses_window_box__doc__}, 5027db96d56Sopenharmony_ci 5037db96d56Sopenharmony_cistatic PyObject * 5047db96d56Sopenharmony_ci_curses_window_box_impl(PyCursesWindowObject *self, int group_right_1, 5057db96d56Sopenharmony_ci PyObject *verch, PyObject *horch); 5067db96d56Sopenharmony_ci 5077db96d56Sopenharmony_cistatic PyObject * 5087db96d56Sopenharmony_ci_curses_window_box(PyCursesWindowObject *self, PyObject *args) 5097db96d56Sopenharmony_ci{ 5107db96d56Sopenharmony_ci PyObject *return_value = NULL; 5117db96d56Sopenharmony_ci int group_right_1 = 0; 5127db96d56Sopenharmony_ci PyObject *verch = _PyLong_GetZero(); 5137db96d56Sopenharmony_ci PyObject *horch = _PyLong_GetZero(); 5147db96d56Sopenharmony_ci 5157db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 5167db96d56Sopenharmony_ci case 0: 5177db96d56Sopenharmony_ci break; 5187db96d56Sopenharmony_ci case 2: 5197db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "OO:box", &verch, &horch)) { 5207db96d56Sopenharmony_ci goto exit; 5217db96d56Sopenharmony_ci } 5227db96d56Sopenharmony_ci group_right_1 = 1; 5237db96d56Sopenharmony_ci break; 5247db96d56Sopenharmony_ci default: 5257db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.box requires 0 to 2 arguments"); 5267db96d56Sopenharmony_ci goto exit; 5277db96d56Sopenharmony_ci } 5287db96d56Sopenharmony_ci return_value = _curses_window_box_impl(self, group_right_1, verch, horch); 5297db96d56Sopenharmony_ci 5307db96d56Sopenharmony_ciexit: 5317db96d56Sopenharmony_ci return return_value; 5327db96d56Sopenharmony_ci} 5337db96d56Sopenharmony_ci 5347db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_delch__doc__, 5357db96d56Sopenharmony_ci"delch([y, x])\n" 5367db96d56Sopenharmony_ci"Delete any character at (y, x).\n" 5377db96d56Sopenharmony_ci"\n" 5387db96d56Sopenharmony_ci" y\n" 5397db96d56Sopenharmony_ci" Y-coordinate.\n" 5407db96d56Sopenharmony_ci" x\n" 5417db96d56Sopenharmony_ci" X-coordinate."); 5427db96d56Sopenharmony_ci 5437db96d56Sopenharmony_ci#define _CURSES_WINDOW_DELCH_METHODDEF \ 5447db96d56Sopenharmony_ci {"delch", (PyCFunction)_curses_window_delch, METH_VARARGS, _curses_window_delch__doc__}, 5457db96d56Sopenharmony_ci 5467db96d56Sopenharmony_cistatic PyObject * 5477db96d56Sopenharmony_ci_curses_window_delch_impl(PyCursesWindowObject *self, int group_right_1, 5487db96d56Sopenharmony_ci int y, int x); 5497db96d56Sopenharmony_ci 5507db96d56Sopenharmony_cistatic PyObject * 5517db96d56Sopenharmony_ci_curses_window_delch(PyCursesWindowObject *self, PyObject *args) 5527db96d56Sopenharmony_ci{ 5537db96d56Sopenharmony_ci PyObject *return_value = NULL; 5547db96d56Sopenharmony_ci int group_right_1 = 0; 5557db96d56Sopenharmony_ci int y = 0; 5567db96d56Sopenharmony_ci int x = 0; 5577db96d56Sopenharmony_ci 5587db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 5597db96d56Sopenharmony_ci case 0: 5607db96d56Sopenharmony_ci break; 5617db96d56Sopenharmony_ci case 2: 5627db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "ii:delch", &y, &x)) { 5637db96d56Sopenharmony_ci goto exit; 5647db96d56Sopenharmony_ci } 5657db96d56Sopenharmony_ci group_right_1 = 1; 5667db96d56Sopenharmony_ci break; 5677db96d56Sopenharmony_ci default: 5687db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.delch requires 0 to 2 arguments"); 5697db96d56Sopenharmony_ci goto exit; 5707db96d56Sopenharmony_ci } 5717db96d56Sopenharmony_ci return_value = _curses_window_delch_impl(self, group_right_1, y, x); 5727db96d56Sopenharmony_ci 5737db96d56Sopenharmony_ciexit: 5747db96d56Sopenharmony_ci return return_value; 5757db96d56Sopenharmony_ci} 5767db96d56Sopenharmony_ci 5777db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_derwin__doc__, 5787db96d56Sopenharmony_ci"derwin([nlines=0, ncols=0,] begin_y, begin_x)\n" 5797db96d56Sopenharmony_ci"Create a sub-window (window-relative coordinates).\n" 5807db96d56Sopenharmony_ci"\n" 5817db96d56Sopenharmony_ci" nlines\n" 5827db96d56Sopenharmony_ci" Height.\n" 5837db96d56Sopenharmony_ci" ncols\n" 5847db96d56Sopenharmony_ci" Width.\n" 5857db96d56Sopenharmony_ci" begin_y\n" 5867db96d56Sopenharmony_ci" Top side y-coordinate.\n" 5877db96d56Sopenharmony_ci" begin_x\n" 5887db96d56Sopenharmony_ci" Left side x-coordinate.\n" 5897db96d56Sopenharmony_ci"\n" 5907db96d56Sopenharmony_ci"derwin() is the same as calling subwin(), except that begin_y and begin_x\n" 5917db96d56Sopenharmony_ci"are relative to the origin of the window, rather than relative to the entire\n" 5927db96d56Sopenharmony_ci"screen."); 5937db96d56Sopenharmony_ci 5947db96d56Sopenharmony_ci#define _CURSES_WINDOW_DERWIN_METHODDEF \ 5957db96d56Sopenharmony_ci {"derwin", (PyCFunction)_curses_window_derwin, METH_VARARGS, _curses_window_derwin__doc__}, 5967db96d56Sopenharmony_ci 5977db96d56Sopenharmony_cistatic PyObject * 5987db96d56Sopenharmony_ci_curses_window_derwin_impl(PyCursesWindowObject *self, int group_left_1, 5997db96d56Sopenharmony_ci int nlines, int ncols, int begin_y, int begin_x); 6007db96d56Sopenharmony_ci 6017db96d56Sopenharmony_cistatic PyObject * 6027db96d56Sopenharmony_ci_curses_window_derwin(PyCursesWindowObject *self, PyObject *args) 6037db96d56Sopenharmony_ci{ 6047db96d56Sopenharmony_ci PyObject *return_value = NULL; 6057db96d56Sopenharmony_ci int group_left_1 = 0; 6067db96d56Sopenharmony_ci int nlines = 0; 6077db96d56Sopenharmony_ci int ncols = 0; 6087db96d56Sopenharmony_ci int begin_y; 6097db96d56Sopenharmony_ci int begin_x; 6107db96d56Sopenharmony_ci 6117db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 6127db96d56Sopenharmony_ci case 2: 6137db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "ii:derwin", &begin_y, &begin_x)) { 6147db96d56Sopenharmony_ci goto exit; 6157db96d56Sopenharmony_ci } 6167db96d56Sopenharmony_ci break; 6177db96d56Sopenharmony_ci case 4: 6187db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiii:derwin", &nlines, &ncols, &begin_y, &begin_x)) { 6197db96d56Sopenharmony_ci goto exit; 6207db96d56Sopenharmony_ci } 6217db96d56Sopenharmony_ci group_left_1 = 1; 6227db96d56Sopenharmony_ci break; 6237db96d56Sopenharmony_ci default: 6247db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.derwin requires 2 to 4 arguments"); 6257db96d56Sopenharmony_ci goto exit; 6267db96d56Sopenharmony_ci } 6277db96d56Sopenharmony_ci return_value = _curses_window_derwin_impl(self, group_left_1, nlines, ncols, begin_y, begin_x); 6287db96d56Sopenharmony_ci 6297db96d56Sopenharmony_ciexit: 6307db96d56Sopenharmony_ci return return_value; 6317db96d56Sopenharmony_ci} 6327db96d56Sopenharmony_ci 6337db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_echochar__doc__, 6347db96d56Sopenharmony_ci"echochar($self, ch, attr=_curses.A_NORMAL, /)\n" 6357db96d56Sopenharmony_ci"--\n" 6367db96d56Sopenharmony_ci"\n" 6377db96d56Sopenharmony_ci"Add character ch with attribute attr, and refresh.\n" 6387db96d56Sopenharmony_ci"\n" 6397db96d56Sopenharmony_ci" ch\n" 6407db96d56Sopenharmony_ci" Character to add.\n" 6417db96d56Sopenharmony_ci" attr\n" 6427db96d56Sopenharmony_ci" Attributes for the character."); 6437db96d56Sopenharmony_ci 6447db96d56Sopenharmony_ci#define _CURSES_WINDOW_ECHOCHAR_METHODDEF \ 6457db96d56Sopenharmony_ci {"echochar", _PyCFunction_CAST(_curses_window_echochar), METH_FASTCALL, _curses_window_echochar__doc__}, 6467db96d56Sopenharmony_ci 6477db96d56Sopenharmony_cistatic PyObject * 6487db96d56Sopenharmony_ci_curses_window_echochar_impl(PyCursesWindowObject *self, PyObject *ch, 6497db96d56Sopenharmony_ci long attr); 6507db96d56Sopenharmony_ci 6517db96d56Sopenharmony_cistatic PyObject * 6527db96d56Sopenharmony_ci_curses_window_echochar(PyCursesWindowObject *self, PyObject *const *args, Py_ssize_t nargs) 6537db96d56Sopenharmony_ci{ 6547db96d56Sopenharmony_ci PyObject *return_value = NULL; 6557db96d56Sopenharmony_ci PyObject *ch; 6567db96d56Sopenharmony_ci long attr = A_NORMAL; 6577db96d56Sopenharmony_ci 6587db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("echochar", nargs, 1, 2)) { 6597db96d56Sopenharmony_ci goto exit; 6607db96d56Sopenharmony_ci } 6617db96d56Sopenharmony_ci ch = args[0]; 6627db96d56Sopenharmony_ci if (nargs < 2) { 6637db96d56Sopenharmony_ci goto skip_optional; 6647db96d56Sopenharmony_ci } 6657db96d56Sopenharmony_ci attr = PyLong_AsLong(args[1]); 6667db96d56Sopenharmony_ci if (attr == -1 && PyErr_Occurred()) { 6677db96d56Sopenharmony_ci goto exit; 6687db96d56Sopenharmony_ci } 6697db96d56Sopenharmony_ciskip_optional: 6707db96d56Sopenharmony_ci return_value = _curses_window_echochar_impl(self, ch, attr); 6717db96d56Sopenharmony_ci 6727db96d56Sopenharmony_ciexit: 6737db96d56Sopenharmony_ci return return_value; 6747db96d56Sopenharmony_ci} 6757db96d56Sopenharmony_ci 6767db96d56Sopenharmony_ci#if defined(NCURSES_MOUSE_VERSION) 6777db96d56Sopenharmony_ci 6787db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_enclose__doc__, 6797db96d56Sopenharmony_ci"enclose($self, y, x, /)\n" 6807db96d56Sopenharmony_ci"--\n" 6817db96d56Sopenharmony_ci"\n" 6827db96d56Sopenharmony_ci"Return True if the screen-relative coordinates are enclosed by the window.\n" 6837db96d56Sopenharmony_ci"\n" 6847db96d56Sopenharmony_ci" y\n" 6857db96d56Sopenharmony_ci" Y-coordinate.\n" 6867db96d56Sopenharmony_ci" x\n" 6877db96d56Sopenharmony_ci" X-coordinate."); 6887db96d56Sopenharmony_ci 6897db96d56Sopenharmony_ci#define _CURSES_WINDOW_ENCLOSE_METHODDEF \ 6907db96d56Sopenharmony_ci {"enclose", _PyCFunction_CAST(_curses_window_enclose), METH_FASTCALL, _curses_window_enclose__doc__}, 6917db96d56Sopenharmony_ci 6927db96d56Sopenharmony_cistatic PyObject * 6937db96d56Sopenharmony_ci_curses_window_enclose_impl(PyCursesWindowObject *self, int y, int x); 6947db96d56Sopenharmony_ci 6957db96d56Sopenharmony_cistatic PyObject * 6967db96d56Sopenharmony_ci_curses_window_enclose(PyCursesWindowObject *self, PyObject *const *args, Py_ssize_t nargs) 6977db96d56Sopenharmony_ci{ 6987db96d56Sopenharmony_ci PyObject *return_value = NULL; 6997db96d56Sopenharmony_ci int y; 7007db96d56Sopenharmony_ci int x; 7017db96d56Sopenharmony_ci 7027db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("enclose", nargs, 2, 2)) { 7037db96d56Sopenharmony_ci goto exit; 7047db96d56Sopenharmony_ci } 7057db96d56Sopenharmony_ci y = _PyLong_AsInt(args[0]); 7067db96d56Sopenharmony_ci if (y == -1 && PyErr_Occurred()) { 7077db96d56Sopenharmony_ci goto exit; 7087db96d56Sopenharmony_ci } 7097db96d56Sopenharmony_ci x = _PyLong_AsInt(args[1]); 7107db96d56Sopenharmony_ci if (x == -1 && PyErr_Occurred()) { 7117db96d56Sopenharmony_ci goto exit; 7127db96d56Sopenharmony_ci } 7137db96d56Sopenharmony_ci return_value = _curses_window_enclose_impl(self, y, x); 7147db96d56Sopenharmony_ci 7157db96d56Sopenharmony_ciexit: 7167db96d56Sopenharmony_ci return return_value; 7177db96d56Sopenharmony_ci} 7187db96d56Sopenharmony_ci 7197db96d56Sopenharmony_ci#endif /* defined(NCURSES_MOUSE_VERSION) */ 7207db96d56Sopenharmony_ci 7217db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_getbkgd__doc__, 7227db96d56Sopenharmony_ci"getbkgd($self, /)\n" 7237db96d56Sopenharmony_ci"--\n" 7247db96d56Sopenharmony_ci"\n" 7257db96d56Sopenharmony_ci"Return the window\'s current background character/attribute pair."); 7267db96d56Sopenharmony_ci 7277db96d56Sopenharmony_ci#define _CURSES_WINDOW_GETBKGD_METHODDEF \ 7287db96d56Sopenharmony_ci {"getbkgd", (PyCFunction)_curses_window_getbkgd, METH_NOARGS, _curses_window_getbkgd__doc__}, 7297db96d56Sopenharmony_ci 7307db96d56Sopenharmony_cistatic long 7317db96d56Sopenharmony_ci_curses_window_getbkgd_impl(PyCursesWindowObject *self); 7327db96d56Sopenharmony_ci 7337db96d56Sopenharmony_cistatic PyObject * 7347db96d56Sopenharmony_ci_curses_window_getbkgd(PyCursesWindowObject *self, PyObject *Py_UNUSED(ignored)) 7357db96d56Sopenharmony_ci{ 7367db96d56Sopenharmony_ci PyObject *return_value = NULL; 7377db96d56Sopenharmony_ci long _return_value; 7387db96d56Sopenharmony_ci 7397db96d56Sopenharmony_ci _return_value = _curses_window_getbkgd_impl(self); 7407db96d56Sopenharmony_ci if ((_return_value == -1) && PyErr_Occurred()) { 7417db96d56Sopenharmony_ci goto exit; 7427db96d56Sopenharmony_ci } 7437db96d56Sopenharmony_ci return_value = PyLong_FromLong(_return_value); 7447db96d56Sopenharmony_ci 7457db96d56Sopenharmony_ciexit: 7467db96d56Sopenharmony_ci return return_value; 7477db96d56Sopenharmony_ci} 7487db96d56Sopenharmony_ci 7497db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_getch__doc__, 7507db96d56Sopenharmony_ci"getch([y, x])\n" 7517db96d56Sopenharmony_ci"Get a character code from terminal keyboard.\n" 7527db96d56Sopenharmony_ci"\n" 7537db96d56Sopenharmony_ci" y\n" 7547db96d56Sopenharmony_ci" Y-coordinate.\n" 7557db96d56Sopenharmony_ci" x\n" 7567db96d56Sopenharmony_ci" X-coordinate.\n" 7577db96d56Sopenharmony_ci"\n" 7587db96d56Sopenharmony_ci"The integer returned does not have to be in ASCII range: function keys,\n" 7597db96d56Sopenharmony_ci"keypad keys and so on return numbers higher than 256. In no-delay mode, -1\n" 7607db96d56Sopenharmony_ci"is returned if there is no input, else getch() waits until a key is pressed."); 7617db96d56Sopenharmony_ci 7627db96d56Sopenharmony_ci#define _CURSES_WINDOW_GETCH_METHODDEF \ 7637db96d56Sopenharmony_ci {"getch", (PyCFunction)_curses_window_getch, METH_VARARGS, _curses_window_getch__doc__}, 7647db96d56Sopenharmony_ci 7657db96d56Sopenharmony_cistatic int 7667db96d56Sopenharmony_ci_curses_window_getch_impl(PyCursesWindowObject *self, int group_right_1, 7677db96d56Sopenharmony_ci int y, int x); 7687db96d56Sopenharmony_ci 7697db96d56Sopenharmony_cistatic PyObject * 7707db96d56Sopenharmony_ci_curses_window_getch(PyCursesWindowObject *self, PyObject *args) 7717db96d56Sopenharmony_ci{ 7727db96d56Sopenharmony_ci PyObject *return_value = NULL; 7737db96d56Sopenharmony_ci int group_right_1 = 0; 7747db96d56Sopenharmony_ci int y = 0; 7757db96d56Sopenharmony_ci int x = 0; 7767db96d56Sopenharmony_ci int _return_value; 7777db96d56Sopenharmony_ci 7787db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 7797db96d56Sopenharmony_ci case 0: 7807db96d56Sopenharmony_ci break; 7817db96d56Sopenharmony_ci case 2: 7827db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "ii:getch", &y, &x)) { 7837db96d56Sopenharmony_ci goto exit; 7847db96d56Sopenharmony_ci } 7857db96d56Sopenharmony_ci group_right_1 = 1; 7867db96d56Sopenharmony_ci break; 7877db96d56Sopenharmony_ci default: 7887db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.getch requires 0 to 2 arguments"); 7897db96d56Sopenharmony_ci goto exit; 7907db96d56Sopenharmony_ci } 7917db96d56Sopenharmony_ci _return_value = _curses_window_getch_impl(self, group_right_1, y, x); 7927db96d56Sopenharmony_ci if ((_return_value == -1) && PyErr_Occurred()) { 7937db96d56Sopenharmony_ci goto exit; 7947db96d56Sopenharmony_ci } 7957db96d56Sopenharmony_ci return_value = PyLong_FromLong((long)_return_value); 7967db96d56Sopenharmony_ci 7977db96d56Sopenharmony_ciexit: 7987db96d56Sopenharmony_ci return return_value; 7997db96d56Sopenharmony_ci} 8007db96d56Sopenharmony_ci 8017db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_getkey__doc__, 8027db96d56Sopenharmony_ci"getkey([y, x])\n" 8037db96d56Sopenharmony_ci"Get a character (string) from terminal keyboard.\n" 8047db96d56Sopenharmony_ci"\n" 8057db96d56Sopenharmony_ci" y\n" 8067db96d56Sopenharmony_ci" Y-coordinate.\n" 8077db96d56Sopenharmony_ci" x\n" 8087db96d56Sopenharmony_ci" X-coordinate.\n" 8097db96d56Sopenharmony_ci"\n" 8107db96d56Sopenharmony_ci"Returning a string instead of an integer, as getch() does. Function keys,\n" 8117db96d56Sopenharmony_ci"keypad keys and other special keys return a multibyte string containing the\n" 8127db96d56Sopenharmony_ci"key name. In no-delay mode, an exception is raised if there is no input."); 8137db96d56Sopenharmony_ci 8147db96d56Sopenharmony_ci#define _CURSES_WINDOW_GETKEY_METHODDEF \ 8157db96d56Sopenharmony_ci {"getkey", (PyCFunction)_curses_window_getkey, METH_VARARGS, _curses_window_getkey__doc__}, 8167db96d56Sopenharmony_ci 8177db96d56Sopenharmony_cistatic PyObject * 8187db96d56Sopenharmony_ci_curses_window_getkey_impl(PyCursesWindowObject *self, int group_right_1, 8197db96d56Sopenharmony_ci int y, int x); 8207db96d56Sopenharmony_ci 8217db96d56Sopenharmony_cistatic PyObject * 8227db96d56Sopenharmony_ci_curses_window_getkey(PyCursesWindowObject *self, PyObject *args) 8237db96d56Sopenharmony_ci{ 8247db96d56Sopenharmony_ci PyObject *return_value = NULL; 8257db96d56Sopenharmony_ci int group_right_1 = 0; 8267db96d56Sopenharmony_ci int y = 0; 8277db96d56Sopenharmony_ci int x = 0; 8287db96d56Sopenharmony_ci 8297db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 8307db96d56Sopenharmony_ci case 0: 8317db96d56Sopenharmony_ci break; 8327db96d56Sopenharmony_ci case 2: 8337db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "ii:getkey", &y, &x)) { 8347db96d56Sopenharmony_ci goto exit; 8357db96d56Sopenharmony_ci } 8367db96d56Sopenharmony_ci group_right_1 = 1; 8377db96d56Sopenharmony_ci break; 8387db96d56Sopenharmony_ci default: 8397db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.getkey requires 0 to 2 arguments"); 8407db96d56Sopenharmony_ci goto exit; 8417db96d56Sopenharmony_ci } 8427db96d56Sopenharmony_ci return_value = _curses_window_getkey_impl(self, group_right_1, y, x); 8437db96d56Sopenharmony_ci 8447db96d56Sopenharmony_ciexit: 8457db96d56Sopenharmony_ci return return_value; 8467db96d56Sopenharmony_ci} 8477db96d56Sopenharmony_ci 8487db96d56Sopenharmony_ci#if defined(HAVE_NCURSESW) 8497db96d56Sopenharmony_ci 8507db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_get_wch__doc__, 8517db96d56Sopenharmony_ci"get_wch([y, x])\n" 8527db96d56Sopenharmony_ci"Get a wide character from terminal keyboard.\n" 8537db96d56Sopenharmony_ci"\n" 8547db96d56Sopenharmony_ci" y\n" 8557db96d56Sopenharmony_ci" Y-coordinate.\n" 8567db96d56Sopenharmony_ci" x\n" 8577db96d56Sopenharmony_ci" X-coordinate.\n" 8587db96d56Sopenharmony_ci"\n" 8597db96d56Sopenharmony_ci"Return a character for most keys, or an integer for function keys,\n" 8607db96d56Sopenharmony_ci"keypad keys, and other special keys."); 8617db96d56Sopenharmony_ci 8627db96d56Sopenharmony_ci#define _CURSES_WINDOW_GET_WCH_METHODDEF \ 8637db96d56Sopenharmony_ci {"get_wch", (PyCFunction)_curses_window_get_wch, METH_VARARGS, _curses_window_get_wch__doc__}, 8647db96d56Sopenharmony_ci 8657db96d56Sopenharmony_cistatic PyObject * 8667db96d56Sopenharmony_ci_curses_window_get_wch_impl(PyCursesWindowObject *self, int group_right_1, 8677db96d56Sopenharmony_ci int y, int x); 8687db96d56Sopenharmony_ci 8697db96d56Sopenharmony_cistatic PyObject * 8707db96d56Sopenharmony_ci_curses_window_get_wch(PyCursesWindowObject *self, PyObject *args) 8717db96d56Sopenharmony_ci{ 8727db96d56Sopenharmony_ci PyObject *return_value = NULL; 8737db96d56Sopenharmony_ci int group_right_1 = 0; 8747db96d56Sopenharmony_ci int y = 0; 8757db96d56Sopenharmony_ci int x = 0; 8767db96d56Sopenharmony_ci 8777db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 8787db96d56Sopenharmony_ci case 0: 8797db96d56Sopenharmony_ci break; 8807db96d56Sopenharmony_ci case 2: 8817db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "ii:get_wch", &y, &x)) { 8827db96d56Sopenharmony_ci goto exit; 8837db96d56Sopenharmony_ci } 8847db96d56Sopenharmony_ci group_right_1 = 1; 8857db96d56Sopenharmony_ci break; 8867db96d56Sopenharmony_ci default: 8877db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.get_wch requires 0 to 2 arguments"); 8887db96d56Sopenharmony_ci goto exit; 8897db96d56Sopenharmony_ci } 8907db96d56Sopenharmony_ci return_value = _curses_window_get_wch_impl(self, group_right_1, y, x); 8917db96d56Sopenharmony_ci 8927db96d56Sopenharmony_ciexit: 8937db96d56Sopenharmony_ci return return_value; 8947db96d56Sopenharmony_ci} 8957db96d56Sopenharmony_ci 8967db96d56Sopenharmony_ci#endif /* defined(HAVE_NCURSESW) */ 8977db96d56Sopenharmony_ci 8987db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_hline__doc__, 8997db96d56Sopenharmony_ci"hline([y, x,] ch, n, [attr=_curses.A_NORMAL])\n" 9007db96d56Sopenharmony_ci"Display a horizontal line.\n" 9017db96d56Sopenharmony_ci"\n" 9027db96d56Sopenharmony_ci" y\n" 9037db96d56Sopenharmony_ci" Starting Y-coordinate.\n" 9047db96d56Sopenharmony_ci" x\n" 9057db96d56Sopenharmony_ci" Starting X-coordinate.\n" 9067db96d56Sopenharmony_ci" ch\n" 9077db96d56Sopenharmony_ci" Character to draw.\n" 9087db96d56Sopenharmony_ci" n\n" 9097db96d56Sopenharmony_ci" Line length.\n" 9107db96d56Sopenharmony_ci" attr\n" 9117db96d56Sopenharmony_ci" Attributes for the characters."); 9127db96d56Sopenharmony_ci 9137db96d56Sopenharmony_ci#define _CURSES_WINDOW_HLINE_METHODDEF \ 9147db96d56Sopenharmony_ci {"hline", (PyCFunction)_curses_window_hline, METH_VARARGS, _curses_window_hline__doc__}, 9157db96d56Sopenharmony_ci 9167db96d56Sopenharmony_cistatic PyObject * 9177db96d56Sopenharmony_ci_curses_window_hline_impl(PyCursesWindowObject *self, int group_left_1, 9187db96d56Sopenharmony_ci int y, int x, PyObject *ch, int n, 9197db96d56Sopenharmony_ci int group_right_1, long attr); 9207db96d56Sopenharmony_ci 9217db96d56Sopenharmony_cistatic PyObject * 9227db96d56Sopenharmony_ci_curses_window_hline(PyCursesWindowObject *self, PyObject *args) 9237db96d56Sopenharmony_ci{ 9247db96d56Sopenharmony_ci PyObject *return_value = NULL; 9257db96d56Sopenharmony_ci int group_left_1 = 0; 9267db96d56Sopenharmony_ci int y = 0; 9277db96d56Sopenharmony_ci int x = 0; 9287db96d56Sopenharmony_ci PyObject *ch; 9297db96d56Sopenharmony_ci int n; 9307db96d56Sopenharmony_ci int group_right_1 = 0; 9317db96d56Sopenharmony_ci long attr = A_NORMAL; 9327db96d56Sopenharmony_ci 9337db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 9347db96d56Sopenharmony_ci case 2: 9357db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Oi:hline", &ch, &n)) { 9367db96d56Sopenharmony_ci goto exit; 9377db96d56Sopenharmony_ci } 9387db96d56Sopenharmony_ci break; 9397db96d56Sopenharmony_ci case 3: 9407db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Oil:hline", &ch, &n, &attr)) { 9417db96d56Sopenharmony_ci goto exit; 9427db96d56Sopenharmony_ci } 9437db96d56Sopenharmony_ci group_right_1 = 1; 9447db96d56Sopenharmony_ci break; 9457db96d56Sopenharmony_ci case 4: 9467db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOi:hline", &y, &x, &ch, &n)) { 9477db96d56Sopenharmony_ci goto exit; 9487db96d56Sopenharmony_ci } 9497db96d56Sopenharmony_ci group_left_1 = 1; 9507db96d56Sopenharmony_ci break; 9517db96d56Sopenharmony_ci case 5: 9527db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOil:hline", &y, &x, &ch, &n, &attr)) { 9537db96d56Sopenharmony_ci goto exit; 9547db96d56Sopenharmony_ci } 9557db96d56Sopenharmony_ci group_right_1 = 1; 9567db96d56Sopenharmony_ci group_left_1 = 1; 9577db96d56Sopenharmony_ci break; 9587db96d56Sopenharmony_ci default: 9597db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.hline requires 2 to 5 arguments"); 9607db96d56Sopenharmony_ci goto exit; 9617db96d56Sopenharmony_ci } 9627db96d56Sopenharmony_ci return_value = _curses_window_hline_impl(self, group_left_1, y, x, ch, n, group_right_1, attr); 9637db96d56Sopenharmony_ci 9647db96d56Sopenharmony_ciexit: 9657db96d56Sopenharmony_ci return return_value; 9667db96d56Sopenharmony_ci} 9677db96d56Sopenharmony_ci 9687db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_insch__doc__, 9697db96d56Sopenharmony_ci"insch([y, x,] ch, [attr=_curses.A_NORMAL])\n" 9707db96d56Sopenharmony_ci"Insert a character before the current or specified position.\n" 9717db96d56Sopenharmony_ci"\n" 9727db96d56Sopenharmony_ci" y\n" 9737db96d56Sopenharmony_ci" Y-coordinate.\n" 9747db96d56Sopenharmony_ci" x\n" 9757db96d56Sopenharmony_ci" X-coordinate.\n" 9767db96d56Sopenharmony_ci" ch\n" 9777db96d56Sopenharmony_ci" Character to insert.\n" 9787db96d56Sopenharmony_ci" attr\n" 9797db96d56Sopenharmony_ci" Attributes for the character.\n" 9807db96d56Sopenharmony_ci"\n" 9817db96d56Sopenharmony_ci"All characters to the right of the cursor are shifted one position right, with\n" 9827db96d56Sopenharmony_ci"the rightmost characters on the line being lost."); 9837db96d56Sopenharmony_ci 9847db96d56Sopenharmony_ci#define _CURSES_WINDOW_INSCH_METHODDEF \ 9857db96d56Sopenharmony_ci {"insch", (PyCFunction)_curses_window_insch, METH_VARARGS, _curses_window_insch__doc__}, 9867db96d56Sopenharmony_ci 9877db96d56Sopenharmony_cistatic PyObject * 9887db96d56Sopenharmony_ci_curses_window_insch_impl(PyCursesWindowObject *self, int group_left_1, 9897db96d56Sopenharmony_ci int y, int x, PyObject *ch, int group_right_1, 9907db96d56Sopenharmony_ci long attr); 9917db96d56Sopenharmony_ci 9927db96d56Sopenharmony_cistatic PyObject * 9937db96d56Sopenharmony_ci_curses_window_insch(PyCursesWindowObject *self, PyObject *args) 9947db96d56Sopenharmony_ci{ 9957db96d56Sopenharmony_ci PyObject *return_value = NULL; 9967db96d56Sopenharmony_ci int group_left_1 = 0; 9977db96d56Sopenharmony_ci int y = 0; 9987db96d56Sopenharmony_ci int x = 0; 9997db96d56Sopenharmony_ci PyObject *ch; 10007db96d56Sopenharmony_ci int group_right_1 = 0; 10017db96d56Sopenharmony_ci long attr = A_NORMAL; 10027db96d56Sopenharmony_ci 10037db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 10047db96d56Sopenharmony_ci case 1: 10057db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "O:insch", &ch)) { 10067db96d56Sopenharmony_ci goto exit; 10077db96d56Sopenharmony_ci } 10087db96d56Sopenharmony_ci break; 10097db96d56Sopenharmony_ci case 2: 10107db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Ol:insch", &ch, &attr)) { 10117db96d56Sopenharmony_ci goto exit; 10127db96d56Sopenharmony_ci } 10137db96d56Sopenharmony_ci group_right_1 = 1; 10147db96d56Sopenharmony_ci break; 10157db96d56Sopenharmony_ci case 3: 10167db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiO:insch", &y, &x, &ch)) { 10177db96d56Sopenharmony_ci goto exit; 10187db96d56Sopenharmony_ci } 10197db96d56Sopenharmony_ci group_left_1 = 1; 10207db96d56Sopenharmony_ci break; 10217db96d56Sopenharmony_ci case 4: 10227db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOl:insch", &y, &x, &ch, &attr)) { 10237db96d56Sopenharmony_ci goto exit; 10247db96d56Sopenharmony_ci } 10257db96d56Sopenharmony_ci group_right_1 = 1; 10267db96d56Sopenharmony_ci group_left_1 = 1; 10277db96d56Sopenharmony_ci break; 10287db96d56Sopenharmony_ci default: 10297db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.insch requires 1 to 4 arguments"); 10307db96d56Sopenharmony_ci goto exit; 10317db96d56Sopenharmony_ci } 10327db96d56Sopenharmony_ci return_value = _curses_window_insch_impl(self, group_left_1, y, x, ch, group_right_1, attr); 10337db96d56Sopenharmony_ci 10347db96d56Sopenharmony_ciexit: 10357db96d56Sopenharmony_ci return return_value; 10367db96d56Sopenharmony_ci} 10377db96d56Sopenharmony_ci 10387db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_inch__doc__, 10397db96d56Sopenharmony_ci"inch([y, x])\n" 10407db96d56Sopenharmony_ci"Return the character at the given position in the window.\n" 10417db96d56Sopenharmony_ci"\n" 10427db96d56Sopenharmony_ci" y\n" 10437db96d56Sopenharmony_ci" Y-coordinate.\n" 10447db96d56Sopenharmony_ci" x\n" 10457db96d56Sopenharmony_ci" X-coordinate.\n" 10467db96d56Sopenharmony_ci"\n" 10477db96d56Sopenharmony_ci"The bottom 8 bits are the character proper, and upper bits are the attributes."); 10487db96d56Sopenharmony_ci 10497db96d56Sopenharmony_ci#define _CURSES_WINDOW_INCH_METHODDEF \ 10507db96d56Sopenharmony_ci {"inch", (PyCFunction)_curses_window_inch, METH_VARARGS, _curses_window_inch__doc__}, 10517db96d56Sopenharmony_ci 10527db96d56Sopenharmony_cistatic unsigned long 10537db96d56Sopenharmony_ci_curses_window_inch_impl(PyCursesWindowObject *self, int group_right_1, 10547db96d56Sopenharmony_ci int y, int x); 10557db96d56Sopenharmony_ci 10567db96d56Sopenharmony_cistatic PyObject * 10577db96d56Sopenharmony_ci_curses_window_inch(PyCursesWindowObject *self, PyObject *args) 10587db96d56Sopenharmony_ci{ 10597db96d56Sopenharmony_ci PyObject *return_value = NULL; 10607db96d56Sopenharmony_ci int group_right_1 = 0; 10617db96d56Sopenharmony_ci int y = 0; 10627db96d56Sopenharmony_ci int x = 0; 10637db96d56Sopenharmony_ci unsigned long _return_value; 10647db96d56Sopenharmony_ci 10657db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 10667db96d56Sopenharmony_ci case 0: 10677db96d56Sopenharmony_ci break; 10687db96d56Sopenharmony_ci case 2: 10697db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "ii:inch", &y, &x)) { 10707db96d56Sopenharmony_ci goto exit; 10717db96d56Sopenharmony_ci } 10727db96d56Sopenharmony_ci group_right_1 = 1; 10737db96d56Sopenharmony_ci break; 10747db96d56Sopenharmony_ci default: 10757db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.inch requires 0 to 2 arguments"); 10767db96d56Sopenharmony_ci goto exit; 10777db96d56Sopenharmony_ci } 10787db96d56Sopenharmony_ci _return_value = _curses_window_inch_impl(self, group_right_1, y, x); 10797db96d56Sopenharmony_ci if ((_return_value == (unsigned long)-1) && PyErr_Occurred()) { 10807db96d56Sopenharmony_ci goto exit; 10817db96d56Sopenharmony_ci } 10827db96d56Sopenharmony_ci return_value = PyLong_FromUnsignedLong(_return_value); 10837db96d56Sopenharmony_ci 10847db96d56Sopenharmony_ciexit: 10857db96d56Sopenharmony_ci return return_value; 10867db96d56Sopenharmony_ci} 10877db96d56Sopenharmony_ci 10887db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_insstr__doc__, 10897db96d56Sopenharmony_ci"insstr([y, x,] str, [attr])\n" 10907db96d56Sopenharmony_ci"Insert the string before the current or specified position.\n" 10917db96d56Sopenharmony_ci"\n" 10927db96d56Sopenharmony_ci" y\n" 10937db96d56Sopenharmony_ci" Y-coordinate.\n" 10947db96d56Sopenharmony_ci" x\n" 10957db96d56Sopenharmony_ci" X-coordinate.\n" 10967db96d56Sopenharmony_ci" str\n" 10977db96d56Sopenharmony_ci" String to insert.\n" 10987db96d56Sopenharmony_ci" attr\n" 10997db96d56Sopenharmony_ci" Attributes for characters.\n" 11007db96d56Sopenharmony_ci"\n" 11017db96d56Sopenharmony_ci"Insert a character string (as many characters as will fit on the line)\n" 11027db96d56Sopenharmony_ci"before the character under the cursor. All characters to the right of\n" 11037db96d56Sopenharmony_ci"the cursor are shifted right, with the rightmost characters on the line\n" 11047db96d56Sopenharmony_ci"being lost. The cursor position does not change (after moving to y, x,\n" 11057db96d56Sopenharmony_ci"if specified)."); 11067db96d56Sopenharmony_ci 11077db96d56Sopenharmony_ci#define _CURSES_WINDOW_INSSTR_METHODDEF \ 11087db96d56Sopenharmony_ci {"insstr", (PyCFunction)_curses_window_insstr, METH_VARARGS, _curses_window_insstr__doc__}, 11097db96d56Sopenharmony_ci 11107db96d56Sopenharmony_cistatic PyObject * 11117db96d56Sopenharmony_ci_curses_window_insstr_impl(PyCursesWindowObject *self, int group_left_1, 11127db96d56Sopenharmony_ci int y, int x, PyObject *str, int group_right_1, 11137db96d56Sopenharmony_ci long attr); 11147db96d56Sopenharmony_ci 11157db96d56Sopenharmony_cistatic PyObject * 11167db96d56Sopenharmony_ci_curses_window_insstr(PyCursesWindowObject *self, PyObject *args) 11177db96d56Sopenharmony_ci{ 11187db96d56Sopenharmony_ci PyObject *return_value = NULL; 11197db96d56Sopenharmony_ci int group_left_1 = 0; 11207db96d56Sopenharmony_ci int y = 0; 11217db96d56Sopenharmony_ci int x = 0; 11227db96d56Sopenharmony_ci PyObject *str; 11237db96d56Sopenharmony_ci int group_right_1 = 0; 11247db96d56Sopenharmony_ci long attr = 0; 11257db96d56Sopenharmony_ci 11267db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 11277db96d56Sopenharmony_ci case 1: 11287db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "O:insstr", &str)) { 11297db96d56Sopenharmony_ci goto exit; 11307db96d56Sopenharmony_ci } 11317db96d56Sopenharmony_ci break; 11327db96d56Sopenharmony_ci case 2: 11337db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Ol:insstr", &str, &attr)) { 11347db96d56Sopenharmony_ci goto exit; 11357db96d56Sopenharmony_ci } 11367db96d56Sopenharmony_ci group_right_1 = 1; 11377db96d56Sopenharmony_ci break; 11387db96d56Sopenharmony_ci case 3: 11397db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiO:insstr", &y, &x, &str)) { 11407db96d56Sopenharmony_ci goto exit; 11417db96d56Sopenharmony_ci } 11427db96d56Sopenharmony_ci group_left_1 = 1; 11437db96d56Sopenharmony_ci break; 11447db96d56Sopenharmony_ci case 4: 11457db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOl:insstr", &y, &x, &str, &attr)) { 11467db96d56Sopenharmony_ci goto exit; 11477db96d56Sopenharmony_ci } 11487db96d56Sopenharmony_ci group_right_1 = 1; 11497db96d56Sopenharmony_ci group_left_1 = 1; 11507db96d56Sopenharmony_ci break; 11517db96d56Sopenharmony_ci default: 11527db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.insstr requires 1 to 4 arguments"); 11537db96d56Sopenharmony_ci goto exit; 11547db96d56Sopenharmony_ci } 11557db96d56Sopenharmony_ci return_value = _curses_window_insstr_impl(self, group_left_1, y, x, str, group_right_1, attr); 11567db96d56Sopenharmony_ci 11577db96d56Sopenharmony_ciexit: 11587db96d56Sopenharmony_ci return return_value; 11597db96d56Sopenharmony_ci} 11607db96d56Sopenharmony_ci 11617db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_insnstr__doc__, 11627db96d56Sopenharmony_ci"insnstr([y, x,] str, n, [attr])\n" 11637db96d56Sopenharmony_ci"Insert at most n characters of the string.\n" 11647db96d56Sopenharmony_ci"\n" 11657db96d56Sopenharmony_ci" y\n" 11667db96d56Sopenharmony_ci" Y-coordinate.\n" 11677db96d56Sopenharmony_ci" x\n" 11687db96d56Sopenharmony_ci" X-coordinate.\n" 11697db96d56Sopenharmony_ci" str\n" 11707db96d56Sopenharmony_ci" String to insert.\n" 11717db96d56Sopenharmony_ci" n\n" 11727db96d56Sopenharmony_ci" Maximal number of characters.\n" 11737db96d56Sopenharmony_ci" attr\n" 11747db96d56Sopenharmony_ci" Attributes for characters.\n" 11757db96d56Sopenharmony_ci"\n" 11767db96d56Sopenharmony_ci"Insert a character string (as many characters as will fit on the line)\n" 11777db96d56Sopenharmony_ci"before the character under the cursor, up to n characters. If n is zero\n" 11787db96d56Sopenharmony_ci"or negative, the entire string is inserted. All characters to the right\n" 11797db96d56Sopenharmony_ci"of the cursor are shifted right, with the rightmost characters on the line\n" 11807db96d56Sopenharmony_ci"being lost. The cursor position does not change (after moving to y, x, if\n" 11817db96d56Sopenharmony_ci"specified)."); 11827db96d56Sopenharmony_ci 11837db96d56Sopenharmony_ci#define _CURSES_WINDOW_INSNSTR_METHODDEF \ 11847db96d56Sopenharmony_ci {"insnstr", (PyCFunction)_curses_window_insnstr, METH_VARARGS, _curses_window_insnstr__doc__}, 11857db96d56Sopenharmony_ci 11867db96d56Sopenharmony_cistatic PyObject * 11877db96d56Sopenharmony_ci_curses_window_insnstr_impl(PyCursesWindowObject *self, int group_left_1, 11887db96d56Sopenharmony_ci int y, int x, PyObject *str, int n, 11897db96d56Sopenharmony_ci int group_right_1, long attr); 11907db96d56Sopenharmony_ci 11917db96d56Sopenharmony_cistatic PyObject * 11927db96d56Sopenharmony_ci_curses_window_insnstr(PyCursesWindowObject *self, PyObject *args) 11937db96d56Sopenharmony_ci{ 11947db96d56Sopenharmony_ci PyObject *return_value = NULL; 11957db96d56Sopenharmony_ci int group_left_1 = 0; 11967db96d56Sopenharmony_ci int y = 0; 11977db96d56Sopenharmony_ci int x = 0; 11987db96d56Sopenharmony_ci PyObject *str; 11997db96d56Sopenharmony_ci int n; 12007db96d56Sopenharmony_ci int group_right_1 = 0; 12017db96d56Sopenharmony_ci long attr = 0; 12027db96d56Sopenharmony_ci 12037db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 12047db96d56Sopenharmony_ci case 2: 12057db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Oi:insnstr", &str, &n)) { 12067db96d56Sopenharmony_ci goto exit; 12077db96d56Sopenharmony_ci } 12087db96d56Sopenharmony_ci break; 12097db96d56Sopenharmony_ci case 3: 12107db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Oil:insnstr", &str, &n, &attr)) { 12117db96d56Sopenharmony_ci goto exit; 12127db96d56Sopenharmony_ci } 12137db96d56Sopenharmony_ci group_right_1 = 1; 12147db96d56Sopenharmony_ci break; 12157db96d56Sopenharmony_ci case 4: 12167db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOi:insnstr", &y, &x, &str, &n)) { 12177db96d56Sopenharmony_ci goto exit; 12187db96d56Sopenharmony_ci } 12197db96d56Sopenharmony_ci group_left_1 = 1; 12207db96d56Sopenharmony_ci break; 12217db96d56Sopenharmony_ci case 5: 12227db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOil:insnstr", &y, &x, &str, &n, &attr)) { 12237db96d56Sopenharmony_ci goto exit; 12247db96d56Sopenharmony_ci } 12257db96d56Sopenharmony_ci group_right_1 = 1; 12267db96d56Sopenharmony_ci group_left_1 = 1; 12277db96d56Sopenharmony_ci break; 12287db96d56Sopenharmony_ci default: 12297db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.insnstr requires 2 to 5 arguments"); 12307db96d56Sopenharmony_ci goto exit; 12317db96d56Sopenharmony_ci } 12327db96d56Sopenharmony_ci return_value = _curses_window_insnstr_impl(self, group_left_1, y, x, str, n, group_right_1, attr); 12337db96d56Sopenharmony_ci 12347db96d56Sopenharmony_ciexit: 12357db96d56Sopenharmony_ci return return_value; 12367db96d56Sopenharmony_ci} 12377db96d56Sopenharmony_ci 12387db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_is_linetouched__doc__, 12397db96d56Sopenharmony_ci"is_linetouched($self, line, /)\n" 12407db96d56Sopenharmony_ci"--\n" 12417db96d56Sopenharmony_ci"\n" 12427db96d56Sopenharmony_ci"Return True if the specified line was modified, otherwise return False.\n" 12437db96d56Sopenharmony_ci"\n" 12447db96d56Sopenharmony_ci" line\n" 12457db96d56Sopenharmony_ci" Line number.\n" 12467db96d56Sopenharmony_ci"\n" 12477db96d56Sopenharmony_ci"Raise a curses.error exception if line is not valid for the given window."); 12487db96d56Sopenharmony_ci 12497db96d56Sopenharmony_ci#define _CURSES_WINDOW_IS_LINETOUCHED_METHODDEF \ 12507db96d56Sopenharmony_ci {"is_linetouched", (PyCFunction)_curses_window_is_linetouched, METH_O, _curses_window_is_linetouched__doc__}, 12517db96d56Sopenharmony_ci 12527db96d56Sopenharmony_cistatic PyObject * 12537db96d56Sopenharmony_ci_curses_window_is_linetouched_impl(PyCursesWindowObject *self, int line); 12547db96d56Sopenharmony_ci 12557db96d56Sopenharmony_cistatic PyObject * 12567db96d56Sopenharmony_ci_curses_window_is_linetouched(PyCursesWindowObject *self, PyObject *arg) 12577db96d56Sopenharmony_ci{ 12587db96d56Sopenharmony_ci PyObject *return_value = NULL; 12597db96d56Sopenharmony_ci int line; 12607db96d56Sopenharmony_ci 12617db96d56Sopenharmony_ci line = _PyLong_AsInt(arg); 12627db96d56Sopenharmony_ci if (line == -1 && PyErr_Occurred()) { 12637db96d56Sopenharmony_ci goto exit; 12647db96d56Sopenharmony_ci } 12657db96d56Sopenharmony_ci return_value = _curses_window_is_linetouched_impl(self, line); 12667db96d56Sopenharmony_ci 12677db96d56Sopenharmony_ciexit: 12687db96d56Sopenharmony_ci return return_value; 12697db96d56Sopenharmony_ci} 12707db96d56Sopenharmony_ci 12717db96d56Sopenharmony_ci#if defined(py_is_pad) 12727db96d56Sopenharmony_ci 12737db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_noutrefresh__doc__, 12747db96d56Sopenharmony_ci"noutrefresh([pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol])\n" 12757db96d56Sopenharmony_ci"Mark for refresh but wait.\n" 12767db96d56Sopenharmony_ci"\n" 12777db96d56Sopenharmony_ci"This function updates the data structure representing the desired state of the\n" 12787db96d56Sopenharmony_ci"window, but does not force an update of the physical screen. To accomplish\n" 12797db96d56Sopenharmony_ci"that, call doupdate()."); 12807db96d56Sopenharmony_ci 12817db96d56Sopenharmony_ci#define _CURSES_WINDOW_NOUTREFRESH_METHODDEF \ 12827db96d56Sopenharmony_ci {"noutrefresh", (PyCFunction)_curses_window_noutrefresh, METH_VARARGS, _curses_window_noutrefresh__doc__}, 12837db96d56Sopenharmony_ci 12847db96d56Sopenharmony_cistatic PyObject * 12857db96d56Sopenharmony_ci_curses_window_noutrefresh_impl(PyCursesWindowObject *self, 12867db96d56Sopenharmony_ci int group_right_1, int pminrow, int pmincol, 12877db96d56Sopenharmony_ci int sminrow, int smincol, int smaxrow, 12887db96d56Sopenharmony_ci int smaxcol); 12897db96d56Sopenharmony_ci 12907db96d56Sopenharmony_cistatic PyObject * 12917db96d56Sopenharmony_ci_curses_window_noutrefresh(PyCursesWindowObject *self, PyObject *args) 12927db96d56Sopenharmony_ci{ 12937db96d56Sopenharmony_ci PyObject *return_value = NULL; 12947db96d56Sopenharmony_ci int group_right_1 = 0; 12957db96d56Sopenharmony_ci int pminrow = 0; 12967db96d56Sopenharmony_ci int pmincol = 0; 12977db96d56Sopenharmony_ci int sminrow = 0; 12987db96d56Sopenharmony_ci int smincol = 0; 12997db96d56Sopenharmony_ci int smaxrow = 0; 13007db96d56Sopenharmony_ci int smaxcol = 0; 13017db96d56Sopenharmony_ci 13027db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 13037db96d56Sopenharmony_ci case 0: 13047db96d56Sopenharmony_ci break; 13057db96d56Sopenharmony_ci case 6: 13067db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiiiii:noutrefresh", &pminrow, &pmincol, &sminrow, &smincol, &smaxrow, &smaxcol)) { 13077db96d56Sopenharmony_ci goto exit; 13087db96d56Sopenharmony_ci } 13097db96d56Sopenharmony_ci group_right_1 = 1; 13107db96d56Sopenharmony_ci break; 13117db96d56Sopenharmony_ci default: 13127db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.noutrefresh requires 0 to 6 arguments"); 13137db96d56Sopenharmony_ci goto exit; 13147db96d56Sopenharmony_ci } 13157db96d56Sopenharmony_ci return_value = _curses_window_noutrefresh_impl(self, group_right_1, pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol); 13167db96d56Sopenharmony_ci 13177db96d56Sopenharmony_ciexit: 13187db96d56Sopenharmony_ci return return_value; 13197db96d56Sopenharmony_ci} 13207db96d56Sopenharmony_ci 13217db96d56Sopenharmony_ci#endif /* defined(py_is_pad) */ 13227db96d56Sopenharmony_ci 13237db96d56Sopenharmony_ci#if !defined(py_is_pad) 13247db96d56Sopenharmony_ci 13257db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_noutrefresh__doc__, 13267db96d56Sopenharmony_ci"noutrefresh($self, /)\n" 13277db96d56Sopenharmony_ci"--\n" 13287db96d56Sopenharmony_ci"\n" 13297db96d56Sopenharmony_ci"Mark for refresh but wait.\n" 13307db96d56Sopenharmony_ci"\n" 13317db96d56Sopenharmony_ci"This function updates the data structure representing the desired state of the\n" 13327db96d56Sopenharmony_ci"window, but does not force an update of the physical screen. To accomplish\n" 13337db96d56Sopenharmony_ci"that, call doupdate()."); 13347db96d56Sopenharmony_ci 13357db96d56Sopenharmony_ci#define _CURSES_WINDOW_NOUTREFRESH_METHODDEF \ 13367db96d56Sopenharmony_ci {"noutrefresh", (PyCFunction)_curses_window_noutrefresh, METH_NOARGS, _curses_window_noutrefresh__doc__}, 13377db96d56Sopenharmony_ci 13387db96d56Sopenharmony_cistatic PyObject * 13397db96d56Sopenharmony_ci_curses_window_noutrefresh_impl(PyCursesWindowObject *self); 13407db96d56Sopenharmony_ci 13417db96d56Sopenharmony_cistatic PyObject * 13427db96d56Sopenharmony_ci_curses_window_noutrefresh(PyCursesWindowObject *self, PyObject *Py_UNUSED(ignored)) 13437db96d56Sopenharmony_ci{ 13447db96d56Sopenharmony_ci return _curses_window_noutrefresh_impl(self); 13457db96d56Sopenharmony_ci} 13467db96d56Sopenharmony_ci 13477db96d56Sopenharmony_ci#endif /* !defined(py_is_pad) */ 13487db96d56Sopenharmony_ci 13497db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_overlay__doc__, 13507db96d56Sopenharmony_ci"overlay(destwin, [sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol])\n" 13517db96d56Sopenharmony_ci"Overlay the window on top of destwin.\n" 13527db96d56Sopenharmony_ci"\n" 13537db96d56Sopenharmony_ci"The windows need not be the same size, only the overlapping region is copied.\n" 13547db96d56Sopenharmony_ci"This copy is non-destructive, which means that the current background\n" 13557db96d56Sopenharmony_ci"character does not overwrite the old contents of destwin.\n" 13567db96d56Sopenharmony_ci"\n" 13577db96d56Sopenharmony_ci"To get fine-grained control over the copied region, the second form of\n" 13587db96d56Sopenharmony_ci"overlay() can be used. sminrow and smincol are the upper-left coordinates\n" 13597db96d56Sopenharmony_ci"of the source window, and the other variables mark a rectangle in the\n" 13607db96d56Sopenharmony_ci"destination window."); 13617db96d56Sopenharmony_ci 13627db96d56Sopenharmony_ci#define _CURSES_WINDOW_OVERLAY_METHODDEF \ 13637db96d56Sopenharmony_ci {"overlay", (PyCFunction)_curses_window_overlay, METH_VARARGS, _curses_window_overlay__doc__}, 13647db96d56Sopenharmony_ci 13657db96d56Sopenharmony_cistatic PyObject * 13667db96d56Sopenharmony_ci_curses_window_overlay_impl(PyCursesWindowObject *self, 13677db96d56Sopenharmony_ci PyCursesWindowObject *destwin, int group_right_1, 13687db96d56Sopenharmony_ci int sminrow, int smincol, int dminrow, 13697db96d56Sopenharmony_ci int dmincol, int dmaxrow, int dmaxcol); 13707db96d56Sopenharmony_ci 13717db96d56Sopenharmony_cistatic PyObject * 13727db96d56Sopenharmony_ci_curses_window_overlay(PyCursesWindowObject *self, PyObject *args) 13737db96d56Sopenharmony_ci{ 13747db96d56Sopenharmony_ci PyObject *return_value = NULL; 13757db96d56Sopenharmony_ci PyCursesWindowObject *destwin; 13767db96d56Sopenharmony_ci int group_right_1 = 0; 13777db96d56Sopenharmony_ci int sminrow = 0; 13787db96d56Sopenharmony_ci int smincol = 0; 13797db96d56Sopenharmony_ci int dminrow = 0; 13807db96d56Sopenharmony_ci int dmincol = 0; 13817db96d56Sopenharmony_ci int dmaxrow = 0; 13827db96d56Sopenharmony_ci int dmaxcol = 0; 13837db96d56Sopenharmony_ci 13847db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 13857db96d56Sopenharmony_ci case 1: 13867db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "O!:overlay", &PyCursesWindow_Type, &destwin)) { 13877db96d56Sopenharmony_ci goto exit; 13887db96d56Sopenharmony_ci } 13897db96d56Sopenharmony_ci break; 13907db96d56Sopenharmony_ci case 7: 13917db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "O!iiiiii:overlay", &PyCursesWindow_Type, &destwin, &sminrow, &smincol, &dminrow, &dmincol, &dmaxrow, &dmaxcol)) { 13927db96d56Sopenharmony_ci goto exit; 13937db96d56Sopenharmony_ci } 13947db96d56Sopenharmony_ci group_right_1 = 1; 13957db96d56Sopenharmony_ci break; 13967db96d56Sopenharmony_ci default: 13977db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.overlay requires 1 to 7 arguments"); 13987db96d56Sopenharmony_ci goto exit; 13997db96d56Sopenharmony_ci } 14007db96d56Sopenharmony_ci return_value = _curses_window_overlay_impl(self, destwin, group_right_1, sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol); 14017db96d56Sopenharmony_ci 14027db96d56Sopenharmony_ciexit: 14037db96d56Sopenharmony_ci return return_value; 14047db96d56Sopenharmony_ci} 14057db96d56Sopenharmony_ci 14067db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_overwrite__doc__, 14077db96d56Sopenharmony_ci"overwrite(destwin, [sminrow, smincol, dminrow, dmincol, dmaxrow,\n" 14087db96d56Sopenharmony_ci" dmaxcol])\n" 14097db96d56Sopenharmony_ci"Overwrite the window on top of destwin.\n" 14107db96d56Sopenharmony_ci"\n" 14117db96d56Sopenharmony_ci"The windows need not be the same size, in which case only the overlapping\n" 14127db96d56Sopenharmony_ci"region is copied. This copy is destructive, which means that the current\n" 14137db96d56Sopenharmony_ci"background character overwrites the old contents of destwin.\n" 14147db96d56Sopenharmony_ci"\n" 14157db96d56Sopenharmony_ci"To get fine-grained control over the copied region, the second form of\n" 14167db96d56Sopenharmony_ci"overwrite() can be used. sminrow and smincol are the upper-left coordinates\n" 14177db96d56Sopenharmony_ci"of the source window, the other variables mark a rectangle in the destination\n" 14187db96d56Sopenharmony_ci"window."); 14197db96d56Sopenharmony_ci 14207db96d56Sopenharmony_ci#define _CURSES_WINDOW_OVERWRITE_METHODDEF \ 14217db96d56Sopenharmony_ci {"overwrite", (PyCFunction)_curses_window_overwrite, METH_VARARGS, _curses_window_overwrite__doc__}, 14227db96d56Sopenharmony_ci 14237db96d56Sopenharmony_cistatic PyObject * 14247db96d56Sopenharmony_ci_curses_window_overwrite_impl(PyCursesWindowObject *self, 14257db96d56Sopenharmony_ci PyCursesWindowObject *destwin, 14267db96d56Sopenharmony_ci int group_right_1, int sminrow, int smincol, 14277db96d56Sopenharmony_ci int dminrow, int dmincol, int dmaxrow, 14287db96d56Sopenharmony_ci int dmaxcol); 14297db96d56Sopenharmony_ci 14307db96d56Sopenharmony_cistatic PyObject * 14317db96d56Sopenharmony_ci_curses_window_overwrite(PyCursesWindowObject *self, PyObject *args) 14327db96d56Sopenharmony_ci{ 14337db96d56Sopenharmony_ci PyObject *return_value = NULL; 14347db96d56Sopenharmony_ci PyCursesWindowObject *destwin; 14357db96d56Sopenharmony_ci int group_right_1 = 0; 14367db96d56Sopenharmony_ci int sminrow = 0; 14377db96d56Sopenharmony_ci int smincol = 0; 14387db96d56Sopenharmony_ci int dminrow = 0; 14397db96d56Sopenharmony_ci int dmincol = 0; 14407db96d56Sopenharmony_ci int dmaxrow = 0; 14417db96d56Sopenharmony_ci int dmaxcol = 0; 14427db96d56Sopenharmony_ci 14437db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 14447db96d56Sopenharmony_ci case 1: 14457db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "O!:overwrite", &PyCursesWindow_Type, &destwin)) { 14467db96d56Sopenharmony_ci goto exit; 14477db96d56Sopenharmony_ci } 14487db96d56Sopenharmony_ci break; 14497db96d56Sopenharmony_ci case 7: 14507db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "O!iiiiii:overwrite", &PyCursesWindow_Type, &destwin, &sminrow, &smincol, &dminrow, &dmincol, &dmaxrow, &dmaxcol)) { 14517db96d56Sopenharmony_ci goto exit; 14527db96d56Sopenharmony_ci } 14537db96d56Sopenharmony_ci group_right_1 = 1; 14547db96d56Sopenharmony_ci break; 14557db96d56Sopenharmony_ci default: 14567db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.overwrite requires 1 to 7 arguments"); 14577db96d56Sopenharmony_ci goto exit; 14587db96d56Sopenharmony_ci } 14597db96d56Sopenharmony_ci return_value = _curses_window_overwrite_impl(self, destwin, group_right_1, sminrow, smincol, dminrow, dmincol, dmaxrow, dmaxcol); 14607db96d56Sopenharmony_ci 14617db96d56Sopenharmony_ciexit: 14627db96d56Sopenharmony_ci return return_value; 14637db96d56Sopenharmony_ci} 14647db96d56Sopenharmony_ci 14657db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_putwin__doc__, 14667db96d56Sopenharmony_ci"putwin($self, file, /)\n" 14677db96d56Sopenharmony_ci"--\n" 14687db96d56Sopenharmony_ci"\n" 14697db96d56Sopenharmony_ci"Write all data associated with the window into the provided file object.\n" 14707db96d56Sopenharmony_ci"\n" 14717db96d56Sopenharmony_ci"This information can be later retrieved using the getwin() function."); 14727db96d56Sopenharmony_ci 14737db96d56Sopenharmony_ci#define _CURSES_WINDOW_PUTWIN_METHODDEF \ 14747db96d56Sopenharmony_ci {"putwin", (PyCFunction)_curses_window_putwin, METH_O, _curses_window_putwin__doc__}, 14757db96d56Sopenharmony_ci 14767db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_redrawln__doc__, 14777db96d56Sopenharmony_ci"redrawln($self, beg, num, /)\n" 14787db96d56Sopenharmony_ci"--\n" 14797db96d56Sopenharmony_ci"\n" 14807db96d56Sopenharmony_ci"Mark the specified lines corrupted.\n" 14817db96d56Sopenharmony_ci"\n" 14827db96d56Sopenharmony_ci" beg\n" 14837db96d56Sopenharmony_ci" Starting line number.\n" 14847db96d56Sopenharmony_ci" num\n" 14857db96d56Sopenharmony_ci" The number of lines.\n" 14867db96d56Sopenharmony_ci"\n" 14877db96d56Sopenharmony_ci"They should be completely redrawn on the next refresh() call."); 14887db96d56Sopenharmony_ci 14897db96d56Sopenharmony_ci#define _CURSES_WINDOW_REDRAWLN_METHODDEF \ 14907db96d56Sopenharmony_ci {"redrawln", _PyCFunction_CAST(_curses_window_redrawln), METH_FASTCALL, _curses_window_redrawln__doc__}, 14917db96d56Sopenharmony_ci 14927db96d56Sopenharmony_cistatic PyObject * 14937db96d56Sopenharmony_ci_curses_window_redrawln_impl(PyCursesWindowObject *self, int beg, int num); 14947db96d56Sopenharmony_ci 14957db96d56Sopenharmony_cistatic PyObject * 14967db96d56Sopenharmony_ci_curses_window_redrawln(PyCursesWindowObject *self, PyObject *const *args, Py_ssize_t nargs) 14977db96d56Sopenharmony_ci{ 14987db96d56Sopenharmony_ci PyObject *return_value = NULL; 14997db96d56Sopenharmony_ci int beg; 15007db96d56Sopenharmony_ci int num; 15017db96d56Sopenharmony_ci 15027db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("redrawln", nargs, 2, 2)) { 15037db96d56Sopenharmony_ci goto exit; 15047db96d56Sopenharmony_ci } 15057db96d56Sopenharmony_ci beg = _PyLong_AsInt(args[0]); 15067db96d56Sopenharmony_ci if (beg == -1 && PyErr_Occurred()) { 15077db96d56Sopenharmony_ci goto exit; 15087db96d56Sopenharmony_ci } 15097db96d56Sopenharmony_ci num = _PyLong_AsInt(args[1]); 15107db96d56Sopenharmony_ci if (num == -1 && PyErr_Occurred()) { 15117db96d56Sopenharmony_ci goto exit; 15127db96d56Sopenharmony_ci } 15137db96d56Sopenharmony_ci return_value = _curses_window_redrawln_impl(self, beg, num); 15147db96d56Sopenharmony_ci 15157db96d56Sopenharmony_ciexit: 15167db96d56Sopenharmony_ci return return_value; 15177db96d56Sopenharmony_ci} 15187db96d56Sopenharmony_ci 15197db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_refresh__doc__, 15207db96d56Sopenharmony_ci"refresh([pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol])\n" 15217db96d56Sopenharmony_ci"Update the display immediately.\n" 15227db96d56Sopenharmony_ci"\n" 15237db96d56Sopenharmony_ci"Synchronize actual screen with previous drawing/deleting methods.\n" 15247db96d56Sopenharmony_ci"The 6 optional arguments can only be specified when the window is a pad\n" 15257db96d56Sopenharmony_ci"created with newpad(). The additional parameters are needed to indicate\n" 15267db96d56Sopenharmony_ci"what part of the pad and screen are involved. pminrow and pmincol specify\n" 15277db96d56Sopenharmony_ci"the upper left-hand corner of the rectangle to be displayed in the pad.\n" 15287db96d56Sopenharmony_ci"sminrow, smincol, smaxrow, and smaxcol specify the edges of the rectangle to\n" 15297db96d56Sopenharmony_ci"be displayed on the screen. The lower right-hand corner of the rectangle to\n" 15307db96d56Sopenharmony_ci"be displayed in the pad is calculated from the screen coordinates, since the\n" 15317db96d56Sopenharmony_ci"rectangles must be the same size. Both rectangles must be entirely contained\n" 15327db96d56Sopenharmony_ci"within their respective structures. Negative values of pminrow, pmincol,\n" 15337db96d56Sopenharmony_ci"sminrow, or smincol are treated as if they were zero."); 15347db96d56Sopenharmony_ci 15357db96d56Sopenharmony_ci#define _CURSES_WINDOW_REFRESH_METHODDEF \ 15367db96d56Sopenharmony_ci {"refresh", (PyCFunction)_curses_window_refresh, METH_VARARGS, _curses_window_refresh__doc__}, 15377db96d56Sopenharmony_ci 15387db96d56Sopenharmony_cistatic PyObject * 15397db96d56Sopenharmony_ci_curses_window_refresh_impl(PyCursesWindowObject *self, int group_right_1, 15407db96d56Sopenharmony_ci int pminrow, int pmincol, int sminrow, 15417db96d56Sopenharmony_ci int smincol, int smaxrow, int smaxcol); 15427db96d56Sopenharmony_ci 15437db96d56Sopenharmony_cistatic PyObject * 15447db96d56Sopenharmony_ci_curses_window_refresh(PyCursesWindowObject *self, PyObject *args) 15457db96d56Sopenharmony_ci{ 15467db96d56Sopenharmony_ci PyObject *return_value = NULL; 15477db96d56Sopenharmony_ci int group_right_1 = 0; 15487db96d56Sopenharmony_ci int pminrow = 0; 15497db96d56Sopenharmony_ci int pmincol = 0; 15507db96d56Sopenharmony_ci int sminrow = 0; 15517db96d56Sopenharmony_ci int smincol = 0; 15527db96d56Sopenharmony_ci int smaxrow = 0; 15537db96d56Sopenharmony_ci int smaxcol = 0; 15547db96d56Sopenharmony_ci 15557db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 15567db96d56Sopenharmony_ci case 0: 15577db96d56Sopenharmony_ci break; 15587db96d56Sopenharmony_ci case 6: 15597db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiiiii:refresh", &pminrow, &pmincol, &sminrow, &smincol, &smaxrow, &smaxcol)) { 15607db96d56Sopenharmony_ci goto exit; 15617db96d56Sopenharmony_ci } 15627db96d56Sopenharmony_ci group_right_1 = 1; 15637db96d56Sopenharmony_ci break; 15647db96d56Sopenharmony_ci default: 15657db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.refresh requires 0 to 6 arguments"); 15667db96d56Sopenharmony_ci goto exit; 15677db96d56Sopenharmony_ci } 15687db96d56Sopenharmony_ci return_value = _curses_window_refresh_impl(self, group_right_1, pminrow, pmincol, sminrow, smincol, smaxrow, smaxcol); 15697db96d56Sopenharmony_ci 15707db96d56Sopenharmony_ciexit: 15717db96d56Sopenharmony_ci return return_value; 15727db96d56Sopenharmony_ci} 15737db96d56Sopenharmony_ci 15747db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_setscrreg__doc__, 15757db96d56Sopenharmony_ci"setscrreg($self, top, bottom, /)\n" 15767db96d56Sopenharmony_ci"--\n" 15777db96d56Sopenharmony_ci"\n" 15787db96d56Sopenharmony_ci"Define a software scrolling region.\n" 15797db96d56Sopenharmony_ci"\n" 15807db96d56Sopenharmony_ci" top\n" 15817db96d56Sopenharmony_ci" First line number.\n" 15827db96d56Sopenharmony_ci" bottom\n" 15837db96d56Sopenharmony_ci" Last line number.\n" 15847db96d56Sopenharmony_ci"\n" 15857db96d56Sopenharmony_ci"All scrolling actions will take place in this region."); 15867db96d56Sopenharmony_ci 15877db96d56Sopenharmony_ci#define _CURSES_WINDOW_SETSCRREG_METHODDEF \ 15887db96d56Sopenharmony_ci {"setscrreg", _PyCFunction_CAST(_curses_window_setscrreg), METH_FASTCALL, _curses_window_setscrreg__doc__}, 15897db96d56Sopenharmony_ci 15907db96d56Sopenharmony_cistatic PyObject * 15917db96d56Sopenharmony_ci_curses_window_setscrreg_impl(PyCursesWindowObject *self, int top, 15927db96d56Sopenharmony_ci int bottom); 15937db96d56Sopenharmony_ci 15947db96d56Sopenharmony_cistatic PyObject * 15957db96d56Sopenharmony_ci_curses_window_setscrreg(PyCursesWindowObject *self, PyObject *const *args, Py_ssize_t nargs) 15967db96d56Sopenharmony_ci{ 15977db96d56Sopenharmony_ci PyObject *return_value = NULL; 15987db96d56Sopenharmony_ci int top; 15997db96d56Sopenharmony_ci int bottom; 16007db96d56Sopenharmony_ci 16017db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("setscrreg", nargs, 2, 2)) { 16027db96d56Sopenharmony_ci goto exit; 16037db96d56Sopenharmony_ci } 16047db96d56Sopenharmony_ci top = _PyLong_AsInt(args[0]); 16057db96d56Sopenharmony_ci if (top == -1 && PyErr_Occurred()) { 16067db96d56Sopenharmony_ci goto exit; 16077db96d56Sopenharmony_ci } 16087db96d56Sopenharmony_ci bottom = _PyLong_AsInt(args[1]); 16097db96d56Sopenharmony_ci if (bottom == -1 && PyErr_Occurred()) { 16107db96d56Sopenharmony_ci goto exit; 16117db96d56Sopenharmony_ci } 16127db96d56Sopenharmony_ci return_value = _curses_window_setscrreg_impl(self, top, bottom); 16137db96d56Sopenharmony_ci 16147db96d56Sopenharmony_ciexit: 16157db96d56Sopenharmony_ci return return_value; 16167db96d56Sopenharmony_ci} 16177db96d56Sopenharmony_ci 16187db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_subwin__doc__, 16197db96d56Sopenharmony_ci"subwin([nlines=0, ncols=0,] begin_y, begin_x)\n" 16207db96d56Sopenharmony_ci"Create a sub-window (screen-relative coordinates).\n" 16217db96d56Sopenharmony_ci"\n" 16227db96d56Sopenharmony_ci" nlines\n" 16237db96d56Sopenharmony_ci" Height.\n" 16247db96d56Sopenharmony_ci" ncols\n" 16257db96d56Sopenharmony_ci" Width.\n" 16267db96d56Sopenharmony_ci" begin_y\n" 16277db96d56Sopenharmony_ci" Top side y-coordinate.\n" 16287db96d56Sopenharmony_ci" begin_x\n" 16297db96d56Sopenharmony_ci" Left side x-coordinate.\n" 16307db96d56Sopenharmony_ci"\n" 16317db96d56Sopenharmony_ci"By default, the sub-window will extend from the specified position to the\n" 16327db96d56Sopenharmony_ci"lower right corner of the window."); 16337db96d56Sopenharmony_ci 16347db96d56Sopenharmony_ci#define _CURSES_WINDOW_SUBWIN_METHODDEF \ 16357db96d56Sopenharmony_ci {"subwin", (PyCFunction)_curses_window_subwin, METH_VARARGS, _curses_window_subwin__doc__}, 16367db96d56Sopenharmony_ci 16377db96d56Sopenharmony_cistatic PyObject * 16387db96d56Sopenharmony_ci_curses_window_subwin_impl(PyCursesWindowObject *self, int group_left_1, 16397db96d56Sopenharmony_ci int nlines, int ncols, int begin_y, int begin_x); 16407db96d56Sopenharmony_ci 16417db96d56Sopenharmony_cistatic PyObject * 16427db96d56Sopenharmony_ci_curses_window_subwin(PyCursesWindowObject *self, PyObject *args) 16437db96d56Sopenharmony_ci{ 16447db96d56Sopenharmony_ci PyObject *return_value = NULL; 16457db96d56Sopenharmony_ci int group_left_1 = 0; 16467db96d56Sopenharmony_ci int nlines = 0; 16477db96d56Sopenharmony_ci int ncols = 0; 16487db96d56Sopenharmony_ci int begin_y; 16497db96d56Sopenharmony_ci int begin_x; 16507db96d56Sopenharmony_ci 16517db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 16527db96d56Sopenharmony_ci case 2: 16537db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "ii:subwin", &begin_y, &begin_x)) { 16547db96d56Sopenharmony_ci goto exit; 16557db96d56Sopenharmony_ci } 16567db96d56Sopenharmony_ci break; 16577db96d56Sopenharmony_ci case 4: 16587db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiii:subwin", &nlines, &ncols, &begin_y, &begin_x)) { 16597db96d56Sopenharmony_ci goto exit; 16607db96d56Sopenharmony_ci } 16617db96d56Sopenharmony_ci group_left_1 = 1; 16627db96d56Sopenharmony_ci break; 16637db96d56Sopenharmony_ci default: 16647db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.subwin requires 2 to 4 arguments"); 16657db96d56Sopenharmony_ci goto exit; 16667db96d56Sopenharmony_ci } 16677db96d56Sopenharmony_ci return_value = _curses_window_subwin_impl(self, group_left_1, nlines, ncols, begin_y, begin_x); 16687db96d56Sopenharmony_ci 16697db96d56Sopenharmony_ciexit: 16707db96d56Sopenharmony_ci return return_value; 16717db96d56Sopenharmony_ci} 16727db96d56Sopenharmony_ci 16737db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_scroll__doc__, 16747db96d56Sopenharmony_ci"scroll([lines=1])\n" 16757db96d56Sopenharmony_ci"Scroll the screen or scrolling region.\n" 16767db96d56Sopenharmony_ci"\n" 16777db96d56Sopenharmony_ci" lines\n" 16787db96d56Sopenharmony_ci" Number of lines to scroll.\n" 16797db96d56Sopenharmony_ci"\n" 16807db96d56Sopenharmony_ci"Scroll upward if the argument is positive and downward if it is negative."); 16817db96d56Sopenharmony_ci 16827db96d56Sopenharmony_ci#define _CURSES_WINDOW_SCROLL_METHODDEF \ 16837db96d56Sopenharmony_ci {"scroll", (PyCFunction)_curses_window_scroll, METH_VARARGS, _curses_window_scroll__doc__}, 16847db96d56Sopenharmony_ci 16857db96d56Sopenharmony_cistatic PyObject * 16867db96d56Sopenharmony_ci_curses_window_scroll_impl(PyCursesWindowObject *self, int group_right_1, 16877db96d56Sopenharmony_ci int lines); 16887db96d56Sopenharmony_ci 16897db96d56Sopenharmony_cistatic PyObject * 16907db96d56Sopenharmony_ci_curses_window_scroll(PyCursesWindowObject *self, PyObject *args) 16917db96d56Sopenharmony_ci{ 16927db96d56Sopenharmony_ci PyObject *return_value = NULL; 16937db96d56Sopenharmony_ci int group_right_1 = 0; 16947db96d56Sopenharmony_ci int lines = 1; 16957db96d56Sopenharmony_ci 16967db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 16977db96d56Sopenharmony_ci case 0: 16987db96d56Sopenharmony_ci break; 16997db96d56Sopenharmony_ci case 1: 17007db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "i:scroll", &lines)) { 17017db96d56Sopenharmony_ci goto exit; 17027db96d56Sopenharmony_ci } 17037db96d56Sopenharmony_ci group_right_1 = 1; 17047db96d56Sopenharmony_ci break; 17057db96d56Sopenharmony_ci default: 17067db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.scroll requires 0 to 1 arguments"); 17077db96d56Sopenharmony_ci goto exit; 17087db96d56Sopenharmony_ci } 17097db96d56Sopenharmony_ci return_value = _curses_window_scroll_impl(self, group_right_1, lines); 17107db96d56Sopenharmony_ci 17117db96d56Sopenharmony_ciexit: 17127db96d56Sopenharmony_ci return return_value; 17137db96d56Sopenharmony_ci} 17147db96d56Sopenharmony_ci 17157db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_touchline__doc__, 17167db96d56Sopenharmony_ci"touchline(start, count, [changed=True])\n" 17177db96d56Sopenharmony_ci"Pretend count lines have been changed, starting with line start.\n" 17187db96d56Sopenharmony_ci"\n" 17197db96d56Sopenharmony_ci"If changed is supplied, it specifies whether the affected lines are marked\n" 17207db96d56Sopenharmony_ci"as having been changed (changed=True) or unchanged (changed=False)."); 17217db96d56Sopenharmony_ci 17227db96d56Sopenharmony_ci#define _CURSES_WINDOW_TOUCHLINE_METHODDEF \ 17237db96d56Sopenharmony_ci {"touchline", (PyCFunction)_curses_window_touchline, METH_VARARGS, _curses_window_touchline__doc__}, 17247db96d56Sopenharmony_ci 17257db96d56Sopenharmony_cistatic PyObject * 17267db96d56Sopenharmony_ci_curses_window_touchline_impl(PyCursesWindowObject *self, int start, 17277db96d56Sopenharmony_ci int count, int group_right_1, int changed); 17287db96d56Sopenharmony_ci 17297db96d56Sopenharmony_cistatic PyObject * 17307db96d56Sopenharmony_ci_curses_window_touchline(PyCursesWindowObject *self, PyObject *args) 17317db96d56Sopenharmony_ci{ 17327db96d56Sopenharmony_ci PyObject *return_value = NULL; 17337db96d56Sopenharmony_ci int start; 17347db96d56Sopenharmony_ci int count; 17357db96d56Sopenharmony_ci int group_right_1 = 0; 17367db96d56Sopenharmony_ci int changed = 1; 17377db96d56Sopenharmony_ci 17387db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 17397db96d56Sopenharmony_ci case 2: 17407db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "ii:touchline", &start, &count)) { 17417db96d56Sopenharmony_ci goto exit; 17427db96d56Sopenharmony_ci } 17437db96d56Sopenharmony_ci break; 17447db96d56Sopenharmony_ci case 3: 17457db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iii:touchline", &start, &count, &changed)) { 17467db96d56Sopenharmony_ci goto exit; 17477db96d56Sopenharmony_ci } 17487db96d56Sopenharmony_ci group_right_1 = 1; 17497db96d56Sopenharmony_ci break; 17507db96d56Sopenharmony_ci default: 17517db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.touchline requires 2 to 3 arguments"); 17527db96d56Sopenharmony_ci goto exit; 17537db96d56Sopenharmony_ci } 17547db96d56Sopenharmony_ci return_value = _curses_window_touchline_impl(self, start, count, group_right_1, changed); 17557db96d56Sopenharmony_ci 17567db96d56Sopenharmony_ciexit: 17577db96d56Sopenharmony_ci return return_value; 17587db96d56Sopenharmony_ci} 17597db96d56Sopenharmony_ci 17607db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_window_vline__doc__, 17617db96d56Sopenharmony_ci"vline([y, x,] ch, n, [attr=_curses.A_NORMAL])\n" 17627db96d56Sopenharmony_ci"Display a vertical line.\n" 17637db96d56Sopenharmony_ci"\n" 17647db96d56Sopenharmony_ci" y\n" 17657db96d56Sopenharmony_ci" Starting Y-coordinate.\n" 17667db96d56Sopenharmony_ci" x\n" 17677db96d56Sopenharmony_ci" Starting X-coordinate.\n" 17687db96d56Sopenharmony_ci" ch\n" 17697db96d56Sopenharmony_ci" Character to draw.\n" 17707db96d56Sopenharmony_ci" n\n" 17717db96d56Sopenharmony_ci" Line length.\n" 17727db96d56Sopenharmony_ci" attr\n" 17737db96d56Sopenharmony_ci" Attributes for the character."); 17747db96d56Sopenharmony_ci 17757db96d56Sopenharmony_ci#define _CURSES_WINDOW_VLINE_METHODDEF \ 17767db96d56Sopenharmony_ci {"vline", (PyCFunction)_curses_window_vline, METH_VARARGS, _curses_window_vline__doc__}, 17777db96d56Sopenharmony_ci 17787db96d56Sopenharmony_cistatic PyObject * 17797db96d56Sopenharmony_ci_curses_window_vline_impl(PyCursesWindowObject *self, int group_left_1, 17807db96d56Sopenharmony_ci int y, int x, PyObject *ch, int n, 17817db96d56Sopenharmony_ci int group_right_1, long attr); 17827db96d56Sopenharmony_ci 17837db96d56Sopenharmony_cistatic PyObject * 17847db96d56Sopenharmony_ci_curses_window_vline(PyCursesWindowObject *self, PyObject *args) 17857db96d56Sopenharmony_ci{ 17867db96d56Sopenharmony_ci PyObject *return_value = NULL; 17877db96d56Sopenharmony_ci int group_left_1 = 0; 17887db96d56Sopenharmony_ci int y = 0; 17897db96d56Sopenharmony_ci int x = 0; 17907db96d56Sopenharmony_ci PyObject *ch; 17917db96d56Sopenharmony_ci int n; 17927db96d56Sopenharmony_ci int group_right_1 = 0; 17937db96d56Sopenharmony_ci long attr = A_NORMAL; 17947db96d56Sopenharmony_ci 17957db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 17967db96d56Sopenharmony_ci case 2: 17977db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Oi:vline", &ch, &n)) { 17987db96d56Sopenharmony_ci goto exit; 17997db96d56Sopenharmony_ci } 18007db96d56Sopenharmony_ci break; 18017db96d56Sopenharmony_ci case 3: 18027db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "Oil:vline", &ch, &n, &attr)) { 18037db96d56Sopenharmony_ci goto exit; 18047db96d56Sopenharmony_ci } 18057db96d56Sopenharmony_ci group_right_1 = 1; 18067db96d56Sopenharmony_ci break; 18077db96d56Sopenharmony_ci case 4: 18087db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOi:vline", &y, &x, &ch, &n)) { 18097db96d56Sopenharmony_ci goto exit; 18107db96d56Sopenharmony_ci } 18117db96d56Sopenharmony_ci group_left_1 = 1; 18127db96d56Sopenharmony_ci break; 18137db96d56Sopenharmony_ci case 5: 18147db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiOil:vline", &y, &x, &ch, &n, &attr)) { 18157db96d56Sopenharmony_ci goto exit; 18167db96d56Sopenharmony_ci } 18177db96d56Sopenharmony_ci group_right_1 = 1; 18187db96d56Sopenharmony_ci group_left_1 = 1; 18197db96d56Sopenharmony_ci break; 18207db96d56Sopenharmony_ci default: 18217db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.window.vline requires 2 to 5 arguments"); 18227db96d56Sopenharmony_ci goto exit; 18237db96d56Sopenharmony_ci } 18247db96d56Sopenharmony_ci return_value = _curses_window_vline_impl(self, group_left_1, y, x, ch, n, group_right_1, attr); 18257db96d56Sopenharmony_ci 18267db96d56Sopenharmony_ciexit: 18277db96d56Sopenharmony_ci return return_value; 18287db96d56Sopenharmony_ci} 18297db96d56Sopenharmony_ci 18307db96d56Sopenharmony_ci#if defined(HAVE_CURSES_FILTER) 18317db96d56Sopenharmony_ci 18327db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_filter__doc__, 18337db96d56Sopenharmony_ci"filter($module, /)\n" 18347db96d56Sopenharmony_ci"--\n" 18357db96d56Sopenharmony_ci"\n"); 18367db96d56Sopenharmony_ci 18377db96d56Sopenharmony_ci#define _CURSES_FILTER_METHODDEF \ 18387db96d56Sopenharmony_ci {"filter", (PyCFunction)_curses_filter, METH_NOARGS, _curses_filter__doc__}, 18397db96d56Sopenharmony_ci 18407db96d56Sopenharmony_cistatic PyObject * 18417db96d56Sopenharmony_ci_curses_filter_impl(PyObject *module); 18427db96d56Sopenharmony_ci 18437db96d56Sopenharmony_cistatic PyObject * 18447db96d56Sopenharmony_ci_curses_filter(PyObject *module, PyObject *Py_UNUSED(ignored)) 18457db96d56Sopenharmony_ci{ 18467db96d56Sopenharmony_ci return _curses_filter_impl(module); 18477db96d56Sopenharmony_ci} 18487db96d56Sopenharmony_ci 18497db96d56Sopenharmony_ci#endif /* defined(HAVE_CURSES_FILTER) */ 18507db96d56Sopenharmony_ci 18517db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_baudrate__doc__, 18527db96d56Sopenharmony_ci"baudrate($module, /)\n" 18537db96d56Sopenharmony_ci"--\n" 18547db96d56Sopenharmony_ci"\n" 18557db96d56Sopenharmony_ci"Return the output speed of the terminal in bits per second."); 18567db96d56Sopenharmony_ci 18577db96d56Sopenharmony_ci#define _CURSES_BAUDRATE_METHODDEF \ 18587db96d56Sopenharmony_ci {"baudrate", (PyCFunction)_curses_baudrate, METH_NOARGS, _curses_baudrate__doc__}, 18597db96d56Sopenharmony_ci 18607db96d56Sopenharmony_cistatic PyObject * 18617db96d56Sopenharmony_ci_curses_baudrate_impl(PyObject *module); 18627db96d56Sopenharmony_ci 18637db96d56Sopenharmony_cistatic PyObject * 18647db96d56Sopenharmony_ci_curses_baudrate(PyObject *module, PyObject *Py_UNUSED(ignored)) 18657db96d56Sopenharmony_ci{ 18667db96d56Sopenharmony_ci return _curses_baudrate_impl(module); 18677db96d56Sopenharmony_ci} 18687db96d56Sopenharmony_ci 18697db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_beep__doc__, 18707db96d56Sopenharmony_ci"beep($module, /)\n" 18717db96d56Sopenharmony_ci"--\n" 18727db96d56Sopenharmony_ci"\n" 18737db96d56Sopenharmony_ci"Emit a short attention sound."); 18747db96d56Sopenharmony_ci 18757db96d56Sopenharmony_ci#define _CURSES_BEEP_METHODDEF \ 18767db96d56Sopenharmony_ci {"beep", (PyCFunction)_curses_beep, METH_NOARGS, _curses_beep__doc__}, 18777db96d56Sopenharmony_ci 18787db96d56Sopenharmony_cistatic PyObject * 18797db96d56Sopenharmony_ci_curses_beep_impl(PyObject *module); 18807db96d56Sopenharmony_ci 18817db96d56Sopenharmony_cistatic PyObject * 18827db96d56Sopenharmony_ci_curses_beep(PyObject *module, PyObject *Py_UNUSED(ignored)) 18837db96d56Sopenharmony_ci{ 18847db96d56Sopenharmony_ci return _curses_beep_impl(module); 18857db96d56Sopenharmony_ci} 18867db96d56Sopenharmony_ci 18877db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_can_change_color__doc__, 18887db96d56Sopenharmony_ci"can_change_color($module, /)\n" 18897db96d56Sopenharmony_ci"--\n" 18907db96d56Sopenharmony_ci"\n" 18917db96d56Sopenharmony_ci"Return True if the programmer can change the colors displayed by the terminal."); 18927db96d56Sopenharmony_ci 18937db96d56Sopenharmony_ci#define _CURSES_CAN_CHANGE_COLOR_METHODDEF \ 18947db96d56Sopenharmony_ci {"can_change_color", (PyCFunction)_curses_can_change_color, METH_NOARGS, _curses_can_change_color__doc__}, 18957db96d56Sopenharmony_ci 18967db96d56Sopenharmony_cistatic PyObject * 18977db96d56Sopenharmony_ci_curses_can_change_color_impl(PyObject *module); 18987db96d56Sopenharmony_ci 18997db96d56Sopenharmony_cistatic PyObject * 19007db96d56Sopenharmony_ci_curses_can_change_color(PyObject *module, PyObject *Py_UNUSED(ignored)) 19017db96d56Sopenharmony_ci{ 19027db96d56Sopenharmony_ci return _curses_can_change_color_impl(module); 19037db96d56Sopenharmony_ci} 19047db96d56Sopenharmony_ci 19057db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_cbreak__doc__, 19067db96d56Sopenharmony_ci"cbreak($module, flag=True, /)\n" 19077db96d56Sopenharmony_ci"--\n" 19087db96d56Sopenharmony_ci"\n" 19097db96d56Sopenharmony_ci"Enter cbreak mode.\n" 19107db96d56Sopenharmony_ci"\n" 19117db96d56Sopenharmony_ci" flag\n" 19127db96d56Sopenharmony_ci" If false, the effect is the same as calling nocbreak().\n" 19137db96d56Sopenharmony_ci"\n" 19147db96d56Sopenharmony_ci"In cbreak mode (sometimes called \"rare\" mode) normal tty line buffering is\n" 19157db96d56Sopenharmony_ci"turned off and characters are available to be read one by one. However,\n" 19167db96d56Sopenharmony_ci"unlike raw mode, special characters (interrupt, quit, suspend, and flow\n" 19177db96d56Sopenharmony_ci"control) retain their effects on the tty driver and calling program.\n" 19187db96d56Sopenharmony_ci"Calling first raw() then cbreak() leaves the terminal in cbreak mode."); 19197db96d56Sopenharmony_ci 19207db96d56Sopenharmony_ci#define _CURSES_CBREAK_METHODDEF \ 19217db96d56Sopenharmony_ci {"cbreak", _PyCFunction_CAST(_curses_cbreak), METH_FASTCALL, _curses_cbreak__doc__}, 19227db96d56Sopenharmony_ci 19237db96d56Sopenharmony_cistatic PyObject * 19247db96d56Sopenharmony_ci_curses_cbreak_impl(PyObject *module, int flag); 19257db96d56Sopenharmony_ci 19267db96d56Sopenharmony_cistatic PyObject * 19277db96d56Sopenharmony_ci_curses_cbreak(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 19287db96d56Sopenharmony_ci{ 19297db96d56Sopenharmony_ci PyObject *return_value = NULL; 19307db96d56Sopenharmony_ci int flag = 1; 19317db96d56Sopenharmony_ci 19327db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("cbreak", nargs, 0, 1)) { 19337db96d56Sopenharmony_ci goto exit; 19347db96d56Sopenharmony_ci } 19357db96d56Sopenharmony_ci if (nargs < 1) { 19367db96d56Sopenharmony_ci goto skip_optional; 19377db96d56Sopenharmony_ci } 19387db96d56Sopenharmony_ci flag = _PyLong_AsInt(args[0]); 19397db96d56Sopenharmony_ci if (flag == -1 && PyErr_Occurred()) { 19407db96d56Sopenharmony_ci goto exit; 19417db96d56Sopenharmony_ci } 19427db96d56Sopenharmony_ciskip_optional: 19437db96d56Sopenharmony_ci return_value = _curses_cbreak_impl(module, flag); 19447db96d56Sopenharmony_ci 19457db96d56Sopenharmony_ciexit: 19467db96d56Sopenharmony_ci return return_value; 19477db96d56Sopenharmony_ci} 19487db96d56Sopenharmony_ci 19497db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_color_content__doc__, 19507db96d56Sopenharmony_ci"color_content($module, color_number, /)\n" 19517db96d56Sopenharmony_ci"--\n" 19527db96d56Sopenharmony_ci"\n" 19537db96d56Sopenharmony_ci"Return the red, green, and blue (RGB) components of the specified color.\n" 19547db96d56Sopenharmony_ci"\n" 19557db96d56Sopenharmony_ci" color_number\n" 19567db96d56Sopenharmony_ci" The number of the color (0 - (COLORS-1)).\n" 19577db96d56Sopenharmony_ci"\n" 19587db96d56Sopenharmony_ci"A 3-tuple is returned, containing the R, G, B values for the given color,\n" 19597db96d56Sopenharmony_ci"which will be between 0 (no component) and 1000 (maximum amount of component)."); 19607db96d56Sopenharmony_ci 19617db96d56Sopenharmony_ci#define _CURSES_COLOR_CONTENT_METHODDEF \ 19627db96d56Sopenharmony_ci {"color_content", (PyCFunction)_curses_color_content, METH_O, _curses_color_content__doc__}, 19637db96d56Sopenharmony_ci 19647db96d56Sopenharmony_cistatic PyObject * 19657db96d56Sopenharmony_ci_curses_color_content_impl(PyObject *module, int color_number); 19667db96d56Sopenharmony_ci 19677db96d56Sopenharmony_cistatic PyObject * 19687db96d56Sopenharmony_ci_curses_color_content(PyObject *module, PyObject *arg) 19697db96d56Sopenharmony_ci{ 19707db96d56Sopenharmony_ci PyObject *return_value = NULL; 19717db96d56Sopenharmony_ci int color_number; 19727db96d56Sopenharmony_ci 19737db96d56Sopenharmony_ci if (!color_converter(arg, &color_number)) { 19747db96d56Sopenharmony_ci goto exit; 19757db96d56Sopenharmony_ci } 19767db96d56Sopenharmony_ci return_value = _curses_color_content_impl(module, color_number); 19777db96d56Sopenharmony_ci 19787db96d56Sopenharmony_ciexit: 19797db96d56Sopenharmony_ci return return_value; 19807db96d56Sopenharmony_ci} 19817db96d56Sopenharmony_ci 19827db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_color_pair__doc__, 19837db96d56Sopenharmony_ci"color_pair($module, pair_number, /)\n" 19847db96d56Sopenharmony_ci"--\n" 19857db96d56Sopenharmony_ci"\n" 19867db96d56Sopenharmony_ci"Return the attribute value for displaying text in the specified color.\n" 19877db96d56Sopenharmony_ci"\n" 19887db96d56Sopenharmony_ci" pair_number\n" 19897db96d56Sopenharmony_ci" The number of the color pair.\n" 19907db96d56Sopenharmony_ci"\n" 19917db96d56Sopenharmony_ci"This attribute value can be combined with A_STANDOUT, A_REVERSE, and the\n" 19927db96d56Sopenharmony_ci"other A_* attributes. pair_number() is the counterpart to this function."); 19937db96d56Sopenharmony_ci 19947db96d56Sopenharmony_ci#define _CURSES_COLOR_PAIR_METHODDEF \ 19957db96d56Sopenharmony_ci {"color_pair", (PyCFunction)_curses_color_pair, METH_O, _curses_color_pair__doc__}, 19967db96d56Sopenharmony_ci 19977db96d56Sopenharmony_cistatic PyObject * 19987db96d56Sopenharmony_ci_curses_color_pair_impl(PyObject *module, int pair_number); 19997db96d56Sopenharmony_ci 20007db96d56Sopenharmony_cistatic PyObject * 20017db96d56Sopenharmony_ci_curses_color_pair(PyObject *module, PyObject *arg) 20027db96d56Sopenharmony_ci{ 20037db96d56Sopenharmony_ci PyObject *return_value = NULL; 20047db96d56Sopenharmony_ci int pair_number; 20057db96d56Sopenharmony_ci 20067db96d56Sopenharmony_ci pair_number = _PyLong_AsInt(arg); 20077db96d56Sopenharmony_ci if (pair_number == -1 && PyErr_Occurred()) { 20087db96d56Sopenharmony_ci goto exit; 20097db96d56Sopenharmony_ci } 20107db96d56Sopenharmony_ci return_value = _curses_color_pair_impl(module, pair_number); 20117db96d56Sopenharmony_ci 20127db96d56Sopenharmony_ciexit: 20137db96d56Sopenharmony_ci return return_value; 20147db96d56Sopenharmony_ci} 20157db96d56Sopenharmony_ci 20167db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_curs_set__doc__, 20177db96d56Sopenharmony_ci"curs_set($module, visibility, /)\n" 20187db96d56Sopenharmony_ci"--\n" 20197db96d56Sopenharmony_ci"\n" 20207db96d56Sopenharmony_ci"Set the cursor state.\n" 20217db96d56Sopenharmony_ci"\n" 20227db96d56Sopenharmony_ci" visibility\n" 20237db96d56Sopenharmony_ci" 0 for invisible, 1 for normal visible, or 2 for very visible.\n" 20247db96d56Sopenharmony_ci"\n" 20257db96d56Sopenharmony_ci"If the terminal supports the visibility requested, the previous cursor\n" 20267db96d56Sopenharmony_ci"state is returned; otherwise, an exception is raised. On many terminals,\n" 20277db96d56Sopenharmony_ci"the \"visible\" mode is an underline cursor and the \"very visible\" mode is\n" 20287db96d56Sopenharmony_ci"a block cursor."); 20297db96d56Sopenharmony_ci 20307db96d56Sopenharmony_ci#define _CURSES_CURS_SET_METHODDEF \ 20317db96d56Sopenharmony_ci {"curs_set", (PyCFunction)_curses_curs_set, METH_O, _curses_curs_set__doc__}, 20327db96d56Sopenharmony_ci 20337db96d56Sopenharmony_cistatic PyObject * 20347db96d56Sopenharmony_ci_curses_curs_set_impl(PyObject *module, int visibility); 20357db96d56Sopenharmony_ci 20367db96d56Sopenharmony_cistatic PyObject * 20377db96d56Sopenharmony_ci_curses_curs_set(PyObject *module, PyObject *arg) 20387db96d56Sopenharmony_ci{ 20397db96d56Sopenharmony_ci PyObject *return_value = NULL; 20407db96d56Sopenharmony_ci int visibility; 20417db96d56Sopenharmony_ci 20427db96d56Sopenharmony_ci visibility = _PyLong_AsInt(arg); 20437db96d56Sopenharmony_ci if (visibility == -1 && PyErr_Occurred()) { 20447db96d56Sopenharmony_ci goto exit; 20457db96d56Sopenharmony_ci } 20467db96d56Sopenharmony_ci return_value = _curses_curs_set_impl(module, visibility); 20477db96d56Sopenharmony_ci 20487db96d56Sopenharmony_ciexit: 20497db96d56Sopenharmony_ci return return_value; 20507db96d56Sopenharmony_ci} 20517db96d56Sopenharmony_ci 20527db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_def_prog_mode__doc__, 20537db96d56Sopenharmony_ci"def_prog_mode($module, /)\n" 20547db96d56Sopenharmony_ci"--\n" 20557db96d56Sopenharmony_ci"\n" 20567db96d56Sopenharmony_ci"Save the current terminal mode as the \"program\" mode.\n" 20577db96d56Sopenharmony_ci"\n" 20587db96d56Sopenharmony_ci"The \"program\" mode is the mode when the running program is using curses.\n" 20597db96d56Sopenharmony_ci"\n" 20607db96d56Sopenharmony_ci"Subsequent calls to reset_prog_mode() will restore this mode."); 20617db96d56Sopenharmony_ci 20627db96d56Sopenharmony_ci#define _CURSES_DEF_PROG_MODE_METHODDEF \ 20637db96d56Sopenharmony_ci {"def_prog_mode", (PyCFunction)_curses_def_prog_mode, METH_NOARGS, _curses_def_prog_mode__doc__}, 20647db96d56Sopenharmony_ci 20657db96d56Sopenharmony_cistatic PyObject * 20667db96d56Sopenharmony_ci_curses_def_prog_mode_impl(PyObject *module); 20677db96d56Sopenharmony_ci 20687db96d56Sopenharmony_cistatic PyObject * 20697db96d56Sopenharmony_ci_curses_def_prog_mode(PyObject *module, PyObject *Py_UNUSED(ignored)) 20707db96d56Sopenharmony_ci{ 20717db96d56Sopenharmony_ci return _curses_def_prog_mode_impl(module); 20727db96d56Sopenharmony_ci} 20737db96d56Sopenharmony_ci 20747db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_def_shell_mode__doc__, 20757db96d56Sopenharmony_ci"def_shell_mode($module, /)\n" 20767db96d56Sopenharmony_ci"--\n" 20777db96d56Sopenharmony_ci"\n" 20787db96d56Sopenharmony_ci"Save the current terminal mode as the \"shell\" mode.\n" 20797db96d56Sopenharmony_ci"\n" 20807db96d56Sopenharmony_ci"The \"shell\" mode is the mode when the running program is not using curses.\n" 20817db96d56Sopenharmony_ci"\n" 20827db96d56Sopenharmony_ci"Subsequent calls to reset_shell_mode() will restore this mode."); 20837db96d56Sopenharmony_ci 20847db96d56Sopenharmony_ci#define _CURSES_DEF_SHELL_MODE_METHODDEF \ 20857db96d56Sopenharmony_ci {"def_shell_mode", (PyCFunction)_curses_def_shell_mode, METH_NOARGS, _curses_def_shell_mode__doc__}, 20867db96d56Sopenharmony_ci 20877db96d56Sopenharmony_cistatic PyObject * 20887db96d56Sopenharmony_ci_curses_def_shell_mode_impl(PyObject *module); 20897db96d56Sopenharmony_ci 20907db96d56Sopenharmony_cistatic PyObject * 20917db96d56Sopenharmony_ci_curses_def_shell_mode(PyObject *module, PyObject *Py_UNUSED(ignored)) 20927db96d56Sopenharmony_ci{ 20937db96d56Sopenharmony_ci return _curses_def_shell_mode_impl(module); 20947db96d56Sopenharmony_ci} 20957db96d56Sopenharmony_ci 20967db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_delay_output__doc__, 20977db96d56Sopenharmony_ci"delay_output($module, ms, /)\n" 20987db96d56Sopenharmony_ci"--\n" 20997db96d56Sopenharmony_ci"\n" 21007db96d56Sopenharmony_ci"Insert a pause in output.\n" 21017db96d56Sopenharmony_ci"\n" 21027db96d56Sopenharmony_ci" ms\n" 21037db96d56Sopenharmony_ci" Duration in milliseconds."); 21047db96d56Sopenharmony_ci 21057db96d56Sopenharmony_ci#define _CURSES_DELAY_OUTPUT_METHODDEF \ 21067db96d56Sopenharmony_ci {"delay_output", (PyCFunction)_curses_delay_output, METH_O, _curses_delay_output__doc__}, 21077db96d56Sopenharmony_ci 21087db96d56Sopenharmony_cistatic PyObject * 21097db96d56Sopenharmony_ci_curses_delay_output_impl(PyObject *module, int ms); 21107db96d56Sopenharmony_ci 21117db96d56Sopenharmony_cistatic PyObject * 21127db96d56Sopenharmony_ci_curses_delay_output(PyObject *module, PyObject *arg) 21137db96d56Sopenharmony_ci{ 21147db96d56Sopenharmony_ci PyObject *return_value = NULL; 21157db96d56Sopenharmony_ci int ms; 21167db96d56Sopenharmony_ci 21177db96d56Sopenharmony_ci ms = _PyLong_AsInt(arg); 21187db96d56Sopenharmony_ci if (ms == -1 && PyErr_Occurred()) { 21197db96d56Sopenharmony_ci goto exit; 21207db96d56Sopenharmony_ci } 21217db96d56Sopenharmony_ci return_value = _curses_delay_output_impl(module, ms); 21227db96d56Sopenharmony_ci 21237db96d56Sopenharmony_ciexit: 21247db96d56Sopenharmony_ci return return_value; 21257db96d56Sopenharmony_ci} 21267db96d56Sopenharmony_ci 21277db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_doupdate__doc__, 21287db96d56Sopenharmony_ci"doupdate($module, /)\n" 21297db96d56Sopenharmony_ci"--\n" 21307db96d56Sopenharmony_ci"\n" 21317db96d56Sopenharmony_ci"Update the physical screen to match the virtual screen."); 21327db96d56Sopenharmony_ci 21337db96d56Sopenharmony_ci#define _CURSES_DOUPDATE_METHODDEF \ 21347db96d56Sopenharmony_ci {"doupdate", (PyCFunction)_curses_doupdate, METH_NOARGS, _curses_doupdate__doc__}, 21357db96d56Sopenharmony_ci 21367db96d56Sopenharmony_cistatic PyObject * 21377db96d56Sopenharmony_ci_curses_doupdate_impl(PyObject *module); 21387db96d56Sopenharmony_ci 21397db96d56Sopenharmony_cistatic PyObject * 21407db96d56Sopenharmony_ci_curses_doupdate(PyObject *module, PyObject *Py_UNUSED(ignored)) 21417db96d56Sopenharmony_ci{ 21427db96d56Sopenharmony_ci return _curses_doupdate_impl(module); 21437db96d56Sopenharmony_ci} 21447db96d56Sopenharmony_ci 21457db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_echo__doc__, 21467db96d56Sopenharmony_ci"echo($module, flag=True, /)\n" 21477db96d56Sopenharmony_ci"--\n" 21487db96d56Sopenharmony_ci"\n" 21497db96d56Sopenharmony_ci"Enter echo mode.\n" 21507db96d56Sopenharmony_ci"\n" 21517db96d56Sopenharmony_ci" flag\n" 21527db96d56Sopenharmony_ci" If false, the effect is the same as calling noecho().\n" 21537db96d56Sopenharmony_ci"\n" 21547db96d56Sopenharmony_ci"In echo mode, each character input is echoed to the screen as it is entered."); 21557db96d56Sopenharmony_ci 21567db96d56Sopenharmony_ci#define _CURSES_ECHO_METHODDEF \ 21577db96d56Sopenharmony_ci {"echo", _PyCFunction_CAST(_curses_echo), METH_FASTCALL, _curses_echo__doc__}, 21587db96d56Sopenharmony_ci 21597db96d56Sopenharmony_cistatic PyObject * 21607db96d56Sopenharmony_ci_curses_echo_impl(PyObject *module, int flag); 21617db96d56Sopenharmony_ci 21627db96d56Sopenharmony_cistatic PyObject * 21637db96d56Sopenharmony_ci_curses_echo(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 21647db96d56Sopenharmony_ci{ 21657db96d56Sopenharmony_ci PyObject *return_value = NULL; 21667db96d56Sopenharmony_ci int flag = 1; 21677db96d56Sopenharmony_ci 21687db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("echo", nargs, 0, 1)) { 21697db96d56Sopenharmony_ci goto exit; 21707db96d56Sopenharmony_ci } 21717db96d56Sopenharmony_ci if (nargs < 1) { 21727db96d56Sopenharmony_ci goto skip_optional; 21737db96d56Sopenharmony_ci } 21747db96d56Sopenharmony_ci flag = _PyLong_AsInt(args[0]); 21757db96d56Sopenharmony_ci if (flag == -1 && PyErr_Occurred()) { 21767db96d56Sopenharmony_ci goto exit; 21777db96d56Sopenharmony_ci } 21787db96d56Sopenharmony_ciskip_optional: 21797db96d56Sopenharmony_ci return_value = _curses_echo_impl(module, flag); 21807db96d56Sopenharmony_ci 21817db96d56Sopenharmony_ciexit: 21827db96d56Sopenharmony_ci return return_value; 21837db96d56Sopenharmony_ci} 21847db96d56Sopenharmony_ci 21857db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_endwin__doc__, 21867db96d56Sopenharmony_ci"endwin($module, /)\n" 21877db96d56Sopenharmony_ci"--\n" 21887db96d56Sopenharmony_ci"\n" 21897db96d56Sopenharmony_ci"De-initialize the library, and return terminal to normal status."); 21907db96d56Sopenharmony_ci 21917db96d56Sopenharmony_ci#define _CURSES_ENDWIN_METHODDEF \ 21927db96d56Sopenharmony_ci {"endwin", (PyCFunction)_curses_endwin, METH_NOARGS, _curses_endwin__doc__}, 21937db96d56Sopenharmony_ci 21947db96d56Sopenharmony_cistatic PyObject * 21957db96d56Sopenharmony_ci_curses_endwin_impl(PyObject *module); 21967db96d56Sopenharmony_ci 21977db96d56Sopenharmony_cistatic PyObject * 21987db96d56Sopenharmony_ci_curses_endwin(PyObject *module, PyObject *Py_UNUSED(ignored)) 21997db96d56Sopenharmony_ci{ 22007db96d56Sopenharmony_ci return _curses_endwin_impl(module); 22017db96d56Sopenharmony_ci} 22027db96d56Sopenharmony_ci 22037db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_erasechar__doc__, 22047db96d56Sopenharmony_ci"erasechar($module, /)\n" 22057db96d56Sopenharmony_ci"--\n" 22067db96d56Sopenharmony_ci"\n" 22077db96d56Sopenharmony_ci"Return the user\'s current erase character."); 22087db96d56Sopenharmony_ci 22097db96d56Sopenharmony_ci#define _CURSES_ERASECHAR_METHODDEF \ 22107db96d56Sopenharmony_ci {"erasechar", (PyCFunction)_curses_erasechar, METH_NOARGS, _curses_erasechar__doc__}, 22117db96d56Sopenharmony_ci 22127db96d56Sopenharmony_cistatic PyObject * 22137db96d56Sopenharmony_ci_curses_erasechar_impl(PyObject *module); 22147db96d56Sopenharmony_ci 22157db96d56Sopenharmony_cistatic PyObject * 22167db96d56Sopenharmony_ci_curses_erasechar(PyObject *module, PyObject *Py_UNUSED(ignored)) 22177db96d56Sopenharmony_ci{ 22187db96d56Sopenharmony_ci return _curses_erasechar_impl(module); 22197db96d56Sopenharmony_ci} 22207db96d56Sopenharmony_ci 22217db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_flash__doc__, 22227db96d56Sopenharmony_ci"flash($module, /)\n" 22237db96d56Sopenharmony_ci"--\n" 22247db96d56Sopenharmony_ci"\n" 22257db96d56Sopenharmony_ci"Flash the screen.\n" 22267db96d56Sopenharmony_ci"\n" 22277db96d56Sopenharmony_ci"That is, change it to reverse-video and then change it back in a short interval."); 22287db96d56Sopenharmony_ci 22297db96d56Sopenharmony_ci#define _CURSES_FLASH_METHODDEF \ 22307db96d56Sopenharmony_ci {"flash", (PyCFunction)_curses_flash, METH_NOARGS, _curses_flash__doc__}, 22317db96d56Sopenharmony_ci 22327db96d56Sopenharmony_cistatic PyObject * 22337db96d56Sopenharmony_ci_curses_flash_impl(PyObject *module); 22347db96d56Sopenharmony_ci 22357db96d56Sopenharmony_cistatic PyObject * 22367db96d56Sopenharmony_ci_curses_flash(PyObject *module, PyObject *Py_UNUSED(ignored)) 22377db96d56Sopenharmony_ci{ 22387db96d56Sopenharmony_ci return _curses_flash_impl(module); 22397db96d56Sopenharmony_ci} 22407db96d56Sopenharmony_ci 22417db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_flushinp__doc__, 22427db96d56Sopenharmony_ci"flushinp($module, /)\n" 22437db96d56Sopenharmony_ci"--\n" 22447db96d56Sopenharmony_ci"\n" 22457db96d56Sopenharmony_ci"Flush all input buffers.\n" 22467db96d56Sopenharmony_ci"\n" 22477db96d56Sopenharmony_ci"This throws away any typeahead that has been typed by the user and has not\n" 22487db96d56Sopenharmony_ci"yet been processed by the program."); 22497db96d56Sopenharmony_ci 22507db96d56Sopenharmony_ci#define _CURSES_FLUSHINP_METHODDEF \ 22517db96d56Sopenharmony_ci {"flushinp", (PyCFunction)_curses_flushinp, METH_NOARGS, _curses_flushinp__doc__}, 22527db96d56Sopenharmony_ci 22537db96d56Sopenharmony_cistatic PyObject * 22547db96d56Sopenharmony_ci_curses_flushinp_impl(PyObject *module); 22557db96d56Sopenharmony_ci 22567db96d56Sopenharmony_cistatic PyObject * 22577db96d56Sopenharmony_ci_curses_flushinp(PyObject *module, PyObject *Py_UNUSED(ignored)) 22587db96d56Sopenharmony_ci{ 22597db96d56Sopenharmony_ci return _curses_flushinp_impl(module); 22607db96d56Sopenharmony_ci} 22617db96d56Sopenharmony_ci 22627db96d56Sopenharmony_ci#if defined(getsyx) 22637db96d56Sopenharmony_ci 22647db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_getsyx__doc__, 22657db96d56Sopenharmony_ci"getsyx($module, /)\n" 22667db96d56Sopenharmony_ci"--\n" 22677db96d56Sopenharmony_ci"\n" 22687db96d56Sopenharmony_ci"Return the current coordinates of the virtual screen cursor.\n" 22697db96d56Sopenharmony_ci"\n" 22707db96d56Sopenharmony_ci"Return a (y, x) tuple. If leaveok is currently true, return (-1, -1)."); 22717db96d56Sopenharmony_ci 22727db96d56Sopenharmony_ci#define _CURSES_GETSYX_METHODDEF \ 22737db96d56Sopenharmony_ci {"getsyx", (PyCFunction)_curses_getsyx, METH_NOARGS, _curses_getsyx__doc__}, 22747db96d56Sopenharmony_ci 22757db96d56Sopenharmony_cistatic PyObject * 22767db96d56Sopenharmony_ci_curses_getsyx_impl(PyObject *module); 22777db96d56Sopenharmony_ci 22787db96d56Sopenharmony_cistatic PyObject * 22797db96d56Sopenharmony_ci_curses_getsyx(PyObject *module, PyObject *Py_UNUSED(ignored)) 22807db96d56Sopenharmony_ci{ 22817db96d56Sopenharmony_ci return _curses_getsyx_impl(module); 22827db96d56Sopenharmony_ci} 22837db96d56Sopenharmony_ci 22847db96d56Sopenharmony_ci#endif /* defined(getsyx) */ 22857db96d56Sopenharmony_ci 22867db96d56Sopenharmony_ci#if defined(NCURSES_MOUSE_VERSION) 22877db96d56Sopenharmony_ci 22887db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_getmouse__doc__, 22897db96d56Sopenharmony_ci"getmouse($module, /)\n" 22907db96d56Sopenharmony_ci"--\n" 22917db96d56Sopenharmony_ci"\n" 22927db96d56Sopenharmony_ci"Retrieve the queued mouse event.\n" 22937db96d56Sopenharmony_ci"\n" 22947db96d56Sopenharmony_ci"After getch() returns KEY_MOUSE to signal a mouse event, this function\n" 22957db96d56Sopenharmony_ci"returns a 5-tuple (id, x, y, z, bstate)."); 22967db96d56Sopenharmony_ci 22977db96d56Sopenharmony_ci#define _CURSES_GETMOUSE_METHODDEF \ 22987db96d56Sopenharmony_ci {"getmouse", (PyCFunction)_curses_getmouse, METH_NOARGS, _curses_getmouse__doc__}, 22997db96d56Sopenharmony_ci 23007db96d56Sopenharmony_cistatic PyObject * 23017db96d56Sopenharmony_ci_curses_getmouse_impl(PyObject *module); 23027db96d56Sopenharmony_ci 23037db96d56Sopenharmony_cistatic PyObject * 23047db96d56Sopenharmony_ci_curses_getmouse(PyObject *module, PyObject *Py_UNUSED(ignored)) 23057db96d56Sopenharmony_ci{ 23067db96d56Sopenharmony_ci return _curses_getmouse_impl(module); 23077db96d56Sopenharmony_ci} 23087db96d56Sopenharmony_ci 23097db96d56Sopenharmony_ci#endif /* defined(NCURSES_MOUSE_VERSION) */ 23107db96d56Sopenharmony_ci 23117db96d56Sopenharmony_ci#if defined(NCURSES_MOUSE_VERSION) 23127db96d56Sopenharmony_ci 23137db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_ungetmouse__doc__, 23147db96d56Sopenharmony_ci"ungetmouse($module, id, x, y, z, bstate, /)\n" 23157db96d56Sopenharmony_ci"--\n" 23167db96d56Sopenharmony_ci"\n" 23177db96d56Sopenharmony_ci"Push a KEY_MOUSE event onto the input queue.\n" 23187db96d56Sopenharmony_ci"\n" 23197db96d56Sopenharmony_ci"The following getmouse() will return the given state data."); 23207db96d56Sopenharmony_ci 23217db96d56Sopenharmony_ci#define _CURSES_UNGETMOUSE_METHODDEF \ 23227db96d56Sopenharmony_ci {"ungetmouse", _PyCFunction_CAST(_curses_ungetmouse), METH_FASTCALL, _curses_ungetmouse__doc__}, 23237db96d56Sopenharmony_ci 23247db96d56Sopenharmony_cistatic PyObject * 23257db96d56Sopenharmony_ci_curses_ungetmouse_impl(PyObject *module, short id, int x, int y, int z, 23267db96d56Sopenharmony_ci unsigned long bstate); 23277db96d56Sopenharmony_ci 23287db96d56Sopenharmony_cistatic PyObject * 23297db96d56Sopenharmony_ci_curses_ungetmouse(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 23307db96d56Sopenharmony_ci{ 23317db96d56Sopenharmony_ci PyObject *return_value = NULL; 23327db96d56Sopenharmony_ci short id; 23337db96d56Sopenharmony_ci int x; 23347db96d56Sopenharmony_ci int y; 23357db96d56Sopenharmony_ci int z; 23367db96d56Sopenharmony_ci unsigned long bstate; 23377db96d56Sopenharmony_ci 23387db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("ungetmouse", nargs, 5, 5)) { 23397db96d56Sopenharmony_ci goto exit; 23407db96d56Sopenharmony_ci } 23417db96d56Sopenharmony_ci { 23427db96d56Sopenharmony_ci long ival = PyLong_AsLong(args[0]); 23437db96d56Sopenharmony_ci if (ival == -1 && PyErr_Occurred()) { 23447db96d56Sopenharmony_ci goto exit; 23457db96d56Sopenharmony_ci } 23467db96d56Sopenharmony_ci else if (ival < SHRT_MIN) { 23477db96d56Sopenharmony_ci PyErr_SetString(PyExc_OverflowError, 23487db96d56Sopenharmony_ci "signed short integer is less than minimum"); 23497db96d56Sopenharmony_ci goto exit; 23507db96d56Sopenharmony_ci } 23517db96d56Sopenharmony_ci else if (ival > SHRT_MAX) { 23527db96d56Sopenharmony_ci PyErr_SetString(PyExc_OverflowError, 23537db96d56Sopenharmony_ci "signed short integer is greater than maximum"); 23547db96d56Sopenharmony_ci goto exit; 23557db96d56Sopenharmony_ci } 23567db96d56Sopenharmony_ci else { 23577db96d56Sopenharmony_ci id = (short) ival; 23587db96d56Sopenharmony_ci } 23597db96d56Sopenharmony_ci } 23607db96d56Sopenharmony_ci x = _PyLong_AsInt(args[1]); 23617db96d56Sopenharmony_ci if (x == -1 && PyErr_Occurred()) { 23627db96d56Sopenharmony_ci goto exit; 23637db96d56Sopenharmony_ci } 23647db96d56Sopenharmony_ci y = _PyLong_AsInt(args[2]); 23657db96d56Sopenharmony_ci if (y == -1 && PyErr_Occurred()) { 23667db96d56Sopenharmony_ci goto exit; 23677db96d56Sopenharmony_ci } 23687db96d56Sopenharmony_ci z = _PyLong_AsInt(args[3]); 23697db96d56Sopenharmony_ci if (z == -1 && PyErr_Occurred()) { 23707db96d56Sopenharmony_ci goto exit; 23717db96d56Sopenharmony_ci } 23727db96d56Sopenharmony_ci if (!PyLong_Check(args[4])) { 23737db96d56Sopenharmony_ci _PyArg_BadArgument("ungetmouse", "argument 5", "int", args[4]); 23747db96d56Sopenharmony_ci goto exit; 23757db96d56Sopenharmony_ci } 23767db96d56Sopenharmony_ci bstate = PyLong_AsUnsignedLongMask(args[4]); 23777db96d56Sopenharmony_ci return_value = _curses_ungetmouse_impl(module, id, x, y, z, bstate); 23787db96d56Sopenharmony_ci 23797db96d56Sopenharmony_ciexit: 23807db96d56Sopenharmony_ci return return_value; 23817db96d56Sopenharmony_ci} 23827db96d56Sopenharmony_ci 23837db96d56Sopenharmony_ci#endif /* defined(NCURSES_MOUSE_VERSION) */ 23847db96d56Sopenharmony_ci 23857db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_getwin__doc__, 23867db96d56Sopenharmony_ci"getwin($module, file, /)\n" 23877db96d56Sopenharmony_ci"--\n" 23887db96d56Sopenharmony_ci"\n" 23897db96d56Sopenharmony_ci"Read window related data stored in the file by an earlier putwin() call.\n" 23907db96d56Sopenharmony_ci"\n" 23917db96d56Sopenharmony_ci"The routine then creates and initializes a new window using that data,\n" 23927db96d56Sopenharmony_ci"returning the new window object."); 23937db96d56Sopenharmony_ci 23947db96d56Sopenharmony_ci#define _CURSES_GETWIN_METHODDEF \ 23957db96d56Sopenharmony_ci {"getwin", (PyCFunction)_curses_getwin, METH_O, _curses_getwin__doc__}, 23967db96d56Sopenharmony_ci 23977db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_halfdelay__doc__, 23987db96d56Sopenharmony_ci"halfdelay($module, tenths, /)\n" 23997db96d56Sopenharmony_ci"--\n" 24007db96d56Sopenharmony_ci"\n" 24017db96d56Sopenharmony_ci"Enter half-delay mode.\n" 24027db96d56Sopenharmony_ci"\n" 24037db96d56Sopenharmony_ci" tenths\n" 24047db96d56Sopenharmony_ci" Maximal blocking delay in tenths of seconds (1 - 255).\n" 24057db96d56Sopenharmony_ci"\n" 24067db96d56Sopenharmony_ci"Use nocbreak() to leave half-delay mode."); 24077db96d56Sopenharmony_ci 24087db96d56Sopenharmony_ci#define _CURSES_HALFDELAY_METHODDEF \ 24097db96d56Sopenharmony_ci {"halfdelay", (PyCFunction)_curses_halfdelay, METH_O, _curses_halfdelay__doc__}, 24107db96d56Sopenharmony_ci 24117db96d56Sopenharmony_cistatic PyObject * 24127db96d56Sopenharmony_ci_curses_halfdelay_impl(PyObject *module, unsigned char tenths); 24137db96d56Sopenharmony_ci 24147db96d56Sopenharmony_cistatic PyObject * 24157db96d56Sopenharmony_ci_curses_halfdelay(PyObject *module, PyObject *arg) 24167db96d56Sopenharmony_ci{ 24177db96d56Sopenharmony_ci PyObject *return_value = NULL; 24187db96d56Sopenharmony_ci unsigned char tenths; 24197db96d56Sopenharmony_ci 24207db96d56Sopenharmony_ci { 24217db96d56Sopenharmony_ci long ival = PyLong_AsLong(arg); 24227db96d56Sopenharmony_ci if (ival == -1 && PyErr_Occurred()) { 24237db96d56Sopenharmony_ci goto exit; 24247db96d56Sopenharmony_ci } 24257db96d56Sopenharmony_ci else if (ival < 0) { 24267db96d56Sopenharmony_ci PyErr_SetString(PyExc_OverflowError, 24277db96d56Sopenharmony_ci "unsigned byte integer is less than minimum"); 24287db96d56Sopenharmony_ci goto exit; 24297db96d56Sopenharmony_ci } 24307db96d56Sopenharmony_ci else if (ival > UCHAR_MAX) { 24317db96d56Sopenharmony_ci PyErr_SetString(PyExc_OverflowError, 24327db96d56Sopenharmony_ci "unsigned byte integer is greater than maximum"); 24337db96d56Sopenharmony_ci goto exit; 24347db96d56Sopenharmony_ci } 24357db96d56Sopenharmony_ci else { 24367db96d56Sopenharmony_ci tenths = (unsigned char) ival; 24377db96d56Sopenharmony_ci } 24387db96d56Sopenharmony_ci } 24397db96d56Sopenharmony_ci return_value = _curses_halfdelay_impl(module, tenths); 24407db96d56Sopenharmony_ci 24417db96d56Sopenharmony_ciexit: 24427db96d56Sopenharmony_ci return return_value; 24437db96d56Sopenharmony_ci} 24447db96d56Sopenharmony_ci 24457db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_has_colors__doc__, 24467db96d56Sopenharmony_ci"has_colors($module, /)\n" 24477db96d56Sopenharmony_ci"--\n" 24487db96d56Sopenharmony_ci"\n" 24497db96d56Sopenharmony_ci"Return True if the terminal can display colors; otherwise, return False."); 24507db96d56Sopenharmony_ci 24517db96d56Sopenharmony_ci#define _CURSES_HAS_COLORS_METHODDEF \ 24527db96d56Sopenharmony_ci {"has_colors", (PyCFunction)_curses_has_colors, METH_NOARGS, _curses_has_colors__doc__}, 24537db96d56Sopenharmony_ci 24547db96d56Sopenharmony_cistatic PyObject * 24557db96d56Sopenharmony_ci_curses_has_colors_impl(PyObject *module); 24567db96d56Sopenharmony_ci 24577db96d56Sopenharmony_cistatic PyObject * 24587db96d56Sopenharmony_ci_curses_has_colors(PyObject *module, PyObject *Py_UNUSED(ignored)) 24597db96d56Sopenharmony_ci{ 24607db96d56Sopenharmony_ci return _curses_has_colors_impl(module); 24617db96d56Sopenharmony_ci} 24627db96d56Sopenharmony_ci 24637db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_has_ic__doc__, 24647db96d56Sopenharmony_ci"has_ic($module, /)\n" 24657db96d56Sopenharmony_ci"--\n" 24667db96d56Sopenharmony_ci"\n" 24677db96d56Sopenharmony_ci"Return True if the terminal has insert- and delete-character capabilities."); 24687db96d56Sopenharmony_ci 24697db96d56Sopenharmony_ci#define _CURSES_HAS_IC_METHODDEF \ 24707db96d56Sopenharmony_ci {"has_ic", (PyCFunction)_curses_has_ic, METH_NOARGS, _curses_has_ic__doc__}, 24717db96d56Sopenharmony_ci 24727db96d56Sopenharmony_cistatic PyObject * 24737db96d56Sopenharmony_ci_curses_has_ic_impl(PyObject *module); 24747db96d56Sopenharmony_ci 24757db96d56Sopenharmony_cistatic PyObject * 24767db96d56Sopenharmony_ci_curses_has_ic(PyObject *module, PyObject *Py_UNUSED(ignored)) 24777db96d56Sopenharmony_ci{ 24787db96d56Sopenharmony_ci return _curses_has_ic_impl(module); 24797db96d56Sopenharmony_ci} 24807db96d56Sopenharmony_ci 24817db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_has_il__doc__, 24827db96d56Sopenharmony_ci"has_il($module, /)\n" 24837db96d56Sopenharmony_ci"--\n" 24847db96d56Sopenharmony_ci"\n" 24857db96d56Sopenharmony_ci"Return True if the terminal has insert- and delete-line capabilities."); 24867db96d56Sopenharmony_ci 24877db96d56Sopenharmony_ci#define _CURSES_HAS_IL_METHODDEF \ 24887db96d56Sopenharmony_ci {"has_il", (PyCFunction)_curses_has_il, METH_NOARGS, _curses_has_il__doc__}, 24897db96d56Sopenharmony_ci 24907db96d56Sopenharmony_cistatic PyObject * 24917db96d56Sopenharmony_ci_curses_has_il_impl(PyObject *module); 24927db96d56Sopenharmony_ci 24937db96d56Sopenharmony_cistatic PyObject * 24947db96d56Sopenharmony_ci_curses_has_il(PyObject *module, PyObject *Py_UNUSED(ignored)) 24957db96d56Sopenharmony_ci{ 24967db96d56Sopenharmony_ci return _curses_has_il_impl(module); 24977db96d56Sopenharmony_ci} 24987db96d56Sopenharmony_ci 24997db96d56Sopenharmony_ci#if defined(HAVE_CURSES_HAS_KEY) 25007db96d56Sopenharmony_ci 25017db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_has_key__doc__, 25027db96d56Sopenharmony_ci"has_key($module, key, /)\n" 25037db96d56Sopenharmony_ci"--\n" 25047db96d56Sopenharmony_ci"\n" 25057db96d56Sopenharmony_ci"Return True if the current terminal type recognizes a key with that value.\n" 25067db96d56Sopenharmony_ci"\n" 25077db96d56Sopenharmony_ci" key\n" 25087db96d56Sopenharmony_ci" Key number."); 25097db96d56Sopenharmony_ci 25107db96d56Sopenharmony_ci#define _CURSES_HAS_KEY_METHODDEF \ 25117db96d56Sopenharmony_ci {"has_key", (PyCFunction)_curses_has_key, METH_O, _curses_has_key__doc__}, 25127db96d56Sopenharmony_ci 25137db96d56Sopenharmony_cistatic PyObject * 25147db96d56Sopenharmony_ci_curses_has_key_impl(PyObject *module, int key); 25157db96d56Sopenharmony_ci 25167db96d56Sopenharmony_cistatic PyObject * 25177db96d56Sopenharmony_ci_curses_has_key(PyObject *module, PyObject *arg) 25187db96d56Sopenharmony_ci{ 25197db96d56Sopenharmony_ci PyObject *return_value = NULL; 25207db96d56Sopenharmony_ci int key; 25217db96d56Sopenharmony_ci 25227db96d56Sopenharmony_ci key = _PyLong_AsInt(arg); 25237db96d56Sopenharmony_ci if (key == -1 && PyErr_Occurred()) { 25247db96d56Sopenharmony_ci goto exit; 25257db96d56Sopenharmony_ci } 25267db96d56Sopenharmony_ci return_value = _curses_has_key_impl(module, key); 25277db96d56Sopenharmony_ci 25287db96d56Sopenharmony_ciexit: 25297db96d56Sopenharmony_ci return return_value; 25307db96d56Sopenharmony_ci} 25317db96d56Sopenharmony_ci 25327db96d56Sopenharmony_ci#endif /* defined(HAVE_CURSES_HAS_KEY) */ 25337db96d56Sopenharmony_ci 25347db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_init_color__doc__, 25357db96d56Sopenharmony_ci"init_color($module, color_number, r, g, b, /)\n" 25367db96d56Sopenharmony_ci"--\n" 25377db96d56Sopenharmony_ci"\n" 25387db96d56Sopenharmony_ci"Change the definition of a color.\n" 25397db96d56Sopenharmony_ci"\n" 25407db96d56Sopenharmony_ci" color_number\n" 25417db96d56Sopenharmony_ci" The number of the color to be changed (0 - (COLORS-1)).\n" 25427db96d56Sopenharmony_ci" r\n" 25437db96d56Sopenharmony_ci" Red component (0 - 1000).\n" 25447db96d56Sopenharmony_ci" g\n" 25457db96d56Sopenharmony_ci" Green component (0 - 1000).\n" 25467db96d56Sopenharmony_ci" b\n" 25477db96d56Sopenharmony_ci" Blue component (0 - 1000).\n" 25487db96d56Sopenharmony_ci"\n" 25497db96d56Sopenharmony_ci"When init_color() is used, all occurrences of that color on the screen\n" 25507db96d56Sopenharmony_ci"immediately change to the new definition. This function is a no-op on\n" 25517db96d56Sopenharmony_ci"most terminals; it is active only if can_change_color() returns true."); 25527db96d56Sopenharmony_ci 25537db96d56Sopenharmony_ci#define _CURSES_INIT_COLOR_METHODDEF \ 25547db96d56Sopenharmony_ci {"init_color", _PyCFunction_CAST(_curses_init_color), METH_FASTCALL, _curses_init_color__doc__}, 25557db96d56Sopenharmony_ci 25567db96d56Sopenharmony_cistatic PyObject * 25577db96d56Sopenharmony_ci_curses_init_color_impl(PyObject *module, int color_number, short r, short g, 25587db96d56Sopenharmony_ci short b); 25597db96d56Sopenharmony_ci 25607db96d56Sopenharmony_cistatic PyObject * 25617db96d56Sopenharmony_ci_curses_init_color(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 25627db96d56Sopenharmony_ci{ 25637db96d56Sopenharmony_ci PyObject *return_value = NULL; 25647db96d56Sopenharmony_ci int color_number; 25657db96d56Sopenharmony_ci short r; 25667db96d56Sopenharmony_ci short g; 25677db96d56Sopenharmony_ci short b; 25687db96d56Sopenharmony_ci 25697db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("init_color", nargs, 4, 4)) { 25707db96d56Sopenharmony_ci goto exit; 25717db96d56Sopenharmony_ci } 25727db96d56Sopenharmony_ci if (!color_converter(args[0], &color_number)) { 25737db96d56Sopenharmony_ci goto exit; 25747db96d56Sopenharmony_ci } 25757db96d56Sopenharmony_ci if (!component_converter(args[1], &r)) { 25767db96d56Sopenharmony_ci goto exit; 25777db96d56Sopenharmony_ci } 25787db96d56Sopenharmony_ci if (!component_converter(args[2], &g)) { 25797db96d56Sopenharmony_ci goto exit; 25807db96d56Sopenharmony_ci } 25817db96d56Sopenharmony_ci if (!component_converter(args[3], &b)) { 25827db96d56Sopenharmony_ci goto exit; 25837db96d56Sopenharmony_ci } 25847db96d56Sopenharmony_ci return_value = _curses_init_color_impl(module, color_number, r, g, b); 25857db96d56Sopenharmony_ci 25867db96d56Sopenharmony_ciexit: 25877db96d56Sopenharmony_ci return return_value; 25887db96d56Sopenharmony_ci} 25897db96d56Sopenharmony_ci 25907db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_init_pair__doc__, 25917db96d56Sopenharmony_ci"init_pair($module, pair_number, fg, bg, /)\n" 25927db96d56Sopenharmony_ci"--\n" 25937db96d56Sopenharmony_ci"\n" 25947db96d56Sopenharmony_ci"Change the definition of a color-pair.\n" 25957db96d56Sopenharmony_ci"\n" 25967db96d56Sopenharmony_ci" pair_number\n" 25977db96d56Sopenharmony_ci" The number of the color-pair to be changed (1 - (COLOR_PAIRS-1)).\n" 25987db96d56Sopenharmony_ci" fg\n" 25997db96d56Sopenharmony_ci" Foreground color number (-1 - (COLORS-1)).\n" 26007db96d56Sopenharmony_ci" bg\n" 26017db96d56Sopenharmony_ci" Background color number (-1 - (COLORS-1)).\n" 26027db96d56Sopenharmony_ci"\n" 26037db96d56Sopenharmony_ci"If the color-pair was previously initialized, the screen is refreshed and\n" 26047db96d56Sopenharmony_ci"all occurrences of that color-pair are changed to the new definition."); 26057db96d56Sopenharmony_ci 26067db96d56Sopenharmony_ci#define _CURSES_INIT_PAIR_METHODDEF \ 26077db96d56Sopenharmony_ci {"init_pair", _PyCFunction_CAST(_curses_init_pair), METH_FASTCALL, _curses_init_pair__doc__}, 26087db96d56Sopenharmony_ci 26097db96d56Sopenharmony_cistatic PyObject * 26107db96d56Sopenharmony_ci_curses_init_pair_impl(PyObject *module, int pair_number, int fg, int bg); 26117db96d56Sopenharmony_ci 26127db96d56Sopenharmony_cistatic PyObject * 26137db96d56Sopenharmony_ci_curses_init_pair(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 26147db96d56Sopenharmony_ci{ 26157db96d56Sopenharmony_ci PyObject *return_value = NULL; 26167db96d56Sopenharmony_ci int pair_number; 26177db96d56Sopenharmony_ci int fg; 26187db96d56Sopenharmony_ci int bg; 26197db96d56Sopenharmony_ci 26207db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("init_pair", nargs, 3, 3)) { 26217db96d56Sopenharmony_ci goto exit; 26227db96d56Sopenharmony_ci } 26237db96d56Sopenharmony_ci if (!pair_converter(args[0], &pair_number)) { 26247db96d56Sopenharmony_ci goto exit; 26257db96d56Sopenharmony_ci } 26267db96d56Sopenharmony_ci if (!color_allow_default_converter(args[1], &fg)) { 26277db96d56Sopenharmony_ci goto exit; 26287db96d56Sopenharmony_ci } 26297db96d56Sopenharmony_ci if (!color_allow_default_converter(args[2], &bg)) { 26307db96d56Sopenharmony_ci goto exit; 26317db96d56Sopenharmony_ci } 26327db96d56Sopenharmony_ci return_value = _curses_init_pair_impl(module, pair_number, fg, bg); 26337db96d56Sopenharmony_ci 26347db96d56Sopenharmony_ciexit: 26357db96d56Sopenharmony_ci return return_value; 26367db96d56Sopenharmony_ci} 26377db96d56Sopenharmony_ci 26387db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_initscr__doc__, 26397db96d56Sopenharmony_ci"initscr($module, /)\n" 26407db96d56Sopenharmony_ci"--\n" 26417db96d56Sopenharmony_ci"\n" 26427db96d56Sopenharmony_ci"Initialize the library.\n" 26437db96d56Sopenharmony_ci"\n" 26447db96d56Sopenharmony_ci"Return a WindowObject which represents the whole screen."); 26457db96d56Sopenharmony_ci 26467db96d56Sopenharmony_ci#define _CURSES_INITSCR_METHODDEF \ 26477db96d56Sopenharmony_ci {"initscr", (PyCFunction)_curses_initscr, METH_NOARGS, _curses_initscr__doc__}, 26487db96d56Sopenharmony_ci 26497db96d56Sopenharmony_cistatic PyObject * 26507db96d56Sopenharmony_ci_curses_initscr_impl(PyObject *module); 26517db96d56Sopenharmony_ci 26527db96d56Sopenharmony_cistatic PyObject * 26537db96d56Sopenharmony_ci_curses_initscr(PyObject *module, PyObject *Py_UNUSED(ignored)) 26547db96d56Sopenharmony_ci{ 26557db96d56Sopenharmony_ci return _curses_initscr_impl(module); 26567db96d56Sopenharmony_ci} 26577db96d56Sopenharmony_ci 26587db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_setupterm__doc__, 26597db96d56Sopenharmony_ci"setupterm($module, /, term=None, fd=-1)\n" 26607db96d56Sopenharmony_ci"--\n" 26617db96d56Sopenharmony_ci"\n" 26627db96d56Sopenharmony_ci"Initialize the terminal.\n" 26637db96d56Sopenharmony_ci"\n" 26647db96d56Sopenharmony_ci" term\n" 26657db96d56Sopenharmony_ci" Terminal name.\n" 26667db96d56Sopenharmony_ci" If omitted, the value of the TERM environment variable will be used.\n" 26677db96d56Sopenharmony_ci" fd\n" 26687db96d56Sopenharmony_ci" File descriptor to which any initialization sequences will be sent.\n" 26697db96d56Sopenharmony_ci" If not supplied, the file descriptor for sys.stdout will be used."); 26707db96d56Sopenharmony_ci 26717db96d56Sopenharmony_ci#define _CURSES_SETUPTERM_METHODDEF \ 26727db96d56Sopenharmony_ci {"setupterm", _PyCFunction_CAST(_curses_setupterm), METH_FASTCALL|METH_KEYWORDS, _curses_setupterm__doc__}, 26737db96d56Sopenharmony_ci 26747db96d56Sopenharmony_cistatic PyObject * 26757db96d56Sopenharmony_ci_curses_setupterm_impl(PyObject *module, const char *term, int fd); 26767db96d56Sopenharmony_ci 26777db96d56Sopenharmony_cistatic PyObject * 26787db96d56Sopenharmony_ci_curses_setupterm(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) 26797db96d56Sopenharmony_ci{ 26807db96d56Sopenharmony_ci PyObject *return_value = NULL; 26817db96d56Sopenharmony_ci static const char * const _keywords[] = {"term", "fd", NULL}; 26827db96d56Sopenharmony_ci static _PyArg_Parser _parser = {NULL, _keywords, "setupterm", 0}; 26837db96d56Sopenharmony_ci PyObject *argsbuf[2]; 26847db96d56Sopenharmony_ci Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 0; 26857db96d56Sopenharmony_ci const char *term = NULL; 26867db96d56Sopenharmony_ci int fd = -1; 26877db96d56Sopenharmony_ci 26887db96d56Sopenharmony_ci args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 0, 2, 0, argsbuf); 26897db96d56Sopenharmony_ci if (!args) { 26907db96d56Sopenharmony_ci goto exit; 26917db96d56Sopenharmony_ci } 26927db96d56Sopenharmony_ci if (!noptargs) { 26937db96d56Sopenharmony_ci goto skip_optional_pos; 26947db96d56Sopenharmony_ci } 26957db96d56Sopenharmony_ci if (args[0]) { 26967db96d56Sopenharmony_ci if (args[0] == Py_None) { 26977db96d56Sopenharmony_ci term = NULL; 26987db96d56Sopenharmony_ci } 26997db96d56Sopenharmony_ci else if (PyUnicode_Check(args[0])) { 27007db96d56Sopenharmony_ci Py_ssize_t term_length; 27017db96d56Sopenharmony_ci term = PyUnicode_AsUTF8AndSize(args[0], &term_length); 27027db96d56Sopenharmony_ci if (term == NULL) { 27037db96d56Sopenharmony_ci goto exit; 27047db96d56Sopenharmony_ci } 27057db96d56Sopenharmony_ci if (strlen(term) != (size_t)term_length) { 27067db96d56Sopenharmony_ci PyErr_SetString(PyExc_ValueError, "embedded null character"); 27077db96d56Sopenharmony_ci goto exit; 27087db96d56Sopenharmony_ci } 27097db96d56Sopenharmony_ci } 27107db96d56Sopenharmony_ci else { 27117db96d56Sopenharmony_ci _PyArg_BadArgument("setupterm", "argument 'term'", "str or None", args[0]); 27127db96d56Sopenharmony_ci goto exit; 27137db96d56Sopenharmony_ci } 27147db96d56Sopenharmony_ci if (!--noptargs) { 27157db96d56Sopenharmony_ci goto skip_optional_pos; 27167db96d56Sopenharmony_ci } 27177db96d56Sopenharmony_ci } 27187db96d56Sopenharmony_ci fd = _PyLong_AsInt(args[1]); 27197db96d56Sopenharmony_ci if (fd == -1 && PyErr_Occurred()) { 27207db96d56Sopenharmony_ci goto exit; 27217db96d56Sopenharmony_ci } 27227db96d56Sopenharmony_ciskip_optional_pos: 27237db96d56Sopenharmony_ci return_value = _curses_setupterm_impl(module, term, fd); 27247db96d56Sopenharmony_ci 27257db96d56Sopenharmony_ciexit: 27267db96d56Sopenharmony_ci return return_value; 27277db96d56Sopenharmony_ci} 27287db96d56Sopenharmony_ci 27297db96d56Sopenharmony_ci#if (defined(NCURSES_EXT_FUNCS) && NCURSES_EXT_FUNCS >= 20081102) 27307db96d56Sopenharmony_ci 27317db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_get_escdelay__doc__, 27327db96d56Sopenharmony_ci"get_escdelay($module, /)\n" 27337db96d56Sopenharmony_ci"--\n" 27347db96d56Sopenharmony_ci"\n" 27357db96d56Sopenharmony_ci"Gets the curses ESCDELAY setting.\n" 27367db96d56Sopenharmony_ci"\n" 27377db96d56Sopenharmony_ci"Gets the number of milliseconds to wait after reading an escape character,\n" 27387db96d56Sopenharmony_ci"to distinguish between an individual escape character entered on the\n" 27397db96d56Sopenharmony_ci"keyboard from escape sequences sent by cursor and function keys."); 27407db96d56Sopenharmony_ci 27417db96d56Sopenharmony_ci#define _CURSES_GET_ESCDELAY_METHODDEF \ 27427db96d56Sopenharmony_ci {"get_escdelay", (PyCFunction)_curses_get_escdelay, METH_NOARGS, _curses_get_escdelay__doc__}, 27437db96d56Sopenharmony_ci 27447db96d56Sopenharmony_cistatic PyObject * 27457db96d56Sopenharmony_ci_curses_get_escdelay_impl(PyObject *module); 27467db96d56Sopenharmony_ci 27477db96d56Sopenharmony_cistatic PyObject * 27487db96d56Sopenharmony_ci_curses_get_escdelay(PyObject *module, PyObject *Py_UNUSED(ignored)) 27497db96d56Sopenharmony_ci{ 27507db96d56Sopenharmony_ci return _curses_get_escdelay_impl(module); 27517db96d56Sopenharmony_ci} 27527db96d56Sopenharmony_ci 27537db96d56Sopenharmony_ci#endif /* (defined(NCURSES_EXT_FUNCS) && NCURSES_EXT_FUNCS >= 20081102) */ 27547db96d56Sopenharmony_ci 27557db96d56Sopenharmony_ci#if (defined(NCURSES_EXT_FUNCS) && NCURSES_EXT_FUNCS >= 20081102) 27567db96d56Sopenharmony_ci 27577db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_set_escdelay__doc__, 27587db96d56Sopenharmony_ci"set_escdelay($module, ms, /)\n" 27597db96d56Sopenharmony_ci"--\n" 27607db96d56Sopenharmony_ci"\n" 27617db96d56Sopenharmony_ci"Sets the curses ESCDELAY setting.\n" 27627db96d56Sopenharmony_ci"\n" 27637db96d56Sopenharmony_ci" ms\n" 27647db96d56Sopenharmony_ci" length of the delay in milliseconds.\n" 27657db96d56Sopenharmony_ci"\n" 27667db96d56Sopenharmony_ci"Sets the number of milliseconds to wait after reading an escape character,\n" 27677db96d56Sopenharmony_ci"to distinguish between an individual escape character entered on the\n" 27687db96d56Sopenharmony_ci"keyboard from escape sequences sent by cursor and function keys."); 27697db96d56Sopenharmony_ci 27707db96d56Sopenharmony_ci#define _CURSES_SET_ESCDELAY_METHODDEF \ 27717db96d56Sopenharmony_ci {"set_escdelay", (PyCFunction)_curses_set_escdelay, METH_O, _curses_set_escdelay__doc__}, 27727db96d56Sopenharmony_ci 27737db96d56Sopenharmony_cistatic PyObject * 27747db96d56Sopenharmony_ci_curses_set_escdelay_impl(PyObject *module, int ms); 27757db96d56Sopenharmony_ci 27767db96d56Sopenharmony_cistatic PyObject * 27777db96d56Sopenharmony_ci_curses_set_escdelay(PyObject *module, PyObject *arg) 27787db96d56Sopenharmony_ci{ 27797db96d56Sopenharmony_ci PyObject *return_value = NULL; 27807db96d56Sopenharmony_ci int ms; 27817db96d56Sopenharmony_ci 27827db96d56Sopenharmony_ci ms = _PyLong_AsInt(arg); 27837db96d56Sopenharmony_ci if (ms == -1 && PyErr_Occurred()) { 27847db96d56Sopenharmony_ci goto exit; 27857db96d56Sopenharmony_ci } 27867db96d56Sopenharmony_ci return_value = _curses_set_escdelay_impl(module, ms); 27877db96d56Sopenharmony_ci 27887db96d56Sopenharmony_ciexit: 27897db96d56Sopenharmony_ci return return_value; 27907db96d56Sopenharmony_ci} 27917db96d56Sopenharmony_ci 27927db96d56Sopenharmony_ci#endif /* (defined(NCURSES_EXT_FUNCS) && NCURSES_EXT_FUNCS >= 20081102) */ 27937db96d56Sopenharmony_ci 27947db96d56Sopenharmony_ci#if (defined(NCURSES_EXT_FUNCS) && NCURSES_EXT_FUNCS >= 20081102) 27957db96d56Sopenharmony_ci 27967db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_get_tabsize__doc__, 27977db96d56Sopenharmony_ci"get_tabsize($module, /)\n" 27987db96d56Sopenharmony_ci"--\n" 27997db96d56Sopenharmony_ci"\n" 28007db96d56Sopenharmony_ci"Gets the curses TABSIZE setting.\n" 28017db96d56Sopenharmony_ci"\n" 28027db96d56Sopenharmony_ci"Gets the number of columns used by the curses library when converting a tab\n" 28037db96d56Sopenharmony_ci"character to spaces as it adds the tab to a window."); 28047db96d56Sopenharmony_ci 28057db96d56Sopenharmony_ci#define _CURSES_GET_TABSIZE_METHODDEF \ 28067db96d56Sopenharmony_ci {"get_tabsize", (PyCFunction)_curses_get_tabsize, METH_NOARGS, _curses_get_tabsize__doc__}, 28077db96d56Sopenharmony_ci 28087db96d56Sopenharmony_cistatic PyObject * 28097db96d56Sopenharmony_ci_curses_get_tabsize_impl(PyObject *module); 28107db96d56Sopenharmony_ci 28117db96d56Sopenharmony_cistatic PyObject * 28127db96d56Sopenharmony_ci_curses_get_tabsize(PyObject *module, PyObject *Py_UNUSED(ignored)) 28137db96d56Sopenharmony_ci{ 28147db96d56Sopenharmony_ci return _curses_get_tabsize_impl(module); 28157db96d56Sopenharmony_ci} 28167db96d56Sopenharmony_ci 28177db96d56Sopenharmony_ci#endif /* (defined(NCURSES_EXT_FUNCS) && NCURSES_EXT_FUNCS >= 20081102) */ 28187db96d56Sopenharmony_ci 28197db96d56Sopenharmony_ci#if (defined(NCURSES_EXT_FUNCS) && NCURSES_EXT_FUNCS >= 20081102) 28207db96d56Sopenharmony_ci 28217db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_set_tabsize__doc__, 28227db96d56Sopenharmony_ci"set_tabsize($module, size, /)\n" 28237db96d56Sopenharmony_ci"--\n" 28247db96d56Sopenharmony_ci"\n" 28257db96d56Sopenharmony_ci"Sets the curses TABSIZE setting.\n" 28267db96d56Sopenharmony_ci"\n" 28277db96d56Sopenharmony_ci" size\n" 28287db96d56Sopenharmony_ci" rendered cell width of a tab character.\n" 28297db96d56Sopenharmony_ci"\n" 28307db96d56Sopenharmony_ci"Sets the number of columns used by the curses library when converting a tab\n" 28317db96d56Sopenharmony_ci"character to spaces as it adds the tab to a window."); 28327db96d56Sopenharmony_ci 28337db96d56Sopenharmony_ci#define _CURSES_SET_TABSIZE_METHODDEF \ 28347db96d56Sopenharmony_ci {"set_tabsize", (PyCFunction)_curses_set_tabsize, METH_O, _curses_set_tabsize__doc__}, 28357db96d56Sopenharmony_ci 28367db96d56Sopenharmony_cistatic PyObject * 28377db96d56Sopenharmony_ci_curses_set_tabsize_impl(PyObject *module, int size); 28387db96d56Sopenharmony_ci 28397db96d56Sopenharmony_cistatic PyObject * 28407db96d56Sopenharmony_ci_curses_set_tabsize(PyObject *module, PyObject *arg) 28417db96d56Sopenharmony_ci{ 28427db96d56Sopenharmony_ci PyObject *return_value = NULL; 28437db96d56Sopenharmony_ci int size; 28447db96d56Sopenharmony_ci 28457db96d56Sopenharmony_ci size = _PyLong_AsInt(arg); 28467db96d56Sopenharmony_ci if (size == -1 && PyErr_Occurred()) { 28477db96d56Sopenharmony_ci goto exit; 28487db96d56Sopenharmony_ci } 28497db96d56Sopenharmony_ci return_value = _curses_set_tabsize_impl(module, size); 28507db96d56Sopenharmony_ci 28517db96d56Sopenharmony_ciexit: 28527db96d56Sopenharmony_ci return return_value; 28537db96d56Sopenharmony_ci} 28547db96d56Sopenharmony_ci 28557db96d56Sopenharmony_ci#endif /* (defined(NCURSES_EXT_FUNCS) && NCURSES_EXT_FUNCS >= 20081102) */ 28567db96d56Sopenharmony_ci 28577db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_intrflush__doc__, 28587db96d56Sopenharmony_ci"intrflush($module, flag, /)\n" 28597db96d56Sopenharmony_ci"--\n" 28607db96d56Sopenharmony_ci"\n"); 28617db96d56Sopenharmony_ci 28627db96d56Sopenharmony_ci#define _CURSES_INTRFLUSH_METHODDEF \ 28637db96d56Sopenharmony_ci {"intrflush", (PyCFunction)_curses_intrflush, METH_O, _curses_intrflush__doc__}, 28647db96d56Sopenharmony_ci 28657db96d56Sopenharmony_cistatic PyObject * 28667db96d56Sopenharmony_ci_curses_intrflush_impl(PyObject *module, int flag); 28677db96d56Sopenharmony_ci 28687db96d56Sopenharmony_cistatic PyObject * 28697db96d56Sopenharmony_ci_curses_intrflush(PyObject *module, PyObject *arg) 28707db96d56Sopenharmony_ci{ 28717db96d56Sopenharmony_ci PyObject *return_value = NULL; 28727db96d56Sopenharmony_ci int flag; 28737db96d56Sopenharmony_ci 28747db96d56Sopenharmony_ci flag = _PyLong_AsInt(arg); 28757db96d56Sopenharmony_ci if (flag == -1 && PyErr_Occurred()) { 28767db96d56Sopenharmony_ci goto exit; 28777db96d56Sopenharmony_ci } 28787db96d56Sopenharmony_ci return_value = _curses_intrflush_impl(module, flag); 28797db96d56Sopenharmony_ci 28807db96d56Sopenharmony_ciexit: 28817db96d56Sopenharmony_ci return return_value; 28827db96d56Sopenharmony_ci} 28837db96d56Sopenharmony_ci 28847db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_isendwin__doc__, 28857db96d56Sopenharmony_ci"isendwin($module, /)\n" 28867db96d56Sopenharmony_ci"--\n" 28877db96d56Sopenharmony_ci"\n" 28887db96d56Sopenharmony_ci"Return True if endwin() has been called."); 28897db96d56Sopenharmony_ci 28907db96d56Sopenharmony_ci#define _CURSES_ISENDWIN_METHODDEF \ 28917db96d56Sopenharmony_ci {"isendwin", (PyCFunction)_curses_isendwin, METH_NOARGS, _curses_isendwin__doc__}, 28927db96d56Sopenharmony_ci 28937db96d56Sopenharmony_cistatic PyObject * 28947db96d56Sopenharmony_ci_curses_isendwin_impl(PyObject *module); 28957db96d56Sopenharmony_ci 28967db96d56Sopenharmony_cistatic PyObject * 28977db96d56Sopenharmony_ci_curses_isendwin(PyObject *module, PyObject *Py_UNUSED(ignored)) 28987db96d56Sopenharmony_ci{ 28997db96d56Sopenharmony_ci return _curses_isendwin_impl(module); 29007db96d56Sopenharmony_ci} 29017db96d56Sopenharmony_ci 29027db96d56Sopenharmony_ci#if defined(HAVE_CURSES_IS_TERM_RESIZED) 29037db96d56Sopenharmony_ci 29047db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_is_term_resized__doc__, 29057db96d56Sopenharmony_ci"is_term_resized($module, nlines, ncols, /)\n" 29067db96d56Sopenharmony_ci"--\n" 29077db96d56Sopenharmony_ci"\n" 29087db96d56Sopenharmony_ci"Return True if resize_term() would modify the window structure, False otherwise.\n" 29097db96d56Sopenharmony_ci"\n" 29107db96d56Sopenharmony_ci" nlines\n" 29117db96d56Sopenharmony_ci" Height.\n" 29127db96d56Sopenharmony_ci" ncols\n" 29137db96d56Sopenharmony_ci" Width."); 29147db96d56Sopenharmony_ci 29157db96d56Sopenharmony_ci#define _CURSES_IS_TERM_RESIZED_METHODDEF \ 29167db96d56Sopenharmony_ci {"is_term_resized", _PyCFunction_CAST(_curses_is_term_resized), METH_FASTCALL, _curses_is_term_resized__doc__}, 29177db96d56Sopenharmony_ci 29187db96d56Sopenharmony_cistatic PyObject * 29197db96d56Sopenharmony_ci_curses_is_term_resized_impl(PyObject *module, int nlines, int ncols); 29207db96d56Sopenharmony_ci 29217db96d56Sopenharmony_cistatic PyObject * 29227db96d56Sopenharmony_ci_curses_is_term_resized(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 29237db96d56Sopenharmony_ci{ 29247db96d56Sopenharmony_ci PyObject *return_value = NULL; 29257db96d56Sopenharmony_ci int nlines; 29267db96d56Sopenharmony_ci int ncols; 29277db96d56Sopenharmony_ci 29287db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("is_term_resized", nargs, 2, 2)) { 29297db96d56Sopenharmony_ci goto exit; 29307db96d56Sopenharmony_ci } 29317db96d56Sopenharmony_ci nlines = _PyLong_AsInt(args[0]); 29327db96d56Sopenharmony_ci if (nlines == -1 && PyErr_Occurred()) { 29337db96d56Sopenharmony_ci goto exit; 29347db96d56Sopenharmony_ci } 29357db96d56Sopenharmony_ci ncols = _PyLong_AsInt(args[1]); 29367db96d56Sopenharmony_ci if (ncols == -1 && PyErr_Occurred()) { 29377db96d56Sopenharmony_ci goto exit; 29387db96d56Sopenharmony_ci } 29397db96d56Sopenharmony_ci return_value = _curses_is_term_resized_impl(module, nlines, ncols); 29407db96d56Sopenharmony_ci 29417db96d56Sopenharmony_ciexit: 29427db96d56Sopenharmony_ci return return_value; 29437db96d56Sopenharmony_ci} 29447db96d56Sopenharmony_ci 29457db96d56Sopenharmony_ci#endif /* defined(HAVE_CURSES_IS_TERM_RESIZED) */ 29467db96d56Sopenharmony_ci 29477db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_keyname__doc__, 29487db96d56Sopenharmony_ci"keyname($module, key, /)\n" 29497db96d56Sopenharmony_ci"--\n" 29507db96d56Sopenharmony_ci"\n" 29517db96d56Sopenharmony_ci"Return the name of specified key.\n" 29527db96d56Sopenharmony_ci"\n" 29537db96d56Sopenharmony_ci" key\n" 29547db96d56Sopenharmony_ci" Key number."); 29557db96d56Sopenharmony_ci 29567db96d56Sopenharmony_ci#define _CURSES_KEYNAME_METHODDEF \ 29577db96d56Sopenharmony_ci {"keyname", (PyCFunction)_curses_keyname, METH_O, _curses_keyname__doc__}, 29587db96d56Sopenharmony_ci 29597db96d56Sopenharmony_cistatic PyObject * 29607db96d56Sopenharmony_ci_curses_keyname_impl(PyObject *module, int key); 29617db96d56Sopenharmony_ci 29627db96d56Sopenharmony_cistatic PyObject * 29637db96d56Sopenharmony_ci_curses_keyname(PyObject *module, PyObject *arg) 29647db96d56Sopenharmony_ci{ 29657db96d56Sopenharmony_ci PyObject *return_value = NULL; 29667db96d56Sopenharmony_ci int key; 29677db96d56Sopenharmony_ci 29687db96d56Sopenharmony_ci key = _PyLong_AsInt(arg); 29697db96d56Sopenharmony_ci if (key == -1 && PyErr_Occurred()) { 29707db96d56Sopenharmony_ci goto exit; 29717db96d56Sopenharmony_ci } 29727db96d56Sopenharmony_ci return_value = _curses_keyname_impl(module, key); 29737db96d56Sopenharmony_ci 29747db96d56Sopenharmony_ciexit: 29757db96d56Sopenharmony_ci return return_value; 29767db96d56Sopenharmony_ci} 29777db96d56Sopenharmony_ci 29787db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_killchar__doc__, 29797db96d56Sopenharmony_ci"killchar($module, /)\n" 29807db96d56Sopenharmony_ci"--\n" 29817db96d56Sopenharmony_ci"\n" 29827db96d56Sopenharmony_ci"Return the user\'s current line kill character."); 29837db96d56Sopenharmony_ci 29847db96d56Sopenharmony_ci#define _CURSES_KILLCHAR_METHODDEF \ 29857db96d56Sopenharmony_ci {"killchar", (PyCFunction)_curses_killchar, METH_NOARGS, _curses_killchar__doc__}, 29867db96d56Sopenharmony_ci 29877db96d56Sopenharmony_cistatic PyObject * 29887db96d56Sopenharmony_ci_curses_killchar_impl(PyObject *module); 29897db96d56Sopenharmony_ci 29907db96d56Sopenharmony_cistatic PyObject * 29917db96d56Sopenharmony_ci_curses_killchar(PyObject *module, PyObject *Py_UNUSED(ignored)) 29927db96d56Sopenharmony_ci{ 29937db96d56Sopenharmony_ci return _curses_killchar_impl(module); 29947db96d56Sopenharmony_ci} 29957db96d56Sopenharmony_ci 29967db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_longname__doc__, 29977db96d56Sopenharmony_ci"longname($module, /)\n" 29987db96d56Sopenharmony_ci"--\n" 29997db96d56Sopenharmony_ci"\n" 30007db96d56Sopenharmony_ci"Return the terminfo long name field describing the current terminal.\n" 30017db96d56Sopenharmony_ci"\n" 30027db96d56Sopenharmony_ci"The maximum length of a verbose description is 128 characters. It is defined\n" 30037db96d56Sopenharmony_ci"only after the call to initscr()."); 30047db96d56Sopenharmony_ci 30057db96d56Sopenharmony_ci#define _CURSES_LONGNAME_METHODDEF \ 30067db96d56Sopenharmony_ci {"longname", (PyCFunction)_curses_longname, METH_NOARGS, _curses_longname__doc__}, 30077db96d56Sopenharmony_ci 30087db96d56Sopenharmony_cistatic PyObject * 30097db96d56Sopenharmony_ci_curses_longname_impl(PyObject *module); 30107db96d56Sopenharmony_ci 30117db96d56Sopenharmony_cistatic PyObject * 30127db96d56Sopenharmony_ci_curses_longname(PyObject *module, PyObject *Py_UNUSED(ignored)) 30137db96d56Sopenharmony_ci{ 30147db96d56Sopenharmony_ci return _curses_longname_impl(module); 30157db96d56Sopenharmony_ci} 30167db96d56Sopenharmony_ci 30177db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_meta__doc__, 30187db96d56Sopenharmony_ci"meta($module, yes, /)\n" 30197db96d56Sopenharmony_ci"--\n" 30207db96d56Sopenharmony_ci"\n" 30217db96d56Sopenharmony_ci"Enable/disable meta keys.\n" 30227db96d56Sopenharmony_ci"\n" 30237db96d56Sopenharmony_ci"If yes is True, allow 8-bit characters to be input. If yes is False,\n" 30247db96d56Sopenharmony_ci"allow only 7-bit characters."); 30257db96d56Sopenharmony_ci 30267db96d56Sopenharmony_ci#define _CURSES_META_METHODDEF \ 30277db96d56Sopenharmony_ci {"meta", (PyCFunction)_curses_meta, METH_O, _curses_meta__doc__}, 30287db96d56Sopenharmony_ci 30297db96d56Sopenharmony_cistatic PyObject * 30307db96d56Sopenharmony_ci_curses_meta_impl(PyObject *module, int yes); 30317db96d56Sopenharmony_ci 30327db96d56Sopenharmony_cistatic PyObject * 30337db96d56Sopenharmony_ci_curses_meta(PyObject *module, PyObject *arg) 30347db96d56Sopenharmony_ci{ 30357db96d56Sopenharmony_ci PyObject *return_value = NULL; 30367db96d56Sopenharmony_ci int yes; 30377db96d56Sopenharmony_ci 30387db96d56Sopenharmony_ci yes = _PyLong_AsInt(arg); 30397db96d56Sopenharmony_ci if (yes == -1 && PyErr_Occurred()) { 30407db96d56Sopenharmony_ci goto exit; 30417db96d56Sopenharmony_ci } 30427db96d56Sopenharmony_ci return_value = _curses_meta_impl(module, yes); 30437db96d56Sopenharmony_ci 30447db96d56Sopenharmony_ciexit: 30457db96d56Sopenharmony_ci return return_value; 30467db96d56Sopenharmony_ci} 30477db96d56Sopenharmony_ci 30487db96d56Sopenharmony_ci#if defined(NCURSES_MOUSE_VERSION) 30497db96d56Sopenharmony_ci 30507db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_mouseinterval__doc__, 30517db96d56Sopenharmony_ci"mouseinterval($module, interval, /)\n" 30527db96d56Sopenharmony_ci"--\n" 30537db96d56Sopenharmony_ci"\n" 30547db96d56Sopenharmony_ci"Set and retrieve the maximum time between press and release in a click.\n" 30557db96d56Sopenharmony_ci"\n" 30567db96d56Sopenharmony_ci" interval\n" 30577db96d56Sopenharmony_ci" Time in milliseconds.\n" 30587db96d56Sopenharmony_ci"\n" 30597db96d56Sopenharmony_ci"Set the maximum time that can elapse between press and release events in\n" 30607db96d56Sopenharmony_ci"order for them to be recognized as a click, and return the previous interval\n" 30617db96d56Sopenharmony_ci"value."); 30627db96d56Sopenharmony_ci 30637db96d56Sopenharmony_ci#define _CURSES_MOUSEINTERVAL_METHODDEF \ 30647db96d56Sopenharmony_ci {"mouseinterval", (PyCFunction)_curses_mouseinterval, METH_O, _curses_mouseinterval__doc__}, 30657db96d56Sopenharmony_ci 30667db96d56Sopenharmony_cistatic PyObject * 30677db96d56Sopenharmony_ci_curses_mouseinterval_impl(PyObject *module, int interval); 30687db96d56Sopenharmony_ci 30697db96d56Sopenharmony_cistatic PyObject * 30707db96d56Sopenharmony_ci_curses_mouseinterval(PyObject *module, PyObject *arg) 30717db96d56Sopenharmony_ci{ 30727db96d56Sopenharmony_ci PyObject *return_value = NULL; 30737db96d56Sopenharmony_ci int interval; 30747db96d56Sopenharmony_ci 30757db96d56Sopenharmony_ci interval = _PyLong_AsInt(arg); 30767db96d56Sopenharmony_ci if (interval == -1 && PyErr_Occurred()) { 30777db96d56Sopenharmony_ci goto exit; 30787db96d56Sopenharmony_ci } 30797db96d56Sopenharmony_ci return_value = _curses_mouseinterval_impl(module, interval); 30807db96d56Sopenharmony_ci 30817db96d56Sopenharmony_ciexit: 30827db96d56Sopenharmony_ci return return_value; 30837db96d56Sopenharmony_ci} 30847db96d56Sopenharmony_ci 30857db96d56Sopenharmony_ci#endif /* defined(NCURSES_MOUSE_VERSION) */ 30867db96d56Sopenharmony_ci 30877db96d56Sopenharmony_ci#if defined(NCURSES_MOUSE_VERSION) 30887db96d56Sopenharmony_ci 30897db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_mousemask__doc__, 30907db96d56Sopenharmony_ci"mousemask($module, newmask, /)\n" 30917db96d56Sopenharmony_ci"--\n" 30927db96d56Sopenharmony_ci"\n" 30937db96d56Sopenharmony_ci"Set the mouse events to be reported, and return a tuple (availmask, oldmask).\n" 30947db96d56Sopenharmony_ci"\n" 30957db96d56Sopenharmony_ci"Return a tuple (availmask, oldmask). availmask indicates which of the\n" 30967db96d56Sopenharmony_ci"specified mouse events can be reported; on complete failure it returns 0.\n" 30977db96d56Sopenharmony_ci"oldmask is the previous value of the given window\'s mouse event mask.\n" 30987db96d56Sopenharmony_ci"If this function is never called, no mouse events are ever reported."); 30997db96d56Sopenharmony_ci 31007db96d56Sopenharmony_ci#define _CURSES_MOUSEMASK_METHODDEF \ 31017db96d56Sopenharmony_ci {"mousemask", (PyCFunction)_curses_mousemask, METH_O, _curses_mousemask__doc__}, 31027db96d56Sopenharmony_ci 31037db96d56Sopenharmony_cistatic PyObject * 31047db96d56Sopenharmony_ci_curses_mousemask_impl(PyObject *module, unsigned long newmask); 31057db96d56Sopenharmony_ci 31067db96d56Sopenharmony_cistatic PyObject * 31077db96d56Sopenharmony_ci_curses_mousemask(PyObject *module, PyObject *arg) 31087db96d56Sopenharmony_ci{ 31097db96d56Sopenharmony_ci PyObject *return_value = NULL; 31107db96d56Sopenharmony_ci unsigned long newmask; 31117db96d56Sopenharmony_ci 31127db96d56Sopenharmony_ci if (!PyLong_Check(arg)) { 31137db96d56Sopenharmony_ci _PyArg_BadArgument("mousemask", "argument", "int", arg); 31147db96d56Sopenharmony_ci goto exit; 31157db96d56Sopenharmony_ci } 31167db96d56Sopenharmony_ci newmask = PyLong_AsUnsignedLongMask(arg); 31177db96d56Sopenharmony_ci return_value = _curses_mousemask_impl(module, newmask); 31187db96d56Sopenharmony_ci 31197db96d56Sopenharmony_ciexit: 31207db96d56Sopenharmony_ci return return_value; 31217db96d56Sopenharmony_ci} 31227db96d56Sopenharmony_ci 31237db96d56Sopenharmony_ci#endif /* defined(NCURSES_MOUSE_VERSION) */ 31247db96d56Sopenharmony_ci 31257db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_napms__doc__, 31267db96d56Sopenharmony_ci"napms($module, ms, /)\n" 31277db96d56Sopenharmony_ci"--\n" 31287db96d56Sopenharmony_ci"\n" 31297db96d56Sopenharmony_ci"Sleep for specified time.\n" 31307db96d56Sopenharmony_ci"\n" 31317db96d56Sopenharmony_ci" ms\n" 31327db96d56Sopenharmony_ci" Duration in milliseconds."); 31337db96d56Sopenharmony_ci 31347db96d56Sopenharmony_ci#define _CURSES_NAPMS_METHODDEF \ 31357db96d56Sopenharmony_ci {"napms", (PyCFunction)_curses_napms, METH_O, _curses_napms__doc__}, 31367db96d56Sopenharmony_ci 31377db96d56Sopenharmony_cistatic PyObject * 31387db96d56Sopenharmony_ci_curses_napms_impl(PyObject *module, int ms); 31397db96d56Sopenharmony_ci 31407db96d56Sopenharmony_cistatic PyObject * 31417db96d56Sopenharmony_ci_curses_napms(PyObject *module, PyObject *arg) 31427db96d56Sopenharmony_ci{ 31437db96d56Sopenharmony_ci PyObject *return_value = NULL; 31447db96d56Sopenharmony_ci int ms; 31457db96d56Sopenharmony_ci 31467db96d56Sopenharmony_ci ms = _PyLong_AsInt(arg); 31477db96d56Sopenharmony_ci if (ms == -1 && PyErr_Occurred()) { 31487db96d56Sopenharmony_ci goto exit; 31497db96d56Sopenharmony_ci } 31507db96d56Sopenharmony_ci return_value = _curses_napms_impl(module, ms); 31517db96d56Sopenharmony_ci 31527db96d56Sopenharmony_ciexit: 31537db96d56Sopenharmony_ci return return_value; 31547db96d56Sopenharmony_ci} 31557db96d56Sopenharmony_ci 31567db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_newpad__doc__, 31577db96d56Sopenharmony_ci"newpad($module, nlines, ncols, /)\n" 31587db96d56Sopenharmony_ci"--\n" 31597db96d56Sopenharmony_ci"\n" 31607db96d56Sopenharmony_ci"Create and return a pointer to a new pad data structure.\n" 31617db96d56Sopenharmony_ci"\n" 31627db96d56Sopenharmony_ci" nlines\n" 31637db96d56Sopenharmony_ci" Height.\n" 31647db96d56Sopenharmony_ci" ncols\n" 31657db96d56Sopenharmony_ci" Width."); 31667db96d56Sopenharmony_ci 31677db96d56Sopenharmony_ci#define _CURSES_NEWPAD_METHODDEF \ 31687db96d56Sopenharmony_ci {"newpad", _PyCFunction_CAST(_curses_newpad), METH_FASTCALL, _curses_newpad__doc__}, 31697db96d56Sopenharmony_ci 31707db96d56Sopenharmony_cistatic PyObject * 31717db96d56Sopenharmony_ci_curses_newpad_impl(PyObject *module, int nlines, int ncols); 31727db96d56Sopenharmony_ci 31737db96d56Sopenharmony_cistatic PyObject * 31747db96d56Sopenharmony_ci_curses_newpad(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 31757db96d56Sopenharmony_ci{ 31767db96d56Sopenharmony_ci PyObject *return_value = NULL; 31777db96d56Sopenharmony_ci int nlines; 31787db96d56Sopenharmony_ci int ncols; 31797db96d56Sopenharmony_ci 31807db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("newpad", nargs, 2, 2)) { 31817db96d56Sopenharmony_ci goto exit; 31827db96d56Sopenharmony_ci } 31837db96d56Sopenharmony_ci nlines = _PyLong_AsInt(args[0]); 31847db96d56Sopenharmony_ci if (nlines == -1 && PyErr_Occurred()) { 31857db96d56Sopenharmony_ci goto exit; 31867db96d56Sopenharmony_ci } 31877db96d56Sopenharmony_ci ncols = _PyLong_AsInt(args[1]); 31887db96d56Sopenharmony_ci if (ncols == -1 && PyErr_Occurred()) { 31897db96d56Sopenharmony_ci goto exit; 31907db96d56Sopenharmony_ci } 31917db96d56Sopenharmony_ci return_value = _curses_newpad_impl(module, nlines, ncols); 31927db96d56Sopenharmony_ci 31937db96d56Sopenharmony_ciexit: 31947db96d56Sopenharmony_ci return return_value; 31957db96d56Sopenharmony_ci} 31967db96d56Sopenharmony_ci 31977db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_newwin__doc__, 31987db96d56Sopenharmony_ci"newwin(nlines, ncols, [begin_y=0, begin_x=0])\n" 31997db96d56Sopenharmony_ci"Return a new window.\n" 32007db96d56Sopenharmony_ci"\n" 32017db96d56Sopenharmony_ci" nlines\n" 32027db96d56Sopenharmony_ci" Height.\n" 32037db96d56Sopenharmony_ci" ncols\n" 32047db96d56Sopenharmony_ci" Width.\n" 32057db96d56Sopenharmony_ci" begin_y\n" 32067db96d56Sopenharmony_ci" Top side y-coordinate.\n" 32077db96d56Sopenharmony_ci" begin_x\n" 32087db96d56Sopenharmony_ci" Left side x-coordinate.\n" 32097db96d56Sopenharmony_ci"\n" 32107db96d56Sopenharmony_ci"By default, the window will extend from the specified position to the lower\n" 32117db96d56Sopenharmony_ci"right corner of the screen."); 32127db96d56Sopenharmony_ci 32137db96d56Sopenharmony_ci#define _CURSES_NEWWIN_METHODDEF \ 32147db96d56Sopenharmony_ci {"newwin", (PyCFunction)_curses_newwin, METH_VARARGS, _curses_newwin__doc__}, 32157db96d56Sopenharmony_ci 32167db96d56Sopenharmony_cistatic PyObject * 32177db96d56Sopenharmony_ci_curses_newwin_impl(PyObject *module, int nlines, int ncols, 32187db96d56Sopenharmony_ci int group_right_1, int begin_y, int begin_x); 32197db96d56Sopenharmony_ci 32207db96d56Sopenharmony_cistatic PyObject * 32217db96d56Sopenharmony_ci_curses_newwin(PyObject *module, PyObject *args) 32227db96d56Sopenharmony_ci{ 32237db96d56Sopenharmony_ci PyObject *return_value = NULL; 32247db96d56Sopenharmony_ci int nlines; 32257db96d56Sopenharmony_ci int ncols; 32267db96d56Sopenharmony_ci int group_right_1 = 0; 32277db96d56Sopenharmony_ci int begin_y = 0; 32287db96d56Sopenharmony_ci int begin_x = 0; 32297db96d56Sopenharmony_ci 32307db96d56Sopenharmony_ci switch (PyTuple_GET_SIZE(args)) { 32317db96d56Sopenharmony_ci case 2: 32327db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "ii:newwin", &nlines, &ncols)) { 32337db96d56Sopenharmony_ci goto exit; 32347db96d56Sopenharmony_ci } 32357db96d56Sopenharmony_ci break; 32367db96d56Sopenharmony_ci case 4: 32377db96d56Sopenharmony_ci if (!PyArg_ParseTuple(args, "iiii:newwin", &nlines, &ncols, &begin_y, &begin_x)) { 32387db96d56Sopenharmony_ci goto exit; 32397db96d56Sopenharmony_ci } 32407db96d56Sopenharmony_ci group_right_1 = 1; 32417db96d56Sopenharmony_ci break; 32427db96d56Sopenharmony_ci default: 32437db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "_curses.newwin requires 2 to 4 arguments"); 32447db96d56Sopenharmony_ci goto exit; 32457db96d56Sopenharmony_ci } 32467db96d56Sopenharmony_ci return_value = _curses_newwin_impl(module, nlines, ncols, group_right_1, begin_y, begin_x); 32477db96d56Sopenharmony_ci 32487db96d56Sopenharmony_ciexit: 32497db96d56Sopenharmony_ci return return_value; 32507db96d56Sopenharmony_ci} 32517db96d56Sopenharmony_ci 32527db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_nl__doc__, 32537db96d56Sopenharmony_ci"nl($module, flag=True, /)\n" 32547db96d56Sopenharmony_ci"--\n" 32557db96d56Sopenharmony_ci"\n" 32567db96d56Sopenharmony_ci"Enter newline mode.\n" 32577db96d56Sopenharmony_ci"\n" 32587db96d56Sopenharmony_ci" flag\n" 32597db96d56Sopenharmony_ci" If false, the effect is the same as calling nonl().\n" 32607db96d56Sopenharmony_ci"\n" 32617db96d56Sopenharmony_ci"This mode translates the return key into newline on input, and translates\n" 32627db96d56Sopenharmony_ci"newline into return and line-feed on output. Newline mode is initially on."); 32637db96d56Sopenharmony_ci 32647db96d56Sopenharmony_ci#define _CURSES_NL_METHODDEF \ 32657db96d56Sopenharmony_ci {"nl", _PyCFunction_CAST(_curses_nl), METH_FASTCALL, _curses_nl__doc__}, 32667db96d56Sopenharmony_ci 32677db96d56Sopenharmony_cistatic PyObject * 32687db96d56Sopenharmony_ci_curses_nl_impl(PyObject *module, int flag); 32697db96d56Sopenharmony_ci 32707db96d56Sopenharmony_cistatic PyObject * 32717db96d56Sopenharmony_ci_curses_nl(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 32727db96d56Sopenharmony_ci{ 32737db96d56Sopenharmony_ci PyObject *return_value = NULL; 32747db96d56Sopenharmony_ci int flag = 1; 32757db96d56Sopenharmony_ci 32767db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("nl", nargs, 0, 1)) { 32777db96d56Sopenharmony_ci goto exit; 32787db96d56Sopenharmony_ci } 32797db96d56Sopenharmony_ci if (nargs < 1) { 32807db96d56Sopenharmony_ci goto skip_optional; 32817db96d56Sopenharmony_ci } 32827db96d56Sopenharmony_ci flag = _PyLong_AsInt(args[0]); 32837db96d56Sopenharmony_ci if (flag == -1 && PyErr_Occurred()) { 32847db96d56Sopenharmony_ci goto exit; 32857db96d56Sopenharmony_ci } 32867db96d56Sopenharmony_ciskip_optional: 32877db96d56Sopenharmony_ci return_value = _curses_nl_impl(module, flag); 32887db96d56Sopenharmony_ci 32897db96d56Sopenharmony_ciexit: 32907db96d56Sopenharmony_ci return return_value; 32917db96d56Sopenharmony_ci} 32927db96d56Sopenharmony_ci 32937db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_nocbreak__doc__, 32947db96d56Sopenharmony_ci"nocbreak($module, /)\n" 32957db96d56Sopenharmony_ci"--\n" 32967db96d56Sopenharmony_ci"\n" 32977db96d56Sopenharmony_ci"Leave cbreak mode.\n" 32987db96d56Sopenharmony_ci"\n" 32997db96d56Sopenharmony_ci"Return to normal \"cooked\" mode with line buffering."); 33007db96d56Sopenharmony_ci 33017db96d56Sopenharmony_ci#define _CURSES_NOCBREAK_METHODDEF \ 33027db96d56Sopenharmony_ci {"nocbreak", (PyCFunction)_curses_nocbreak, METH_NOARGS, _curses_nocbreak__doc__}, 33037db96d56Sopenharmony_ci 33047db96d56Sopenharmony_cistatic PyObject * 33057db96d56Sopenharmony_ci_curses_nocbreak_impl(PyObject *module); 33067db96d56Sopenharmony_ci 33077db96d56Sopenharmony_cistatic PyObject * 33087db96d56Sopenharmony_ci_curses_nocbreak(PyObject *module, PyObject *Py_UNUSED(ignored)) 33097db96d56Sopenharmony_ci{ 33107db96d56Sopenharmony_ci return _curses_nocbreak_impl(module); 33117db96d56Sopenharmony_ci} 33127db96d56Sopenharmony_ci 33137db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_noecho__doc__, 33147db96d56Sopenharmony_ci"noecho($module, /)\n" 33157db96d56Sopenharmony_ci"--\n" 33167db96d56Sopenharmony_ci"\n" 33177db96d56Sopenharmony_ci"Leave echo mode.\n" 33187db96d56Sopenharmony_ci"\n" 33197db96d56Sopenharmony_ci"Echoing of input characters is turned off."); 33207db96d56Sopenharmony_ci 33217db96d56Sopenharmony_ci#define _CURSES_NOECHO_METHODDEF \ 33227db96d56Sopenharmony_ci {"noecho", (PyCFunction)_curses_noecho, METH_NOARGS, _curses_noecho__doc__}, 33237db96d56Sopenharmony_ci 33247db96d56Sopenharmony_cistatic PyObject * 33257db96d56Sopenharmony_ci_curses_noecho_impl(PyObject *module); 33267db96d56Sopenharmony_ci 33277db96d56Sopenharmony_cistatic PyObject * 33287db96d56Sopenharmony_ci_curses_noecho(PyObject *module, PyObject *Py_UNUSED(ignored)) 33297db96d56Sopenharmony_ci{ 33307db96d56Sopenharmony_ci return _curses_noecho_impl(module); 33317db96d56Sopenharmony_ci} 33327db96d56Sopenharmony_ci 33337db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_nonl__doc__, 33347db96d56Sopenharmony_ci"nonl($module, /)\n" 33357db96d56Sopenharmony_ci"--\n" 33367db96d56Sopenharmony_ci"\n" 33377db96d56Sopenharmony_ci"Leave newline mode.\n" 33387db96d56Sopenharmony_ci"\n" 33397db96d56Sopenharmony_ci"Disable translation of return into newline on input, and disable low-level\n" 33407db96d56Sopenharmony_ci"translation of newline into newline/return on output."); 33417db96d56Sopenharmony_ci 33427db96d56Sopenharmony_ci#define _CURSES_NONL_METHODDEF \ 33437db96d56Sopenharmony_ci {"nonl", (PyCFunction)_curses_nonl, METH_NOARGS, _curses_nonl__doc__}, 33447db96d56Sopenharmony_ci 33457db96d56Sopenharmony_cistatic PyObject * 33467db96d56Sopenharmony_ci_curses_nonl_impl(PyObject *module); 33477db96d56Sopenharmony_ci 33487db96d56Sopenharmony_cistatic PyObject * 33497db96d56Sopenharmony_ci_curses_nonl(PyObject *module, PyObject *Py_UNUSED(ignored)) 33507db96d56Sopenharmony_ci{ 33517db96d56Sopenharmony_ci return _curses_nonl_impl(module); 33527db96d56Sopenharmony_ci} 33537db96d56Sopenharmony_ci 33547db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_noqiflush__doc__, 33557db96d56Sopenharmony_ci"noqiflush($module, /)\n" 33567db96d56Sopenharmony_ci"--\n" 33577db96d56Sopenharmony_ci"\n" 33587db96d56Sopenharmony_ci"Disable queue flushing.\n" 33597db96d56Sopenharmony_ci"\n" 33607db96d56Sopenharmony_ci"When queue flushing is disabled, normal flush of input and output queues\n" 33617db96d56Sopenharmony_ci"associated with the INTR, QUIT and SUSP characters will not be done."); 33627db96d56Sopenharmony_ci 33637db96d56Sopenharmony_ci#define _CURSES_NOQIFLUSH_METHODDEF \ 33647db96d56Sopenharmony_ci {"noqiflush", (PyCFunction)_curses_noqiflush, METH_NOARGS, _curses_noqiflush__doc__}, 33657db96d56Sopenharmony_ci 33667db96d56Sopenharmony_cistatic PyObject * 33677db96d56Sopenharmony_ci_curses_noqiflush_impl(PyObject *module); 33687db96d56Sopenharmony_ci 33697db96d56Sopenharmony_cistatic PyObject * 33707db96d56Sopenharmony_ci_curses_noqiflush(PyObject *module, PyObject *Py_UNUSED(ignored)) 33717db96d56Sopenharmony_ci{ 33727db96d56Sopenharmony_ci return _curses_noqiflush_impl(module); 33737db96d56Sopenharmony_ci} 33747db96d56Sopenharmony_ci 33757db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_noraw__doc__, 33767db96d56Sopenharmony_ci"noraw($module, /)\n" 33777db96d56Sopenharmony_ci"--\n" 33787db96d56Sopenharmony_ci"\n" 33797db96d56Sopenharmony_ci"Leave raw mode.\n" 33807db96d56Sopenharmony_ci"\n" 33817db96d56Sopenharmony_ci"Return to normal \"cooked\" mode with line buffering."); 33827db96d56Sopenharmony_ci 33837db96d56Sopenharmony_ci#define _CURSES_NORAW_METHODDEF \ 33847db96d56Sopenharmony_ci {"noraw", (PyCFunction)_curses_noraw, METH_NOARGS, _curses_noraw__doc__}, 33857db96d56Sopenharmony_ci 33867db96d56Sopenharmony_cistatic PyObject * 33877db96d56Sopenharmony_ci_curses_noraw_impl(PyObject *module); 33887db96d56Sopenharmony_ci 33897db96d56Sopenharmony_cistatic PyObject * 33907db96d56Sopenharmony_ci_curses_noraw(PyObject *module, PyObject *Py_UNUSED(ignored)) 33917db96d56Sopenharmony_ci{ 33927db96d56Sopenharmony_ci return _curses_noraw_impl(module); 33937db96d56Sopenharmony_ci} 33947db96d56Sopenharmony_ci 33957db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_pair_content__doc__, 33967db96d56Sopenharmony_ci"pair_content($module, pair_number, /)\n" 33977db96d56Sopenharmony_ci"--\n" 33987db96d56Sopenharmony_ci"\n" 33997db96d56Sopenharmony_ci"Return a tuple (fg, bg) containing the colors for the requested color pair.\n" 34007db96d56Sopenharmony_ci"\n" 34017db96d56Sopenharmony_ci" pair_number\n" 34027db96d56Sopenharmony_ci" The number of the color pair (0 - (COLOR_PAIRS-1))."); 34037db96d56Sopenharmony_ci 34047db96d56Sopenharmony_ci#define _CURSES_PAIR_CONTENT_METHODDEF \ 34057db96d56Sopenharmony_ci {"pair_content", (PyCFunction)_curses_pair_content, METH_O, _curses_pair_content__doc__}, 34067db96d56Sopenharmony_ci 34077db96d56Sopenharmony_cistatic PyObject * 34087db96d56Sopenharmony_ci_curses_pair_content_impl(PyObject *module, int pair_number); 34097db96d56Sopenharmony_ci 34107db96d56Sopenharmony_cistatic PyObject * 34117db96d56Sopenharmony_ci_curses_pair_content(PyObject *module, PyObject *arg) 34127db96d56Sopenharmony_ci{ 34137db96d56Sopenharmony_ci PyObject *return_value = NULL; 34147db96d56Sopenharmony_ci int pair_number; 34157db96d56Sopenharmony_ci 34167db96d56Sopenharmony_ci if (!pair_converter(arg, &pair_number)) { 34177db96d56Sopenharmony_ci goto exit; 34187db96d56Sopenharmony_ci } 34197db96d56Sopenharmony_ci return_value = _curses_pair_content_impl(module, pair_number); 34207db96d56Sopenharmony_ci 34217db96d56Sopenharmony_ciexit: 34227db96d56Sopenharmony_ci return return_value; 34237db96d56Sopenharmony_ci} 34247db96d56Sopenharmony_ci 34257db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_pair_number__doc__, 34267db96d56Sopenharmony_ci"pair_number($module, attr, /)\n" 34277db96d56Sopenharmony_ci"--\n" 34287db96d56Sopenharmony_ci"\n" 34297db96d56Sopenharmony_ci"Return the number of the color-pair set by the specified attribute value.\n" 34307db96d56Sopenharmony_ci"\n" 34317db96d56Sopenharmony_ci"color_pair() is the counterpart to this function."); 34327db96d56Sopenharmony_ci 34337db96d56Sopenharmony_ci#define _CURSES_PAIR_NUMBER_METHODDEF \ 34347db96d56Sopenharmony_ci {"pair_number", (PyCFunction)_curses_pair_number, METH_O, _curses_pair_number__doc__}, 34357db96d56Sopenharmony_ci 34367db96d56Sopenharmony_cistatic PyObject * 34377db96d56Sopenharmony_ci_curses_pair_number_impl(PyObject *module, int attr); 34387db96d56Sopenharmony_ci 34397db96d56Sopenharmony_cistatic PyObject * 34407db96d56Sopenharmony_ci_curses_pair_number(PyObject *module, PyObject *arg) 34417db96d56Sopenharmony_ci{ 34427db96d56Sopenharmony_ci PyObject *return_value = NULL; 34437db96d56Sopenharmony_ci int attr; 34447db96d56Sopenharmony_ci 34457db96d56Sopenharmony_ci attr = _PyLong_AsInt(arg); 34467db96d56Sopenharmony_ci if (attr == -1 && PyErr_Occurred()) { 34477db96d56Sopenharmony_ci goto exit; 34487db96d56Sopenharmony_ci } 34497db96d56Sopenharmony_ci return_value = _curses_pair_number_impl(module, attr); 34507db96d56Sopenharmony_ci 34517db96d56Sopenharmony_ciexit: 34527db96d56Sopenharmony_ci return return_value; 34537db96d56Sopenharmony_ci} 34547db96d56Sopenharmony_ci 34557db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_putp__doc__, 34567db96d56Sopenharmony_ci"putp($module, string, /)\n" 34577db96d56Sopenharmony_ci"--\n" 34587db96d56Sopenharmony_ci"\n" 34597db96d56Sopenharmony_ci"Emit the value of a specified terminfo capability for the current terminal.\n" 34607db96d56Sopenharmony_ci"\n" 34617db96d56Sopenharmony_ci"Note that the output of putp() always goes to standard output."); 34627db96d56Sopenharmony_ci 34637db96d56Sopenharmony_ci#define _CURSES_PUTP_METHODDEF \ 34647db96d56Sopenharmony_ci {"putp", (PyCFunction)_curses_putp, METH_O, _curses_putp__doc__}, 34657db96d56Sopenharmony_ci 34667db96d56Sopenharmony_cistatic PyObject * 34677db96d56Sopenharmony_ci_curses_putp_impl(PyObject *module, const char *string); 34687db96d56Sopenharmony_ci 34697db96d56Sopenharmony_cistatic PyObject * 34707db96d56Sopenharmony_ci_curses_putp(PyObject *module, PyObject *arg) 34717db96d56Sopenharmony_ci{ 34727db96d56Sopenharmony_ci PyObject *return_value = NULL; 34737db96d56Sopenharmony_ci const char *string; 34747db96d56Sopenharmony_ci 34757db96d56Sopenharmony_ci if (!PyArg_Parse(arg, "y:putp", &string)) { 34767db96d56Sopenharmony_ci goto exit; 34777db96d56Sopenharmony_ci } 34787db96d56Sopenharmony_ci return_value = _curses_putp_impl(module, string); 34797db96d56Sopenharmony_ci 34807db96d56Sopenharmony_ciexit: 34817db96d56Sopenharmony_ci return return_value; 34827db96d56Sopenharmony_ci} 34837db96d56Sopenharmony_ci 34847db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_qiflush__doc__, 34857db96d56Sopenharmony_ci"qiflush($module, flag=True, /)\n" 34867db96d56Sopenharmony_ci"--\n" 34877db96d56Sopenharmony_ci"\n" 34887db96d56Sopenharmony_ci"Enable queue flushing.\n" 34897db96d56Sopenharmony_ci"\n" 34907db96d56Sopenharmony_ci" flag\n" 34917db96d56Sopenharmony_ci" If false, the effect is the same as calling noqiflush().\n" 34927db96d56Sopenharmony_ci"\n" 34937db96d56Sopenharmony_ci"If queue flushing is enabled, all output in the display driver queue\n" 34947db96d56Sopenharmony_ci"will be flushed when the INTR, QUIT and SUSP characters are read."); 34957db96d56Sopenharmony_ci 34967db96d56Sopenharmony_ci#define _CURSES_QIFLUSH_METHODDEF \ 34977db96d56Sopenharmony_ci {"qiflush", _PyCFunction_CAST(_curses_qiflush), METH_FASTCALL, _curses_qiflush__doc__}, 34987db96d56Sopenharmony_ci 34997db96d56Sopenharmony_cistatic PyObject * 35007db96d56Sopenharmony_ci_curses_qiflush_impl(PyObject *module, int flag); 35017db96d56Sopenharmony_ci 35027db96d56Sopenharmony_cistatic PyObject * 35037db96d56Sopenharmony_ci_curses_qiflush(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 35047db96d56Sopenharmony_ci{ 35057db96d56Sopenharmony_ci PyObject *return_value = NULL; 35067db96d56Sopenharmony_ci int flag = 1; 35077db96d56Sopenharmony_ci 35087db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("qiflush", nargs, 0, 1)) { 35097db96d56Sopenharmony_ci goto exit; 35107db96d56Sopenharmony_ci } 35117db96d56Sopenharmony_ci if (nargs < 1) { 35127db96d56Sopenharmony_ci goto skip_optional; 35137db96d56Sopenharmony_ci } 35147db96d56Sopenharmony_ci flag = _PyLong_AsInt(args[0]); 35157db96d56Sopenharmony_ci if (flag == -1 && PyErr_Occurred()) { 35167db96d56Sopenharmony_ci goto exit; 35177db96d56Sopenharmony_ci } 35187db96d56Sopenharmony_ciskip_optional: 35197db96d56Sopenharmony_ci return_value = _curses_qiflush_impl(module, flag); 35207db96d56Sopenharmony_ci 35217db96d56Sopenharmony_ciexit: 35227db96d56Sopenharmony_ci return return_value; 35237db96d56Sopenharmony_ci} 35247db96d56Sopenharmony_ci 35257db96d56Sopenharmony_ci#if (defined(HAVE_CURSES_RESIZETERM) || defined(HAVE_CURSES_RESIZE_TERM)) 35267db96d56Sopenharmony_ci 35277db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_update_lines_cols__doc__, 35287db96d56Sopenharmony_ci"update_lines_cols($module, /)\n" 35297db96d56Sopenharmony_ci"--\n" 35307db96d56Sopenharmony_ci"\n"); 35317db96d56Sopenharmony_ci 35327db96d56Sopenharmony_ci#define _CURSES_UPDATE_LINES_COLS_METHODDEF \ 35337db96d56Sopenharmony_ci {"update_lines_cols", (PyCFunction)_curses_update_lines_cols, METH_NOARGS, _curses_update_lines_cols__doc__}, 35347db96d56Sopenharmony_ci 35357db96d56Sopenharmony_cistatic PyObject * 35367db96d56Sopenharmony_ci_curses_update_lines_cols_impl(PyObject *module); 35377db96d56Sopenharmony_ci 35387db96d56Sopenharmony_cistatic PyObject * 35397db96d56Sopenharmony_ci_curses_update_lines_cols(PyObject *module, PyObject *Py_UNUSED(ignored)) 35407db96d56Sopenharmony_ci{ 35417db96d56Sopenharmony_ci return _curses_update_lines_cols_impl(module); 35427db96d56Sopenharmony_ci} 35437db96d56Sopenharmony_ci 35447db96d56Sopenharmony_ci#endif /* (defined(HAVE_CURSES_RESIZETERM) || defined(HAVE_CURSES_RESIZE_TERM)) */ 35457db96d56Sopenharmony_ci 35467db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_raw__doc__, 35477db96d56Sopenharmony_ci"raw($module, flag=True, /)\n" 35487db96d56Sopenharmony_ci"--\n" 35497db96d56Sopenharmony_ci"\n" 35507db96d56Sopenharmony_ci"Enter raw mode.\n" 35517db96d56Sopenharmony_ci"\n" 35527db96d56Sopenharmony_ci" flag\n" 35537db96d56Sopenharmony_ci" If false, the effect is the same as calling noraw().\n" 35547db96d56Sopenharmony_ci"\n" 35557db96d56Sopenharmony_ci"In raw mode, normal line buffering and processing of interrupt, quit,\n" 35567db96d56Sopenharmony_ci"suspend, and flow control keys are turned off; characters are presented to\n" 35577db96d56Sopenharmony_ci"curses input functions one by one."); 35587db96d56Sopenharmony_ci 35597db96d56Sopenharmony_ci#define _CURSES_RAW_METHODDEF \ 35607db96d56Sopenharmony_ci {"raw", _PyCFunction_CAST(_curses_raw), METH_FASTCALL, _curses_raw__doc__}, 35617db96d56Sopenharmony_ci 35627db96d56Sopenharmony_cistatic PyObject * 35637db96d56Sopenharmony_ci_curses_raw_impl(PyObject *module, int flag); 35647db96d56Sopenharmony_ci 35657db96d56Sopenharmony_cistatic PyObject * 35667db96d56Sopenharmony_ci_curses_raw(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 35677db96d56Sopenharmony_ci{ 35687db96d56Sopenharmony_ci PyObject *return_value = NULL; 35697db96d56Sopenharmony_ci int flag = 1; 35707db96d56Sopenharmony_ci 35717db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("raw", nargs, 0, 1)) { 35727db96d56Sopenharmony_ci goto exit; 35737db96d56Sopenharmony_ci } 35747db96d56Sopenharmony_ci if (nargs < 1) { 35757db96d56Sopenharmony_ci goto skip_optional; 35767db96d56Sopenharmony_ci } 35777db96d56Sopenharmony_ci flag = _PyLong_AsInt(args[0]); 35787db96d56Sopenharmony_ci if (flag == -1 && PyErr_Occurred()) { 35797db96d56Sopenharmony_ci goto exit; 35807db96d56Sopenharmony_ci } 35817db96d56Sopenharmony_ciskip_optional: 35827db96d56Sopenharmony_ci return_value = _curses_raw_impl(module, flag); 35837db96d56Sopenharmony_ci 35847db96d56Sopenharmony_ciexit: 35857db96d56Sopenharmony_ci return return_value; 35867db96d56Sopenharmony_ci} 35877db96d56Sopenharmony_ci 35887db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_reset_prog_mode__doc__, 35897db96d56Sopenharmony_ci"reset_prog_mode($module, /)\n" 35907db96d56Sopenharmony_ci"--\n" 35917db96d56Sopenharmony_ci"\n" 35927db96d56Sopenharmony_ci"Restore the terminal to \"program\" mode, as previously saved by def_prog_mode()."); 35937db96d56Sopenharmony_ci 35947db96d56Sopenharmony_ci#define _CURSES_RESET_PROG_MODE_METHODDEF \ 35957db96d56Sopenharmony_ci {"reset_prog_mode", (PyCFunction)_curses_reset_prog_mode, METH_NOARGS, _curses_reset_prog_mode__doc__}, 35967db96d56Sopenharmony_ci 35977db96d56Sopenharmony_cistatic PyObject * 35987db96d56Sopenharmony_ci_curses_reset_prog_mode_impl(PyObject *module); 35997db96d56Sopenharmony_ci 36007db96d56Sopenharmony_cistatic PyObject * 36017db96d56Sopenharmony_ci_curses_reset_prog_mode(PyObject *module, PyObject *Py_UNUSED(ignored)) 36027db96d56Sopenharmony_ci{ 36037db96d56Sopenharmony_ci return _curses_reset_prog_mode_impl(module); 36047db96d56Sopenharmony_ci} 36057db96d56Sopenharmony_ci 36067db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_reset_shell_mode__doc__, 36077db96d56Sopenharmony_ci"reset_shell_mode($module, /)\n" 36087db96d56Sopenharmony_ci"--\n" 36097db96d56Sopenharmony_ci"\n" 36107db96d56Sopenharmony_ci"Restore the terminal to \"shell\" mode, as previously saved by def_shell_mode()."); 36117db96d56Sopenharmony_ci 36127db96d56Sopenharmony_ci#define _CURSES_RESET_SHELL_MODE_METHODDEF \ 36137db96d56Sopenharmony_ci {"reset_shell_mode", (PyCFunction)_curses_reset_shell_mode, METH_NOARGS, _curses_reset_shell_mode__doc__}, 36147db96d56Sopenharmony_ci 36157db96d56Sopenharmony_cistatic PyObject * 36167db96d56Sopenharmony_ci_curses_reset_shell_mode_impl(PyObject *module); 36177db96d56Sopenharmony_ci 36187db96d56Sopenharmony_cistatic PyObject * 36197db96d56Sopenharmony_ci_curses_reset_shell_mode(PyObject *module, PyObject *Py_UNUSED(ignored)) 36207db96d56Sopenharmony_ci{ 36217db96d56Sopenharmony_ci return _curses_reset_shell_mode_impl(module); 36227db96d56Sopenharmony_ci} 36237db96d56Sopenharmony_ci 36247db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_resetty__doc__, 36257db96d56Sopenharmony_ci"resetty($module, /)\n" 36267db96d56Sopenharmony_ci"--\n" 36277db96d56Sopenharmony_ci"\n" 36287db96d56Sopenharmony_ci"Restore terminal mode."); 36297db96d56Sopenharmony_ci 36307db96d56Sopenharmony_ci#define _CURSES_RESETTY_METHODDEF \ 36317db96d56Sopenharmony_ci {"resetty", (PyCFunction)_curses_resetty, METH_NOARGS, _curses_resetty__doc__}, 36327db96d56Sopenharmony_ci 36337db96d56Sopenharmony_cistatic PyObject * 36347db96d56Sopenharmony_ci_curses_resetty_impl(PyObject *module); 36357db96d56Sopenharmony_ci 36367db96d56Sopenharmony_cistatic PyObject * 36377db96d56Sopenharmony_ci_curses_resetty(PyObject *module, PyObject *Py_UNUSED(ignored)) 36387db96d56Sopenharmony_ci{ 36397db96d56Sopenharmony_ci return _curses_resetty_impl(module); 36407db96d56Sopenharmony_ci} 36417db96d56Sopenharmony_ci 36427db96d56Sopenharmony_ci#if defined(HAVE_CURSES_RESIZETERM) 36437db96d56Sopenharmony_ci 36447db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_resizeterm__doc__, 36457db96d56Sopenharmony_ci"resizeterm($module, nlines, ncols, /)\n" 36467db96d56Sopenharmony_ci"--\n" 36477db96d56Sopenharmony_ci"\n" 36487db96d56Sopenharmony_ci"Resize the standard and current windows to the specified dimensions.\n" 36497db96d56Sopenharmony_ci"\n" 36507db96d56Sopenharmony_ci" nlines\n" 36517db96d56Sopenharmony_ci" Height.\n" 36527db96d56Sopenharmony_ci" ncols\n" 36537db96d56Sopenharmony_ci" Width.\n" 36547db96d56Sopenharmony_ci"\n" 36557db96d56Sopenharmony_ci"Adjusts other bookkeeping data used by the curses library that record the\n" 36567db96d56Sopenharmony_ci"window dimensions (in particular the SIGWINCH handler)."); 36577db96d56Sopenharmony_ci 36587db96d56Sopenharmony_ci#define _CURSES_RESIZETERM_METHODDEF \ 36597db96d56Sopenharmony_ci {"resizeterm", _PyCFunction_CAST(_curses_resizeterm), METH_FASTCALL, _curses_resizeterm__doc__}, 36607db96d56Sopenharmony_ci 36617db96d56Sopenharmony_cistatic PyObject * 36627db96d56Sopenharmony_ci_curses_resizeterm_impl(PyObject *module, int nlines, int ncols); 36637db96d56Sopenharmony_ci 36647db96d56Sopenharmony_cistatic PyObject * 36657db96d56Sopenharmony_ci_curses_resizeterm(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 36667db96d56Sopenharmony_ci{ 36677db96d56Sopenharmony_ci PyObject *return_value = NULL; 36687db96d56Sopenharmony_ci int nlines; 36697db96d56Sopenharmony_ci int ncols; 36707db96d56Sopenharmony_ci 36717db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("resizeterm", nargs, 2, 2)) { 36727db96d56Sopenharmony_ci goto exit; 36737db96d56Sopenharmony_ci } 36747db96d56Sopenharmony_ci nlines = _PyLong_AsInt(args[0]); 36757db96d56Sopenharmony_ci if (nlines == -1 && PyErr_Occurred()) { 36767db96d56Sopenharmony_ci goto exit; 36777db96d56Sopenharmony_ci } 36787db96d56Sopenharmony_ci ncols = _PyLong_AsInt(args[1]); 36797db96d56Sopenharmony_ci if (ncols == -1 && PyErr_Occurred()) { 36807db96d56Sopenharmony_ci goto exit; 36817db96d56Sopenharmony_ci } 36827db96d56Sopenharmony_ci return_value = _curses_resizeterm_impl(module, nlines, ncols); 36837db96d56Sopenharmony_ci 36847db96d56Sopenharmony_ciexit: 36857db96d56Sopenharmony_ci return return_value; 36867db96d56Sopenharmony_ci} 36877db96d56Sopenharmony_ci 36887db96d56Sopenharmony_ci#endif /* defined(HAVE_CURSES_RESIZETERM) */ 36897db96d56Sopenharmony_ci 36907db96d56Sopenharmony_ci#if defined(HAVE_CURSES_RESIZE_TERM) 36917db96d56Sopenharmony_ci 36927db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_resize_term__doc__, 36937db96d56Sopenharmony_ci"resize_term($module, nlines, ncols, /)\n" 36947db96d56Sopenharmony_ci"--\n" 36957db96d56Sopenharmony_ci"\n" 36967db96d56Sopenharmony_ci"Backend function used by resizeterm(), performing most of the work.\n" 36977db96d56Sopenharmony_ci"\n" 36987db96d56Sopenharmony_ci" nlines\n" 36997db96d56Sopenharmony_ci" Height.\n" 37007db96d56Sopenharmony_ci" ncols\n" 37017db96d56Sopenharmony_ci" Width.\n" 37027db96d56Sopenharmony_ci"\n" 37037db96d56Sopenharmony_ci"When resizing the windows, resize_term() blank-fills the areas that are\n" 37047db96d56Sopenharmony_ci"extended. The calling application should fill in these areas with appropriate\n" 37057db96d56Sopenharmony_ci"data. The resize_term() function attempts to resize all windows. However,\n" 37067db96d56Sopenharmony_ci"due to the calling convention of pads, it is not possible to resize these\n" 37077db96d56Sopenharmony_ci"without additional interaction with the application."); 37087db96d56Sopenharmony_ci 37097db96d56Sopenharmony_ci#define _CURSES_RESIZE_TERM_METHODDEF \ 37107db96d56Sopenharmony_ci {"resize_term", _PyCFunction_CAST(_curses_resize_term), METH_FASTCALL, _curses_resize_term__doc__}, 37117db96d56Sopenharmony_ci 37127db96d56Sopenharmony_cistatic PyObject * 37137db96d56Sopenharmony_ci_curses_resize_term_impl(PyObject *module, int nlines, int ncols); 37147db96d56Sopenharmony_ci 37157db96d56Sopenharmony_cistatic PyObject * 37167db96d56Sopenharmony_ci_curses_resize_term(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 37177db96d56Sopenharmony_ci{ 37187db96d56Sopenharmony_ci PyObject *return_value = NULL; 37197db96d56Sopenharmony_ci int nlines; 37207db96d56Sopenharmony_ci int ncols; 37217db96d56Sopenharmony_ci 37227db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("resize_term", nargs, 2, 2)) { 37237db96d56Sopenharmony_ci goto exit; 37247db96d56Sopenharmony_ci } 37257db96d56Sopenharmony_ci nlines = _PyLong_AsInt(args[0]); 37267db96d56Sopenharmony_ci if (nlines == -1 && PyErr_Occurred()) { 37277db96d56Sopenharmony_ci goto exit; 37287db96d56Sopenharmony_ci } 37297db96d56Sopenharmony_ci ncols = _PyLong_AsInt(args[1]); 37307db96d56Sopenharmony_ci if (ncols == -1 && PyErr_Occurred()) { 37317db96d56Sopenharmony_ci goto exit; 37327db96d56Sopenharmony_ci } 37337db96d56Sopenharmony_ci return_value = _curses_resize_term_impl(module, nlines, ncols); 37347db96d56Sopenharmony_ci 37357db96d56Sopenharmony_ciexit: 37367db96d56Sopenharmony_ci return return_value; 37377db96d56Sopenharmony_ci} 37387db96d56Sopenharmony_ci 37397db96d56Sopenharmony_ci#endif /* defined(HAVE_CURSES_RESIZE_TERM) */ 37407db96d56Sopenharmony_ci 37417db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_savetty__doc__, 37427db96d56Sopenharmony_ci"savetty($module, /)\n" 37437db96d56Sopenharmony_ci"--\n" 37447db96d56Sopenharmony_ci"\n" 37457db96d56Sopenharmony_ci"Save terminal mode."); 37467db96d56Sopenharmony_ci 37477db96d56Sopenharmony_ci#define _CURSES_SAVETTY_METHODDEF \ 37487db96d56Sopenharmony_ci {"savetty", (PyCFunction)_curses_savetty, METH_NOARGS, _curses_savetty__doc__}, 37497db96d56Sopenharmony_ci 37507db96d56Sopenharmony_cistatic PyObject * 37517db96d56Sopenharmony_ci_curses_savetty_impl(PyObject *module); 37527db96d56Sopenharmony_ci 37537db96d56Sopenharmony_cistatic PyObject * 37547db96d56Sopenharmony_ci_curses_savetty(PyObject *module, PyObject *Py_UNUSED(ignored)) 37557db96d56Sopenharmony_ci{ 37567db96d56Sopenharmony_ci return _curses_savetty_impl(module); 37577db96d56Sopenharmony_ci} 37587db96d56Sopenharmony_ci 37597db96d56Sopenharmony_ci#if defined(getsyx) 37607db96d56Sopenharmony_ci 37617db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_setsyx__doc__, 37627db96d56Sopenharmony_ci"setsyx($module, y, x, /)\n" 37637db96d56Sopenharmony_ci"--\n" 37647db96d56Sopenharmony_ci"\n" 37657db96d56Sopenharmony_ci"Set the virtual screen cursor.\n" 37667db96d56Sopenharmony_ci"\n" 37677db96d56Sopenharmony_ci" y\n" 37687db96d56Sopenharmony_ci" Y-coordinate.\n" 37697db96d56Sopenharmony_ci" x\n" 37707db96d56Sopenharmony_ci" X-coordinate.\n" 37717db96d56Sopenharmony_ci"\n" 37727db96d56Sopenharmony_ci"If y and x are both -1, then leaveok is set."); 37737db96d56Sopenharmony_ci 37747db96d56Sopenharmony_ci#define _CURSES_SETSYX_METHODDEF \ 37757db96d56Sopenharmony_ci {"setsyx", _PyCFunction_CAST(_curses_setsyx), METH_FASTCALL, _curses_setsyx__doc__}, 37767db96d56Sopenharmony_ci 37777db96d56Sopenharmony_cistatic PyObject * 37787db96d56Sopenharmony_ci_curses_setsyx_impl(PyObject *module, int y, int x); 37797db96d56Sopenharmony_ci 37807db96d56Sopenharmony_cistatic PyObject * 37817db96d56Sopenharmony_ci_curses_setsyx(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 37827db96d56Sopenharmony_ci{ 37837db96d56Sopenharmony_ci PyObject *return_value = NULL; 37847db96d56Sopenharmony_ci int y; 37857db96d56Sopenharmony_ci int x; 37867db96d56Sopenharmony_ci 37877db96d56Sopenharmony_ci if (!_PyArg_CheckPositional("setsyx", nargs, 2, 2)) { 37887db96d56Sopenharmony_ci goto exit; 37897db96d56Sopenharmony_ci } 37907db96d56Sopenharmony_ci y = _PyLong_AsInt(args[0]); 37917db96d56Sopenharmony_ci if (y == -1 && PyErr_Occurred()) { 37927db96d56Sopenharmony_ci goto exit; 37937db96d56Sopenharmony_ci } 37947db96d56Sopenharmony_ci x = _PyLong_AsInt(args[1]); 37957db96d56Sopenharmony_ci if (x == -1 && PyErr_Occurred()) { 37967db96d56Sopenharmony_ci goto exit; 37977db96d56Sopenharmony_ci } 37987db96d56Sopenharmony_ci return_value = _curses_setsyx_impl(module, y, x); 37997db96d56Sopenharmony_ci 38007db96d56Sopenharmony_ciexit: 38017db96d56Sopenharmony_ci return return_value; 38027db96d56Sopenharmony_ci} 38037db96d56Sopenharmony_ci 38047db96d56Sopenharmony_ci#endif /* defined(getsyx) */ 38057db96d56Sopenharmony_ci 38067db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_start_color__doc__, 38077db96d56Sopenharmony_ci"start_color($module, /)\n" 38087db96d56Sopenharmony_ci"--\n" 38097db96d56Sopenharmony_ci"\n" 38107db96d56Sopenharmony_ci"Initializes eight basic colors and global variables COLORS and COLOR_PAIRS.\n" 38117db96d56Sopenharmony_ci"\n" 38127db96d56Sopenharmony_ci"Must be called if the programmer wants to use colors, and before any other\n" 38137db96d56Sopenharmony_ci"color manipulation routine is called. It is good practice to call this\n" 38147db96d56Sopenharmony_ci"routine right after initscr().\n" 38157db96d56Sopenharmony_ci"\n" 38167db96d56Sopenharmony_ci"It also restores the colors on the terminal to the values they had when the\n" 38177db96d56Sopenharmony_ci"terminal was just turned on."); 38187db96d56Sopenharmony_ci 38197db96d56Sopenharmony_ci#define _CURSES_START_COLOR_METHODDEF \ 38207db96d56Sopenharmony_ci {"start_color", (PyCFunction)_curses_start_color, METH_NOARGS, _curses_start_color__doc__}, 38217db96d56Sopenharmony_ci 38227db96d56Sopenharmony_cistatic PyObject * 38237db96d56Sopenharmony_ci_curses_start_color_impl(PyObject *module); 38247db96d56Sopenharmony_ci 38257db96d56Sopenharmony_cistatic PyObject * 38267db96d56Sopenharmony_ci_curses_start_color(PyObject *module, PyObject *Py_UNUSED(ignored)) 38277db96d56Sopenharmony_ci{ 38287db96d56Sopenharmony_ci return _curses_start_color_impl(module); 38297db96d56Sopenharmony_ci} 38307db96d56Sopenharmony_ci 38317db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_termattrs__doc__, 38327db96d56Sopenharmony_ci"termattrs($module, /)\n" 38337db96d56Sopenharmony_ci"--\n" 38347db96d56Sopenharmony_ci"\n" 38357db96d56Sopenharmony_ci"Return a logical OR of all video attributes supported by the terminal."); 38367db96d56Sopenharmony_ci 38377db96d56Sopenharmony_ci#define _CURSES_TERMATTRS_METHODDEF \ 38387db96d56Sopenharmony_ci {"termattrs", (PyCFunction)_curses_termattrs, METH_NOARGS, _curses_termattrs__doc__}, 38397db96d56Sopenharmony_ci 38407db96d56Sopenharmony_cistatic PyObject * 38417db96d56Sopenharmony_ci_curses_termattrs_impl(PyObject *module); 38427db96d56Sopenharmony_ci 38437db96d56Sopenharmony_cistatic PyObject * 38447db96d56Sopenharmony_ci_curses_termattrs(PyObject *module, PyObject *Py_UNUSED(ignored)) 38457db96d56Sopenharmony_ci{ 38467db96d56Sopenharmony_ci return _curses_termattrs_impl(module); 38477db96d56Sopenharmony_ci} 38487db96d56Sopenharmony_ci 38497db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_termname__doc__, 38507db96d56Sopenharmony_ci"termname($module, /)\n" 38517db96d56Sopenharmony_ci"--\n" 38527db96d56Sopenharmony_ci"\n" 38537db96d56Sopenharmony_ci"Return the value of the environment variable TERM, truncated to 14 characters."); 38547db96d56Sopenharmony_ci 38557db96d56Sopenharmony_ci#define _CURSES_TERMNAME_METHODDEF \ 38567db96d56Sopenharmony_ci {"termname", (PyCFunction)_curses_termname, METH_NOARGS, _curses_termname__doc__}, 38577db96d56Sopenharmony_ci 38587db96d56Sopenharmony_cistatic PyObject * 38597db96d56Sopenharmony_ci_curses_termname_impl(PyObject *module); 38607db96d56Sopenharmony_ci 38617db96d56Sopenharmony_cistatic PyObject * 38627db96d56Sopenharmony_ci_curses_termname(PyObject *module, PyObject *Py_UNUSED(ignored)) 38637db96d56Sopenharmony_ci{ 38647db96d56Sopenharmony_ci return _curses_termname_impl(module); 38657db96d56Sopenharmony_ci} 38667db96d56Sopenharmony_ci 38677db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_tigetflag__doc__, 38687db96d56Sopenharmony_ci"tigetflag($module, capname, /)\n" 38697db96d56Sopenharmony_ci"--\n" 38707db96d56Sopenharmony_ci"\n" 38717db96d56Sopenharmony_ci"Return the value of the Boolean capability.\n" 38727db96d56Sopenharmony_ci"\n" 38737db96d56Sopenharmony_ci" capname\n" 38747db96d56Sopenharmony_ci" The terminfo capability name.\n" 38757db96d56Sopenharmony_ci"\n" 38767db96d56Sopenharmony_ci"The value -1 is returned if capname is not a Boolean capability, or 0 if\n" 38777db96d56Sopenharmony_ci"it is canceled or absent from the terminal description."); 38787db96d56Sopenharmony_ci 38797db96d56Sopenharmony_ci#define _CURSES_TIGETFLAG_METHODDEF \ 38807db96d56Sopenharmony_ci {"tigetflag", (PyCFunction)_curses_tigetflag, METH_O, _curses_tigetflag__doc__}, 38817db96d56Sopenharmony_ci 38827db96d56Sopenharmony_cistatic PyObject * 38837db96d56Sopenharmony_ci_curses_tigetflag_impl(PyObject *module, const char *capname); 38847db96d56Sopenharmony_ci 38857db96d56Sopenharmony_cistatic PyObject * 38867db96d56Sopenharmony_ci_curses_tigetflag(PyObject *module, PyObject *arg) 38877db96d56Sopenharmony_ci{ 38887db96d56Sopenharmony_ci PyObject *return_value = NULL; 38897db96d56Sopenharmony_ci const char *capname; 38907db96d56Sopenharmony_ci 38917db96d56Sopenharmony_ci if (!PyUnicode_Check(arg)) { 38927db96d56Sopenharmony_ci _PyArg_BadArgument("tigetflag", "argument", "str", arg); 38937db96d56Sopenharmony_ci goto exit; 38947db96d56Sopenharmony_ci } 38957db96d56Sopenharmony_ci Py_ssize_t capname_length; 38967db96d56Sopenharmony_ci capname = PyUnicode_AsUTF8AndSize(arg, &capname_length); 38977db96d56Sopenharmony_ci if (capname == NULL) { 38987db96d56Sopenharmony_ci goto exit; 38997db96d56Sopenharmony_ci } 39007db96d56Sopenharmony_ci if (strlen(capname) != (size_t)capname_length) { 39017db96d56Sopenharmony_ci PyErr_SetString(PyExc_ValueError, "embedded null character"); 39027db96d56Sopenharmony_ci goto exit; 39037db96d56Sopenharmony_ci } 39047db96d56Sopenharmony_ci return_value = _curses_tigetflag_impl(module, capname); 39057db96d56Sopenharmony_ci 39067db96d56Sopenharmony_ciexit: 39077db96d56Sopenharmony_ci return return_value; 39087db96d56Sopenharmony_ci} 39097db96d56Sopenharmony_ci 39107db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_tigetnum__doc__, 39117db96d56Sopenharmony_ci"tigetnum($module, capname, /)\n" 39127db96d56Sopenharmony_ci"--\n" 39137db96d56Sopenharmony_ci"\n" 39147db96d56Sopenharmony_ci"Return the value of the numeric capability.\n" 39157db96d56Sopenharmony_ci"\n" 39167db96d56Sopenharmony_ci" capname\n" 39177db96d56Sopenharmony_ci" The terminfo capability name.\n" 39187db96d56Sopenharmony_ci"\n" 39197db96d56Sopenharmony_ci"The value -2 is returned if capname is not a numeric capability, or -1 if\n" 39207db96d56Sopenharmony_ci"it is canceled or absent from the terminal description."); 39217db96d56Sopenharmony_ci 39227db96d56Sopenharmony_ci#define _CURSES_TIGETNUM_METHODDEF \ 39237db96d56Sopenharmony_ci {"tigetnum", (PyCFunction)_curses_tigetnum, METH_O, _curses_tigetnum__doc__}, 39247db96d56Sopenharmony_ci 39257db96d56Sopenharmony_cistatic PyObject * 39267db96d56Sopenharmony_ci_curses_tigetnum_impl(PyObject *module, const char *capname); 39277db96d56Sopenharmony_ci 39287db96d56Sopenharmony_cistatic PyObject * 39297db96d56Sopenharmony_ci_curses_tigetnum(PyObject *module, PyObject *arg) 39307db96d56Sopenharmony_ci{ 39317db96d56Sopenharmony_ci PyObject *return_value = NULL; 39327db96d56Sopenharmony_ci const char *capname; 39337db96d56Sopenharmony_ci 39347db96d56Sopenharmony_ci if (!PyUnicode_Check(arg)) { 39357db96d56Sopenharmony_ci _PyArg_BadArgument("tigetnum", "argument", "str", arg); 39367db96d56Sopenharmony_ci goto exit; 39377db96d56Sopenharmony_ci } 39387db96d56Sopenharmony_ci Py_ssize_t capname_length; 39397db96d56Sopenharmony_ci capname = PyUnicode_AsUTF8AndSize(arg, &capname_length); 39407db96d56Sopenharmony_ci if (capname == NULL) { 39417db96d56Sopenharmony_ci goto exit; 39427db96d56Sopenharmony_ci } 39437db96d56Sopenharmony_ci if (strlen(capname) != (size_t)capname_length) { 39447db96d56Sopenharmony_ci PyErr_SetString(PyExc_ValueError, "embedded null character"); 39457db96d56Sopenharmony_ci goto exit; 39467db96d56Sopenharmony_ci } 39477db96d56Sopenharmony_ci return_value = _curses_tigetnum_impl(module, capname); 39487db96d56Sopenharmony_ci 39497db96d56Sopenharmony_ciexit: 39507db96d56Sopenharmony_ci return return_value; 39517db96d56Sopenharmony_ci} 39527db96d56Sopenharmony_ci 39537db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_tigetstr__doc__, 39547db96d56Sopenharmony_ci"tigetstr($module, capname, /)\n" 39557db96d56Sopenharmony_ci"--\n" 39567db96d56Sopenharmony_ci"\n" 39577db96d56Sopenharmony_ci"Return the value of the string capability.\n" 39587db96d56Sopenharmony_ci"\n" 39597db96d56Sopenharmony_ci" capname\n" 39607db96d56Sopenharmony_ci" The terminfo capability name.\n" 39617db96d56Sopenharmony_ci"\n" 39627db96d56Sopenharmony_ci"None is returned if capname is not a string capability, or is canceled or\n" 39637db96d56Sopenharmony_ci"absent from the terminal description."); 39647db96d56Sopenharmony_ci 39657db96d56Sopenharmony_ci#define _CURSES_TIGETSTR_METHODDEF \ 39667db96d56Sopenharmony_ci {"tigetstr", (PyCFunction)_curses_tigetstr, METH_O, _curses_tigetstr__doc__}, 39677db96d56Sopenharmony_ci 39687db96d56Sopenharmony_cistatic PyObject * 39697db96d56Sopenharmony_ci_curses_tigetstr_impl(PyObject *module, const char *capname); 39707db96d56Sopenharmony_ci 39717db96d56Sopenharmony_cistatic PyObject * 39727db96d56Sopenharmony_ci_curses_tigetstr(PyObject *module, PyObject *arg) 39737db96d56Sopenharmony_ci{ 39747db96d56Sopenharmony_ci PyObject *return_value = NULL; 39757db96d56Sopenharmony_ci const char *capname; 39767db96d56Sopenharmony_ci 39777db96d56Sopenharmony_ci if (!PyUnicode_Check(arg)) { 39787db96d56Sopenharmony_ci _PyArg_BadArgument("tigetstr", "argument", "str", arg); 39797db96d56Sopenharmony_ci goto exit; 39807db96d56Sopenharmony_ci } 39817db96d56Sopenharmony_ci Py_ssize_t capname_length; 39827db96d56Sopenharmony_ci capname = PyUnicode_AsUTF8AndSize(arg, &capname_length); 39837db96d56Sopenharmony_ci if (capname == NULL) { 39847db96d56Sopenharmony_ci goto exit; 39857db96d56Sopenharmony_ci } 39867db96d56Sopenharmony_ci if (strlen(capname) != (size_t)capname_length) { 39877db96d56Sopenharmony_ci PyErr_SetString(PyExc_ValueError, "embedded null character"); 39887db96d56Sopenharmony_ci goto exit; 39897db96d56Sopenharmony_ci } 39907db96d56Sopenharmony_ci return_value = _curses_tigetstr_impl(module, capname); 39917db96d56Sopenharmony_ci 39927db96d56Sopenharmony_ciexit: 39937db96d56Sopenharmony_ci return return_value; 39947db96d56Sopenharmony_ci} 39957db96d56Sopenharmony_ci 39967db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_tparm__doc__, 39977db96d56Sopenharmony_ci"tparm($module, str, i1=0, i2=0, i3=0, i4=0, i5=0, i6=0, i7=0, i8=0,\n" 39987db96d56Sopenharmony_ci" i9=0, /)\n" 39997db96d56Sopenharmony_ci"--\n" 40007db96d56Sopenharmony_ci"\n" 40017db96d56Sopenharmony_ci"Instantiate the specified byte string with the supplied parameters.\n" 40027db96d56Sopenharmony_ci"\n" 40037db96d56Sopenharmony_ci" str\n" 40047db96d56Sopenharmony_ci" Parameterized byte string obtained from the terminfo database."); 40057db96d56Sopenharmony_ci 40067db96d56Sopenharmony_ci#define _CURSES_TPARM_METHODDEF \ 40077db96d56Sopenharmony_ci {"tparm", _PyCFunction_CAST(_curses_tparm), METH_FASTCALL, _curses_tparm__doc__}, 40087db96d56Sopenharmony_ci 40097db96d56Sopenharmony_cistatic PyObject * 40107db96d56Sopenharmony_ci_curses_tparm_impl(PyObject *module, const char *str, int i1, int i2, int i3, 40117db96d56Sopenharmony_ci int i4, int i5, int i6, int i7, int i8, int i9); 40127db96d56Sopenharmony_ci 40137db96d56Sopenharmony_cistatic PyObject * 40147db96d56Sopenharmony_ci_curses_tparm(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 40157db96d56Sopenharmony_ci{ 40167db96d56Sopenharmony_ci PyObject *return_value = NULL; 40177db96d56Sopenharmony_ci const char *str; 40187db96d56Sopenharmony_ci int i1 = 0; 40197db96d56Sopenharmony_ci int i2 = 0; 40207db96d56Sopenharmony_ci int i3 = 0; 40217db96d56Sopenharmony_ci int i4 = 0; 40227db96d56Sopenharmony_ci int i5 = 0; 40237db96d56Sopenharmony_ci int i6 = 0; 40247db96d56Sopenharmony_ci int i7 = 0; 40257db96d56Sopenharmony_ci int i8 = 0; 40267db96d56Sopenharmony_ci int i9 = 0; 40277db96d56Sopenharmony_ci 40287db96d56Sopenharmony_ci if (!_PyArg_ParseStack(args, nargs, "y|iiiiiiiii:tparm", 40297db96d56Sopenharmony_ci &str, &i1, &i2, &i3, &i4, &i5, &i6, &i7, &i8, &i9)) { 40307db96d56Sopenharmony_ci goto exit; 40317db96d56Sopenharmony_ci } 40327db96d56Sopenharmony_ci return_value = _curses_tparm_impl(module, str, i1, i2, i3, i4, i5, i6, i7, i8, i9); 40337db96d56Sopenharmony_ci 40347db96d56Sopenharmony_ciexit: 40357db96d56Sopenharmony_ci return return_value; 40367db96d56Sopenharmony_ci} 40377db96d56Sopenharmony_ci 40387db96d56Sopenharmony_ci#if defined(HAVE_CURSES_TYPEAHEAD) 40397db96d56Sopenharmony_ci 40407db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_typeahead__doc__, 40417db96d56Sopenharmony_ci"typeahead($module, fd, /)\n" 40427db96d56Sopenharmony_ci"--\n" 40437db96d56Sopenharmony_ci"\n" 40447db96d56Sopenharmony_ci"Specify that the file descriptor fd be used for typeahead checking.\n" 40457db96d56Sopenharmony_ci"\n" 40467db96d56Sopenharmony_ci" fd\n" 40477db96d56Sopenharmony_ci" File descriptor.\n" 40487db96d56Sopenharmony_ci"\n" 40497db96d56Sopenharmony_ci"If fd is -1, then no typeahead checking is done."); 40507db96d56Sopenharmony_ci 40517db96d56Sopenharmony_ci#define _CURSES_TYPEAHEAD_METHODDEF \ 40527db96d56Sopenharmony_ci {"typeahead", (PyCFunction)_curses_typeahead, METH_O, _curses_typeahead__doc__}, 40537db96d56Sopenharmony_ci 40547db96d56Sopenharmony_cistatic PyObject * 40557db96d56Sopenharmony_ci_curses_typeahead_impl(PyObject *module, int fd); 40567db96d56Sopenharmony_ci 40577db96d56Sopenharmony_cistatic PyObject * 40587db96d56Sopenharmony_ci_curses_typeahead(PyObject *module, PyObject *arg) 40597db96d56Sopenharmony_ci{ 40607db96d56Sopenharmony_ci PyObject *return_value = NULL; 40617db96d56Sopenharmony_ci int fd; 40627db96d56Sopenharmony_ci 40637db96d56Sopenharmony_ci fd = _PyLong_AsInt(arg); 40647db96d56Sopenharmony_ci if (fd == -1 && PyErr_Occurred()) { 40657db96d56Sopenharmony_ci goto exit; 40667db96d56Sopenharmony_ci } 40677db96d56Sopenharmony_ci return_value = _curses_typeahead_impl(module, fd); 40687db96d56Sopenharmony_ci 40697db96d56Sopenharmony_ciexit: 40707db96d56Sopenharmony_ci return return_value; 40717db96d56Sopenharmony_ci} 40727db96d56Sopenharmony_ci 40737db96d56Sopenharmony_ci#endif /* defined(HAVE_CURSES_TYPEAHEAD) */ 40747db96d56Sopenharmony_ci 40757db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_unctrl__doc__, 40767db96d56Sopenharmony_ci"unctrl($module, ch, /)\n" 40777db96d56Sopenharmony_ci"--\n" 40787db96d56Sopenharmony_ci"\n" 40797db96d56Sopenharmony_ci"Return a string which is a printable representation of the character ch.\n" 40807db96d56Sopenharmony_ci"\n" 40817db96d56Sopenharmony_ci"Control characters are displayed as a caret followed by the character,\n" 40827db96d56Sopenharmony_ci"for example as ^C. Printing characters are left as they are."); 40837db96d56Sopenharmony_ci 40847db96d56Sopenharmony_ci#define _CURSES_UNCTRL_METHODDEF \ 40857db96d56Sopenharmony_ci {"unctrl", (PyCFunction)_curses_unctrl, METH_O, _curses_unctrl__doc__}, 40867db96d56Sopenharmony_ci 40877db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_ungetch__doc__, 40887db96d56Sopenharmony_ci"ungetch($module, ch, /)\n" 40897db96d56Sopenharmony_ci"--\n" 40907db96d56Sopenharmony_ci"\n" 40917db96d56Sopenharmony_ci"Push ch so the next getch() will return it."); 40927db96d56Sopenharmony_ci 40937db96d56Sopenharmony_ci#define _CURSES_UNGETCH_METHODDEF \ 40947db96d56Sopenharmony_ci {"ungetch", (PyCFunction)_curses_ungetch, METH_O, _curses_ungetch__doc__}, 40957db96d56Sopenharmony_ci 40967db96d56Sopenharmony_ci#if defined(HAVE_NCURSESW) 40977db96d56Sopenharmony_ci 40987db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_unget_wch__doc__, 40997db96d56Sopenharmony_ci"unget_wch($module, ch, /)\n" 41007db96d56Sopenharmony_ci"--\n" 41017db96d56Sopenharmony_ci"\n" 41027db96d56Sopenharmony_ci"Push ch so the next get_wch() will return it."); 41037db96d56Sopenharmony_ci 41047db96d56Sopenharmony_ci#define _CURSES_UNGET_WCH_METHODDEF \ 41057db96d56Sopenharmony_ci {"unget_wch", (PyCFunction)_curses_unget_wch, METH_O, _curses_unget_wch__doc__}, 41067db96d56Sopenharmony_ci 41077db96d56Sopenharmony_ci#endif /* defined(HAVE_NCURSESW) */ 41087db96d56Sopenharmony_ci 41097db96d56Sopenharmony_ci#if defined(HAVE_CURSES_USE_ENV) 41107db96d56Sopenharmony_ci 41117db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_use_env__doc__, 41127db96d56Sopenharmony_ci"use_env($module, flag, /)\n" 41137db96d56Sopenharmony_ci"--\n" 41147db96d56Sopenharmony_ci"\n" 41157db96d56Sopenharmony_ci"Use environment variables LINES and COLUMNS.\n" 41167db96d56Sopenharmony_ci"\n" 41177db96d56Sopenharmony_ci"If used, this function should be called before initscr() or newterm() are\n" 41187db96d56Sopenharmony_ci"called.\n" 41197db96d56Sopenharmony_ci"\n" 41207db96d56Sopenharmony_ci"When flag is False, the values of lines and columns specified in the terminfo\n" 41217db96d56Sopenharmony_ci"database will be used, even if environment variables LINES and COLUMNS (used\n" 41227db96d56Sopenharmony_ci"by default) are set, or if curses is running in a window (in which case\n" 41237db96d56Sopenharmony_ci"default behavior would be to use the window size if LINES and COLUMNS are\n" 41247db96d56Sopenharmony_ci"not set)."); 41257db96d56Sopenharmony_ci 41267db96d56Sopenharmony_ci#define _CURSES_USE_ENV_METHODDEF \ 41277db96d56Sopenharmony_ci {"use_env", (PyCFunction)_curses_use_env, METH_O, _curses_use_env__doc__}, 41287db96d56Sopenharmony_ci 41297db96d56Sopenharmony_cistatic PyObject * 41307db96d56Sopenharmony_ci_curses_use_env_impl(PyObject *module, int flag); 41317db96d56Sopenharmony_ci 41327db96d56Sopenharmony_cistatic PyObject * 41337db96d56Sopenharmony_ci_curses_use_env(PyObject *module, PyObject *arg) 41347db96d56Sopenharmony_ci{ 41357db96d56Sopenharmony_ci PyObject *return_value = NULL; 41367db96d56Sopenharmony_ci int flag; 41377db96d56Sopenharmony_ci 41387db96d56Sopenharmony_ci flag = _PyLong_AsInt(arg); 41397db96d56Sopenharmony_ci if (flag == -1 && PyErr_Occurred()) { 41407db96d56Sopenharmony_ci goto exit; 41417db96d56Sopenharmony_ci } 41427db96d56Sopenharmony_ci return_value = _curses_use_env_impl(module, flag); 41437db96d56Sopenharmony_ci 41447db96d56Sopenharmony_ciexit: 41457db96d56Sopenharmony_ci return return_value; 41467db96d56Sopenharmony_ci} 41477db96d56Sopenharmony_ci 41487db96d56Sopenharmony_ci#endif /* defined(HAVE_CURSES_USE_ENV) */ 41497db96d56Sopenharmony_ci 41507db96d56Sopenharmony_ci#if !defined(STRICT_SYSV_CURSES) 41517db96d56Sopenharmony_ci 41527db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_use_default_colors__doc__, 41537db96d56Sopenharmony_ci"use_default_colors($module, /)\n" 41547db96d56Sopenharmony_ci"--\n" 41557db96d56Sopenharmony_ci"\n" 41567db96d56Sopenharmony_ci"Allow use of default values for colors on terminals supporting this feature.\n" 41577db96d56Sopenharmony_ci"\n" 41587db96d56Sopenharmony_ci"Use this to support transparency in your application. The default color\n" 41597db96d56Sopenharmony_ci"is assigned to the color number -1."); 41607db96d56Sopenharmony_ci 41617db96d56Sopenharmony_ci#define _CURSES_USE_DEFAULT_COLORS_METHODDEF \ 41627db96d56Sopenharmony_ci {"use_default_colors", (PyCFunction)_curses_use_default_colors, METH_NOARGS, _curses_use_default_colors__doc__}, 41637db96d56Sopenharmony_ci 41647db96d56Sopenharmony_cistatic PyObject * 41657db96d56Sopenharmony_ci_curses_use_default_colors_impl(PyObject *module); 41667db96d56Sopenharmony_ci 41677db96d56Sopenharmony_cistatic PyObject * 41687db96d56Sopenharmony_ci_curses_use_default_colors(PyObject *module, PyObject *Py_UNUSED(ignored)) 41697db96d56Sopenharmony_ci{ 41707db96d56Sopenharmony_ci return _curses_use_default_colors_impl(module); 41717db96d56Sopenharmony_ci} 41727db96d56Sopenharmony_ci 41737db96d56Sopenharmony_ci#endif /* !defined(STRICT_SYSV_CURSES) */ 41747db96d56Sopenharmony_ci 41757db96d56Sopenharmony_ciPyDoc_STRVAR(_curses_has_extended_color_support__doc__, 41767db96d56Sopenharmony_ci"has_extended_color_support($module, /)\n" 41777db96d56Sopenharmony_ci"--\n" 41787db96d56Sopenharmony_ci"\n" 41797db96d56Sopenharmony_ci"Return True if the module supports extended colors; otherwise, return False.\n" 41807db96d56Sopenharmony_ci"\n" 41817db96d56Sopenharmony_ci"Extended color support allows more than 256 color-pairs for terminals\n" 41827db96d56Sopenharmony_ci"that support more than 16 colors (e.g. xterm-256color)."); 41837db96d56Sopenharmony_ci 41847db96d56Sopenharmony_ci#define _CURSES_HAS_EXTENDED_COLOR_SUPPORT_METHODDEF \ 41857db96d56Sopenharmony_ci {"has_extended_color_support", (PyCFunction)_curses_has_extended_color_support, METH_NOARGS, _curses_has_extended_color_support__doc__}, 41867db96d56Sopenharmony_ci 41877db96d56Sopenharmony_cistatic PyObject * 41887db96d56Sopenharmony_ci_curses_has_extended_color_support_impl(PyObject *module); 41897db96d56Sopenharmony_ci 41907db96d56Sopenharmony_cistatic PyObject * 41917db96d56Sopenharmony_ci_curses_has_extended_color_support(PyObject *module, PyObject *Py_UNUSED(ignored)) 41927db96d56Sopenharmony_ci{ 41937db96d56Sopenharmony_ci return _curses_has_extended_color_support_impl(module); 41947db96d56Sopenharmony_ci} 41957db96d56Sopenharmony_ci 41967db96d56Sopenharmony_ci#ifndef _CURSES_WINDOW_ENCLOSE_METHODDEF 41977db96d56Sopenharmony_ci #define _CURSES_WINDOW_ENCLOSE_METHODDEF 41987db96d56Sopenharmony_ci#endif /* !defined(_CURSES_WINDOW_ENCLOSE_METHODDEF) */ 41997db96d56Sopenharmony_ci 42007db96d56Sopenharmony_ci#ifndef _CURSES_WINDOW_GET_WCH_METHODDEF 42017db96d56Sopenharmony_ci #define _CURSES_WINDOW_GET_WCH_METHODDEF 42027db96d56Sopenharmony_ci#endif /* !defined(_CURSES_WINDOW_GET_WCH_METHODDEF) */ 42037db96d56Sopenharmony_ci 42047db96d56Sopenharmony_ci#ifndef _CURSES_WINDOW_NOUTREFRESH_METHODDEF 42057db96d56Sopenharmony_ci #define _CURSES_WINDOW_NOUTREFRESH_METHODDEF 42067db96d56Sopenharmony_ci#endif /* !defined(_CURSES_WINDOW_NOUTREFRESH_METHODDEF) */ 42077db96d56Sopenharmony_ci 42087db96d56Sopenharmony_ci#ifndef _CURSES_FILTER_METHODDEF 42097db96d56Sopenharmony_ci #define _CURSES_FILTER_METHODDEF 42107db96d56Sopenharmony_ci#endif /* !defined(_CURSES_FILTER_METHODDEF) */ 42117db96d56Sopenharmony_ci 42127db96d56Sopenharmony_ci#ifndef _CURSES_GETSYX_METHODDEF 42137db96d56Sopenharmony_ci #define _CURSES_GETSYX_METHODDEF 42147db96d56Sopenharmony_ci#endif /* !defined(_CURSES_GETSYX_METHODDEF) */ 42157db96d56Sopenharmony_ci 42167db96d56Sopenharmony_ci#ifndef _CURSES_GETMOUSE_METHODDEF 42177db96d56Sopenharmony_ci #define _CURSES_GETMOUSE_METHODDEF 42187db96d56Sopenharmony_ci#endif /* !defined(_CURSES_GETMOUSE_METHODDEF) */ 42197db96d56Sopenharmony_ci 42207db96d56Sopenharmony_ci#ifndef _CURSES_UNGETMOUSE_METHODDEF 42217db96d56Sopenharmony_ci #define _CURSES_UNGETMOUSE_METHODDEF 42227db96d56Sopenharmony_ci#endif /* !defined(_CURSES_UNGETMOUSE_METHODDEF) */ 42237db96d56Sopenharmony_ci 42247db96d56Sopenharmony_ci#ifndef _CURSES_HAS_KEY_METHODDEF 42257db96d56Sopenharmony_ci #define _CURSES_HAS_KEY_METHODDEF 42267db96d56Sopenharmony_ci#endif /* !defined(_CURSES_HAS_KEY_METHODDEF) */ 42277db96d56Sopenharmony_ci 42287db96d56Sopenharmony_ci#ifndef _CURSES_GET_ESCDELAY_METHODDEF 42297db96d56Sopenharmony_ci #define _CURSES_GET_ESCDELAY_METHODDEF 42307db96d56Sopenharmony_ci#endif /* !defined(_CURSES_GET_ESCDELAY_METHODDEF) */ 42317db96d56Sopenharmony_ci 42327db96d56Sopenharmony_ci#ifndef _CURSES_SET_ESCDELAY_METHODDEF 42337db96d56Sopenharmony_ci #define _CURSES_SET_ESCDELAY_METHODDEF 42347db96d56Sopenharmony_ci#endif /* !defined(_CURSES_SET_ESCDELAY_METHODDEF) */ 42357db96d56Sopenharmony_ci 42367db96d56Sopenharmony_ci#ifndef _CURSES_GET_TABSIZE_METHODDEF 42377db96d56Sopenharmony_ci #define _CURSES_GET_TABSIZE_METHODDEF 42387db96d56Sopenharmony_ci#endif /* !defined(_CURSES_GET_TABSIZE_METHODDEF) */ 42397db96d56Sopenharmony_ci 42407db96d56Sopenharmony_ci#ifndef _CURSES_SET_TABSIZE_METHODDEF 42417db96d56Sopenharmony_ci #define _CURSES_SET_TABSIZE_METHODDEF 42427db96d56Sopenharmony_ci#endif /* !defined(_CURSES_SET_TABSIZE_METHODDEF) */ 42437db96d56Sopenharmony_ci 42447db96d56Sopenharmony_ci#ifndef _CURSES_IS_TERM_RESIZED_METHODDEF 42457db96d56Sopenharmony_ci #define _CURSES_IS_TERM_RESIZED_METHODDEF 42467db96d56Sopenharmony_ci#endif /* !defined(_CURSES_IS_TERM_RESIZED_METHODDEF) */ 42477db96d56Sopenharmony_ci 42487db96d56Sopenharmony_ci#ifndef _CURSES_MOUSEINTERVAL_METHODDEF 42497db96d56Sopenharmony_ci #define _CURSES_MOUSEINTERVAL_METHODDEF 42507db96d56Sopenharmony_ci#endif /* !defined(_CURSES_MOUSEINTERVAL_METHODDEF) */ 42517db96d56Sopenharmony_ci 42527db96d56Sopenharmony_ci#ifndef _CURSES_MOUSEMASK_METHODDEF 42537db96d56Sopenharmony_ci #define _CURSES_MOUSEMASK_METHODDEF 42547db96d56Sopenharmony_ci#endif /* !defined(_CURSES_MOUSEMASK_METHODDEF) */ 42557db96d56Sopenharmony_ci 42567db96d56Sopenharmony_ci#ifndef _CURSES_UPDATE_LINES_COLS_METHODDEF 42577db96d56Sopenharmony_ci #define _CURSES_UPDATE_LINES_COLS_METHODDEF 42587db96d56Sopenharmony_ci#endif /* !defined(_CURSES_UPDATE_LINES_COLS_METHODDEF) */ 42597db96d56Sopenharmony_ci 42607db96d56Sopenharmony_ci#ifndef _CURSES_RESIZETERM_METHODDEF 42617db96d56Sopenharmony_ci #define _CURSES_RESIZETERM_METHODDEF 42627db96d56Sopenharmony_ci#endif /* !defined(_CURSES_RESIZETERM_METHODDEF) */ 42637db96d56Sopenharmony_ci 42647db96d56Sopenharmony_ci#ifndef _CURSES_RESIZE_TERM_METHODDEF 42657db96d56Sopenharmony_ci #define _CURSES_RESIZE_TERM_METHODDEF 42667db96d56Sopenharmony_ci#endif /* !defined(_CURSES_RESIZE_TERM_METHODDEF) */ 42677db96d56Sopenharmony_ci 42687db96d56Sopenharmony_ci#ifndef _CURSES_SETSYX_METHODDEF 42697db96d56Sopenharmony_ci #define _CURSES_SETSYX_METHODDEF 42707db96d56Sopenharmony_ci#endif /* !defined(_CURSES_SETSYX_METHODDEF) */ 42717db96d56Sopenharmony_ci 42727db96d56Sopenharmony_ci#ifndef _CURSES_TYPEAHEAD_METHODDEF 42737db96d56Sopenharmony_ci #define _CURSES_TYPEAHEAD_METHODDEF 42747db96d56Sopenharmony_ci#endif /* !defined(_CURSES_TYPEAHEAD_METHODDEF) */ 42757db96d56Sopenharmony_ci 42767db96d56Sopenharmony_ci#ifndef _CURSES_UNGET_WCH_METHODDEF 42777db96d56Sopenharmony_ci #define _CURSES_UNGET_WCH_METHODDEF 42787db96d56Sopenharmony_ci#endif /* !defined(_CURSES_UNGET_WCH_METHODDEF) */ 42797db96d56Sopenharmony_ci 42807db96d56Sopenharmony_ci#ifndef _CURSES_USE_ENV_METHODDEF 42817db96d56Sopenharmony_ci #define _CURSES_USE_ENV_METHODDEF 42827db96d56Sopenharmony_ci#endif /* !defined(_CURSES_USE_ENV_METHODDEF) */ 42837db96d56Sopenharmony_ci 42847db96d56Sopenharmony_ci#ifndef _CURSES_USE_DEFAULT_COLORS_METHODDEF 42857db96d56Sopenharmony_ci #define _CURSES_USE_DEFAULT_COLORS_METHODDEF 42867db96d56Sopenharmony_ci#endif /* !defined(_CURSES_USE_DEFAULT_COLORS_METHODDEF) */ 42877db96d56Sopenharmony_ci/*[clinic end generated code: output=1e2a8a160a0fe811 input=a9049054013a1b77]*/ 4288