curses 1.4.6 → 1.5.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 (254) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/push_gem.yml +6 -4
  3. data/README.md +8 -1
  4. data/curses.gemspec +2 -2
  5. data/ext/curses/curses.c +188 -12
  6. data/ext/curses/extconf.rb +3 -2
  7. data/lib/curses.rb +7 -0
  8. data/sample/attr_demo.rb +4 -2
  9. data/sample/screen.rb +9 -0
  10. data/vendor/PDCurses/.gitignore +47 -0
  11. data/vendor/PDCurses/.travis.yml +49 -0
  12. data/vendor/PDCurses/CMakeLists.txt +68 -0
  13. data/vendor/PDCurses/HISTORY.md +2036 -0
  14. data/vendor/PDCurses/IMPLEMNT.md +327 -0
  15. data/vendor/PDCurses/Makefile +27 -0
  16. data/vendor/PDCurses/README.md +77 -0
  17. data/vendor/PDCurses/acs_defs.h +265 -0
  18. data/vendor/PDCurses/appveyor.yml +218 -0
  19. data/vendor/PDCurses/cmake/README.md +71 -0
  20. data/vendor/PDCurses/cmake/build_dependencies.cmake +178 -0
  21. data/vendor/PDCurses/cmake/build_options.cmake +25 -0
  22. data/vendor/PDCurses/cmake/dll_version.cmake +26 -0
  23. data/vendor/PDCurses/cmake/gen_config_header.cmake +43 -0
  24. data/vendor/PDCurses/cmake/get_version.cmake +17 -0
  25. data/vendor/PDCurses/cmake/make_uninstall.cmake +19 -0
  26. data/vendor/PDCurses/cmake/project_common.cmake +121 -0
  27. data/vendor/PDCurses/cmake/resource.in.cmake +52 -0
  28. data/vendor/PDCurses/cmake/sdl2_ttf/CMakeLists.txt +83 -0
  29. data/vendor/PDCurses/cmake/target_arch.cmake +36 -0
  30. data/vendor/PDCurses/cmake/version.in.cmake +73 -0
  31. data/vendor/PDCurses/cmake/watcom_open_dos16_toolchain.cmake +96 -0
  32. data/vendor/PDCurses/cmake/watcom_open_dos32_toolchain.cmake +106 -0
  33. data/vendor/PDCurses/cmake/watcom_open_os2v2_toolchain.cmake +105 -0
  34. data/vendor/PDCurses/curses.h +1846 -0
  35. data/vendor/PDCurses/curspriv.h +134 -0
  36. data/vendor/PDCurses/demos/README.md +25 -0
  37. data/vendor/PDCurses/demos/firework.c +144 -0
  38. data/vendor/PDCurses/demos/newtest.c +581 -0
  39. data/vendor/PDCurses/demos/ozdemo.c +447 -0
  40. data/vendor/PDCurses/demos/ptest.c +283 -0
  41. data/vendor/PDCurses/demos/rain.c +157 -0
  42. data/vendor/PDCurses/demos/testcurs.c +1607 -0
  43. data/vendor/PDCurses/demos/tui.c +1048 -0
  44. data/vendor/PDCurses/demos/tui.h +65 -0
  45. data/vendor/PDCurses/demos/tuidemo.c +233 -0
  46. data/vendor/PDCurses/demos/version.c +61 -0
  47. data/vendor/PDCurses/demos/worm.c +432 -0
  48. data/vendor/PDCurses/demos/xmas.c +955 -0
  49. data/vendor/PDCurses/dos/CMakeLists.txt +47 -0
  50. data/vendor/PDCurses/dos/Makefile +105 -0
  51. data/vendor/PDCurses/dos/Makefile.bcc +83 -0
  52. data/vendor/PDCurses/dos/Makefile.dmc +257 -0
  53. data/vendor/PDCurses/dos/Makefile.msc +113 -0
  54. data/vendor/PDCurses/dos/Makefile.wcc +107 -0
  55. data/vendor/PDCurses/dos/README.md +51 -0
  56. data/vendor/PDCurses/dos/bccdos.lrf +9 -0
  57. data/vendor/PDCurses/dos/mscdos.lrf +50 -0
  58. data/vendor/PDCurses/dos/pdcclip.c +132 -0
  59. data/vendor/PDCurses/dos/pdcdisp.c +135 -0
  60. data/vendor/PDCurses/dos/pdcdos.h +194 -0
  61. data/vendor/PDCurses/dos/pdcgetsc.c +98 -0
  62. data/vendor/PDCurses/dos/pdckbd.c +513 -0
  63. data/vendor/PDCurses/dos/pdcscrn.c +785 -0
  64. data/vendor/PDCurses/dos/pdcsetsc.c +101 -0
  65. data/vendor/PDCurses/dos/pdcutil.c +212 -0
  66. data/vendor/PDCurses/libobjs.mif +26 -0
  67. data/vendor/PDCurses/makedist.mif +20 -0
  68. data/vendor/PDCurses/man/Makefile +37 -0
  69. data/vendor/PDCurses/man/README.md +21 -0
  70. data/vendor/PDCurses/man/intro.md +361 -0
  71. data/vendor/PDCurses/man/manext.c +119 -0
  72. data/vendor/PDCurses/man/sdl.md +152 -0
  73. data/vendor/PDCurses/man/sdl2.md +58 -0
  74. data/vendor/PDCurses/man/x11.md +407 -0
  75. data/vendor/PDCurses/ncurses/CMakeLists.txt +66 -0
  76. data/vendor/PDCurses/ncurses/README.md +26 -0
  77. data/vendor/PDCurses/ncurses/makefile +29 -0
  78. data/vendor/PDCurses/os2/CMakeLists.txt +41 -0
  79. data/vendor/PDCurses/os2/Makefile +132 -0
  80. data/vendor/PDCurses/os2/Makefile.bcc +90 -0
  81. data/vendor/PDCurses/os2/Makefile.wcc +43 -0
  82. data/vendor/PDCurses/os2/README.md +43 -0
  83. data/vendor/PDCurses/os2/iccos2.lrf +50 -0
  84. data/vendor/PDCurses/os2/iccos2.mak +256 -0
  85. data/vendor/PDCurses/os2/pdcclip.c +188 -0
  86. data/vendor/PDCurses/os2/pdcdisp.c +93 -0
  87. data/vendor/PDCurses/os2/pdcgetsc.c +89 -0
  88. data/vendor/PDCurses/os2/pdckbd.c +521 -0
  89. data/vendor/PDCurses/os2/pdcos2.h +55 -0
  90. data/vendor/PDCurses/os2/pdcscrn.c +449 -0
  91. data/vendor/PDCurses/os2/pdcsetsc.c +112 -0
  92. data/vendor/PDCurses/os2/pdcutil.c +52 -0
  93. data/vendor/PDCurses/panel.h +56 -0
  94. data/vendor/PDCurses/pdcurses/README.md +25 -0
  95. data/vendor/PDCurses/pdcurses/addch.c +693 -0
  96. data/vendor/PDCurses/pdcurses/addchstr.c +245 -0
  97. data/vendor/PDCurses/pdcurses/addstr.c +240 -0
  98. data/vendor/PDCurses/pdcurses/attr.c +359 -0
  99. data/vendor/PDCurses/pdcurses/beep.c +68 -0
  100. data/vendor/PDCurses/pdcurses/bkgd.c +223 -0
  101. data/vendor/PDCurses/pdcurses/border.c +411 -0
  102. data/vendor/PDCurses/pdcurses/clear.c +159 -0
  103. data/vendor/PDCurses/pdcurses/color.c +298 -0
  104. data/vendor/PDCurses/pdcurses/debug.c +109 -0
  105. data/vendor/PDCurses/pdcurses/delch.c +96 -0
  106. data/vendor/PDCurses/pdcurses/deleteln.c +211 -0
  107. data/vendor/PDCurses/pdcurses/deprec.c +27 -0
  108. data/vendor/PDCurses/pdcurses/getch.c +417 -0
  109. data/vendor/PDCurses/pdcurses/getstr.c +474 -0
  110. data/vendor/PDCurses/pdcurses/getyx.c +139 -0
  111. data/vendor/PDCurses/pdcurses/inch.c +127 -0
  112. data/vendor/PDCurses/pdcurses/inchstr.c +214 -0
  113. data/vendor/PDCurses/pdcurses/initscr.c +367 -0
  114. data/vendor/PDCurses/pdcurses/inopts.c +324 -0
  115. data/vendor/PDCurses/pdcurses/insch.c +271 -0
  116. data/vendor/PDCurses/pdcurses/insstr.c +264 -0
  117. data/vendor/PDCurses/pdcurses/instr.c +246 -0
  118. data/vendor/PDCurses/pdcurses/kernel.c +259 -0
  119. data/vendor/PDCurses/pdcurses/keyname.c +157 -0
  120. data/vendor/PDCurses/pdcurses/mouse.c +438 -0
  121. data/vendor/PDCurses/pdcurses/move.c +57 -0
  122. data/vendor/PDCurses/pdcurses/outopts.c +159 -0
  123. data/vendor/PDCurses/pdcurses/overlay.c +214 -0
  124. data/vendor/PDCurses/pdcurses/pad.c +260 -0
  125. data/vendor/PDCurses/pdcurses/panel.c +633 -0
  126. data/vendor/PDCurses/pdcurses/printw.c +126 -0
  127. data/vendor/PDCurses/pdcurses/refresh.c +279 -0
  128. data/vendor/PDCurses/pdcurses/scanw.c +578 -0
  129. data/vendor/PDCurses/pdcurses/scr_dump.c +213 -0
  130. data/vendor/PDCurses/pdcurses/scroll.c +101 -0
  131. data/vendor/PDCurses/pdcurses/slk.c +591 -0
  132. data/vendor/PDCurses/pdcurses/termattr.c +182 -0
  133. data/vendor/PDCurses/pdcurses/terminfo.c +217 -0
  134. data/vendor/PDCurses/pdcurses/touch.c +163 -0
  135. data/vendor/PDCurses/pdcurses/util.c +312 -0
  136. data/vendor/PDCurses/pdcurses/window.c +569 -0
  137. data/vendor/PDCurses/sdl1/Makefile +129 -0
  138. data/vendor/PDCurses/sdl1/Makefile.mng +110 -0
  139. data/vendor/PDCurses/sdl1/README.md +31 -0
  140. data/vendor/PDCurses/sdl1/deffont.h +385 -0
  141. data/vendor/PDCurses/sdl1/deficon.h +23 -0
  142. data/vendor/PDCurses/sdl1/pdcclip.c +131 -0
  143. data/vendor/PDCurses/sdl1/pdcdisp.c +373 -0
  144. data/vendor/PDCurses/sdl1/pdcgetsc.c +30 -0
  145. data/vendor/PDCurses/sdl1/pdckbd.c +405 -0
  146. data/vendor/PDCurses/sdl1/pdcscrn.c +414 -0
  147. data/vendor/PDCurses/sdl1/pdcsdl.h +31 -0
  148. data/vendor/PDCurses/sdl1/pdcsetsc.c +64 -0
  149. data/vendor/PDCurses/sdl1/pdcutil.c +40 -0
  150. data/vendor/PDCurses/sdl1/sdltest.c +79 -0
  151. data/vendor/PDCurses/sdl2/CMakeLists.txt +76 -0
  152. data/vendor/PDCurses/sdl2/Makefile +135 -0
  153. data/vendor/PDCurses/sdl2/Makefile.vc +164 -0
  154. data/vendor/PDCurses/sdl2/README.md +34 -0
  155. data/vendor/PDCurses/sdl2/deffont.h +385 -0
  156. data/vendor/PDCurses/sdl2/deficon.h +23 -0
  157. data/vendor/PDCurses/sdl2/pdcclip.c +93 -0
  158. data/vendor/PDCurses/sdl2/pdcdisp.c +534 -0
  159. data/vendor/PDCurses/sdl2/pdcgetsc.c +30 -0
  160. data/vendor/PDCurses/sdl2/pdckbd.c +480 -0
  161. data/vendor/PDCurses/sdl2/pdcscrn.c +443 -0
  162. data/vendor/PDCurses/sdl2/pdcsdl.h +33 -0
  163. data/vendor/PDCurses/sdl2/pdcsetsc.c +67 -0
  164. data/vendor/PDCurses/sdl2/pdcutil.c +39 -0
  165. data/vendor/PDCurses/sdl2/sdltest.c +81 -0
  166. data/vendor/PDCurses/term.h +48 -0
  167. data/vendor/PDCurses/version.mif +7 -0
  168. data/vendor/PDCurses/vt/CMakeLists.txt +28 -0
  169. data/vendor/PDCurses/vt/Makefile +135 -0
  170. data/vendor/PDCurses/vt/Makefile.bcc +111 -0
  171. data/vendor/PDCurses/vt/Makefile.dmc +258 -0
  172. data/vendor/PDCurses/vt/Makefile.vc +144 -0
  173. data/vendor/PDCurses/vt/Makefile.wcc +107 -0
  174. data/vendor/PDCurses/vt/README.md +64 -0
  175. data/vendor/PDCurses/vt/pdcclip.c +20 -0
  176. data/vendor/PDCurses/vt/pdcdisp.c +284 -0
  177. data/vendor/PDCurses/vt/pdcgetsc.c +27 -0
  178. data/vendor/PDCurses/vt/pdckbd.c +394 -0
  179. data/vendor/PDCurses/vt/pdcscrn.c +434 -0
  180. data/vendor/PDCurses/vt/pdcsetsc.c +45 -0
  181. data/vendor/PDCurses/vt/pdcutil.c +43 -0
  182. data/vendor/PDCurses/vt/pdcvt.h +16 -0
  183. data/vendor/PDCurses/watcom.mif +68 -0
  184. data/vendor/PDCurses/wincon/CMakeLists.txt +27 -0
  185. data/vendor/PDCurses/wincon/Makefile.bcc +88 -0
  186. data/vendor/PDCurses/wincon/Makefile.dmc +256 -0
  187. data/vendor/PDCurses/wincon/Makefile.lcc +273 -0
  188. data/vendor/PDCurses/wincon/Makefile.mng +176 -0
  189. data/vendor/PDCurses/wincon/Makefile.vc +144 -0
  190. data/vendor/PDCurses/wincon/Makefile.wcc +51 -0
  191. data/vendor/PDCurses/wincon/README.md +85 -0
  192. data/vendor/PDCurses/wincon/pdcclip.c +174 -0
  193. data/vendor/PDCurses/wincon/pdcdisp.c +143 -0
  194. data/vendor/PDCurses/wincon/pdcgetsc.c +55 -0
  195. data/vendor/PDCurses/wincon/pdckbd.c +786 -0
  196. data/vendor/PDCurses/wincon/pdcscrn.c +717 -0
  197. data/vendor/PDCurses/wincon/pdcsetsc.c +91 -0
  198. data/vendor/PDCurses/wincon/pdcurses.ico +0 -0
  199. data/vendor/PDCurses/wincon/pdcurses.rc +28 -0
  200. data/vendor/PDCurses/wincon/pdcutil.c +41 -0
  201. data/vendor/PDCurses/wincon/pdcwin.h +31 -0
  202. data/vendor/PDCurses/wingui/CMakeLists.txt +27 -0
  203. data/vendor/PDCurses/wingui/Makefile.bcc +85 -0
  204. data/vendor/PDCurses/wingui/Makefile.dmc +259 -0
  205. data/vendor/PDCurses/wingui/Makefile.lcc +273 -0
  206. data/vendor/PDCurses/wingui/Makefile.mng +171 -0
  207. data/vendor/PDCurses/wingui/Makefile.vc +144 -0
  208. data/vendor/PDCurses/wingui/Makefile.wcc +51 -0
  209. data/vendor/PDCurses/wingui/README.md +93 -0
  210. data/vendor/PDCurses/wingui/pdcclip.c +174 -0
  211. data/vendor/PDCurses/wingui/pdcdisp.c +718 -0
  212. data/vendor/PDCurses/wingui/pdcgetsc.c +30 -0
  213. data/vendor/PDCurses/wingui/pdckbd.c +143 -0
  214. data/vendor/PDCurses/wingui/pdcscrn.c +2797 -0
  215. data/vendor/PDCurses/wingui/pdcsetsc.c +89 -0
  216. data/vendor/PDCurses/wingui/pdcurses.ico +0 -0
  217. data/vendor/PDCurses/wingui/pdcurses.rc +28 -0
  218. data/vendor/PDCurses/wingui/pdcutil.c +61 -0
  219. data/vendor/PDCurses/wingui/pdcwin.h +122 -0
  220. data/vendor/PDCurses/x11/Makefile.in +754 -0
  221. data/vendor/PDCurses/x11/PDCurses.spec +82 -0
  222. data/vendor/PDCurses/x11/README.md +62 -0
  223. data/vendor/PDCurses/x11/ScrollBox.c +319 -0
  224. data/vendor/PDCurses/x11/ScrollBox.h +51 -0
  225. data/vendor/PDCurses/x11/ScrollBoxP.h +70 -0
  226. data/vendor/PDCurses/x11/aclocal.m4 +994 -0
  227. data/vendor/PDCurses/x11/big_icon.xbm +46 -0
  228. data/vendor/PDCurses/x11/compose.h +201 -0
  229. data/vendor/PDCurses/x11/config.guess +1500 -0
  230. data/vendor/PDCurses/x11/config.h.in +100 -0
  231. data/vendor/PDCurses/x11/config.sub +1616 -0
  232. data/vendor/PDCurses/x11/configure +6700 -0
  233. data/vendor/PDCurses/x11/configure.ac +295 -0
  234. data/vendor/PDCurses/x11/debian/changelog +6 -0
  235. data/vendor/PDCurses/x11/debian/compat +1 -0
  236. data/vendor/PDCurses/x11/debian/control +11 -0
  237. data/vendor/PDCurses/x11/debian/copyright +27 -0
  238. data/vendor/PDCurses/x11/debian/rules +98 -0
  239. data/vendor/PDCurses/x11/install-sh +253 -0
  240. data/vendor/PDCurses/x11/little_icon.xbm +14 -0
  241. data/vendor/PDCurses/x11/ncurses_cfg.h +45 -0
  242. data/vendor/PDCurses/x11/pdcclip.c +173 -0
  243. data/vendor/PDCurses/x11/pdcdisp.c +85 -0
  244. data/vendor/PDCurses/x11/pdcgetsc.c +28 -0
  245. data/vendor/PDCurses/x11/pdckbd.c +104 -0
  246. data/vendor/PDCurses/x11/pdcscrn.c +258 -0
  247. data/vendor/PDCurses/x11/pdcsetsc.c +95 -0
  248. data/vendor/PDCurses/x11/pdcutil.c +52 -0
  249. data/vendor/PDCurses/x11/pdcx11.c +316 -0
  250. data/vendor/PDCurses/x11/pdcx11.h +191 -0
  251. data/vendor/PDCurses/x11/sb.c +155 -0
  252. data/vendor/PDCurses/x11/x11.c +3686 -0
  253. data/vendor/PDCurses/x11/xcurses-config.in +81 -0
  254. metadata +249 -8
@@ -0,0 +1,90 @@
1
+ # Borland MAKE Makefile for PDCurses library - OS/2 BC++ 1.0+
2
+ #
3
+ # Usage: make -f [path\]Makefile.bcc [DEBUG=] [target]
4
+ #
5
+ # where target can be any of:
6
+ # [all|demos|pdcurses.lib|testcurs.exe...]
7
+
8
+ O = obj
9
+
10
+ !ifndef PDCURSES_SRCDIR
11
+ PDCURSES_SRCDIR = ..
12
+ !endif
13
+
14
+ !include $(PDCURSES_SRCDIR)\version.mif
15
+ !include $(PDCURSES_SRCDIR)\libobjs.mif
16
+
17
+ osdir = $(PDCURSES_SRCDIR)\os2
18
+
19
+ CC = bcc
20
+
21
+ !ifdef DEBUG
22
+ CFLAGS = -N -v -y -DPDCDEBUG
23
+ !else
24
+ CFLAGS = -O
25
+ !endif
26
+
27
+ CPPFLAGS = -I$(PDCURSES_SRCDIR)
28
+
29
+ BUILD = $(CC) -c $(CFLAGS) $(CPPFLAGS)
30
+
31
+ LINK = tlink
32
+
33
+ LIBEXE = tlib /C /E
34
+
35
+ LIBCURSES = pdcurses.lib
36
+
37
+ all: $(LIBCURSES) $(DEMOS)
38
+
39
+ clean:
40
+ -del *.obj
41
+ -del *.lib
42
+ -del *.exe
43
+
44
+ demos: $(DEMOS)
45
+
46
+ $(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
47
+ -del $@
48
+ $(LIBEXE) $@ \
49
+ +addch.obj +addchstr.obj +addstr.obj +attr.obj +beep.obj +bkgd.obj \
50
+ +border.obj +clear.obj +color.obj +delch.obj +deleteln.obj +deprec.obj \
51
+ +getch.obj +getstr.obj +getyx.obj +inch.obj +inchstr.obj +initscr.obj \
52
+ +inopts.obj +insch.obj +insstr.obj +instr.obj +kernel.obj +keyname.obj \
53
+ +mouse.obj +move.obj +outopts.obj +overlay.obj +pad.obj +panel.obj \
54
+ +printw.obj +refresh.obj +scanw.obj +scr_dump.obj +scroll.obj +slk.obj \
55
+ +termattr.obj +terminfo.obj +touch.obj +util.obj +window.obj +debug.obj \
56
+ +pdcclip.obj +pdcdisp.obj +pdcgetsc.obj +pdckbd.obj +pdcscrn.obj \
57
+ +pdcsetsc.obj +pdcutil.obj ,lib.map
58
+ -copy $(LIBCURSES) panel.lib
59
+
60
+ .autodepend
61
+
62
+ {$(srcdir)\}.c.obj:
63
+ $(BUILD) $<
64
+
65
+ {$(osdir)\}.c.obj:
66
+ $(BUILD) $<
67
+
68
+ {$(demodir)\}.c.obj:
69
+ $(BUILD) $<
70
+
71
+ .c.obj:
72
+ $(BUILD) $<
73
+
74
+ .obj.exe:
75
+ $(CC) -e$@ $** $(LIBCURSES)
76
+
77
+ tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
78
+ $(CC) -e$@ $**
79
+
80
+ tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
81
+ $(BUILD) -I$(demodir) $(demodir)\tui.c
82
+
83
+ tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
84
+ $(BUILD) -I$(demodir) $(demodir)\tuidemo.c
85
+
86
+ PLATFORM1 = Borland C++ OS/2 1.0
87
+ PLATFORM2 = Borland C/C++ OS/2 1.0
88
+ ARCNAME = pdc$(VER)bcos2
89
+
90
+ !include $(PDCURSES_SRCDIR)\makedist.mif
@@ -0,0 +1,43 @@
1
+ # Watcom WMAKE Makefile for PDCurses library - OS/2 Open Watcom 1.1+
2
+ #
3
+ # Usage: wmake -f [path\]Makefile.wcc [DEBUG=Y] [target]
4
+ #
5
+ # where target can be any of:
6
+ # [all|demos|pdcurses.lib|testcurs.exe...]
7
+
8
+ !ifdef %PDCURSES_SRCDIR
9
+ PDCURSES_SRCDIR = $(%PDCURSES_SRCDIR)
10
+ !else
11
+ PDCURSES_SRCDIR = ..
12
+ !endif
13
+
14
+ !include $(PDCURSES_SRCDIR)\version.mif
15
+
16
+ osdir = $(PDCURSES_SRCDIR)\os2
17
+
18
+ CC = wcc386
19
+ TARGET = os2v2
20
+
21
+ CFLAGS = /bt=$(TARGET) /wx /s /zq /i=$(PDCURSES_SRCDIR)
22
+
23
+ !ifeq DEBUG Y
24
+ CFLAGS += /d2 /DPDCDEBUG
25
+ LDFLAGS = D A op q sys $(TARGET)
26
+ !else
27
+ CFLAGS += /oneatx
28
+ LDFLAGS = op q sys $(TARGET)
29
+ !endif
30
+
31
+ LIBEXE = wlib /q /n /b /c /t
32
+
33
+ !include $(PDCURSES_SRCDIR)\watcom.mif
34
+
35
+ $(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
36
+ $(LIBEXE) $@ $(LIBOBJS) $(PDCOBJS)
37
+ -copy $(LIBCURSES) panel.lib
38
+
39
+ PLATFORM1 = Watcom C++ OS/2
40
+ PLATFORM2 = Open Watcom 1.6 for OS/2
41
+ ARCNAME = pdc$(VER)_wcc_os2
42
+
43
+ !include $(PDCURSES_SRCDIR)\makedist.mif
@@ -0,0 +1,43 @@
1
+ PDCurses for OS/2
2
+ =================
3
+
4
+ This directory contains PDCurses source code files specific to OS/2.
5
+
6
+
7
+ Building
8
+ --------
9
+
10
+ - Choose the appropriate makefile for your compiler:
11
+
12
+ Makefile.bcc - Borland C++ 2.0
13
+ Makefile - EMX 0.9b+
14
+ iccos2.mak - C Set/2
15
+ Makefile.wcc - Open Watcom 1.8+
16
+
17
+ - Optionally, you can build in a different directory than the platform
18
+ directory by setting PDCURSES_SRCDIR to point to the directory where
19
+ you unpacked PDCurses, and changing to your target directory:
20
+
21
+ set PDCURSES_SRCDIR=c:\pdcurses
22
+
23
+ - Build it:
24
+
25
+ make -f makefilename
26
+
27
+ (For Watcom, use "wmake" instead of "make"; for MSVC or C Set/2,
28
+ "nmake".) You'll get the libraries (pdcurses.lib or .a, depending on
29
+ your compiler; and panel.lib or .a), the demos (*.exe), and a lot of
30
+ object files. Note that the panel library is just a copy of the main
31
+ library, provided for convenience; both panel and curses functions are
32
+ in the main library.
33
+
34
+ You can also use the optional parameter "DLL=Y" with EMX, to build the
35
+ library as a DLL:
36
+
37
+ make -f Makefile DLL=Y
38
+
39
+
40
+ Distribution Status
41
+ -------------------
42
+
43
+ The files in this directory are released to the Public Domain.
@@ -0,0 +1,50 @@
1
+ -+addch.obj &
2
+ -+addchstr.obj &
3
+ -+addstr.obj &
4
+ -+attr.obj &
5
+ -+beep.obj &
6
+ -+bkgd.obj &
7
+ -+border.obj &
8
+ -+clear.obj &
9
+ -+color.obj &
10
+ -+delch.obj &
11
+ -+deleteln.obj &
12
+ -+deprec.obj &
13
+ -+getch.obj &
14
+ -+getstr.obj &
15
+ -+getyx.obj &
16
+ -+inch.obj &
17
+ -+inchstr.obj &
18
+ -+initscr.obj &
19
+ -+inopts.obj &
20
+ -+insch.obj &
21
+ -+insstr.obj &
22
+ -+instr.obj &
23
+ -+kernel.obj &
24
+ -+keyname.obj &
25
+ -+mouse.obj &
26
+ -+move.obj &
27
+ -+outopts.obj &
28
+ -+overlay.obj &
29
+ -+pad.obj &
30
+ -+panel.obj &
31
+ -+printw.obj &
32
+ -+refresh.obj &
33
+ -+scanw.obj &
34
+ -+scr_dump.obj &
35
+ -+scroll.obj &
36
+ -+slk.obj &
37
+ -+termattr.obj &
38
+ -+terminfo.obj &
39
+ -+touch.obj &
40
+ -+util.obj &
41
+ -+window.obj &
42
+ -+debug.obj &
43
+ -+pdcclip.obj &
44
+ -+pdcdisp.obj &
45
+ -+pdcgetsc.obj &
46
+ -+pdckbd.obj &
47
+ -+pdcscrn.obj &
48
+ -+pdcsetsc.obj &
49
+ -+pdcutil.obj &
50
+ ,lib.map;
@@ -0,0 +1,256 @@
1
+ # NMAKE Makefile for PDCurses library - OS/2 C Set/2
2
+ #
3
+ # Usage: nmake -f [path\]iccos2.mak [DEBUG=] [target]
4
+ #
5
+ # where target can be any of:
6
+ # [all|demos|pdcurses.lib|testcurs.exe...]
7
+
8
+ O = obj
9
+
10
+ !ifndef PDCURSES_SRCDIR
11
+ PDCURSES_SRCDIR = ..
12
+ !endif
13
+
14
+ !include $(PDCURSES_SRCDIR)\version.mif
15
+ !include $(PDCURSES_SRCDIR)\libobjs.mif
16
+
17
+ osdir = $(PDCURSES_SRCDIR)\os2
18
+
19
+ PDCURSES_OS2_H = $(osdir)\pdcos2.h
20
+
21
+ CC = icc
22
+
23
+ !ifdef DEBUG
24
+ CFLAGS = /Sm /Ti+ /O- /Q+ /dPDCDEBUG
25
+ LDFLAGS = /NOLOGO /NOE /SE:160 /DEBUG /PMTYPE:VIO
26
+ !else
27
+ CFLAGS = /Sm /Ti- /O+ /Q+
28
+ LDFLAGS = /NOLOGO /NOE /EXEPACK /PACKCODE /PACKDATA /PMTYPE:VIO
29
+ !endif
30
+
31
+ CPPFLAGS = -I$(PDCURSES_SRCDIR)
32
+
33
+ BUILD = $(CC) -c $(CFLAGS) $(CPPFLAGS)
34
+
35
+ LINK = link386
36
+
37
+ LIBEXE = lib
38
+
39
+ LIBCURSES = pdcurses.lib
40
+
41
+ all: $(LIBCURSES) $(DEMOS)
42
+
43
+ clean:
44
+ -del *.obj
45
+ -del *.lib
46
+ -del *.exe
47
+
48
+ demos: $(DEMOS)
49
+
50
+ $(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
51
+ $(LIBEXE) $@ @$(osdir)\iccos2.lrf
52
+ -copy $(LIBCURSES) panel.lib
53
+
54
+ addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
55
+ $(BUILD) $(srcdir)\addch.c
56
+
57
+ addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
58
+ $(BUILD) $(srcdir)\addchstr.c
59
+
60
+ addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
61
+ $(BUILD) $(srcdir)\addstr.c
62
+
63
+ attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
64
+ $(BUILD) $(srcdir)\attr.c
65
+
66
+ beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
67
+ $(BUILD) $(srcdir)\beep.c
68
+
69
+ bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
70
+ $(BUILD) $(srcdir)\bkgd.c
71
+
72
+ border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
73
+ $(BUILD) $(srcdir)\border.c
74
+
75
+ clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
76
+ $(BUILD) $(srcdir)\clear.c
77
+
78
+ color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
79
+ $(BUILD) $(srcdir)\color.c
80
+
81
+ delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
82
+ $(BUILD) $(srcdir)\delch.c
83
+
84
+ deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
85
+ $(BUILD) $(srcdir)\deleteln.c
86
+
87
+ deprec.obj: $(srcdir)\deprec.c $(PDCURSES_HEADERS)
88
+ $(BUILD) $(srcdir)\deprec.c
89
+
90
+ getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
91
+ $(BUILD) $(srcdir)\getch.c
92
+
93
+ getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
94
+ $(BUILD) $(srcdir)\getstr.c
95
+
96
+ getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
97
+ $(BUILD) $(srcdir)\getyx.c
98
+
99
+ inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
100
+ $(BUILD) $(srcdir)\inch.c
101
+
102
+ inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
103
+ $(BUILD) $(srcdir)\inchstr.c
104
+
105
+ initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
106
+ $(BUILD) $(srcdir)\initscr.c
107
+
108
+ inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
109
+ $(BUILD) $(srcdir)\inopts.c
110
+
111
+ insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
112
+ $(BUILD) $(srcdir)\insch.c
113
+
114
+ insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
115
+ $(BUILD) $(srcdir)\insstr.c
116
+
117
+ instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
118
+ $(BUILD) $(srcdir)\instr.c
119
+
120
+ kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
121
+ $(BUILD) $(srcdir)\kernel.c
122
+
123
+ keyname.obj: $(srcdir)\keyname.c $(PDCURSES_HEADERS)
124
+ $(BUILD) $(srcdir)\keyname.c
125
+
126
+ mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
127
+ $(BUILD) $(srcdir)\mouse.c
128
+
129
+ move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
130
+ $(BUILD) $(srcdir)\move.c
131
+
132
+ outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
133
+ $(BUILD) $(srcdir)\outopts.c
134
+
135
+ overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
136
+ $(BUILD) $(srcdir)\overlay.c
137
+
138
+ pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
139
+ $(BUILD) $(srcdir)\pad.c
140
+
141
+ panel.obj: $(srcdir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
142
+ $(BUILD) $(srcdir)\panel.c
143
+
144
+ printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
145
+ $(BUILD) $(srcdir)\printw.c
146
+
147
+ refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
148
+ $(BUILD) $(srcdir)\refresh.c
149
+
150
+ scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
151
+ $(BUILD) $(srcdir)\scanw.c
152
+
153
+ scr_dump.obj: $(srcdir)\scr_dump.c $(PDCURSES_HEADERS)
154
+ $(BUILD) $(srcdir)\scr_dump.c
155
+
156
+ scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
157
+ $(BUILD) $(srcdir)\scroll.c
158
+
159
+ slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
160
+ $(BUILD) $(srcdir)\slk.c
161
+
162
+ termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
163
+ $(BUILD) $(srcdir)\termattr.c
164
+
165
+ terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS) $(TERM_HEADER)
166
+ $(BUILD) $(srcdir)\terminfo.c
167
+
168
+ touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
169
+ $(BUILD) $(srcdir)\touch.c
170
+
171
+ util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
172
+ $(BUILD) $(srcdir)\util.c
173
+
174
+ window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
175
+ $(BUILD) $(srcdir)\window.c
176
+
177
+ debug.obj: $(srcdir)\debug.c $(PDCURSES_HEADERS)
178
+ $(BUILD) $(srcdir)\debug.c
179
+
180
+ pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
181
+ $(BUILD) $(osdir)\pdcclip.c
182
+
183
+ pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
184
+ $(BUILD) $(osdir)\pdcdisp.c
185
+
186
+ pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
187
+ $(BUILD) $(osdir)\pdcgetsc.c
188
+
189
+ pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
190
+ $(BUILD) $(osdir)\pdckbd.c
191
+
192
+ pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
193
+ $(BUILD) $(osdir)\pdcscrn.c
194
+
195
+ pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
196
+ $(BUILD) $(osdir)\pdcsetsc.c
197
+
198
+ pdcutil.obj: $(osdir)\pdcutil.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
199
+ $(BUILD) $(osdir)\pdcutil.c
200
+
201
+ firework.exe: firework.obj $(LIBCURSES)
202
+ $(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
203
+
204
+ ozdemo.exe: ozdemo.obj $(LIBCURSES)
205
+ $(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
206
+
207
+ ptest.exe: ptest.obj $(LIBCURSES)
208
+ $(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
209
+
210
+ rain.exe: rain.obj $(LIBCURSES)
211
+ $(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
212
+
213
+ testcurs.exe: testcurs.obj $(LIBCURSES)
214
+ $(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
215
+
216
+ tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
217
+ $(LINK) $(LDFLAGS) $*.obj+tui.obj,$*,,$(LIBCURSES);
218
+
219
+ worm.exe: worm.obj $(LIBCURSES)
220
+ $(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
221
+
222
+ xmas.exe: xmas.obj $(LIBCURSES)
223
+ $(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
224
+
225
+ firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
226
+ $(BUILD) $(demodir)\firework.c
227
+
228
+ ozdemo.obj: $(demodir)\ozdemo.c $(PDCURSES_CURSES_H)
229
+ $(BUILD) $(demodir)\ozdemo.c
230
+
231
+ ptest.obj: $(demodir)\ptest.c $(PANEL_HEADER) $(PDCURSES_CURSES_H)
232
+ $(BUILD) $(demodir)\ptest.c
233
+
234
+ rain.obj: $(demodir)\rain.c $(PDCURSES_CURSES_H)
235
+ $(BUILD) $(demodir)\rain.c
236
+
237
+ testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
238
+ $(BUILD) $(demodir)\testcurs.c
239
+
240
+ tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
241
+ $(BUILD) $(demodir)\tui.c
242
+
243
+ tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
244
+ $(BUILD) $(demodir)\tuidemo.c
245
+
246
+ worm.obj: $(demodir)\worm.c $(PDCURSES_CURSES_H)
247
+ $(BUILD) $(demodir)\worm.c
248
+
249
+ xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
250
+ $(BUILD) $(demodir)\xmas.c
251
+
252
+ PLATFORM1 = C Set/2 OS/2
253
+ PLATFORM2 = C Set/2 for OS/2
254
+ ARCNAME = pdc$(VER)_icc_os2
255
+
256
+ !include $(PDCURSES_SRCDIR)\makedist.mif
@@ -0,0 +1,188 @@
1
+ /* Public Domain Curses */
2
+
3
+ #include "pdcos2.h"
4
+
5
+ /*man-start**************************************************************
6
+
7
+ clipboard
8
+ ---------
9
+
10
+ ### Synopsis
11
+
12
+ int PDC_getclipboard(char **contents, long *length);
13
+ int PDC_setclipboard(const char *contents, long length);
14
+ int PDC_freeclipboard(char *contents);
15
+ int PDC_clearclipboard(void);
16
+
17
+ ### Description
18
+
19
+ PDC_getclipboard() gets the textual contents of the system's
20
+ clipboard. This function returns the contents of the clipboard
21
+ in the contents argument. It is the responsibilitiy of the
22
+ caller to free the memory returned, via PDC_freeclipboard().
23
+ The length of the clipboard contents is returned in the length
24
+ argument.
25
+
26
+ PDC_setclipboard copies the supplied text into the system's
27
+ clipboard, emptying the clipboard prior to the copy.
28
+
29
+ PDC_clearclipboard() clears the internal clipboard.
30
+
31
+ ### Return Values
32
+
33
+ indicator of success/failure of call.
34
+ PDC_CLIP_SUCCESS the call was successful
35
+ PDC_CLIP_MEMORY_ERROR unable to allocate sufficient memory for
36
+ the clipboard contents
37
+ PDC_CLIP_EMPTY the clipboard contains no text
38
+ PDC_CLIP_ACCESS_ERROR no clipboard support
39
+
40
+ ### Portability
41
+ X/Open BSD SYS V
42
+ PDC_getclipboard - - -
43
+ PDC_setclipboard - - -
44
+ PDC_freeclipboard - - -
45
+ PDC_clearclipboard - - -
46
+
47
+ **man-end****************************************************************/
48
+
49
+ int PDC_getclipboard(char **contents, long *length)
50
+ {
51
+ #ifndef EMXVIDEO
52
+ HMQ hmq;
53
+ HAB hab;
54
+ PTIB ptib;
55
+ PPIB ppib;
56
+ ULONG ulRet;
57
+ long len;
58
+ int rc;
59
+ #endif
60
+ PDC_LOG(("PDC_getclipboard() - called\n"));
61
+
62
+ #ifndef EMXVIDEO
63
+ DosGetInfoBlocks(&ptib, &ppib);
64
+ ppib->pib_ultype = 3;
65
+ hab = WinInitialize(0);
66
+ hmq = WinCreateMsgQueue(hab, 0);
67
+
68
+ if (!WinOpenClipbrd(hab))
69
+ {
70
+ WinDestroyMsgQueue(hmq);
71
+ WinTerminate(hab);
72
+ return PDC_CLIP_ACCESS_ERROR;
73
+ }
74
+
75
+ rc = PDC_CLIP_EMPTY;
76
+
77
+ ulRet = WinQueryClipbrdData(hab, CF_TEXT);
78
+
79
+ if (ulRet)
80
+ {
81
+ len = strlen((char *)ulRet);
82
+ *contents = malloc(len + 1);
83
+
84
+ if (!*contents)
85
+ rc = PDC_CLIP_MEMORY_ERROR;
86
+ else
87
+ {
88
+ strcpy((char *)*contents, (char *)ulRet);
89
+ *length = len;
90
+ rc = PDC_CLIP_SUCCESS;
91
+ }
92
+ }
93
+
94
+ WinCloseClipbrd(hab);
95
+ WinDestroyMsgQueue(hmq);
96
+ WinTerminate(hab);
97
+
98
+ return rc;
99
+ #else
100
+ return PDC_CLIP_ACCESS_ERROR;
101
+ #endif
102
+ }
103
+
104
+ int PDC_setclipboard(const char *contents, long length)
105
+ {
106
+ #ifndef EMXVIDEO
107
+ HAB hab;
108
+ PTIB ptib;
109
+ PPIB ppib;
110
+ ULONG ulRC;
111
+ PSZ szTextOut = NULL;
112
+ int rc;
113
+ #endif
114
+ PDC_LOG(("PDC_setclipboard() - called\n"));
115
+
116
+ #ifndef EMXVIDEO
117
+ DosGetInfoBlocks(&ptib, &ppib);
118
+ ppib->pib_ultype = 3;
119
+ hab = WinInitialize(0);
120
+
121
+ if (!WinOpenClipbrd(hab))
122
+ {
123
+ WinTerminate(hab);
124
+ return PDC_CLIP_ACCESS_ERROR;
125
+ }
126
+
127
+ rc = PDC_CLIP_MEMORY_ERROR;
128
+
129
+ ulRC = DosAllocSharedMem((PVOID)&szTextOut, NULL, length + 1,
130
+ PAG_WRITE | PAG_COMMIT | OBJ_GIVEABLE);
131
+
132
+ if (ulRC == 0)
133
+ {
134
+ strcpy(szTextOut, contents);
135
+ WinEmptyClipbrd(hab);
136
+
137
+ if (WinSetClipbrdData(hab, (ULONG)szTextOut, CF_TEXT, CFI_POINTER))
138
+ rc = PDC_CLIP_SUCCESS;
139
+ else
140
+ {
141
+ DosFreeMem(szTextOut);
142
+ rc = PDC_CLIP_ACCESS_ERROR;
143
+ }
144
+ }
145
+
146
+ WinCloseClipbrd(hab);
147
+ WinTerminate(hab);
148
+
149
+ return rc;
150
+ #else
151
+ return PDC_CLIP_ACCESS_ERROR;
152
+ #endif
153
+ }
154
+
155
+ int PDC_freeclipboard(char *contents)
156
+ {
157
+ PDC_LOG(("PDC_freeclipboard() - called\n"));
158
+
159
+ if (contents)
160
+ free(contents);
161
+
162
+ return PDC_CLIP_SUCCESS;
163
+ }
164
+
165
+ int PDC_clearclipboard(void)
166
+ {
167
+ #ifndef EMXVIDEO
168
+ HAB hab;
169
+ PTIB ptib;
170
+ PPIB ppib;
171
+ #endif
172
+ PDC_LOG(("PDC_clearclipboard() - called\n"));
173
+
174
+ #ifndef EMXVIDEO
175
+ DosGetInfoBlocks(&ptib, &ppib);
176
+ ppib->pib_ultype = 3;
177
+ hab = WinInitialize(0);
178
+
179
+ WinEmptyClipbrd(hab);
180
+
181
+ WinCloseClipbrd(hab);
182
+ WinTerminate(hab);
183
+
184
+ return PDC_CLIP_SUCCESS;
185
+ #else
186
+ return PDC_CLIP_ACCESS_ERROR;
187
+ #endif
188
+ }