curses 1.4.4 → 1.4.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (258) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +6 -0
  3. data/.github/workflows/macos.yml +1 -1
  4. data/.github/workflows/push_gem.yml +48 -0
  5. data/.github/workflows/ubuntu.yml +2 -2
  6. data/.github/workflows/windows.yml +2 -2
  7. data/History.md +23 -0
  8. data/README.md +7 -0
  9. data/curses.gemspec +1 -1
  10. data/ext/curses/curses.c +7 -7
  11. data/sample/colors.rb +6 -1
  12. data/sample/form.rb +1 -1
  13. data/sample/menu.rb +2 -0
  14. metadata +9 -251
  15. data/vendor/PDCurses/.gitignore +0 -47
  16. data/vendor/PDCurses/.travis.yml +0 -49
  17. data/vendor/PDCurses/CMakeLists.txt +0 -68
  18. data/vendor/PDCurses/HISTORY.md +0 -2036
  19. data/vendor/PDCurses/IMPLEMNT.md +0 -327
  20. data/vendor/PDCurses/Makefile +0 -27
  21. data/vendor/PDCurses/README.md +0 -77
  22. data/vendor/PDCurses/acs_defs.h +0 -265
  23. data/vendor/PDCurses/appveyor.yml +0 -218
  24. data/vendor/PDCurses/cmake/README.md +0 -71
  25. data/vendor/PDCurses/cmake/build_dependencies.cmake +0 -178
  26. data/vendor/PDCurses/cmake/build_options.cmake +0 -25
  27. data/vendor/PDCurses/cmake/dll_version.cmake +0 -26
  28. data/vendor/PDCurses/cmake/gen_config_header.cmake +0 -43
  29. data/vendor/PDCurses/cmake/get_version.cmake +0 -17
  30. data/vendor/PDCurses/cmake/make_uninstall.cmake +0 -19
  31. data/vendor/PDCurses/cmake/project_common.cmake +0 -121
  32. data/vendor/PDCurses/cmake/resource.in.cmake +0 -52
  33. data/vendor/PDCurses/cmake/sdl2_ttf/CMakeLists.txt +0 -83
  34. data/vendor/PDCurses/cmake/target_arch.cmake +0 -36
  35. data/vendor/PDCurses/cmake/version.in.cmake +0 -73
  36. data/vendor/PDCurses/cmake/watcom_open_dos16_toolchain.cmake +0 -96
  37. data/vendor/PDCurses/cmake/watcom_open_dos32_toolchain.cmake +0 -106
  38. data/vendor/PDCurses/cmake/watcom_open_os2v2_toolchain.cmake +0 -105
  39. data/vendor/PDCurses/curses.h +0 -1846
  40. data/vendor/PDCurses/curspriv.h +0 -134
  41. data/vendor/PDCurses/demos/README.md +0 -25
  42. data/vendor/PDCurses/demos/firework.c +0 -144
  43. data/vendor/PDCurses/demos/newtest.c +0 -581
  44. data/vendor/PDCurses/demos/ozdemo.c +0 -447
  45. data/vendor/PDCurses/demos/ptest.c +0 -283
  46. data/vendor/PDCurses/demos/rain.c +0 -157
  47. data/vendor/PDCurses/demos/testcurs.c +0 -1607
  48. data/vendor/PDCurses/demos/tui.c +0 -1048
  49. data/vendor/PDCurses/demos/tui.h +0 -65
  50. data/vendor/PDCurses/demos/tuidemo.c +0 -233
  51. data/vendor/PDCurses/demos/version.c +0 -61
  52. data/vendor/PDCurses/demos/worm.c +0 -432
  53. data/vendor/PDCurses/demos/xmas.c +0 -955
  54. data/vendor/PDCurses/dos/CMakeLists.txt +0 -47
  55. data/vendor/PDCurses/dos/Makefile +0 -105
  56. data/vendor/PDCurses/dos/Makefile.bcc +0 -83
  57. data/vendor/PDCurses/dos/Makefile.dmc +0 -257
  58. data/vendor/PDCurses/dos/Makefile.msc +0 -113
  59. data/vendor/PDCurses/dos/Makefile.wcc +0 -107
  60. data/vendor/PDCurses/dos/README.md +0 -51
  61. data/vendor/PDCurses/dos/bccdos.lrf +0 -9
  62. data/vendor/PDCurses/dos/mscdos.lrf +0 -50
  63. data/vendor/PDCurses/dos/pdcclip.c +0 -132
  64. data/vendor/PDCurses/dos/pdcdisp.c +0 -135
  65. data/vendor/PDCurses/dos/pdcdos.h +0 -194
  66. data/vendor/PDCurses/dos/pdcgetsc.c +0 -98
  67. data/vendor/PDCurses/dos/pdckbd.c +0 -513
  68. data/vendor/PDCurses/dos/pdcscrn.c +0 -785
  69. data/vendor/PDCurses/dos/pdcsetsc.c +0 -101
  70. data/vendor/PDCurses/dos/pdcutil.c +0 -212
  71. data/vendor/PDCurses/libobjs.mif +0 -26
  72. data/vendor/PDCurses/makedist.mif +0 -20
  73. data/vendor/PDCurses/man/Makefile +0 -37
  74. data/vendor/PDCurses/man/README.md +0 -21
  75. data/vendor/PDCurses/man/intro.md +0 -361
  76. data/vendor/PDCurses/man/manext.c +0 -119
  77. data/vendor/PDCurses/man/sdl.md +0 -152
  78. data/vendor/PDCurses/man/sdl2.md +0 -58
  79. data/vendor/PDCurses/man/x11.md +0 -407
  80. data/vendor/PDCurses/ncurses/CMakeLists.txt +0 -66
  81. data/vendor/PDCurses/ncurses/README.md +0 -26
  82. data/vendor/PDCurses/ncurses/makefile +0 -29
  83. data/vendor/PDCurses/os2/CMakeLists.txt +0 -41
  84. data/vendor/PDCurses/os2/Makefile +0 -132
  85. data/vendor/PDCurses/os2/Makefile.bcc +0 -90
  86. data/vendor/PDCurses/os2/Makefile.wcc +0 -43
  87. data/vendor/PDCurses/os2/README.md +0 -43
  88. data/vendor/PDCurses/os2/iccos2.lrf +0 -50
  89. data/vendor/PDCurses/os2/iccos2.mak +0 -256
  90. data/vendor/PDCurses/os2/pdcclip.c +0 -188
  91. data/vendor/PDCurses/os2/pdcdisp.c +0 -93
  92. data/vendor/PDCurses/os2/pdcgetsc.c +0 -89
  93. data/vendor/PDCurses/os2/pdckbd.c +0 -521
  94. data/vendor/PDCurses/os2/pdcos2.h +0 -55
  95. data/vendor/PDCurses/os2/pdcscrn.c +0 -449
  96. data/vendor/PDCurses/os2/pdcsetsc.c +0 -112
  97. data/vendor/PDCurses/os2/pdcutil.c +0 -52
  98. data/vendor/PDCurses/panel.h +0 -56
  99. data/vendor/PDCurses/pdcurses/README.md +0 -25
  100. data/vendor/PDCurses/pdcurses/addch.c +0 -693
  101. data/vendor/PDCurses/pdcurses/addchstr.c +0 -245
  102. data/vendor/PDCurses/pdcurses/addstr.c +0 -240
  103. data/vendor/PDCurses/pdcurses/attr.c +0 -359
  104. data/vendor/PDCurses/pdcurses/beep.c +0 -68
  105. data/vendor/PDCurses/pdcurses/bkgd.c +0 -223
  106. data/vendor/PDCurses/pdcurses/border.c +0 -411
  107. data/vendor/PDCurses/pdcurses/clear.c +0 -159
  108. data/vendor/PDCurses/pdcurses/color.c +0 -298
  109. data/vendor/PDCurses/pdcurses/debug.c +0 -109
  110. data/vendor/PDCurses/pdcurses/delch.c +0 -96
  111. data/vendor/PDCurses/pdcurses/deleteln.c +0 -211
  112. data/vendor/PDCurses/pdcurses/deprec.c +0 -27
  113. data/vendor/PDCurses/pdcurses/getch.c +0 -417
  114. data/vendor/PDCurses/pdcurses/getstr.c +0 -474
  115. data/vendor/PDCurses/pdcurses/getyx.c +0 -139
  116. data/vendor/PDCurses/pdcurses/inch.c +0 -127
  117. data/vendor/PDCurses/pdcurses/inchstr.c +0 -214
  118. data/vendor/PDCurses/pdcurses/initscr.c +0 -367
  119. data/vendor/PDCurses/pdcurses/inopts.c +0 -324
  120. data/vendor/PDCurses/pdcurses/insch.c +0 -271
  121. data/vendor/PDCurses/pdcurses/insstr.c +0 -264
  122. data/vendor/PDCurses/pdcurses/instr.c +0 -246
  123. data/vendor/PDCurses/pdcurses/kernel.c +0 -259
  124. data/vendor/PDCurses/pdcurses/keyname.c +0 -157
  125. data/vendor/PDCurses/pdcurses/mouse.c +0 -438
  126. data/vendor/PDCurses/pdcurses/move.c +0 -57
  127. data/vendor/PDCurses/pdcurses/outopts.c +0 -159
  128. data/vendor/PDCurses/pdcurses/overlay.c +0 -214
  129. data/vendor/PDCurses/pdcurses/pad.c +0 -260
  130. data/vendor/PDCurses/pdcurses/panel.c +0 -633
  131. data/vendor/PDCurses/pdcurses/printw.c +0 -126
  132. data/vendor/PDCurses/pdcurses/refresh.c +0 -279
  133. data/vendor/PDCurses/pdcurses/scanw.c +0 -578
  134. data/vendor/PDCurses/pdcurses/scr_dump.c +0 -213
  135. data/vendor/PDCurses/pdcurses/scroll.c +0 -101
  136. data/vendor/PDCurses/pdcurses/slk.c +0 -591
  137. data/vendor/PDCurses/pdcurses/termattr.c +0 -182
  138. data/vendor/PDCurses/pdcurses/terminfo.c +0 -217
  139. data/vendor/PDCurses/pdcurses/touch.c +0 -163
  140. data/vendor/PDCurses/pdcurses/util.c +0 -312
  141. data/vendor/PDCurses/pdcurses/window.c +0 -569
  142. data/vendor/PDCurses/sdl1/Makefile +0 -129
  143. data/vendor/PDCurses/sdl1/Makefile.mng +0 -110
  144. data/vendor/PDCurses/sdl1/README.md +0 -31
  145. data/vendor/PDCurses/sdl1/deffont.h +0 -385
  146. data/vendor/PDCurses/sdl1/deficon.h +0 -23
  147. data/vendor/PDCurses/sdl1/pdcclip.c +0 -131
  148. data/vendor/PDCurses/sdl1/pdcdisp.c +0 -373
  149. data/vendor/PDCurses/sdl1/pdcgetsc.c +0 -30
  150. data/vendor/PDCurses/sdl1/pdckbd.c +0 -405
  151. data/vendor/PDCurses/sdl1/pdcscrn.c +0 -414
  152. data/vendor/PDCurses/sdl1/pdcsdl.h +0 -31
  153. data/vendor/PDCurses/sdl1/pdcsetsc.c +0 -64
  154. data/vendor/PDCurses/sdl1/pdcutil.c +0 -40
  155. data/vendor/PDCurses/sdl1/sdltest.c +0 -79
  156. data/vendor/PDCurses/sdl2/CMakeLists.txt +0 -76
  157. data/vendor/PDCurses/sdl2/Makefile +0 -135
  158. data/vendor/PDCurses/sdl2/Makefile.vc +0 -164
  159. data/vendor/PDCurses/sdl2/README.md +0 -34
  160. data/vendor/PDCurses/sdl2/deffont.h +0 -385
  161. data/vendor/PDCurses/sdl2/deficon.h +0 -23
  162. data/vendor/PDCurses/sdl2/pdcclip.c +0 -93
  163. data/vendor/PDCurses/sdl2/pdcdisp.c +0 -534
  164. data/vendor/PDCurses/sdl2/pdcgetsc.c +0 -30
  165. data/vendor/PDCurses/sdl2/pdckbd.c +0 -480
  166. data/vendor/PDCurses/sdl2/pdcscrn.c +0 -443
  167. data/vendor/PDCurses/sdl2/pdcsdl.h +0 -33
  168. data/vendor/PDCurses/sdl2/pdcsetsc.c +0 -67
  169. data/vendor/PDCurses/sdl2/pdcutil.c +0 -39
  170. data/vendor/PDCurses/sdl2/sdltest.c +0 -81
  171. data/vendor/PDCurses/term.h +0 -48
  172. data/vendor/PDCurses/version.mif +0 -7
  173. data/vendor/PDCurses/vt/CMakeLists.txt +0 -28
  174. data/vendor/PDCurses/vt/Makefile +0 -135
  175. data/vendor/PDCurses/vt/Makefile.bcc +0 -111
  176. data/vendor/PDCurses/vt/Makefile.dmc +0 -258
  177. data/vendor/PDCurses/vt/Makefile.vc +0 -144
  178. data/vendor/PDCurses/vt/Makefile.wcc +0 -107
  179. data/vendor/PDCurses/vt/README.md +0 -64
  180. data/vendor/PDCurses/vt/pdcclip.c +0 -20
  181. data/vendor/PDCurses/vt/pdcdisp.c +0 -284
  182. data/vendor/PDCurses/vt/pdcgetsc.c +0 -27
  183. data/vendor/PDCurses/vt/pdckbd.c +0 -394
  184. data/vendor/PDCurses/vt/pdcscrn.c +0 -434
  185. data/vendor/PDCurses/vt/pdcsetsc.c +0 -45
  186. data/vendor/PDCurses/vt/pdcutil.c +0 -43
  187. data/vendor/PDCurses/vt/pdcvt.h +0 -16
  188. data/vendor/PDCurses/watcom.mif +0 -68
  189. data/vendor/PDCurses/wincon/CMakeLists.txt +0 -27
  190. data/vendor/PDCurses/wincon/Makefile.bcc +0 -88
  191. data/vendor/PDCurses/wincon/Makefile.dmc +0 -256
  192. data/vendor/PDCurses/wincon/Makefile.lcc +0 -273
  193. data/vendor/PDCurses/wincon/Makefile.mng +0 -176
  194. data/vendor/PDCurses/wincon/Makefile.vc +0 -144
  195. data/vendor/PDCurses/wincon/Makefile.wcc +0 -51
  196. data/vendor/PDCurses/wincon/README.md +0 -85
  197. data/vendor/PDCurses/wincon/pdcclip.c +0 -174
  198. data/vendor/PDCurses/wincon/pdcdisp.c +0 -143
  199. data/vendor/PDCurses/wincon/pdcgetsc.c +0 -55
  200. data/vendor/PDCurses/wincon/pdckbd.c +0 -786
  201. data/vendor/PDCurses/wincon/pdcscrn.c +0 -717
  202. data/vendor/PDCurses/wincon/pdcsetsc.c +0 -91
  203. data/vendor/PDCurses/wincon/pdcurses.ico +0 -0
  204. data/vendor/PDCurses/wincon/pdcurses.rc +0 -28
  205. data/vendor/PDCurses/wincon/pdcutil.c +0 -41
  206. data/vendor/PDCurses/wincon/pdcwin.h +0 -31
  207. data/vendor/PDCurses/wingui/CMakeLists.txt +0 -27
  208. data/vendor/PDCurses/wingui/Makefile.bcc +0 -85
  209. data/vendor/PDCurses/wingui/Makefile.dmc +0 -259
  210. data/vendor/PDCurses/wingui/Makefile.lcc +0 -273
  211. data/vendor/PDCurses/wingui/Makefile.mng +0 -171
  212. data/vendor/PDCurses/wingui/Makefile.vc +0 -144
  213. data/vendor/PDCurses/wingui/Makefile.wcc +0 -51
  214. data/vendor/PDCurses/wingui/README.md +0 -93
  215. data/vendor/PDCurses/wingui/pdcclip.c +0 -174
  216. data/vendor/PDCurses/wingui/pdcdisp.c +0 -718
  217. data/vendor/PDCurses/wingui/pdcgetsc.c +0 -30
  218. data/vendor/PDCurses/wingui/pdckbd.c +0 -143
  219. data/vendor/PDCurses/wingui/pdcscrn.c +0 -2797
  220. data/vendor/PDCurses/wingui/pdcsetsc.c +0 -89
  221. data/vendor/PDCurses/wingui/pdcurses.ico +0 -0
  222. data/vendor/PDCurses/wingui/pdcurses.rc +0 -28
  223. data/vendor/PDCurses/wingui/pdcutil.c +0 -61
  224. data/vendor/PDCurses/wingui/pdcwin.h +0 -122
  225. data/vendor/PDCurses/x11/Makefile.in +0 -754
  226. data/vendor/PDCurses/x11/PDCurses.spec +0 -82
  227. data/vendor/PDCurses/x11/README.md +0 -62
  228. data/vendor/PDCurses/x11/ScrollBox.c +0 -319
  229. data/vendor/PDCurses/x11/ScrollBox.h +0 -51
  230. data/vendor/PDCurses/x11/ScrollBoxP.h +0 -70
  231. data/vendor/PDCurses/x11/aclocal.m4 +0 -994
  232. data/vendor/PDCurses/x11/big_icon.xbm +0 -46
  233. data/vendor/PDCurses/x11/compose.h +0 -201
  234. data/vendor/PDCurses/x11/config.guess +0 -1500
  235. data/vendor/PDCurses/x11/config.h.in +0 -100
  236. data/vendor/PDCurses/x11/config.sub +0 -1616
  237. data/vendor/PDCurses/x11/configure +0 -6700
  238. data/vendor/PDCurses/x11/configure.ac +0 -295
  239. data/vendor/PDCurses/x11/debian/changelog +0 -6
  240. data/vendor/PDCurses/x11/debian/compat +0 -1
  241. data/vendor/PDCurses/x11/debian/control +0 -11
  242. data/vendor/PDCurses/x11/debian/copyright +0 -27
  243. data/vendor/PDCurses/x11/debian/rules +0 -98
  244. data/vendor/PDCurses/x11/install-sh +0 -253
  245. data/vendor/PDCurses/x11/little_icon.xbm +0 -14
  246. data/vendor/PDCurses/x11/ncurses_cfg.h +0 -45
  247. data/vendor/PDCurses/x11/pdcclip.c +0 -173
  248. data/vendor/PDCurses/x11/pdcdisp.c +0 -85
  249. data/vendor/PDCurses/x11/pdcgetsc.c +0 -28
  250. data/vendor/PDCurses/x11/pdckbd.c +0 -104
  251. data/vendor/PDCurses/x11/pdcscrn.c +0 -258
  252. data/vendor/PDCurses/x11/pdcsetsc.c +0 -95
  253. data/vendor/PDCurses/x11/pdcutil.c +0 -52
  254. data/vendor/PDCurses/x11/pdcx11.c +0 -316
  255. data/vendor/PDCurses/x11/pdcx11.h +0 -191
  256. data/vendor/PDCurses/x11/sb.c +0 -155
  257. data/vendor/PDCurses/x11/x11.c +0 -3686
  258. data/vendor/PDCurses/x11/xcurses-config.in +0 -81
@@ -1,324 +0,0 @@
1
- /* Public Domain Curses */
2
-
3
- #include <curspriv.h>
4
-
5
- /*man-start**************************************************************
6
-
7
- inopts
8
- ------
9
-
10
- ### Synopsis
11
-
12
- int cbreak(void);
13
- int nocbreak(void);
14
- int echo(void);
15
- int noecho(void);
16
- int halfdelay(int tenths);
17
- int intrflush(WINDOW *win, bool bf);
18
- int keypad(WINDOW *win, bool bf);
19
- int meta(WINDOW *win, bool bf);
20
- int nl(void);
21
- int nonl(void);
22
- int nodelay(WINDOW *win, bool bf);
23
- int notimeout(WINDOW *win, bool bf);
24
- int raw(void);
25
- int noraw(void);
26
- void noqiflush(void);
27
- void qiflush(void);
28
- void timeout(int delay);
29
- void wtimeout(WINDOW *win, int delay);
30
- int typeahead(int fildes);
31
-
32
- int crmode(void);
33
- int nocrmode(void);
34
-
35
- ### Description
36
-
37
- cbreak() and nocbreak() toggle cbreak mode. In cbreak mode,
38
- characters typed by the user are made available immediately, and
39
- erase/kill character processing is not performed. In nocbreak
40
- mode, typed characters are buffered until a newline or carriage
41
- return. Interrupt and flow control characters are unaffected by
42
- this mode. PDCurses always starts in cbreak mode.
43
-
44
- echo() and noecho() control whether typed characters are echoed
45
- by the input routine. Initially, input characters are echoed.
46
- Subsequent calls to echo() and noecho() do not flush type-ahead.
47
-
48
- halfdelay() is similar to cbreak(), but allows for a time limit
49
- to be specified, in tenths of a second. This causes getch() to
50
- block for that period before returning ERR if no key has been
51
- received. tenths must be between 1 and 255.
52
-
53
- keypad() controls whether getch() returns function/special keys
54
- as single key codes (e.g., the left arrow key as KEY_LEFT). Per
55
- X/Open, the default for keypad mode is OFF. You'll probably want
56
- it on. With keypad mode off, if a special key is pressed,
57
- getch() does nothing or returns ERR.
58
-
59
- nodelay() controls whether wgetch() is a non-blocking call. If
60
- the option is enabled, and no input is ready, wgetch() will
61
- return ERR. If disabled, wgetch() will hang until input is
62
- ready.
63
-
64
- nl() enables the translation of a carriage return into a newline
65
- on input. nonl() disables this. Initially, the translation does
66
- occur.
67
-
68
- raw() and noraw() toggle raw mode. Raw mode is similar to cbreak
69
- mode, in that characters typed are immediately passed through to
70
- the user program. The difference is that in raw mode, the INTR,
71
- QUIT, SUSP, and STOP characters are passed through without being
72
- interpreted, and without generating a signal.
73
-
74
- In PDCurses, the meta() function sets raw mode on or off.
75
-
76
- timeout() and wtimeout() set blocking or non-blocking reads for
77
- the specified window. The delay is measured in milliseconds. If
78
- it's negative, a blocking read is used; if zero, then non-
79
- blocking reads are done -- if no input is waiting, ERR is
80
- returned immediately. If the delay is positive, the read blocks
81
- for the delay period; if the period expires, ERR is returned.
82
-
83
- intrflush(), notimeout(), noqiflush(), qiflush() and typeahead()
84
- do nothing in PDCurses, but are included for compatibility with
85
- other curses implementations.
86
-
87
- crmode() and nocrmode() are archaic equivalents to cbreak() and
88
- nocbreak(), respectively.
89
-
90
- ### Return Value
91
-
92
- All functions return OK on success and ERR on error.
93
-
94
- ### Portability
95
- X/Open BSD SYS V
96
- cbreak Y Y Y
97
- nocbreak Y Y Y
98
- echo Y Y Y
99
- noecho Y Y Y
100
- halfdelay Y - Y
101
- intrflush Y - Y
102
- keypad Y - Y
103
- meta Y - Y
104
- nl Y Y Y
105
- nonl Y Y Y
106
- nodelay Y - Y
107
- notimeout Y - Y
108
- raw Y Y Y
109
- noraw Y Y Y
110
- noqiflush Y - Y
111
- qiflush Y - Y
112
- timeout Y - Y
113
- wtimeout Y - Y
114
- typeahead Y - Y
115
- crmode -
116
- nocrmode -
117
-
118
- **man-end****************************************************************/
119
-
120
- int cbreak(void)
121
- {
122
- PDC_LOG(("cbreak() - called\n"));
123
-
124
- SP->cbreak = TRUE;
125
-
126
- return OK;
127
- }
128
-
129
- int nocbreak(void)
130
- {
131
- PDC_LOG(("nocbreak() - called\n"));
132
-
133
- SP->cbreak = FALSE;
134
- SP->delaytenths = 0;
135
-
136
- return OK;
137
- }
138
-
139
- int echo(void)
140
- {
141
- PDC_LOG(("echo() - called\n"));
142
-
143
- SP->echo = TRUE;
144
-
145
- return OK;
146
- }
147
-
148
- int noecho(void)
149
- {
150
- PDC_LOG(("noecho() - called\n"));
151
-
152
- SP->echo = FALSE;
153
-
154
- return OK;
155
- }
156
-
157
- int halfdelay(int tenths)
158
- {
159
- PDC_LOG(("halfdelay() - called\n"));
160
-
161
- if (tenths < 1 || tenths > 255)
162
- return ERR;
163
-
164
- SP->delaytenths = tenths;
165
-
166
- return OK;
167
- }
168
-
169
- int intrflush(WINDOW *win, bool bf)
170
- {
171
- PDC_LOG(("intrflush() - called\n"));
172
-
173
- return OK;
174
- }
175
-
176
- int keypad(WINDOW *win, bool bf)
177
- {
178
- PDC_LOG(("keypad() - called\n"));
179
-
180
- if (!win)
181
- return ERR;
182
-
183
- win->_use_keypad = bf;
184
-
185
- return OK;
186
- }
187
-
188
- int meta(WINDOW *win, bool bf)
189
- {
190
- PDC_LOG(("meta() - called\n"));
191
-
192
- SP->raw_inp = bf;
193
-
194
- return OK;
195
- }
196
-
197
- int nl(void)
198
- {
199
- PDC_LOG(("nl() - called\n"));
200
-
201
- SP->autocr = TRUE;
202
-
203
- return OK;
204
- }
205
-
206
- int nonl(void)
207
- {
208
- PDC_LOG(("nonl() - called\n"));
209
-
210
- SP->autocr = FALSE;
211
-
212
- return OK;
213
- }
214
-
215
- int nodelay(WINDOW *win, bool flag)
216
- {
217
- PDC_LOG(("nodelay() - called\n"));
218
-
219
- if (!win)
220
- return ERR;
221
-
222
- win->_nodelay = flag;
223
-
224
- return OK;
225
- }
226
-
227
- int notimeout(WINDOW *win, bool flag)
228
- {
229
- PDC_LOG(("notimeout() - called\n"));
230
-
231
- return OK;
232
- }
233
-
234
- int raw(void)
235
- {
236
- PDC_LOG(("raw() - called\n"));
237
-
238
- PDC_set_keyboard_binary(TRUE);
239
- SP->raw_inp = TRUE;
240
-
241
- return OK;
242
- }
243
-
244
- int noraw(void)
245
- {
246
- PDC_LOG(("noraw() - called\n"));
247
-
248
- PDC_set_keyboard_binary(FALSE);
249
- SP->raw_inp = FALSE;
250
-
251
- return OK;
252
- }
253
-
254
- void noqiflush(void)
255
- {
256
- PDC_LOG(("noqiflush() - called\n"));
257
- }
258
-
259
- void qiflush(void)
260
- {
261
- PDC_LOG(("qiflush() - called\n"));
262
- }
263
-
264
- int typeahead(int fildes)
265
- {
266
- PDC_LOG(("typeahead() - called\n"));
267
-
268
- return OK;
269
- }
270
-
271
- void wtimeout(WINDOW *win, int delay)
272
- {
273
- PDC_LOG(("wtimeout() - called\n"));
274
-
275
- if (!win)
276
- return;
277
-
278
- if (delay < 0)
279
- {
280
- /* This causes a blocking read on the window, so turn on delay
281
- mode */
282
-
283
- win->_nodelay = FALSE;
284
- win->_delayms = 0;
285
- }
286
- else if (!delay)
287
- {
288
- /* This causes a non-blocking read on the window, so turn off
289
- delay mode */
290
-
291
- win->_nodelay = TRUE;
292
- win->_delayms = 0;
293
- }
294
- else
295
- {
296
- /* This causes the read on the window to delay for the number of
297
- milliseconds. Also forces the window into non-blocking read
298
- mode */
299
-
300
- /*win->_nodelay = TRUE;*/
301
- win->_delayms = delay;
302
- }
303
- }
304
-
305
- void timeout(int delay)
306
- {
307
- PDC_LOG(("timeout() - called\n"));
308
-
309
- wtimeout(stdscr, delay);
310
- }
311
-
312
- int crmode(void)
313
- {
314
- PDC_LOG(("crmode() - called\n"));
315
-
316
- return cbreak();
317
- }
318
-
319
- int nocrmode(void)
320
- {
321
- PDC_LOG(("nocrmode() - called\n"));
322
-
323
- return nocbreak();
324
- }
@@ -1,271 +0,0 @@
1
- /* Public Domain Curses */
2
-
3
- #include <curspriv.h>
4
-
5
- /*man-start**************************************************************
6
-
7
- insch
8
- -----
9
-
10
- ### Synopsis
11
-
12
- int insch(chtype ch);
13
- int winsch(WINDOW *win, chtype ch);
14
- int mvinsch(int y, int x, chtype ch);
15
- int mvwinsch(WINDOW *win, int y, int x, chtype ch);
16
-
17
- int insrawch(chtype ch);
18
- int winsrawch(WINDOW *win, chtype ch);
19
- int mvinsrawch(int y, int x, chtype ch);
20
- int mvwinsrawch(WINDOW *win, int y, int x, chtype ch);
21
-
22
- int ins_wch(const cchar_t *wch);
23
- int wins_wch(WINDOW *win, const cchar_t *wch);
24
- int mvins_wch(int y, int x, const cchar_t *wch);
25
- int mvwins_wch(WINDOW *win, int y, int x, const cchar_t *wch);
26
-
27
- ### Description
28
-
29
- The insch() functions insert a chtype into the window at the
30
- current or specified cursor position. The cursor is NOT
31
- advanced. A newline is equivalent to clrtoeol(); tabs are
32
- expanded; other control characters are converted as with
33
- unctrl().
34
-
35
- The ins_wch() functions are the wide-character
36
- equivalents, taking cchar_t pointers rather than chtypes.
37
-
38
- Video attributes can be combined with a character by ORing
39
- them into the parameter. Text, including attributes, can be
40
- copied from one place to another using inch() and insch().
41
-
42
- insrawch() etc. are PDCurses-specific wrappers for insch() etc.
43
- that disable the translation of control characters.
44
-
45
- ### Return Value
46
-
47
- All functions return OK on success and ERR on error.
48
-
49
- ### Portability
50
- X/Open BSD SYS V
51
- insch Y Y Y
52
- winsch Y Y Y
53
- mvinsch Y Y Y
54
- mvwinsch Y Y Y
55
- insrawch - - -
56
- winsrawch - - -
57
- ins_wch Y
58
- wins_wch Y
59
- mvins_wch Y
60
- mvwins_wch Y
61
-
62
- **man-end****************************************************************/
63
-
64
- #include <string.h>
65
-
66
- int winsch(WINDOW *win, chtype ch)
67
- {
68
- int x, y;
69
- chtype attr;
70
- bool xlat;
71
-
72
- PDC_LOG(("winsch() - called: win=%p ch=%x (text=%c attr=0x%x)\n",
73
- win, ch, ch & A_CHARTEXT, ch & A_ATTRIBUTES));
74
-
75
- if (!win)
76
- return ERR;
77
-
78
- x = win->_curx;
79
- y = win->_cury;
80
-
81
- if (y > win->_maxy || x > win->_maxx || y < 0 || x < 0)
82
- return ERR;
83
-
84
- xlat = !SP->raw_out && !(ch & A_ALTCHARSET);
85
- attr = ch & A_ATTRIBUTES;
86
- ch &= A_CHARTEXT;
87
-
88
- if (xlat && (ch < ' ' || ch == 0x7f))
89
- {
90
- int x2;
91
-
92
- switch ((int)ch)
93
- {
94
- case '\t':
95
- for (x2 = ((x / TABSIZE) + 1) * TABSIZE; x < x2; x++)
96
- {
97
- if (winsch(win, attr | ' ') == ERR)
98
- return ERR;
99
- }
100
- return OK;
101
-
102
- case '\n':
103
- wclrtoeol(win);
104
- break;
105
-
106
- case 0x7f:
107
- if (winsch(win, attr | '?') == ERR)
108
- return ERR;
109
-
110
- return winsch(win, attr | '^');
111
-
112
- default:
113
- /* handle control chars */
114
-
115
- if (winsch(win, attr | (ch + '@')) == ERR)
116
- return ERR;
117
-
118
- return winsch(win, attr | '^');
119
- }
120
- }
121
- else
122
- {
123
- int maxx;
124
- chtype *temp;
125
-
126
- /* If the incoming character doesn't have its own attribute,
127
- then use the current attributes for the window. If it has
128
- attributes but not a color component, OR the attributes to
129
- the current attributes for the window. If it has a color
130
- component, use the attributes solely from the incoming
131
- character. */
132
-
133
- if (!(attr & A_COLOR))
134
- attr |= win->_attrs;
135
-
136
- /* wrs (4/10/93): Apply the same sort of logic for the window
137
- background, in that it only takes precedence if other color
138
- attributes are not there and that the background character
139
- will only print if the printing character is blank. */
140
-
141
- if (!(attr & A_COLOR))
142
- attr |= win->_bkgd & A_ATTRIBUTES;
143
- else
144
- attr |= win->_bkgd & (A_ATTRIBUTES ^ A_COLOR);
145
-
146
- if (ch == ' ')
147
- ch = win->_bkgd & A_CHARTEXT;
148
-
149
- /* Add the attribute back into the character. */
150
-
151
- ch |= attr;
152
-
153
- maxx = win->_maxx;
154
- temp = &win->_y[y][x];
155
-
156
- memmove(temp + 1, temp, (maxx - x - 1) * sizeof(chtype));
157
-
158
- win->_lastch[y] = maxx - 1;
159
-
160
- if ((win->_firstch[y] == _NO_CHANGE) || (win->_firstch[y] > x))
161
- win->_firstch[y] = x;
162
-
163
- *temp = ch;
164
- }
165
-
166
- PDC_sync(win);
167
-
168
- return OK;
169
- }
170
-
171
- int insch(chtype ch)
172
- {
173
- PDC_LOG(("insch() - called\n"));
174
-
175
- return winsch(stdscr, ch);
176
- }
177
-
178
- int mvinsch(int y, int x, chtype ch)
179
- {
180
- PDC_LOG(("mvinsch() - called\n"));
181
-
182
- if (move(y, x) == ERR)
183
- return ERR;
184
-
185
- return winsch(stdscr, ch);
186
- }
187
-
188
- int mvwinsch(WINDOW *win, int y, int x, chtype ch)
189
- {
190
- PDC_LOG(("mvwinsch() - called\n"));
191
-
192
- if (wmove(win, y, x) == ERR)
193
- return ERR;
194
-
195
- return winsch(win, ch);
196
- }
197
-
198
- int winsrawch(WINDOW *win, chtype ch)
199
- {
200
- PDC_LOG(("winsrawch() - called: win=%p ch=%x "
201
- "(char=%c attr=0x%x)\n", win, ch,
202
- ch & A_CHARTEXT, ch & A_ATTRIBUTES));
203
-
204
- if ((ch & A_CHARTEXT) < ' ' || (ch & A_CHARTEXT) == 0x7f)
205
- ch |= A_ALTCHARSET;
206
-
207
- return winsch(win, ch);
208
- }
209
-
210
- int insrawch(chtype ch)
211
- {
212
- PDC_LOG(("insrawch() - called\n"));
213
-
214
- return winsrawch(stdscr, ch);
215
- }
216
-
217
- int mvinsrawch(int y, int x, chtype ch)
218
- {
219
- PDC_LOG(("mvinsrawch() - called\n"));
220
-
221
- if (move(y, x) == ERR)
222
- return ERR;
223
-
224
- return winsrawch(stdscr, ch);
225
- }
226
-
227
- int mvwinsrawch(WINDOW *win, int y, int x, chtype ch)
228
- {
229
- PDC_LOG(("mvwinsrawch() - called\n"));
230
-
231
- if (wmove(win, y, x) == ERR)
232
- return ERR;
233
-
234
- return winsrawch(win, ch);
235
- }
236
-
237
- #ifdef PDC_WIDE
238
- int wins_wch(WINDOW *win, const cchar_t *wch)
239
- {
240
- PDC_LOG(("wins_wch() - called\n"));
241
-
242
- return wch ? winsch(win, *wch) : ERR;
243
- }
244
-
245
- int ins_wch(const cchar_t *wch)
246
- {
247
- PDC_LOG(("ins_wch() - called\n"));
248
-
249
- return wins_wch(stdscr, wch);
250
- }
251
-
252
- int mvins_wch(int y, int x, const cchar_t *wch)
253
- {
254
- PDC_LOG(("mvins_wch() - called\n"));
255
-
256
- if (move(y, x) == ERR)
257
- return ERR;
258
-
259
- return wins_wch(stdscr, wch);
260
- }
261
-
262
- int mvwins_wch(WINDOW *win, int y, int x, const cchar_t *wch)
263
- {
264
- PDC_LOG(("mvwins_wch() - called\n"));
265
-
266
- if (wmove(win, y, x) == ERR)
267
- return ERR;
268
-
269
- return wins_wch(win, wch);
270
- }
271
- #endif