curses 1.6.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (935) hide show
  1. checksums.yaml +4 -4
  2. data/.devcontainer/Dockerfile +132 -0
  3. data/.devcontainer/devcontainer.json +58 -0
  4. data/.devcontainer/init-firewall.sh +139 -0
  5. data/.github/workflows/gh-pages.yml +4 -4
  6. data/.github/workflows/macos.yml +5 -2
  7. data/.github/workflows/push_gem.yml +7 -2
  8. data/.github/workflows/ubuntu.yml +5 -2
  9. data/.github/workflows/windows.yml +5 -2
  10. data/.gitmodules +3 -3
  11. data/README.md +2 -2
  12. data/curses.gemspec +1 -1
  13. data/ext/curses/extconf.rb +5 -2
  14. data/lib/curses.rb +1 -1
  15. data/vendor/PDCursesMod/.github/workflows/github_actions_build.yml +42 -0
  16. data/vendor/PDCursesMod/.gitignore +47 -0
  17. data/vendor/PDCursesMod/.travis.yml +308 -0
  18. data/vendor/PDCursesMod/CMakeLists.txt +77 -0
  19. data/vendor/PDCursesMod/README.md +60 -0
  20. data/vendor/PDCursesMod/appveyor.yml +300 -0
  21. data/vendor/PDCursesMod/cmake/README.md +71 -0
  22. data/vendor/PDCursesMod/cmake/build_dependencies.cmake +186 -0
  23. data/vendor/PDCursesMod/cmake/build_options.cmake +29 -0
  24. data/vendor/PDCursesMod/cmake/dll_version.cmake +24 -0
  25. data/vendor/PDCursesMod/cmake/gen_config_header.cmake +40 -0
  26. data/vendor/PDCursesMod/cmake/get_version.cmake +17 -0
  27. data/vendor/PDCursesMod/cmake/project_common.cmake +131 -0
  28. data/vendor/PDCursesMod/cmake/sdl2_ttf/CMakeLists.txt +95 -0
  29. data/vendor/PDCursesMod/cmake/version.in.cmake +61 -0
  30. data/vendor/PDCursesMod/cmake/watcom_open_dos16_toolchain.cmake +90 -0
  31. data/vendor/PDCursesMod/cmake/watcom_open_dos32_toolchain.cmake +89 -0
  32. data/vendor/PDCursesMod/cmake/watcom_open_os2v2_toolchain.cmake +88 -0
  33. data/vendor/PDCursesMod/cmake/watcom_open_win32_toolchain.cmake +12 -0
  34. data/vendor/PDCursesMod/common/acs_defs.h +288 -0
  35. data/vendor/PDCursesMod/common/approx.c +163 -0
  36. data/vendor/PDCursesMod/common/beep.c +70 -0
  37. data/vendor/PDCursesMod/common/blink.c +90 -0
  38. data/vendor/PDCursesMod/common/config_curses.c +134 -0
  39. data/vendor/PDCursesMod/common/dos_key.h +59 -0
  40. data/vendor/PDCursesMod/common/dosutil.c +136 -0
  41. data/vendor/PDCursesMod/common/font437.h +386 -0
  42. data/vendor/PDCursesMod/common/icon32.xpm +42 -0
  43. data/vendor/PDCursesMod/common/icon64.xpm +74 -0
  44. data/vendor/PDCursesMod/common/iconbmp.h +24 -0
  45. data/vendor/PDCursesMod/common/libobjs.mif +32 -0
  46. data/vendor/PDCursesMod/common/mouse.c +293 -0
  47. data/vendor/PDCursesMod/common/pdcclip.c +135 -0
  48. data/vendor/PDCursesMod/common/pdccolor.c +223 -0
  49. data/vendor/PDCursesMod/common/pdccolor.h +17 -0
  50. data/vendor/PDCursesMod/common/pdccolor.txt +81 -0
  51. data/vendor/PDCursesMod/common/pdcurses.rc +35 -0
  52. data/vendor/PDCursesMod/common/psf.c +250 -0
  53. data/vendor/PDCursesMod/common/psf.h +13 -0
  54. data/vendor/PDCursesMod/common/psf_wide.h +584 -0
  55. data/vendor/PDCursesMod/common/watcom.mif +224 -0
  56. data/vendor/PDCursesMod/common/winclip.c +151 -0
  57. data/vendor/PDCursesMod/common/xlates.h +142 -0
  58. data/vendor/PDCursesMod/curses.h +1972 -0
  59. data/vendor/PDCursesMod/curspriv.h +295 -0
  60. data/vendor/PDCursesMod/demos/UTF-8-demo.txt +225 -0
  61. data/vendor/PDCursesMod/demos/calendar.c +278 -0
  62. data/vendor/PDCursesMod/demos/curses.priv.h +37 -0
  63. data/vendor/PDCursesMod/demos/dates.txt +2576 -0
  64. data/vendor/PDCursesMod/demos/firework.c +149 -0
  65. data/vendor/PDCursesMod/demos/init_col.c +152 -0
  66. data/vendor/PDCursesMod/demos/mbrot.c +366 -0
  67. data/vendor/PDCursesMod/demos/nctests.mif +299 -0
  68. data/vendor/PDCursesMod/demos/ncurses_cfg.h +100 -0
  69. data/vendor/PDCursesMod/demos/newtest.c +608 -0
  70. data/vendor/PDCursesMod/demos/ozdemo.c +444 -0
  71. data/vendor/PDCursesMod/demos/picsview.c +516 -0
  72. data/vendor/PDCursesMod/demos/ptest.c +315 -0
  73. data/vendor/PDCursesMod/demos/rain.c +161 -0
  74. data/vendor/PDCursesMod/demos/snprintf.c +30 -0
  75. data/vendor/PDCursesMod/demos/speed.c +124 -0
  76. data/vendor/PDCursesMod/demos/test_pan.c +372 -0
  77. data/vendor/PDCursesMod/demos/testcurs.c +1978 -0
  78. data/vendor/PDCursesMod/demos/tui.c +816 -0
  79. data/vendor/PDCursesMod/demos/tui.h +65 -0
  80. data/vendor/PDCursesMod/demos/tuidemo.c +231 -0
  81. data/vendor/PDCursesMod/demos/version.c +66 -0
  82. data/vendor/PDCursesMod/demos/widetest.c +130 -0
  83. data/vendor/PDCursesMod/demos/worm.c +450 -0
  84. data/vendor/PDCursesMod/demos/xmas.c +955 -0
  85. data/vendor/PDCursesMod/docs/HISTORY.md +3850 -0
  86. data/vendor/PDCursesMod/docs/IMPLEMNT.md +321 -0
  87. data/vendor/PDCursesMod/docs/MANUAL.md +3304 -0
  88. data/vendor/PDCursesMod/docs/README.md +51 -0
  89. data/vendor/PDCursesMod/docs/USERS.md +451 -0
  90. data/vendor/PDCursesMod/docs/manext.awk +15 -0
  91. data/vendor/PDCursesMod/docs/mkman.sh +7 -0
  92. data/vendor/PDCursesMod/dos/CMakeLists.txt +54 -0
  93. data/vendor/PDCursesMod/dos/Makefile +85 -0
  94. data/vendor/PDCursesMod/dos/Makefile.bcc +81 -0
  95. data/vendor/PDCursesMod/dos/Makefile.dmc +315 -0
  96. data/vendor/PDCursesMod/dos/Makefile.wcc +44 -0
  97. data/vendor/PDCursesMod/dos/README.md +49 -0
  98. data/vendor/PDCursesMod/dos/pdcclip.c +1 -0
  99. data/vendor/PDCursesMod/dos/pdcdisp.c +164 -0
  100. data/vendor/PDCursesMod/dos/pdcdos.h +173 -0
  101. data/vendor/PDCursesMod/dos/pdcgetsc.c +81 -0
  102. data/vendor/PDCursesMod/dos/pdckbd.c +428 -0
  103. data/vendor/PDCursesMod/dos/pdcscrn.c +707 -0
  104. data/vendor/PDCursesMod/dos/pdcsetsc.c +120 -0
  105. data/vendor/PDCursesMod/dos/pdcutil.c +11 -0
  106. data/vendor/PDCursesMod/dosvga/CMakeLists.txt +54 -0
  107. data/vendor/PDCursesMod/dosvga/Makefile +109 -0
  108. data/vendor/PDCursesMod/dosvga/Makefile.bcc +82 -0
  109. data/vendor/PDCursesMod/dosvga/Makefile.dmc +318 -0
  110. data/vendor/PDCursesMod/dosvga/Makefile.wcc +40 -0
  111. data/vendor/PDCursesMod/dosvga/README.md +58 -0
  112. data/vendor/PDCursesMod/dosvga/cp437.h +184 -0
  113. data/vendor/PDCursesMod/dosvga/font.h +454 -0
  114. data/vendor/PDCursesMod/dosvga/hexize.c +45 -0
  115. data/vendor/PDCursesMod/dosvga/mk_font.c +35 -0
  116. data/vendor/PDCursesMod/dosvga/pdcclip.c +1 -0
  117. data/vendor/PDCursesMod/dosvga/pdcdisp.c +684 -0
  118. data/vendor/PDCursesMod/dosvga/pdcdos.h +201 -0
  119. data/vendor/PDCursesMod/dosvga/pdcgetsc.c +47 -0
  120. data/vendor/PDCursesMod/dosvga/pdckbd.c +484 -0
  121. data/vendor/PDCursesMod/dosvga/pdcscrn.c +1693 -0
  122. data/vendor/PDCursesMod/dosvga/pdcsetsc.c +79 -0
  123. data/vendor/PDCursesMod/dosvga/pdcutil.c +13 -0
  124. data/vendor/PDCursesMod/dosvga/pdcvesa.h +88 -0
  125. data/vendor/PDCursesMod/fb/Makefile +150 -0
  126. data/vendor/PDCursesMod/fb/README.md +52 -0
  127. data/vendor/PDCursesMod/fb/cursor.c +111 -0
  128. data/vendor/PDCursesMod/fb/drm.c +264 -0
  129. data/vendor/PDCursesMod/fb/pdcclip.c +1 -0
  130. data/vendor/PDCursesMod/fb/pdcdisp.c +521 -0
  131. data/vendor/PDCursesMod/fb/pdcfb.h +11 -0
  132. data/vendor/PDCursesMod/fb/pdcgetsc.c +1 -0
  133. data/vendor/PDCursesMod/fb/pdckbd.c +114 -0
  134. data/vendor/PDCursesMod/fb/pdcmouse.c +185 -0
  135. data/vendor/PDCursesMod/fb/pdcscrn.c +539 -0
  136. data/vendor/PDCursesMod/fb/pdcsetsc.c +3 -0
  137. data/vendor/PDCursesMod/fb/pdcutil.c +5 -0
  138. data/vendor/PDCursesMod/gl/CMakeLists.txt +66 -0
  139. data/vendor/PDCursesMod/gl/Makefile +188 -0
  140. data/vendor/PDCursesMod/gl/Makefile.vc +129 -0
  141. data/vendor/PDCursesMod/gl/README.md +134 -0
  142. data/vendor/PDCursesMod/gl/glfuncs.h +159 -0
  143. data/vendor/PDCursesMod/gl/pdcclip.c +93 -0
  144. data/vendor/PDCursesMod/gl/pdcdisp.c +867 -0
  145. data/vendor/PDCursesMod/gl/pdcgetsc.c +30 -0
  146. data/vendor/PDCursesMod/gl/pdcgl.h +51 -0
  147. data/vendor/PDCursesMod/gl/pdckbd.c +548 -0
  148. data/vendor/PDCursesMod/gl/pdcscrn.c +700 -0
  149. data/vendor/PDCursesMod/gl/pdcsetsc.c +99 -0
  150. data/vendor/PDCursesMod/gl/pdcutil.c +35 -0
  151. data/vendor/PDCursesMod/ncurses/CMakeLists.txt +76 -0
  152. data/vendor/PDCursesMod/ncurses/Makefile +38 -0
  153. data/vendor/PDCursesMod/os2/Makefile +150 -0
  154. data/vendor/PDCursesMod/os2/Makefile.bcc +85 -0
  155. data/vendor/PDCursesMod/os2/Makefile.wcc +26 -0
  156. data/vendor/PDCursesMod/os2/iccos2.lrf +49 -0
  157. data/vendor/PDCursesMod/os2/iccos2.mak +260 -0
  158. data/vendor/PDCursesMod/os2/pdcclip.c +172 -0
  159. data/vendor/PDCursesMod/os2/pdcdisp.c +130 -0
  160. data/vendor/PDCursesMod/os2/pdcgetsc.c +52 -0
  161. data/vendor/PDCursesMod/os2/pdckbd.c +435 -0
  162. data/vendor/PDCursesMod/os2/pdcos2.h +21 -0
  163. data/vendor/PDCursesMod/os2/pdcscrn.c +231 -0
  164. data/vendor/PDCursesMod/os2/pdcsetsc.c +110 -0
  165. data/vendor/PDCursesMod/os2/pdcutil.c +51 -0
  166. data/vendor/PDCursesMod/os2gui/.gitignore +1 -0
  167. data/vendor/PDCursesMod/os2gui/CMakeLists.txt +30 -0
  168. data/vendor/PDCursesMod/os2gui/Makefile +139 -0
  169. data/vendor/PDCursesMod/os2gui/Makefile.wcc +32 -0
  170. data/vendor/PDCursesMod/os2gui/README.md +69 -0
  171. data/vendor/PDCursesMod/os2gui/pdcclip.c +165 -0
  172. data/vendor/PDCursesMod/os2gui/pdcdisp.c +2021 -0
  173. data/vendor/PDCursesMod/os2gui/pdcgetsc.c +26 -0
  174. data/vendor/PDCursesMod/os2gui/pdckbd.c +79 -0
  175. data/vendor/PDCursesMod/os2gui/pdcscrn.c +2433 -0
  176. data/vendor/PDCursesMod/os2gui/pdcsetsc.c +115 -0
  177. data/vendor/PDCursesMod/os2gui/pdcutil.c +42 -0
  178. data/vendor/PDCursesMod/os2gui/pdcwin.h +106 -0
  179. data/vendor/PDCursesMod/os2gui/table.py +112 -0
  180. data/vendor/PDCursesMod/os2gui/unitable.h +3933 -0
  181. data/vendor/PDCursesMod/panel.h +41 -0
  182. data/vendor/PDCursesMod/pdcurses/addch.c +838 -0
  183. data/vendor/PDCursesMod/pdcurses/addchstr.c +232 -0
  184. data/vendor/PDCursesMod/pdcurses/addstr.c +245 -0
  185. data/vendor/PDCursesMod/pdcurses/attr.c +430 -0
  186. data/vendor/PDCursesMod/pdcurses/beep.c +78 -0
  187. data/vendor/PDCursesMod/pdcurses/bkgd.c +233 -0
  188. data/vendor/PDCursesMod/pdcurses/border.c +413 -0
  189. data/vendor/PDCursesMod/pdcurses/clear.c +161 -0
  190. data/vendor/PDCursesMod/pdcurses/color.c +761 -0
  191. data/vendor/PDCursesMod/pdcurses/debug.c +157 -0
  192. data/vendor/PDCursesMod/pdcurses/delch.c +96 -0
  193. data/vendor/PDCursesMod/pdcurses/deleteln.c +149 -0
  194. data/vendor/PDCursesMod/pdcurses/getch.c +871 -0
  195. data/vendor/PDCursesMod/pdcurses/getstr.c +487 -0
  196. data/vendor/PDCursesMod/pdcurses/getyx.c +152 -0
  197. data/vendor/PDCursesMod/pdcurses/inch.c +133 -0
  198. data/vendor/PDCursesMod/pdcurses/inchstr.c +217 -0
  199. data/vendor/PDCursesMod/pdcurses/initscr.c +524 -0
  200. data/vendor/PDCursesMod/pdcurses/inopts.c +490 -0
  201. data/vendor/PDCursesMod/pdcurses/insch.c +273 -0
  202. data/vendor/PDCursesMod/pdcurses/insstr.c +268 -0
  203. data/vendor/PDCursesMod/pdcurses/instr.c +253 -0
  204. data/vendor/PDCursesMod/pdcurses/kernel.c +338 -0
  205. data/vendor/PDCursesMod/pdcurses/keyname.c +149 -0
  206. data/vendor/PDCursesMod/pdcurses/mouse.c +469 -0
  207. data/vendor/PDCursesMod/pdcurses/move.c +84 -0
  208. data/vendor/PDCursesMod/pdcurses/outopts.c +283 -0
  209. data/vendor/PDCursesMod/pdcurses/overlay.c +204 -0
  210. data/vendor/PDCursesMod/pdcurses/pad.c +303 -0
  211. data/vendor/PDCursesMod/pdcurses/pairs.txt +94 -0
  212. data/vendor/PDCursesMod/pdcurses/panel.c +551 -0
  213. data/vendor/PDCursesMod/pdcurses/printw.c +180 -0
  214. data/vendor/PDCursesMod/pdcurses/refresh.c +372 -0
  215. data/vendor/PDCursesMod/pdcurses/scanw.c +582 -0
  216. data/vendor/PDCursesMod/pdcurses/scr_dump.c +311 -0
  217. data/vendor/PDCursesMod/pdcurses/scroll.c +115 -0
  218. data/vendor/PDCursesMod/pdcurses/slk.c +660 -0
  219. data/vendor/PDCursesMod/pdcurses/termattr.c +177 -0
  220. data/vendor/PDCursesMod/pdcurses/terminfo.c +243 -0
  221. data/vendor/PDCursesMod/pdcurses/touch.c +255 -0
  222. data/vendor/PDCursesMod/pdcurses/util.c +502 -0
  223. data/vendor/PDCursesMod/pdcurses/window.c +708 -0
  224. data/vendor/PDCursesMod/plan9/README.md +57 -0
  225. data/vendor/PDCursesMod/plan9/header.patch +11 -0
  226. data/vendor/PDCursesMod/plan9/mkfile +103 -0
  227. data/vendor/PDCursesMod/plan9/mkfile_demo +42 -0
  228. data/vendor/PDCursesMod/plan9/pdcclip.c +1 -0
  229. data/vendor/PDCursesMod/plan9/pdcdisp.c +62 -0
  230. data/vendor/PDCursesMod/plan9/pdcgetsc.c +28 -0
  231. data/vendor/PDCursesMod/plan9/pdckbd.c +53 -0
  232. data/vendor/PDCursesMod/plan9/pdcplan9.h +10 -0
  233. data/vendor/PDCursesMod/plan9/pdcscrn.c +103 -0
  234. data/vendor/PDCursesMod/plan9/pdcsetsc.c +51 -0
  235. data/vendor/PDCursesMod/plan9/pdcutil.c +370 -0
  236. data/vendor/PDCursesMod/psffonts/10x20.psf +0 -0
  237. data/vendor/PDCursesMod/psffonts/18x18.psf +0 -0
  238. data/vendor/PDCursesMod/psffonts/4x6.psf +0 -0
  239. data/vendor/PDCursesMod/psffonts/6x12.psf +0 -0
  240. data/vendor/PDCursesMod/psffonts/8x13.psf +0 -0
  241. data/vendor/PDCursesMod/psffonts/9x15.psf +0 -0
  242. data/vendor/PDCursesMod/psffonts/9x18.psf +0 -0
  243. data/vendor/PDCursesMod/psffonts/README +38 -0
  244. data/vendor/PDCursesMod/psffonts/README.md +14 -0
  245. data/vendor/PDCursesMod/psffonts/bmp2psf2.c +130 -0
  246. data/vendor/PDCursesMod/psffonts/cour11x17.psf +0 -0
  247. data/vendor/PDCursesMod/psffonts/cour20x29.psf +0 -0
  248. data/vendor/PDCursesMod/psffonts/default.psf +0 -0
  249. data/vendor/PDCursesMod/psffonts/dosemu.psf +0 -0
  250. data/vendor/PDCursesMod/psffonts/fntcol16/2_hebrew-14.psf +0 -0
  251. data/vendor/PDCursesMod/psffonts/fntcol16/README +285 -0
  252. data/vendor/PDCursesMod/psffonts/fntcol16/antique-14.psf +0 -0
  253. data/vendor/PDCursesMod/psffonts/fntcol16/apeaus-08.psf +0 -0
  254. data/vendor/PDCursesMod/psffonts/fntcol16/apeaus-14.psf +0 -0
  255. data/vendor/PDCursesMod/psffonts/fntcol16/apeaus-16.psf +0 -0
  256. data/vendor/PDCursesMod/psffonts/fntcol16/apls-08.psf +0 -0
  257. data/vendor/PDCursesMod/psffonts/fntcol16/arabdrft-14.psf +0 -0
  258. data/vendor/PDCursesMod/psffonts/fntcol16/arabic-14.psf +0 -0
  259. data/vendor/PDCursesMod/psffonts/fntcol16/arabkufi-14.psf +0 -0
  260. data/vendor/PDCursesMod/psffonts/fntcol16/arabnaf-14.psf +0 -0
  261. data/vendor/PDCursesMod/psffonts/fntcol16/arbnaskh-14.psf +0 -0
  262. data/vendor/PDCursesMod/psffonts/fntcol16/armenian-08.psf +0 -0
  263. data/vendor/PDCursesMod/psffonts/fntcol16/armenian-14.psf +0 -0
  264. data/vendor/PDCursesMod/psffonts/fntcol16/armenian-16.psf +0 -0
  265. data/vendor/PDCursesMod/psffonts/fntcol16/art-16.psf +0 -0
  266. data/vendor/PDCursesMod/psffonts/fntcol16/ascii-14.psf +0 -0
  267. data/vendor/PDCursesMod/psffonts/fntcol16/backward-14.psf +0 -0
  268. data/vendor/PDCursesMod/psffonts/fntcol16/bdeclo-14.psf +0 -0
  269. data/vendor/PDCursesMod/psffonts/fntcol16/bhexall-14.psf +0 -0
  270. data/vendor/PDCursesMod/psffonts/fntcol16/bhexbox-14.psf +0 -0
  271. data/vendor/PDCursesMod/psffonts/fntcol16/bhexhi-14.psf +0 -0
  272. data/vendor/PDCursesMod/psffonts/fntcol16/bhexlo-14.psf +0 -0
  273. data/vendor/PDCursesMod/psffonts/fntcol16/bigserif-14.psf +0 -0
  274. data/vendor/PDCursesMod/psffonts/fntcol16/bigserif-16.psf +0 -0
  275. data/vendor/PDCursesMod/psffonts/fntcol16/bigsf-14.psf +0 -0
  276. data/vendor/PDCursesMod/psffonts/fntcol16/binaryed-14.psf +0 -0
  277. data/vendor/PDCursesMod/psffonts/fntcol16/blcksnsf-10.psf +0 -0
  278. data/vendor/PDCursesMod/psffonts/fntcol16/block-14.psf +0 -0
  279. data/vendor/PDCursesMod/psffonts/fntcol16/bold-14.psf +0 -0
  280. data/vendor/PDCursesMod/psffonts/fntcol16/boxround-14.psf +0 -0
  281. data/vendor/PDCursesMod/psffonts/fntcol16/boxround-16.psf +0 -0
  282. data/vendor/PDCursesMod/psffonts/fntcol16/broadway-14.psf +0 -0
  283. data/vendor/PDCursesMod/psffonts/fntcol16/bthin-14.psf +0 -0
  284. data/vendor/PDCursesMod/psffonts/fntcol16/bway2-14.psf +0 -0
  285. data/vendor/PDCursesMod/psffonts/fntcol16/cafe-10.psf +0 -0
  286. data/vendor/PDCursesMod/psffonts/fntcol16/cafe-12.psf +0 -0
  287. data/vendor/PDCursesMod/psffonts/fntcol16/cntdown-14.psf +0 -0
  288. data/vendor/PDCursesMod/psffonts/fntcol16/cntdown-16.psf +0 -0
  289. data/vendor/PDCursesMod/psffonts/fntcol16/computer-14.psf +0 -0
  290. data/vendor/PDCursesMod/psffonts/fntcol16/copyleft.txt +209 -0
  291. data/vendor/PDCursesMod/psffonts/fntcol16/courier-14.psf +0 -0
  292. data/vendor/PDCursesMod/psffonts/fntcol16/cp111-08.psf +0 -0
  293. data/vendor/PDCursesMod/psffonts/fntcol16/cp111-14.psf +0 -0
  294. data/vendor/PDCursesMod/psffonts/fntcol16/cp111-16.psf +0 -0
  295. data/vendor/PDCursesMod/psffonts/fntcol16/cp111-19.psf +0 -0
  296. data/vendor/PDCursesMod/psffonts/fntcol16/cp112-08.psf +0 -0
  297. data/vendor/PDCursesMod/psffonts/fntcol16/cp112-14.psf +0 -0
  298. data/vendor/PDCursesMod/psffonts/fntcol16/cp112-16.psf +0 -0
  299. data/vendor/PDCursesMod/psffonts/fntcol16/cp112-19.psf +0 -0
  300. data/vendor/PDCursesMod/psffonts/fntcol16/cp113-08.psf +0 -0
  301. data/vendor/PDCursesMod/psffonts/fntcol16/cp113-14.psf +0 -0
  302. data/vendor/PDCursesMod/psffonts/fntcol16/cp113-16.psf +0 -0
  303. data/vendor/PDCursesMod/psffonts/fntcol16/cp113-19.psf +0 -0
  304. data/vendor/PDCursesMod/psffonts/fntcol16/cp437-08.psf +0 -0
  305. data/vendor/PDCursesMod/psffonts/fntcol16/cp437-14.psf +0 -0
  306. data/vendor/PDCursesMod/psffonts/fntcol16/cp437-16.psf +0 -0
  307. data/vendor/PDCursesMod/psffonts/fntcol16/cp437-19.psf +0 -0
  308. data/vendor/PDCursesMod/psffonts/fntcol16/cp437alt-08.psf +0 -0
  309. data/vendor/PDCursesMod/psffonts/fntcol16/cp437bgr-08.psf +0 -0
  310. data/vendor/PDCursesMod/psffonts/fntcol16/cp850-08.psf +0 -0
  311. data/vendor/PDCursesMod/psffonts/fntcol16/cp850-14.psf +0 -0
  312. data/vendor/PDCursesMod/psffonts/fntcol16/cp850-16.psf +0 -0
  313. data/vendor/PDCursesMod/psffonts/fntcol16/cp850-19.psf +0 -0
  314. data/vendor/PDCursesMod/psffonts/fntcol16/cp851-08.psf +0 -0
  315. data/vendor/PDCursesMod/psffonts/fntcol16/cp851-14.psf +0 -0
  316. data/vendor/PDCursesMod/psffonts/fntcol16/cp851-16.psf +0 -0
  317. data/vendor/PDCursesMod/psffonts/fntcol16/cp851-19.psf +0 -0
  318. data/vendor/PDCursesMod/psffonts/fntcol16/cp852-08.psf +0 -0
  319. data/vendor/PDCursesMod/psffonts/fntcol16/cp852-14.psf +0 -0
  320. data/vendor/PDCursesMod/psffonts/fntcol16/cp852-16.psf +0 -0
  321. data/vendor/PDCursesMod/psffonts/fntcol16/cp852-19.psf +0 -0
  322. data/vendor/PDCursesMod/psffonts/fntcol16/cp853-08.psf +0 -0
  323. data/vendor/PDCursesMod/psffonts/fntcol16/cp853-14.psf +0 -0
  324. data/vendor/PDCursesMod/psffonts/fntcol16/cp853-16.psf +0 -0
  325. data/vendor/PDCursesMod/psffonts/fntcol16/cp853-19.psf +0 -0
  326. data/vendor/PDCursesMod/psffonts/fntcol16/cp860-08.psf +0 -0
  327. data/vendor/PDCursesMod/psffonts/fntcol16/cp860-14.psf +0 -0
  328. data/vendor/PDCursesMod/psffonts/fntcol16/cp860-16.psf +0 -0
  329. data/vendor/PDCursesMod/psffonts/fntcol16/cp860-19.psf +0 -0
  330. data/vendor/PDCursesMod/psffonts/fntcol16/cp861-08.psf +0 -0
  331. data/vendor/PDCursesMod/psffonts/fntcol16/cp861-14.psf +0 -0
  332. data/vendor/PDCursesMod/psffonts/fntcol16/cp861-16.psf +0 -0
  333. data/vendor/PDCursesMod/psffonts/fntcol16/cp861-19.psf +0 -0
  334. data/vendor/PDCursesMod/psffonts/fntcol16/cp862-08.psf +0 -0
  335. data/vendor/PDCursesMod/psffonts/fntcol16/cp862-14.psf +0 -0
  336. data/vendor/PDCursesMod/psffonts/fntcol16/cp862-16.psf +0 -0
  337. data/vendor/PDCursesMod/psffonts/fntcol16/cp863-08.psf +0 -0
  338. data/vendor/PDCursesMod/psffonts/fntcol16/cp863-14.psf +0 -0
  339. data/vendor/PDCursesMod/psffonts/fntcol16/cp863-16.psf +0 -0
  340. data/vendor/PDCursesMod/psffonts/fntcol16/cp863-19.psf +0 -0
  341. data/vendor/PDCursesMod/psffonts/fntcol16/cp864-08.psf +0 -0
  342. data/vendor/PDCursesMod/psffonts/fntcol16/cp864-14.psf +0 -0
  343. data/vendor/PDCursesMod/psffonts/fntcol16/cp864-16.psf +0 -0
  344. data/vendor/PDCursesMod/psffonts/fntcol16/cp865-08.psf +0 -0
  345. data/vendor/PDCursesMod/psffonts/fntcol16/cp865-14.psf +0 -0
  346. data/vendor/PDCursesMod/psffonts/fntcol16/cp865-16.psf +0 -0
  347. data/vendor/PDCursesMod/psffonts/fntcol16/cp865-19.psf +0 -0
  348. data/vendor/PDCursesMod/psffonts/fntcol16/cp866-08.psf +0 -0
  349. data/vendor/PDCursesMod/psffonts/fntcol16/cp866-14.psf +0 -0
  350. data/vendor/PDCursesMod/psffonts/fntcol16/cp866-16.psf +0 -0
  351. data/vendor/PDCursesMod/psffonts/fntcol16/cp880-08.psf +0 -0
  352. data/vendor/PDCursesMod/psffonts/fntcol16/cp880-14.psf +0 -0
  353. data/vendor/PDCursesMod/psffonts/fntcol16/cp880-16.psf +0 -0
  354. data/vendor/PDCursesMod/psffonts/fntcol16/cp881-08.psf +0 -0
  355. data/vendor/PDCursesMod/psffonts/fntcol16/cp881-14.psf +0 -0
  356. data/vendor/PDCursesMod/psffonts/fntcol16/cp881-16.psf +0 -0
  357. data/vendor/PDCursesMod/psffonts/fntcol16/cp882-08.psf +0 -0
  358. data/vendor/PDCursesMod/psffonts/fntcol16/cp882-14.psf +0 -0
  359. data/vendor/PDCursesMod/psffonts/fntcol16/cp882-16.psf +0 -0
  360. data/vendor/PDCursesMod/psffonts/fntcol16/cp883-08.psf +0 -0
  361. data/vendor/PDCursesMod/psffonts/fntcol16/cp883-14.psf +0 -0
  362. data/vendor/PDCursesMod/psffonts/fntcol16/cp883-16.psf +0 -0
  363. data/vendor/PDCursesMod/psffonts/fntcol16/cp884-08.psf +0 -0
  364. data/vendor/PDCursesMod/psffonts/fntcol16/cp884-14.psf +0 -0
  365. data/vendor/PDCursesMod/psffonts/fntcol16/cp884-16.psf +0 -0
  366. data/vendor/PDCursesMod/psffonts/fntcol16/cp885-08.psf +0 -0
  367. data/vendor/PDCursesMod/psffonts/fntcol16/cp885-14.psf +0 -0
  368. data/vendor/PDCursesMod/psffonts/fntcol16/cp885-16.psf +0 -0
  369. data/vendor/PDCursesMod/psffonts/fntcol16/cyril2-14.psf +0 -0
  370. data/vendor/PDCursesMod/psffonts/fntcol16/cyril_b-08.psf +0 -0
  371. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill1-08.psf +0 -0
  372. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill1-14.psf +0 -0
  373. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill1-16.psf +0 -0
  374. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill2-08.psf +0 -0
  375. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill2-14.psf +0 -0
  376. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill2-16.psf +0 -0
  377. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill3-08.psf +0 -0
  378. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill3-14.psf +0 -0
  379. data/vendor/PDCursesMod/psffonts/fntcol16/cyrill3-16.psf +0 -0
  380. data/vendor/PDCursesMod/psffonts/fntcol16/cyrillic-14.psf +0 -0
  381. data/vendor/PDCursesMod/psffonts/fntcol16/decorate-16.psf +0 -0
  382. data/vendor/PDCursesMod/psffonts/fntcol16/draw-14.psf +0 -0
  383. data/vendor/PDCursesMod/psffonts/fntcol16/drawhi-14.psf +0 -0
  384. data/vendor/PDCursesMod/psffonts/fntcol16/europe-14.psf +0 -0
  385. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-08.psf +0 -0
  386. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-09.psf +0 -0
  387. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-10.psf +0 -0
  388. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-11.psf +0 -0
  389. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-12.psf +0 -0
  390. data/vendor/PDCursesMod/psffonts/fntcol16/evga-alt-13.psf +0 -0
  391. data/vendor/PDCursesMod/psffonts/fntcol16/farsi-14.psf +0 -0
  392. data/vendor/PDCursesMod/psffonts/fntcol16/finnish-14.psf +0 -0
  393. data/vendor/PDCursesMod/psffonts/fntcol16/fontorig.txt +308 -0
  394. data/vendor/PDCursesMod/psffonts/fntcol16/fractur-14.psf +0 -0
  395. data/vendor/PDCursesMod/psffonts/fntcol16/future-14.psf +0 -0
  396. data/vendor/PDCursesMod/psffonts/fntcol16/gaelic-14.psf +0 -0
  397. data/vendor/PDCursesMod/psffonts/fntcol16/gaelic1-14.psf +0 -0
  398. data/vendor/PDCursesMod/psffonts/fntcol16/georgian-14.psf +0 -0
  399. data/vendor/PDCursesMod/psffonts/fntcol16/grckssrf-08.psf +0 -0
  400. data/vendor/PDCursesMod/psffonts/fntcol16/grckssrf-14.psf +0 -0
  401. data/vendor/PDCursesMod/psffonts/fntcol16/grckssrf-16.psf +0 -0
  402. data/vendor/PDCursesMod/psffonts/fntcol16/greek-06.psf +0 -0
  403. data/vendor/PDCursesMod/psffonts/fntcol16/greek-07.psf +0 -0
  404. data/vendor/PDCursesMod/psffonts/fntcol16/greek-08.psf +0 -0
  405. data/vendor/PDCursesMod/psffonts/fntcol16/greek-14.psf +0 -0
  406. data/vendor/PDCursesMod/psffonts/fntcol16/greek-16.psf +0 -0
  407. data/vendor/PDCursesMod/psffonts/fntcol16/greek1-14.psf +0 -0
  408. data/vendor/PDCursesMod/psffonts/fntcol16/greek2-14.psf +0 -0
  409. data/vendor/PDCursesMod/psffonts/fntcol16/hack4th-16.psf +0 -0
  410. data/vendor/PDCursesMod/psffonts/fntcol16/handugly-16.psf +0 -0
  411. data/vendor/PDCursesMod/psffonts/fntcol16/handwrit-14.psf +0 -0
  412. data/vendor/PDCursesMod/psffonts/fntcol16/handwrit-16.psf +0 -0
  413. data/vendor/PDCursesMod/psffonts/fntcol16/heb-7bit-16.psf +0 -0
  414. data/vendor/PDCursesMod/psffonts/fntcol16/heb-big-14.psf +0 -0
  415. data/vendor/PDCursesMod/psffonts/fntcol16/heb-bold-16.psf +0 -0
  416. data/vendor/PDCursesMod/psffonts/fntcol16/heb-ktab-14.psf +0 -0
  417. data/vendor/PDCursesMod/psffonts/fntcol16/heb-med-14.psf +0 -0
  418. data/vendor/PDCursesMod/psffonts/fntcol16/heb-snsf-14.psf +0 -0
  419. data/vendor/PDCursesMod/psffonts/fntcol16/hebboldk-16.psf +0 -0
  420. data/vendor/PDCursesMod/psffonts/fntcol16/hebclrgf-14.psf +0 -0
  421. data/vendor/PDCursesMod/psffonts/fntcol16/hebktav1-16.psf +0 -0
  422. data/vendor/PDCursesMod/psffonts/fntcol16/hebktav2-16.psf +0 -0
  423. data/vendor/PDCursesMod/psffonts/fntcol16/heblarge-14.psf +0 -0
  424. data/vendor/PDCursesMod/psffonts/fntcol16/heblarge-16.psf +0 -0
  425. data/vendor/PDCursesMod/psffonts/fntcol16/hebrew-14.psf +0 -0
  426. data/vendor/PDCursesMod/psffonts/fntcol16/hebugly-16.psf +0 -0
  427. data/vendor/PDCursesMod/psffonts/fntcol16/hebyogi-16.psf +0 -0
  428. data/vendor/PDCursesMod/psffonts/fntcol16/hercital-08.psf +0 -0
  429. data/vendor/PDCursesMod/psffonts/fntcol16/hercules-08.psf +0 -0
  430. data/vendor/PDCursesMod/psffonts/fntcol16/hercules-10.psf +0 -0
  431. data/vendor/PDCursesMod/psffonts/fntcol16/hercules-14.psf +0 -0
  432. data/vendor/PDCursesMod/psffonts/fntcol16/history.txt +45 -0
  433. data/vendor/PDCursesMod/psffonts/fntcol16/hollow-14.psf +0 -0
  434. data/vendor/PDCursesMod/psffonts/fntcol16/hrkgreek-14.psf +0 -0
  435. data/vendor/PDCursesMod/psffonts/fntcol16/hylas-14.psf +0 -0
  436. data/vendor/PDCursesMod/psffonts/fntcol16/icons-14.psf +0 -0
  437. data/vendor/PDCursesMod/psffonts/fntcol16/inverted-14.psf +0 -0
  438. data/vendor/PDCursesMod/psffonts/fntcol16/iso-14.psf +0 -0
  439. data/vendor/PDCursesMod/psffonts/fntcol16/iso2-14.psf +0 -0
  440. data/vendor/PDCursesMod/psffonts/fntcol16/iso3-14.psf +0 -0
  441. data/vendor/PDCursesMod/psffonts/fntcol16/iso4-14.psf +0 -0
  442. data/vendor/PDCursesMod/psffonts/fntcol16/italics-14.psf +0 -0
  443. data/vendor/PDCursesMod/psffonts/fntcol16/kana-14.psf +0 -0
  444. data/vendor/PDCursesMod/psffonts/fntcol16/kana-16.psf +0 -0
  445. data/vendor/PDCursesMod/psffonts/fntcol16/lb_large-16.psf +0 -0
  446. data/vendor/PDCursesMod/psffonts/fntcol16/lb_misc-14.psf +0 -0
  447. data/vendor/PDCursesMod/psffonts/fntcol16/lb_ocr-14.psf +0 -0
  448. data/vendor/PDCursesMod/psffonts/fntcol16/lb_ocr-16.psf +0 -0
  449. data/vendor/PDCursesMod/psffonts/fntcol16/lbarabic-14.psf +0 -0
  450. data/vendor/PDCursesMod/psffonts/fntcol16/lbitalic-14.psf +0 -0
  451. data/vendor/PDCursesMod/psffonts/fntcol16/lbitalic-16.psf +0 -0
  452. data/vendor/PDCursesMod/psffonts/fntcol16/lbscript-14.psf +0 -0
  453. data/vendor/PDCursesMod/psffonts/fntcol16/lcd-14.psf +0 -0
  454. data/vendor/PDCursesMod/psffonts/fntcol16/mac-08.psf +0 -0
  455. data/vendor/PDCursesMod/psffonts/fntcol16/macntosh-14.psf +0 -0
  456. data/vendor/PDCursesMod/psffonts/fntcol16/macntosh-16.psf +0 -0
  457. data/vendor/PDCursesMod/psffonts/fntcol16/madrid-10.psf +0 -0
  458. data/vendor/PDCursesMod/psffonts/fntcol16/medieval-14.psf +0 -0
  459. data/vendor/PDCursesMod/psffonts/fntcol16/modern-16.psf +0 -0
  460. data/vendor/PDCursesMod/psffonts/fntcol16/norway-14.psf +0 -0
  461. data/vendor/PDCursesMod/psffonts/fntcol16/norway2-14.psf +0 -0
  462. data/vendor/PDCursesMod/psffonts/fntcol16/old-engl-14.psf +0 -0
  463. data/vendor/PDCursesMod/psffonts/fntcol16/old-engl-16.psf +0 -0
  464. data/vendor/PDCursesMod/psffonts/fntcol16/oldeng-14.psf +0 -0
  465. data/vendor/PDCursesMod/psffonts/fntcol16/oldeng-f-16.psf +0 -0
  466. data/vendor/PDCursesMod/psffonts/fntcol16/pc_6-14.psf +0 -0
  467. data/vendor/PDCursesMod/psffonts/fntcol16/pc_7-14.psf +0 -0
  468. data/vendor/PDCursesMod/psffonts/fntcol16/persian-14.psf +0 -0
  469. data/vendor/PDCursesMod/psffonts/fntcol16/persian-16.psf +0 -0
  470. data/vendor/PDCursesMod/psffonts/fntcol16/police-16.psf +0 -0
  471. data/vendor/PDCursesMod/psffonts/fntcol16/polish-14.psf +0 -0
  472. data/vendor/PDCursesMod/psffonts/fntcol16/polish1-14.psf +0 -0
  473. data/vendor/PDCursesMod/psffonts/fntcol16/pp_roman-16.psf +0 -0
  474. data/vendor/PDCursesMod/psffonts/fntcol16/pp_sser-16.psf +0 -0
  475. data/vendor/PDCursesMod/psffonts/fntcol16/readabl7-16.psf +0 -0
  476. data/vendor/PDCursesMod/psffonts/fntcol16/readabl8-16.psf +0 -0
  477. data/vendor/PDCursesMod/psffonts/fntcol16/readable-08.psf +0 -0
  478. data/vendor/PDCursesMod/psffonts/fntcol16/readable-10.psf +0 -0
  479. data/vendor/PDCursesMod/psffonts/fntcol16/reverse-14.psf +0 -0
  480. data/vendor/PDCursesMod/psffonts/fntcol16/rimrock-10.psf +0 -0
  481. data/vendor/PDCursesMod/psffonts/fntcol16/rmrkbold-14.psf +0 -0
  482. data/vendor/PDCursesMod/psffonts/fntcol16/rom8pix-08.psf +0 -0
  483. data/vendor/PDCursesMod/psffonts/fntcol16/roman-14.psf +0 -0
  484. data/vendor/PDCursesMod/psffonts/fntcol16/roman-16.psf +0 -0
  485. data/vendor/PDCursesMod/psffonts/fntcol16/runic-14.psf +0 -0
  486. data/vendor/PDCursesMod/psffonts/fntcol16/russian-08.psf +0 -0
  487. data/vendor/PDCursesMod/psffonts/fntcol16/russian-14.psf +0 -0
  488. data/vendor/PDCursesMod/psffonts/fntcol16/russian-16.psf +0 -0
  489. data/vendor/PDCursesMod/psffonts/fntcol16/russian1-14.psf +0 -0
  490. data/vendor/PDCursesMod/psffonts/fntcol16/sanserif-14.psf +0 -0
  491. data/vendor/PDCursesMod/psffonts/fntcol16/sanserif-16.psf +0 -0
  492. data/vendor/PDCursesMod/psffonts/fntcol16/script-14.psf +0 -0
  493. data/vendor/PDCursesMod/psffonts/fntcol16/scrwl----16.psf +0 -0
  494. data/vendor/PDCursesMod/psffonts/fntcol16/scrwl~~~-16.psf +0 -0
  495. data/vendor/PDCursesMod/psffonts/fntcol16/security-14.psf +0 -0
  496. data/vendor/PDCursesMod/psffonts/fntcol16/side-10.psf +0 -0
  497. data/vendor/PDCursesMod/psffonts/fntcol16/slant-14.psf +0 -0
  498. data/vendor/PDCursesMod/psffonts/fntcol16/smalcaps-14.psf +0 -0
  499. data/vendor/PDCursesMod/psffonts/fntcol16/smcapnum-14.psf +0 -0
  500. data/vendor/PDCursesMod/psffonts/fntcol16/spranto-14.psf +0 -0
  501. data/vendor/PDCursesMod/psffonts/fntcol16/spranto1-16.psf +0 -0
  502. data/vendor/PDCursesMod/psffonts/fntcol16/spranto2-16.psf +0 -0
  503. data/vendor/PDCursesMod/psffonts/fntcol16/square-12.psf +0 -0
  504. data/vendor/PDCursesMod/psffonts/fntcol16/standard-14.psf +0 -0
  505. data/vendor/PDCursesMod/psffonts/fntcol16/standard-16.psf +0 -0
  506. data/vendor/PDCursesMod/psffonts/fntcol16/stretch-14.psf +0 -0
  507. data/vendor/PDCursesMod/psffonts/fntcol16/subsup-16.psf +0 -0
  508. data/vendor/PDCursesMod/psffonts/fntcol16/super-16.psf +0 -0
  509. data/vendor/PDCursesMod/psffonts/fntcol16/swiss-16.psf +0 -0
  510. data/vendor/PDCursesMod/psffonts/fntcol16/swiss-av-16.psf +0 -0
  511. data/vendor/PDCursesMod/psffonts/fntcol16/swissav2-16.psf +0 -0
  512. data/vendor/PDCursesMod/psffonts/fntcol16/swissbox-16.psf +0 -0
  513. data/vendor/PDCursesMod/psffonts/fntcol16/swissbx2-16.psf +0 -0
  514. data/vendor/PDCursesMod/psffonts/fntcol16/tex-math-14.psf +0 -0
  515. data/vendor/PDCursesMod/psffonts/fntcol16/tex-math-16.psf +0 -0
  516. data/vendor/PDCursesMod/psffonts/fntcol16/thai-14.psf +0 -0
  517. data/vendor/PDCursesMod/psffonts/fntcol16/thin_ss-08.psf +0 -0
  518. data/vendor/PDCursesMod/psffonts/fntcol16/thin_ss-14.psf +0 -0
  519. data/vendor/PDCursesMod/psffonts/fntcol16/thin_ss-16.psf +0 -0
  520. data/vendor/PDCursesMod/psffonts/fntcol16/thinasci-07.psf +0 -0
  521. data/vendor/PDCursesMod/psffonts/fntcol16/thincaps-14.psf +0 -0
  522. data/vendor/PDCursesMod/psffonts/fntcol16/thindemo-14.psf +0 -0
  523. data/vendor/PDCursesMod/psffonts/fntcol16/thinscrp-14.psf +0 -0
  524. data/vendor/PDCursesMod/psffonts/fntcol16/turkish-14.psf +0 -0
  525. data/vendor/PDCursesMod/psffonts/fntcol16/urdu-14.psf +0 -0
  526. data/vendor/PDCursesMod/psffonts/fntcol16/vga-rom-08.psf +0 -0
  527. data/vendor/PDCursesMod/psffonts/fntcol16/vga-rom-14.psf +0 -0
  528. data/vendor/PDCursesMod/psffonts/fntcol16/vga-rom-16.psf +0 -0
  529. data/vendor/PDCursesMod/psffonts/fntcol16/voynich-16.psf +0 -0
  530. data/vendor/PDCursesMod/psffonts/fntcol16/wiggly-16.psf +0 -0
  531. data/vendor/PDCursesMod/psffonts/fntcol16/yugosla-14.psf +0 -0
  532. data/vendor/PDCursesMod/psffonts/lc12x20.psf +0 -0
  533. data/vendor/PDCursesMod/psffonts/makefile +2 -0
  534. data/vendor/PDCursesMod/psffonts/mappings/8859-3.TXT +285 -0
  535. data/vendor/PDCursesMod/psffonts/mappings/APL-ISO-IR-68.TXT +273 -0
  536. data/vendor/PDCursesMod/psffonts/mappings/ATARIST.TXT +320 -0
  537. data/vendor/PDCursesMod/psffonts/mappings/CP1006.TXT +302 -0
  538. data/vendor/PDCursesMod/psffonts/mappings/CP1250.TXT +274 -0
  539. data/vendor/PDCursesMod/psffonts/mappings/CP1251.TXT +274 -0
  540. data/vendor/PDCursesMod/psffonts/mappings/CP1252.TXT +274 -0
  541. data/vendor/PDCursesMod/psffonts/mappings/CP1253.TXT +274 -0
  542. data/vendor/PDCursesMod/psffonts/mappings/CP1254.TXT +274 -0
  543. data/vendor/PDCursesMod/psffonts/mappings/CP1255.TXT +274 -0
  544. data/vendor/PDCursesMod/psffonts/mappings/CP1256.TXT +274 -0
  545. data/vendor/PDCursesMod/psffonts/mappings/CP1257.TXT +274 -0
  546. data/vendor/PDCursesMod/psffonts/mappings/CP1258.TXT +274 -0
  547. data/vendor/PDCursesMod/psffonts/mappings/CP424.TXT +304 -0
  548. data/vendor/PDCursesMod/psffonts/mappings/CP437.TXT +274 -0
  549. data/vendor/PDCursesMod/psffonts/mappings/CP737.TXT +274 -0
  550. data/vendor/PDCursesMod/psffonts/mappings/CP775.TXT +275 -0
  551. data/vendor/PDCursesMod/psffonts/mappings/CP850.TXT +274 -0
  552. data/vendor/PDCursesMod/psffonts/mappings/CP851.TXT +276 -0
  553. data/vendor/PDCursesMod/psffonts/mappings/CP852.TXT +274 -0
  554. data/vendor/PDCursesMod/psffonts/mappings/CP855.TXT +275 -0
  555. data/vendor/PDCursesMod/psffonts/mappings/CP856.TXT +303 -0
  556. data/vendor/PDCursesMod/psffonts/mappings/CP857.TXT +275 -0
  557. data/vendor/PDCursesMod/psffonts/mappings/CP860.TXT +275 -0
  558. data/vendor/PDCursesMod/psffonts/mappings/CP861.TXT +275 -0
  559. data/vendor/PDCursesMod/psffonts/mappings/CP862.TXT +275 -0
  560. data/vendor/PDCursesMod/psffonts/mappings/CP863.TXT +275 -0
  561. data/vendor/PDCursesMod/psffonts/mappings/CP864.TXT +275 -0
  562. data/vendor/PDCursesMod/psffonts/mappings/CP865.TXT +275 -0
  563. data/vendor/PDCursesMod/psffonts/mappings/CP866.TXT +275 -0
  564. data/vendor/PDCursesMod/psffonts/mappings/CP869.TXT +275 -0
  565. data/vendor/PDCursesMod/psffonts/mappings/CP874.TXT +274 -0
  566. data/vendor/PDCursesMod/psffonts/mappings/CP932.TXT +7998 -0
  567. data/vendor/PDCursesMod/psffonts/mappings/CP936.TXT +22065 -0
  568. data/vendor/PDCursesMod/psffonts/mappings/CP949.TXT +17322 -0
  569. data/vendor/PDCursesMod/psffonts/mappings/CP950.TXT +13777 -0
  570. data/vendor/PDCursesMod/psffonts/mappings/IBMGRAPH.TXT +99 -0
  571. data/vendor/PDCursesMod/psffonts/mappings/KOI8-R.TXT +294 -0
  572. data/vendor/PDCursesMod/psffonts/mappings/KOI8-U.TXT +301 -0
  573. data/vendor/PDCursesMod/psffonts/mappings/KPS9566.TXT +17166 -0
  574. data/vendor/PDCursesMod/psffonts/mappings/KZ1048.TXT +294 -0
  575. data/vendor/PDCursesMod/psffonts/mappings/ReadMe.txt +20 -0
  576. data/vendor/PDCursesMod/psffonts/mappings/SGML.TXT +1041 -0
  577. data/vendor/PDCursesMod/psffonts/medieval2.psf +0 -0
  578. data/vendor/PDCursesMod/psffonts/vga11x19.psf +0 -0
  579. data/vendor/PDCursesMod/sdl1/Makefile +140 -0
  580. data/vendor/PDCursesMod/sdl1/README.md +200 -0
  581. data/vendor/PDCursesMod/sdl1/pdcclip.c +1 -0
  582. data/vendor/PDCursesMod/sdl1/pdcdisp.c +462 -0
  583. data/vendor/PDCursesMod/sdl1/pdcgetsc.c +30 -0
  584. data/vendor/PDCursesMod/sdl1/pdckbd.c +417 -0
  585. data/vendor/PDCursesMod/sdl1/pdcscrn.c +396 -0
  586. data/vendor/PDCursesMod/sdl1/pdcsdl.h +34 -0
  587. data/vendor/PDCursesMod/sdl1/pdcsetsc.c +99 -0
  588. data/vendor/PDCursesMod/sdl1/pdcutil.c +34 -0
  589. data/vendor/PDCursesMod/sdl1/sdltest.c +79 -0
  590. data/vendor/PDCursesMod/sdl2/CMakeLists.txt +76 -0
  591. data/vendor/PDCursesMod/sdl2/Makefile +207 -0
  592. data/vendor/PDCursesMod/sdl2/Makefile.vc +132 -0
  593. data/vendor/PDCursesMod/sdl2/README.md +215 -0
  594. data/vendor/PDCursesMod/sdl2/pdcclip.c +93 -0
  595. data/vendor/PDCursesMod/sdl2/pdcdisp.c +536 -0
  596. data/vendor/PDCursesMod/sdl2/pdcgetsc.c +30 -0
  597. data/vendor/PDCursesMod/sdl2/pdckbd.c +540 -0
  598. data/vendor/PDCursesMod/sdl2/pdcscrn.c +529 -0
  599. data/vendor/PDCursesMod/sdl2/pdcsdl.h +46 -0
  600. data/vendor/PDCursesMod/sdl2/pdcsetsc.c +99 -0
  601. data/vendor/PDCursesMod/sdl2/pdcutil.c +35 -0
  602. data/vendor/PDCursesMod/sdl2/sdltest.c +91 -0
  603. data/vendor/PDCursesMod/sdl2/versions.mif +2 -0
  604. data/vendor/PDCursesMod/term.h +48 -0
  605. data/vendor/PDCursesMod/tests/README.md +16 -0
  606. data/vendor/PDCursesMod/tests/brk_test.c +42 -0
  607. data/vendor/PDCursesMod/tests/del_test.c +95 -0
  608. data/vendor/PDCursesMod/tests/focus.c +53 -0
  609. data/vendor/PDCursesMod/tests/ins_del.c +108 -0
  610. data/vendor/PDCursesMod/tests/keytest.c +87 -0
  611. data/vendor/PDCursesMod/tests/naptest.c +43 -0
  612. data/vendor/PDCursesMod/tests/opaque.c +42 -0
  613. data/vendor/PDCursesMod/tests/restart.c +60 -0
  614. data/vendor/PDCursesMod/tests/ripoff.c +141 -0
  615. data/vendor/PDCursesMod/tests/show_col.c +55 -0
  616. data/vendor/PDCursesMod/tests/show_uni.c +163 -0
  617. data/vendor/PDCursesMod/tests/vt0.c +472 -0
  618. data/vendor/PDCursesMod/vt/CMakeLists.txt +35 -0
  619. data/vendor/PDCursesMod/vt/Makefile +204 -0
  620. data/vendor/PDCursesMod/vt/Makefile.bcc +101 -0
  621. data/vendor/PDCursesMod/vt/Makefile.dmc +313 -0
  622. data/vendor/PDCursesMod/vt/Makefile.vc +145 -0
  623. data/vendor/PDCursesMod/vt/Makefile.wcc +48 -0
  624. data/vendor/PDCursesMod/vt/README.md +82 -0
  625. data/vendor/PDCursesMod/vt/pdcclip.c +8 -0
  626. data/vendor/PDCursesMod/vt/pdcdisp.c +424 -0
  627. data/vendor/PDCursesMod/vt/pdckbd.c +603 -0
  628. data/vendor/PDCursesMod/vt/pdcscrn.c +492 -0
  629. data/vendor/PDCursesMod/vt/pdcsetsc.c +158 -0
  630. data/vendor/PDCursesMod/vt/pdcutil.c +85 -0
  631. data/vendor/PDCursesMod/vt/pdcvt.h +25 -0
  632. data/vendor/PDCursesMod/wincon/CMakeLists.txt +29 -0
  633. data/vendor/PDCursesMod/wincon/Makefile +190 -0
  634. data/vendor/PDCursesMod/wincon/Makefile.bcc +87 -0
  635. data/vendor/PDCursesMod/wincon/Makefile.dmc +275 -0
  636. data/vendor/PDCursesMod/wincon/Makefile.vc +132 -0
  637. data/vendor/PDCursesMod/wincon/Makefile.wcc +33 -0
  638. data/vendor/PDCursesMod/wincon/README.md +76 -0
  639. data/vendor/PDCursesMod/wincon/pdcclip.c +6 -0
  640. data/vendor/PDCursesMod/wincon/pdcdisp.c +408 -0
  641. data/vendor/PDCursesMod/wincon/pdcgetsc.c +42 -0
  642. data/vendor/PDCursesMod/wincon/pdckbd.c +778 -0
  643. data/vendor/PDCursesMod/wincon/pdcscrn.c +733 -0
  644. data/vendor/PDCursesMod/wincon/pdcsetsc.c +130 -0
  645. data/vendor/PDCursesMod/wincon/pdcutil.c +38 -0
  646. data/vendor/PDCursesMod/wincon/pdcwin.h +35 -0
  647. data/vendor/PDCursesMod/wingui/CMakeLists.txt +30 -0
  648. data/vendor/PDCursesMod/wingui/Makefile +186 -0
  649. data/vendor/PDCursesMod/wingui/Makefile.bcc +80 -0
  650. data/vendor/PDCursesMod/wingui/Makefile.dmc +314 -0
  651. data/vendor/PDCursesMod/wingui/Makefile.vc +144 -0
  652. data/vendor/PDCursesMod/wingui/Makefile.wcc +32 -0
  653. data/vendor/PDCursesMod/wingui/README.md +92 -0
  654. data/vendor/PDCursesMod/wingui/pdcclip.c +6 -0
  655. data/vendor/PDCursesMod/wingui/pdcdisp.c +576 -0
  656. data/vendor/PDCursesMod/wingui/pdckbd.c +89 -0
  657. data/vendor/PDCursesMod/wingui/pdcscrn.c +2235 -0
  658. data/vendor/PDCursesMod/wingui/pdcsetsc.c +124 -0
  659. data/vendor/PDCursesMod/wingui/pdcutil.c +44 -0
  660. data/vendor/PDCursesMod/wingui/pdcwin.h +85 -0
  661. data/vendor/PDCursesMod/x11/Makefile.in +1047 -0
  662. data/vendor/PDCursesMod/x11/README.md +227 -0
  663. data/vendor/PDCursesMod/x11/aclocal.m4 +553 -0
  664. data/vendor/PDCursesMod/x11/config.guess +1774 -0
  665. data/vendor/PDCursesMod/x11/config.h.in +37 -0
  666. data/vendor/PDCursesMod/x11/config.sub +1907 -0
  667. data/vendor/PDCursesMod/x11/configure +5944 -0
  668. data/vendor/PDCursesMod/x11/configure.ac +175 -0
  669. data/vendor/PDCursesMod/x11/pdcclip.c +254 -0
  670. data/vendor/PDCursesMod/x11/pdcdisp.c +418 -0
  671. data/vendor/PDCursesMod/x11/pdcgetsc.c +28 -0
  672. data/vendor/PDCursesMod/x11/pdckbd.c +743 -0
  673. data/vendor/PDCursesMod/x11/pdcscrn.c +848 -0
  674. data/vendor/PDCursesMod/x11/pdcsetsc.c +108 -0
  675. data/vendor/PDCursesMod/x11/pdcutil.c +41 -0
  676. data/vendor/PDCursesMod/x11/pdcx11.h +82 -0
  677. data/vendor/PDCursesMod/x11/sb.c +331 -0
  678. data/vendor/PDCursesMod/x11/scrlbox.c +348 -0
  679. data/vendor/PDCursesMod/x11/scrlbox.h +47 -0
  680. data/vendor/PDCursesMod/x11/xcurses-config.in +81 -0
  681. data/vendor/PDCursesMod/x11new/Makefile +151 -0
  682. data/vendor/PDCursesMod/x11new/README.md +63 -0
  683. data/vendor/PDCursesMod/x11new/pdcclip.c +221 -0
  684. data/vendor/PDCursesMod/x11new/pdcdisp.c +195 -0
  685. data/vendor/PDCursesMod/x11new/pdcgetsc.c +27 -0
  686. data/vendor/PDCursesMod/x11new/pdckbd.c +722 -0
  687. data/vendor/PDCursesMod/x11new/pdcscrn.c +277 -0
  688. data/vendor/PDCursesMod/x11new/pdcsetsc.c +90 -0
  689. data/vendor/PDCursesMod/x11new/pdcutil.c +38 -0
  690. data/vendor/PDCursesMod/x11new/pdcx11.h +16 -0
  691. metadata +692 -246
  692. data/vendor/PDCurses/.gitignore +0 -47
  693. data/vendor/PDCurses/.travis.yml +0 -49
  694. data/vendor/PDCurses/CMakeLists.txt +0 -68
  695. data/vendor/PDCurses/HISTORY.md +0 -2036
  696. data/vendor/PDCurses/IMPLEMNT.md +0 -327
  697. data/vendor/PDCurses/Makefile +0 -27
  698. data/vendor/PDCurses/README.md +0 -77
  699. data/vendor/PDCurses/acs_defs.h +0 -265
  700. data/vendor/PDCurses/appveyor.yml +0 -218
  701. data/vendor/PDCurses/cmake/README.md +0 -71
  702. data/vendor/PDCurses/cmake/build_dependencies.cmake +0 -178
  703. data/vendor/PDCurses/cmake/build_options.cmake +0 -25
  704. data/vendor/PDCurses/cmake/dll_version.cmake +0 -26
  705. data/vendor/PDCurses/cmake/gen_config_header.cmake +0 -43
  706. data/vendor/PDCurses/cmake/get_version.cmake +0 -17
  707. data/vendor/PDCurses/cmake/project_common.cmake +0 -121
  708. data/vendor/PDCurses/cmake/sdl2_ttf/CMakeLists.txt +0 -83
  709. data/vendor/PDCurses/cmake/version.in.cmake +0 -73
  710. data/vendor/PDCurses/cmake/watcom_open_dos16_toolchain.cmake +0 -96
  711. data/vendor/PDCurses/cmake/watcom_open_dos32_toolchain.cmake +0 -106
  712. data/vendor/PDCurses/cmake/watcom_open_os2v2_toolchain.cmake +0 -105
  713. data/vendor/PDCurses/curses.h +0 -1846
  714. data/vendor/PDCurses/curspriv.h +0 -134
  715. data/vendor/PDCurses/demos/firework.c +0 -144
  716. data/vendor/PDCurses/demos/newtest.c +0 -581
  717. data/vendor/PDCurses/demos/ozdemo.c +0 -447
  718. data/vendor/PDCurses/demos/ptest.c +0 -283
  719. data/vendor/PDCurses/demos/rain.c +0 -157
  720. data/vendor/PDCurses/demos/testcurs.c +0 -1607
  721. data/vendor/PDCurses/demos/tui.c +0 -1048
  722. data/vendor/PDCurses/demos/tui.h +0 -65
  723. data/vendor/PDCurses/demos/tuidemo.c +0 -233
  724. data/vendor/PDCurses/demos/version.c +0 -61
  725. data/vendor/PDCurses/demos/worm.c +0 -432
  726. data/vendor/PDCurses/demos/xmas.c +0 -955
  727. data/vendor/PDCurses/dos/CMakeLists.txt +0 -47
  728. data/vendor/PDCurses/dos/Makefile +0 -105
  729. data/vendor/PDCurses/dos/Makefile.bcc +0 -83
  730. data/vendor/PDCurses/dos/Makefile.dmc +0 -257
  731. data/vendor/PDCurses/dos/Makefile.msc +0 -113
  732. data/vendor/PDCurses/dos/Makefile.wcc +0 -107
  733. data/vendor/PDCurses/dos/README.md +0 -51
  734. data/vendor/PDCurses/dos/bccdos.lrf +0 -9
  735. data/vendor/PDCurses/dos/mscdos.lrf +0 -50
  736. data/vendor/PDCurses/dos/pdcclip.c +0 -132
  737. data/vendor/PDCurses/dos/pdcdisp.c +0 -135
  738. data/vendor/PDCurses/dos/pdcdos.h +0 -194
  739. data/vendor/PDCurses/dos/pdcgetsc.c +0 -98
  740. data/vendor/PDCurses/dos/pdckbd.c +0 -513
  741. data/vendor/PDCurses/dos/pdcscrn.c +0 -785
  742. data/vendor/PDCurses/dos/pdcsetsc.c +0 -101
  743. data/vendor/PDCurses/dos/pdcutil.c +0 -212
  744. data/vendor/PDCurses/libobjs.mif +0 -26
  745. data/vendor/PDCurses/makedist.mif +0 -20
  746. data/vendor/PDCurses/man/Makefile +0 -37
  747. data/vendor/PDCurses/man/README.md +0 -21
  748. data/vendor/PDCurses/man/intro.md +0 -361
  749. data/vendor/PDCurses/man/manext.c +0 -119
  750. data/vendor/PDCurses/man/sdl.md +0 -152
  751. data/vendor/PDCurses/man/sdl2.md +0 -58
  752. data/vendor/PDCurses/man/x11.md +0 -407
  753. data/vendor/PDCurses/ncurses/CMakeLists.txt +0 -66
  754. data/vendor/PDCurses/ncurses/makefile +0 -29
  755. data/vendor/PDCurses/os2/Makefile +0 -132
  756. data/vendor/PDCurses/os2/Makefile.bcc +0 -90
  757. data/vendor/PDCurses/os2/Makefile.wcc +0 -43
  758. data/vendor/PDCurses/os2/iccos2.lrf +0 -50
  759. data/vendor/PDCurses/os2/iccos2.mak +0 -256
  760. data/vendor/PDCurses/os2/pdcclip.c +0 -188
  761. data/vendor/PDCurses/os2/pdcdisp.c +0 -93
  762. data/vendor/PDCurses/os2/pdcgetsc.c +0 -89
  763. data/vendor/PDCurses/os2/pdckbd.c +0 -521
  764. data/vendor/PDCurses/os2/pdcos2.h +0 -55
  765. data/vendor/PDCurses/os2/pdcscrn.c +0 -449
  766. data/vendor/PDCurses/os2/pdcsetsc.c +0 -112
  767. data/vendor/PDCurses/os2/pdcutil.c +0 -52
  768. data/vendor/PDCurses/panel.h +0 -56
  769. data/vendor/PDCurses/pdcurses/addch.c +0 -693
  770. data/vendor/PDCurses/pdcurses/addchstr.c +0 -245
  771. data/vendor/PDCurses/pdcurses/addstr.c +0 -240
  772. data/vendor/PDCurses/pdcurses/attr.c +0 -359
  773. data/vendor/PDCurses/pdcurses/beep.c +0 -68
  774. data/vendor/PDCurses/pdcurses/bkgd.c +0 -223
  775. data/vendor/PDCurses/pdcurses/border.c +0 -411
  776. data/vendor/PDCurses/pdcurses/clear.c +0 -159
  777. data/vendor/PDCurses/pdcurses/color.c +0 -298
  778. data/vendor/PDCurses/pdcurses/debug.c +0 -109
  779. data/vendor/PDCurses/pdcurses/delch.c +0 -96
  780. data/vendor/PDCurses/pdcurses/deleteln.c +0 -211
  781. data/vendor/PDCurses/pdcurses/deprec.c +0 -27
  782. data/vendor/PDCurses/pdcurses/getch.c +0 -417
  783. data/vendor/PDCurses/pdcurses/getstr.c +0 -474
  784. data/vendor/PDCurses/pdcurses/getyx.c +0 -139
  785. data/vendor/PDCurses/pdcurses/inch.c +0 -127
  786. data/vendor/PDCurses/pdcurses/inchstr.c +0 -214
  787. data/vendor/PDCurses/pdcurses/initscr.c +0 -367
  788. data/vendor/PDCurses/pdcurses/inopts.c +0 -324
  789. data/vendor/PDCurses/pdcurses/insch.c +0 -271
  790. data/vendor/PDCurses/pdcurses/insstr.c +0 -264
  791. data/vendor/PDCurses/pdcurses/instr.c +0 -246
  792. data/vendor/PDCurses/pdcurses/kernel.c +0 -259
  793. data/vendor/PDCurses/pdcurses/keyname.c +0 -157
  794. data/vendor/PDCurses/pdcurses/mouse.c +0 -438
  795. data/vendor/PDCurses/pdcurses/move.c +0 -57
  796. data/vendor/PDCurses/pdcurses/outopts.c +0 -159
  797. data/vendor/PDCurses/pdcurses/overlay.c +0 -214
  798. data/vendor/PDCurses/pdcurses/pad.c +0 -260
  799. data/vendor/PDCurses/pdcurses/panel.c +0 -633
  800. data/vendor/PDCurses/pdcurses/printw.c +0 -126
  801. data/vendor/PDCurses/pdcurses/refresh.c +0 -279
  802. data/vendor/PDCurses/pdcurses/scanw.c +0 -578
  803. data/vendor/PDCurses/pdcurses/scr_dump.c +0 -213
  804. data/vendor/PDCurses/pdcurses/scroll.c +0 -101
  805. data/vendor/PDCurses/pdcurses/slk.c +0 -591
  806. data/vendor/PDCurses/pdcurses/termattr.c +0 -182
  807. data/vendor/PDCurses/pdcurses/terminfo.c +0 -217
  808. data/vendor/PDCurses/pdcurses/touch.c +0 -163
  809. data/vendor/PDCurses/pdcurses/util.c +0 -312
  810. data/vendor/PDCurses/pdcurses/window.c +0 -569
  811. data/vendor/PDCurses/sdl1/Makefile +0 -129
  812. data/vendor/PDCurses/sdl1/Makefile.mng +0 -110
  813. data/vendor/PDCurses/sdl1/README.md +0 -31
  814. data/vendor/PDCurses/sdl1/deffont.h +0 -385
  815. data/vendor/PDCurses/sdl1/deficon.h +0 -23
  816. data/vendor/PDCurses/sdl1/pdcclip.c +0 -131
  817. data/vendor/PDCurses/sdl1/pdcdisp.c +0 -373
  818. data/vendor/PDCurses/sdl1/pdcgetsc.c +0 -30
  819. data/vendor/PDCurses/sdl1/pdckbd.c +0 -405
  820. data/vendor/PDCurses/sdl1/pdcscrn.c +0 -414
  821. data/vendor/PDCurses/sdl1/pdcsdl.h +0 -31
  822. data/vendor/PDCurses/sdl1/pdcsetsc.c +0 -64
  823. data/vendor/PDCurses/sdl1/pdcutil.c +0 -40
  824. data/vendor/PDCurses/sdl1/sdltest.c +0 -79
  825. data/vendor/PDCurses/sdl2/CMakeLists.txt +0 -76
  826. data/vendor/PDCurses/sdl2/Makefile +0 -135
  827. data/vendor/PDCurses/sdl2/Makefile.vc +0 -164
  828. data/vendor/PDCurses/sdl2/README.md +0 -34
  829. data/vendor/PDCurses/sdl2/deffont.h +0 -385
  830. data/vendor/PDCurses/sdl2/deficon.h +0 -23
  831. data/vendor/PDCurses/sdl2/pdcclip.c +0 -93
  832. data/vendor/PDCurses/sdl2/pdcdisp.c +0 -534
  833. data/vendor/PDCurses/sdl2/pdcgetsc.c +0 -30
  834. data/vendor/PDCurses/sdl2/pdckbd.c +0 -480
  835. data/vendor/PDCurses/sdl2/pdcscrn.c +0 -443
  836. data/vendor/PDCurses/sdl2/pdcsdl.h +0 -33
  837. data/vendor/PDCurses/sdl2/pdcsetsc.c +0 -67
  838. data/vendor/PDCurses/sdl2/pdcutil.c +0 -39
  839. data/vendor/PDCurses/sdl2/sdltest.c +0 -81
  840. data/vendor/PDCurses/term.h +0 -48
  841. data/vendor/PDCurses/version.mif +0 -7
  842. data/vendor/PDCurses/vt/CMakeLists.txt +0 -28
  843. data/vendor/PDCurses/vt/Makefile +0 -135
  844. data/vendor/PDCurses/vt/Makefile.bcc +0 -111
  845. data/vendor/PDCurses/vt/Makefile.dmc +0 -258
  846. data/vendor/PDCurses/vt/Makefile.vc +0 -144
  847. data/vendor/PDCurses/vt/Makefile.wcc +0 -107
  848. data/vendor/PDCurses/vt/README.md +0 -64
  849. data/vendor/PDCurses/vt/pdcclip.c +0 -20
  850. data/vendor/PDCurses/vt/pdcdisp.c +0 -284
  851. data/vendor/PDCurses/vt/pdckbd.c +0 -394
  852. data/vendor/PDCurses/vt/pdcscrn.c +0 -434
  853. data/vendor/PDCurses/vt/pdcsetsc.c +0 -45
  854. data/vendor/PDCurses/vt/pdcutil.c +0 -43
  855. data/vendor/PDCurses/vt/pdcvt.h +0 -16
  856. data/vendor/PDCurses/watcom.mif +0 -68
  857. data/vendor/PDCurses/wincon/CMakeLists.txt +0 -27
  858. data/vendor/PDCurses/wincon/Makefile.bcc +0 -88
  859. data/vendor/PDCurses/wincon/Makefile.dmc +0 -256
  860. data/vendor/PDCurses/wincon/Makefile.lcc +0 -273
  861. data/vendor/PDCurses/wincon/Makefile.mng +0 -176
  862. data/vendor/PDCurses/wincon/Makefile.vc +0 -144
  863. data/vendor/PDCurses/wincon/Makefile.wcc +0 -51
  864. data/vendor/PDCurses/wincon/README.md +0 -85
  865. data/vendor/PDCurses/wincon/pdcclip.c +0 -174
  866. data/vendor/PDCurses/wincon/pdcdisp.c +0 -143
  867. data/vendor/PDCurses/wincon/pdcgetsc.c +0 -55
  868. data/vendor/PDCurses/wincon/pdckbd.c +0 -786
  869. data/vendor/PDCurses/wincon/pdcscrn.c +0 -717
  870. data/vendor/PDCurses/wincon/pdcsetsc.c +0 -91
  871. data/vendor/PDCurses/wincon/pdcurses.ico +0 -0
  872. data/vendor/PDCurses/wincon/pdcurses.rc +0 -28
  873. data/vendor/PDCurses/wincon/pdcutil.c +0 -41
  874. data/vendor/PDCurses/wincon/pdcwin.h +0 -31
  875. data/vendor/PDCurses/wingui/CMakeLists.txt +0 -27
  876. data/vendor/PDCurses/wingui/Makefile.bcc +0 -85
  877. data/vendor/PDCurses/wingui/Makefile.dmc +0 -259
  878. data/vendor/PDCurses/wingui/Makefile.lcc +0 -273
  879. data/vendor/PDCurses/wingui/Makefile.mng +0 -171
  880. data/vendor/PDCurses/wingui/Makefile.vc +0 -144
  881. data/vendor/PDCurses/wingui/Makefile.wcc +0 -51
  882. data/vendor/PDCurses/wingui/README.md +0 -93
  883. data/vendor/PDCurses/wingui/pdcclip.c +0 -174
  884. data/vendor/PDCurses/wingui/pdcdisp.c +0 -718
  885. data/vendor/PDCurses/wingui/pdckbd.c +0 -143
  886. data/vendor/PDCurses/wingui/pdcscrn.c +0 -2797
  887. data/vendor/PDCurses/wingui/pdcsetsc.c +0 -89
  888. data/vendor/PDCurses/wingui/pdcurses.ico +0 -0
  889. data/vendor/PDCurses/wingui/pdcurses.rc +0 -28
  890. data/vendor/PDCurses/wingui/pdcutil.c +0 -61
  891. data/vendor/PDCurses/wingui/pdcwin.h +0 -122
  892. data/vendor/PDCurses/x11/Makefile.in +0 -754
  893. data/vendor/PDCurses/x11/PDCurses.spec +0 -82
  894. data/vendor/PDCurses/x11/README.md +0 -62
  895. data/vendor/PDCurses/x11/ScrollBox.c +0 -319
  896. data/vendor/PDCurses/x11/ScrollBox.h +0 -51
  897. data/vendor/PDCurses/x11/ScrollBoxP.h +0 -70
  898. data/vendor/PDCurses/x11/aclocal.m4 +0 -994
  899. data/vendor/PDCurses/x11/big_icon.xbm +0 -46
  900. data/vendor/PDCurses/x11/compose.h +0 -201
  901. data/vendor/PDCurses/x11/config.guess +0 -1500
  902. data/vendor/PDCurses/x11/config.h.in +0 -100
  903. data/vendor/PDCurses/x11/config.sub +0 -1616
  904. data/vendor/PDCurses/x11/configure +0 -6700
  905. data/vendor/PDCurses/x11/configure.ac +0 -295
  906. data/vendor/PDCurses/x11/debian/changelog +0 -6
  907. data/vendor/PDCurses/x11/debian/compat +0 -1
  908. data/vendor/PDCurses/x11/debian/control +0 -11
  909. data/vendor/PDCurses/x11/debian/copyright +0 -27
  910. data/vendor/PDCurses/x11/debian/rules +0 -98
  911. data/vendor/PDCurses/x11/little_icon.xbm +0 -14
  912. data/vendor/PDCurses/x11/ncurses_cfg.h +0 -45
  913. data/vendor/PDCurses/x11/pdcclip.c +0 -173
  914. data/vendor/PDCurses/x11/pdcdisp.c +0 -85
  915. data/vendor/PDCurses/x11/pdcgetsc.c +0 -28
  916. data/vendor/PDCurses/x11/pdckbd.c +0 -104
  917. data/vendor/PDCurses/x11/pdcscrn.c +0 -258
  918. data/vendor/PDCurses/x11/pdcsetsc.c +0 -95
  919. data/vendor/PDCurses/x11/pdcutil.c +0 -52
  920. data/vendor/PDCurses/x11/pdcx11.c +0 -316
  921. data/vendor/PDCurses/x11/pdcx11.h +0 -191
  922. data/vendor/PDCurses/x11/sb.c +0 -155
  923. data/vendor/PDCurses/x11/x11.c +0 -3686
  924. data/vendor/PDCurses/x11/xcurses-config.in +0 -81
  925. /data/vendor/{PDCurses → PDCursesMod}/cmake/make_uninstall.cmake +0 -0
  926. /data/vendor/{PDCurses → PDCursesMod}/cmake/resource.in.cmake +0 -0
  927. /data/vendor/{PDCurses → PDCursesMod}/cmake/target_arch.cmake +0 -0
  928. /data/vendor/{PDCurses → PDCursesMod}/demos/README.md +0 -0
  929. /data/vendor/{PDCurses → PDCursesMod}/ncurses/README.md +0 -0
  930. /data/vendor/{PDCurses → PDCursesMod}/os2/CMakeLists.txt +0 -0
  931. /data/vendor/{PDCurses → PDCursesMod}/os2/README.md +0 -0
  932. /data/vendor/{PDCurses → PDCursesMod}/pdcurses/README.md +0 -0
  933. /data/vendor/{PDCurses → PDCursesMod}/vt/pdcgetsc.c +0 -0
  934. /data/vendor/{PDCurses → PDCursesMod}/wingui/pdcgetsc.c +0 -0
  935. /data/vendor/{PDCurses → PDCursesMod}/x11/install-sh +0 -0
@@ -0,0 +1,3304 @@
1
+ Definitions and Variables (curses.h)
2
+ ====================================
3
+
4
+ Define before inclusion (only those needed):
5
+
6
+ Macro | Meaning / value
7
+ :--------------|---------------------------------------------------
8
+ XCURSES | if building / built for X11
9
+ PDC_RGB | RGB color (Red = 1, Green = 2, Blue = 4) vs. BGR
10
+ PDC_WIDE | if building / built with wide-character support
11
+ PDC_FORCE_UTF8 | if forcing use of UTF8 (implies PDC_WIDE)
12
+ PDC_DLL_BUILD | if building / built as a Windows DLL
13
+ PDC_NCMOUSE | use ncurses mouse API vs. traditional PDCurses*
14
+
15
+ Defined by this header:
16
+
17
+ Macro | Meaning / value
18
+ :--------------|---------------------------------------------------
19
+ PDCURSES | PDCurses-only features are available
20
+ PDCURSESMOD | PDCursesMod-only features are available
21
+ PDC_BUILD | API build version
22
+ PDC_VER_MAJOR | major version number
23
+ PDC_VER_MINOR | minor version number
24
+ PDC_VER_CHANGE | version change number
25
+ PDC_VER_YEAR | year of version
26
+ PDC_VER_MONTH | month of version
27
+ PDC_VER_DAY | day of month of version
28
+ PDC_VERDOT | version string
29
+
30
+
31
+
32
+ --------------------------------------------------------------------------
33
+
34
+
35
+ Text Attributes
36
+ ===============
37
+
38
+ All chtypes have bits devoted to character data, attribute data, and color
39
+ pair data. There are four configurations supported :
40
+
41
+ ### Default, 64-bit chtype, both wide- and 8-bit character builds:
42
+
43
+ color pair | unused | modifiers | character eg 'a'
44
+ --------------|--------|-----------------------|--------------------
45
+ 63 62 .. 45 44|43 .. 39|37 36 35 .. 22 21|20 19 18 .. 3 2 1 0
46
+
47
+ 21 character bits (0-20), enough for full Unicode coverage
48
+ 17 attribute bits (21-37)
49
+ 6 currently unused bits (38-43)
50
+ 20 color pair bits (44-63), enough for 1048576 color pairs
51
+
52
+ As of 2025 Dec 30, WinGUI, VT, X11 and X11new, Linux framebuffer,
53
+ DOSVGA, OpenGL, and SDLn can have COLOR_PAIRS = 1048576. Plan9 and
54
+ WinCon may join them. DOS and OS/2 lack full-color capability.
55
+
56
+ ### 32-bit chtypes with wide characters (CHTYPE_32 and PDC_WIDE are #defined):
57
+
58
+ color pair | modifiers | character eg 'a'
59
+ -----------------|-----------------------|--------------------
60
+ 31 30 29 .. 25 24|23 22 21 20 19 18 17 16|15 14 13 .. 2 1 0
61
+
62
+ 16 character bits (0-16), enough for BMP (Unicode below 64K)
63
+ 8 attribute bits (16-23)
64
+ 8 color pair bits (24-31), for 256 color pairs
65
+
66
+ ### 32-bit chtypes with narrow characters (CHTYPE_32 #defined, PDC_WIDE is not):
67
+
68
+ color pair | modifiers |character
69
+ --------------------|---------------------|----------------
70
+ 31 30 29 .. 22 21 20|19 18 17 16 .. 10 9 8|7 6 5 4 3 2 1 0
71
+
72
+ 8 character bits (0-7); only 8-bit charsets will work
73
+ 12 attribute bits (8-19)
74
+ 12 color pair bits (20-31), for 4096 pairs
75
+
76
+ ### 16-bit chtypes (CHTYPE_16 #defined, must be narrow characters) :
77
+
78
+ color pair |modifs |character
79
+ --------------|-------|---------------
80
+ 15 14 13 12 11|10 9 8 |7 6 5 4 3 2 1 0
81
+
82
+ 8 character bits (0-7); only 8-bit charsets will work
83
+ 3 attribute bits (8-10) : bold, reverse, blink
84
+ 5 color pair bits (11-15), for 32 pairs
85
+
86
+ This is normally used only in very low-memory situations.
87
+
88
+
89
+
90
+ --------------------------------------------------------------------------
91
+
92
+ Functions
93
+ =========
94
+
95
+ addch
96
+ -----
97
+
98
+ ### Synopsis
99
+
100
+ int addch(const chtype ch);
101
+ int waddch(WINDOW *win, const chtype ch);
102
+ int mvaddch(int y, int x, const chtype ch);
103
+ int mvwaddch(WINDOW *win, int y, int x, const chtype ch);
104
+ int echochar(const chtype ch);
105
+ int wechochar(WINDOW *win, const chtype ch);
106
+
107
+ int addrawch(chtype ch);
108
+ int waddrawch(WINDOW *win, chtype ch);
109
+ int mvaddrawch(int y, int x, chtype ch);
110
+ int mvwaddrawch(WINDOW *win, int y, int x, chtype ch);
111
+
112
+ int add_wch(const cchar_t *wch);
113
+ int wadd_wch(WINDOW *win, const cchar_t *wch);
114
+ int mvadd_wch(int y, int x, const cchar_t *wch);
115
+ int mvwadd_wch(WINDOW *win, int y, int x, const cchar_t *wch);
116
+ int echo_wchar(const cchar_t *wch);
117
+ int wecho_wchar(WINDOW *win, const cchar_t *wch);
118
+
119
+ ### Description
120
+
121
+ addch() adds the chtype ch to the default window (stdscr) at the
122
+ current cursor position, and advances the cursor. Note that chtypes
123
+ can convey both text (a single character) and attributes, including a
124
+ color pair. add_wch() is the wide-character version of this function,
125
+ taking a pointer to a cchar_t instead of a chtype.
126
+
127
+ waddch() is like addch(), but also lets you specify the window. (This
128
+ is in fact the core output routine.) wadd_wch() is the wide version.
129
+
130
+ mvaddch() moves the cursor to the specified (y, x) position, and adds
131
+ ch to stdscr. mvadd_wch() is the wide version.
132
+
133
+ mvwaddch() moves the cursor to the specified position and adds ch to
134
+ the specified window. mvwadd_wch() is the wide version.
135
+
136
+ echochar() adds ch to stdscr at the current cursor position and calls
137
+ refresh(). echo_wchar() is the wide version.
138
+
139
+ wechochar() adds ch to the specified window and calls wrefresh().
140
+ wecho_wchar() is the wide version.
141
+
142
+ addrawch(), waddrawch(), mvaddrawch() and mvwaddrawch() are PDCurses-
143
+ specific wrappers for addch() etc. that disable the translation of
144
+ control characters.
145
+
146
+ The following applies to all these functions:
147
+
148
+ If the cursor moves on to the right margin, an automatic newline is
149
+ performed. If scrollok is enabled, and a character is added to the
150
+ bottom right corner of the window, the scrolling region will be
151
+ scrolled up one line. If scrolling is not allowed, ERR will be
152
+ returned.
153
+
154
+ If ch is a tab, newline, or backspace, the cursor will be moved
155
+ appropriately within the window. If ch is a newline, the clrtoeol
156
+ routine is called before the cursor is moved to the beginning of the
157
+ next line. If newline mapping is off, the cursor will be moved to
158
+ the next line, but the x coordinate will be unchanged. If ch is a
159
+ tab the cursor is moved to the next tab position within the window.
160
+ If ch is another control character, it will be drawn in the ^X
161
+ notation. Calling the inch() routine after adding a control
162
+ character returns the representation of the control character, not
163
+ the control character.
164
+
165
+ Video attributes can be combined with a character by ORing them into
166
+ the parameter. Text, including attributes, can be copied from one
167
+ place to another by using inch() and addch().
168
+
169
+ Note that in PDCurses, for now, a cchar_t and a chtype are the same.
170
+ The text field is 16 bits wide, and is treated as Unicode (UCS-2)
171
+ when PDCurses is built with wide-character support (define PDC_WIDE).
172
+ So, in functions that take a chtype, like addch(), both the wide and
173
+ narrow versions will handle Unicode. But for portability, you should
174
+ use the wide functions.
175
+
176
+ ### Return Value
177
+
178
+ All functions return OK on success and ERR on error.
179
+
180
+ ### Portability
181
+ Function | X/Open | ncurses | NetBSD
182
+ :---------------------|:------:|:-------:|:------:
183
+ addch | Y | Y | Y
184
+ waddch | Y | Y | Y
185
+ mvaddch | Y | Y | Y
186
+ mvwaddch | Y | Y | Y
187
+ echochar | Y | Y | Y
188
+ wechochar | Y | Y | Y
189
+ add_wch | Y | Y | Y
190
+ wadd_wch | Y | Y | Y
191
+ mvadd_wch | Y | Y | Y
192
+ mvwadd_wch | Y | Y | Y
193
+ echo_wchar | Y | Y | Y
194
+ wecho_wchar | Y | Y | Y
195
+ addrawch | - | - | -
196
+ waddrawch | - | - | -
197
+ mvaddrawch | - | - | -
198
+ mvwaddrawch | - | - | -
199
+
200
+
201
+
202
+ --------------------------------------------------------------------------
203
+
204
+
205
+ addchstr
206
+ --------
207
+
208
+ ### Synopsis
209
+
210
+ int addchstr(const chtype *ch);
211
+ int addchnstr(const chtype *ch, int n);
212
+ int waddchstr(WINDOW *win, const chtype *ch);
213
+ int waddchnstr(WINDOW *win, const chtype *ch, int n);
214
+ int mvaddchstr(int y, int x, const chtype *ch);
215
+ int mvaddchnstr(int y, int x, const chtype *ch, int n);
216
+ int mvwaddchstr(WINDOW *, int y, int x, const chtype *ch);
217
+ int mvwaddchnstr(WINDOW *, int y, int x, const chtype *ch, int n);
218
+
219
+ int add_wchstr(const cchar_t *wch);
220
+ int add_wchnstr(const cchar_t *wch, int n);
221
+ int wadd_wchstr(WINDOW *win, const cchar_t *wch);
222
+ int wadd_wchnstr(WINDOW *win, const cchar_t *wch, int n);
223
+ int mvadd_wchstr(int y, int x, const cchar_t *wch);
224
+ int mvadd_wchnstr(int y, int x, const cchar_t *wch, int n);
225
+ int mvwadd_wchstr(WINDOW *win, int y, int x, const cchar_t *wch);
226
+ int mvwadd_wchnstr(WINDOW *win, int y, int x, const cchar_t *wch,
227
+ int n);
228
+
229
+ ### Description
230
+
231
+ These routines write a chtype or cchar_t string directly into the
232
+ window structure, starting at the current or specified position. The
233
+ four routines with n as the last argument copy at most n elements,
234
+ but no more than will fit on the line. If n == -1 then the whole
235
+ string is copied, up to the maximum number that will fit on the line.
236
+
237
+ The cursor position is not advanced. These routines do not check for
238
+ newline or other special characters, nor does any line wrapping
239
+ occur.
240
+
241
+ ### Return Value
242
+
243
+ All functions return OK or ERR.
244
+
245
+ ### Portability
246
+ Function | X/Open | ncurses | NetBSD
247
+ :---------------------|:------:|:-------:|:------:
248
+ addchstr | Y | Y | Y
249
+ waddchstr | Y | Y | Y
250
+ mvaddchstr | Y | Y | Y
251
+ mvwaddchstr | Y | Y | Y
252
+ addchnstr | Y | Y | Y
253
+ waddchnstr | Y | Y | Y
254
+ mvaddchnstr | Y | Y | Y
255
+ mvwaddchnstr | Y | Y | Y
256
+ add_wchstr | Y | Y | Y
257
+ wadd_wchstr | Y | Y | Y
258
+ mvadd_wchstr | Y | Y | Y
259
+ mvwadd_wchstr | Y | Y | Y
260
+ add_wchnstr | Y | Y | Y
261
+ wadd_wchnstr | Y | Y | Y
262
+ mvadd_wchnstr | Y | Y | Y
263
+ mvwadd_wchnstr | Y | Y | Y
264
+
265
+
266
+
267
+ --------------------------------------------------------------------------
268
+
269
+
270
+ addstr
271
+ ------
272
+
273
+ ### Synopsis
274
+
275
+ int addstr(const char *str);
276
+ int addnstr(const char *str, int n);
277
+ int waddstr(WINDOW *win, const char *str);
278
+ int waddnstr(WINDOW *win, const char *str, int n);
279
+ int mvaddstr(int y, int x, const char *str);
280
+ int mvaddnstr(int y, int x, const char *str, int n);
281
+ int mvwaddstr(WINDOW *win, int y, int x, const char *str);
282
+ int mvwaddnstr(WINDOW *win, int y, int x, const char *str, int n);
283
+
284
+ int addwstr(const wchar_t *wstr);
285
+ int addnwstr(const wchar_t *wstr, int n);
286
+ int waddwstr(WINDOW *win, const wchar_t *wstr);
287
+ int waddnwstr(WINDOW *win, const wchar_t *wstr, int n);
288
+ int mvaddwstr(int y, int x, const wchar_t *wstr);
289
+ int mvaddnwstr(int y, int x, const wchar_t *wstr, int n);
290
+ int mvwaddwstr(WINDOW *win, int y, int x, const wchar_t *wstr);
291
+ int mvwaddnwstr(WINDOW *win, int y, int x, const wchar_t *wstr, int n);
292
+
293
+ ### Description
294
+
295
+ These routines write all the characters of the null-terminated string
296
+ str or wide-character string wstr to the given window. The
297
+ functionality is similar to calling waddch() once for each character
298
+ in the string; except that, when PDCurses is built with wide-
299
+ character support enabled, the narrow-character functions treat the
300
+ string as a multibyte string in the current locale, and convert it.
301
+ The routines with n as the last argument write at most n characters;
302
+ if n is negative, then the entire string will be added.
303
+
304
+ ### Return Value
305
+
306
+ All functions return OK or ERR.
307
+
308
+ ### Portability
309
+ Function | X/Open | ncurses | NetBSD
310
+ :---------------------|:------:|:-------:|:------:
311
+ addstr | Y | Y | Y
312
+ waddstr | Y | Y | Y
313
+ mvaddstr | Y | Y | Y
314
+ mvwaddstr | Y | Y | Y
315
+ addnstr | Y | Y | Y
316
+ waddnstr | Y | Y | Y
317
+ mvaddnstr | Y | Y | Y
318
+ mvwaddnstr | Y | Y | Y
319
+ addwstr | Y | Y | Y
320
+ waddwstr | Y | Y | Y
321
+ mvaddwstr | Y | Y | Y
322
+ mvwaddwstr | Y | Y | Y
323
+ addnwstr | Y | Y | Y
324
+ waddnwstr | Y | Y | Y
325
+ mvaddnwstr | Y | Y | Y
326
+ mvwaddnwstr | Y | Y | Y
327
+
328
+
329
+
330
+ --------------------------------------------------------------------------
331
+
332
+
333
+ attr
334
+ ----
335
+
336
+ ### Synopsis
337
+
338
+ int attroff(chtype attrs);
339
+ int wattroff(WINDOW *win, chtype attrs);
340
+ int attron(chtype attrs);
341
+ int wattron(WINDOW *win, chtype attrs);
342
+ int attrset(chtype attrs);
343
+ int wattrset(WINDOW *win, chtype attrs);
344
+ int standend(void);
345
+ int wstandend(WINDOW *win);
346
+ int standout(void);
347
+ int wstandout(WINDOW *win);
348
+
349
+ int color_set(short color_pair, void *opts);
350
+ int wcolor_set(WINDOW *win, short color_pair, void *opts);
351
+
352
+ int attr_get(attr_t *attrs, short *color_pair, void *opts);
353
+ int attr_off(attr_t attrs, void *opts);
354
+ int attr_on(attr_t attrs, void *opts);
355
+ int attr_set(attr_t attrs, short color_pair, void *opts);
356
+ int wattr_get(WINDOW *win, attr_t *attrs, short *color_pair,
357
+ void *opts);
358
+ int wattr_off(WINDOW *win, attr_t attrs, void *opts);
359
+ int wattr_on(WINDOW *win, attr_t attrs, void *opts);
360
+ int wattr_set(WINDOW *win, attr_t attrs, short color_pair,
361
+ void *opts);
362
+
363
+ int chgat(int n, attr_t attr, short color, const void *opts);
364
+ int mvchgat(int y, int x, int n, attr_t attr, short color,
365
+ const void *opts);
366
+ int mvwchgat(WINDOW *win, int y, int x, int n, attr_t attr,
367
+ short color, const void *opts);
368
+ int wchgat(WINDOW *win, int n, attr_t attr, short color,
369
+ const void *opts);
370
+
371
+ chtype getattrs(const WINDOW *win);
372
+
373
+ int underend(void);
374
+ int wunderend(WINDOW *win);
375
+ int underscore(void);
376
+ int wunderscore(WINDOW *win);
377
+
378
+ ### Description
379
+
380
+ These functions manipulate the current attributes and/or colors of
381
+ the named window. These attributes can be any combination of
382
+ A_STANDOUT, A_REVERSE, A_BOLD, A_DIM, A_BLINK, A_UNDERLINE. These
383
+ constants are defined in <curses.h> and can be combined with the
384
+ bitwise-OR operator (|).
385
+
386
+ The current attributes of a window are applied to all chtypes that
387
+ are written into the window with waddch(). Attributes are a property
388
+ of the chtype, and move with the character through any scrolling or
389
+ insert/delete operations.
390
+
391
+ wattrset() sets the current attributes of the given window to attrs.
392
+ attrset() is the stdscr version.
393
+
394
+ wattroff() turns off the named attributes without affecting any other
395
+ attributes; wattron() turns them on.
396
+
397
+ wcolor_set() sets the window color to the value of color_pair. If
398
+ opts is non-NULL, it is treated as a pointer to an integer containing
399
+ the desired color pair, and color_pair is ignored (this is an ncurses
400
+ extension).
401
+
402
+ standout() is the same as attron(A_STANDOUT). standend() is the same
403
+ as attrset(A_NORMAL); that is, it turns off all attributes.
404
+
405
+ The attr_* and wattr_* functions are intended for use with the WA_*
406
+ attributes. In PDCurses, these are the same as A_*, and there is no
407
+ difference in behavior from the chtype-based functions. If opts is
408
+ non-NULL, it is used as a pointer to an integer and the color pair
409
+ is stored in it (this is an ncurses and PDCursesMod extension).
410
+
411
+ wattr_get() retrieves the attributes and color pair for the specified
412
+ window.
413
+
414
+ wchgat() sets the color pair and attributes for the next n cells on
415
+ the current line of a given window, without changing the existing
416
+ text, or alterting the window's attributes. An n of -1 extends the
417
+ change to the edge of the window. The changes take effect
418
+ immediately. If opts is non-NULL, it is treated as a pointer to
419
+ an integer containing the desired color pair, and color_pair is
420
+ ignored (this is an ncurses extension).
421
+
422
+ wunderscore() turns on the A_UNDERLINE attribute; wunderend() turns
423
+ it off. underscore() and underend() are the stdscr versions.
424
+
425
+ ### Return Value
426
+
427
+ All functions return OK on success and ERR on error.
428
+
429
+ ### Portability
430
+ Function | X/Open | ncurses | NetBSD
431
+ :---------------------|:------:|:-------:|:------:
432
+ attroff | Y | Y | Y
433
+ wattroff | Y | Y | Y
434
+ attron | Y | Y | Y
435
+ wattron | Y | Y | Y
436
+ attrset | Y | Y | Y
437
+ wattrset | Y | Y | Y
438
+ standend | Y | Y | Y
439
+ wstandend | Y | Y | Y
440
+ standout | Y | Y | Y
441
+ wstandout | Y | Y | Y
442
+ color_set | Y | Y | Y
443
+ wcolor_set | Y | Y | Y
444
+ attr_get | Y | Y | Y
445
+ wattr_get | Y | Y | Y
446
+ attr_on | Y | Y | Y
447
+ wattr_on | Y | Y | Y
448
+ attr_off | Y | Y | Y
449
+ wattr_off | Y | Y | Y
450
+ attr_set | Y | Y | Y
451
+ wattr_set | Y | Y | Y
452
+ chgat | Y | Y | Y
453
+ wchgat | Y | Y | Y
454
+ mvchgat | Y | Y | Y
455
+ mvwchgat | Y | Y | Y
456
+ getattrs | - | Y | Y
457
+ underend | - | - | Y
458
+ wunderend | - | - | Y
459
+ underscore | - | - | Y
460
+ wunderscore | - | - | Y
461
+
462
+
463
+
464
+ --------------------------------------------------------------------------
465
+
466
+
467
+ beep
468
+ ----
469
+
470
+ ### Synopsis
471
+
472
+ int beep(void);
473
+ int flash(void);
474
+
475
+ ### Description
476
+
477
+ beep() sounds the audible bell on the terminal, if possible; if not,
478
+ it calls flash().
479
+
480
+ flash() "flashes" the screen, by inverting the foreground and
481
+ background of every cell, pausing, and then restoring the original
482
+ attributes.
483
+
484
+ ### Return Value
485
+
486
+ These functions return ERR if called before initscr(), otherwise OK.
487
+
488
+ ### Portability
489
+ Function | X/Open | ncurses | NetBSD
490
+ :---------------------|:------:|:-------:|:------:
491
+ beep | Y | Y | Y
492
+ flash | Y | Y | Y
493
+
494
+
495
+
496
+ --------------------------------------------------------------------------
497
+
498
+
499
+ bkgd
500
+ ----
501
+
502
+ ### Synopsis
503
+
504
+ int bkgd(chtype ch);
505
+ void bkgdset(chtype ch);
506
+ chtype getbkgd(WINDOW *win);
507
+ int wbkgd(WINDOW *win, chtype ch);
508
+ void wbkgdset(WINDOW *win, chtype ch);
509
+
510
+ int bkgrnd(const cchar_t *wch);
511
+ void bkgrndset(const cchar_t *wch);
512
+ int getbkgrnd(cchar_t *wch);
513
+ int wbkgrnd(WINDOW *win, const cchar_t *wch);
514
+ void wbkgrndset(WINDOW *win, const cchar_t *wch);
515
+ int wgetbkgrnd(WINDOW *win, cchar_t *wch);
516
+
517
+ ### Description
518
+
519
+ bkgdset() and wbkgdset() manipulate the background of a window. The
520
+ background is a chtype consisting of any combination of attributes
521
+ and a character; it is combined with each chtype added or inserted to
522
+ the window by waddch() or winsch(). Only the attribute part is used
523
+ to set the background of non-blank characters, while both character
524
+ and attributes are used for blank positions.
525
+
526
+ bkgd() and wbkgd() not only change the background, but apply it
527
+ immediately to every cell in the window.
528
+
529
+ wbkgrnd(), wbkgrndset() and wgetbkgrnd() are the "wide-character"
530
+ versions of these functions, taking a pointer to a cchar_t instead of
531
+ a chtype. However, in PDCurses, cchar_t and chtype are the same.
532
+
533
+ The attributes that are defined with the attrset()/attron() set of
534
+ functions take precedence over the background attributes if there is
535
+ a conflict (e.g., different color pairs).
536
+
537
+ ### Return Value
538
+
539
+ bkgd() and wbkgd() return OK, unless the window is NULL, in which
540
+ case they return ERR.
541
+
542
+ ### Portability
543
+ Function | X/Open | ncurses | NetBSD
544
+ :---------------------|:------:|:-------:|:------:
545
+ bkgd | Y | Y | Y
546
+ bkgdset | Y | Y | Y
547
+ getbkgd | Y | Y | Y
548
+ wbkgd | Y | Y | Y
549
+ wbkgdset | Y | Y | Y
550
+ bkgrnd | Y | Y | Y
551
+ bkgrndset | Y | Y | Y
552
+ getbkgrnd | Y | Y | Y
553
+ wbkgrnd | Y | Y | Y
554
+ wbkgrndset | Y | Y | Y
555
+ wgetbkgrnd | Y | Y | Y
556
+
557
+
558
+
559
+ --------------------------------------------------------------------------
560
+
561
+
562
+ border
563
+ ------
564
+
565
+ ### Synopsis
566
+
567
+ int border(chtype ls, chtype rs, chtype ts, chtype bs, chtype tl,
568
+ chtype tr, chtype bl, chtype br);
569
+ int wborder(WINDOW *win, chtype ls, chtype rs, chtype ts,
570
+ chtype bs, chtype tl, chtype tr, chtype bl, chtype br);
571
+ int box(WINDOW *win, chtype verch, chtype horch);
572
+ int hline(chtype ch, int n);
573
+ int vline(chtype ch, int n);
574
+ int whline(WINDOW *win, chtype ch, int n);
575
+ int wvline(WINDOW *win, chtype ch, int n);
576
+ int mvhline(int y, int x, chtype ch, int n);
577
+ int mvvline(int y, int x, chtype ch, int n);
578
+ int mvwhline(WINDOW *win, int y, int x, chtype ch, int n);
579
+ int mvwvline(WINDOW *win, int y, int x, chtype ch, int n);
580
+
581
+ int border_set(const cchar_t *ls, const cchar_t *rs,
582
+ const cchar_t *ts, const cchar_t *bs,
583
+ const cchar_t *tl, const cchar_t *tr,
584
+ const cchar_t *bl, const cchar_t *br);
585
+ int wborder_set(WINDOW *win, const cchar_t *ls, const cchar_t *rs,
586
+ const cchar_t *ts, const cchar_t *bs,
587
+ const cchar_t *tl, const cchar_t *tr,
588
+ const cchar_t *bl, const cchar_t *br);
589
+ int box_set(WINDOW *win, const cchar_t *verch, const cchar_t *horch);
590
+ int hline_set(const cchar_t *wch, int n);
591
+ int vline_set(const cchar_t *wch, int n);
592
+ int whline_set(WINDOW *win, const cchar_t *wch, int n);
593
+ int wvline_set(WINDOW *win, const cchar_t *wch, int n);
594
+ int mvhline_set(int y, int x, const cchar_t *wch, int n);
595
+ int mvvline_set(int y, int x, const cchar_t *wch, int n);
596
+ int mvwhline_set(WINDOW *win, int y, int x, const cchar_t *wch, int n);
597
+ int mvwvline_set(WINDOW *win, int y, int x, const cchar_t *wch, int n);
598
+
599
+ ### Description
600
+
601
+ border(), wborder(), and box() draw a border around the edge of the
602
+ window. If any argument is zero, an appropriate default is used:
603
+
604
+ ls left side of border ACS_VLINE
605
+ rs right side of border ACS_VLINE
606
+ ts top side of border ACS_HLINE
607
+ bs bottom side of border ACS_HLINE
608
+ tl top left corner of border ACS_ULCORNER
609
+ tr top right corner of border ACS_URCORNER
610
+ bl bottom left corner of border ACS_LLCORNER
611
+ br bottom right corner of border ACS_LRCORNER
612
+
613
+ hline() and whline() draw a horizontal line, using ch, starting from
614
+ the current cursor position. The cursor position does not change. The
615
+ line is at most n characters long, or as many as will fit in the
616
+ window.
617
+
618
+ vline() and wvline() draw a vertical line, using ch, starting from
619
+ the current cursor position. The cursor position does not change. The
620
+ line is at most n characters long, or as many as will fit in the
621
+ window.
622
+
623
+ The *_set functions are the "wide-character" versions, taking
624
+ pointers to cchar_t instead of chtype. Note that in PDCurses, chtype
625
+ and cchar_t are the same.
626
+
627
+ ### Return Value
628
+
629
+ These functions return OK on success and ERR on error.
630
+
631
+ ### Portability
632
+ Function | X/Open | ncurses | NetBSD
633
+ :---------------------|:------:|:-------:|:------:
634
+ border | Y | Y | Y
635
+ wborder | Y | Y | Y
636
+ box | Y | Y | Y
637
+ hline | Y | Y | Y
638
+ vline | Y | Y | Y
639
+ whline | Y | Y | Y
640
+ wvline | Y | Y | Y
641
+ mvhline | Y | Y | Y
642
+ mvvline | Y | Y | Y
643
+ mvwhline | Y | Y | Y
644
+ mvwvline | Y | Y | Y
645
+ border_set | Y | Y | Y
646
+ wborder_set | Y | Y | Y
647
+ box_set | Y | Y | Y
648
+ hline_set | Y | Y | Y
649
+ vline_set | Y | Y | Y
650
+ whline_set | Y | Y | Y
651
+ wvline_set | Y | Y | Y
652
+ mvhline_set | Y | Y | Y
653
+ mvvline_set | Y | Y | Y
654
+ mvwhline_set | Y | Y | Y
655
+ mvwvline_set | Y | Y | Y
656
+
657
+
658
+
659
+ --------------------------------------------------------------------------
660
+
661
+
662
+ clear
663
+ -----
664
+
665
+ ### Synopsis
666
+
667
+ int clear(void);
668
+ int wclear(WINDOW *win);
669
+ int erase(void);
670
+ int werase(WINDOW *win);
671
+ int clrtobot(void);
672
+ int wclrtobot(WINDOW *win);
673
+ int clrtoeol(void);
674
+ int wclrtoeol(WINDOW *win);
675
+
676
+ ### Description
677
+
678
+ erase() and werase() copy blanks (i.e. the background chtype) to
679
+ every cell of the window.
680
+
681
+ clear() and wclear() are similar to erase() and werase(), but they
682
+ also call clearok() to ensure that the the window is cleared on the
683
+ next wrefresh().
684
+
685
+ clrtobot() and wclrtobot() clear the window from the current cursor
686
+ position to the end of the window.
687
+
688
+ clrtoeol() and wclrtoeol() clear the window from the current cursor
689
+ position to the end of the current line.
690
+
691
+ ### Return Value
692
+
693
+ All functions return OK on success and ERR on error.
694
+
695
+ ### Portability
696
+ Function | X/Open | ncurses | NetBSD
697
+ :---------------------|:------:|:-------:|:------:
698
+ clear | Y | Y | Y
699
+ wclear | Y | Y | Y
700
+ erase | Y | Y | Y
701
+ werase | Y | Y | Y
702
+ clrtobot | Y | Y | Y
703
+ wclrtobot | Y | Y | Y
704
+ clrtoeol | Y | Y | Y
705
+ wclrtoeol | Y | Y | Y
706
+
707
+
708
+
709
+ --------------------------------------------------------------------------
710
+
711
+
712
+ color
713
+ -----
714
+
715
+ ### Synopsis
716
+
717
+ bool has_colors(void);
718
+ int start_color(void);
719
+ int init_pair(short pair, short fg, short bg);
720
+ int pair_content(short pair, short *fg, short *bg);
721
+ int init_extended_pair(int pair, int fg, int bg);
722
+ int extended_pair_content(int pair, int *fg, int *bg);
723
+ bool can_change_color(void);
724
+ int init_color(short color, short red, short green, short blue);
725
+ int color_content(short color, short *red, short *green, short *blue);
726
+ int init_extended_color(int color, int red, int green, int blue);
727
+ int extended_color_content(int color, int *red, int *green, int *blue);
728
+
729
+ int alloc_pair( int fg, int bg);
730
+ int assume_default_colors(int f, int b);
731
+ int find_pair( int fg, int bg);
732
+ int free_pair( int pair);
733
+ int use_default_colors(void);
734
+ void reset_color_pairs(void);
735
+
736
+ int PDC_set_line_color(short color);
737
+
738
+ ### Description
739
+
740
+ To use these routines, first, call start_color(). Colors are always
741
+ used in pairs, referred to as color-pairs. A color-pair is created by
742
+ init_pair(), and consists of a foreground color and a background
743
+ color. After initialization, COLOR_PAIR(n) can be used like any other
744
+ video attribute.
745
+
746
+ has_colors() reports whether the terminal supports color.
747
+
748
+ start_color() initializes eight basic colors (black, red, green,
749
+ yellow, blue, magenta, cyan, and white), and two global variables:
750
+ COLORS and COLOR_PAIRS (respectively defining the maximum number of
751
+ colors and color-pairs the terminal is capable of displaying).
752
+
753
+ init_pair() changes the definition of a color-pair. It takes three
754
+ arguments: the number of the color-pair to be redefined, and the new
755
+ values of the foreground and background colors. The pair number must
756
+ be between 0 and COLOR_PAIRS - 1, inclusive. The foreground and
757
+ background must be between 0 and COLORS - 1, inclusive. If the color
758
+ pair was previously initialized, the screen is refreshed, and all
759
+ occurrences of that color-pair are changed to the new definition.
760
+
761
+ pair_content() is used to determine what the colors of a given color-
762
+ pair consist of.
763
+
764
+ init_extended_pair() and extended_pair_content() use ints for the
765
+ color pair index and the color values. These allow a larger number
766
+ of colors and color pairs to be supported, eliminating the 32767
767
+ color and color pair limits.
768
+
769
+ can_change_color() indicates if the terminal has the capability to
770
+ change the definition of its colors.
771
+
772
+ init_color() is used to redefine a color, if possible. Each of the
773
+ components -- red, green, and blue -- is specified in a range from 0
774
+ to 1000, inclusive.
775
+
776
+ color_content() reports the current definition of a color in the same
777
+ format as used by init_color().
778
+
779
+ init_extended_color() and extended_color_content() use integers for
780
+ the color index. This enables us to have more than 32767 colors.
781
+
782
+ assume_default_colors() and use_default_colors() emulate the ncurses
783
+ extensions of the same names. assume_default_colors(f, b) is
784
+ essentially the same as init_pair(0, f, b) (which isn't allowed); it
785
+ redefines the default colors. use_default_colors() allows the use of
786
+ -1 as a foreground or background color with init_pair(), and calls
787
+ assume_default_colors(-1, -1); -1 represents the foreground or
788
+ background color that the terminal had at startup. If the environment
789
+ variable PDC_ORIGINAL_COLORS is set at the time start_color() is
790
+ called, that's equivalent to calling use_default_colors().
791
+
792
+ alloc_pair(), find_pair() and free_pair() are also from ncurses.
793
+ free_pair() marks a pair as unused; find_pair() returns an existing
794
+ pair with the specified foreground and background colors, if one
795
+ exists. And alloc_pair() returns such a pair whether or not it was
796
+ previously set, overwriting the oldest initialized pair if there are
797
+ no free pairs.
798
+
799
+ reset_color_pairs(), also from ncurses, discards all color pair
800
+ information that was set with init_pair(). In practice, this means
801
+ all color pairs except pair 0 become undefined.
802
+
803
+ VT and WinCon define 'default' colors to be those inherited from
804
+ the terminal; SDLn defines them to be the colors of the background
805
+ image, if any. On all other platforms, and on SDLn if there's no
806
+ background images, the default background is black; the default
807
+ foreground is white.
808
+
809
+ PDC_set_line_color() is used to set the color, globally, for the
810
+ color of the lines drawn for the attributes: A_UNDERLINE, A_LEFT,
811
+ A_RIGHT, A_STRIKEOUT, and A_TOP. A value of -1 (the default) indicates
812
+ that the current foreground color should be used.
813
+
814
+ NOTE: COLOR_PAIR() and PAIR_NUMBER() are implemented as macros.
815
+
816
+ ### Return Value
817
+
818
+ Most functions return OK on success and ERR on error. has_colors()
819
+ and can_change_colors() return TRUE or FALSE. alloc_pair() and
820
+ find_pair() return a pair number, or -1 on error.
821
+
822
+
823
+ ### Portability
824
+ Function | X/Open | ncurses | NetBSD
825
+ :---------------------|:------:|:-------:|:------:
826
+ has_colors | Y | Y | Y
827
+ start_color | Y | Y | Y
828
+ init_pair | Y | Y | Y
829
+ pair_content | Y | Y | Y
830
+ can_change_color | Y | Y | Y
831
+ init_color | Y | Y | Y
832
+ color_content | Y | Y | Y
833
+ alloc_pair | - | Y | -
834
+ assume_default_colors | - | Y | Y
835
+ find_pair | - | Y | -
836
+ free_pair | - | Y | -
837
+ use_default_colors | - | Y | Y
838
+ PDC_set_line_color | - | - | -
839
+
840
+
841
+
842
+ --------------------------------------------------------------------------
843
+
844
+
845
+ debug
846
+ -----
847
+
848
+ ### Synopsis
849
+
850
+ void traceon(void);
851
+ void traceoff(void);
852
+ unsigned curses_trace( const unsigned);
853
+ void trace( const unsigned);
854
+ void PDC_debug(const char *, ...);
855
+ void _tracef(const char *, ...);
856
+
857
+ ### Description
858
+
859
+ traceon() and traceoff() toggle the recording of debugging
860
+ information to the file "trace". Although not standard, similar
861
+ functions are in some other curses implementations (e.g., SVr4).
862
+
863
+ curses_trace() turns tracing on if called with a non-zero value and
864
+ off if called with zero. At some point, the input value will be
865
+ used to set flags for more nuanced trace output, a la ncurses; but
866
+ at present, debugging is simply on or off. The previous tracing
867
+ flags are returned.
868
+
869
+ trace() is a duplicate of curses_trace(), but returns nothing. It
870
+ is deprecated because it often conflicts with application names.
871
+
872
+ PDC_debug() is the function that writes to the file, based on whether
873
+ traceon() has been called. It's used from the PDC_LOG() macro.
874
+
875
+ _tracef() is an ncurses alias for PDC_debug, and is added solely
876
+ for compatibility.
877
+
878
+ The environment variable PDC_TRACE_FLUSH controls whether the trace
879
+ file contents are fflushed after each write. The default is not. Set
880
+ it to enable this (may affect performance).
881
+
882
+ ### Portability
883
+ Function | X/Open | ncurses | NetBSD
884
+ :---------------------|:------:|:-------:|:------:
885
+ traceon | - | - | -
886
+ traceoff | - | - | -
887
+ trace | - | Y | -
888
+ curses_trace | - | Y | -
889
+ PDC_debug | - | - | -
890
+ _tracef | - | Y | -
891
+
892
+
893
+
894
+ --------------------------------------------------------------------------
895
+
896
+
897
+ delch
898
+ -----
899
+
900
+ ### Synopsis
901
+
902
+ int delch(void);
903
+ int wdelch(WINDOW *win);
904
+ int mvdelch(int y, int x);
905
+ int mvwdelch(WINDOW *win, int y, int x);
906
+
907
+ ### Description
908
+
909
+ The character under the cursor in the window is deleted. All
910
+ characters to the right on the same line are moved to the left one
911
+ position and the last character on the line is filled with a blank.
912
+ The cursor position does not change (after moving to y, x if
913
+ coordinates are specified).
914
+
915
+ ### Return Value
916
+
917
+ All functions return OK on success and ERR on error.
918
+
919
+ ### Portability
920
+ Function | X/Open | ncurses | NetBSD
921
+ :---------------------|:------:|:-------:|:------:
922
+ delch | Y | Y | Y
923
+ wdelch | Y | Y | Y
924
+ mvdelch | Y | Y | Y
925
+ mvwdelch | Y | Y | Y
926
+
927
+
928
+
929
+ --------------------------------------------------------------------------
930
+
931
+
932
+ deleteln
933
+ --------
934
+
935
+ ### Synopsis
936
+
937
+ int deleteln(void);
938
+ int wdeleteln(WINDOW *win);
939
+ int insdelln(int n);
940
+ int winsdelln(WINDOW *win, int n);
941
+ int insertln(void);
942
+ int winsertln(WINDOW *win);
943
+
944
+ int mvdeleteln(int y, int x);
945
+ int mvwdeleteln(WINDOW *win, int y, int x);
946
+ int mvinsertln(int y, int x);
947
+ int mvwinsertln(WINDOW *win, int y, int x);
948
+
949
+ ### Description
950
+
951
+ With the deleteln() and wdeleteln() functions, the line under the
952
+ cursor in the window is deleted. All lines below the current line are
953
+ moved up one line. The bottom line of the window is cleared. The
954
+ cursor position does not change.
955
+
956
+ With the insertln() and winsertn() functions, a blank line is
957
+ inserted above the current line and the bottom line is lost.
958
+
959
+ mvdeleteln(), mvwdeleteln(), mvinsertln() and mvwinsertln() allow
960
+ moving the cursor and inserting/deleting in one call.
961
+
962
+ ### Return Value
963
+
964
+ All functions return OK on success and ERR on error.
965
+
966
+ ### Portability
967
+ Function | X/Open | ncurses | NetBSD
968
+ :---------------------|:------:|:-------:|:------:
969
+ deleteln | Y | Y | Y
970
+ wdeleteln | Y | Y | Y
971
+ mvdeleteln | - | - | -
972
+ mvwdeleteln | - | - | -
973
+ insdelln | Y | Y | Y
974
+ winsdelln | Y | Y | Y
975
+ insertln | Y | Y | Y
976
+ winsertln | Y | Y | Y
977
+ mvinsertln | - | - | -
978
+ mvwinsertln | - | - | -
979
+
980
+
981
+
982
+ --------------------------------------------------------------------------
983
+
984
+
985
+ getch
986
+ -----
987
+
988
+ ### Synopsis
989
+
990
+ int getch(void);
991
+ int wgetch(WINDOW *win);
992
+ int mvgetch(int y, int x);
993
+ int mvwgetch(WINDOW *win, int y, int x);
994
+ int ungetch(int ch);
995
+ int flushinp(void);
996
+
997
+ int get_wch(wint_t *wch);
998
+ int wget_wch(WINDOW *win, wint_t *wch);
999
+ int mvget_wch(int y, int x, wint_t *wch);
1000
+ int mvwget_wch(WINDOW *win, int y, int x, wint_t *wch);
1001
+ int unget_wch(const wchar_t wch);
1002
+
1003
+ unsigned long PDC_get_key_modifiers(void);
1004
+ int PDC_return_key_modifiers(bool flag);
1005
+
1006
+ ### Description
1007
+
1008
+ With the getch(), wgetch(), mvgetch(), and mvwgetch() functions, a
1009
+ character is read from the terminal associated with the window. In
1010
+ nodelay mode, if there is no input waiting, the value ERR is
1011
+ returned. In delay mode, the program will hang until the system
1012
+ passes text through to the program. Depending on the setting of
1013
+ cbreak(), this will be after one character or after the first
1014
+ newline. Unless noecho() has been set, the character will also be
1015
+ echoed into the designated window.
1016
+
1017
+ If keypad() is TRUE, and a function key is pressed, the token for
1018
+ that function key will be returned instead of the raw characters.
1019
+ Possible function keys are defined in <curses.h> with integers
1020
+ starting at KEY_OFFSET, whose names begin with KEY_.
1021
+
1022
+ If nodelay(win, TRUE) has been called on the window and no input is
1023
+ waiting, the value ERR is returned.
1024
+
1025
+ ungetch() places ch back onto the input queue to be returned by the
1026
+ next call to wgetch().
1027
+
1028
+ flushinp() throws away any type-ahead that has been typed by the user
1029
+ and has not yet been read by the program.
1030
+
1031
+ wget_wch() is the wide-character version of wgetch(), available when
1032
+ PDCurses is built with the PDC_WIDE option. It takes a pointer to a
1033
+ wint_t rather than returning the key as an int, and instead returns
1034
+ KEY_CODE_YES if the key is a function key. Otherwise, it returns OK
1035
+ or ERR. It's important to check for KEY_CODE_YES; on most Curses
1036
+ implementations (not PDCursesMod), regular wide characters can have
1037
+ the same values as function key codes.
1038
+
1039
+ unget_wch() puts a wide character on the input queue.
1040
+
1041
+ PDC_get_key_modifiers() returns the keyboard modifiers (shift,
1042
+ control, alt, numlock) effective at the time of the last getch()
1043
+ call. Use the macros PDC_KEY_MODIFIER_* to determine which
1044
+ modifier(s) were set. PDC_return_key_modifiers() tells getch() to
1045
+ return modifier keys pressed alone as keystrokes (KEY_ALT_L, etc.).
1046
+ These may not work on all platforms.
1047
+
1048
+ NOTE: getch() and ungetch() are implemented as macros, to avoid
1049
+ conflict with many DOS compiler's runtime libraries.
1050
+
1051
+ ### Return Value
1052
+
1053
+ These functions return ERR or the value of the character, meta
1054
+ character or function key token.
1055
+
1056
+ ### Portability
1057
+ Function | X/Open | ncurses | NetBSD
1058
+ :---------------------|:------:|:-------:|:------:
1059
+ getch | Y | Y | Y
1060
+ wgetch | Y | Y | Y
1061
+ mvgetch | Y | Y | Y
1062
+ mvwgetch | Y | Y | Y
1063
+ ungetch | Y | Y | Y
1064
+ flushinp | Y | Y | Y
1065
+ get_wch | Y | Y | Y
1066
+ wget_wch | Y | Y | Y
1067
+ mvget_wch | Y | Y | Y
1068
+ mvwget_wch | Y | Y | Y
1069
+ unget_wch | Y | Y | Y
1070
+ PDC_get_key_modifiers | - | - | -
1071
+
1072
+
1073
+
1074
+ --------------------------------------------------------------------------
1075
+
1076
+
1077
+ Function keys
1078
+ -------------
1079
+
1080
+ ### Synopsis
1081
+
1082
+ int PDC_set_function_key( const unsigned function, const int new_key);
1083
+ int PDC_get_function_key( const unsigned function);
1084
+
1085
+ ### Description
1086
+
1087
+ Allows one to set a 'shut down' key, and reassign hotkeys used for
1088
+ copying to/pasting from the clipboard and enlarging and decreasing the
1089
+ font size, and for using the font selection dialog (on platforms where
1090
+ these things are possible and implemented). For example, calling
1091
+
1092
+ PDC_set_function_key( FUNCTION_KEY_SHUT_DOWN, ALT_Q);
1093
+
1094
+ would reset PDCursesMod such that, if the user clicks on the 'close'
1095
+ box, Alt-Q would be added to the key queue. This would give the app the
1096
+ opportunity to shut things down gracefully, perhaps asking "are you
1097
+ sure", and/or "save changes or discard or cancel", rather than just
1098
+ having the window close (the default behavior).
1099
+
1100
+ Similarly, one can set FUNCTION_KEY_ABORT to a key which, when pressed,
1101
+ will cause the program to abort gracelessly (no key returned to the
1102
+ application). One would normally use this to enable/disable Ctrl-C or
1103
+ Ctrl-Break, or to set a different 'abort' key so that Ctrl-C can be
1104
+ used for copying.
1105
+
1106
+ ### Return Value
1107
+
1108
+ Returns key code previously set for that function, or -1 if the
1109
+ function does not actually exist.
1110
+
1111
+ ### Portability
1112
+
1113
+ PDCursesMod-only function.
1114
+
1115
+
1116
+
1117
+ --------------------------------------------------------------------------
1118
+
1119
+
1120
+ getstr
1121
+ ------
1122
+
1123
+ ### Synopsis
1124
+
1125
+ int getstr(char *str);
1126
+ int wgetstr(WINDOW *win, char *str);
1127
+ int mvgetstr(int y, int x, char *str);
1128
+ int mvwgetstr(WINDOW *win, int y, int x, char *str);
1129
+ int getnstr(char *str, int n);
1130
+ int wgetnstr(WINDOW *win, char *str, int n);
1131
+ int mvgetnstr(int y, int x, char *str, int n);
1132
+ int mvwgetnstr(WINDOW *win, int y, int x, char *str, int n);
1133
+
1134
+ int get_wstr(wint_t *wstr);
1135
+ int wget_wstr(WINDOW *win, wint_t *wstr);
1136
+ int mvget_wstr(int y, int x, wint_t *wstr);
1137
+ int mvwget_wstr(WINDOW *win, int, int, wint_t *wstr);
1138
+ int getn_wstr(wint_t *wstr, int n);
1139
+ int wgetn_wstr(WINDOW *win, wint_t *wstr, int n);
1140
+ int mvgetn_wstr(int y, int x, wint_t *wstr, int n);
1141
+ int mvwgetn_wstr(WINDOW *win, int y, int x, wint_t *wstr, int n);
1142
+
1143
+ ### Description
1144
+
1145
+ These routines call wgetch() repeatedly to build a string,
1146
+ interpreting erase and kill characters along the way, until a newline
1147
+ or carriage return is received. When PDCurses is built with wide-
1148
+ character support enabled, the narrow-character functions convert the
1149
+ wgetch()'d values into a multibyte string in the current locale
1150
+ before returning it. The resulting string is placed in the area
1151
+ pointed to by *str. The routines with n as the last argument read at
1152
+ most n characters. Note that this does not include the terminating
1153
+ '\0' character; be sure your buffer has room for that.
1154
+
1155
+ Note that there's no way to know how long the buffer passed to
1156
+ wgetstr() is, so use wgetnstr() to avoid buffer overflows.
1157
+
1158
+ ### Return Value
1159
+
1160
+ These functions return ERR on failure or any other value on success.
1161
+
1162
+ ### Portability
1163
+ Function | X/Open | ncurses | NetBSD
1164
+ :---------------------|:------:|:-------:|:------:
1165
+ getstr | Y | Y | Y
1166
+ wgetstr | Y | Y | Y
1167
+ mvgetstr | Y | Y | Y
1168
+ mvwgetstr | Y | Y | Y
1169
+ getnstr | Y | Y | Y
1170
+ wgetnstr | Y | Y | Y
1171
+ mvgetnstr | Y | Y | Y
1172
+ mvwgetnstr | Y | Y | Y
1173
+ get_wstr | Y | Y | Y
1174
+ wget_wstr | Y | Y | Y
1175
+ mvget_wstr | Y | Y | Y
1176
+ mvwget_wstr | Y | Y | Y
1177
+ getn_wstr | Y | Y | Y
1178
+ wgetn_wstr | Y | Y | Y
1179
+ mvgetn_wstr | Y | Y | Y
1180
+ mvwgetn_wstr | Y | Y | Y
1181
+
1182
+
1183
+
1184
+ --------------------------------------------------------------------------
1185
+
1186
+
1187
+ getyx
1188
+ -----
1189
+
1190
+ ### Synopsis
1191
+
1192
+ void getyx(WINDOW *win, int y, int x);
1193
+ void getparyx(WINDOW *win, int y, int x);
1194
+ void getbegyx(WINDOW *win, int y, int x);
1195
+ void getmaxyx(WINDOW *win, int y, int x);
1196
+
1197
+ void getsyx(int y, int x);
1198
+ void setsyx(int y, int x);
1199
+
1200
+ int getbegy(const WINDOW *win);
1201
+ int getbegx(const WINDOW *win);
1202
+ int getcury(const WINDOW *win);
1203
+ int getcurx(const WINDOW *win);
1204
+ int getpary(const WINDOW *win);
1205
+ int getparx(const WINDOW *win);
1206
+ int getmaxy(const WINDOW *win);
1207
+ int getmaxx(const WINDOW *win);
1208
+
1209
+ ### Description
1210
+
1211
+ The getyx() macro (defined in curses.h -- the prototypes here are
1212
+ merely illustrative) puts the current cursor position of the
1213
+ specified window into y and x. getbegyx() and getmaxyx() return the
1214
+ starting coordinates and size of the specified window, respectively.
1215
+ getparyx() returns the starting coordinates of the parent's window,
1216
+ if the specified window is a subwindow; otherwise it sets y and x to
1217
+ -1. These are all macros.
1218
+
1219
+ getsyx() gets the coordinates of the virtual screen cursor, and
1220
+ stores them in y and x. If leaveok() is TRUE, it returns -1, -1. If
1221
+ lines have been removed with ripoffline(), then getsyx() includes
1222
+ these lines in its count; so, the returned y and x values should only
1223
+ be used with setsyx().
1224
+
1225
+ setsyx() sets the virtual screen cursor to the y, x coordinates. If
1226
+ either y or x is -1, leaveok() is set TRUE, else it's set FALSE.
1227
+
1228
+ getsyx() and setsyx() are meant to be used by a library routine that
1229
+ manipulates curses windows without altering the position of the
1230
+ cursor. Note that getsyx() is defined only as a macro.
1231
+
1232
+ getbegy(), getbegx(), getcurx(), getcury(), getmaxy(), getmaxx(),
1233
+ getpary(), and getparx() return the appropriate coordinate or size
1234
+ values, or ERR in the case of a NULL window.
1235
+
1236
+ ### Portability
1237
+ Function | X/Open | ncurses | NetBSD
1238
+ :---------------------|:------:|:-------:|:------:
1239
+ getyx | Y | Y | Y
1240
+ getparyx | Y | Y | Y
1241
+ getbegyx | Y | Y | Y
1242
+ getmaxyx | Y | Y | Y
1243
+ getsyx | - | Y | Y
1244
+ setsyx | - | Y | Y
1245
+ getbegy | - | Y | Y
1246
+ getbegx | - | Y | Y
1247
+ getcury | - | Y | Y
1248
+ getcurx | - | Y | Y
1249
+ getpary | - | Y | Y
1250
+ getparx | - | Y | Y
1251
+ getmaxy | - | Y | Y
1252
+ getmaxx | - | Y | Y
1253
+
1254
+
1255
+
1256
+ --------------------------------------------------------------------------
1257
+
1258
+
1259
+ inch
1260
+ ----
1261
+
1262
+ ### Synopsis
1263
+
1264
+ chtype inch(void);
1265
+ chtype winch(WINDOW *win);
1266
+ chtype mvinch(int y, int x);
1267
+ chtype mvwinch(WINDOW *win, int y, int x);
1268
+
1269
+ int in_wch(cchar_t *wcval);
1270
+ int win_wch(WINDOW *win, cchar_t *wcval);
1271
+ int mvin_wch(int y, int x, cchar_t *wcval);
1272
+ int mvwin_wch(WINDOW *win, int y, int x, cchar_t *wcval);
1273
+
1274
+ ### Description
1275
+
1276
+ The inch() functions retrieve the character and attribute from the
1277
+ current or specified window position, in the form of a chtype. If a
1278
+ NULL window is specified, (chtype)ERR is returned.
1279
+
1280
+ The in_wch() functions are the wide-character versions; instead of
1281
+ returning a chtype, they store a cchar_t at the address specified by
1282
+ wcval, and return OK or ERR. (No value is stored when ERR is
1283
+ returned.) Note that in PDCurses, chtype and cchar_t are the same.
1284
+
1285
+ ### Portability
1286
+ Function | X/Open | ncurses | NetBSD
1287
+ :---------------------|:------:|:-------:|:------:
1288
+ inch | Y | Y | Y
1289
+ winch | Y | Y | Y
1290
+ mvinch | Y | Y | Y
1291
+ mvwinch | Y | Y | Y
1292
+ in_wch | Y | Y | Y
1293
+ win_wch | Y | Y | Y
1294
+ mvin_wch | Y | Y | Y
1295
+ mvwin_wch | Y | Y | Y
1296
+
1297
+
1298
+
1299
+ --------------------------------------------------------------------------
1300
+
1301
+
1302
+ inchstr
1303
+ -------
1304
+
1305
+ ### Synopsis
1306
+
1307
+ int inchstr(chtype *ch);
1308
+ int inchnstr(chtype *ch, int n);
1309
+ int winchstr(WINDOW *win, chtype *ch);
1310
+ int winchnstr(WINDOW *win, chtype *ch, int n);
1311
+ int mvinchstr(int y, int x, chtype *ch);
1312
+ int mvinchnstr(int y, int x, chtype *ch, int n);
1313
+ int mvwinchstr(WINDOW *, int y, int x, chtype *ch);
1314
+ int mvwinchnstr(WINDOW *, int y, int x, chtype *ch, int n);
1315
+
1316
+ int in_wchstr(cchar_t *wch);
1317
+ int in_wchnstr(cchar_t *wch, int n);
1318
+ int win_wchstr(WINDOW *win, cchar_t *wch);
1319
+ int win_wchnstr(WINDOW *win, cchar_t *wch, int n);
1320
+ int mvin_wchstr(int y, int x, cchar_t *wch);
1321
+ int mvin_wchnstr(int y, int x, cchar_t *wch, int n);
1322
+ int mvwin_wchstr(WINDOW *win, int y, int x, cchar_t *wch);
1323
+ int mvwin_wchnstr(WINDOW *win, int y, int x, cchar_t *wch, int n);
1324
+
1325
+ ### Description
1326
+
1327
+ These routines read a chtype or cchar_t string from the window,
1328
+ starting at the current or specified position, and ending at the
1329
+ right margin, or after n elements, whichever is less.
1330
+
1331
+ ### Return Value
1332
+
1333
+ All functions return the number of elements read, or ERR on error.
1334
+
1335
+ ### Portability
1336
+ Function | X/Open | ncurses | NetBSD
1337
+ :---------------------|:------:|:-------:|:------:
1338
+ inchstr | Y | Y | Y
1339
+ winchstr | Y | Y | Y
1340
+ mvinchstr | Y | Y | Y
1341
+ mvwinchstr | Y | Y | Y
1342
+ inchnstr | Y | Y | Y
1343
+ winchnstr | Y | Y | Y
1344
+ mvinchnstr | Y | Y | Y
1345
+ mvwinchnstr | Y | Y | Y
1346
+ in_wchstr | Y | Y | Y
1347
+ win_wchstr | Y | Y | Y
1348
+ mvin_wchstr | Y | Y | Y
1349
+ mvwin_wchstr | Y | Y | Y
1350
+ in_wchnstr | Y | Y | Y
1351
+ win_wchnstr | Y | Y | Y
1352
+ mvin_wchnstr | Y | Y | Y
1353
+ mvwin_wchnstr | Y | Y | Y
1354
+
1355
+
1356
+
1357
+ --------------------------------------------------------------------------
1358
+
1359
+
1360
+ initscr
1361
+ -------
1362
+
1363
+ ### Synopsis
1364
+
1365
+ WINDOW *initscr(void);
1366
+ WINDOW *Xinitscr(int argc, char **argv);
1367
+ int endwin(void);
1368
+ bool isendwin(void);
1369
+ SCREEN *newterm(const char *type, FILE *outfd, FILE *infd);
1370
+ SCREEN *set_term(SCREEN *new);
1371
+ void delscreen(SCREEN *sp);
1372
+
1373
+ int resize_term(int nlines, int ncols);
1374
+ bool is_termresized(void);
1375
+ const char *curses_version(void);
1376
+ void PDC_get_version(PDC_VERSION *ver);
1377
+
1378
+ int set_tabsize(int tabsize);
1379
+
1380
+ ### Description
1381
+
1382
+ initscr() should be the first curses routine called. It will
1383
+ initialize all curses data structures, and arrange that the first
1384
+ call to refresh() will clear the screen. In case of error, initscr()
1385
+ will write a message to standard error and end the program.
1386
+
1387
+ endwin() should be called before exiting or escaping from curses mode
1388
+ temporarily. It will restore tty modes, move the cursor to the lower
1389
+ left corner of the screen and reset the terminal into the proper
1390
+ non-visual mode. To resume curses after a temporary escape, call
1391
+ refresh() or doupdate().
1392
+
1393
+ isendwin() returns TRUE if endwin() has been called without a
1394
+ subsequent refresh, unless SP is NULL.
1395
+
1396
+ In some implementations of curses, newterm() allows the use of
1397
+ multiple terminals. Here, it's just an alternative interface for
1398
+ initscr(). It always returns SP, or NULL.
1399
+
1400
+ delscreen() frees the memory allocated by newterm() or initscr(),
1401
+ since it's not freed by endwin(). This function is usually not
1402
+ needed. In PDCurses, the parameter must be the value of SP, and
1403
+ delscreen() sets SP to NULL.
1404
+
1405
+ set_term() does nothing meaningful in PDCurses, but is included for
1406
+ compatibility with other curses implementations.
1407
+
1408
+ resize_term() is effectively two functions: When called with nonzero
1409
+ values for nlines and ncols, it attempts to resize the screen to the
1410
+ given size. When called with (0, 0), it merely adjusts the internal
1411
+ structures to match the current size after the screen is resized by
1412
+ the user. On the currently supported platforms, SDL, Windows console,
1413
+ and X11 allow user resizing, while DOS, OS/2, SDL and Windows console
1414
+ allow programmatic resizing. If you want to support user resizing,
1415
+ you should check for getch() returning KEY_RESIZE, and/or call
1416
+ is_termresized() at appropriate times. Then, with either user or
1417
+ programmatic resizing, you'll have to resize any windows you've
1418
+ created, as appropriate; resize_term() only handles stdscr and curscr.
1419
+
1420
+ is_termresized() returns TRUE if the curses screen has been resized
1421
+ by the user, and a call to resize_term() is needed. Checking for
1422
+ KEY_RESIZE is generally preferable, unless you're not handling the
1423
+ keyboard.
1424
+
1425
+ curses_version() returns a string describing the version of PDCursesMod.
1426
+
1427
+ PDC_get_version() fills a PDC_VERSION structure provided by the user
1428
+ with more detailed version info (see curses.h).
1429
+
1430
+ set_tabsize() sets the tab interval, stored in TABSIZE.
1431
+
1432
+ ### Return Value
1433
+
1434
+ All functions return NULL on error, except endwin(), which always
1435
+ returns OK, and resize_term(), which returns either OK or ERR.
1436
+
1437
+ ### Portability
1438
+ Function | X/Open | ncurses | NetBSD
1439
+ :---------------------|:------:|:-------:|:------:
1440
+ initscr | Y | Y | Y
1441
+ endwin | Y | Y | Y
1442
+ isendwin | Y | Y | Y
1443
+ newterm | Y | Y | Y
1444
+ set_term | Y | Y | Y
1445
+ delscreen | Y | Y | Y
1446
+ resize_term | - | Y | Y
1447
+ set_tabsize | - | Y | Y
1448
+ curses_version | - | Y | -
1449
+ is_termresized | - | - | -
1450
+
1451
+
1452
+
1453
+ --------------------------------------------------------------------------
1454
+
1455
+
1456
+ inopts
1457
+ ------
1458
+
1459
+ ### Synopsis
1460
+
1461
+ int cbreak(void);
1462
+ int nocbreak(void);
1463
+ int echo(void);
1464
+ int noecho(void);
1465
+ int halfdelay(int tenths);
1466
+ int intrflush(WINDOW *win, bool bf);
1467
+ int keypad(WINDOW *win, bool bf);
1468
+ int meta(WINDOW *win, bool bf);
1469
+ int nl(void);
1470
+ int nonl(void);
1471
+ int nodelay(WINDOW *win, bool bf);
1472
+ int notimeout(WINDOW *win, bool bf);
1473
+ int raw(void);
1474
+ int noraw(void);
1475
+ void noqiflush(void);
1476
+ void qiflush(void);
1477
+ void timeout(int delay);
1478
+ void wtimeout(WINDOW *win, int delay);
1479
+ int wgetdelay(const WINDOW *win);
1480
+ int typeahead(int fildes);
1481
+ int is_cbreak( void);
1482
+ int is_echo( void);
1483
+ int is_nl( void);
1484
+ int is_raw( void);
1485
+ bool PDC_getcbreak(void); deprecated; use is_cbreak()
1486
+ bool PDC_getecho(void); deprecated; use is_echo()
1487
+
1488
+ int crmode(void);
1489
+ int nocrmode(void);
1490
+
1491
+ bool is_keypad(const WINDOW *win);
1492
+ bool is_nodelay(const WINDOW *win);
1493
+ bool is_notimeout(const WINDOW *win);
1494
+
1495
+ ### Description
1496
+
1497
+ cbreak() and nocbreak() toggle cbreak mode. In cbreak mode,
1498
+ characters typed by the user are made available immediately, and
1499
+ erase/kill character processing is not performed. In nocbreak mode,
1500
+ typed characters are buffered until a newline or carriage return.
1501
+ Interrupt and flow control characters are unaffected by this mode.
1502
+ PDCurses always starts in cbreak mode.
1503
+
1504
+ echo() and noecho() control whether typed characters are echoed by
1505
+ the input routine. Initially, input characters are echoed. Subsequent
1506
+ calls to echo() and noecho() do not flush type-ahead.
1507
+
1508
+ is_cbreak(), is_echo(), is_nl(), and is_raw() are ncurses extensions.
1509
+ They return the current state of the corresponding flags, or -1 if
1510
+ the library is uninitialized.
1511
+
1512
+ PDC_getcbreak() and PDC_getecho() are older versions of is_cbreak()
1513
+ and is_echo(), but return TRUE if the flag is set and FALSE if it is
1514
+ not set or the library is uninitialized. Use of these two functions
1515
+ is deprecated.
1516
+
1517
+ halfdelay() is similar to cbreak(), but allows for a time limit to be
1518
+ specified, in tenths of a second. This causes getch() to block for
1519
+ that period before returning ERR if no key has been received. tenths
1520
+ must be between 1 and 255.
1521
+
1522
+ keypad() controls whether getch() returns function/special keys as
1523
+ single key codes (e.g., the left arrow key as KEY_LEFT). Per X/Open,
1524
+ the default for keypad mode is OFF. You'll probably want it on. With
1525
+ keypad mode off, if a special key is pressed, getch() does nothing or
1526
+ returns ERR.
1527
+
1528
+ nodelay() controls whether wgetch() is a non-blocking call. If the
1529
+ option is enabled, and no input is ready, wgetch() will return ERR.
1530
+ If disabled, wgetch() will hang until input is ready.
1531
+
1532
+ nl() enables the translation of a carriage return into a newline on
1533
+ input. nonl() disables this. Initially, the translation does occur.
1534
+
1535
+ raw() and noraw() toggle raw mode. Raw mode is similar to cbreak
1536
+ mode, in that characters typed are immediately passed through to the
1537
+ user program. The difference is that in raw mode, the INTR, QUIT,
1538
+ SUSP, and STOP characters are passed through without being
1539
+ interpreted, and without generating a signal.
1540
+
1541
+ In PDCurses, the meta() function sets raw mode on or off.
1542
+
1543
+ timeout() and wtimeout() set blocking or non-blocking reads for the
1544
+ specified window. If the delay is negative, a blocking read is used;
1545
+ if zero, then non-blocking reads are done -- if no input is waiting,
1546
+ ERR is returned immediately. If the delay is positive, the read
1547
+ blocks for the delay period; if the period expires, ERR is returned.
1548
+ The delay is given in milliseconds, but this is rounded down to 50ms
1549
+ (1/20th sec) intervals, with a minimum of one interval if a postive
1550
+ delay is given; i.e., 1-99 will wait 50ms, 100-149 will wait 100ms,
1551
+ etc.
1552
+
1553
+ wgetdelay() returns the delay timeout as set in wtimeout().
1554
+
1555
+ intrflush(), notimeout(), noqiflush(), qiflush() and typeahead() do
1556
+ nothing in PDCurses, but are included for compatibility with other
1557
+ curses implementations.
1558
+
1559
+ crmode() and nocrmode() are archaic equivalents to cbreak() and
1560
+ nocbreak(), respectively.
1561
+
1562
+ is_keypad() reports whether the specified window is in keypad mode.
1563
+
1564
+ is_nodelay() reports whether the specified window is in nodelay mode.
1565
+
1566
+ ### Return Value
1567
+
1568
+ All functions that return integers return OK on success and ERR on
1569
+ error. is_keypad() and is_nodelay() return TRUE or FALSE.
1570
+
1571
+ is_notimeout() is provided for compatibility with other curses
1572
+ implementations. It has no real meaning in PDCursesMod and will
1573
+ always return FALSE.
1574
+
1575
+ ### Portability
1576
+ Function | X/Open | ncurses | NetBSD
1577
+ :---------------------|:------:|:-------:|:------:
1578
+ cbreak | Y | Y | Y
1579
+ nocbreak | Y | Y | Y
1580
+ echo | Y | Y | Y
1581
+ noecho | Y | Y | Y
1582
+ is_cbreak | - | Y | -
1583
+ is_echo | - | Y | -
1584
+ is_nl | - | Y | -
1585
+ is_raw | - | Y | -
1586
+ PDC_getcbreak | - | - | -
1587
+ PDC_getecho | - | - | -
1588
+ halfdelay | Y | Y | Y
1589
+ intrflush | Y | Y | Y
1590
+ keypad | Y | Y | Y
1591
+ meta | Y | Y | Y
1592
+ nl | Y | Y | Y
1593
+ nonl | Y | Y | Y
1594
+ nodelay | Y | Y | Y
1595
+ notimeout | Y | Y | Y
1596
+ raw | Y | Y | Y
1597
+ noraw | Y | Y | Y
1598
+ noqiflush | Y | Y | Y
1599
+ qiflush | Y | Y | Y
1600
+ timeout | Y | Y | Y
1601
+ wtimeout | Y | Y | Y
1602
+ wgetdelay | - | Y | -
1603
+ typeahead | Y | Y | Y
1604
+ crmode | Y | Y | Y
1605
+ nocrmode | Y | Y | Y
1606
+ is_keypad | - | Y | Y
1607
+ is_nodelay | - | Y | -
1608
+ is_notimeout | - | Y | -
1609
+
1610
+
1611
+
1612
+ --------------------------------------------------------------------------
1613
+
1614
+
1615
+ insch
1616
+ -----
1617
+
1618
+ ### Synopsis
1619
+
1620
+ int insch(chtype ch);
1621
+ int winsch(WINDOW *win, chtype ch);
1622
+ int mvinsch(int y, int x, chtype ch);
1623
+ int mvwinsch(WINDOW *win, int y, int x, chtype ch);
1624
+
1625
+ int insrawch(chtype ch);
1626
+ int winsrawch(WINDOW *win, chtype ch);
1627
+ int mvinsrawch(int y, int x, chtype ch);
1628
+ int mvwinsrawch(WINDOW *win, int y, int x, chtype ch);
1629
+
1630
+ int ins_wch(const cchar_t *wch);
1631
+ int wins_wch(WINDOW *win, const cchar_t *wch);
1632
+ int mvins_wch(int y, int x, const cchar_t *wch);
1633
+ int mvwins_wch(WINDOW *win, int y, int x, const cchar_t *wch);
1634
+
1635
+ ### Description
1636
+
1637
+ The insch() functions insert a chtype into the window at the current
1638
+ or specified cursor position. The cursor is NOT advanced. A newline
1639
+ is equivalent to clrtoeol(); tabs are expanded; other control
1640
+ characters are converted as with unctrl().
1641
+
1642
+ The ins_wch() functions are the wide-character equivalents, taking
1643
+ cchar_t pointers rather than chtypes.
1644
+
1645
+ Video attributes can be combined with a character by ORing them into
1646
+ the parameter. Text, including attributes, can be copied from one
1647
+ place to another using inch() and insch().
1648
+
1649
+ insrawch() etc. are PDCurses-specific wrappers for insch() etc. that
1650
+ disable the translation of control characters.
1651
+
1652
+ ### Return Value
1653
+
1654
+ All functions return OK on success and ERR on error.
1655
+
1656
+ ### Portability
1657
+ Function | X/Open | ncurses | NetBSD
1658
+ :---------------------|:------:|:-------:|:------:
1659
+ insch | Y | Y | Y
1660
+ winsch | Y | Y | Y
1661
+ mvinsch | Y | Y | Y
1662
+ mvwinsch | Y | Y | Y
1663
+ ins_wch | Y | Y | Y
1664
+ wins_wch | Y | Y | Y
1665
+ mvins_wch | Y | Y | Y
1666
+ mvwins_wch | Y | Y | Y
1667
+ insrawch | - | - | -
1668
+ winsrawch | - | - | -
1669
+
1670
+
1671
+
1672
+ --------------------------------------------------------------------------
1673
+
1674
+
1675
+ insstr
1676
+ ------
1677
+
1678
+ ### Synopsis
1679
+
1680
+ int insstr(const char *str);
1681
+ int insnstr(const char *str, int n);
1682
+ int winsstr(WINDOW *win, const char *str);
1683
+ int winsnstr(WINDOW *win, const char *str, int n);
1684
+ int mvinsstr(int y, int x, const char *str);
1685
+ int mvinsnstr(int y, int x, const char *str, int n);
1686
+ int mvwinsstr(WINDOW *win, int y, int x, const char *str);
1687
+ int mvwinsnstr(WINDOW *win, int y, int x, const char *str, int n);
1688
+
1689
+ int ins_wstr(const wchar_t *wstr);
1690
+ int ins_nwstr(const wchar_t *wstr, int n);
1691
+ int wins_wstr(WINDOW *win, const wchar_t *wstr);
1692
+ int wins_nwstr(WINDOW *win, const wchar_t *wstr, int n);
1693
+ int mvins_wstr(int y, int x, const wchar_t *wstr);
1694
+ int mvins_nwstr(int y, int x, const wchar_t *wstr, int n);
1695
+ int mvwins_wstr(WINDOW *win, int y, int x, const wchar_t *wstr);
1696
+ int mvwins_nwstr(WINDOW *win, int y, int x, const wchar_t *wstr, int n);
1697
+
1698
+ ### Description
1699
+
1700
+ The insstr() functions insert a character string into a window at the
1701
+ current cursor position, by repeatedly calling winsch(). When
1702
+ PDCurses is built with wide-character support enabled, the narrow-
1703
+ character functions treat the string as a multibyte string in the
1704
+ current locale, and convert it first. All characters to the right of
1705
+ the cursor are moved to the right, with the possibility of the
1706
+ rightmost characters on the line being lost. The cursor position
1707
+ does not change (after moving to y, x, if specified). The routines
1708
+ with n as the last argument insert at most n characters; if n is
1709
+ negative, then the entire string is inserted.
1710
+
1711
+ ### Return Value
1712
+
1713
+ All functions return OK on success and ERR on error.
1714
+
1715
+ ### Portability
1716
+ Function | X/Open | ncurses | NetBSD
1717
+ :---------------------|:------:|:-------:|:------:
1718
+ insstr | Y | Y | Y
1719
+ winsstr | Y | Y | Y
1720
+ mvinsstr | Y | Y | Y
1721
+ mvwinsstr | Y | Y | Y
1722
+ insnstr | Y | Y | Y
1723
+ winsnstr | Y | Y | Y
1724
+ mvinsnstr | Y | Y | Y
1725
+ mvwinsnstr | Y | Y | Y
1726
+ ins_wstr | Y | Y | Y
1727
+ wins_wstr | Y | Y | Y
1728
+ mvins_wstr | Y | Y | Y
1729
+ mvwins_wstr | Y | Y | Y
1730
+ ins_nwstr | Y | Y | Y
1731
+ wins_nwstr | Y | Y | Y
1732
+ mvins_nwstr | Y | Y | Y
1733
+ mvwins_nwstr | Y | Y | Y
1734
+
1735
+
1736
+
1737
+ --------------------------------------------------------------------------
1738
+
1739
+
1740
+ instr
1741
+ -----
1742
+
1743
+ ### Synopsis
1744
+
1745
+ int instr(char *str);
1746
+ int innstr(char *str, int n);
1747
+ int winstr(WINDOW *win, char *str);
1748
+ int winnstr(WINDOW *win, char *str, int n);
1749
+ int mvinstr(int y, int x, char *str);
1750
+ int mvinnstr(int y, int x, char *str, int n);
1751
+ int mvwinstr(WINDOW *win, int y, int x, char *str);
1752
+ int mvwinnstr(WINDOW *win, int y, int x, char *str, int n);
1753
+
1754
+ int inwstr(wchar_t *wstr);
1755
+ int innwstr(wchar_t *wstr, int n);
1756
+ int winwstr(WINDOW *win, wchar_t *wstr);
1757
+ int winnwstr(WINDOW *win, wchar_t *wstr, int n);
1758
+ int mvinwstr(int y, int x, wchar_t *wstr);
1759
+ int mvinnwstr(int y, int x, wchar_t *wstr, int n);
1760
+ int mvwinwstr(WINDOW *win, int y, int x, wchar_t *wstr);
1761
+ int mvwinnwstr(WINDOW *win, int y, int x, wchar_t *wstr, int n);
1762
+
1763
+ ### Description
1764
+
1765
+ These functions take characters (or wide characters) from the current
1766
+ or specified position in the window, and return them as a string in
1767
+ str (or wstr). Attributes are ignored. The functions with n as the
1768
+ last argument return a string at most n characters long.
1769
+
1770
+ ### Return Value
1771
+
1772
+ Upon successful completion, innstr(), mvinnstr(), mvwinnstr() and
1773
+ winnstr() return the number of characters actually read into the
1774
+ string; instr(), mvinstr(), mvwinstr() and winstr() return OK.
1775
+ Otherwise, all these functions return ERR.
1776
+
1777
+ ### Portability
1778
+ Function | X/Open | ncurses | NetBSD
1779
+ :---------------------|:------:|:-------:|:------:
1780
+ instr | Y | Y | Y
1781
+ winstr | Y | Y | Y
1782
+ mvinstr | Y | Y | Y
1783
+ mvwinstr | Y | Y | Y
1784
+ innstr | Y | Y | Y
1785
+ winnstr | Y | Y | Y
1786
+ mvinnstr | Y | Y | Y
1787
+ mvwinnstr | Y | Y | Y
1788
+ inwstr | Y | Y | Y
1789
+ winwstr | Y | Y | Y
1790
+ mvinwstr | Y | Y | Y
1791
+ mvwinwstr | Y | Y | Y
1792
+ innwstr | Y | Y | Y
1793
+ winnwstr | Y | Y | Y
1794
+ mvinnwstr | Y | Y | Y
1795
+ mvwinnwstr | Y | Y | Y
1796
+
1797
+
1798
+
1799
+ --------------------------------------------------------------------------
1800
+
1801
+
1802
+ kernel
1803
+ ------
1804
+
1805
+ ### Synopsis
1806
+
1807
+ int def_prog_mode(void);
1808
+ int def_shell_mode(void);
1809
+ int reset_prog_mode(void);
1810
+ int reset_shell_mode(void);
1811
+ int resetty(void);
1812
+ int savetty(void);
1813
+ int ripoffline(int line, int (*init)(WINDOW *, int));
1814
+ int curs_set(int visibility);
1815
+ int napms(int ms);
1816
+
1817
+ int draino(int ms);
1818
+ int resetterm(void);
1819
+ int fixterm(void);
1820
+ int saveterm(void);
1821
+
1822
+ ### Description
1823
+
1824
+ def_prog_mode() and def_shell_mode() save the current terminal modes
1825
+ as the "program" (in curses) or "shell" (not in curses) state for use
1826
+ by the reset_prog_mode() and reset_shell_mode() functions. This is
1827
+ done automatically by initscr().
1828
+
1829
+ reset_prog_mode() and reset_shell_mode() restore the terminal to
1830
+ "program" (in curses) or "shell" (not in curses) state. These are
1831
+ done automatically by endwin() and doupdate() after an endwin(), so
1832
+ they would normally not be called before these functions.
1833
+
1834
+ savetty() and resetty() save and restore the state of the terminal
1835
+ modes. savetty() saves the current state in a buffer, and resetty()
1836
+ restores the state to what it was at the last call to savetty().
1837
+
1838
+ curs_set() alters the appearance of the cursor. A visibility of 0
1839
+ makes it disappear; 1 makes it appear "normal" (usually an underline)
1840
+ and 2 makes it "highly visible" (usually a block).
1841
+
1842
+ ripoffline() reduces the size of stdscr by one line. If the "line"
1843
+ parameter is positive, the line is removed from the top of the
1844
+ screen; if negative, from the bottom. Up to 5 lines can be ripped off
1845
+ stdscr by calling ripoffline() repeatedly. The function argument,
1846
+ init, is called from within initscr() or newterm(), so ripoffline()
1847
+ must be called before either of these functions. The init function
1848
+ receives a pointer to a one-line WINDOW, and the width of the window.
1849
+ Calling ripoffline() with a NULL init function pointer is an error.
1850
+
1851
+ napms() suspends the program for the specified number of
1852
+ milliseconds. draino() is an archaic equivalent. Note that since
1853
+ napms() attempts to give up a time slice and yield control back to
1854
+ the OS, all times are approximate. (In DOS, the delay is actually
1855
+ rounded to the nearest 'tick' (~55 milliseconds), with a minimum of
1856
+ one interval; i.e., 1-82 will wait ~55ms, 83-137 will wait ~110ms,
1857
+ etc.) 0 returns immediately.
1858
+
1859
+ resetterm(), fixterm() and saveterm() are archaic equivalents for
1860
+ reset_shell_mode(), reset_prog_mode() and def_prog_mode(),
1861
+ respectively.
1862
+
1863
+ ### Return Value
1864
+
1865
+ All functions return OK on success and ERR on error, except
1866
+ curs_set(), which returns the previous visibility.
1867
+
1868
+ ### Portability
1869
+ Function | X/Open | ncurses | NetBSD
1870
+ :---------------------|:------:|:-------:|:------:
1871
+ def_prog_mode | Y | Y | Y
1872
+ def_shell_mode | Y | Y | Y
1873
+ reset_prog_mode | Y | Y | Y
1874
+ reset_shell_mode | Y | Y | Y
1875
+ resetty | Y | Y | Y
1876
+ savetty | Y | Y | Y
1877
+ ripoffline | Y | Y | Y
1878
+ curs_set | Y | Y | Y
1879
+ napms | Y | Y | Y
1880
+ fixterm | - | Y | -
1881
+ resetterm | - | Y | -
1882
+ saveterm | - | Y | -
1883
+ draino | - | - | -
1884
+
1885
+
1886
+
1887
+ --------------------------------------------------------------------------
1888
+
1889
+
1890
+ keyname
1891
+ -------
1892
+
1893
+ ### Synopsis
1894
+
1895
+ char *keyname(int key);
1896
+
1897
+ char *key_name(wchar_t c);
1898
+
1899
+ bool has_key(int key);
1900
+
1901
+ ### Description
1902
+
1903
+ keyname() returns a string corresponding to the argument key. key may
1904
+ be any key returned by wgetch().
1905
+
1906
+ key_name() is the wide-character version. It takes a wchar_t
1907
+ parameter, but still returns a char *.
1908
+
1909
+ has_key() returns TRUE for recognized keys, FALSE otherwise. This
1910
+ function is an ncurses extension.
1911
+
1912
+ ### Portability
1913
+ Function | X/Open | ncurses | NetBSD
1914
+ :---------------------|:------:|:-------:|:------:
1915
+ keyname | Y | Y | Y
1916
+ key_name | Y | Y | Y
1917
+ has_key | - | Y | Y
1918
+
1919
+
1920
+
1921
+ --------------------------------------------------------------------------
1922
+
1923
+
1924
+ mouse
1925
+ -----
1926
+
1927
+ ### Synopsis
1928
+
1929
+ int mouse_set(mmask_t mbe);
1930
+ int mouse_on(mmask_t mbe);
1931
+ int mouse_off(mmask_t mbe);
1932
+ int request_mouse_pos(void);
1933
+ void wmouse_position(WINDOW *win, int *y, int *x);
1934
+ mmask_t getmouse(void);
1935
+
1936
+ int mouseinterval(int wait);
1937
+ bool wenclose(const WINDOW *win, int y, int x);
1938
+ bool wmouse_trafo(const WINDOW *win, int *y, int *x, bool to_screen);
1939
+ bool mouse_trafo(int *y, int *x, bool to_screen);
1940
+ mmask_t mousemask(mmask_t mask, mmask_t *oldmask);
1941
+ int nc_getmouse(MEVENT *event);
1942
+ int ungetmouse(MEVENT *event);
1943
+ bool has_mouse(void);
1944
+
1945
+ ### Description
1946
+
1947
+ As of PDCurses 3.0, there are two separate mouse interfaces: the
1948
+ classic interface, which is based on the undocumented Sys V mouse
1949
+ functions; and an ncurses-compatible interface. Both are active at
1950
+ all times, and you can mix and match functions from each, though it's
1951
+ not recommended. The ncurses interface is essentially an emulation
1952
+ layer built on top of the classic interface; it's here to allow
1953
+ easier porting of ncurses apps.
1954
+
1955
+ The classic interface: mouse_set(), mouse_on(), mouse_off(),
1956
+ request_mouse_pos(), wmouse_position(), and getmouse(). An
1957
+ application using this interface would start by calling mouse_set()
1958
+ or mouse_on() with a non-zero value, often ALL_MOUSE_EVENTS. Then it
1959
+ would check for a KEY_MOUSE return from getch(). If found, it would
1960
+ call request_mouse_pos() to get the current mouse status.
1961
+
1962
+ mouse_set(), mouse_on() and mouse_off() are analagous to attrset(),
1963
+ attron() and attroff(). These functions set the mouse button events
1964
+ to trap. The button masks used in these functions are defined in
1965
+ curses.h and can be or'ed together. They are the group of masks
1966
+ starting with BUTTON1_RELEASED.
1967
+
1968
+ request_mouse_pos() requests curses to fill in the Mouse_status
1969
+ structure with the current state of the mouse.
1970
+
1971
+ wmouse_position() determines if the current mouse position is within
1972
+ the window passed as an argument. If the mouse is outside the current
1973
+ window, -1 is returned in the y and x arguments; otherwise the y and
1974
+ x coordinates of the mouse (relative to the top left corner of the
1975
+ window) are returned in y and x.
1976
+
1977
+ getmouse() returns the current status of the trapped mouse buttons as
1978
+ set by mouse_set() or mouse_on().
1979
+
1980
+ The ncurses interface: mouseinterval(), wenclose(), wmouse_trafo(),
1981
+ mouse_trafo(), mousemask(), nc_getmouse(), ungetmouse() and
1982
+ has_mouse(). A typical application using this interface would start
1983
+ by calling mousemask() with a non-zero value, often ALL_MOUSE_EVENTS.
1984
+ Then it would check for a KEY_MOUSE return from getch(). If found, it
1985
+ would call nc_getmouse() to get the current mouse status.
1986
+
1987
+ mouseinterval() sets the timeout for a mouse click. On all current
1988
+ platforms, PDCurses receives mouse button press and release events,
1989
+ but must synthesize click events. It does this by checking whether a
1990
+ release event is queued up after a press event. If it gets a press
1991
+ event, and there are no more events waiting, it will wait for the
1992
+ timeout interval, then check again for a release. A press followed by
1993
+ a release is reported as BUTTON_CLICKED; otherwise it's passed
1994
+ through as BUTTON_PRESSED. The default timeout is 150ms; valid values
1995
+ are 0 (no clicks reported) through 1000ms. In x11, the timeout can
1996
+ also be set via the clickPeriod resource. The return value from
1997
+ mouseinterval() is the old timeout. To check the old value without
1998
+ setting a new one, call it with a parameter of -1. Note that although
1999
+ there's no classic equivalent for this function (apart from the
2000
+ clickPeriod resource), the value set applies in both interfaces.
2001
+
2002
+ wenclose() reports whether the given screen-relative y, x coordinates
2003
+ fall within the given window.
2004
+
2005
+ wmouse_trafo() converts between screen-relative and window-relative
2006
+ coordinates. A to_screen parameter of TRUE means to convert from
2007
+ window to screen; otherwise the reverse. The function returns FALSE
2008
+ if the coordinates aren't within the window, or if any of the
2009
+ parameters are NULL. The coordinates have been converted when the
2010
+ function returns TRUE.
2011
+
2012
+ mouse_trafo() is the stdscr version of wmouse_trafo().
2013
+
2014
+ mousemask() is nearly equivalent to mouse_set(), but instead of
2015
+ OK/ERR, it returns the value of the mask after setting it. (This
2016
+ isn't necessarily the same value passed in, since the mask could be
2017
+ altered on some platforms.) And if the second parameter is a non-null
2018
+ pointer, mousemask() stores the previous mask value there. Also,
2019
+ since the ncurses interface doesn't work with PDCurses' BUTTON_MOVED
2020
+ events, mousemask() filters them out.
2021
+
2022
+ nc_getmouse() returns the current mouse status in an MEVENT struct.
2023
+ This is equivalent to ncurses' getmouse(), renamed to avoid conflict
2024
+ with PDCurses' getmouse(). But if you define PDC_NCMOUSE before
2025
+ including curses.h, it defines getmouse() to nc_getmouse(), along
2026
+ with a few other redefintions needed for compatibility with ncurses
2027
+ code. nc_getmouse() calls request_mouse_pos(), which (not getmouse())
2028
+ is the classic equivalent.
2029
+
2030
+ ungetmouse() is the mouse equivalent of ungetch(). However, PDCurses
2031
+ doesn't maintain a queue of mouse events; only one can be pushed
2032
+ back, and it can overwrite or be overwritten by real mouse events.
2033
+
2034
+ has_mouse() reports whether the mouse is available at all on the
2035
+ current platform.
2036
+
2037
+ ### Portability
2038
+ Function | X/Open | ncurses | NetBSD
2039
+ :---------------------|:------:|:-------:|:------:
2040
+ mouse_set | - | - | -
2041
+ mouse_on | - | - | -
2042
+ mouse_off | - | - | -
2043
+ request_mouse_pos | - | - | -
2044
+ wmouse_position | - | - | -
2045
+ getmouse | - | * | -
2046
+ mouseinterval | - | Y | -
2047
+ wenclose | - | Y | -
2048
+ wmouse_trafo | - | Y | -
2049
+ mouse_trafo | - | Y | -
2050
+ mousemask | - | Y | -
2051
+ nc_getmouse | - | * | -
2052
+ ungetmouse | - | Y | -
2053
+ has_mouse | - | Y | -
2054
+
2055
+ * See above, under Description
2056
+
2057
+
2058
+
2059
+ --------------------------------------------------------------------------
2060
+
2061
+
2062
+ move
2063
+ ----
2064
+
2065
+ ### Synopsis
2066
+
2067
+ int move(int y, int x);
2068
+ int mvcur(int oldrow, int oldcol, int newrow, int newcol);
2069
+ int wmove(WINDOW *win, int y, int x);
2070
+
2071
+ ### Description
2072
+
2073
+ move() and wmove() move the cursor associated with the window to the
2074
+ given location. This does not move the physical cursor of the
2075
+ terminal until refresh() is called. The position specified is
2076
+ relative to the upper left corner of the window, which is (0,0).
2077
+
2078
+ mvcur() moves the physical cursor without updating any window cursor
2079
+ positions.
2080
+
2081
+ ### Return Value
2082
+
2083
+ All functions return OK on success and ERR on error.
2084
+
2085
+ ### Portability
2086
+ Function | X/Open | ncurses | NetBSD
2087
+ :---------------------|:------:|:-------:|:------:
2088
+ move | Y | Y | Y
2089
+ mvcur | Y | Y | Y
2090
+ wmove | Y | Y | Y
2091
+
2092
+
2093
+
2094
+ --------------------------------------------------------------------------
2095
+
2096
+
2097
+ outopts
2098
+ -------
2099
+
2100
+ ### Synopsis
2101
+
2102
+ int clearok(WINDOW *win, bool bf);
2103
+ int idlok(WINDOW *win, bool bf);
2104
+ void idcok(WINDOW *win, bool bf);
2105
+ void immedok(WINDOW *win, bool bf);
2106
+ int leaveok(WINDOW *win, bool bf);
2107
+ int setscrreg(int top, int bot);
2108
+ int wsetscrreg(WINDOW *win, int top, int bot);
2109
+ int wgetscrreg(const WINDOW *win, int *top, int *bot);
2110
+ int scrollok(WINDOW *win, bool bf);
2111
+
2112
+ int raw_output(bool bf);
2113
+
2114
+ bool is_cleared(const WINDOW *win);
2115
+ bool is_idlok(const WINDOW *win);
2116
+ bool is_idcok(const WINDOW *win);
2117
+ bool is_immedok(const WINDOW *win);
2118
+ bool is_leaveok(const WINDOW *win);
2119
+ bool is_scrollok(const WINDOW *win);
2120
+
2121
+ ### Description
2122
+
2123
+ With clearok(), if bf is TRUE, the next call to wrefresh() with this
2124
+ window will clear the screen completely and redraw the entire screen.
2125
+
2126
+ immedok(), called with a second argument of TRUE, causes an automatic
2127
+ wrefresh() every time a change is made to the specified window.
2128
+
2129
+ Normally, the hardware cursor is left at the location of the window
2130
+ being refreshed. leaveok() allows the cursor to be left wherever the
2131
+ update happens to leave it. It's useful for applications where the
2132
+ cursor is not used, since it reduces the need for cursor motions. If
2133
+ possible, the cursor is made invisible when this option is enabled.
2134
+
2135
+ wsetscrreg() sets a scrolling region in a window; "top" and "bot" are
2136
+ the line numbers for the top and bottom margins. If this option and
2137
+ scrollok() are enabled, any attempt to move off the bottom margin
2138
+ will cause all lines in the scrolling region to scroll up one line.
2139
+ setscrreg() is the stdscr version.
2140
+
2141
+ wgetscrreg() gets the top and bottom margins as set in wsetscrreg().
2142
+
2143
+ idlok(), idcok(), is_idlok() and is_idcok() do nothing in PDCursesMod,
2144
+ but are provided for compatibility with other curses implementations.
2145
+
2146
+ raw_output() enables the output of raw characters using the standard
2147
+ *add* and *ins* curses functions (that is, it disables translation of
2148
+ control characters).
2149
+
2150
+ is_cleared() reports whether the specified window causes clear at next
2151
+ refresh.
2152
+
2153
+ is_immedok() reports whether the specified window is in immedok mode.
2154
+
2155
+ is_leaveok() reports whether the specified window is in leaveok mode.
2156
+
2157
+ is_scrollok() reports whether the specified window allows scrolling.
2158
+
2159
+ ### Return Value
2160
+
2161
+ All functions returning integers return OK on success and ERR on
2162
+ error.
2163
+
2164
+ is_cleared(), is_immedok(), is_leaveok() and is_scrollok() are
2165
+ booleans and return TRUE or FALSE.
2166
+
2167
+ is_idlok() and is_idcok() are provided for compatibility with other
2168
+ curses implementations. They have no real meaning in PDCursesMod and
2169
+ will always return FALSE.
2170
+
2171
+ ### Portability
2172
+ Function | X/Open | ncurses | NetBSD
2173
+ :---------------------|:------:|:-------:|:------:
2174
+ clearok | Y | Y | Y
2175
+ idlok | Y | Y | Y
2176
+ idcok | Y | Y | Y
2177
+ immedok | Y | Y | Y
2178
+ leaveok | Y | Y | Y
2179
+ setscrreg | Y | Y | Y
2180
+ wsetscrreg | Y | Y | Y
2181
+ wgetscrreg | - | Y | -
2182
+ scrollok | Y | Y | Y
2183
+ is_cleared | - | Y | -
2184
+ is_idlok | - | Y | -
2185
+ is_idcok | - | Y | -
2186
+ is_immedok | - | Y | -
2187
+ is_leaveok | - | Y | Y
2188
+ is_scrollok | - | Y | -
2189
+ raw_output | - | - | -
2190
+
2191
+
2192
+
2193
+ --------------------------------------------------------------------------
2194
+
2195
+
2196
+ overlay
2197
+ -------
2198
+
2199
+ ### Synopsis
2200
+
2201
+ int overlay(const WINDOW *src_w, WINDOW *dst_w)
2202
+ int overwrite(const WINDOW *src_w, WINDOW *dst_w)
2203
+ int copywin(const WINDOW *src_w, WINDOW *dst_w, int src_tr,
2204
+ int src_tc, int dst_tr, int dst_tc, int dst_br,
2205
+ int dst_bc, int _overlay)
2206
+
2207
+ ### Description
2208
+
2209
+ overlay() and overwrite() copy all the text from src_w into dst_w.
2210
+ The windows need not be the same size. Those characters in the source
2211
+ window that intersect with the destination window are copied, so that
2212
+ the characters appear in the same physical position on the screen.
2213
+ The difference between the two functions is that overlay() is non-
2214
+ destructive (blanks are not copied) while overwrite() is destructive
2215
+ (blanks are copied).
2216
+
2217
+ copywin() is similar, but doesn't require that the two windows
2218
+ overlap. The arguments src_tc and src_tr specify the top left corner
2219
+ of the region to be copied. dst_tc, dst_tr, dst_br, and dst_bc
2220
+ specify the region within the destination window to copy to. The
2221
+ argument "overlay", if TRUE, indicates that the copy is done non-
2222
+ destructively (as in overlay()); blanks in the source window are not
2223
+ copied to the destination window. When overlay is FALSE, blanks are
2224
+ copied.
2225
+
2226
+ ### Return Value
2227
+
2228
+ All functions return OK on success and ERR on error.
2229
+
2230
+ ### Portability
2231
+ Function | X/Open | ncurses | NetBSD
2232
+ :---------------------|:------:|:-------:|:------:
2233
+ overlay | Y | Y | Y
2234
+ overwrite | Y | Y | Y
2235
+ copywin | Y | Y | Y
2236
+
2237
+
2238
+
2239
+ --------------------------------------------------------------------------
2240
+
2241
+
2242
+ pad
2243
+ ---
2244
+
2245
+ ### Synopsis
2246
+
2247
+ WINDOW *newpad(int nlines, int ncols);
2248
+ WINDOW *subpad(WINDOW *orig, int nlines, int ncols,
2249
+ int begy, int begx);
2250
+ int prefresh(WINDOW *win, int py, int px, int sy1, int sx1,
2251
+ int sy2, int sx2);
2252
+ int pnoutrefresh(WINDOW *w, int py, int px, int sy1, int sx1,
2253
+ int sy2, int sx2);
2254
+ int pechochar(WINDOW *pad, chtype ch);
2255
+ int pecho_wchar(WINDOW *pad, const cchar_t *wch);
2256
+
2257
+ bool is_pad(const WINDOW *pad);
2258
+
2259
+ ### Description
2260
+
2261
+ A pad is a special kind of window, which is not restricted by the
2262
+ screen size, and is not necessarily associated with a particular part
2263
+ of the screen. You can use a pad when you need a large window, and
2264
+ only a part of the window will be on the screen at one time. Pads are
2265
+ not refreshed automatically (e.g., from scrolling or echoing of
2266
+ input). You can't call wrefresh() with a pad as an argument; use
2267
+ prefresh() or pnoutrefresh() instead. Note that these routines
2268
+ require additional parameters to specify the part of the pad to be
2269
+ displayed, and the location to use on the screen.
2270
+
2271
+ newpad() creates a new pad data structure.
2272
+
2273
+ subpad() creates a new sub-pad within a pad, at position (begy,
2274
+ begx), with dimensions of nlines lines and ncols columns. This
2275
+ position is relative to the pad, and not to the screen as with
2276
+ subwin. Changes to either the parent pad or sub-pad will affect both.
2277
+ When using sub-pads, you may need to call touchwin() before calling
2278
+ prefresh().
2279
+
2280
+ pnoutrefresh() copies the specified pad to the virtual screen.
2281
+
2282
+ prefresh() calls pnoutrefresh(), followed by doupdate().
2283
+
2284
+ These routines are analogous to wnoutrefresh() and wrefresh(). (py,
2285
+ px) specifies the upper left corner of the part of the pad to be
2286
+ displayed; (sy1, sx1) and (sy2, sx2) describe the screen rectangle
2287
+ that will contain the selected part of the pad.
2288
+
2289
+ pechochar() is functionally equivalent to addch() followed by a call
2290
+ to prefresh(), with the last-used coordinates and dimensions.
2291
+ pecho_wchar() is the wide-character version.
2292
+
2293
+ is_pad() reports whether the specified window is a pad.
2294
+
2295
+ ### Return Value
2296
+
2297
+ All functions except is_pad() return OK on success and ERR on error.
2298
+
2299
+ ### Portability
2300
+ Function | X/Open | ncurses | NetBSD
2301
+ :---------------------|:------:|:-------:|:------:
2302
+ newpad | Y | Y | Y
2303
+ subpad | Y | Y | Y
2304
+ prefresh | Y | Y | Y
2305
+ pnoutrefresh | Y | Y | Y
2306
+ pechochar | Y | Y | Y
2307
+ pecho_wchar | Y | Y | Y
2308
+ is_pad | - | Y | Y
2309
+
2310
+
2311
+
2312
+ --------------------------------------------------------------------------
2313
+
2314
+
2315
+ panel
2316
+ -----
2317
+
2318
+ ### Synopsis
2319
+
2320
+ int bottom_panel(PANEL *pan);
2321
+ int del_panel(PANEL *pan);
2322
+ int hide_panel(PANEL *pan);
2323
+ int move_panel(PANEL *pan, int starty, int startx);
2324
+ PANEL *new_panel(WINDOW *win);
2325
+ PANEL *panel_above(const PANEL *pan);
2326
+ PANEL *panel_below(const PANEL *pan);
2327
+ PANEL *ground_panel(SCREEN *sp);
2328
+ PANEL *ceiling_panel(SCREEN *sp);
2329
+ int panel_hidden(const PANEL *pan);
2330
+ const void *panel_userptr(const PANEL *pan);
2331
+ WINDOW *panel_window(const PANEL *pan);
2332
+ int replace_panel(PANEL *pan, WINDOW *win);
2333
+ int set_panel_userptr(PANEL *pan, const void *uptr);
2334
+ int show_panel(PANEL *pan);
2335
+ int top_panel(PANEL *pan);
2336
+ void update_panels(void);
2337
+
2338
+ ### Description
2339
+
2340
+ For historic reasons, and for compatibility with other versions of
2341
+ curses, the panel functions are prototyped in a separate header,
2342
+ panel.h. In many implementations, they're also in a separate library,
2343
+ but PDCurses incorporates them.
2344
+
2345
+ The panel functions provide a way to have depth relationships between
2346
+ curses windows. Panels can overlap without making visible the
2347
+ overlapped portions of underlying windows. The initial curses window,
2348
+ stdscr, lies beneath all panels. The set of currently visible panels
2349
+ is the 'deck' of panels.
2350
+
2351
+ You can create panels, fetch and set their associated windows,
2352
+ shuffle panels in the deck, and manipulate them in other ways.
2353
+
2354
+ bottom_panel() places pan at the bottom of the deck. The size,
2355
+ location and contents of the panel are unchanged.
2356
+
2357
+ del_panel() deletes pan, but not its associated window.
2358
+
2359
+ hide_panel() removes a panel from the deck and thus hides it from
2360
+ view.
2361
+
2362
+ move_panel() moves the curses window associated with pan, so that its
2363
+ upper lefthand corner is at the supplied coordinates. (Don't use
2364
+ mvwin() on the window.)
2365
+
2366
+ new_panel() creates a new panel associated with win and returns the
2367
+ panel pointer. The new panel is placed at the top of the deck.
2368
+
2369
+ panel_above() returns a pointer to the panel in the deck above pan,
2370
+ or NULL if pan is the top panel. If the value of pan passed is NULL,
2371
+ this function returns a pointer to the bottom panel in the deck.
2372
+
2373
+ panel_below() returns a pointer to the panel in the deck below pan,
2374
+ or NULL if pan is the bottom panel. If the value of pan passed is
2375
+ NULL, this function returns a pointer to the top panel in the deck.
2376
+
2377
+ ground_panel() returns a pointer to the bottom panel in the deck.
2378
+
2379
+ ceiling_panel() returns a pointer to the top panel in the deck.
2380
+
2381
+ panel_hidden() returns TRUE if pan is hidden, FALSE if not and
2382
+ ERR if pan is NULL.
2383
+
2384
+ panel_userptr() - Each panel has a user pointer available for
2385
+ maintaining relevant information. This function returns a pointer to
2386
+ that information previously set up by set_panel_userptr().
2387
+
2388
+ panel_window() returns a pointer to the curses window associated with
2389
+ the panel.
2390
+
2391
+ replace_panel() replaces the current window of pan with win.
2392
+
2393
+ set_panel_userptr() - Each panel has a user pointer available for
2394
+ maintaining relevant information. This function sets the value of
2395
+ that information.
2396
+
2397
+ show_panel() makes a previously hidden panel visible and places it
2398
+ back in the deck on top.
2399
+
2400
+ top_panel() places pan on the top of the deck. The size, location and
2401
+ contents of the panel are unchanged.
2402
+
2403
+ update_panels() refreshes the virtual screen to reflect the depth
2404
+ relationships between the panels in the deck. The user must use
2405
+ doupdate() to refresh the physical screen.
2406
+
2407
+ ### Return Value
2408
+
2409
+ Each routine that returns a pointer to an object returns NULL if an
2410
+ error occurs. Each panel routine that returns an integer, returns OK
2411
+ if it executes successfully and ERR if it does not, with the exception
2412
+ of panel_hidden returning TRUE/FALSE/ERR.
2413
+
2414
+ ### Portability
2415
+ Function | X/Open | ncurses | NetBSD
2416
+ :---------------------|:------:|:-------:|:------:
2417
+ bottom_panel | - | Y | Y
2418
+ del_panel | - | Y | Y
2419
+ hide_panel | - | Y | Y
2420
+ move_panel | - | Y | Y
2421
+ new_panel | - | Y | Y
2422
+ panel_above | - | Y | Y
2423
+ panel_below | - | Y | Y
2424
+ ground_panel | - | Y | N
2425
+ ceiling_panel | - | Y | N
2426
+ panel_hidden | - | Y | Y
2427
+ panel_userptr | - | Y | Y
2428
+ panel_window | - | Y | Y
2429
+ replace_panel | - | Y | Y
2430
+ set_panel_userptr | - | Y | Y
2431
+ show_panel | - | Y | Y
2432
+ top_panel | - | Y | Y
2433
+ update_panels | - | Y | Y
2434
+
2435
+ Note: Before PDC_BUILD 4500 panel_hidden did not return the expected
2436
+ values TRUE (1) and FALSE (0), but OK (0) and ERR (-1).
2437
+
2438
+ Credits:
2439
+ Original Author - Warren Tucker <wht@n4hgf.mt-park.ga.us>
2440
+
2441
+
2442
+
2443
+ --------------------------------------------------------------------------
2444
+
2445
+
2446
+ printw
2447
+ ------
2448
+
2449
+ ### Synopsis
2450
+
2451
+ int printw(const char *fmt, ...);
2452
+ int wprintw(WINDOW *win, const char *fmt, ...);
2453
+ int mvprintw(int y, int x, const char *fmt, ...);
2454
+ int mvwprintw(WINDOW *win, int y, int x, const char *fmt,...);
2455
+ int vwprintw(WINDOW *win, const char *fmt, va_list varglist);
2456
+ int vw_printw(WINDOW *win, const char *fmt, va_list varglist);
2457
+
2458
+ ### Description
2459
+
2460
+ The printw() functions add a formatted string to the window at the
2461
+ current or specified cursor position. The format strings are the same
2462
+ as used in the standard C library's printf(). (printw() can be used
2463
+ as a drop-in replacement for printf().)
2464
+
2465
+ The duplication between vwprintw() and vw_printw() is for historic
2466
+ reasons. In PDCurses, they're the same.
2467
+
2468
+ ### Return Value
2469
+
2470
+ All functions return the number of characters printed, or ERR on
2471
+ error. Note that this is nonstandard; other implementations return
2472
+ OK upon successful completion.
2473
+
2474
+ ### Portability
2475
+ Function | X/Open | ncurses | NetBSD
2476
+ :---------------------|:------:|:-------:|:------:
2477
+ printw | Y | Y | Y
2478
+ wprintw | Y | Y | Y
2479
+ mvprintw | Y | Y | Y
2480
+ mvwprintw | Y | Y | Y
2481
+ vwprintw | Y | Y | Y
2482
+ vw_printw | Y | Y | Y
2483
+
2484
+
2485
+
2486
+ --------------------------------------------------------------------------
2487
+
2488
+
2489
+ refresh
2490
+ -------
2491
+
2492
+ ### Synopsis
2493
+
2494
+ int refresh(void);
2495
+ int wrefresh(WINDOW *win);
2496
+ int wnoutrefresh(WINDOW *win);
2497
+ int doupdate(void);
2498
+ int redrawwin(WINDOW *win);
2499
+ int wredrawln(WINDOW *win, int beg_line, int num_lines);
2500
+
2501
+ ### Description
2502
+
2503
+ wrefresh() copies the named window to the physical terminal screen,
2504
+ taking into account what is already there in order to optimize cursor
2505
+ movement. refresh() does the same, using stdscr. These routines must
2506
+ be called to get any output on the terminal, as other routines only
2507
+ manipulate data structures. Unless leaveok() has been enabled, the
2508
+ physical cursor of the terminal is left at the location of the
2509
+ window's cursor.
2510
+
2511
+ wnoutrefresh() and doupdate() allow multiple updates with more
2512
+ efficiency than wrefresh() alone. wrefresh() works by first calling
2513
+ wnoutrefresh(), which copies the named window to the virtual screen.
2514
+ It then calls doupdate(), which compares the virtual screen to the
2515
+ physical screen and does the actual update. A series of calls to
2516
+ wrefresh() will result in alternating calls to wnoutrefresh() and
2517
+ doupdate(), causing several bursts of output to the screen. By first
2518
+ calling wnoutrefresh() for each window, it is then possible to call
2519
+ doupdate() only once.
2520
+
2521
+ In PDCurses, redrawwin() is equivalent to touchwin(), and wredrawln()
2522
+ is the same as touchline(). In some other curses implementations,
2523
+ there's a subtle distinction, but it has no meaning in PDCurses.
2524
+
2525
+ ### Return Value
2526
+
2527
+ All functions return OK on success and ERR on error.
2528
+
2529
+ ### Portability
2530
+ Function | X/Open | ncurses | NetBSD
2531
+ :---------------------|:------:|:-------:|:------:
2532
+ refresh | Y | Y | Y
2533
+ wrefresh | Y | Y | Y
2534
+ wnoutrefresh | Y | Y | Y
2535
+ doupdate | Y | Y | Y
2536
+ redrawwin | Y | Y | Y
2537
+ wredrawln | Y | Y | Y
2538
+
2539
+
2540
+
2541
+ --------------------------------------------------------------------------
2542
+
2543
+
2544
+ scanw
2545
+ -----
2546
+
2547
+ ### Synopsis
2548
+
2549
+ int scanw(const char *fmt, ...);
2550
+ int wscanw(WINDOW *win, const char *fmt, ...);
2551
+ int mvscanw(int y, int x, const char *fmt, ...);
2552
+ int mvwscanw(WINDOW *win, int y, int x, const char *fmt, ...);
2553
+ int vwscanw(WINDOW *win, const char *fmt, va_list varglist);
2554
+ int vw_scanw(WINDOW *win, const char *fmt, va_list varglist);
2555
+
2556
+ ### Description
2557
+
2558
+ These routines correspond to the standard C library's scanf() family.
2559
+ Each gets a string from the window via wgetnstr(), and uses the
2560
+ resulting line as input for the scan.
2561
+
2562
+ The duplication between vwscanw() and vw_scanw() is for historic
2563
+ reasons. In PDCurses, they're the same.
2564
+
2565
+ ### Return Value
2566
+
2567
+ On successful completion, these functions return the number of items
2568
+ successfully matched. Otherwise they return ERR.
2569
+
2570
+ ### Portability
2571
+ Function | X/Open | ncurses | NetBSD
2572
+ :---------------------|:------:|:-------:|:------:
2573
+ scanw | Y | Y | Y
2574
+ wscanw | Y | Y | Y
2575
+ mvscanw | Y | Y | Y
2576
+ mvwscanw | Y | Y | Y
2577
+ vwscanw | Y | Y | Y
2578
+ vw_scanw | Y | Y | Y
2579
+
2580
+
2581
+
2582
+ --------------------------------------------------------------------------
2583
+
2584
+
2585
+ scr_dump
2586
+ --------
2587
+
2588
+ ### Synopsis
2589
+
2590
+ int putwin(WINDOW *win, FILE *filep);
2591
+ WINDOW *getwin(FILE *filep);
2592
+ int scr_dump(const char *filename);
2593
+ int scr_init(const char *filename);
2594
+ int scr_restore(const char *filename);
2595
+ int scr_set(const char *filename);
2596
+
2597
+ ### Description
2598
+
2599
+ getwin() reads window-related data previously stored in a file by
2600
+ putwin(). It then creates and initialises a new window using that
2601
+ data.
2602
+
2603
+ putwin() writes all data associated with a window into a file, using
2604
+ an unspecified format. This information can be retrieved later using
2605
+ getwin().
2606
+
2607
+ scr_dump() writes the current contents of the virtual screen to the
2608
+ file named by filename in an unspecified format.
2609
+
2610
+ scr_restore() function sets the virtual screen to the contents of the
2611
+ file named by filename, which must have been written using
2612
+ scr_dump(). The next refresh operation restores the screen to the way
2613
+ it looked in the dump file.
2614
+
2615
+ In PDCurses, scr_init() does nothing, and scr_set() is a synonym for
2616
+ scr_restore(). Also, scr_dump() and scr_restore() save and load from
2617
+ curscr. This differs from some other implementations, where
2618
+ scr_init() works with curscr, and scr_restore() works with newscr;
2619
+ but the effect should be the same. (PDCurses has no newscr.)
2620
+
2621
+ ### Return Value
2622
+
2623
+ On successful completion, getwin() returns a pointer to the window it
2624
+ created. Otherwise, it returns a null pointer. Other functions return
2625
+ OK or ERR.
2626
+
2627
+ ### Portability
2628
+ Function | X/Open | ncurses | NetBSD
2629
+ :---------------------|:------:|:-------:|:------:
2630
+ putwin | Y | Y | Y
2631
+ getwin | Y | Y | Y
2632
+ scr_dump | Y | Y | -
2633
+ scr_init | Y | Y | -
2634
+ scr_restore | Y | Y | -
2635
+ scr_set | Y | Y | -
2636
+
2637
+
2638
+
2639
+ --------------------------------------------------------------------------
2640
+
2641
+
2642
+ scroll
2643
+ ------
2644
+
2645
+ ### Synopsis
2646
+
2647
+ int scroll(WINDOW *win);
2648
+ int scrl(int n);
2649
+ int wscrl(WINDOW *win, int n);
2650
+
2651
+ ### Description
2652
+
2653
+ scroll() causes the window to scroll up one line. This involves
2654
+ moving the lines in the window data strcture.
2655
+
2656
+ With a positive n, scrl() and wscrl() scroll the window up n lines
2657
+ (line i + n becomes i); otherwise they scroll the window down n
2658
+ lines.
2659
+
2660
+ For these functions to work, scrolling must be enabled via
2661
+ scrollok(). Note also that scrolling is not allowed if the supplied
2662
+ window is a pad.
2663
+
2664
+ ### Return Value
2665
+
2666
+ All functions return OK on success and ERR on error.
2667
+
2668
+ ### Portability
2669
+ Function | X/Open | ncurses | NetBSD
2670
+ :---------------------|:------:|:-------:|:------:
2671
+ scroll | Y | Y | Y
2672
+ scrl | Y | Y | Y
2673
+ wscrl | Y | Y | Y
2674
+
2675
+
2676
+
2677
+ --------------------------------------------------------------------------
2678
+
2679
+
2680
+ slk
2681
+ ---
2682
+
2683
+ ### Synopsis
2684
+
2685
+ int slk_init(int fmt);
2686
+ int slk_set(int labnum, const char *label, int justify);
2687
+ int slk_refresh(void);
2688
+ int slk_noutrefresh(void);
2689
+ char *slk_label(int labnum);
2690
+ int slk_clear(void);
2691
+ int slk_restore(void);
2692
+ int slk_touch(void);
2693
+ int slk_attron(const chtype attrs);
2694
+ int slk_attr_on(const attr_t attrs, void *opts);
2695
+ int slk_attrset(const chtype attrs);
2696
+ int slk_attr_set(const attr_t attrs, short color_pair, void *opts);
2697
+ int slk_attroff(const chtype attrs);
2698
+ int slk_attr_off(const attr_t attrs, void *opts);
2699
+ int slk_color(short color_pair);
2700
+
2701
+ int slk_wset(int labnum, const wchar_t *label, int justify);
2702
+
2703
+ wchar_t *slk_wlabel(int labnum);
2704
+ attr_t slk_attr( void); (ncurses extension)
2705
+ int extended_slk_color( int pair); (ncurses extension)
2706
+
2707
+ ### Description
2708
+
2709
+ These functions manipulate a window that contain Soft Label Keys
2710
+ (SLK). To use the SLK functions, a call to slk_init() must be made
2711
+ BEFORE initscr() or newterm(). slk_init() removes 1 or 2 lines from
2712
+ the useable screen, depending on the format selected.
2713
+
2714
+ The line(s) removed from the screen are used as a separate window, in
2715
+ which SLKs are displayed. Mouse clicks on the SLKs are returned as
2716
+ KEY_F() (function key) presses; for example, clicking on the leftmost
2717
+ SLK will cause KEY_F(1) to be added to the key queue.
2718
+
2719
+ slk_init() requires a single parameter which describes the format of
2720
+ the SLKs as follows:
2721
+
2722
+ 0 3-2-3 format
2723
+ 1 4-4 format
2724
+ 2 4-4-4 format (ncurses extension)
2725
+ 3 4-4-4 format with index line (ncurses extension)
2726
+ 2 lines used
2727
+ 55 5-5 format (pdcurses format)
2728
+
2729
+ In PDCursesMod, one can alternatively set fmt as a series of hex
2730
+ digits specifying the format. For example, 0x414 would result
2731
+ in 4-1-4 format; 0x21b3 would result in 2-1-11-3 format; and
2732
+ so on. Also, negating fmt results in the index line being added.
2733
+
2734
+ Also, in PDCursesMod, one can call slk_init() at any time
2735
+ _after_ initscr(), to reset the label format. If you do this,
2736
+ you'll need to reset the label text and call slk_refresh(). However,
2737
+ you can't toggle the index line or turn SLK on or off after initscr()
2738
+ has been called. Doing so would add/remove a line or two from the
2739
+ useable screen, which would be difficult to handle correctly.
2740
+
2741
+ slk_refresh(), slk_noutrefresh() and slk_touch() are analogous to
2742
+ refresh(), noutrefresh() and touch().
2743
+
2744
+ slk_color() is analogous to color_set(), and is similarly limited
2745
+ to 16-bit color pairs. extended_slk_color() allows the ability to
2746
+ access color pairs beyond 64K.
2747
+
2748
+ ### Return Value
2749
+
2750
+ All functions return OK on success and ERR on error.
2751
+
2752
+ ### Portability
2753
+ Function | X/Open | ncurses | NetBSD
2754
+ :---------------------|:------:|:-------:|:------:
2755
+ slk_init | Y | Y | Y
2756
+ slk_set | Y | Y | Y
2757
+ slk_refresh | Y | Y | Y
2758
+ slk_noutrefresh | Y | Y | Y
2759
+ slk_label | Y | Y | Y
2760
+ slk_clear | Y | Y | Y
2761
+ slk_restore | Y | Y | Y
2762
+ slk_touch | Y | Y | Y
2763
+ slk_attron | Y | Y | Y
2764
+ slk_attrset | Y | Y | Y
2765
+ slk_attroff | Y | Y | Y
2766
+ slk_attr_on | Y | Y | Y
2767
+ slk_attr_set | Y | Y | Y
2768
+ slk_attr_off | Y | Y | Y
2769
+ slk_attr | - | Y | -
2770
+ slk_wset | Y | Y | Y
2771
+ slk_wlabel | - | - | -
2772
+ extended_slk_color | - | Y | -
2773
+
2774
+
2775
+
2776
+ --------------------------------------------------------------------------
2777
+
2778
+
2779
+ termattr
2780
+ --------
2781
+
2782
+ ### Synopsis
2783
+
2784
+ int baudrate(void);
2785
+ char erasechar(void);
2786
+ bool has_ic(void);
2787
+ bool has_il(void);
2788
+ char killchar(void);
2789
+ char *longname(void);
2790
+ chtype termattrs(void);
2791
+ attr_t term_attrs(void);
2792
+ char *termname(void);
2793
+
2794
+ int erasewchar(wchar_t *ch);
2795
+ int killwchar(wchar_t *ch);
2796
+
2797
+ char wordchar(void);
2798
+
2799
+ ### Description
2800
+
2801
+ baudrate() is supposed to return the output speed of the terminal. In
2802
+ PDCurses, it simply returns INT_MAX.
2803
+
2804
+ has_ic and has_il() return TRUE, indicating that the terminal has the
2805
+ capability to insert and delete characters and lines, respectively.
2806
+
2807
+ erasechar() and killchar() return ^H and ^U, respectively -- the
2808
+ ERASE and KILL characters. In other curses implementations, these may
2809
+ vary by terminal type. erasewchar() and killwchar() are the wide-
2810
+ character versions; they take a pointer to a location in which to
2811
+ store the character, and return OK or ERR.
2812
+
2813
+ longname() returns a pointer to a static area containing a verbose
2814
+ description of the current terminal. The maximum length of the string
2815
+ is 128 characters. It is defined only after the call to initscr() or
2816
+ newterm().
2817
+
2818
+ termname() returns a pointer to a static area containing a short
2819
+ description of the current terminal (14 characters).
2820
+
2821
+ termattrs() returns a logical OR of all video attributes supported by
2822
+ the terminal.
2823
+
2824
+ wordchar() is a PDCurses extension of the concept behind the
2825
+ functions erasechar() and killchar(), returning the "delete word"
2826
+ character, ^W.
2827
+
2828
+ ### Portability
2829
+ Function | X/Open | ncurses | NetBSD
2830
+ :---------------------|:------:|:-------:|:------:
2831
+ baudrate | Y | Y | Y
2832
+ erasechar | Y | Y | Y
2833
+ has_ic | Y | Y | Y
2834
+ has_il | Y | Y | Y
2835
+ killchar | Y | Y | Y
2836
+ longname | Y | Y | Y
2837
+ termattrs | Y | Y | Y
2838
+ termname | Y | Y | Y
2839
+ erasewchar | Y | Y | Y
2840
+ killwchar | Y | Y | Y
2841
+ term_attrs | Y | Y | Y
2842
+ wordchar | - | - | -
2843
+
2844
+
2845
+
2846
+ --------------------------------------------------------------------------
2847
+
2848
+
2849
+ terminfo
2850
+ --------
2851
+
2852
+ ### Synopsis
2853
+
2854
+ int vidattr(chtype attr);
2855
+ int vid_attr(attr_t attr, short color_pair, void *opt);
2856
+ int vidputs(chtype attr, int (*putfunc)(int));
2857
+ int vid_puts(attr_t attr, short color_pair, void *opt,
2858
+ int (*putfunc)(int));
2859
+
2860
+ int del_curterm(TERMINAL *);
2861
+ int putp(const char *);
2862
+ int restartterm(const char *, int, int *);
2863
+ TERMINAL *set_curterm(TERMINAL *);
2864
+ int setterm(const char *term);
2865
+ int setupterm(const char *, int, int *);
2866
+ int tgetent(char *, const char *);
2867
+ int tgetflag(const char *);
2868
+ int tgetnum(const char *);
2869
+ char *tgetstr(const char *, char **);
2870
+ char *tgoto(const char *, int, int);
2871
+ int tigetflag(const char *);
2872
+ int tigetnum(const char *);
2873
+ char *tigetstr(const char *);
2874
+ char *tparm(const char *,long, long, long, long, long, long,
2875
+ long, long, long);
2876
+ int tputs(const char *, int, int (*)(int));
2877
+
2878
+ ### Description
2879
+
2880
+ These functions are currently implemented as stubs,
2881
+ returning the appropriate errors and doing nothing else.
2882
+ They are only compiled and used for certain ncurses tests.
2883
+
2884
+ ### Portability
2885
+ Function | X/Open | ncurses | NetBSD
2886
+ :---------------------|:------:|:-------:|:------:
2887
+ mvcur | Y | Y | Y
2888
+
2889
+
2890
+
2891
+ --------------------------------------------------------------------------
2892
+
2893
+
2894
+ touch
2895
+ -----
2896
+
2897
+ ### Synopsis
2898
+
2899
+ int touchwin(WINDOW *win);
2900
+ int touchline(WINDOW *win, int start, int count);
2901
+ int untouchwin(WINDOW *win);
2902
+ int wtouchln(WINDOW *win, int y, int n, int changed);
2903
+ bool is_linetouched(WINDOW *win, int line);
2904
+ bool is_wintouched(WINDOW *win);
2905
+
2906
+ int touchoverlap(const WINDOW *win1, WINDOW *win2);
2907
+
2908
+ ### Description
2909
+
2910
+ touchwin() and touchline() throw away all information about which
2911
+ parts of the window have been touched, pretending that the entire
2912
+ window has been drawn on. This is sometimes necessary when using
2913
+ overlapping windows, since a change to one window will affect the
2914
+ other window, but the records of which lines have been changed in the
2915
+ other window will not reflect the change.
2916
+
2917
+ untouchwin() marks all lines in the window as unchanged since the
2918
+ last call to wrefresh().
2919
+
2920
+ wtouchln() makes n lines in the window, starting at line y, look as
2921
+ if they have (changed == 1) or have not (changed == 0) been changed
2922
+ since the last call to wrefresh().
2923
+
2924
+ is_linetouched() returns TRUE if the specified line in the specified
2925
+ window has been changed since the last call to wrefresh().
2926
+
2927
+ is_wintouched() returns TRUE if the specified window has been changed
2928
+ since the last call to wrefresh().
2929
+
2930
+ touchoverlap(win1, win2) marks the portion of win2 which overlaps
2931
+ with win1 as modified.
2932
+
2933
+ ### Return Value
2934
+
2935
+ All functions return OK on success and ERR on error except
2936
+ is_wintouched() and is_linetouched().
2937
+
2938
+ ### Portability
2939
+ Function | X/Open | ncurses | NetBSD
2940
+ :---------------------|:------:|:-------:|:------:
2941
+ touchwin | Y | Y | Y
2942
+ touchline | Y | Y | Y
2943
+ untouchwin | Y | Y | Y
2944
+ wtouchln | Y | Y | Y
2945
+ is_linetouched | Y | Y | Y
2946
+ is_wintouched | Y | Y | Y
2947
+ touchoverlap | - | - | Y
2948
+
2949
+
2950
+
2951
+ --------------------------------------------------------------------------
2952
+
2953
+
2954
+ util
2955
+ ----
2956
+
2957
+ ### Synopsis
2958
+
2959
+ char *unctrl(chtype c);
2960
+ void filter(void);
2961
+ void use_env(bool x);
2962
+ int delay_output(int ms);
2963
+
2964
+ int getcchar(const cchar_t *wcval, wchar_t *wch, attr_t *attrs,
2965
+ short *color_pair, void *opts);
2966
+ int setcchar(cchar_t *wcval, const wchar_t *wch, const attr_t attrs,
2967
+ short color_pair, const void *opts);
2968
+ wchar_t *wunctrl(cchar_t *wc);
2969
+
2970
+ int PDC_mbtowc(wchar_t *pwc, const char *s, size_t n);
2971
+ size_t PDC_mbstowcs(wchar_t *dest, const char *src, size_t n);
2972
+ size_t PDC_wcstombs(char *dest, const wchar_t *src, size_t n);
2973
+
2974
+ ### Description
2975
+
2976
+ unctrl() expands the text portion of the chtype c into a printable
2977
+ string. Control characters are changed to the "^X" notation; others
2978
+ are passed through. wunctrl() is the wide-character version of the
2979
+ function.
2980
+
2981
+ filter() and use_env() are no-ops in PDCurses.
2982
+
2983
+ delay_output() inserts an ms millisecond pause in output.
2984
+
2985
+ getcchar() works in two modes: When wch is not NULL, it reads the
2986
+ cchar_t pointed to by wcval and stores the attributes in attrs, the
2987
+ color pair in color_pair, and the text in the wide-character string
2988
+ wch. If opts is non-NULL, it is treated as a pointer to an integer
2989
+ and the color pair is stored in it (this is an ncurses extension).
2990
+ When wch is NULL, getcchar() merely returns the number of wide
2991
+ characters in wcval.
2992
+
2993
+ setcchar constructs a cchar_t at wcval from the wide-character text
2994
+ at wch, the attributes in attr and the color pair in color_pair. If
2995
+ the opts argument is non-NULL, it is treated as a pointer to an
2996
+ integer containing the desired color pair and color_pair is ignored.
2997
+
2998
+ PDC_mbtowc(), PDC_mbstowcs(), and PDC_wcstombs() correspond to the
2999
+ POSIX and C99 standard functions mbtowc(), mbstowcs(), and
3000
+ wcstombs(). If the library is built for "forced" UTF8 encoding,
3001
+ the PDC_* functions do UTF8 encoding and decoding. If it is built
3002
+ without forced encoding, then the standard library functions are
3003
+ used instead.
3004
+
3005
+ ### Return Value
3006
+
3007
+ wunctrl() returns NULL on failure. delay_output() always returns OK.
3008
+
3009
+ getcchar() returns the number of wide characters wcval points to when
3010
+ wch is NULL; when it's not, getcchar() returns OK or ERR.
3011
+
3012
+ setcchar() returns OK or ERR.
3013
+
3014
+ ### Portability
3015
+ Function | X/Open | ncurses | NetBSD
3016
+ :---------------------|:------:|:-------:|:------:
3017
+ unctrl | Y | Y | Y
3018
+ filter | Y | Y | Y
3019
+ use_env | Y | Y | Y
3020
+ delay_output | Y | Y | Y
3021
+ getcchar | Y | Y | Y
3022
+ setcchar | Y | Y | Y
3023
+ wunctrl | Y | Y | Y
3024
+ PDC_mbtowc | - | - | -
3025
+ PDC_mbstowcs | - | - | -
3026
+ PDC_wcstombs | - | - | -
3027
+
3028
+
3029
+
3030
+ --------------------------------------------------------------------------
3031
+
3032
+
3033
+ window
3034
+ ------
3035
+
3036
+ ### Synopsis
3037
+
3038
+ WINDOW *newwin(int nlines, int ncols, int begy, int begx);
3039
+ WINDOW *derwin(WINDOW* orig, int nlines, int ncols,
3040
+ int begy, int begx);
3041
+ WINDOW *subwin(WINDOW* orig, int nlines, int ncols,
3042
+ int begy, int begx);
3043
+ WINDOW *dupwin(WINDOW *win);
3044
+ WINDOW *wgetparent(const WINDOW *win);
3045
+ int delwin(WINDOW *win);
3046
+ int mvwin(WINDOW *win, int y, int x);
3047
+ int mvderwin(WINDOW *win, int pary, int parx);
3048
+ int syncok(WINDOW *win, bool bf);
3049
+ bool is_subwin(const WINDOW *win);
3050
+ bool is_syncok(const WINDOW *win);
3051
+ void wsyncup(WINDOW *win);
3052
+ void wcursyncup(WINDOW *win);
3053
+ void wsyncdown(WINDOW *win);
3054
+
3055
+ WINDOW *resize_window(WINDOW *win, int nlines, int ncols);
3056
+ int wresize(WINDOW *win, int nlines, int ncols);
3057
+
3058
+ ### Description
3059
+
3060
+ newwin() creates a new window with the given number of lines, nlines
3061
+ and columns, ncols. The upper left corner of the window is at line
3062
+ begy, column begx. If nlines is zero, it defaults to LINES - begy;
3063
+ ncols to COLS - begx. Create a new full-screen window by calling
3064
+ newwin(0, 0, 0, 0).
3065
+
3066
+ delwin() deletes the named window, freeing all associated memory.
3067
+ Subwindows must be deleted before the main window can be deleted.
3068
+
3069
+ mvwin() moves the window so that the upper left-hand corner is at
3070
+ position (y,x). If the move would cause the window to be off the
3071
+ screen, it is an error and the window is not moved. Moving subwindows
3072
+ is allowed.
3073
+
3074
+ subwin() creates a new subwindow within a window. The dimensions of
3075
+ the subwindow are nlines lines and ncols columns. The subwindow is at
3076
+ position (begy, begx) on the screen. This position is relative to the
3077
+ screen, and not to the window orig. Changes made to either window
3078
+ will affect both. When using this routine, you will often need to
3079
+ call touchwin() before calling wrefresh().
3080
+
3081
+ derwin() is the same as subwin(), except that begy and begx are
3082
+ relative to the origin of the window orig rather than the screen.
3083
+ There is no difference between subwindows and derived windows.
3084
+
3085
+ mvderwin() moves a derived window (or subwindow) inside its parent
3086
+ window. The screen-relative parameters of the window are not changed.
3087
+ This routine is used to display different parts of the parent window
3088
+ at the same physical position on the screen.
3089
+
3090
+ dupwin() creates an exact duplicate of the window win.
3091
+
3092
+ wgetparent() returns the parent WINDOW pointer for subwindows, or NULL
3093
+ for windows having no parent.
3094
+
3095
+ wsyncup() causes a touchwin() of all of the window's parents.
3096
+
3097
+ If syncok() is called with a second argument of TRUE, this causes a
3098
+ wsyncup() to be called every time the window is changed.
3099
+
3100
+ is_subwin() reports whether the specified window is a subwindow,
3101
+ created by subwin() or derwin().
3102
+
3103
+ is_syncok() reports whether the specified window is in syncok mode.
3104
+
3105
+ wcursyncup() causes the current cursor position of all of a window's
3106
+ ancestors to reflect the current cursor position of the current
3107
+ window.
3108
+
3109
+ wsyncdown() causes a touchwin() of the current window if any of its
3110
+ parent's windows have been touched.
3111
+
3112
+ resize_window() allows the user to resize an existing window. It
3113
+ returns the pointer to the new window, or NULL on failure.
3114
+
3115
+ wresize() is an ncurses-compatible wrapper for resize_window(). Note
3116
+ that, unlike ncurses, it will NOT process any subwindows of the
3117
+ window. (However, you still can call it _on_ subwindows.) It returns
3118
+ OK or ERR.
3119
+
3120
+ ### Return Value
3121
+
3122
+ newwin(), subwin(), derwin() and dupwin() return a pointer to the new
3123
+ window, or NULL on failure. delwin(), mvwin(), mvderwin() and
3124
+ syncok() return OK or ERR. wsyncup(), wcursyncup() and wsyncdown()
3125
+ return nothing.
3126
+
3127
+ ### Errors
3128
+
3129
+ It is an error to call resize_window() before calling initscr().
3130
+ Also, an error will be generated if we fail to create a newly sized
3131
+ replacement window for curscr, or stdscr. This could happen when
3132
+ increasing the window size. NOTE: If this happens, the previously
3133
+ successfully allocated windows are left alone; i.e., the resize is
3134
+ NOT cancelled for those windows.
3135
+
3136
+ ### Portability
3137
+ Function | X/Open | ncurses | NetBSD
3138
+ :---------------------|:------:|:-------:|:------:
3139
+ newwin | Y | Y | Y
3140
+ delwin | Y | Y | Y
3141
+ mvwin | Y | Y | Y
3142
+ subwin | Y | Y | Y
3143
+ derwin | Y | Y | Y
3144
+ mvderwin | Y | Y | Y
3145
+ dupwin | Y | Y | Y
3146
+ wgetparent | - | Y | -
3147
+ wsyncup | Y | Y | Y
3148
+ syncok | Y | Y | Y
3149
+ is_subwin | - | Y | -
3150
+ is_syncok | - | Y | -
3151
+ wcursyncup | Y | Y | Y
3152
+ wsyncdown | Y | Y | Y
3153
+ wresize | - | Y | Y
3154
+ resize_window | - | - | -
3155
+
3156
+
3157
+
3158
+ --------------------------------------------------------------------------
3159
+
3160
+
3161
+ clipboard
3162
+ ---------
3163
+
3164
+ ### Synopsis
3165
+
3166
+ int PDC_getclipboard(char **contents, long *length);
3167
+ int PDC_setclipboard(const char *contents, long length);
3168
+ int PDC_freeclipboard(char *contents);
3169
+ int PDC_clearclipboard(void);
3170
+
3171
+ ### Description
3172
+
3173
+ PDC_getclipboard() gets the textual contents of the system's
3174
+ clipboard. This function returns the contents of the clipboard in the
3175
+ contents argument. It is the responsibility of the caller to free the
3176
+ memory returned, via PDC_freeclipboard(). The length of the clipboard
3177
+ contents is returned in the length argument.
3178
+
3179
+ PDC_setclipboard() copies the supplied text into the system's
3180
+ clipboard, emptying the clipboard prior to the copy.
3181
+
3182
+ PDC_clearclipboard() clears the internal clipboard.
3183
+
3184
+ ### Return Values
3185
+
3186
+ indicator of success/failure of call.
3187
+ PDC_CLIP_SUCCESS the call was successful
3188
+ PDC_CLIP_MEMORY_ERROR unable to allocate sufficient memory for
3189
+ the clipboard contents
3190
+ PDC_CLIP_EMPTY the clipboard contains no text
3191
+ PDC_CLIP_ACCESS_ERROR no clipboard support
3192
+
3193
+ ### Portability
3194
+ Function | X/Open | ncurses | NetBSD
3195
+ :---------------------|:------:|:-------:|:------:
3196
+ PDC_getclipboard | - | - | -
3197
+ PDC_setclipboard | - | - | -
3198
+ PDC_freeclipboard | - | - | -
3199
+ PDC_clearclipboard | - | - | -
3200
+
3201
+
3202
+
3203
+ --------------------------------------------------------------------------
3204
+
3205
+
3206
+ Resize limits
3207
+ -------------
3208
+
3209
+ ### Synopsis
3210
+
3211
+ void PDC_set_resize_limits( const int new_min_lines,
3212
+ const int new_max_lines,
3213
+ const int new_min_cols,
3214
+ const int new_max_cols);
3215
+
3216
+ ### Description
3217
+
3218
+ For platforms supporting resizable windows (SDLx, WinGUI, X11). Some
3219
+ programs may be unprepared for a resize event; for these, calling
3220
+ this function with the max and min limits equal ensures that no
3221
+ user resizing can be done. Other programs may require at least a
3222
+ certain number, and/or no more than a certain number, of columns
3223
+ and/or lines.
3224
+
3225
+ ### Portability
3226
+
3227
+ PDCurses-only function.
3228
+
3229
+
3230
+
3231
+ --------------------------------------------------------------------------
3232
+
3233
+
3234
+ pdcsetsc
3235
+ --------
3236
+
3237
+ ### Synopsis
3238
+
3239
+ int PDC_set_blink(bool blinkon);
3240
+ int PDC_set_bold(bool boldon);
3241
+ void PDC_set_title(const char *title);
3242
+
3243
+ ### Description
3244
+
3245
+ PDC_set_blink() toggles whether the A_BLINK attribute sets an actual
3246
+ blink mode (TRUE), or sets the background color to high intensity
3247
+ (FALSE). The default is platform-dependent (FALSE in most cases). It
3248
+ returns OK if it could set the state to match the given parameter,
3249
+ ERR otherwise.
3250
+
3251
+ PDC_set_bold() toggles whether the A_BOLD attribute selects an actual
3252
+ bold font (TRUE), or sets the foreground color to high intensity
3253
+ (FALSE). It returns OK if it could set the state to match the given
3254
+ parameter, ERR otherwise.
3255
+
3256
+ PDC_set_title() sets the title of the window in which the curses
3257
+ program is running. This function may not do anything on some
3258
+ platforms.
3259
+
3260
+ ### Portability
3261
+ Function | X/Open | ncurses | NetBSD
3262
+ :---------------------|:------:|:-------:|:------:
3263
+ PDC_set_blink | - | - | -
3264
+ PDC_set_title | - | - | -
3265
+
3266
+
3267
+
3268
+ --------------------------------------------------------------------------
3269
+
3270
+
3271
+ sb
3272
+ --
3273
+
3274
+ ### Synopsis
3275
+
3276
+ int sb_init(void)
3277
+ int sb_set_horz(int total, int viewport, int cur)
3278
+ int sb_set_vert(int total, int viewport, int cur)
3279
+ int sb_get_horz(int *total, int *viewport, int *cur)
3280
+ int sb_get_vert(int *total, int *viewport, int *cur)
3281
+ int sb_refresh(void);
3282
+
3283
+ ### Description
3284
+
3285
+ These functions manipulate the scrollbar (X11 only).
3286
+
3287
+ ### Return Value
3288
+
3289
+ All functions return OK on success and ERR on error.
3290
+
3291
+ ### Portability
3292
+ Function | X/Open | ncurses | NetBSD
3293
+ :---------------------|:------:|:-------:|:------:
3294
+ sb_init | - | - | -
3295
+ sb_set_horz | - | - | -
3296
+ sb_set_vert | - | - | -
3297
+ sb_get_horz | - | - | -
3298
+ sb_get_vert | - | - | -
3299
+ sb_refresh | - | - | -
3300
+
3301
+
3302
+
3303
+ --------------------------------------------------------------------------
3304
+