ncurses 5.3 v5.3
authorThomas E. Dickey <dickey@invisible-island.net>
Sun, 13 Oct 2002 03:35:53 +0000 (23:35 -0400)
committerThomas E. Dickey <dickey@invisible-island.net>
Sun, 13 Oct 2002 03:35:53 +0000 (23:35 -0400)
851 files changed:
ANNOUNCE
Ada95/Makefile.in
Ada95/README
Ada95/gen/Makefile.in
Ada95/gen/gen.c
Ada95/gen/terminal_interface-curses-aux.ads.m4
Ada95/gen/terminal_interface-curses-forms-field_types.ads.m4
Ada95/gen/terminal_interface-curses-forms-field_user_data.ads.m4
Ada95/gen/terminal_interface-curses-forms-form_user_data.ads.m4
Ada95/gen/terminal_interface-curses-forms.ads.m4
Ada95/gen/terminal_interface-curses-menus-item_user_data.ads.m4
Ada95/gen/terminal_interface-curses-menus-menu_user_data.ads.m4
Ada95/gen/terminal_interface-curses-menus.ads.m4
Ada95/gen/terminal_interface-curses-mouse.ads.m4
Ada95/gen/terminal_interface-curses-panels-user_data.ads.m4
Ada95/gen/terminal_interface-curses-panels.ads.m4
Ada95/gen/terminal_interface-curses-trace.ads.m4 [new file with mode: 0644]
Ada95/gen/terminal_interface-curses.ads.m4
Ada95/samples/Makefile.in
Ada95/samples/ncurses.adb [new file with mode: 0644]
Ada95/samples/ncurses2-acs_and_scroll.adb [new file with mode: 0644]
Ada95/samples/ncurses2-acs_and_scroll.ads [new file with mode: 0644]
Ada95/samples/ncurses2-acs_display.adb [new file with mode: 0644]
Ada95/samples/ncurses2-acs_display.ads [new file with mode: 0644]
Ada95/samples/ncurses2-attr_test.adb [new file with mode: 0644]
Ada95/samples/ncurses2-attr_test.ads [new file with mode: 0644]
Ada95/samples/ncurses2-color_edit.adb [new file with mode: 0644]
Ada95/samples/ncurses2-color_edit.ads [new file with mode: 0644]
Ada95/samples/ncurses2-color_test.adb [new file with mode: 0644]
Ada95/samples/ncurses2-color_test.ads [new file with mode: 0644]
Ada95/samples/ncurses2-demo_forms.adb [new file with mode: 0644]
Ada95/samples/ncurses2-demo_forms.ads [new file with mode: 0644]
Ada95/samples/ncurses2-demo_pad.adb [new file with mode: 0644]
Ada95/samples/ncurses2-demo_pad.ads [new file with mode: 0644]
Ada95/samples/ncurses2-demo_panels.adb [new file with mode: 0644]
Ada95/samples/ncurses2-demo_panels.ads [new file with mode: 0644]
Ada95/samples/ncurses2-flushinp_test.adb [new file with mode: 0644]
Ada95/samples/ncurses2-flushinp_test.ads [new file with mode: 0644]
Ada95/samples/ncurses2-genericputs.adb [new file with mode: 0644]
Ada95/samples/ncurses2-genericputs.ads [new file with mode: 0644]
Ada95/samples/ncurses2-getch.ads [new file with mode: 0644]
Ada95/samples/ncurses2-getch_test.adb [new file with mode: 0644]
Ada95/samples/ncurses2-getch_test.ads [new file with mode: 0644]
Ada95/samples/ncurses2-getopt.adb [new file with mode: 0644]
Ada95/samples/ncurses2-getopt.ads [new file with mode: 0644]
Ada95/samples/ncurses2-m.adb [new file with mode: 0644]
Ada95/samples/ncurses2-m.ads [new file with mode: 0644]
Ada95/samples/ncurses2-menu_test.adb [new file with mode: 0644]
Ada95/samples/ncurses2-menu_test.ads [new file with mode: 0644]
Ada95/samples/ncurses2-overlap_test.adb [new file with mode: 0644]
Ada95/samples/ncurses2-overlap_test.ads [new file with mode: 0644]
Ada95/samples/ncurses2-slk_test.adb [new file with mode: 0644]
Ada95/samples/ncurses2-slk_test.ads [new file with mode: 0644]
Ada95/samples/ncurses2-test_sgr_attributes.adb [new file with mode: 0644]
Ada95/samples/ncurses2-test_sgr_attributes.ads [new file with mode: 0644]
Ada95/samples/ncurses2-trace_set.adb [new file with mode: 0644]
Ada95/samples/ncurses2-trace_set.ads [new file with mode: 0644]
Ada95/samples/ncurses2-util.adb [new file with mode: 0644]
Ada95/samples/ncurses2-util.ads [new file with mode: 0644]
Ada95/samples/ncurses2.ads [new file with mode: 0644]
Ada95/samples/rain.adb
Ada95/samples/rain.ads
Ada95/samples/sample-curses_demo-attributes.adb
Ada95/samples/sample-curses_demo-attributes.ads
Ada95/samples/sample-curses_demo-mouse.adb
Ada95/samples/sample-curses_demo-mouse.ads
Ada95/samples/sample-curses_demo.adb
Ada95/samples/sample-curses_demo.ads
Ada95/samples/sample-explanation.adb
Ada95/samples/sample-explanation.ads
Ada95/samples/sample-form_demo-aux.adb
Ada95/samples/sample-form_demo-aux.ads
Ada95/samples/sample-form_demo-handler.adb
Ada95/samples/sample-form_demo-handler.ads
Ada95/samples/sample-form_demo.adb
Ada95/samples/sample-form_demo.ads
Ada95/samples/sample-function_key_setting.adb
Ada95/samples/sample-function_key_setting.ads
Ada95/samples/sample-header_handler.adb
Ada95/samples/sample-header_handler.ads
Ada95/samples/sample-helpers.adb
Ada95/samples/sample-helpers.ads
Ada95/samples/sample-keyboard_handler.adb
Ada95/samples/sample-keyboard_handler.ads
Ada95/samples/sample-manifest.ads
Ada95/samples/sample-menu_demo-aux.adb
Ada95/samples/sample-menu_demo-aux.ads
Ada95/samples/sample-menu_demo-handler.adb
Ada95/samples/sample-menu_demo-handler.ads
Ada95/samples/sample-menu_demo.adb
Ada95/samples/sample-menu_demo.ads
Ada95/samples/sample-my_field_type.adb
Ada95/samples/sample-my_field_type.ads
Ada95/samples/sample-text_io_demo.adb
Ada95/samples/sample-text_io_demo.ads
Ada95/samples/sample.adb
Ada95/samples/sample.ads
Ada95/samples/status.adb
Ada95/samples/status.ads
Ada95/samples/tour.adb
Ada95/samples/tour.ads
Ada95/src/Makefile.in
Ada95/src/terminal_interface-curses-aux.adb
Ada95/src/terminal_interface-curses-forms-field_types-alpha.adb
Ada95/src/terminal_interface-curses-forms-field_types-alpha.ads
Ada95/src/terminal_interface-curses-forms-field_types-alphanumeric.adb
Ada95/src/terminal_interface-curses-forms-field_types-alphanumeric.ads
Ada95/src/terminal_interface-curses-forms-field_types-enumeration-ada.adb
Ada95/src/terminal_interface-curses-forms-field_types-enumeration-ada.ads
Ada95/src/terminal_interface-curses-forms-field_types-enumeration.adb
Ada95/src/terminal_interface-curses-forms-field_types-enumeration.ads
Ada95/src/terminal_interface-curses-forms-field_types-intfield.adb
Ada95/src/terminal_interface-curses-forms-field_types-intfield.ads
Ada95/src/terminal_interface-curses-forms-field_types-ipv4_address.adb
Ada95/src/terminal_interface-curses-forms-field_types-ipv4_address.ads
Ada95/src/terminal_interface-curses-forms-field_types-numeric.adb
Ada95/src/terminal_interface-curses-forms-field_types-numeric.ads
Ada95/src/terminal_interface-curses-forms-field_types-regexp.adb
Ada95/src/terminal_interface-curses-forms-field_types-regexp.ads
Ada95/src/terminal_interface-curses-forms-field_types-user-choice.adb
Ada95/src/terminal_interface-curses-forms-field_types-user-choice.ads
Ada95/src/terminal_interface-curses-forms-field_types-user.adb
Ada95/src/terminal_interface-curses-forms-field_types-user.ads
Ada95/src/terminal_interface-curses-forms-field_types.adb
Ada95/src/terminal_interface-curses-forms-field_user_data.adb
Ada95/src/terminal_interface-curses-forms-form_user_data.adb
Ada95/src/terminal_interface-curses-forms.adb
Ada95/src/terminal_interface-curses-menus-item_user_data.adb
Ada95/src/terminal_interface-curses-menus-menu_user_data.adb
Ada95/src/terminal_interface-curses-menus.adb
Ada95/src/terminal_interface-curses-mouse.adb
Ada95/src/terminal_interface-curses-panels-user_data.adb
Ada95/src/terminal_interface-curses-panels.adb
Ada95/src/terminal_interface-curses-putwin.adb [new file with mode: 0644]
Ada95/src/terminal_interface-curses-putwin.ads [new file with mode: 0644]
Ada95/src/terminal_interface-curses-termcap.adb [new file with mode: 0644]
Ada95/src/terminal_interface-curses-termcap.ads [new file with mode: 0644]
Ada95/src/terminal_interface-curses-terminfo.adb [new file with mode: 0644]
Ada95/src/terminal_interface-curses-terminfo.ads [new file with mode: 0644]
Ada95/src/terminal_interface-curses-text_io-aux.adb
Ada95/src/terminal_interface-curses-text_io-aux.ads
Ada95/src/terminal_interface-curses-text_io-complex_io.adb
Ada95/src/terminal_interface-curses-text_io-complex_io.ads
Ada95/src/terminal_interface-curses-text_io-decimal_io.adb
Ada95/src/terminal_interface-curses-text_io-decimal_io.ads
Ada95/src/terminal_interface-curses-text_io-enumeration_io.adb
Ada95/src/terminal_interface-curses-text_io-enumeration_io.ads
Ada95/src/terminal_interface-curses-text_io-fixed_io.adb
Ada95/src/terminal_interface-curses-text_io-fixed_io.ads
Ada95/src/terminal_interface-curses-text_io-float_io.adb
Ada95/src/terminal_interface-curses-text_io-float_io.ads
Ada95/src/terminal_interface-curses-text_io-integer_io.adb
Ada95/src/terminal_interface-curses-text_io-integer_io.ads
Ada95/src/terminal_interface-curses-text_io-modular_io.adb
Ada95/src/terminal_interface-curses-text_io-modular_io.ads
Ada95/src/terminal_interface-curses-text_io.adb
Ada95/src/terminal_interface-curses-text_io.ads
Ada95/src/terminal_interface-curses-trace.adb_p [new file with mode: 0644]
Ada95/src/terminal_interface-curses.adb
Ada95/src/terminal_interface.ads
INSTALL
MANIFEST
Makefile.glibc
Makefile.in
NEWS
README.emx
TO-DO
aclocal.m4
announce.html.in
c++/Makefile.in
c++/README-first
c++/cursesapp.cc
c++/cursesapp.h
c++/cursesf.cc
c++/cursesf.h
c++/cursesm.cc
c++/cursesm.h
c++/cursesmain.cc
c++/cursesp.cc
c++/cursesp.h
c++/cursespad.cc
c++/cursesw.cc
c++/cursesw.h
c++/cursslk.cc
c++/cursslk.h
c++/demo.cc
c++/edit_cfg.sh
c++/etip.h.in
c++/internal.h
config.guess
config.sub
configure
configure.in
dist.mk
doc/html/Ada95.html
doc/html/ada/files/T.htm
doc/html/ada/funcs/A.htm
doc/html/ada/funcs/B.htm
doc/html/ada/funcs/C.htm
doc/html/ada/funcs/D.htm
doc/html/ada/funcs/E.htm
doc/html/ada/funcs/F.htm
doc/html/ada/funcs/G.htm
doc/html/ada/funcs/H.htm
doc/html/ada/funcs/I.htm
doc/html/ada/funcs/K.htm
doc/html/ada/funcs/L.htm
doc/html/ada/funcs/M.htm
doc/html/ada/funcs/N.htm
doc/html/ada/funcs/O.htm
doc/html/ada/funcs/P.htm
doc/html/ada/funcs/Q.htm
doc/html/ada/funcs/R.htm
doc/html/ada/funcs/S.htm
doc/html/ada/funcs/T.htm
doc/html/ada/funcs/U.htm
doc/html/ada/funcs/V.htm
doc/html/ada/funcs/W.htm
doc/html/ada/main.htm
doc/html/ada/table.html
doc/html/ada/terminal_interface-curses-aux__adb.htm
doc/html/ada/terminal_interface-curses-aux__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_types__ads.htm
doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm
doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm
doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm
doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm
doc/html/ada/terminal_interface-curses-forms__adb.htm
doc/html/ada/terminal_interface-curses-forms__ads.htm
doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm
doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm
doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm
doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm
doc/html/ada/terminal_interface-curses-menus__adb.htm
doc/html/ada/terminal_interface-curses-menus__ads.htm
doc/html/ada/terminal_interface-curses-mouse__adb.htm
doc/html/ada/terminal_interface-curses-mouse__ads.htm
doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm
doc/html/ada/terminal_interface-curses-panels-user_data__ads.htm
doc/html/ada/terminal_interface-curses-panels__adb.htm
doc/html/ada/terminal_interface-curses-panels__ads.htm
doc/html/ada/terminal_interface-curses-putwin__adb.htm [new file with mode: 0644]
doc/html/ada/terminal_interface-curses-putwin__ads.htm [new file with mode: 0644]
doc/html/ada/terminal_interface-curses-termcap__adb.htm [new file with mode: 0644]
doc/html/ada/terminal_interface-curses-termcap__ads.htm [new file with mode: 0644]
doc/html/ada/terminal_interface-curses-terminfo__adb.htm [new file with mode: 0644]
doc/html/ada/terminal_interface-curses-terminfo__ads.htm [new file with mode: 0644]
doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm
doc/html/ada/terminal_interface-curses-text_io-aux__ads.htm
doc/html/ada/terminal_interface-curses-text_io-complex_io__adb.htm
doc/html/ada/terminal_interface-curses-text_io-complex_io__ads.htm
doc/html/ada/terminal_interface-curses-text_io-decimal_io__adb.htm
doc/html/ada/terminal_interface-curses-text_io-decimal_io__ads.htm
doc/html/ada/terminal_interface-curses-text_io-enumeration_io__adb.htm
doc/html/ada/terminal_interface-curses-text_io-enumeration_io__ads.htm
doc/html/ada/terminal_interface-curses-text_io-fixed_io__adb.htm
doc/html/ada/terminal_interface-curses-text_io-fixed_io__ads.htm
doc/html/ada/terminal_interface-curses-text_io-float_io__adb.htm
doc/html/ada/terminal_interface-curses-text_io-float_io__ads.htm
doc/html/ada/terminal_interface-curses-text_io-integer_io__adb.htm
doc/html/ada/terminal_interface-curses-text_io-integer_io__ads.htm
doc/html/ada/terminal_interface-curses-text_io-modular_io__adb.htm
doc/html/ada/terminal_interface-curses-text_io-modular_io__ads.htm
doc/html/ada/terminal_interface-curses-text_io__adb.htm
doc/html/ada/terminal_interface-curses-text_io__ads.htm
doc/html/ada/terminal_interface-curses-trace__adb.htm [new file with mode: 0644]
doc/html/ada/terminal_interface-curses-trace__ads.htm [new file with mode: 0644]
doc/html/ada/terminal_interface-curses__adb.htm
doc/html/ada/terminal_interface-curses__ads.htm
doc/html/ada/terminal_interface__ads.htm
doc/html/announce.html
doc/html/man/captoinfo.1m.html
doc/html/man/clear.1.html
doc/html/man/curs_add_wch.3x.html [new file with mode: 0644]
doc/html/man/curs_add_wchstr.3x.html [new file with mode: 0644]
doc/html/man/curs_addch.3x.html
doc/html/man/curs_addchstr.3x.html
doc/html/man/curs_addstr.3x.html
doc/html/man/curs_addwstr.3x.html [new file with mode: 0644]
doc/html/man/curs_attr.3x.html
doc/html/man/curs_beep.3x.html
doc/html/man/curs_bkgd.3x.html
doc/html/man/curs_bkgrnd.3x.html [new file with mode: 0644]
doc/html/man/curs_border.3x.html
doc/html/man/curs_border_set.3x.html [new file with mode: 0644]
doc/html/man/curs_clear.3x.html
doc/html/man/curs_color.3x.html
doc/html/man/curs_delch.3x.html
doc/html/man/curs_deleteln.3x.html
doc/html/man/curs_extend.3x.html
doc/html/man/curs_get_wch.3x.html [new file with mode: 0644]
doc/html/man/curs_get_wstr.3x.html [new file with mode: 0644]
doc/html/man/curs_getcchar.3x.html [new file with mode: 0644]
doc/html/man/curs_getch.3x.html
doc/html/man/curs_getstr.3x.html
doc/html/man/curs_getyx.3x.html
doc/html/man/curs_in_wch.3x.html [new file with mode: 0644]
doc/html/man/curs_in_wchstr.3x.html [new file with mode: 0644]
doc/html/man/curs_inch.3x.html
doc/html/man/curs_inchstr.3x.html
doc/html/man/curs_initscr.3x.html
doc/html/man/curs_inopts.3x.html
doc/html/man/curs_ins_wch.3x.html [new file with mode: 0644]
doc/html/man/curs_ins_wstr.3x.html [new file with mode: 0644]
doc/html/man/curs_insch.3x.html
doc/html/man/curs_insstr.3x.html
doc/html/man/curs_instr.3x.html
doc/html/man/curs_inwstr.3x.html [new file with mode: 0644]
doc/html/man/curs_kernel.3x.html
doc/html/man/curs_mouse.3x.html
doc/html/man/curs_move.3x.html
doc/html/man/curs_outopts.3x.html
doc/html/man/curs_overlay.3x.html
doc/html/man/curs_pad.3x.html
doc/html/man/curs_print.3x.html
doc/html/man/curs_printw.3x.html
doc/html/man/curs_refresh.3x.html
doc/html/man/curs_scanw.3x.html
doc/html/man/curs_scr_dump.3x.html
doc/html/man/curs_scroll.3x.html
doc/html/man/curs_slk.3x.html
doc/html/man/curs_termattrs.3x.html
doc/html/man/curs_termcap.3x.html
doc/html/man/curs_terminfo.3x.html
doc/html/man/curs_touch.3x.html
doc/html/man/curs_trace.3x.html
doc/html/man/curs_util.3x.html
doc/html/man/curs_window.3x.html
doc/html/man/default_colors.3x.html
doc/html/man/define_key.3x.html
doc/html/man/form.3x.html
doc/html/man/form_cursor.3x.html
doc/html/man/form_data.3x.html
doc/html/man/form_driver.3x.html
doc/html/man/form_field.3x.html
doc/html/man/form_field_attributes.3x.html
doc/html/man/form_field_buffer.3x.html
doc/html/man/form_field_info.3x.html
doc/html/man/form_field_just.3x.html
doc/html/man/form_field_new.3x.html
doc/html/man/form_field_opts.3x.html
doc/html/man/form_field_userptr.3x.html
doc/html/man/form_field_validation.3x.html
doc/html/man/form_fieldtype.3x.html
doc/html/man/form_hook.3x.html
doc/html/man/form_new.3x.html
doc/html/man/form_new_page.3x.html
doc/html/man/form_opts.3x.html
doc/html/man/form_page.3x.html
doc/html/man/form_post.3x.html
doc/html/man/form_requestname.3x.html
doc/html/man/form_userptr.3x.html
doc/html/man/form_win.3x.html
doc/html/man/infocmp.1m.html
doc/html/man/infotocap.1m.html
doc/html/man/keybound.3x.html
doc/html/man/keyok.3x.html
doc/html/man/menu.3x.html
doc/html/man/menu_attributes.3x.html
doc/html/man/menu_cursor.3x.html
doc/html/man/menu_driver.3x.html
doc/html/man/menu_format.3x.html
doc/html/man/menu_hook.3x.html
doc/html/man/menu_items.3x.html
doc/html/man/menu_mark.3x.html
doc/html/man/menu_new.3x.html
doc/html/man/menu_opts.3x.html
doc/html/man/menu_pattern.3x.html
doc/html/man/menu_post.3x.html
doc/html/man/menu_requestname.3x.html
doc/html/man/menu_spacing.3x.html
doc/html/man/menu_userptr.3x.html
doc/html/man/menu_win.3x.html
doc/html/man/mitem_current.3x.html
doc/html/man/mitem_name.3x.html
doc/html/man/mitem_new.3x.html
doc/html/man/mitem_opts.3x.html
doc/html/man/mitem_userptr.3x.html
doc/html/man/mitem_value.3x.html
doc/html/man/mitem_visible.3x.html
doc/html/man/ncurses.3x.html
doc/html/man/panel.3x.html
doc/html/man/resizeterm.3x.html
doc/html/man/term.5.html
doc/html/man/term.7.html
doc/html/man/terminfo.5.html
doc/html/man/tic.1m.html
doc/html/man/toe.1m.html
doc/html/man/tput.1.html
doc/html/man/tset.1.html
doc/html/man/wresize.3x.html
doc/html/ncurses-intro.html
doc/ncurses-intro.doc
form/Makefile.in
form/READ.ME
form/fld_arg.c
form/fld_attr.c
form/fld_current.c
form/fld_def.c
form/fld_dup.c
form/fld_ftchoice.c
form/fld_ftlink.c
form/fld_info.c
form/fld_just.c
form/fld_link.c
form/fld_max.c
form/fld_move.c
form/fld_newftyp.c
form/fld_opts.c
form/fld_pad.c
form/fld_page.c
form/fld_stat.c
form/fld_type.c
form/fld_user.c
form/form.h
form/form.priv.h
form/frm_cursor.c
form/frm_data.c
form/frm_def.c
form/frm_driver.c
form/frm_hook.c
form/frm_opts.c
form/frm_page.c
form/frm_post.c
form/frm_req_name.c
form/frm_scale.c
form/frm_sub.c
form/frm_user.c
form/frm_win.c
form/fty_alnum.c
form/fty_alpha.c
form/fty_enum.c
form/fty_int.c
form/fty_ipv4.c
form/fty_num.c
form/fty_regex.c
form/llib-lform
form/llib-lformw [new file with mode: 0644]
include/Caps
include/Caps.aix4 [new file with mode: 0644]
include/Caps.hpux11 [new file with mode: 0644]
include/Caps.keys [new file with mode: 0644]
include/Caps.osf1r5 [new file with mode: 0644]
include/Caps.uwin [new file with mode: 0644]
include/MKkey_defs.sh [new file with mode: 0755]
include/MKterm.h.awk.in
include/Makefile.in
include/curses.h.in
include/curses.tail [new file with mode: 0644]
include/curses.wide [new file with mode: 0644]
include/edit_cfg.sh
include/headers
include/nc_alloc.h
include/nc_panel.h
include/ncurses_cfg.hin
include/ncurses_defs
include/ncurses_dll.h [new file with mode: 0644]
include/term_entry.h
include/termcap.h.in
include/tic.h
include/unctrl.h.in
man/MKterminfo.sh
man/Makefile.in
man/curs_add_wch.3x [new file with mode: 0644]
man/curs_add_wchstr.3x [new file with mode: 0644]
man/curs_addch.3x
man/curs_addstr.3x
man/curs_addwstr.3x [new file with mode: 0644]
man/curs_attr.3x
man/curs_bkgd.3x
man/curs_bkgrnd.3x [new file with mode: 0644]
man/curs_border.3x
man/curs_border_set.3x [new file with mode: 0644]
man/curs_color.3x
man/curs_deleteln.3x
man/curs_extend.3x
man/curs_get_wch.3x [new file with mode: 0644]
man/curs_get_wstr.3x [new file with mode: 0644]
man/curs_getcchar.3x [new file with mode: 0644]
man/curs_getch.3x
man/curs_getstr.3x
man/curs_getyx.3x
man/curs_in_wch.3x [new file with mode: 0644]
man/curs_in_wchstr.3x [new file with mode: 0644]
man/curs_initscr.3x
man/curs_inopts.3x
man/curs_ins_wch.3x [new file with mode: 0644]
man/curs_ins_wstr.3x [new file with mode: 0644]
man/curs_insstr.3x
man/curs_instr.3x
man/curs_inwstr.3x [new file with mode: 0644]
man/curs_kernel.3x
man/curs_mouse.3x
man/curs_move.3x
man/curs_outopts.3x
man/curs_overlay.3x
man/curs_print.3x
man/curs_printw.3x
man/curs_refresh.3x
man/curs_scanw.3x
man/curs_scroll.3x
man/curs_slk.3x
man/curs_termattrs.3x
man/curs_termcap.3x
man/curs_terminfo.3x
man/curs_trace.3x
man/curs_util.3x
man/default_colors.3x
man/define_key.3x
man/form.3x
man/form_driver.3x
man/form_field_attributes.3x
man/form_field_buffer.3x
man/form_field_info.3x
man/form_field_just.3x
man/form_field_new.3x
man/form_field_validation.3x
man/form_fieldtype.3x
man/form_new_page.3x
man/infocmp.1m
man/keybound.3x
man/keyok.3x
man/man_db.renames
man/manlinks.sed
man/menu.3x
man/menu_attributes.3x
man/menu_driver.3x
man/menu_format.3x
man/menu_pattern.3x
man/menu_spacing.3x
man/mitem_value.3x
man/ncurses.3x
man/resizeterm.3x
man/term.5
man/term.7
man/terminfo.head
man/terminfo.tail
man/tic.1m
man/tput.1
man/wresize.3x
menu/Makefile.in
menu/READ.ME
menu/eti.h
menu/llib-lmenu
menu/llib-lmenuw [new file with mode: 0644]
menu/m_attribs.c
menu/m_cursor.c
menu/m_driver.c
menu/m_format.c
menu/m_global.c
menu/m_hook.c
menu/m_item_cur.c
menu/m_item_nam.c
menu/m_item_new.c
menu/m_item_opt.c
menu/m_item_top.c
menu/m_item_use.c
menu/m_item_val.c
menu/m_item_vis.c
menu/m_items.c
menu/m_new.c
menu/m_opts.c
menu/m_pad.c
menu/m_pattern.c
menu/m_post.c
menu/m_req_name.c
menu/m_scale.c
menu/m_spacing.c
menu/m_sub.c
menu/m_userptr.c
menu/m_win.c
menu/menu.h
menu/menu.priv.h
menu/mf_common.h
misc/Makefile.in
misc/makellib
misc/run_tic.in
misc/tdlint
misc/terminfo.src
mk-0th.awk
mk-1st.awk
mkinstalldirs
ncurses/Makefile.in
ncurses/README
ncurses/README.IZ [new file with mode: 0644]
ncurses/SigAction.h
ncurses/base/MKkeyname.awk
ncurses/base/MKlib_gen.sh
ncurses/base/MKunctrl.awk
ncurses/base/define_key.c
ncurses/base/keybound.c
ncurses/base/keyok.c
ncurses/base/lib_addch.c
ncurses/base/lib_addstr.c
ncurses/base/lib_beep.c
ncurses/base/lib_bkgd.c
ncurses/base/lib_box.c
ncurses/base/lib_chgat.c
ncurses/base/lib_clear.c
ncurses/base/lib_clearok.c
ncurses/base/lib_clrbot.c
ncurses/base/lib_clreol.c
ncurses/base/lib_color.c
ncurses/base/lib_colorset.c
ncurses/base/lib_delch.c
ncurses/base/lib_delwin.c
ncurses/base/lib_dft_fgbg.c
ncurses/base/lib_echo.c
ncurses/base/lib_endwin.c
ncurses/base/lib_erase.c
ncurses/base/lib_flash.c
ncurses/base/lib_freeall.c
ncurses/base/lib_getch.c
ncurses/base/lib_getstr.c
ncurses/base/lib_hline.c
ncurses/base/lib_immedok.c
ncurses/base/lib_inchstr.c
ncurses/base/lib_initscr.c
ncurses/base/lib_insch.c
ncurses/base/lib_insdel.c
ncurses/base/lib_insstr.c
ncurses/base/lib_instr.c
ncurses/base/lib_isendwin.c
ncurses/base/lib_leaveok.c
ncurses/base/lib_mouse.c
ncurses/base/lib_move.c
ncurses/base/lib_mvwin.c
ncurses/base/lib_newterm.c
ncurses/base/lib_newwin.c
ncurses/base/lib_nl.c
ncurses/base/lib_overlay.c
ncurses/base/lib_pad.c
ncurses/base/lib_printw.c
ncurses/base/lib_redrawln.c
ncurses/base/lib_refresh.c
ncurses/base/lib_restart.c
ncurses/base/lib_scanw.c
ncurses/base/lib_screen.c
ncurses/base/lib_scroll.c
ncurses/base/lib_scrollok.c
ncurses/base/lib_scrreg.c
ncurses/base/lib_set_term.c
ncurses/base/lib_slk.c
ncurses/base/lib_slkatr_set.c
ncurses/base/lib_slkatrof.c
ncurses/base/lib_slkatron.c
ncurses/base/lib_slkatrset.c
ncurses/base/lib_slkattr.c
ncurses/base/lib_slkclear.c
ncurses/base/lib_slkcolor.c
ncurses/base/lib_slkinit.c
ncurses/base/lib_slklab.c
ncurses/base/lib_slkrefr.c
ncurses/base/lib_slkset.c
ncurses/base/lib_slktouch.c
ncurses/base/lib_touch.c
ncurses/base/lib_ungetch.c
ncurses/base/lib_vline.c
ncurses/base/lib_wattroff.c
ncurses/base/lib_wattron.c
ncurses/base/lib_winch.c
ncurses/base/lib_window.c
ncurses/base/memmove.c
ncurses/base/nc_panel.c
ncurses/base/resizeterm.c
ncurses/base/safe_sprintf.c
ncurses/base/sigaction.c
ncurses/base/tries.c
ncurses/base/version.c
ncurses/base/vsscanf.c
ncurses/base/wresize.c
ncurses/curses.priv.h
ncurses/fifo_defs.h
ncurses/llib-lncurses
ncurses/llib-lncursesw [new file with mode: 0644]
ncurses/modules
ncurses/tinfo/MKcaptab.awk
ncurses/tinfo/MKfallback.sh
ncurses/tinfo/MKkeys_list.sh [new file with mode: 0755]
ncurses/tinfo/MKnames.awk
ncurses/tinfo/access.c
ncurses/tinfo/add_tries.c
ncurses/tinfo/alloc_entry.c
ncurses/tinfo/alloc_ttype.c
ncurses/tinfo/captoinfo.c
ncurses/tinfo/comp_error.c
ncurses/tinfo/comp_expand.c
ncurses/tinfo/comp_hash.c
ncurses/tinfo/comp_parse.c
ncurses/tinfo/comp_scan.c
ncurses/tinfo/doalloc.c
ncurses/tinfo/free_ttype.c
ncurses/tinfo/getenv_num.c
ncurses/tinfo/home_terminfo.c
ncurses/tinfo/init_keytry.c
ncurses/tinfo/keys.list [deleted file]
ncurses/tinfo/lib_acs.c
ncurses/tinfo/lib_baudrate.c
ncurses/tinfo/lib_cur_term.c
ncurses/tinfo/lib_data.c
ncurses/tinfo/lib_has_cap.c
ncurses/tinfo/lib_kernel.c
ncurses/tinfo/lib_longname.c
ncurses/tinfo/lib_napms.c
ncurses/tinfo/lib_options.c
ncurses/tinfo/lib_print.c
ncurses/tinfo/lib_raw.c
ncurses/tinfo/lib_setup.c
ncurses/tinfo/lib_termcap.c
ncurses/tinfo/lib_termname.c
ncurses/tinfo/lib_tgoto.c
ncurses/tinfo/lib_ti.c
ncurses/tinfo/lib_tparm.c
ncurses/tinfo/lib_tputs.c
ncurses/tinfo/lib_ttyflags.c
ncurses/tinfo/make_keys.c
ncurses/tinfo/name_match.c
ncurses/tinfo/parse_entry.c
ncurses/tinfo/read_entry.c
ncurses/tinfo/read_termcap.c
ncurses/tinfo/setbuf.c
ncurses/tinfo/strings.c
ncurses/tinfo/write_entry.c
ncurses/trace/lib_trace.c
ncurses/trace/lib_traceatr.c
ncurses/trace/lib_tracebits.c
ncurses/trace/lib_tracechr.c
ncurses/trace/lib_tracedmp.c
ncurses/trace/lib_tracemse.c
ncurses/trace/trace_buf.c
ncurses/trace/trace_tries.c
ncurses/trace/trace_xnames.c
ncurses/trace/varargs.c [new file with mode: 0644]
ncurses/trace/visbuf.c [new file with mode: 0644]
ncurses/tty/MKexpanded.sh
ncurses/tty/hardscroll.c
ncurses/tty/hashmap.c
ncurses/tty/lib_mvcur.c
ncurses/tty/lib_tstp.c
ncurses/tty/lib_twait.c
ncurses/tty/lib_vidattr.c
ncurses/tty/tty_display.h
ncurses/tty/tty_input.h
ncurses/tty/tty_update.c
ncurses/widechar/lib_box_set.c [new file with mode: 0644]
ncurses/widechar/lib_cchar.c [new file with mode: 0644]
ncurses/widechar/lib_erasewchar.c [new file with mode: 0644]
ncurses/widechar/lib_get_wch.c [new file with mode: 0644]
ncurses/widechar/lib_get_wstr.c [new file with mode: 0644]
ncurses/widechar/lib_hline_set.c [new file with mode: 0644]
ncurses/widechar/lib_in_wch.c [new file with mode: 0644]
ncurses/widechar/lib_in_wchnstr.c [new file with mode: 0644]
ncurses/widechar/lib_ins_nwstr.c [new file with mode: 0644]
ncurses/widechar/lib_ins_wch.c [new file with mode: 0644]
ncurses/widechar/lib_inwstr.c [new file with mode: 0644]
ncurses/widechar/lib_unget_wch.c [new file with mode: 0644]
ncurses/widechar/lib_vid_attr.c [new file with mode: 0644]
ncurses/widechar/lib_vline_set.c [new file with mode: 0644]
ncurses/widechar/lib_wacs.c [new file with mode: 0644]
ncurses/widechar/lib_wunctrl.c [new file with mode: 0644]
panel/Makefile.in
panel/llib-lpanel
panel/llib-lpanelw [new file with mode: 0644]
panel/p_above.c
panel/p_below.c
panel/p_bottom.c
panel/p_delete.c
panel/p_hidden.c
panel/p_hide.c
panel/p_move.c
panel/p_new.c
panel/p_replace.c
panel/p_show.c
panel/p_top.c
panel/p_update.c
panel/p_user.c
panel/p_win.c
panel/panel.c
panel/panel.h
panel/panel.priv.h
progs/MKtermsort.sh
progs/Makefile.in
progs/dump_entry.c
progs/dump_entry.h
progs/infocmp.c
progs/progs.priv.h
progs/tic.c
progs/toe.c
progs/tput.c
progs/tset.c
tack/Makefile.in
tack/ansi.c
tack/charset.c
tack/edit.c
tack/init.c
tack/output.c
tack/sync.c
tack/sysdep.c
tack/tack.c
tack/tack.h
test/Makefile.in
test/blue.c
test/bs.c
test/cardfile.c
test/configure
test/configure.in
test/ditto.c
test/dots.c
test/filter.c
test/firework.c
test/firstlast.c
test/gdc.c
test/hanoi.c
test/hashtest.c
test/keynames.c
test/knight.c
test/lrtest.c
test/ncurses.c
test/newdemo.c
test/railroad.c
test/rain.c
test/tclock.c
test/test.priv.h
test/testaddch.c
test/testcurs.c
test/testscanw.c
test/tracemunch
test/view.c
test/worm.c
test/xmas.c

index 7b5f4efa69ae44ea29f14dc42e07bdc41dd5ca87..e39a0bee28d8656945825566da2f96f66f8a3c81 100644 (file)
--- a/ANNOUNCE
+++ b/ANNOUNCE
 
 
-                            Announcing ncurses 5.2
+                            Announcing ncurses 5.3
 
 
-   The ncurses (new curses) library is a free software emulation of
-   curses in System V Release 4.0, and more. It uses terminfo format,
-   supports pads and color and multiple highlights and forms characters
-   and function-key mapping, and has all the other SYSV-curses
+   The  ncurses  (new  curses)  library  is  a free software emulation of
+   curses  in  System  V  Release 4.0, and more. It uses terminfo format,
+   supports  pads  and color and multiple highlights and forms characters
+   and   function-key   mapping,   and  has  all  the  other  SYSV-curses
    enhancements over BSD curses.
 
    enhancements over BSD curses.
 
-   In mid-June 1995, the maintainer of 4.4BSD curses declared that he
-   considered 4.4BSD curses obsolete, and is encouraging the keepers of
-   Unix releases such as BSD/OS, freeBSD and netBSD to switch over to
+   In  mid-June  1995,  the  maintainer of 4.4BSD curses declared that he
+   considered  4.4BSD  curses obsolete, and is encouraging the keepers of
+   Unix  releases  such  as  BSD/OS, freeBSD and netBSD to switch over to
    ncurses.
 
    ncurses.
 
-   The ncurses code was developed under GNU/Linux. It should port easily
-   to any ANSI/POSIX-conforming UNIX. It has even been ported to OS/2
-   Warp!
+   The ncurses code was developed under GNU/Linux. It has been in use for
+   some  time  with  OpenBSD as the system curses library, and on FreeBSD
+   and  NetBSD  as  an  external  package.  It  should port easily to any
+   ANSI/POSIX-conforming UNIX. It has even been ported to OS/2 Warp!
 
    The distribution includes the library and support utilities, including
 
    The distribution includes the library and support utilities, including
-   a terminfo compiler tic(1), a decompiler infocmp(1), clear(1),
-   tput(1), tset(1), and a termcap conversion tool captoinfo(1). Full
+   a   terminfo  compiler  tic(1),  a  decompiler  infocmp(1),  clear(1),
+   tput(1),  tset(1),  and  a  termcap conversion tool captoinfo(1). Full
    manual pages are provided for the library and tools.
 
    manual pages are provided for the library and tools.
 
-   The ncurses distribution is available via anonymous FTP at the GNU
+   The  ncurses  distribution  is  available via anonymous FTP at the GNU
    distribution site [1]ftp://ftp.gnu.org/pub/gnu/ncurses.
    distribution site [1]ftp://ftp.gnu.org/pub/gnu/ncurses.
-   It is also available at [2]ftp://dickey.his.com/ncurses.
+   It is also available at [2]ftp://invisible-island.net/ncurses.
 
                                  Release Notes
 
 
                                  Release Notes
 
-   This release is designed to be upward compatible from ncurses 5.0 and
-   5.1; very few applications will require recompilation, depending on
-   the platform. These are the highlights from the change-log since
-   ncurses 5.1 release.
+   This  release is designed to be upward compatible from ncurses 5.0 and
+   5.2;  very  few  applications will require recompilation, depending on
+   the  platform.  These  are  the  highlights  from the change-log since
+   ncurses 5.2 release.
 
    Interface changes:
 
    Interface changes:
-     * change type of ospeed variable back to short to match its use in
-       legacy applications. It was altered after ncurses 4.2 to speed_t
-       to repair a type mismatch which was introduced after 1.9.4 in
-       1995. The principal users of termcap continued to use short, which
-       is not the same size.
-       NOTE: A few applications will have to be recompiled (about 1% of
-       the programs in a typical Linux distribution, 10% of the programs
-       that use ncurses). These are easy to identify with nm or strings.
-     * remove a private function _nc_can_clear_with(), which was built
-       with the configure --enable-expanded option but not used.
-     * add several private functions (prefixed with "_nc_") for tracing
-       chtype values in the debug library, and for better access and
-       buffer limit checking.
+     * change  type  for  bool  used  in  headers  to NCURSES_BOOL, which
+       usually is the same as the compiler's definition for bool.
+     * add  all  but  two  functions  for  X/Open  curses  wide-character
+       support.  These  are  only  available if the library is configured
+       using the --enable-widec option. Missing functions are
+          + pecho_wchar()
+          + slk_wset()
+     * add  environment  variable  $NCURSES_ASSUMED_COLORS  to modify the
+       assume_default_colors() extension.
 
    New features and improvements:
 
    New features and improvements:
-     * rewrote tgoto() to make it better support existing termcap
-       applications which use hardcoded strings rather than obtain all of
-       their information from the termcap file. If the string does not
-       appear to be a terminfo string (i.e., does not refer to a "%p"
-       parameter, or terminfo-style padding), and termcap support is
-       configured, tgoto() will interpret it as termcap. Otherwise, as
-       before, it will use tparm().
-     * to ensure that the tgoto() changes work properly, added checks to
-       tic which report capabilities that do not reference the expected
-       number of parameters.
-     * new configure script options:
-          + option --disable-root-environ adds runtime checks which tell
-            ncurses to disregard $TERMINFO and similar environment
-            variables if the current user is root, or running
-            setuid/setgid.
-          + option --disable-assumed-color allows you to use the pre-5.1
-            convention of default colors used for color-pair 0 to be
-            configured (see assume_default_colors()).
-          + implement configure script options that transform installed
-            program names, e.g., --program-prefix, including the manpage
-            names and cross references.
-          + option --with-database allows you to specify a different
-            terminfo source-file to install. On OS/2 EMX, the default is
-            misc/emx.src, otherwise misc/terminfo.src
-          + option --with-default-terminfo-dir allows you to specify the
-            default terminfo database directory.
-          + option --with-libtool allows you to build with libtool.
-            NOTE: libtool uses a different notation for numbering shared
-            library versions from the existing ncurses configuration.
-          + option --with-manpage-tbl causes the manpages to be
-            preprocessed by tbl(1) prior to installation,
-          + option --without-curses-h causes the installation process to
-            install curses.h as ncurses.h and make appropriate changes to
-            headers and manpages.
-     * modified configure script options:
-          + change symbol used by the --install-prefix configure option
-            from INSTALL_PREFIX to DESTDIR (the latter has become common
-            usage although the name is misleading).
-          + modify ld -rpath options (e.g., Linux, and Solaris) to use an
-            absolute pathname for the build tree's lib directory,
-            avoiding confusion with directories relative to the current
-            one with the installed programs.
-          + modified misc/run_tic.in to use tic -o, to eliminate
-            dependency on $TERMINFO variable for installs.
-     * terminfo database:
-          + updated xterm terminfo entries to match XFree86 xterm patch
-            #146.
-          + added amiga-vnc, Matrix Orbital, and QNX qansi to
-            misc/terminfo.src.
-          + added os2 entry to misc/emx.src.
-          + add S0 and E0 extensions to screen's terminfo entry since
-            otherwise the FreeBSD port makes it pass termcap equivalents
-            to tgoto, which would be misinterpreted by older versions of
-            ncurses.
-     * improvements to program usability:
-          + modify programs to use curses_version() string to report the
-            version of ncurses with which they are compiled rather than
-            the NCURSES_VERSION string. The function returns the patch
-            level in addition to the major and minor version numbers.
-          + modify tput program so it can be renamed or invoked via a
-            link as 'reset' or 'init', producing the same effect as
-            tput reset or tput init.
-          + add error checking to infocmp's -v and -m options to ensure
-            that the option value is indeed a number.
-     * improved performance:
-          + replace a lookup table in lib_vidattr.c used to decode
-            no_color_video with a logic expression which is faster.
+     * Improved support for termcap applications:
+          + add  logic to dump_entry.c to remove function-key definitions
+            that  do  not  fit  into  the  1023-byte  limit for generated
+            termcaps. This makes hds200 fit.
+          + modify  tgetent()  to check if exit_attribute_mode resets the
+            alternate  character  set,  and  if so, attempt to adjust the
+            copy  of  the  termcap  "me"  string  which it will return to
+            eliminate that part. In particular, 'screen' would lose track
+            of line-drawing characters.
+          + add  check/fix  to  comp_parse.c  to  suppress  warning about
+            missing acsc string. This happens in configurations where raw
+            termcap  information  is processed; tic already does this and
+            other checks.
+          + add   tic  -A  option  to  suppress  capabilities  which  are
+            commented out when translating to termcap.
+          + modify  logic  in  lib_baudrate.c  for ospeed, for FreeBSD to
+            make  it  work  properly  for  termcap applications (patch by
+            Andrey A Chernov).
+     * add a call to _nc_keypad() in keypad() to accommodate applications
+       such  as nvi, which use curses for output but not for input (fixes
+       Debian #131263, cf: 20011215).
+     * correct  logic  for  COLORFGBG  environment  variable:  if rxvt is
+       compiled  with  xpm support, the variable has three fields, making
+       it   slightly  incompatible  with  itself.  In  either  case,  the
+       background color is the last field.
 
    Major bug fixes:
 
    Major bug fixes:
-     * correct manlinks.sed script introduced in ncurses 5.1 to avoid
-       using ERE "\+", which is not understood by standard versions of
-       sed. This happens to work with GNU sed, but is not portable, and
-       was the initial motivation for this release.
-     * remove "hpux10.*" case from CF_SHARED_OPTS configure script macro.
-       This differed from the "hpux*" case by using reversed symbolic
-       links, which made the 5.1 version not match the configuration of
-       5.0 shared libraries.
-     * guard against corrupt terminfo data:
-          + modify tparm() to disallow arithmetic on strings, analyze the
-            varargs list to read strings as strings and numbers as
-            numbers.
-          + modify tparm()'s internal function spop() to treat a null
-            pointer as an empty string.
-          + modify parse_format() in lib_tparm.c to ignore precision if
-            it is longer than 10000.
-          + rewrote limit checks in lib_mvcur.c using new functions
-            _nc_safe_strcat(), etc. Made other related changes to check
-            lengths used for strcat() and strcpy().
-     * corrections to screen optimization:
-          + added special case in lib_vidattr.c to reset underline and
-            standout for devices that have no sgr0 defined.
-          + change handling of non_dest_scroll_region in tty_update.c to
-            clear text after it is shifted in rather than before shifting
-            out. Also correct row computation.
-          + modify rs2 capability in xterm-r6 and similar entries where
-            cursor save/restore bracketed the sequence for resetting
-            video attributes. The cursor restore would undo that.
-     * UTF-8 support:
-          + when checking LC_ALL, LC_CTYPE, and LANG environment
-            variables for UTF-8 locale, ignore those which are set to an
-            empty value, as per SUSV2.
-          + encode 0xFFFD in UTF-8 with 3 bytes, not 2.
-          + modify _nc_utf8_outch() to avoid sign-extension when checking
-            for out-of-range value.
-     * other library fixes:
-          + added checks for an empty $HOME environment variable, to
-            avoid retrieving terminfo descriptions from ./.terminfo .
-          + change functions _nc_parse_entry() and postprocess_termcap()
-            to avoid using strtok(), because it is non-reentrant.
-          + initialize fds[] array to 0's in _nc_timed_wait(); apparently
-            poll() only sets the revents members of that array when there
-            is activity corresponding to the related file.
-          + add a check for null pointer in Make_Enum_Type().
-          + fix a heap problem with the c++ binding.
-          + correct missing includes for <string.h> in several places,
-            including the C++ binding. This is not noted by gcc unless we
-            use the -fno-builtin option.
-     * several fixes for tic:
-          + add a check for empty buffers returned by fgets() in
-            comp_scan.c next_char() function, in case tic is run on a
-            non-text file (fixes a core dump).
-          + modify tic to verify that its inputs are really files, in
-            case someone tries to read a directory (or /dev/zero).
-          + correct an uninitialized parameter to open_tempfile() in
-            tic.c which made "tic -I" give an ambiguous error message
-            about tmpnam.
-          + correct logic in adjust_cancels(), which did not check both
-            alternatives when reclassifying an extended name between
-            boolean, number and string, causing an infinite loop in tic.
-     * using new checks in tic for parameter counts in capability
-       strings, found/fixed several errors both in the terminfo database
-       and in the include/Caps file.
-          + modified several terminfo capability strings, including the
-            definitions for setaf, setab, in include/Caps to indicate
-            that the entries are parameterized. This information is used
-            to tell which strings are translated when converting to
-            termcap. This fixes a problem where the generated termcap
-            would contain a spurious "%p1" for the terminfo "%p1%d".
-          + correct parameter counts in include/Caps for dclk as well as
-            some printer-specific capabilities: csnm, defc, scs, scsd,
-            smgtp, smglp.
-     * various fixes for install scripts used to support configure
-       --srcdir and --with-install-prefix.
-     * correct several mismatches between manpage filename and ".TH"
-       directives, renaming dft_fgbg.3x to default_colors.3x and
-       menu_attribs.3x to menu_attributes.3x.
+     * rewrote     limit-checks     in     wscrl()     and     associated
+       _nc_scroll_window(), to ensure that if the parameter of wscrl() is
+       larger  than  the size of the scrolling region, then the scrolling
+       region will be cleared.
+     * modify  tset  to  restore  original  I/O  modes  if  an  error  is
+       encountered.  Also  modify  to  use  buffered  stderr consistently
+       rather than mixing with write().
+     * move  calls  to  def_shell_mode()  and def_prog_mode() before loop
+       with  callbacks  in  lib_set_term.c,  since the c++ demo otherwise
+       initialized the tty modes before saving them.
+     * modified  wresize()  to  ensure  that  a  failed  realloc will not
+       corrupt  the  window  structure, and to make subwindows fit within
+       the resized window.
+     * altered  resizeterm()  to avoid having it fail when a child window
+       cannot be resized because it would be larger than its parent.
+     * correct/improve  logic  to  produce  an  exit status for errors in
+       tput,  which  did not exit with an error when told to put a string
+       not in the current terminfo entry.
+     * modify  behavior  of can_clear_with() so that if an application is
+       running  in  a  non-bce  terminals with default colors enabled, it
+       returns  true,  allowing  the  user  to  select/paste text without
+       picking up extraneous trailing blanks.
+     * add a check in relative_move() to guard against buffer overflow in
+       the overwrite logic.
+     * add some limit/pointer checks to -S option of tputs.
+     * modify  mvcur()  to  avoid emitting newline characters when nonl()
+       mode  is  set.  Normally  this  is  not a problem since the actual
+       terminal  mode is set to suppress nl/crlf translations, however it
+       is  useful  to allow the caller to manipulate the terminal mode to
+       avoid  staircasing  effects  after spawning a process which writes
+       messages (for lynx 2.8.4).
 
    Portability:
      * configure script:
 
    Portability:
      * configure script:
-          + newer config.guess, config.sub, including changes to support
-            OS/2 EMX. The configure script for OS/2 EMX still relies on a
-            patch since there is no (working) support for that platform
-            in the main autoconf distribution.
-          + make configure script checks on variables $GCC and $GXX
-            consistently compare against 'yes' rather than test if they
-            are nonnull, since either may be set to the corresponding
-            name of the C or C++ compiler.
-          + change configure script to use AC_CANONICAL_SYSTEM rather
-            than AC_CANONICAL_HOST, which means that configure --target
-            will set a default program-prefix.
-          + modify the check for big-core to force a couple of memory
-            accesses, which may work as needed for older/less-capable
-            machines (if not, there's still the explicit configure
-            option).
-          + modify configure test for tcgetattr() to allow for old
-            implementations, e.g., on BeOS, which only defined it as a
-            macro.
-          + add configure check for filesystems (such as OS/2 EMX) which
-            do not distinguish between upper/lowercase filenames, use
-            this to fix tags rules in makefiles.
-          + add MKncurses_def.sh to generate fallback definitions for
-            ncurses_cfg.h, to quiet gcc -Wundef warnings, modified
-            ifdef's in code to consistently use "#if" rather than
-            "#ifdef".
-          + change most remaining unquoted parameters of test in
-            configure script to use quotes, for instance fixing a problem
-            in the --disable-database option.
-          + modify scripts so that "make install.data" works on OS/2 EMX.
-          + modify scripts and makefiles so the Ada95 directory builds on
-            OS/2 EMX.
+          + modify check in --disable-overwrite option so that it is used
+            by  default unless the --prefix/$prefix value is not /usr, in
+            attempt  to work around packagers who do not read the INSTALL
+            notes.
+          + correct  a  typo  in configure --enable-colorfgbg option, and
+            move it to the experimental section (cf: 20011208).
+          + modify  configure script to allow building with termcap only,
+            or with fallbacks only. In this case, we do not build tic and
+            toe.
+          + modify  run_tic.sh  to check if the build is a cross-compile.
+            In  that  case,  do  not  use  the build's tic to install the
+            terminfo database.
+          + modify  c++/Makefile.in  to accommodate archive programs that
+            are  different for C++ than for C, and add cases for vendor's
+            C++ compilers on Solaris and IRIX.
+          + add   several   configure   script   options   to   aid  with
+            cross-compiling:     --with-build-cc,    --with-build-cflags,
+            --with-build-ldflags, and --with-build-libs.
+          + add  experimental  --with-caps=XXX  option  to  customize  to
+            similar terminfo database formats such as AIX 4.x
+          + add  configure  option  --with-ospeed  to assist packagers in
+            transition to 5.3 change to ospeed type.
      * library:
      * library:
-          + replaced case-statement in _nc_tracebits() for CSIZE with a
-            table to simplify working around implementations that define
-            random combinations of the related macros to zero.
-          + improved OS/2 mouse support by retrying as a 2-button mouse
-            if code fails to set up a 3-button mouse.
-          + added private entrypoint _nc_basename(), used to consolidate
-            related code in progs, as well as accommodating OS/2 EMX
-            pathnames.
-          + alter definition of NCURSES_CONST to make it non-empty.
-          + redefine 'TEXT' in menu.h for AMIGA, since it is reported to
-            have an (unspecified) symbol conflict.
+          + implement a simple vsscanf() fallback function which uses the
+            %n conversion to help parse the input data.
+          + various fixes to build/work with different implementations of
+            vsscanf().
+          + add/use  macro  to  suppress  sign-extension  of char type on
+            platforms  where  this  is  a  problem in ctype macros, e.g.,
+            Solaris.
+          + finish changes needed to build dll's on cygwin.
+          + add  #undef's  before  possible redefinition of ERR and OK in
+            curses.h
      * programs:
      * programs:
-          + modified progs/tset.c and tack/sysdep.c to build with sgttyb
-            interface if neither termio or termios is available. Tested
-            this with FreeBSD 2.1.5 (which does have termios - but the
-            sgttyb does work).
+          + modify  ifdef's  in  write_entry.c  to  allow use of symbolic
+            links on platforms with no hard links, e.g., BeOS.
+          + modify  _nc_write_entry()  to  allow for the possibility that
+            linking  aliases  on a filesystem that ignores case would not
+            succeed  because  the  source  and destination differ only by
+            case, e.g., NCR260VT300WPP0 on cygwin.
+          + modify  logic  in  tic,  toe,  tput and tset which checks for
+            basename  of argv[0] to work properly on systems such as OS/2
+            which   have   case-independent   filenames   and/or  program
+            suffixes, e.g., ".ext".
 
                               Features of Ncurses
 
    The ncurses package is fully compatible with SVr4 (System V Release 4)
    curses:
 
                               Features of Ncurses
 
    The ncurses package is fully compatible with SVr4 (System V Release 4)
    curses:
-     * All 257 of the SVr4 calls have been implemented (and are
+     * All  257  of  the  SVr4  calls  have  been  implemented  (and  are
        documented).
        documented).
-     * Full support for SVr4 curses features including keyboard mapping,
-       color, forms-drawing with ACS characters, and automatic
+     * Full  support for SVr4 curses features including keyboard mapping,
+       color,   forms-drawing   with   ACS   characters,   and  automatic
        recognition of keypad and function keys.
        recognition of keypad and function keys.
-     * An emulation of the SVr4 panels library, supporting a stack of
+     * An  emulation  of  the  SVr4 panels library, supporting a stack of
        windows with backing store, is included.
        windows with backing store, is included.
-     * An emulation of the SVr4 menus library, supporting a uniform but
+     * An  emulation  of the SVr4 menus library, supporting a uniform but
        flexible interface for menu programming, is included.
        flexible interface for menu programming, is included.
-     * An emulation of the SVr4 form library, supporting data collection
+     * An  emulation of the SVr4 form library, supporting data collection
        through on-screen forms, is included.
        through on-screen forms, is included.
-     * Binary terminfo entries generated by the ncurses tic(1)
-       implementation are bit-for-bit-compatible with the entry format
+     * Binary   terminfo   entries   generated   by  the  ncurses  tic(1)
+       implementation  are  bit-for-bit-compatible  with the entry format
        SVr4 curses uses.
      * The utilities have options to allow you to filter terminfo entries
        SVr4 curses uses.
      * The utilities have options to allow you to filter terminfo entries
-       for use with less capable curses/terminfo versions such as the
+       for  use  with  less  capable curses/terminfo versions such as the
        HP/UX and AIX ports.
 
    The ncurses package also has many useful extensions over SVr4:
        HP/UX and AIX ports.
 
    The ncurses package also has many useful extensions over SVr4:
-     * The API is 8-bit clean and base-level conformant with the X/OPEN
-       curses specification, XSI curses (that is, it implements all BASE
-       level features, but not all EXTENDED features). Most
+     * The  API  is 8-bit clean and base-level conformant with the X/OPEN
+       curses  specification, XSI curses (that is, it implements all BASE
+       level   features,   but   not   all   EXTENDED   features).   Most
        EXTENDED-level features not directly concerned with wide-character
        EXTENDED-level features not directly concerned with wide-character
-       support are implemented, including many function calls not
-       supported under SVr4 curses (but portability of all calls is
+       support   are  implemented,  including  many  function  calls  not
+       supported  under  SVr4  curses  (but  portability  of all calls is
        documented so you can use the SVr4 subset only).
        documented so you can use the SVr4 subset only).
-     * Unlike SVr3 curses, ncurses can write to the rightmost-bottommost
-       corner of the screen if your terminal has an insert-character
+     * Unlike  SVr3 curses, ncurses can write to the rightmost-bottommost
+       corner  of  the  screen  if  your terminal has an insert-character
        capability.
      * Ada95 and C++ bindings.
        capability.
      * Ada95 and C++ bindings.
-     * Support for mouse event reporting with X Window xterm and OS/2
+     * Support  for  mouse  event  reporting with X Window xterm and OS/2
        console windows.
      * Extended mouse support via Alessandro Rubini's gpm package.
        console windows.
      * Extended mouse support via Alessandro Rubini's gpm package.
-     * The function wresize() allows you to resize windows, preserving
+     * The  function  wresize()  allows you to resize windows, preserving
        their data.
      * The function use_default_colors() allows you to use the terminal's
        default colors for the default color pair, achieving the effect of
        transparent colors.
      * The functions keyok() and define_key() allow you to better control
        their data.
      * The function use_default_colors() allows you to use the terminal's
        default colors for the default color pair, achieving the effect of
        transparent colors.
      * The functions keyok() and define_key() allow you to better control
-       the use of function keys, e.g., disabling the ncurses KEY_MOUSE,
-       or by defining more than one control sequence to map to a given
+       the  use  of function keys, e.g., disabling the ncurses KEY_MOUSE,
+       or  by  defining  more than one control sequence to map to a given
        key code.
      * Support for 16-color terminals, such as aixterm and XFree86 xterm.
        key code.
      * Support for 16-color terminals, such as aixterm and XFree86 xterm.
-     * Better cursor-movement optimization. The package now features a
+     * Better  cursor-movement  optimization.  The package now features a
        cursor-local-movement computation more efficient than either BSD's
        or System V's.
        cursor-local-movement computation more efficient than either BSD's
        or System V's.
-     * Super hardware scrolling support. The screen-update code
-       incorporates a novel, simple, and cheap algorithm that enables it
-       to make optimal use of hardware scrolling, line-insertion, and
-       line-deletion for screen-line movements. This algorithm is more
+     * Super   hardware   scrolling   support.   The  screen-update  code
+       incorporates  a novel, simple, and cheap algorithm that enables it
+       to  make  optimal  use  of hardware scrolling, line-insertion, and
+       line-deletion  for  screen-line  movements. This algorithm is more
        powerful than the 4.4BSD curses quickch() routine.
        powerful than the 4.4BSD curses quickch() routine.
-     * Real support for terminals with the magic-cookie glitch. The
-       screen-update code will refrain from drawing a highlight if the
-       magic- cookie unattributed spaces required just before the
-       beginning and after the end would step on a non-space character.
-       It will automatically shift highlight boundaries when doing so
-       would make it possible to draw the highlight without changing the
+     * Real  support  for  terminals  with  the  magic-cookie glitch. The
+       screen-update  code  will  refrain from drawing a highlight if the
+       magic-   cookie  unattributed  spaces  required  just  before  the
+       beginning  and  after the end would step on a non-space character.
+       It  will  automatically  shift  highlight boundaries when doing so
+       would  make it possible to draw the highlight without changing the
        visual appearance of the screen.
        visual appearance of the screen.
-     * It is possible to generate the library with a list of pre-loaded
-       fallback entries linked to it so that it can serve those terminal
-       types even when no terminfo tree or termcap file is accessible
-       (this may be useful for support of screen-oriented programs that
+     * It  is  possible to generate the library with a list of pre-loaded
+       fallback  entries linked to it so that it can serve those terminal
+       types  even  when  no  terminfo tree or termcap file is accessible
+       (this  may  be useful for support of screen-oriented programs that
        must run in single-user mode).
      * The tic(1)/captoinfo utility provided with ncurses has the ability
        must run in single-user mode).
      * The tic(1)/captoinfo utility provided with ncurses has the ability
-       to translate many termcaps from the XENIX, IBM and AT&T extension
+       to  translate many termcaps from the XENIX, IBM and AT&T extension
        sets.
      * A BSD-like tset(1) utility is provided.
      * The ncurses library and utilities will automatically read terminfo
        sets.
      * A BSD-like tset(1) utility is provided.
      * The ncurses library and utilities will automatically read terminfo
-       entries from $HOME/.terminfo if it exists, and compile to that
-       directory if it exists and the user has no write access to the
-       system directory. This feature makes it easier for users to have
-       personal terminfo entries without giving up access to the system
+       entries  from  $HOME/.terminfo  if  it exists, and compile to that
+       directory  if  it  exists  and the user has no write access to the
+       system  directory.  This feature makes it easier for users to have
+       personal  terminfo  entries without giving up access to the system
        terminfo directory.
        terminfo directory.
-     * You may specify a path of directories to search for compiled
-       descriptions with the environment variable TERMINFO_DIRS (this
-       generalizes the feature provided by TERMINFO under stock System
+     * You  may  specify  a  path  of  directories to search for compiled
+       descriptions  with  the  environment  variable TERMINFO_DIRS (this
+       generalizes  the  feature  provided by TERMINFO under stock System
        V.)
        V.)
-     * In terminfo source files, use capabilities may refer not just to
+     * In  terminfo  source files, use capabilities may refer not just to
        other entries in the same source file (as in System V) but also to
        other entries in the same source file (as in System V) but also to
-       compiled entries in either the system terminfo directory or the
+       compiled  entries  in  either the system terminfo directory or the
        user's $HOME/.terminfo directory.
        user's $HOME/.terminfo directory.
-     * A script (capconvert) is provided to help BSD users transition
-       from termcap to terminfo. It gathers the information in a TERMCAP
-       environment variable and/or a ~/.termcap local entries file and
-       converts it to an equivalent local terminfo tree under
+     * A  script  (capconvert)  is  provided to help BSD users transition
+       from  termcap to terminfo. It gathers the information in a TERMCAP
+       environment  variable  and/or  a ~/.termcap local entries file and
+       converts   it   to   an   equivalent  local  terminfo  tree  under
        $HOME/.terminfo.
        $HOME/.terminfo.
-     * Automatic fallback to the /etc/termcap file can be compiled in
-       when it is not possible to build a terminfo tree. This feature is
-       neither fast nor cheap, you don't want to use it unless you have
+     * Automatic  fallback  to  the  /etc/termcap file can be compiled in
+       when  it is not possible to build a terminfo tree. This feature is
+       neither  fast  nor cheap, you don't want to use it unless you have
        to, but it's there.
        to, but it's there.
-     * The table-of-entries utility toe makes it easy for users to see
+     * The  table-of-entries  utility  toe makes it easy for users to see
        exactly what terminal types are available on the system.
      * The library meets the XSI requirement that every macro entry point
        exactly what terminal types are available on the system.
      * The library meets the XSI requirement that every macro entry point
-       have a corresponding function which may be linked (and will be
-       prototype-checked) if the macro definition is disabled with
+       have  a  corresponding  function  which may be linked (and will be
+       prototype-checked)  if  the  macro  definition  is  disabled  with
        #undef.
        #undef.
-     * An HTML "Introduction to Programming with NCURSES" document
-       provides a narrative introduction to the curses programming
+     * An  HTML  "Introduction  to  Programming  with  NCURSES"  document
+       provides  a  narrative  introduction  to  the  curses  programming
        interface.
 
                              State of the Package
 
    Numerous bugs present in earlier versions have been fixed; the library
        interface.
 
                              State of the Package
 
    Numerous bugs present in earlier versions have been fixed; the library
-   is far more reliable than it used to be. Bounds checking in many
-   `dangerous' entry points has been improved. The code is now type-safe
-   according to gcc -Wall. The library has been checked for malloc leaks
+   is  far  more  reliable  than  it  used to be. Bounds checking in many
+   `dangerous'  entry points has been improved. The code is now type-safe
+   according  to gcc -Wall. The library has been checked for malloc leaks
    and arena corruption by the Purify memory-allocation tester.
 
    and arena corruption by the Purify memory-allocation tester.
 
-   The ncurses code has been tested with a wide variety of applications
+   The  ncurses  code has been tested with a wide variety of applications
    including (versions starting with those noted):
 
    cdk
           Curses Development Kit
    including (versions starting with those noted):
 
    cdk
           Curses Development Kit
-          [3]http://www.vexus.ca/CDK.html
-          [4]http://dickey.his.com/cdk.
+          [3]http://invisible-island.net/cdk.
+          [4]http://www.vexus.ca/CDK.html
 
    ded
           directory-editor
 
    ded
           directory-editor
-          [5]http://dickey.his.com/ded.
+          [5]http://invisible-island.net/ded.
 
    dialog
 
    dialog
-          the underlying application used in Slackware's setup, and the
+          the  underlying  application used in Slackware's setup, and the
           basis for similar applications on GNU/Linux.
           basis for similar applications on GNU/Linux.
-          [6]http://dickey.his.com/dialog.
+          [6]http://invisible-island.net/dialog.
 
    lynx
           the character-screen WWW browser
           [7]http://lynx.isc.org/release.
 
 
    lynx
           the character-screen WWW browser
           [7]http://lynx.isc.org/release.
 
-   Midnight Commander 4.1
+   Midnight Commander
           file manager
           [8]www.gnome.org/mc/.
 
           file manager
           [8]www.gnome.org/mc/.
 
 
    vile
           vi-like-emacs
 
    vile
           vi-like-emacs
-          [16]http://dickey.his.com/vile.
+          [16]http://invisible-island.net/vile.
 
 
-   The ncurses distribution includes a selection of test programs
+   The  ncurses  distribution  includes  a  selection  of  test  programs
    (including a few games).
 
 Who's Who and What's What
 
    The original developers of ncurses are [17]Zeyd Ben-Halim and [18]Eric
    (including a few games).
 
 Who's Who and What's What
 
    The original developers of ncurses are [17]Zeyd Ben-Halim and [18]Eric
-   S. Raymond. Ongoing work is being done by [19]Thomas Dickey and
-   [20]Jürgen Pfeifer. [21]Thomas Dickey acts as the maintainer for the
-   Free Software Foundation, which holds the copyright on ncurses.
+   S.  Raymond.  Ongoing  work  is  being  done  by [19]Thomas Dickey and
+   [20]Jürgen  Pfeifer.  [21]Thomas Dickey acts as the maintainer for the
+   Free  Software  Foundation,  which  holds  the  copyright  on ncurses.
    Contact the current maintainers at [22]bug-ncurses@gnu.org.
 
    Contact the current maintainers at [22]bug-ncurses@gnu.org.
 
-   To join the ncurses mailing list, please write email to
+   To   join   the   ncurses   mailing   list,   please  write  email  to
    bug-ncurses-request@gnu.org containing the line:
              subscribe <name>@<host.domain>
 
    This list is open to anyone interested in helping with the development
    and testing of this package.
 
    bug-ncurses-request@gnu.org containing the line:
              subscribe <name>@<host.domain>
 
    This list is open to anyone interested in helping with the development
    and testing of this package.
 
-   Beta versions of ncurses and patches to the current release are made
-   available at [23]ftp://dickey.his.com/ncurses.
+   Beta  versions  of ncurses and patches to the current release are made
+   available at [23]ftp://invisible-island.net/ncurses.
 
 Future Plans
 
 
 Future Plans
 
-     * Extended-level XPG4 conformance, with internationalization
+     * Extended-level   XPG4   conformance,   with   internationalization
        support.
      * Ports to more systems, including DOS and Windows.
 
        support.
      * Ports to more systems, including DOS and Windows.
 
-   We need people to help with these projects. If you are interested in
+   We  need  people to help with these projects. If you are interested in
    working on them, please join the ncurses list.
 
 Other Related Resources
 
    working on them, please join the ncurses list.
 
 Other Related Resources
 
-   The distribution includes and uses a version of the terminfo-format
-   terminal description file maintained by Eric Raymond.
+   The  distribution  includes  and uses a version of the terminfo-format
+   terminal    description    file    maintained    by    Eric   Raymond.
    [24]http://earthspace.net/~esr/terminfo.
 
    [24]http://earthspace.net/~esr/terminfo.
 
-   You can find lots of information on terminal-related topics not
+   You  can  find  lots  of  information  on  terminal-related topics not
    covered in the terminfo file at [25]Richard Shuford's archive.
 
 References
 
    1. ftp://ftp.gnu.org/pub/gnu/ncurses
    covered in the terminfo file at [25]Richard Shuford's archive.
 
 References
 
    1. ftp://ftp.gnu.org/pub/gnu/ncurses
-   2. ftp://dickey.his.com/ncurses
-   3. http://www.vexus.ca/CDK.html
-   4. http://dickey.his.com/cdk/cdk.html
-   5. http://dickey.his.com/ded/ded.html
-   6. http://dickey.his.com/dialog/dialog.html
+   2. ftp://invisible-island.net/ncurses
+   3. http://invisible-island.net/cdk/cdk.html
+   4. http://www.vexus.ca/CDK.html
+   5. http://invisible-island.net/ded/ded.html
+   6. http://invisible-island.net/dialog/dialog.html
    7. http://lynx.isc.org/release/
    7. http://lynx.isc.org/release/
-   8. file://localhost/usr/build/ncurses/ncurses-5.2-20001021/doc/html/www.gnome.org/mc/
+   8. file://localhost/usr/build/ncurses/ncurses-5.2-20021012/doc/html/www.gnome.org/mc/
    9. http://www.mutt.org/
   10. http://www.ncftp.com/
   11. http://www.bostic.com/vi/
    9. http://www.mutt.org/
   10. http://www.ncftp.com/
   11. http://www.bostic.com/vi/
@@ -474,13 +379,13 @@ References
   13. http://members.iinet.net.au/~yusuf/taper/
   14. http://www.bg.debian.org/Packages/unstable/text/vh.html
   15. http://www.pp.clinet.fi/~walker/minicom.html
   13. http://members.iinet.net.au/~yusuf/taper/
   14. http://www.bg.debian.org/Packages/unstable/text/vh.html
   15. http://www.pp.clinet.fi/~walker/minicom.html
-  16. http://dickey.his.com/vile/vile.html
+  16. http://invisible-island.net/vile/vile.html
   17. mailto:zmbenhal@netcom.com
   18. http://www.ccil.org/~esr/home.html
   19. mailto:dickey@herndon4.his.com
   17. mailto:zmbenhal@netcom.com
   18. http://www.ccil.org/~esr/home.html
   19. mailto:dickey@herndon4.his.com
-  20. mailto:juergen.pfeifer@gmx.net
+  20. http://www.familiepfeifer.de/Contact.aspx?Lang=en
   21. mailto:dickey@herndon4.his.com
   22. mailto:bug-ncurses@gnu.org
   21. mailto:dickey@herndon4.his.com
   22. mailto:bug-ncurses@gnu.org
-  23. ftp://dickey.his.com/ncurses
+  23. ftp://invisible-island.net/ncurses
   24. http://earthspace.net/~esr/terminfo
   25. http://www.cs.utk.edu/~shuford/terminal_index.html
   24. http://earthspace.net/~esr/terminfo
   25. http://www.cs.utk.edu/~shuford/terminal_index.html
index 9f38ec4cb64e2c3619819d691505b750a50aaa43..9f6db419a51f6273216375a68d0b26c68f693844 100644 (file)
 # authorization.                                                             #
 ##############################################################################
 #
 # authorization.                                                             #
 ##############################################################################
 #
-#  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+#  Author:  Juergen Pfeifer, 1996
+#  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 #
 #  Version Control
 #
 #  Version Control
-#  $Revision: 1.13 $
+#  $Revision: 1.14 $
 #
 SHELL          = /bin/sh
 THIS           = Makefile
 #
 SHELL          = /bin/sh
 THIS           = Makefile
index 8a530611917a9b19b3d31d451653c4c19e0d8f48..21e9b4cd86fb0fb5d09849e662025c95c9bf9eb7 100644 (file)
@@ -26,7 +26,8 @@
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
 
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
 
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 
 The documentation is provided in HTML format in the ./html 
 subdirectory. The main document is named index.html
 
 The documentation is provided in HTML format in the ./html 
 subdirectory. The main document is named index.html
index b1651379df2828b9a686b7a042a507549a6ee9d8..bccea45f57413775fd7cf3bf6cf570d38557c9cd 100644 (file)
 # authorization.                                                             #
 ##############################################################################
 #
 # authorization.                                                             #
 ##############################################################################
 #
-#  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+#  Author:  Juergen Pfeifer, 1996
+#  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 #
 #  Version Control
 #
 #  Version Control
-#  $Revision: 1.34 $
+#  $Revision: 1.41 $
 #
 .SUFFIXES:
 
 #
 .SUFFIXES:
 
@@ -81,8 +82,8 @@ DEL_ADAMODE   = sed -e '/^\-\-\ \ \-\*\-\ ada\ \-\*\-.*/d'
 
 GNATHTML       = `type -p gnathtml || type -p gnathtml.pl`
 GNATHP          = www.gnat.com
 
 GNATHTML       = `type -p gnathtml || type -p gnathtml.pl`
 GNATHP          = www.gnat.com
-MAIL            = juergen.pfeifer@gmx.net
-HOMEP           = home.t-online.de/home/Juergen.Pfeifer
+MAIL            = www.familiepfeifer.de/Contact.aspx?Lang=en
+HOMEP           = www.familiepfeifer.de/juergen
 
 ################################################################################
 ALIB            = @cf_ada_package@
 
 ################################################################################
 ALIB            = @cf_ada_package@
@@ -101,7 +102,8 @@ GEN_FILES1      = Key_Definitions                           \
                  Linker_Options                        \
                  Base_Defs                             \
                  Window_Offsets                        \
                  Linker_Options                        \
                  Base_Defs                             \
                  Window_Offsets                        \
-                 Version_Info
+                 Version_Info                          \
+                 Trace_Defs
 
 GEN_FILES2      = Menu_Opt_Rep                         \
                  Menu_Base_Defs                        \
 
 GEN_FILES2      = Menu_Opt_Rep                         \
                  Menu_Base_Defs                        \
@@ -123,6 +125,7 @@ GEN_FILES5  = Chtype_Def                            \
 
 GEN_TARGETS     = $(ADA_SRCDIR)/$(ABASE).ads                           \
                  $(ADA_SRCDIR)/$(ABASE)-aux.ads                        \
 
 GEN_TARGETS     = $(ADA_SRCDIR)/$(ABASE).ads                           \
                  $(ADA_SRCDIR)/$(ABASE)-aux.ads                        \
+                 $(ADA_SRCDIR)/$(ABASE)-trace.ads                      \
                  $(ADA_SRCDIR)/$(ABASE)-menus.ads                      \
                  $(ADA_SRCDIR)/$(ABASE)-forms.ads                      \
                  $(ADA_SRCDIR)/$(ABASE)-mouse.ads                      \
                  $(ADA_SRCDIR)/$(ABASE)-menus.ads                      \
                  $(ADA_SRCDIR)/$(ABASE)-forms.ads                      \
                  $(ADA_SRCDIR)/$(ABASE)-mouse.ads                      \
@@ -136,6 +139,7 @@ GEN_TARGETS     = $(ADA_SRCDIR)/$(ABASE).ads                                \
 
 GEN_SRC                = $(srcdir)/$(ABASE).ads.m4                             \
                  $(srcdir)/$(ABASE)-aux.ads.m4                         \
 
 GEN_SRC                = $(srcdir)/$(ABASE).ads.m4                             \
                  $(srcdir)/$(ABASE)-aux.ads.m4                         \
+                 $(srcdir)/$(ABASE)-trace.ads.m4                       \
                  $(srcdir)/$(ABASE)-menus.ads.m4                       \
                  $(srcdir)/$(ABASE)-forms.ads.m4                       \
                  $(srcdir)/$(ABASE)-mouse.ads.m4                       \
                  $(srcdir)/$(ABASE)-menus.ads.m4                       \
                  $(srcdir)/$(ABASE)-forms.ads.m4                       \
                  $(srcdir)/$(ABASE)-mouse.ads.m4                       \
@@ -217,6 +221,9 @@ Version_Info: gen$x
 Window_Offsets: gen$x
        $(GENERATE) B D >$@
 
 Window_Offsets: gen$x
        $(GENERATE) B D >$@
 
+Trace_Defs: gen$x
+       $(GENERATE) B T >$@
+
 Menu_Opt_Rep: gen$x
        $(GENERATE) M R >$@
 
 Menu_Opt_Rep: gen$x
        $(GENERATE) M R >$@
 
@@ -271,6 +278,12 @@ $(ADA_SRCDIR)/$(ABASE)-aux.ads: $(srcdir)/$(ABASE)-aux.ads.m4 \
        $(srcdir)/$(ABASE)-aux.ads.m4 |\
        $(DEL_ADAMODE) >$@
 
        $(srcdir)/$(ABASE)-aux.ads.m4 |\
        $(DEL_ADAMODE) >$@
 
+$(ADA_SRCDIR)/$(ABASE)-trace.ads: $(srcdir)/$(ABASE)-trace.ads.m4 \
+                               $(GEN_FILES5) $(srcdir)/normal.m4
+       $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
+       $(srcdir)/$(ABASE)-trace.ads.m4 |\
+       $(DEL_ADAMODE) >$@
+
 $(ADA_SRCDIR)/$(ABASE)-menus.ads: $(srcdir)/$(ABASE)-menus.ads.m4 \
                                  $(GEN_FILES2) $(srcdir)/normal.m4
        $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
 $(ADA_SRCDIR)/$(ABASE)-menus.ads: $(srcdir)/$(ABASE)-menus.ads.m4 \
                                  $(GEN_FILES2) $(srcdir)/normal.m4
        $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
@@ -406,9 +419,9 @@ adahtml:
           sed -e 's%&lt;A HREF%<A HREF%g' |\
           sed -e 's%"&gt;%">%g' |\
           sed -e 's/3X/3x/g' |\
           sed -e 's%&lt;A HREF%<A HREF%g' |\
           sed -e 's%"&gt;%">%g' |\
           sed -e 's/3X/3x/g' |\
-          sed -e 's/$$\([A-Za-z0-9_]*:.*\)\$$/@\1@/' |\
+          sed -e 's/$$\([ABCDEFGHIJKLMNOPQRSTUVWXZabcdefghijklmnopqrstuvwxz0123456789_]*:.*\)\$$/@\1@/' |\
           sed -e 's%Juergen Pfeifer%<A HREF="http://$(HOMEP)">J\&uuml;rgen Pfeifer</A>%g' |\
           sed -e 's%Juergen Pfeifer%<A HREF="http://$(HOMEP)">J\&uuml;rgen Pfeifer</A>%g' |\
-          sed -e 's%$(MAIL)%<A HREF="mailto:$(MAIL)">\&lt;$(MAIL)\&gt;</A>%g' |\
+          sed -e 's%http://$(MAIL)%<A HREF="http://$(MAIL)">$(MAIL)</A>%g' |\
           sed -e 's%&lt;/A&gt;%</A>%g' > $$a.tmp ;\
            mv $$a.tmp $$f ;\
         done
           sed -e 's%&lt;/A&gt;%</A>%g' > $$a.tmp ;\
            mv $$a.tmp $$f ;\
         done
index 64e9f912e443c6fc4a8ed45ad31d10eb94e18cb8..11ba3d73706a4417fcf966bf57183896043bfc3a 100644 (file)
  ****************************************************************************/
 
 /****************************************************************************
  ****************************************************************************/
 
 /****************************************************************************
- *   Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996                 *
+ *   Author:  Juergen Pfeifer, 1996                                         *
+ *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /*
     Version Control
  ****************************************************************************/
 
 /*
     Version Control
-    $Revision: 1.32 $
+    $Revision: 1.35 $
   --------------------------------------------------------------------------*/
 /*
   This program generates various record structures and constants from the
   --------------------------------------------------------------------------*/
 /*
   This program generates various record structures and constants from the
@@ -285,6 +286,26 @@ static void gen_attr_set( const char *name )
   gen_reps (nap, name, (len+7)/8, little_endian?start:0);
 }
 
   gen_reps (nap, name, (len+7)/8, little_endian?start:0);
 }
 
+static void gen_trace(const char *name)
+{  
+  static const name_attribute_pair nap[] = {
+    {"Times",               TRACE_TIMES},
+    {"Tputs",               TRACE_TPUTS},
+    {"Update",              TRACE_UPDATE},
+    {"Cursor_Move",         TRACE_MOVE},
+    {"Character_Output",    TRACE_CHARPUT},
+    {"Calls",               TRACE_CALLS},
+    {"Virtual_Puts",        TRACE_VIRTPUT},
+    {"Input_Events",        TRACE_IEVENT},
+    {"TTY_State",           TRACE_BITS},
+    {"Internal_Calls",      TRACE_ICALLS},
+    {"Character_Calls",     TRACE_CCALLS},
+    {"Termcap_TermInfo",    TRACE_DATABASE},
+    {(char *)0,                0}
+  };
+  gen_reps(nap,name,sizeof(int),0);
+}
+
 static void gen_menu_opt_rep(const char *name)
 {
   static const name_attribute_pair nap[] = {
 static void gen_menu_opt_rep(const char *name)
 {
   static const name_attribute_pair nap[] = {
@@ -937,6 +958,9 @@ void gen_mouse_events(void)
 #ifdef BUTTON_ALT
   GEN_MEVENT(BUTTON_ALT);
 #endif
 #ifdef BUTTON_ALT
   GEN_MEVENT(BUTTON_ALT);
 #endif
+#ifdef REPORT_MOUSE_POSITION
+  GEN_MEVENT(REPORT_MOUSE_POSITION);
+#endif   
 #ifdef ALL_MOUSE_EVENTS
   GEN_MEVENT(ALL_MOUSE_EVENTS);
 #endif
 #ifdef ALL_MOUSE_EVENTS
   GEN_MEVENT(ALL_MOUSE_EVENTS);
 #endif
@@ -1012,14 +1036,19 @@ static void mouse_basedefs(void)
  */
 static void color_def (const char *name, int value)
 {
  */
 static void color_def (const char *name, int value)
 {
-  printf("   %-8s : constant Color_Number := %d;\n",name,value);
+  printf("   %-16s : constant Color_Number := %d;\n",name,value);
 }
 
 }
 
+#define HAVE_USE_DEFAULT_COLORS 1
+
 /*
  * Generate all color definitions
  */
 static void gen_color (void)
 {
 /*
  * Generate all color definitions
  */
 static void gen_color (void)
 {
+#ifdef HAVE_USE_DEFAULT_COLORS
+  color_def ("Default_Color",-1);
+#endif
 #ifdef COLOR_BLACK
   color_def ("Black",COLOR_BLACK);
 #endif
 #ifdef COLOR_BLACK
   color_def ("Black",COLOR_BLACK);
 #endif
@@ -1108,7 +1137,7 @@ eti_gen(char*buf, int code, const char* name, int* etimin, int* etimax)
     o = offsetof(WINDOW, member);                                   \
     if ((o%sizeof(itype) == 0)) {                                   \
        printf("   Offset%-*s : constant Natural := %2ld; --  %s\n", \
     o = offsetof(WINDOW, member);                                   \
     if ((o%sizeof(itype) == 0)) {                                   \
        printf("   Offset%-*s : constant Natural := %2ld; --  %s\n", \
-              8, #member, o/sizeof(itype),#itype);                  \
+              12, #member, o/sizeof(itype),#itype);                 \
     }                                                               \
   }
   
     }                                                               \
   }
   
@@ -1128,22 +1157,46 @@ gen_offsets(void)
   GEN_OFFSET(_pary,int);
   GEN_OFFSET(_parx,int);
   if (sizeof(bool) == sizeof(char)) {
   GEN_OFFSET(_pary,int);
   GEN_OFFSET(_parx,int);
   if (sizeof(bool) == sizeof(char)) {
+    GEN_OFFSET(_notimeout,char);
+    GEN_OFFSET(_clear,char);
+    GEN_OFFSET(_leaveok,char);
     GEN_OFFSET(_scroll,char);
     GEN_OFFSET(_scroll,char);
+    GEN_OFFSET(_idlok,char);
+    GEN_OFFSET(_idcok,char);
+    GEN_OFFSET(_immed,char);
+    GEN_OFFSET(_sync,char);
+    GEN_OFFSET(_use_keypad,char);
     s_bool = "char";
   } else if (sizeof(bool) == sizeof(short)) {
     s_bool = "char";
   } else if (sizeof(bool) == sizeof(short)) {
+    GEN_OFFSET(_notimeout,short);
+    GEN_OFFSET(_clear,short);
+    GEN_OFFSET(_leaveok,short);
     GEN_OFFSET(_scroll,short);
     GEN_OFFSET(_scroll,short);
+    GEN_OFFSET(_idlok,short);
+    GEN_OFFSET(_idcok,short);
+    GEN_OFFSET(_immed,short);
+    GEN_OFFSET(_sync,short);
+    GEN_OFFSET(_use_keypad,short);
     s_bool = "short";
   } else if (sizeof(bool) == sizeof(int)) {
     s_bool = "short";
   } else if (sizeof(bool) == sizeof(int)) {
+    GEN_OFFSET(_notimeout,int);
+    GEN_OFFSET(_clear,int);
+    GEN_OFFSET(_leaveok,int);
     GEN_OFFSET(_scroll,int);
     GEN_OFFSET(_scroll,int);
+    GEN_OFFSET(_idlok,int);
+    GEN_OFFSET(_idcok,int);
+    GEN_OFFSET(_immed,int);
+    GEN_OFFSET(_sync,int);
+    GEN_OFFSET(_use_keypad,int);
     s_bool = "int";
   }
   printf("   Sizeof%-*s : constant Natural := %2ld; --  %s\n",
     s_bool = "int";
   }
   printf("   Sizeof%-*s : constant Natural := %2ld; --  %s\n",
-        8, "_bool", (long) sizeof(bool),"bool");
+        12, "_bool", (long) sizeof(bool),"bool");
   /* In ncurses _maxy and _maxx needs an offset for the "public"
    * value
    */
   printf("   Offset%-*s : constant Natural := %2d; --  %s\n",
   /* In ncurses _maxy and _maxx needs an offset for the "public"
    * value
    */
   printf("   Offset%-*s : constant Natural := %2d; --  %s\n",
-        8, "_XY",1,"int");
+        12, "_XY",1,"int");
   printf("\n");
   printf("   type Curses_Bool is mod 2 ** Interfaces.C.%s'Size;\n",s_bool);
 }
   printf("\n");
   printf("   type Curses_Bool is mod 2 ** Interfaces.C.%s'Size;\n",s_bool);
 }
@@ -1212,6 +1265,9 @@ int main(int argc, char *argv[])
        case 'V': /* generate version info */
          gen_version_info();
          break;
        case 'V': /* generate version info */
          gen_version_info();
          break;
+       case 'T': /* generate the Trace info */
+         gen_trace("Trace_Attribute_Set");
+         break;
        default:
          break;
        }
        default:
          break;
        }
index 71e4872b47c41a8d327e0e32545f1ee0bab186f8..aacac4f59d4a3758a7ec2e4fea7074bd1d5b446e 100644 (file)
@@ -35,9 +35,10 @@ include(M4MACRO)----------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Base_Defs')
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Base_Defs')
index ff7882f7cf03ea39b545b73f8aa03f5b91dee17f..79726781e404789462062a6b4c0c7a0db772c81d 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.12 $
+--  $Revision: 1.13 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index aedd01bab3538bda020b87458a05dbf7bf8e5848..6f99e8544b024f147f67f81cc02d4f33f507bd61 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index cddc1d1e58d1f439650932b24dcd808985b30edb..b07618aebfddf6abf9b6f76b3e26a7ca70f6af07 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.12 $
+--  $Revision: 1.13 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index f969ce0422ac10add2c42bc88327ff4bbf3bc456..9123f9d97261ce41afcc7aa36aa6b74bb8b7e406 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.24 $
+--  $Revision: 1.26 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Form_Base_Defs')
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Form_Base_Defs')
@@ -685,6 +686,9 @@ include(`Form_Opt_Rep')Dnl
    --  AKA
    pragma Inline (Is_New_Page);
 
    --  AKA
    pragma Inline (Is_New_Page);
 
+   --  MANPAGE(`form_requestname.3x')
+   --  Not Implemented: form_request_name, form_request_by_name
+
 ------------------------------------------------------------------------------
 private
    type Field is new System.Storage_Elements.Integer_Address;
 ------------------------------------------------------------------------------
 private
    type Field is new System.Storage_Elements.Integer_Address;
index 8d601d80b929398bb06f380927797487e230094e..1c42bbebb9944fab8679c2363005e15340c3075e 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.12 $
+--  $Revision: 1.13 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index 2f26f08afda15baa2179af9ca934abf4f8e4c149..87ffadc7fcbd3e642b6cd21355485be6c6197124 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.12 $
+--  $Revision: 1.13 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index 2bc350a72d18ca3958ced723520e58d5d3c80719..ba620792b379417f381aaeafa00be1e96952b7ec 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.21 $
+--  $Revision: 1.23 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Menu_Base_Defs')
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Menu_Base_Defs')
@@ -473,6 +474,13 @@ include(`Item_Rep')dnl
    procedure Set_Format (Men     : in Menu;
                          Lines   : in Line_Count;
                          Columns : in Column_Count);
    procedure Set_Format (Men     : in Menu;
                          Lines   : in Line_Count;
                          Columns : in Column_Count);
+   --  Not implemented: 0 argument for Lines or Columns;
+   --  instead use Format to get the current sizes
+   --      The  default  format  is  16  rows,  1  column.    Calling
+   --      set_menu_format  with a null menu pointer will change this
+   --      default.  A zero row or column argument to set_menu_format
+   --      is  interpreted  as  a  request  not to change the current
+   --      value.
    --  AKA
    pragma Inline (Set_Format);
 
    --  AKA
    pragma Inline (Set_Format);
 
@@ -570,7 +578,7 @@ include(`Item_Rep')dnl
    --  Reset Men to Null_Menu
    --  Not inlined
 
    --  Reset Men to Null_Menu
    --  Not inlined
 
-   --  MANPAGE(`menu_new.3x')
+   --  MANPAGE(`menu_driver.3x')
 
    type Driver_Result is (Menu_Ok,
                           Request_Denied,
 
    type Driver_Result is (Menu_Ok,
                           Request_Denied,
@@ -583,6 +591,8 @@ include(`Item_Rep')dnl
    --  AKA
    --  Driver is not inlined
 
    --  AKA
    --  Driver is not inlined
 
+   --  ANCHOR(`menu_requestname.3x')
+   --  Not Implemented: menu_request_name, menu_request_by_name
 -------------------------------------------------------------------------------
 private
    type Item   is new System.Storage_Elements.Integer_Address;
 -------------------------------------------------------------------------------
 private
    type Item   is new System.Storage_Elements.Integer_Address;
index 0db4ffbbc77f7940a4b1e930908bb10bf9f7ded1..84eeacb2962c886e9eebf1357326bf4480ced7cd 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.19 $
+--  $Revision: 1.21 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Mouse_Base_Defs')
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Mouse_Base_Defs')
@@ -52,6 +53,12 @@ package Terminal_Interface.Curses.Mouse is
    --  is still marked as experimental. So also this binding will change
    --  if the ncurses methods change.
    --
    --  is still marked as experimental. So also this binding will change
    --  if the ncurses methods change.
    --
+   --  mouse_trafo, wmouse_trafo are implemented as Transform_Coordinates
+   --  in the parent package.
+   --
+   --  Not implemented:
+   --  REPORT_MOUSE_POSITION (i.e. as a parameter to Register_Reportable_Event
+   --  or Start_Mouse)
    type Event_Mask is private;
    No_Events  : constant Event_Mask;
    All_Events : constant Event_Mask;
    type Event_Mask is private;
    No_Events  : constant Event_Mask;
    All_Events : constant Event_Mask;
@@ -107,6 +114,8 @@ package Terminal_Interface.Curses.Mouse is
    --  ANCHOR(`mousemask()',`Start_Mouse')
    --  There is one difference to mousmask(): we return the value of the
    --  old mask, that means the event mask value before this call.
    --  ANCHOR(`mousemask()',`Start_Mouse')
    --  There is one difference to mousmask(): we return the value of the
    --  old mask, that means the event mask value before this call.
+   --  Not Implemented: The library version
+   --  returns a Mouse_Mask that tells which events are reported.
    function Start_Mouse (Mask : Event_Mask := All_Events)
                          return Event_Mask;
    --  AKA
    function Start_Mouse (Mask : Event_Mask := All_Events)
                          return Event_Mask;
    --  AKA
@@ -128,6 +137,8 @@ package Terminal_Interface.Curses.Mouse is
                         State  : out Button_State);
    --  !!! Warning: X and Y are screen coordinates. Due to ripped of lines they
    --  may not be identical to window coordinates.
                         State  : out Button_State);
    --  !!! Warning: X and Y are screen coordinates. Due to ripped of lines they
    --  may not be identical to window coordinates.
+   --  Not Implemented: Get_Event only reports one event, the C library
+   --  version supports multiple events, e.g. {click-1, click-3}
    pragma Inline (Get_Event);
 
    --  ANCHOR(`ungetmouse()',`Unget_Mouse')
    pragma Inline (Get_Event);
 
    --  ANCHOR(`ungetmouse()',`Unget_Mouse')
index 1369cfd72c0c4f44f03bfce15e504bdd2a68a043..4b9a85814da753c1285b72e5e3d933d2650b76ab 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.12 $
+--  $Revision: 1.13 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index 04e374fceb0a0c15c57110e7bbf6dfba98aa3473..7d571b9e97ae531f4a8dc5766f5608708350386c 100644 (file)
@@ -36,9 +36,10 @@ include(M4MACRO)dnl
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.15 $
+--  $Revision: 1.16 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with System;
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with System;
diff --git a/Ada95/gen/terminal_interface-curses-trace.ads.m4 b/Ada95/gen/terminal_interface-curses-trace.ads.m4
new file mode 100644 (file)
index 0000000..546004f
--- /dev/null
@@ -0,0 +1,78 @@
+--  -*- ada -*-
+define(`HTMLNAME',`terminal_interface-curses-trace__ads.htm')dnl
+include(M4MACRO)------------------------------------------------------------------------------
+--                                                                          --
+--                           GNAT ncurses Binding                           --
+--                                                                          --
+--                      Terminal_Interface.Curses.Trace                     --
+--                                                                          --
+--                                 S P E C                                  --
+--                                                                          --
+------------------------------------------------------------------------------
+-- Copyright (c) 2000 Free Software Foundation, Inc.                        --
+--                                                                          --
+-- Permission is hereby granted, free of charge, to any person obtaining a  --
+-- copy of this software and associated documentation files (the            --
+-- "Software"), to deal in the Software without restriction, including      --
+-- without limitation the rights to use, copy, modify, merge, publish,      --
+-- distribute, distribute with modifications, sublicense, and/or sell       --
+-- copies of the Software, and to permit persons to whom the Software is    --
+-- furnished to do so, subject to the following conditions:                 --
+--                                                                          --
+-- The above copyright notice and this permission notice shall be included  --
+-- in all copies or substantial portions of the Software.                   --
+--                                                                          --
+-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  --
+-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               --
+-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   --
+-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   --
+-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    --
+-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    --
+-- THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               --
+--                                                                          --
+-- Except as contained in this notice, the name(s) of the above copyright   --
+-- holders shall not be used in advertising or otherwise to promote the     --
+-- sale, use or other dealings in this Software without prior written       --
+-- authorization.                                                           --
+------------------------------------------------------------------------------
+--  Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
+--  Version Control:
+--  $Revision: 1.1 $
+--  Binding Version 01.00
+------------------------------------------------------------------------------
+
+package Terminal_Interface.Curses.Trace is
+   pragma Preelaborate (Terminal_Interface.Curses.Trace);
+
+   pragma Warnings (Off);
+include(`Trace_Defs')
+
+   pragma Warnings (On);
+
+   Trace_Disable  : constant Trace_Attribute_Set := (others => False);
+
+   Trace_Ordinary : constant Trace_Attribute_Set :=
+     (Times            => True,
+      Tputs            => True,
+      Update           => True,
+      Cursor_Move      => True,
+      Character_Output => True,
+      others           => False);
+   Trace_Maximum : constant Trace_Attribute_Set := (others => True);
+
+------------------------------------------------------------------------------
+
+   --  MANPAGE(`curs_trace.3x')
+
+   --  ANCHOR(`trace()',`Trace_on')
+   procedure Trace_On (x : Trace_Attribute_Set);
+   --  The debugging library has trace.
+
+   --  ANCHOR(`_tracef()',`Trace_Put')
+   procedure Trace_Put (str : String);
+   --  AKA
+
+   Current_Trace_Setting : Trace_Attribute_Set;
+   pragma Import (C, Current_Trace_Setting, "_nc_tracing");
+
+end Terminal_Interface.Curses.Trace;
index 11930d9709ee10508b6abf60d4d2cfa44712aa39..bd879cdde4329441a868a033c9ac8d9be82a37bb 100644 (file)
@@ -35,9 +35,10 @@ include(M4MACRO)----------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
---  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+--  Author:  Juergen Pfeifer, 1996
+--  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
 --  Version Control:
---  $Revision: 1.28 $
+--  $Revision: 1.30 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Base_Defs')
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Base_Defs')
@@ -95,7 +96,7 @@ include(`Old_Keys')dnl
 
 ------------------------------------------------------------------------------
 
 
 ------------------------------------------------------------------------------
 
-   type Color_Number is range 0 .. Integer (Interfaces.C.short'Last);
+   type Color_Number is range -1 .. Integer (Interfaces.C.short'Last);
    for Color_Number'Size use Interfaces.C.short'Size;
    --  (n)curses uses a short for the color index
    --  The model is, that a Color_Number is an index into an array of
    for Color_Number'Size use Interfaces.C.short'Size;
    --  (n)curses uses a short for the color index
    --  The model is, that a Color_Number is an index into an array of
@@ -198,7 +199,7 @@ include(`AC_Rep')
 include(`ACS_Map')dnl
 
    --  MANPAGE(`curs_initscr.3x')
 include(`ACS_Map')dnl
 
    --  MANPAGE(`curs_initscr.3x')
-   --  | Not implemented: newterm, set_term, delscreen
+   --  | Not implemented: newterm, set_term, delscreen, curscr
 
    --  ANCHOR(`stdscr',`Standard_Window')
    function Standard_Window return Window;
 
    --  ANCHOR(`stdscr',`Standard_Window')
    function Standard_Window return Window;
@@ -233,6 +234,7 @@ include(`ACS_Map')dnl
                           Line   : in Line_Position;
                           Column : in Column_Position);
    --  AKA
                           Line   : in Line_Position;
                           Column : in Column_Position);
    --  AKA
+   --  ALIAS(`move()')
    pragma Inline (Move_Cursor);
 
    --  MANPAGE(`curs_addch.3x')
    pragma Inline (Move_Cursor);
 
    --  MANPAGE(`curs_addch.3x')
@@ -241,6 +243,7 @@ include(`ACS_Map')dnl
    procedure Add (Win :  in Window := Standard_Window;
                   Ch  :  in Attributed_Character);
    --  AKA
    procedure Add (Win :  in Window := Standard_Window;
                   Ch  :  in Attributed_Character);
    --  AKA
+   --  ALIAS(`addch()')
 
    procedure Add (Win :  in Window := Standard_Window;
                   Ch  :  in Character);
 
    procedure Add (Win :  in Window := Standard_Window;
                   Ch  :  in Character);
@@ -254,6 +257,7 @@ include(`ACS_Map')dnl
       Column : in Column_Position;
       Ch     : in Attributed_Character);
    --  AKA
       Column : in Column_Position;
       Ch     : in Attributed_Character);
    --  AKA
+   --  ALIAS(`mvaddch()')
 
    procedure Add
      (Win    : in Window := Standard_Window;
 
    procedure Add
      (Win    : in Window := Standard_Window;
@@ -268,6 +272,7 @@ include(`ACS_Map')dnl
      (Win : in Window := Standard_Window;
       Ch  : in Attributed_Character);
    --  AKA
      (Win : in Window := Standard_Window;
       Ch  : in Attributed_Character);
    --  AKA
+   --  ALIAS(`echochar()')
 
    procedure Add_With_Immediate_Echo
      (Win : in Window := Standard_Window;
 
    procedure Add_With_Immediate_Echo
      (Win : in Window := Standard_Window;
@@ -276,6 +281,7 @@ include(`ACS_Map')dnl
    pragma Inline (Add_With_Immediate_Echo);
 
    --  MANPAGE(`curs_window.3x')
    pragma Inline (Add_With_Immediate_Echo);
 
    --  MANPAGE(`curs_window.3x')
+   --  Not Implemented: wcursyncup
 
    --  ANCHOR(`newwin()',`Create')
    function Create
 
    --  ANCHOR(`newwin()',`Create')
    function Create
@@ -283,6 +289,8 @@ include(`ACS_Map')dnl
       Number_Of_Columns     : Column_Count;
       First_Line_Position   : Line_Position;
       First_Column_Position : Column_Position) return Window;
       Number_Of_Columns     : Column_Count;
       First_Line_Position   : Line_Position;
       First_Column_Position : Column_Position) return Window;
+   --  Not Implemented: Default Number_Of_Lines, Number_Of_Columns
+   --  the C version lets them be 0, see the man page.
    --  AKA
    pragma Inline (Create);
 
    --  AKA
    pragma Inline (Create);
 
@@ -363,6 +371,8 @@ include(`ACS_Map')dnl
                   Len : in Integer := -1);
    --  AKA
    --  ALIAS(`waddstr()')
                   Len : in Integer := -1);
    --  AKA
    --  ALIAS(`waddstr()')
+   --  ALIAS(`addnstr()')
+   --  ALIAS(`addstr()')
 
    --  ANCHOR(`mvwaddnstr()',`Add')
    procedure Add (Win    : in Window := Standard_Window;
 
    --  ANCHOR(`mvwaddnstr()',`Add')
    procedure Add (Win    : in Window := Standard_Window;
@@ -372,6 +382,8 @@ include(`ACS_Map')dnl
                   Len    : in Integer := -1);
    --  AKA
    --  ALIAS(`mvwaddstr()')
                   Len    : in Integer := -1);
    --  AKA
    --  ALIAS(`mvwaddstr()')
+   --  ALIAS(`mvaddnstr()')
+   --  ALIAS(`mvaddstr()')
 
    --  MANPAGE(`curs_addchstr.3x')
 
 
    --  MANPAGE(`curs_addchstr.3x')
 
@@ -381,6 +393,8 @@ include(`ACS_Map')dnl
                   Len : in Integer := -1);
    --  AKA
    --  ALIAS(`waddchstr()')
                   Len : in Integer := -1);
    --  AKA
    --  ALIAS(`waddchstr()')
+   --  ALIAS(`addchnstr()')
+   --  ALIAS(`addchstr()')
 
    --  ANCHOR(`mvwaddchnstr()',`Add')
    procedure Add (Win    : in Window := Standard_Window;
 
    --  ANCHOR(`mvwaddchnstr()',`Add')
    procedure Add (Win    : in Window := Standard_Window;
@@ -390,9 +404,13 @@ include(`ACS_Map')dnl
                   Len    : in Integer := -1);
    --  AKA
    --  ALIAS(`mvwaddchstr()')
                   Len    : in Integer := -1);
    --  AKA
    --  ALIAS(`mvwaddchstr()')
+   --  ALIAS(`mvaddchnstr()')
+   --  ALIAS(`mvaddchstr()')
    pragma Inline (Add);
 
    --  MANPAGE(`curs_border.3x')
    pragma Inline (Add);
 
    --  MANPAGE(`curs_border.3x')
+   --  | Not implemented: mvhline,  mvwhline, mvvline, mvwvline
+   --  | use Move_Cursor then Horizontal_Line or Vertical_Line
 
    --  ANCHOR(`wborder()',`Border')
    procedure Border
 
    --  ANCHOR(`wborder()',`Border')
    procedure Border
@@ -407,6 +425,7 @@ include(`ACS_Map')dnl
       Lower_Right_Corner_Symbol : in Attributed_Character := Default_Character
      );
    --  AKA
       Lower_Right_Corner_Symbol : in Attributed_Character := Default_Character
      );
    --  AKA
+   --  ALIAS(`border()')
    pragma Inline (Border);
 
    --  ANCHOR(`box()',`Box')
    pragma Inline (Border);
 
    --  ANCHOR(`box()',`Box')
@@ -423,6 +442,7 @@ include(`ACS_Map')dnl
       Line_Size   : in Natural;
       Line_Symbol : in Attributed_Character := Default_Character);
    --  AKA
       Line_Size   : in Natural;
       Line_Symbol : in Attributed_Character := Default_Character);
    --  AKA
+   --  ALIAS(`hline()')
    pragma Inline (Horizontal_Line);
 
    --  ANCHOR(`wvline()',`Vertical_Line')
    pragma Inline (Horizontal_Line);
 
    --  ANCHOR(`wvline()',`Vertical_Line')
@@ -431,14 +451,17 @@ include(`ACS_Map')dnl
       Line_Size   : in Natural;
       Line_Symbol : in Attributed_Character := Default_Character);
    --  AKA
       Line_Size   : in Natural;
       Line_Symbol : in Attributed_Character := Default_Character);
    --  AKA
+   --  ALIAS(`vline()')
    pragma Inline (Vertical_Line);
 
    --  MANPAGE(`curs_getch.3x')
    pragma Inline (Vertical_Line);
 
    --  MANPAGE(`curs_getch.3x')
+   --  Not implemented: mvgetch, mvwgetch
 
    --  ANCHOR(`wgetch()',`Get_Keystroke')
    function Get_Keystroke (Win : Window := Standard_Window)
                            return Real_Key_Code;
    --  AKA
 
    --  ANCHOR(`wgetch()',`Get_Keystroke')
    function Get_Keystroke (Win : Window := Standard_Window)
                            return Real_Key_Code;
    --  AKA
+   --  ALIAS(`getch()')
    --  Get a character from the keyboard and echo it - if enabled - to the
    --  window.
    --  If for any reason (i.e. a timeout) we couldn't get a character the
    --  Get a character from the keyboard and echo it - if enabled - to the
    --  window.
    --  If for any reason (i.e. a timeout) we couldn't get a character the
@@ -475,14 +498,28 @@ include(`ACS_Map')dnl
    pragma Inline (Function_Key_Code);
 
    --  MANPAGE(`curs_attr.3x')
    pragma Inline (Function_Key_Code);
 
    --  MANPAGE(`curs_attr.3x')
+   --  | Not implemented attr_off,  wattr_off,
+   --  |  attr_on, wattr_on, attr_set, wattr_set
+
+   --  PAIR_NUMBER
+   --  PAIR_NUMBER(c) is the same as c.Color
+
+   --  ANCHOR(`standout()',`Standout')
+   procedure Standout (Win : Window  := Standard_Window;
+                       On  : Boolean := True);
+   --  ALIAS(`wstandout()')
+   --  ALIAS(`wstandend()')
 
    --  ANCHOR(`wattron()',`Switch_Character_Attribute')
    procedure Switch_Character_Attribute
      (Win  : in Window := Standard_Window;
       Attr : in Character_Attribute_Set := Normal_Video;
       On   : in Boolean := True); --  if False we switch Off.
 
    --  ANCHOR(`wattron()',`Switch_Character_Attribute')
    procedure Switch_Character_Attribute
      (Win  : in Window := Standard_Window;
       Attr : in Character_Attribute_Set := Normal_Video;
       On   : in Boolean := True); --  if False we switch Off.
+   --  Switches those Attributes set to true in the list.
    --  AKA
    --  ALIAS(`wattroff()')
    --  AKA
    --  ALIAS(`wattroff()')
+   --  ALIAS(`attron()')
+   --  ALIAS(`attroff()')
 
    --  ANCHOR(`wattrset()',`Set_Character_Attributes')
    procedure Set_Character_Attributes
 
    --  ANCHOR(`wattrset()',`Set_Character_Attributes')
    procedure Set_Character_Attributes
@@ -490,12 +527,14 @@ include(`ACS_Map')dnl
       Attr  : in Character_Attribute_Set := Normal_Video;
       Color : in Color_Pair := Color_Pair'First);
    --  AKA
       Attr  : in Character_Attribute_Set := Normal_Video;
       Color : in Color_Pair := Color_Pair'First);
    --  AKA
+   --  ALIAS(`attrset()')
    pragma Inline (Set_Character_Attributes);
 
    --  ANCHOR(`wattr_get()',`Get_Character_Attributes')
    function Get_Character_Attribute
      (Win : in Window := Standard_Window) return Character_Attribute_Set;
    --  AKA
    pragma Inline (Set_Character_Attributes);
 
    --  ANCHOR(`wattr_get()',`Get_Character_Attributes')
    function Get_Character_Attribute
      (Win : in Window := Standard_Window) return Character_Attribute_Set;
    --  AKA
+   --  ALIAS(`attr_get()')
 
    --  ANCHOR(`wattr_get()',`Get_Character_Attribute')
    function Get_Character_Attribute
 
    --  ANCHOR(`wattr_get()',`Get_Character_Attribute')
    function Get_Character_Attribute
@@ -507,6 +546,7 @@ include(`ACS_Map')dnl
    procedure Set_Color (Win  : in Window := Standard_Window;
                         Pair : in Color_Pair);
    --  AKA
    procedure Set_Color (Win  : in Window := Standard_Window;
                         Pair : in Color_Pair);
    --  AKA
+   --  ALIAS(`color_set()')
    pragma Inline (Set_Color);
 
    --  ANCHOR(`wchgat()',`Change_Attributes')
    pragma Inline (Set_Color);
 
    --  ANCHOR(`wchgat()',`Change_Attributes')
@@ -516,6 +556,7 @@ include(`ACS_Map')dnl
       Attr  : in Character_Attribute_Set := Normal_Video;
       Color : in Color_Pair := Color_Pair'First);
    --  AKA
       Attr  : in Character_Attribute_Set := Normal_Video;
       Color : in Color_Pair := Color_Pair'First);
    --  AKA
+   --  ALIAS(`chgat()')
 
    --  ANCHOR(`mvwchgat()',`Change_Attributes')
    procedure Change_Attributes
 
    --  ANCHOR(`mvwchgat()',`Change_Attributes')
    procedure Change_Attributes
@@ -526,6 +567,7 @@ include(`ACS_Map')dnl
       Attr   : in Character_Attribute_Set := Normal_Video;
       Color  : in Color_Pair := Color_Pair'First);
    --  AKA
       Attr   : in Character_Attribute_Set := Normal_Video;
       Color  : in Color_Pair := Color_Pair'First);
    --  AKA
+   --  ALIAS(`mvchgat()')
    pragma Inline (Change_Attributes);
 
    --  MANPAGE(`curs_beep.3x')
    pragma Inline (Change_Attributes);
 
    --  MANPAGE(`curs_beep.3x')
@@ -574,6 +616,11 @@ include(`ACS_Map')dnl
    --  AKA
    pragma Inline (Set_KeyPad_Mode);
 
    --  AKA
    pragma Inline (Set_KeyPad_Mode);
 
+   function Get_KeyPad_Mode (Win : in Window := Standard_Window)
+                             return Boolean;
+   --  This has no pendant in C. There you've to look into the WINDOWS
+   --  structure to get the value. Bad practice, not repeated in Ada.
+
    type Half_Delay_Amount is range 1 .. 255;
 
    --  ANCHOR(`halfdelay()',`Half_Delay')
    type Half_Delay_Amount is range 1 .. 255;
 
    --  ANCHOR(`halfdelay()',`Half_Delay')
@@ -610,6 +657,7 @@ include(`ACS_Map')dnl
                                Mode   : in Timeout_Mode;
                                Amount : in Natural); --  in Milliseconds
    --  AKA
                                Mode   : in Timeout_Mode;
                                Amount : in Natural); --  in Milliseconds
    --  AKA
+   --  ALIAS(`timeout()')
    --  Instead of overloading the semantic of the sign of amount, we
    --  introduce the Timeout_Mode parameter. This should improve
    --  readability. For Blocking and Non_Blocking, the Amount is not
    --  Instead of overloading the semantic of the sign of amount, we
    --  introduce the Timeout_Mode parameter. This should improve
    --  readability. For Blocking and Non_Blocking, the Amount is not
@@ -683,6 +731,7 @@ include(`ACS_Map')dnl
       Top_Line    : in Line_Position;
       Bottom_Line : in Line_Position);
    --  AKA
       Top_Line    : in Line_Position;
       Bottom_Line : in Line_Position);
    --  AKA
+   --  ALIAS(`setscrreg()')
    pragma Inline (Set_Scroll_Region);
 
    --  MANPAGE(`curs_refresh.3x')
    pragma Inline (Set_Scroll_Region);
 
    --  MANPAGE(`curs_refresh.3x')
@@ -697,6 +746,7 @@ include(`ACS_Map')dnl
    --  AKA
    --  There is an overloaded Refresh for Pads.
    --  The Inline pragma appears there
    --  AKA
    --  There is an overloaded Refresh for Pads.
    --  The Inline pragma appears there
+   --  ALIAS(`refresh()')
 
    --  ANCHOR(`wnoutrefresh()',`Refresh_Without_Update')
    procedure Refresh_Without_Update
 
    --  ANCHOR(`wnoutrefresh()',`Refresh_Without_Update')
    procedure Refresh_Without_Update
@@ -721,33 +771,41 @@ include(`ACS_Map')dnl
    --  ANCHOR(`werase()',`Erase')
    procedure Erase (Win : in Window := Standard_Window);
    --  AKA
    --  ANCHOR(`werase()',`Erase')
    procedure Erase (Win : in Window := Standard_Window);
    --  AKA
+   --  ALIAS(`erase()')
    pragma Inline (Erase);
 
    --  ANCHOR(`wclear()',`Clear')
    procedure Clear
      (Win : in Window := Standard_Window);
    --  AKA
    pragma Inline (Erase);
 
    --  ANCHOR(`wclear()',`Clear')
    procedure Clear
      (Win : in Window := Standard_Window);
    --  AKA
+   --  ALIAS(`clear()')
    pragma Inline (Clear);
 
    --  ANCHOR(`wclrtobot()',`Clear_To_End_Of_Screen')
    procedure Clear_To_End_Of_Screen
      (Win : in Window := Standard_Window);
    --  AKA
    pragma Inline (Clear);
 
    --  ANCHOR(`wclrtobot()',`Clear_To_End_Of_Screen')
    procedure Clear_To_End_Of_Screen
      (Win : in Window := Standard_Window);
    --  AKA
+   --  ALIAS(`clrtobot()')
    pragma Inline (Clear_To_End_Of_Screen);
 
    --  ANCHOR(`wclrtoeol()',`Clear_To_End_Of_Line')
    procedure Clear_To_End_Of_Line
      (Win : in Window := Standard_Window);
    --  AKA
    pragma Inline (Clear_To_End_Of_Screen);
 
    --  ANCHOR(`wclrtoeol()',`Clear_To_End_Of_Line')
    procedure Clear_To_End_Of_Line
      (Win : in Window := Standard_Window);
    --  AKA
+   --  ALIAS(`clrtoeol()')
    pragma Inline (Clear_To_End_Of_Line);
 
    --  MANPAGE(`curs_bkgd.3x')
 
    --  ANCHOR(`wbkgdset()',`Set_Background')
    pragma Inline (Clear_To_End_Of_Line);
 
    --  MANPAGE(`curs_bkgd.3x')
 
    --  ANCHOR(`wbkgdset()',`Set_Background')
+   --  TODO: we could have Set_Background(Window; Character_Attribute_Set)
+   --  because in C it is common to see bkgdset(A_BOLD) or
+   --  bkgdset(COLOR_PAIR(n))
    procedure Set_Background
      (Win : in Window := Standard_Window;
       Ch  : in Attributed_Character);
    --  AKA
    procedure Set_Background
      (Win : in Window := Standard_Window;
       Ch  : in Attributed_Character);
    --  AKA
+   --  ALIAS(`bkgdset()')
    pragma Inline (Set_Background);
 
    --  ANCHOR(`wbkgd()',`Change_Background')
    pragma Inline (Set_Background);
 
    --  ANCHOR(`wbkgd()',`Change_Background')
@@ -755,12 +813,15 @@ include(`ACS_Map')dnl
      (Win : in Window := Standard_Window;
       Ch  : in Attributed_Character);
    --  AKA
      (Win : in Window := Standard_Window;
       Ch  : in Attributed_Character);
    --  AKA
+   --  ALIAS(`bkgd()')
    pragma Inline (Change_Background);
 
    --  ANCHOR(`wbkgdget()',`Get_Background')
    pragma Inline (Change_Background);
 
    --  ANCHOR(`wbkgdget()',`Get_Background')
+   --  ? wbkgdget is not listed in curs_bkgd, getbkgd is thpough.
    function Get_Background (Win : Window := Standard_Window)
      return Attributed_Character;
    --  AKA
    function Get_Background (Win : Window := Standard_Window)
      return Attributed_Character;
    --  AKA
+   --  ALIAS(`bkgdget()')
    pragma Inline (Get_Background);
 
    --  MANPAGE(`curs_touch.3x')
    pragma Inline (Get_Background);
 
    --  MANPAGE(`curs_touch.3x')
@@ -834,16 +895,19 @@ include(`ACS_Map')dnl
      (Win   : in Window  := Standard_Window;
       Lines : in Integer := 1); --  default is to insert one line above
    --  AKA
      (Win   : in Window  := Standard_Window;
       Lines : in Integer := 1); --  default is to insert one line above
    --  AKA
+   --  ALIAS(`insdelln()')
    pragma Inline (Insert_Delete_Lines);
 
    --  ANCHOR(`wdeleteln()',`Delete_Line')
    procedure Delete_Line (Win : in Window := Standard_Window);
    --  AKA
    pragma Inline (Insert_Delete_Lines);
 
    --  ANCHOR(`wdeleteln()',`Delete_Line')
    procedure Delete_Line (Win : in Window := Standard_Window);
    --  AKA
+   --  ALIAS(`deleteln()')
    pragma Inline (Delete_Line);
 
    --  ANCHOR(`winsertln()',`Insert_Line')
    procedure Insert_Line (Win : in Window := Standard_Window);
    --  AKA
    pragma Inline (Delete_Line);
 
    --  ANCHOR(`winsertln()',`Insert_Line')
    procedure Insert_Line (Win : in Window := Standard_Window);
    --  AKA
+   --  ALIAS(`insertln()')
    pragma Inline (Insert_Line);
 
    --  MANPAGE(`curs_getyx.3x')
    pragma Inline (Insert_Line);
 
    --  MANPAGE(`curs_getyx.3x')
@@ -942,6 +1006,8 @@ include(`ACS_Map')dnl
    procedure Scroll (Win    : in Window  := Standard_Window;
                      Amount : in Integer := 1);
    --  AKA
    procedure Scroll (Win    : in Window  := Standard_Window;
                      Amount : in Integer := 1);
    --  AKA
+   --  ALIAS(`scroll()')
+   --  ALIAS(`scrl()')
    pragma Inline (Scroll);
 
    --  MANPAGE(`curs_delch.3x')
    pragma Inline (Scroll);
 
    --  MANPAGE(`curs_delch.3x')
@@ -949,6 +1015,7 @@ include(`ACS_Map')dnl
    --  ANCHOR(`wdelch()',`Delete_Character')
    procedure Delete_Character (Win : in Window := Standard_Window);
    --  AKA
    --  ANCHOR(`wdelch()',`Delete_Character')
    procedure Delete_Character (Win : in Window := Standard_Window);
    --  AKA
+   --  ALIAS(`delch()')
 
    --  ANCHOR(`mvwdelch()',`Delete_Character')
    procedure Delete_Character
 
    --  ANCHOR(`mvwdelch()',`Delete_Character')
    procedure Delete_Character
@@ -956,6 +1023,7 @@ include(`ACS_Map')dnl
       Line   : in Line_Position;
       Column : in Column_Position);
    --  AKA
       Line   : in Line_Position;
       Column : in Column_Position);
    --  AKA
+   --  ALIAS(`mvdelch()')
    pragma Inline (Delete_Character);
 
    --  MANPAGE(`curs_inch.3x')
    pragma Inline (Delete_Character);
 
    --  MANPAGE(`curs_inch.3x')
@@ -963,6 +1031,7 @@ include(`ACS_Map')dnl
    --  ANCHOR(`winch()',`Peek')
    function Peek (Win : Window := Standard_Window)
      return Attributed_Character;
    --  ANCHOR(`winch()',`Peek')
    function Peek (Win : Window := Standard_Window)
      return Attributed_Character;
+   --  ALIAS(`inch()')
    --  AKA
 
    --  ANCHOR(`mvwinch()',`Peek')
    --  AKA
 
    --  ANCHOR(`mvwinch()',`Peek')
@@ -971,14 +1040,16 @@ include(`ACS_Map')dnl
       Line   : Line_Position;
       Column : Column_Position) return Attributed_Character;
    --  AKA
       Line   : Line_Position;
       Column : Column_Position) return Attributed_Character;
    --  AKA
+   --  ALIAS(`mvinch()')
    --  More Peek's follow, pragma Inline appears later.
 
    --  More Peek's follow, pragma Inline appears later.
 
-   --  MANPAGE(`curs_winch.3x')
+   --  MANPAGE(`curs_insch.3x')
 
    --  ANCHOR(`winsch()',`Insert')
    procedure Insert (Win : in Window := Standard_Window;
                      Ch  : in Attributed_Character);
    --  AKA
 
    --  ANCHOR(`winsch()',`Insert')
    procedure Insert (Win : in Window := Standard_Window;
                      Ch  : in Attributed_Character);
    --  AKA
+   --  ALIAS(`insch()')
 
    --  ANCHOR(`mvwinsch()',`Insert')
    procedure Insert (Win    : in Window := Standard_Window;
 
    --  ANCHOR(`mvwinsch()',`Insert')
    procedure Insert (Win    : in Window := Standard_Window;
@@ -986,8 +1057,9 @@ include(`ACS_Map')dnl
                      Column : in Column_Position;
                      Ch     : in Attributed_Character);
    --  AKA
                      Column : in Column_Position;
                      Ch     : in Attributed_Character);
    --  AKA
+   --  ALIAS(`mvinsch()')
 
 
-   --  MANPAGE(`curs_winch.3x')
+   --  MANPAGE(`curs_insstr.3x')
 
    --  ANCHOR(`winsnstr()',`Insert')
    procedure Insert (Win : in Window := Standard_Window;
 
    --  ANCHOR(`winsnstr()',`Insert')
    procedure Insert (Win : in Window := Standard_Window;
@@ -995,6 +1067,8 @@ include(`ACS_Map')dnl
                      Len : in Integer := -1);
    --  AKA
    --  ALIAS(`winsstr()')
                      Len : in Integer := -1);
    --  AKA
    --  ALIAS(`winsstr()')
+   --  ALIAS(`insnstr()')
+   --  ALIAS(`insstr()')
 
    --  ANCHOR(`mvwinsnstr()',`Insert')
    procedure Insert (Win    : in Window := Standard_Window;
 
    --  ANCHOR(`mvwinsnstr()',`Insert')
    procedure Insert (Win    : in Window := Standard_Window;
@@ -1004,6 +1078,8 @@ include(`ACS_Map')dnl
                      Len    : in Integer := -1);
    --  AKA
    --  ALIAS(`mvwinsstr()')
                      Len    : in Integer := -1);
    --  AKA
    --  ALIAS(`mvwinsstr()')
+   --  ALIAS(`mvinsnstr()')
+   --  ALIAS(`mvinsstr()')
    pragma Inline (Insert);
 
    --  MANPAGE(`curs_instr.3x')
    pragma Inline (Insert);
 
    --  MANPAGE(`curs_instr.3x')
@@ -1014,6 +1090,8 @@ include(`ACS_Map')dnl
                    Len : in  Integer := -1);
    --  AKA
    --  ALIAS(`winstr()')
                    Len : in  Integer := -1);
    --  AKA
    --  ALIAS(`winstr()')
+   --  ALIAS(`innstr()')
+   --  ALIAS(`instr()')
 
    --  ANCHOR(`mvwinnstr()',`Peek')
    procedure Peek (Win    : in  Window := Standard_Window;
 
    --  ANCHOR(`mvwinnstr()',`Peek')
    procedure Peek (Win    : in  Window := Standard_Window;
@@ -1023,6 +1101,8 @@ include(`ACS_Map')dnl
                    Len    : in  Integer := -1);
    --  AKA
    --  ALIAS(`mvwinstr()')
                    Len    : in  Integer := -1);
    --  AKA
    --  ALIAS(`mvwinstr()')
+   --  ALIAS(`mvinnstr()')
+   --  ALIAS(`mvinstr()')
 
    --  MANPAGE(`curs_inchstr.3x')
 
 
    --  MANPAGE(`curs_inchstr.3x')
 
@@ -1032,6 +1112,8 @@ include(`ACS_Map')dnl
                    Len : in  Integer := -1);
    --  AKA
    --  ALIAS(`winchstr()')
                    Len : in  Integer := -1);
    --  AKA
    --  ALIAS(`winchstr()')
+   --  ALIAS(`inchnstr()')
+   --  ALIAS(`inchstr()')
 
    --  ANCHOR(`mvwinchnstr()',`Peek')
    procedure Peek (Win    : in  Window := Standard_Window;
 
    --  ANCHOR(`mvwinchnstr()',`Peek')
    procedure Peek (Win    : in  Window := Standard_Window;
@@ -1041,6 +1123,8 @@ include(`ACS_Map')dnl
                    Len    : in  Integer := -1);
    --  AKA
    --  ALIAS(`mvwinchstr()')
                    Len    : in  Integer := -1);
    --  AKA
    --  ALIAS(`mvwinchstr()')
+   --  ALIAS(`mvinchnstr()')
+   --  ALIAS(`mvinchstr()')
    --  We don't inline the Peek procedures
 
    --  MANPAGE(`curs_getstr.3x')
    --  We don't inline the Peek procedures
 
    --  MANPAGE(`curs_getstr.3x')
@@ -1051,19 +1135,27 @@ include(`ACS_Map')dnl
                   Len : in  Integer := -1);
    --  AKA
    --  ALIAS(`wgetstr()')
                   Len : in  Integer := -1);
    --  AKA
    --  ALIAS(`wgetstr()')
+   --  ALIAS(`getnstr()')
+   --  ALIAS(`getstr()')
+   --  actually getstr is not supported because that results in buffer
+   --  overflows.
 
 
+   --  ANCHOR(`mvwgetnstr()',`Get')
    procedure Get (Win    : in  Window := Standard_Window;
                   Line   : in  Line_Position;
                   Column : in  Column_Position;
                   Str    : out String;
                   Len    : in  Integer := -1);
    --  AKA
    procedure Get (Win    : in  Window := Standard_Window;
                   Line   : in  Line_Position;
                   Column : in  Column_Position;
                   Str    : out String;
                   Len    : in  Integer := -1);
    --  AKA
-   --  not specified in ncurses, should be: mvwgetnstr()
-   --       and mvwgetstr() (which exists)
+   --  ALIAS(`mvwgetstr()')
+   --  ALIAS(`mvgetnstr()')
+   --  ALIAS(`mvgetstr()')
    --  Get is not inlined
 
    --  MANPAGE(`curs_slk.3x')
 
    --  Get is not inlined
 
    --  MANPAGE(`curs_slk.3x')
 
+   --  Not Implemented: slk_attr_on, slk_attr_off, slk_attr_set
+
    type Soft_Label_Key_Format is (Three_Two_Three,
                                   Four_Four,
                                   PC_Style,              --  ncurses specific
    type Soft_Label_Key_Format is (Three_Two_Three,
                                   Four_Four,
                                   PC_Style,              --  ncurses specific
@@ -1149,6 +1241,9 @@ include(`ACS_Map')dnl
    --  AKA
    pragma Inline (Set_Soft_Label_Key_Color);
 
    --  AKA
    pragma Inline (Set_Soft_Label_Key_Color);
 
+   --  MANPAGE(`keybound.3x')
+   --  Not Implemented: keybound
+
    --  MANPAGE(`keyok.3x')
 
    --  ANCHOR(`keyok()',`Enable_Key')
    --  MANPAGE(`keyok.3x')
 
    --  ANCHOR(`keyok()',`Enable_Key')
@@ -1167,8 +1262,10 @@ include(`ACS_Map')dnl
 
    --  MANPAGE(`curs_util.3x')
 
 
    --  MANPAGE(`curs_util.3x')
 
-   --  | Not implemented : filter, use_env, putwin, getwin
+   --  | Not implemented : filter, use_env
+   --  | putwin, getwin are in the child package PutWin
    --
    --
+
    --  ANCHOR(`keyname()',`Key_Name')
    procedure Key_Name (Key  : in  Real_Key_Code;
                        Name : out String);
    --  ANCHOR(`keyname()',`Key_Name')
    procedure Key_Name (Key  : in  Real_Key_Code;
                        Name : out String);
@@ -1256,6 +1353,12 @@ include(`ACS_Map')dnl
 
    --  MANPAGE(`curs_color.3x')
 
 
    --  MANPAGE(`curs_color.3x')
 
+   --  COLOR_PAIR
+   --  COLOR_PAIR(n) in C is the same as
+   --  Attributed_Character(Ch => Nul, Color => n, Attr => Normal_Video)
+   --  In C you often see something like c = c | COLOR_PAIR(n);
+   --  This is equivalent to c.Color := n;
+
    --  ANCHOR(`start_color()',`Start_Color')
    procedure Start_Color;
    --  AKA
    --  ANCHOR(`start_color()',`Start_Color')
    procedure Start_Color;
    --  AKA
@@ -1302,7 +1405,6 @@ include(`ACS_Map')dnl
    pragma Inline (Color_Content);
 
    --  MANPAGE(`curs_kernel.3x')
    pragma Inline (Color_Content);
 
    --  MANPAGE(`curs_kernel.3x')
-
    --  | Not implemented: getsyx, setsyx
    --
    type Curses_Mode is (Curses, Shell);
    --  | Not implemented: getsyx, setsyx
    --
    type Curses_Mode is (Curses, Shell);
@@ -1375,6 +1477,73 @@ include(`ACS_Map')dnl
    --  Window or if you pass the Null_Window as argument.
    --  We don't inline this procedure
 
    --  Window or if you pass the Null_Window as argument.
    --  We don't inline this procedure
 
+   --  MANPAGE(`dft_fgbg.3x')
+
+   --  ANCHOR(`use_default_colors()',`Use_Default_Colors')
+   procedure Use_Default_Colors;
+   --  AKA
+   pragma Inline (Use_Default_Colors);
+
+   --  ANCHOR(`assume_default_colors()',`Assume_Default_Colors')
+   procedure Assume_Default_Colors (Fore : Color_Number := Default_Color;
+                                    Back : Color_Number := Default_Color);
+   --  AKA
+   pragma Inline (Assume_Default_Colors);
+
+   --  MANPAGE(`curs_extend.3x')
+
+   --  ANCHOR(`curses_version()',`Curses_Version')
+   function Curses_Version return String;
+   --  AKA
+
+   --  ANCHOR(`use_extended_names()',`Use_Extended_Names')
+   --  The returnvalue is the previous setting of the flag
+   function Use_Extended_Names (Enable : Boolean) return Boolean;
+   --  AKA
+
+   --  MANPAGE(`curs_scr_dump.3x')
+
+   --  ANCHOR(`scr_dump()',`Screen_Dump_To_File')
+   procedure Screen_Dump_To_File (Filename : in String);
+   --  AKA
+
+   --  ANCHOR(`scr_restore()',`Screen_Restore_From_File')
+   procedure Screen_Restore_From_File (Filename : in String);
+   --  AKA
+
+   --  ANCHOR(`scr_init()',`Screen_Init_From_File')
+   procedure Screen_Init_From_File (Filename : in String);
+   --  AKA
+
+   --  ANCHOR(`scr_set()',`Screen_Set_File')
+   procedure Screen_Set_File (Filename : in String);
+   --  AKA
+
+   --  MANPAGE(`curs_print.3x')
+   --  Not implemented:  mcprint
+
+   --  MANPAGE(`curs_printw.3x')
+   --  Not implemented: printw,  wprintw, mvprintw, mvwprintw, vwprintw,
+   --                   vw_printw
+   --  Please use the Ada style Text_IO child packages for formatted
+   --  printing. It doesn't make a lot of sense to map the printf style
+   --  C functions to Ada.
+
+   --  MANPAGE(`curs_scanw.3x')
+   --  Not implemented: scanw, wscanw, mvscanw, mvwscanw, vwscanw, vw_scanw
+
+
+   --  MANPAGE(`resizeterm.3x')
+   --  Not Implemented: resizeterm
+
+   --  MANPAGE(`wresize.3x')
+
+   --  ANCHOR(`wresize()',`Resize')
+   procedure Resize (Win               : Window := Standard_Window;
+                     Number_Of_Lines   : Line_Count;
+                     Number_Of_Columns : Column_Count);
+   --  AKA
+
 private
    type Window is new System.Storage_Elements.Integer_Address;
    Null_Window : constant Window := 0;
 private
    type Window is new System.Storage_Elements.Integer_Address;
    Null_Window : constant Window := 0;
index d9cf0cf738aacfdacdb301ee27e9d46ab1c28105..23cf94f80f05a3b2497ad93d5ee93a27d5ec0812 100644 (file)
 # authorization.                                                             #
 ##############################################################################
 #
 # authorization.                                                             #
 ##############################################################################
 #
-#  Author: Juergen Pfeifer <juergen.pfeifer@gmx.net> 1996
+#  Author:  Juergen Pfeifer, 1996
+#  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 #
 #  Version Control
 #
 #  Version Control
-#  $Revision: 1.25 $
+#  $Revision: 1.29 $
 #
 .SUFFIXES:
 
 #
 .SUFFIXES:
 
@@ -84,9 +85,9 @@ ALIB         = @cf_ada_package@
 ABASE        = $(ALIB)-curses
 
 CARGS        =-cargs $(ADAFLAGS)
 ABASE        = $(ALIB)-curses
 
 CARGS        =-cargs $(ADAFLAGS)
-LARGS        =-largs -L../../lib $(LD_FLAGS) -lAdaCurses -lncurses@LIB_SUFFIX@
-
-PROGS        = tour rain
+LARGS        =-largs -L../../lib @TEST_ARGS@ $(LD_FLAGS) -lAdaCurses @EXTRA_LIBS@
+PROGS        = tour rain ncurses 
 
 TOUR_OBJS    = tour.o sample.o sample-curses_demo.o sample-explanation.o       \
                sample-form_demo.o sample-function_key_setting.o                \
 
 TOUR_OBJS    = tour.o sample.o sample-curses_demo.o sample-explanation.o       \
                sample-form_demo.o sample-function_key_setting.o                \
@@ -98,7 +99,19 @@ TOUR_OBJS    =       tour.o sample.o sample-curses_demo.o sample-explanation.o       \
 
 RAIN_OBJS    = rain.o status.o
 
 
 RAIN_OBJS    = rain.o status.o
 
-all ::  tour$x rain$x
+NCURSES_OBJS = ncurses.o               ncurses2-getch_test.o \
+       ncurses2-acs_and_scroll.o       ncurses2-m.o \
+       ncurses2-acs_display.o          ncurses2-menu_test.o \
+       ncurses2-attr_test.o            ncurses2-overlap_test.o \
+       ncurses2-color_edit.o           ncurses2-slk_test.o \
+       ncurses2-color_test.o           ncurses2-test_sgr_attributes.o \
+       ncurses2-demo_forms.o           ncurses2-trace_set.o \
+       ncurses2-demo_pad.o             ncurses2-util.o \
+       ncurses2-demo_panels.o          ncurses2.o \
+       ncurses2-flushinp_test.o
+
+
+all ::  tour$x rain$x ncurses$x
        @
 
 sources :
        @
 
 sources :
@@ -113,6 +126,9 @@ uninstall \
 uninstall.libs ::
        @
 
 uninstall.libs ::
        @
 
+ncurses$x :
+       $(ADAMAKE) $(ADAMAKEFLAGS) ncurses $(CARGS) $(LARGS)
+
 tour$x :       explain.msg
        $(ADAMAKE) $(ADAMAKEFLAGS) tour $(CARGS) $(LARGS)
 
 tour$x :       explain.msg
        $(ADAMAKE) $(ADAMAKEFLAGS) tour $(CARGS) $(LARGS)
 
@@ -126,7 +142,8 @@ mostlyclean:
        @
 
 clean :: mostlyclean
        @
 
 clean :: mostlyclean
-       rm -f *.o *.ali b_t*.* *.s $(PROGS) a.out core b_*_test.c *.xr[bs] explain.msg
+       rm -f *.o *.ali b_t*.* *.s $(PROGS) a.out core b_*_test.c *.xr[bs] \
+       explain.msg trace screendump 
 
 distclean :: clean
        rm -f Makefile
 
 distclean :: clean
        rm -f Makefile
diff --git a/Ada95/samples/ncurses.adb b/Ada95/samples/ncurses.adb
new file mode 100644 (file)
index 0000000..19f658d
--- /dev/null
@@ -0,0 +1,47 @@
+------------------------------------------------------------------------------
+--                                                                          --
+--                       GNAT ncurses Binding Samples                       --
+--                                                                          --
+--                                 ncurses                                  --
+--                                                                          --
+--                                 B O D Y                                  --
+--                                                                          --
+------------------------------------------------------------------------------
+-- Copyright (c) 2000 Free Software Foundation, Inc.                        --
+--                                                                          --
+-- Permission is hereby granted, free of charge, to any person obtaining a  --
+-- copy of this software and associated documentation files (the            --
+-- "Software"), to deal in the Software without restriction, including      --
+-- without limitation the rights to use, copy, modify, merge, publish,      --
+-- distribute, distribute with modifications, sublicense, and/or sell       --
+-- copies of the Software, and to permit persons to whom the Software is    --
+-- furnished to do so, subject to the following conditions:                 --
+--                                                                          --
+-- The above copyright notice and this permission notice shall be included  --
+-- in all copies or substantial portions of the Software.                   --
+--                                                                          --
+-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  --
+-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               --
+-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   --
+-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   --
+-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    --
+-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    --
+-- THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               --
+--                                                                          --
+-- Except as contained in this notice, the name(s) of the above copyright   --
+-- holders shall not be used in advertising or otherwise to promote the     --
+-- sale, use or other dealings in this Software without prior written       --
+-- authorization.                                                           --
+------------------------------------------------------------------------------
+--  Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
+--  Version Control
+--  $Revision: 1.1 $
+--  Binding Version 01.00
+------------------------------------------------------------------------------
+with ncurses2.m; use ncurses2.m;
+with GNAT.OS_Lib; use GNAT.OS_Lib;
+
+procedure ncurses is
+begin
+   OS_Exit (main);
+end ncurses;
diff --git a/Ada95/samples/ncurses2-acs_and_scroll.adb b/Ada95/samples/ncurses2-acs_and_scroll.adb
new file mode 100644 (file)
index 0000000..65c2939
--- /dev/null
@@ -0,0 +1,722 @@
+------------------------------------------------------------------------------
+--                                                                          --
+--                       GNAT ncurses Binding Samples                       --
+--                                                                          --
+--                                 ncurses                                  --
+--                                                                          --
+--                                 B O D Y                                  --
+--                                                                          --
+------------------------------------------------------------------------------
+-- Copyright (c) 2000 Free Software Foundation, Inc.                        --
+--                                                                          --
+-- Permission is hereby granted, free of charge, to any person obtaining a  --
+-- copy of this software and associated documentation files (the            --
+-- "Software"), to deal in the Software without restriction, including      --
+-- without limitation the rights to use, copy, modify, merge, publish,      --
+-- distribute, distribute with modifications, sublicense, and/or sell       --
+-- copies of the Software, and to permit persons to whom the Software is    --
+-- furnished to do so, subject to the following conditions:                 --
+--                                                                          --
+-- The above copyright notice and this permission notice shall be included  --
+-- in all copies or substantial portions of the Software.                   --
+--                                                                          --
+-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  --
+-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               --
+-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   --
+-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   --
+-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    --
+-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    --
+-- THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               --
+--                                                                          --
+-- Except as contained in this notice, the name(s) of the above copyright   --
+-- holders shall not be used in advertising or otherwise to promote the     --
+-- sale, use or other dealings in this Software without prior written       --
+-- authorization.                                                           --
+------------------------------------------------------------------------------
+--  Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
+--  Version Control
+--  $Revision: 1.1 $
+--  Binding Version 01.00
+------------------------------------------------------------------------------
+--  Windows and scrolling tester.
+--  Demonstrate windows
+
+with Ada.Strings.Fixed;
+with Ada.Strings;
+
+with ncurses2.util; use ncurses2.util;
+with ncurses2.genericPuts;
+with Terminal_Interface.Curses; use Terminal_Interface.Curses;
+with Terminal_Interface.Curses.Mouse; use Terminal_Interface.Curses.Mouse;
+with Terminal_Interface.Curses.PutWin; use Terminal_Interface.Curses.PutWin;
+
+with Ada.Streams.Stream_IO; use Ada.Streams.Stream_IO;
+with Ada.Streams; use Ada.Streams;
+
+procedure ncurses2.acs_and_scroll is
+
+
+   Macro_Quit   : constant Key_Code := Character'Pos ('Q') mod 16#20#;
+   Macro_Escape : constant Key_Code := Character'Pos ('[') mod 16#20#;
+
+   Quit : constant Key_Code := CTRL ('Q');
+   Escape : constant Key_Code := CTRL ('[');
+
+
+   Botlines : constant Line_Position := 4;
+
+   type pair is record
+      y : Line_Position;
+      x : Column_Position;
+   end record;
+
+   type Frame;
+   type FrameA is access Frame;
+
+   f : File_Type;
+   dumpfile : constant String := "screendump";
+
+   procedure Outerbox (ul, lr : pair; onoff : Boolean);
+   function  HaveKeyPad (w : Window) return Boolean;
+   function  HaveScroll (w : Window) return Boolean;
+   procedure newwin_legend (curpw : Window);
+   procedure transient (curpw : Window; msg : String);
+   procedure newwin_report (win : Window := Standard_Window);
+   procedure selectcell (uli : Line_Position;
+                         ulj : Column_Position;
+                         lri : Line_Position;
+                         lrj : Column_Position;
+                         p   : out pair;
+                         b   : out Boolean);
+   function  getwindow return Window;
+   procedure newwin_move (win : Window;
+                          dy  : Line_Position;
+                          dx  : Column_Position);
+   function delete_framed (fp : FrameA; showit : Boolean) return FrameA;
+
+   use Ada.Streams.Stream_IO;
+
+
+   --  A linked list
+   --  I  wish there was a standard library linked list. Oh well.
+   type Frame is record
+      next, last : FrameA;
+      do_scroll : Boolean;
+      do_keypad : Boolean;
+      wind : Window;
+   end record;
+
+   current : FrameA;
+
+   c : Key_Code;
+
+   procedure Outerbox (ul, lr : pair; onoff : Boolean) is
+   begin
+      if onoff then
+         --  Note the fix of an obscure bug
+         --  try making a 1x1 box then enlarging it, the is a blank
+         --  upper left corner!
+         Add (Line => ul.y - 1, Column => ul.x - 1,
+             Ch => ACS_Map (ACS_Upper_Left_Corner));
+         Add (Line => ul.y - 1, Column => lr.x + 1,
+             Ch => ACS_Map (ACS_Upper_Right_Corner));
+         Add (Line => lr.y + 1, Column => lr.x + 1,
+             Ch => ACS_Map (ACS_Lower_Right_Corner));
+         Add (Line => lr.y + 1, Column => ul.x - 1,
+             Ch => ACS_Map (ACS_Lower_Left_Corner));
+
+         Move_Cursor (Line => ul.y - 1, Column => ul.x);
+         Horizontal_Line (Line_Symbol => ACS_Map (ACS_Horizontal_Line),
+                          Line_Size => Integer (lr.x - ul.x) + 1);
+         Move_Cursor (Line => ul.y, Column => ul.x - 1);
+         Vertical_Line (Line_Symbol => ACS_Map (ACS_Vertical_Line),
+                        Line_Size => Integer (lr.y - ul.y) + 1);
+         Move_Cursor (Line => lr.y + 1, Column => ul.x);
+         Horizontal_Line (Line_Symbol => ACS_Map (ACS_Horizontal_Line),
+                          Line_Size => Integer (lr.x - ul.x) + 1);
+         Move_Cursor (Line => ul.y, Column => lr.x + 1);
+         Vertical_Line (Line_Symbol => ACS_Map (ACS_Vertical_Line),
+                        Line_Size => Integer (lr.y - ul.y) + 1);
+      else
+         Add (Line => ul.y - 1, Column => ul.x - 1, Ch => ' ');
+         Add (Line => ul.y - 1, Column => lr.x + 1, Ch => ' ');
+         Add (Line => lr.y + 1, Column => lr.x + 1, Ch => ' ');
+         Add (Line => lr.y + 1, Column => ul.x - 1, Ch => ' ');
+
+         Move_Cursor (Line => ul.y - 1, Column => ul.x);
+         Horizontal_Line (Line_Symbol => Blank2,
+                          Line_Size => Integer (lr.x - ul.x) + 1);
+         Move_Cursor (Line => ul.y, Column => ul.x - 1);
+         Vertical_Line (Line_Symbol => Blank2,
+                        Line_Size => Integer (lr.y - ul.y) + 1);
+         Move_Cursor (Line => lr.y + 1, Column => ul.x);
+         Horizontal_Line (Line_Symbol => Blank2,
+                          Line_Size => Integer (lr.x - ul.x) + 1);
+         Move_Cursor (Line => ul.y, Column => lr.x + 1);
+         Vertical_Line (Line_Symbol => Blank2,
+                        Line_Size => Integer (lr.y - ul.y) + 1);
+      end if;
+   end Outerbox;
+
+   function HaveKeyPad (w : Window) return Boolean is
+   begin
+      return Get_KeyPad_Mode (w);
+   exception
+      when Curses_Exception => return False;
+   end HaveKeyPad;
+
+   function HaveScroll (w : Window) return Boolean is
+   begin
+      return Scrolling_Allowed (w);
+   exception
+      when Curses_Exception => return False;
+   end HaveScroll;
+
+
+   procedure newwin_legend (curpw : Window) is
+
+      package p is new genericPuts (200);
+      use p;
+      use p.BS;
+
+      type string_a is access String;
+
+      type rrr is record
+         msg : string_a;
+         code : Integer range 0 .. 3;
+      end record;
+
+      legend : constant array (Positive range <>) of rrr :=
+        (
+         (
+          new String'("^C = create window"), 0
+          ),
+         (
+          new String'("^N = next window"), 0
+          ),
+         (
+          new String'("^P = previous window"), 0
+          ),
+         (
+          new String'("^F = scroll forward"), 0
+          ),
+         (
+          new String'("^B = scroll backward"), 0
+          ),
+         (
+          new String'("^K = keypad(%s)"), 1
+          ),
+         (
+          new String'("^S = scrollok(%s)"), 2
+          ),
+         (
+          new String'("^W = save window to file"), 0
+          ),
+         (
+          new String'("^R = restore window"), 0
+          ),
+         (
+          new String'("^X = resize"), 0
+          ),
+         (
+          new String'("^Q%s = exit"), 3
+          )
+         );
+
+      buf : Bounded_String;
+      do_keypad : Boolean := HaveKeyPad (curpw);
+      do_scroll : Boolean := HaveScroll (curpw);
+
+      pos : Natural;
+
+      mypair : pair;
+
+      use Ada.Strings.Fixed;
+
+   begin
+      Move_Cursor (Line => Lines - 4, Column => 0);
+      for n in legend'Range loop
+         pos := Ada.Strings.Fixed.Index (Source => le