]> ncurses.scripts.mit.edu Git - ncurses.git/commitdiff
ncurses 5.4 v5.4
authorThomas E. Dickey <dickey@invisible-island.net>
Mon, 9 Feb 2004 02:15:26 +0000 (21:15 -0500)
committerThomas E. Dickey <dickey@invisible-island.net>
Mon, 9 Feb 2004 02:15:26 +0000 (21:15 -0500)
671 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.ads.m4
Ada95/samples/Makefile.in
Ada95/samples/ncurses2-getopt.adb
Ada95/samples/ncurses2-m.adb
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
Ada95/src/terminal_interface-curses-putwin.ads
Ada95/src/terminal_interface-curses-termcap.adb
Ada95/src/terminal_interface-curses-termcap.ads
Ada95/src/terminal_interface-curses-terminfo.adb
Ada95/src/terminal_interface-curses-terminfo.ads
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
Ada95/src/terminal_interface-curses.adb
Ada95/src/terminal_interface.ads
INSTALL
MANIFEST
Makefile.glibc [deleted file]
NEWS
README
README.glibc [deleted file]
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/hackguide.doc
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/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
doc/html/ada/terminal_interface-curses-putwin__ads.htm
doc/html/ada/terminal_interface-curses-termcap__adb.htm
doc/html/ada/terminal_interface-curses-termcap__ads.htm
doc/html/ada/terminal_interface-curses-terminfo__adb.htm
doc/html/ada/terminal_interface-curses-terminfo__ads.htm
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
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/hackguide.html
doc/html/man/captoinfo.1m.html
doc/html/man/clear.1.html
doc/html/man/curs_add_wch.3x.html
doc/html/man/curs_add_wchstr.3x.html
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
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
doc/html/man/curs_border.3x.html
doc/html/man/curs_border_set.3x.html
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
doc/html/man/curs_get_wstr.3x.html
doc/html/man/curs_getcchar.3x.html
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
doc/html/man/curs_in_wchstr.3x.html
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
doc/html/man/curs_ins_wstr.3x.html
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
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/key_defined.3x.html [new file with mode: 0644]
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_num.c
form/fty_regex.c
include/Caps.hpux11
include/MKkey_defs.sh
include/MKncurses_def.sh
include/MKterm.h.awk.in
include/curses.h.in
include/curses.tail
include/curses.wide
include/ncurses_defs
include/ncurses_dll.h
include/tic.h
man/MKterminfo.sh
man/Makefile.in
man/captoinfo.1m
man/curs_add_wchstr.3x
man/curs_addch.3x
man/curs_addchstr.3x
man/curs_addstr.3x
man/curs_addwstr.3x
man/curs_attr.3x
man/curs_beep.3x
man/curs_bkgd.3x
man/curs_deleteln.3x
man/curs_extend.3x
man/curs_get_wch.3x
man/curs_get_wstr.3x
man/curs_getcchar.3x
man/curs_getch.3x
man/curs_getstr.3x
man/curs_getyx.3x
man/curs_initscr.3x
man/curs_inopts.3x
man/curs_insch.3x
man/curs_mouse.3x
man/curs_outopts.3x
man/curs_pad.3x
man/curs_print.3x
man/curs_printw.3x
man/curs_scr_dump.3x
man/curs_scroll.3x
man/curs_slk.3x
man/curs_termattrs.3x
man/curs_termcap.3x
man/curs_terminfo.3x
man/curs_util.3x
man/curs_window.3x
man/default_colors.3x
man/define_key.3x
man/form_field.3x
man/form_field_buffer.3x
man/form_field_just.3x
man/form_field_new.3x
man/form_field_opts.3x
man/form_field_validation.3x
man/form_fieldtype.3x
man/infocmp.1m
man/infotocap.1m
man/key_defined.3x [new file with mode: 0644]
man/keybound.3x
man/keyok.3x
man/make_sed.sh
man/man_db.renames
man/manlinks.sed
man/menu_driver.3x
man/menu_pattern.3x
man/mitem_new.3x
man/ncurses.3x
man/panel.3x
man/resizeterm.3x
man/term.5
man/term.7
man/terminfo.tail
man/tic.1m
man/toe.1m
man/tput.1
man/tset.1
man/wresize.3x
menu/Makefile.in
menu/READ.ME
menu/eti.h
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/csort [new file with mode: 0755]
misc/emx.src
misc/run_tic.in
misc/shlib
misc/terminfo.src
mk-1st.awk
mk-2nd.awk
ncurses/Makefile.in
ncurses/SigAction.h
ncurses/base/MKlib_gen.sh
ncurses/base/define_key.c
ncurses/base/key_defined.c [moved from ncurses/widechar/lib_ins_nwstr.c with 68% similarity]
ncurses/base/keybound.c
ncurses/base/lib_addch.c
ncurses/base/lib_addstr.c
ncurses/base/lib_bkgd.c
ncurses/base/lib_colorset.c
ncurses/base/lib_freeall.c
ncurses/base/lib_getch.c
ncurses/base/lib_initscr.c
ncurses/base/lib_insch.c
ncurses/base/lib_insdel.c
ncurses/base/lib_mouse.c
ncurses/base/lib_newterm.c
ncurses/base/lib_printw.c
ncurses/base/lib_scroll.c
ncurses/base/lib_set_term.c
ncurses/base/lib_slk.c
ncurses/base/lib_slkatr_set.c
ncurses/base/lib_slkcolor.c
ncurses/base/lib_slklab.c
ncurses/base/lib_slkrefr.c
ncurses/base/lib_slkset.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/curses.priv.h
ncurses/llib-lncurses
ncurses/llib-lncursesw
ncurses/modules
ncurses/tinfo/MKkeys_list.sh
ncurses/tinfo/access.c
ncurses/tinfo/alloc_entry.c
ncurses/tinfo/alloc_ttype.c
ncurses/tinfo/captoinfo.c
ncurses/tinfo/comp_hash.c
ncurses/tinfo/comp_parse.c
ncurses/tinfo/comp_scan.c
ncurses/tinfo/free_ttype.c
ncurses/tinfo/home_terminfo.c
ncurses/tinfo/lib_acs.c
ncurses/tinfo/lib_cur_term.c
ncurses/tinfo/lib_has_cap.c
ncurses/tinfo/lib_kernel.c
ncurses/tinfo/lib_napms.c
ncurses/tinfo/lib_options.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/parse_entry.c
ncurses/tinfo/read_entry.c
ncurses/tinfo/read_termcap.c
ncurses/tinfo/setbuf.c
ncurses/tinfo/strings.c
ncurses/trace/lib_trace.c
ncurses/trace/lib_traceatr.c
ncurses/trace/lib_tracechr.c
ncurses/trace/trace_buf.c
ncurses/trace/varargs.c
ncurses/trace/visbuf.c
ncurses/tty/lib_mvcur.c
ncurses/tty/lib_twait.c
ncurses/tty/tty_display.h
ncurses/tty/tty_update.c
ncurses/widechar/charable.c [new file with mode: 0644]
ncurses/widechar/lib_add_wch.c [new file with mode: 0644]
ncurses/widechar/lib_box_set.c
ncurses/widechar/lib_cchar.c
ncurses/widechar/lib_get_wch.c
ncurses/widechar/lib_get_wstr.c
ncurses/widechar/lib_ins_wch.c
ncurses/widechar/lib_pecho_wchar.c [moved from ncurses/base/lib_insstr.c with 64% similarity]
ncurses/widechar/lib_slk_wset.c [new file with mode: 0644]
ncurses/widechar/lib_unget_wch.c
ncurses/widechar/lib_wacs.c
ncurses/widechar/lib_wunctrl.c
panel/Makefile.in
progs/MKtermsort.sh
progs/Makefile.in
progs/dump_entry.c
progs/infocmp.c
progs/tic.c
progs/tput.c
progs/tset.c
sysdeps/unix/sysv/linux/Makefile [deleted file]
sysdeps/unix/sysv/linux/alpha/configure [deleted file]
sysdeps/unix/sysv/linux/configure [deleted file]
sysdeps/unix/sysv/linux/edit_man.sed [deleted file]
sysdeps/unix/sysv/linux/edit_man.sh [deleted file]
sysdeps/unix/sysv/linux/run_tic.sh [deleted file]
tack/HISTORY
tack/Makefile.in
tack/color.c
tack/init.c
tack/output.c
tack/pad.c
tack/tack.h
tar-copy.sh
test/Makefile.in
test/README
test/aclocal.m4 [new file with mode: 0644]
test/background.c [new file with mode: 0644]
test/bs.c
test/cardfile.c
test/color_set.c [new file with mode: 0644]
test/configure
test/configure.in
test/demo_defkey.c [new file with mode: 0644]
test/demo_forms.c [new file with mode: 0644]
test/demo_keyok.c [new file with mode: 0644]
test/demo_menus.c [new file with mode: 0644]
test/demo_panels.c [new file with mode: 0644]
test/edit_field.c [new file with mode: 0644]
test/edit_field.h [new file with mode: 0644]
test/gdc.6
test/hashtest.c
test/ins_wide.c [new file with mode: 0644]
test/inserts.c [new file with mode: 0644]
test/keynames.c
test/knight.c
test/listused.sh [new file with mode: 0755]
test/modules
test/ncurses.c
test/railroad.c
test/tclock.c
test/test.priv.h
test/testcurs.c
test/testscanw.c
test/view.c

index e39a0bee28d8656945825566da2f96f66f8a3c81..513234e33caa431aec05182c38be2c74dd34ffb6 100644 (file)
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,5 +1,5 @@
 
-                            Announcing ncurses 5.3
+                            Announcing ncurses 5.4
 
    The  ncurses  (new  curses)  library  is  a free software emulation of
    curses  in  System  V  Release 4.0, and more. It uses terminfo format,
    manual pages are provided for the library and tools.
 
    The  ncurses  distribution  is  available via anonymous FTP at the GNU
-   distribution site [1]ftp://ftp.gnu.org/pub/gnu/ncurses.
-   It is also available at [2]ftp://invisible-island.net/ncurses.
+   distribution site [1]ftp://ftp.gnu.org/gnu/ncurses/ .
+   It is also available at [2]ftp://invisible-island.net/ncurses.
 
                                  Release Notes
 
    This  release is designed to be upward compatible from ncurses 5.0 and
-   5.2;  very  few  applications will require recompilation, depending on
+   5.3;  very  few  applications will require recompilation, depending on
    the  platform.  These  are  the  highlights  from the change-log since
-   ncurses 5.2 release.
+   ncurses 5.3 release.
 
    Interface changes:
-     * 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
+     * add  the  remaining  functions  for  X/Open  curses wide-character
+       support.
           + pecho_wchar()
           + slk_wset()
-     * add  environment  variable  $NCURSES_ASSUMED_COLORS  to modify the
-       assume_default_colors() extension.
+       These  are  only  available if the library is configured using the
+       --enable-widec option.
+     * write  getyx()  and related 2-return macros in terms of getcury(),
+       getcurx(), etc.
+     * simplify ifdef for bool declaration in curses.h
+     * modify  ifdef's  in  curses.h that disabled use of __attribute__()
+       for  g++,  since recent versions implement the cases which ncurses
+       uses.
+     * add  key_defined()  function,  to  tell  which keycode a string is
+       bound to.
 
    New features and improvements:
-     * 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.
+     * library
+          + implement  logic  in  lib_mouse.c  to handle position reports
+            which  are  generated  when XFree86 xterm is initialized with
+            private  modes  1002  or  1003.  These  are  returned  to the
+            application  as the REPORT_MOUSE_POSITION mask, which was not
+            implemented.
+          + modify soft-key initialization to use A_REVERSE if A_STANDOUT
+            would  not  be  shown when colors are used, i.e., if ncv#1 is
+            set in the terminfo as is done in "screen".
+          + add  configure  option for FreeBSD sysmouse, --with-sysmouse,
+            and implement library support for that.
+     * programs:
+          + tack:
+               o allow it to run from fallback terminfo data.
+               o reset  colors  after  each  color  test, correct a place
+                 where    exit_standout_mode    was   used   instead   of
+                 exit_attribute_mode.
+               o improve  bce  test  by  making  it set colors other than
+                 black on white.
+          + tic:
+               o handle  a  case  where  an entry has no description, and
+                 capabilities begin on the same line as the entry name.
+               o allow a terminfo entry with a leading 2-character name.
+               o improved  warnings  when  suppressing  items  to  fit in
+                 termcap's 1023-byte limit.
+               o add check for multiple "tc=" clauses in a termcap.
+               o correct logic for resolving "use=" clauses allow infocmp
+                 and tic to show cancelled capabilities.
+               o check for incomplete line-drawing character mapping.
+               o check for missing/empty/illegal terminfo name.
+          + tput:
+               o modify  tput  to  use  the  same  parameter  analysis as
+                 tparm() does, to provide for user-defined strings, e.g.,
+                 for  xterm  title,  a  corresponding capability might be
+                 title=\E]2;%p1%s^G,
+          + tset:
+               o use  the  system's  default  values  for CKILL and other
+                 default control characters.
+               o correct  interchanged  defaults  for  kill and interrupt
+                 characters, which caused it to report unnecessarily.
 
    Major bug fixes:
-     * 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).
+     * prevent  recursion  in  wgetch()  via wgetnstr() if the connection
+       cannot  be  switched  between cooked/raw modes because it is not a
+       TTY.
+     * correct  a  case  in _nc_remove_string(), used by define_key(), to
+       avoid  infinite loop if the given string happens to be a substring
+       of other strings which are assigned to keys.
+     * modify  logic  of acsc to use the original character if no mapping
+       is defined, rather than a null.
+     * several  improvements  for  handling  multi-cell  display  of wide
+       characters.
+          + modify  setcchar()  to allow converting control characters to
+            complex characters.
+          + correct  handling of multibyte characters in waddch_literal()
+            which force wrapping because they are started too late on the
+            line.
+          + modify  setcchar()  to  allow  for wchar_t input strings that
+            have more than one spacing character.
+     * other fixes for wide-character support:
+          + rewrote  lib_acs.c  to  allow  PutAttrChar() to decide how to
+            render alternate-characters, i.e., to work with Linux console
+            and UTF-8 locale.
+          + implement  a  workaround  so  that  line-drawing  works  with
+            screen's  crippled  UTF-8  support (tested with 3.9.13). This
+            only  works with the wide-character support (--enable-widec);
+            the  normal  library  will  simply suppress line-drawing when
+            running in a UTF-8 locale in screen.
+          + corrections to lib_get_wstr.c:
+               o null-terminate   buffer   passed  to  setcchar(),  which
+                 occasionally failed.
+               o map    special    characters    such   as   erase-   and
+                 kill-characters  into  key-codes  so  those will work as
+                 expected even if they are not mentioned in the terminfo.
+     * modify  setupterm()  to  check  if the terminfo and terminal-modes
+       have  already  been  read.  This ensures that it does not reinvoke
+       def_prog_mode()  when an application calls more than one function,
+       such as tgetent() and initscr().
+     * fix    form_driver()    cases    for   REQ_CLR_EOF,   REQ_CLR_EOL,
+       REQ_DEL_CHAR,  REQ_DEL_PREV and REQ_NEW_LINE, which did not ensure
+       the   cursor   was   at   the   editing   position  before  making
+       modifications.
+     * correct keybound(), which reported definitions in the wrong table,
+       i.e., the list of definitions which are disabled by keyok().
+     * fixes related to safe_sprintf.c:
+          + correct  an  allocation  size  in  safe_sprintf.c for the "*"
+            format code.
+          + correct  safe_sprintf.c  to  not return a null pointer if the
+            format happens to be an empty string.
+          + make   return   value  from  _nc_printf_string()  consistent.
+            Before,  depending on whether --enable-safe-sprintf was used,
+            it might not be cached for reallocating.
+     * other low-level improvements to the optimization code include:
+          + if  the  output  is  a  socket or other non-tty device, use 1
+            millisecond  for  the  cost  in  mvcur;  previously  it was 9
+            milliseconds because the baudrate was not known.
+          + modify lib_getch.c to avoid recursion via wgetnstr() when the
+            input is not a tty and consequently mode-changes do not work.
+          + fix  several  places  in tack/pad.c which tested and used the
+            parameter- and parameterless strings inconsistently.
+          + change several tputs() calls in scrolling code to use putp(),
+            to enable padding which may be needed for some terminals.
+          + improve  mvcur() by checking if it is safe to move when video
+            attributes   are   set  (msgr),  and  if  not,  reset/restore
+            attributes   within   that  function  rather  than  doing  it
+            separately in the GoTo() function in tty_update.c.
+          + use tputs() rather than putp() in a few cases in tty_update.c
+            since the corresponding delays are proportional to the number
+            of       lines      affected:      repeat_char,      clr_eos,
+            change_scroll_region.
+     * correct  line/column  reference in adjust_window(), needed to make
+       special windows such as curscr track properly when resizing.
+     * fix a potential recursion between napms() and _nc_timed_wait()
+     * rewrote lib_insch.c, combining it with lib_insstr.c so both handle
+       tab and other control characters consistently.
+     * do  not  try  to open gpm mouse driver if standard output is not a
+       tty; the gpm library does not make this check.
 
    Portability:
      * configure script:
-          + 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.
+          + new options:
+
+              --with-abi-version option.
+                      addresses  platforms  where packagers have diverged
+                      from ncurses ABI numbering.
+
+              --with-manpage-format=catonly
+                      addresses   behavior  of  BSDI,  allow  install  of
+                      man+cat   files   on  NetBSD,  whose  behavior  has
+                      diverged by requiring both to be present.
+
+              --with-manpage-aliases
+                      extends  "--with-manpage-aliases"  to  provide  the
+                      option   of  generating  ".so"  files  rather  than
+                      symbolic links for manpage aliases.
+
+              --with-rel-version
+                      workaround  to force libtool on Darwin generate the
+                      "same"  library  names  as with the "--with-shared"
+                      option.  The  Darwin  ld program does not work well
+                      with a zero as the minor-version value.
+
+              --with-trace
+                      simplifies defining TRACE to incorporate trace() in
+                      libraries.
+
+          + fixes/improvements for cross-compiling:
+               o allow BUILD_CC and related configure script variables to
+                 be overridden from the environment.
+               o use AC_CHECK_TOOL to get proper values for AR and LD for
+                 cross compiling.
+               o use $cross_compiling variable in configure script rather
+                 than  comparing  $host_alias  and  $target  alias, since
+                 "host"  is traditionally misused in autoconf to refer to
+                 the target platform.
+               o modify  run_tic.in to avoid using wrong shared libraries
+                 when cross-compiling.
+          + fixes for Mac OS X:
+               o fix  a  redefinition  of $RANLIB in the configure script
+                 when libtool is used.
+               o modify  MKlib_gen.sh to avoid passing "#" tokens through
+                 the  C  preprocessor.  This  works  around  Mac  OS  X's
+                 preprocessor,  which  insists  on adding a blank on each
+                 side of the token.
+          + workarounds for broken tools:
+               o add configure check for wchar_t and wint_t types, rather
+                 than  rely on preprocessor definitions. Also work around
+                 for  gcc  fixinclude  bug which creates a shadow copy of
+                 curses.h if it sees these symbols apparently typedef'd.
+               o modify  configure  script  to omit -Winline for gcc 3.3,
+                 since that feature is broken.
+               o several script fixes to work around the ironically named
+                 POSIXLY_CORRECT feature of GNU sed 4.0.
+               o modify  configure script to avoid using "head -1", which
+                 does not work if POSIXLY_CORRECT (sic) is set.
+               o update    configure    script   to   reflect   fix   for
+                 AC_PROG_GCC_TRADITIONAL,  which  is  broken  in autoconf
+                 2.5x for Mac OS X 10.2.3.
+               o repair  check  for missing C++ compiler, which is broken
+                 in autoconf 2.5x by hardcoding it to g++.
+          + corrected  ifdef's  relating  to configure check for wchar_t,
+            etc.
+          + remove configure script check to allow -Wconversion for older
+            versions of gcc
+          + modify  configure  script to accommodate libtool 1.5, as well
+            as  add an parameter to the "--with-libtool" option which can
+            specify the pathname of libtool.
+          + change  several  sed  scripts to avoid using "\+" since it is
+            not  a  BRE  (basic  regular expression). One instance caused
+            terminfo.5 to be misformatted on FreeBSD.
+          + use  '%'  as  sed  substitute  delimiter in run_tic script to
+            avoid problems with pathname delimiters such as ':' and '@'.
+          + add  -D_XOPEN_SOURCE=500  if  needed  when  configuring  with
+            "--enable-widec", to get mbstate_t declaration on HPUX 11.11.
      * library:
-          + 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:
-          + 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".
+          + adjust  include-options  in  CF_ETIP_DEFINES to avoid missing
+            ncurses_dll.h,  fixing special definitions that may be needed
+            for etip.h.
+          + modify CF_LIB_SUFFIX for Itanium releases of HP-UX, which use
+            a ".so" suffix.
+          + improve  ifdef's to guard against redefinition of wchar_t and
+            wint_t in curses.h.
+          + remove  an  #undef for KEY_EVENT from curses.tail used in the
+            experimental   NCURSES_WGETCH_EVENTS   feature.   The  #undef
+            confuses Debian dpkg's build script.
 
                               Features of Ncurses
 
 
    cdk
           Curses Development Kit
-          [3]http://invisible-island.net/cdk.
-          [4]http://www.vexus.ca/CDK.html
+          [3]http://invisible-island.net/cdk/
+          [4]http://www.vexus.ca/products/CDK/
 
    ded
           directory-editor
-          [5]http://invisible-island.net/ded.
+          [5]http://invisible-island.net/ded/
 
    dialog
           the  underlying  application used in Slackware's setup, and the
           basis for similar applications on GNU/Linux.
-          [6]http://invisible-island.net/dialog.
+          [6]http://invisible-island.net/dialog/
 
    lynx
           the character-screen WWW browser
-          [7]http://lynx.isc.org/release.
+          [7]http://lynx.isc.org/release/
 
    Midnight Commander
           file manager
-          [8]www.gnome.org/mc/.
+          [8]http://www.ibiblio.org/mc/
 
    mutt
           mail utility
-          [9]http://www.mutt.org.
+          [9]http://www.mutt.org/
 
    ncftp
           file-transfer utility
-          [10]http://www.ncftp.com.
+          [10]http://www.ncftp.com/
 
    nvi
           New vi versions 1.50 are able to use ncurses versions 1.9.7 and
           later.
-          [11]http://www.bostic.com/vi/.
+          [11]http://www.bostic.com/vi/
 
-   tin
-          newsreader, supporting color, MIME
-          [12]http://www.tin.org.
+   pinfo
+          Lynx-like info browser.
+          [12]http://dione.ids.pl/~pborys/software/pinfo/
 
-   taper
-          tape archive utility
-          [13]http://members.iinet.net.au/~yusuf/taper/.
+   tin
+          newsreader, supporting color, MIME [13]http://www.tin.org/
 
    vh-1.6
           Volks-Hypertext browser for the Jargon File
-          [14]http://www.bg.debian.org/Packages/unstable/text/vh.html.
+          [14]http://www.debian.org/Packages/unstable/text/vh.html
 
    as well as some that use ncurses for the terminfo support alone:
 
    minicom
           terminal emulator
-          [15]http://www.pp.clinet.fi/~walker/minicom.html.
+          [15]http://www.netsonic.fi/~walker/minicom.html
 
    vile
           vi-like-emacs
-          [16]http://invisible-island.net/vile.
+          [16]http://invisible-island.net/vile/
 
    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
-   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
+   Zeyd  Ben-Halim started it from a previous package pcurses, written by
+   Pavel  Curtis.  Eric  S. Raymond continued development. Jürgen Pfeifer
+   wrote  most of the form and menu libraries. Ongoing work is being done
+   by  [17]Thomas  Dickey.  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 [18]bug-ncurses@gnu.org.
 
    To   join   the   ncurses   mailing   list,   please  write  email  to
    bug-ncurses-request@gnu.org containing the line:
@@ -342,7 +447,7 @@ Who's Who and What's What
    and testing of this package.
 
    Beta  versions  of ncurses and patches to the current release are made
-   available at [23]ftp://invisible-island.net/ncurses.
+   available at [19]ftp://invisible-island.net/ncurses/ .
 
 Future Plans
 
@@ -355,37 +460,34 @@ Future Plans
 
 Other Related Resources
 
-   The  distribution  includes  and uses a version of the terminfo-format
-   terminal    description    file    maintained    by    Eric   Raymond.
-   [24]http://earthspace.net/~esr/terminfo.
+   The  distribution  provides  a  newer  version  of the terminfo-format
+   terminal  description file maintained by [20]Eric Raymond . Unlike the
+   older  version, the termcap and terminfo data are provided in the same
+   file.
 
    You  can  find  lots  of  information  on  terminal-related topics not
-   covered in the terminfo file at [25]Richard Shuford's archive.
+   covered in the terminfo file at [21]Richard Shuford's archive .
 
 References
 
-   1. ftp://ftp.gnu.org/pub/gnu/ncurses
-   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
+   1. ftp://ftp.gnu.org/gnu/ncurses/
+   2. ftp://invisible-island.net/ncurses/
+   3. http://invisible-island.net/cdk/
+   4. http://www.vexus.ca/products/CDK/
+   5. http://invisible-island.net/ded/
+   6. http://invisible-island.net/dialog/
    7. http://lynx.isc.org/release/
-   8. file://localhost/usr/build/ncurses/ncurses-5.2-20021012/doc/html/www.gnome.org/mc/
+   8. http://www.ibiblio.org/mc/
    9. http://www.mutt.org/
   10. http://www.ncftp.com/
   11. http://www.bostic.com/vi/
-  12. http://www.tin.org/
-  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://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
-  20. http://www.familiepfeifer.de/Contact.aspx?Lang=en
-  21. mailto:dickey@herndon4.his.com
-  22. mailto:bug-ncurses@gnu.org
-  23. ftp://invisible-island.net/ncurses
-  24. http://earthspace.net/~esr/terminfo
-  25. http://www.cs.utk.edu/~shuford/terminal_index.html
+  12. http://dione.ids.pl/~pborys/software/pinfo/
+  13. http://www.tin.org/
+  14. http://www.debian.org/Packages/unstable/text/vh.html
+  15. http://www.netsonic.fi/~walker/minicom.html
+  16. http://invisible-island.net/vile/
+  17. mailto:dickey@invisible-island.net
+  18. mailto:bug-ncurses@gnu.org
+  19. ftp://invisible-island.net/ncurses/
+  20. http://www.catb.org/~esr/terminfo/
+  21. http://www.cs.utk.edu/~shuford/terminal_index.html
index 9f6db419a51f6273216375a68d0b26c68f693844..b1743cfa6e3a7dcafcb11c5afd57b1c6d36f3066 100644 (file)
 ##############################################################################
 #
 #  Author:  Juergen Pfeifer, 1996
-#  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 #
 #  Version Control
-#  $Revision: 1.14 $
+#  $Revision: 1.15 $
 #
 SHELL          = /bin/sh
 THIS           = Makefile
index 21e9b4cd86fb0fb5d09849e662025c95c9bf9eb7..be8425969de98da6208e4f97020fcca5020e4a29 100644 (file)
@@ -27,7 +27,6 @@
 -------------------------------------------------------------------------------
 
 --  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
index bccea45f57413775fd7cf3bf6cf570d38557c9cd..aea7fdd7238e200d6236dea5cbfc8c2cb103028a 100644 (file)
@@ -1,5 +1,5 @@
 ##############################################################################
-# Copyright (c) 1998 Free Software Foundation, Inc.                          #
+# Copyright (c) 1998-2002,2003 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"), #
 ##############################################################################
 #
 #  Author:  Juergen Pfeifer, 1996
-#  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 #
 #  Version Control
-#  $Revision: 1.41 $
+#  $Revision: 1.44 $
 #
 .SUFFIXES:
 
@@ -53,6 +52,7 @@ INSTALL_DATA  = @INSTALL_DATA@
 AWK            = @AWK@
 LN_S           = @LN_S@
 
+CC             = @CC@
 HOST_CC                = @BUILD_CC@
 CFLAGS         = @CFLAGS@
 
@@ -82,8 +82,6 @@ DEL_ADAMODE   = sed -e '/^\-\-\ \ \-\*\-\ ada\ \-\*\-.*/d'
 
 GNATHTML       = `type -p gnathtml || type -p gnathtml.pl`
 GNATHP          = www.gnat.com
-MAIL            = www.familiepfeifer.de/Contact.aspx?Lang=en
-HOMEP           = www.familiepfeifer.de/juergen
 
 ################################################################################
 ALIB            = @cf_ada_package@
@@ -171,9 +169,9 @@ install.libs :: $(ADA_INCLUDE)
 install \
 install.libs :: $(ADA_OBJECTS)
        @echo installing package $(ALIB) in $(ADA_OBJECTS)
-       @chmod a-wx $(ADA_SRCDIR)/*.ali
+       @-chmod a-wx $(ADA_SRCDIR)/*.ali
        @$(top_srcdir)/tar-copy.sh '$(ALIB)[-.]*.ali' $(ADA_SRCDIR) $(ADA_OBJECTS)
-       @chmod u+x $(ADA_SRCDIR)/*.ali
+       @-chmod u+x $(ADA_SRCDIR)/*.ali
 
 uninstall \
 uninstall.libs ::
@@ -420,11 +418,9 @@ adahtml:
           sed -e 's%"&gt;%">%g' |\
           sed -e 's/3X/3x/g' |\
           sed -e 's/$$\([ABCDEFGHIJKLMNOPQRSTUVWXZabcdefghijklmnopqrstuvwxz0123456789_]*:.*\)\$$/@\1@/' |\
-          sed -e 's%Juergen Pfeifer%<A HREF="http://$(HOMEP)">J\&uuml;rgen Pfeifer</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
+       done
        @rm -f *.ad[sb] *.ali *.tmp
        @for f in funcs.htm main.htm ; do \
          sed -e "\%<A HREF=funcs/ .htm>\[ \]</A>%d" < html/$$f > $$f ;\
index 11ba3d73706a4417fcf966bf57183896043bfc3a..7a5bbedf6324229bd2cfa4298b3164c2e7eb18a3 100644 (file)
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1996                                         *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /*
     Version Control
-    $Revision: 1.35 $
+    $Revision: 1.36 $
   --------------------------------------------------------------------------*/
 /*
   This program generates various record structures and constants from the
index aacac4f59d4a3758a7ec2e4fea7074bd1d5b446e..4fc742a2354230016798ff1be905d98c107e4f6f 100644 (file)
@@ -36,9 +36,8 @@ include(M4MACRO)----------------------------------------------------------------
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.14 $
+--  $Revision: 1.15 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Base_Defs')
index 79726781e404789462062a6b4c0c7a0db772c81d..8819844a70ec1cd18b3f2a4c8f001d634430ea81 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index 6f99e8544b024f147f67f81cc02d4f33f507bd61..41398836e5b5ea58b9c78234be607afbede4ac0f 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.14 $
+--  $Revision: 1.15 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index b07618aebfddf6abf9b6f76b3e26a7ca70f6af07..0c4420d8f9764ba9e6340baacdb5f9275757f24c 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index 9123f9d97261ce41afcc7aa36aa6b74bb8b7e406..e6570c28bdd2740cc7123e6a192f70bf48f625dd 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.26 $
+--  $Revision: 1.27 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Form_Base_Defs')
index 1c42bbebb9944fab8679c2363005e15340c3075e..6a5ab8096b40e35fc834d9bcbbb0310dbd1db7b3 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index 87ffadc7fcbd3e642b6cd21355485be6c6197124..696149b987163ceda5c225a00c8c0db8e62c285e 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index ba620792b379417f381aaeafa00be1e96952b7ec..6faa0539f98959274f92818673b5f74ced824f1d 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.23 $
+--  $Revision: 1.24 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Menu_Base_Defs')
index 84eeacb2962c886e9eebf1357326bf4480ced7cd..bb9516f708a086468ed65259148e033abd6116bf 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.21 $
+--  $Revision: 1.22 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Mouse_Base_Defs')
index 4b9a85814da753c1285b72e5e3d933d2650b76ab..e6def9b03bb78cae791c5f33bb509c17a87b64cd 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index 7d571b9e97ae531f4a8dc5766f5608708350386c..71252180f49e7bc4b648ca8150228b8ce1422c9a 100644 (file)
@@ -37,9 +37,8 @@ include(M4MACRO)dnl
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.16 $
+--  $Revision: 1.17 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with System;
index bd879cdde4329441a868a033c9ac8d9be82a37bb..a8e9795b20754e7b788f6ef10932cae1040be1f9 100644 (file)
@@ -36,9 +36,8 @@ include(M4MACRO)----------------------------------------------------------------
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.30 $
+--  $Revision: 1.31 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 include(`Base_Defs')
index 23cf94f80f05a3b2497ad93d5ee93a27d5ec0812..8c8dd72f0949c9b9330c52caeb9adb411cd6f0ba 100644 (file)
 ##############################################################################
 #
 #  Author:  Juergen Pfeifer, 1996
-#  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 #
 #  Version Control
-#  $Revision: 1.29 $
+#  $Revision: 1.30 $
 #
 .SUFFIXES:
 
index 93f1713959cdef9f2fe875236e04cdf2bbf69bf3..176073b0bb59197171a8e85136cc060d7c6d4019 100644 (file)
@@ -7,7 +7,7 @@
 --                                 B O D Y                                  --
 --                                                                          --
 ------------------------------------------------------------------------------
--- Copyright (c) 2000 Free Software Foundation, Inc.                        --
+-- Copyright (c) 2000,2004 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            --
@@ -35,7 +35,7 @@
 ------------------------------------------------------------------------------
 --  Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
 --  Version Control
---  $Revision: 1.2 $
+--  $Revision: 1.3 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --  A simplified version of the  GNU getopt function
@@ -47,9 +47,7 @@ with Ada.Text_IO; use Ada.Text_IO;
 
 package body ncurses2.getopt is
 
-   opterr : Character := Character'Val (1);
    optopt : Character := '?';
-   initialized : Boolean := False;
 
    nextchar : Natural := 0;
 
index d4f2b8a03286421c7d4e51239ab5360b2a970316..214c735bf9ac685ef6a9330ed7c0c39c53d93607 100644 (file)
@@ -7,7 +7,7 @@
 --                                 B O D Y                                  --
 --                                                                          --
 ------------------------------------------------------------------------------
--- Copyright (c) 2000 Free Software Foundation, Inc.                        --
+-- Copyright (c) 2000,2004 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            --
@@ -35,7 +35,7 @@
 ------------------------------------------------------------------------------
 --  Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
 --  Version Control
---  $Revision: 1.1 $
+--  $Revision: 1.2 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --  TODO use Default_Character where appropriate
@@ -302,7 +302,6 @@ package body ncurses2.m is
    c : Integer;
    c2 : Character;
    optind : Integer := 1; -- must be initialized to one.
-   type stringa is access String;
    optarg : getopt.stringa;
 
    length : Integer;
index f769733cd4a2a8ce99f3f00269e806c4ad58169b..c576f3f38c23cf2aa5ac48a47e5b45e18f6be968 100644 (file)
@@ -35,9 +35,8 @@
 ------------------------------------------------------------------------------
 --  Author:  Laurent Pautet <pautet@gnat.com>
 --  Modified by:  Juergen Pfeifer, 1997
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.5 $
+--  $Revision: 1.6 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --                                                                          --
index 7eccb485f56e1a6914d0cdfaaf82d6ffbd7addfd..3ad1912c5e4951bea968f0d39143f6d793413917 100644 (file)
@@ -35,9 +35,8 @@
 ------------------------------------------------------------------------------
 --  Author:  Laurent Pautet <pautet@gnat.com>
 --  Modified by:  Juergen Pfeifer, 1997
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.5 $
+--  $Revision: 1.6 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --                                                                          --
index 03b6e74120b02d542b01433f177f9bf5c229274f..c49f37d6024638d171c8862f1c2c6e1a09fbf3dc 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index dc70abb9f41945890fe91dda1ad8f40a83012227..6d9b4e8df80fbcdfe65745a0132ec69af6b494c4 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Sample.Curses_Demo.Attributes is
index 7d80bfd8dfbd09cfd995ee96362a51a53dc9cc62..34a0ab1156ec24590ea4437d01f603b8a73391d1 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.12 $
+--  $Revision: 1.13 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index e7774f2b09407685afe33d9cc20f8bcce12e4eca..ad78d0d0a750a42921dd46861f9edf8d8b26aaa2 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Sample.Curses_Demo.Mouse is
index 60965f964c99625cd99f92a0a3d9ad27833193ec..aab45c29890a20be2a70e7baec1a9b2e3b320a7b 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index d90da47526fc6a8802250bfe303e031d107e472f..ed4ad0f019f8eb2e6bfe0f7531e0a73e6d543084 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Sample.Curses_Demo is
index 9697818313658c0cc98587c0e8b7d82e28c1a386..705e02da5e5ffdd321313884ace41a848514f800 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.14 $
+--  $Revision: 1.15 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --  Poor mans help system. This scans a sequential file for key lines and
index 50ec3fb0c7ea950b7b378b750e3e5d48e1f5e435..18617ac46add4a5d5066780639a09995ad342444 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --  Poor mans help system. This scans a sequential file for key lines and
index c7874df35ba8e86c842f700556421c875fcd886b..712fb5d122837edb5bfbc2f8a8a89ddec9839a32 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.12 $
+--  $Revision: 1.13 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Characters.Latin_1; use Ada.Characters.Latin_1;
index 99334eaabe19e8f5c09ce23cd398f56d81f6aa0c..2317e14504020f3565618881e488b0c28fe46eff 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use  Terminal_Interface.Curses;
index 4cf1fab32dc270c4b0d9f8819e017422538dcc78..667df4ddec1cf6d162433ed28cc8b7aba73b1d6b 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Sample.Form_Demo.Aux;
index 912a6bf21c6f4bc9deda896a0808a9594f278c4a..4a5641213ed640d09c1d175290ee67b1378fa3a8 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses;
index ff779c6d049240c3c9625731badcf86e278f9975..c5df36f7c0bf4cb99c5b986d400943450230c285 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index b9ebed6cc869774fd68264dc74b7db2b0aec24fa..bd33f578750d2de6f311306a187aeabc8a69abbe 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Sample.Form_Demo is
index 8009ab622992335f5e98e47e118aeffc0e18eef9..9c7a31e8e38860a2bd8ce9d3c2a5d8e956511e56 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Unchecked_Deallocation;
index fb56b21d29560879bf9d555eb1726ca1a20db54f..e20f619acd4617ad8317711586ae3c8b39ffb0b8 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index 78bb76d04cae4a49cd454ff8660287c339ae262f..2c51e94193d512ff5c85a75d013b0344095ba494 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Calendar; use Ada.Calendar;
index f3a3314e458a589935925082f6d1fdf58c90355d..aa0a0c29e9f1eea2b62a0fb32bfaeb6c6c855758 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index 8942921cf11e36d1821e8b389f1a96c7e356d865..aed5a37405dc2420d224bebbc4ccbd86bced0612 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index c8ee9cb613ce8600c5cbc63d3d90460db9ed810c..c1c8e7996e2a4af008f91a751ce8dc313e348c5c 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index 92b9ccd4635d3d951bba9643dfa3debb0866f558..60043581c02c6571b5b7c6c9d1463ed956232fbb 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Strings; use Ada.Strings;
index be9f8f8cd9d56362bc313b90b32801da5a983e19..ac5b1399db0143b1cda3a24ebb2db5b867b621aa 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index 5422ef91efbc1bb65820383862eb4301aa3a347d..bb76c4cba78c0380c4f5785c7aa3559af69ff00a 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index 9b428813dbbd094d135eaa86c5af49e0500ad4a7..2d2e06acce9ef97a6e72bde981c2d9d0cbd7eacd 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Characters.Latin_1; use Ada.Characters.Latin_1;
index 5171aebb6b1023c4d85984a4e60631e04a528e7c..964e38e6e05cec013721232f061205a450e71606 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use  Terminal_Interface.Curses;
index b203cc24e975ceebbf95528a8cc7db5fd382008c..6098a2504a9db90aa9cfca76251dd549abed4786 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Sample.Menu_Demo.Aux;
index d1b7cde4b76123a3bfcfe434aac37c23e27835aa..1a82f9fdb189f23fef9a819a5473f2ace2bf80f7 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses;
index 8793db24d4427b316531b385d49e177c5c267267..a0ebf6952e144fbb99787f976272485917c02133 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.12 $
+--  $Revision: 1.13 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses; use Terminal_Interface.Curses;
index 40b1e92273389aeb020dfc069e523803b17c4f86..b071afc8277d23da9b0ef7d61f5d1e2ca2fbc97a 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Sample.Menu_Demo is
index 15c55e953bc2ef0ac1bb6b9d7542e4b4e804bd95..cd289b91cbd6dd67d21956a67a889d5c6ade981a 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses.Forms; use Terminal_Interface.Curses.Forms;
index 78665039632c331f4fe1f97353f7db5f82c750d3..7e74c33d136471fe41df61dca48de5f8fa71c2b7 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses.Forms; use Terminal_Interface.Curses.Forms;
index 0cd370eb2423d00ef65b260d6329051b1639224c..43b24232becab26c1db776637bfef1a7cb7a7fb9 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Numerics.Generic_Elementary_Functions;
index e35ce1026e4164dc66d7e0b4d21ccde4bac494f6..d3f5a188baf00d635a5b317c898b47a90e5759ec 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Sample.Text_IO_Demo is
index 0e4455687ab6bea50aaab690c43c333863d9fca4..962963ed1b92c02a59ca8469a0914460dbc40f3d 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Text_IO;
index 588c211423788bfff07de48f5db6b2b6c8cd0ff4..9d0647dad78de23872cbd8de629f63dcb9782e37 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Sample is
index e81355eac3ad301c6671cf53a1893f86eb7cbf2d..e6581317f40178754503741013ae2a2c0542272a 100644 (file)
@@ -35,9 +35,8 @@
 ------------------------------------------------------------------------------
 --  Author:  Laurent Pautet <pautet@gnat.com>
 --  Modified by:  Juergen Pfeifer, 1997
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.6 $
+--  $Revision: 1.7 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --  This package has been contributed by Laurent Pautet <pautet@gnat.com>   --
index e34c95c436ac50270e6c695d389a6bd7af15a661..e9e3ee8b350107b917bbeee33db70d9927ada5a3 100644 (file)
@@ -35,9 +35,8 @@
 ------------------------------------------------------------------------------
 --  Author:  Laurent Pautet <pautet@gnat.com>
 --  Modified by:  Juergen Pfeifer, 1997
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --  This package has been contributed by Laurent Pautet <pautet@gnat.com>   --
index b2cc6cfeff8e4ff55c92fce2451111c15989a541..1cc91c15d7407f61aab7d9d0d3ebf9ec15fc93f4 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Sample; use Sample;
index b0a81c8e27dc29d09eae5a3a23facc59727aad25..8888169160a47d334450b558bf6e5264dab1fa94 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 procedure Tour;
index a9c7081782a83129952b146f8a1637c8a95c4fa0..01823144f9dee7dd62e465d58db8242e9ac3c35c 100644 (file)
 ##############################################################################
 #
 #  Author:  Juergen Pfeifer, 1996
-#  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 #
 #  Version Control
-#  $Revision: 1.26 $
+#  $Revision: 1.28 $
 #
 .SUFFIXES:
 
@@ -214,19 +213,19 @@ $(ABASE).o: $(srcdir)/$(ABASE).adb $(BASEDEPS)
 
 
 $(ABASE)-terminfo.o: \
-               $(ABASE)-terminfo.ads \
+               $(srcdir)/$(ABASE)-terminfo.ads \
                $(srcdir)/$(ABASE)-terminfo.adb $(BASEDEPS)
        $(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-terminfo.adb
 
 
 $(ABASE)-termcap.o: \
-               $(ABASE)-termcap.ads \
+               $(srcdir)/$(ABASE)-termcap.ads \
                $(srcdir)/$(ABASE)-termcap.adb $(BASEDEPS)
        $(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-termcap.adb
 
 
 $(ABASE)-putwin.o: \
-               $(ABASE)-putwin.ads \
+               $(srcdir)/$(ABASE)-putwin.ads \
                $(srcdir)/$(ABASE)-putwin.adb $(BASEDEPS)
        $(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-putwin.adb
 
index bcf838752d5abcdd11971c4b46f60e59ec4aea11..812e8cc1438fe514c23f429b115d1f0cfb27d937 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package body Terminal_Interface.Curses.Aux is
index bd42d3f9863ea3346bb55b07e3fdd21951dbc74b..5d1ef200e742a7efd92826b396f95560030cba82 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.7 $
+--  $Revision: 1.8 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index f4eadf9e8e3951074c91777c19a9490616bd772b..6f0b79d76eeeb716e79d1246d1ce8b8ada054e73 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Terminal_Interface.Curses.Forms.Field_Types.Alpha is
index 2f2d44d481dc780d51915f60984c74809e7c5caa..f10321b4a7013bf929d52ea07b79b0fd97ad17bb 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.7 $
+--  $Revision: 1.8 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index 4e165fea265dea4a1e83519c755ecb790fef1367..1f219508028cc0d226dbb2102f187d47b4e2e60f 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric is
index 89972d4f79b5373a6c918f0b9475cbf1d976e383..84f276af83ee677d9edc4308ef4f199934c1c4b4 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.6 $
+--  $Revision: 1.7 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Characters.Handling; use Ada.Characters.Handling;
index 7bff22f4cbd46452ddcecb288dfd66b263a9a3ec..48fad09c2f252ce71991028d317dad867fb39293 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 generic
index d0273294e04dc31d3472b2c7a8cd89dcd8ae72d0..8be20f23e83b68958092785d27b9a8691ecf0619 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.6 $
+--  $Revision: 1.7 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Unchecked_Deallocation;
index b9c1b00dcfe99a23b5ef794e78817a5b8c1dba2a..5a7e411ff944d480fb95df7225ebc3848ce3a8e3 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C.Strings;
index 621f4c7c34d3f84717a1c834f68a55aa870455c3..1e279b4c245825953bb30addaad1cbf62eea86fd 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.7 $
+--  $Revision: 1.8 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index 75652cc4d2a8904a03471c6945c717a246560237..b285ca25562b54c194a1b8585df403894274e7ff 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Terminal_Interface.Curses.Forms.Field_Types.IntField is
index 60a403bc3b8f2270656a1231c7ae566ddeb3cec7..a86b5fe12c050613fd79f293f73b8b3676c804b9 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.7 $
+--  $Revision: 1.8 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index 11398c06feb220919d53d3ddfb56f846b0c5fbae..6d0aef061083d322c459f244aa725d4686230d75 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address is
index bd3daf26f3d1de1e05ac96450bb18ef483945f6d..e580df350311a2dcfbf46ece4ef4c55a54d6f389 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.8 $
+--  $Revision: 1.9 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index cbb6b00c26ed9d12822ae30659ceccbf654aa42e..f211bc87bc2350d0b0a72cd15f96b12b46e1baf4 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Terminal_Interface.Curses.Forms.Field_Types.Numeric is
index a699f0afd3b4434ce4a2d5503dc65bff098ee270..cbd9e2f3683cda67b875c7d67abefd6934233f47 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.7 $
+--  $Revision: 1.8 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C; use Interfaces.C;
index 635f37baa7fc0247a54470ef72c819582f7f7828..1e451ab85ca4c3c1999c2e0520a052469a9b821a 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Terminal_Interface.Curses.Forms.Field_Types.RegExp is
index 2d8f60c012986c2d794515b3efdc01ced2810f7b..d9ed454b0a65129fff5111b31960c67b1f709f6a 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Unchecked_Conversion;
index c9a2abd5526b7f5953c88f9c200d2096623b19c4..d970c3a76fad85c9e9cb0d6d06bd38640778e255 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index 5f82b09811767a5094b58cada9de55680c4f7aec..6e348b93dd2b34e1ae3c03bb98b10d57283ccfe5 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Unchecked_Conversion;
index 4cca2a4dd42b0a0e8a5bc25a4114163d3daccdb6..0d09fcf2a1d82f875ace2b7e29d664ebf406c039 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index 7b83be65b14a8ec99385571165d9d77bc4fd0ead..e003058b0ede8aa6fb5250fa24cc2205a1f48249 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index 04b09660d0b0104eb5051df17626e37c49544784..817ebe59273758c5aaac681c87b810b5baa0b01e 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses.Aux; use  Terminal_Interface.Curses.Aux;
index 3b897faa14f94378e550f3a8f5202dce6902bf31..50c6708fcf2d5738882576caa5b0f5d4ea569873 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 --  |
index b9be41a889f2b585cfebbc741e4ec187d4e65f97..b50b031ba5f85fe27b2cc28eeec768f13cba6d8d 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.21 $
+--  $Revision: 1.22 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Unchecked_Deallocation;
index 56199d10eabc8d6b487f346ac9f3595d8c97a6f5..6c35d338fdbec0324c018404ffac0c72f39c450e 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index 83a3f95e946ba499488dc2757b77fcd75286c454..20b9e8665ac8142bf1ec55b20d4775249b5f0257 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
index 87097ce12ad3da10b06f238cdc7c93a253cf73b0..3dac213dd8f318deb2ab9ee1333a91840b6c495c 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.21 $
+--  $Revision: 1.22 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Unchecked_Deallocation;
index c2b52a05903dece1d9a302ce9cb953e149dbd56a..52ac522ebfa56501ae93ac47113aecbfa73db409 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.17 $
+--  $Revision: 1.18 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with System;
index fb2c95460066a9459d1206a84529997c7d8729f5..231efaefbc97d5e5a6e3f8b171c559066a1e6aab 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
index f0d246ad65a0a0e57b6b5c61365584fc97e6b151..a5af83a6b5bc7b6d3d286d63b794e6218d2981df 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
index 545ccaa00f58f2c32a80cd5381b432f33aeb265e..986cd6b9bd6ca6d20c44990a1bcb77a90cab8dd3 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.2 $
+--  $Revision: 1.3 $
 --  Binding Version 01.00
 
 with Ada.Streams.Stream_IO.C_Streams;
index 9422078963c4e9d09cff214a21d59a534a0a01bd..d302bdcec452415541ce7923e4b9e7972bc96bf3 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.2 $
+--  $Revision: 1.3 $
 --  Binding Version 01.00
 
 with Ada.Streams.Stream_IO;
index 732a3fd623aaf8d8529d3820550c746aa97e3245..be1da8297ce5c14bff113184241cc8d408b8a23a 100644 (file)
@@ -7,7 +7,7 @@
 --                                 B O D Y                                  --
 --                                                                          --
 ------------------------------------------------------------------------------
--- Copyright (c) 2000 Free Software Foundation, Inc.                        --
+-- Copyright (c) 2000,2004 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            --
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.4 $
+--  $Revision: 1.6 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
@@ -112,7 +111,7 @@ package body Terminal_Interface.Curses.Termcap is
       Length : size_t;
       Txt2   : chars_ptr;
       type t is new char_array (0 .. 1024); --  does it need to be 1024?
-      Return_Buffer : t := (0 => nul);
+      Return_Buffer : t := (others => nul);
    begin
       To_C (Name, Txt, Length);
       Txt2 := tgetstr (Txt, char_array (Return_Buffer));
@@ -133,7 +132,7 @@ package body Terminal_Interface.Curses.Termcap is
       Length : size_t;
       Txt2   : chars_ptr;
       type t is new char_array (0 .. 1024); --  does it need to be 1024?
-      Phony_Txt : t := (0 => nul);
+      Phony_Txt : t := (others => nul);
    begin
       To_C (Name, Txt, Length);
       Txt2 := tgetstr (Txt, char_array (Phony_Txt));
index 189891ffc762d6464fe442ea69ca711f1ac21922..dd01396e8b0b177567f7254bd627d0eba40937ed 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.2 $
+--  $Revision: 1.3 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index 25a8eb0a0421a4dce77783bd62ba5778fdd49e7e..657871ce1d4f22e28acc00deb5f3f49fdf4e2938 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.2 $
+--  $Revision: 1.3 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index ced5d4ea33b7edbe4851eccea566981b875328b9..fb39bf1ed6f1820f2c823e6a1e65485a842dd210 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.2 $
+--  $Revision: 1.3 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 
index d7fff5bb75bf72b4994b893d4f21f156988a915d..ecd58e0e06f7388e8c61774d22eea7ea243befcb 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package body Terminal_Interface.Curses.Text_IO.Aux is
index eaa68cb2e1ed7b66f183e77b2705db493d14627c..e14c2e50a082cf5846856cea7b3e8f34d15eb292 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 private package Terminal_Interface.Curses.Text_IO.Aux is
index 4eb6a6d7d3f7ccbd210dcfae75c91874e6ffd2a2..3b5871e2863a6fcf222945bdea5eb51e2d081e62 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses.Text_IO.Float_IO;
index 64a849080880a48c38bcf085e91fc84dacbf9ef6..233eb3c03bc093e20c4437a2fd56ee210485dbd4 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Numerics.Generic_Complex_Types;
index d3a70ddaa6c442de817614d86b9f1ba9e02350ba..02068a06cb1968ca3a84782da7e523e61c6d208d 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Text_IO;
index 2b76feed98b98c4f1040921b55090beb539eaeea..6f6fe75b2677d0b995d08dec99bf39560f0e44ca 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 generic
index 4ad470433f93adde70dcde713e40fb9fc7886369..528873a9e6f744fa6ac91008c58cac38f1cc2873 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Text_IO;
index 2bcee123ddb8e07f80a4f06754d5765c7cdc8656..b221d7ff38e2ea0bf22ced08b46aa218944a10ca 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 generic
index 493450a72dafdd13a8813ace39a3e062c4355aa9..e74f148736fd37c6a641e60f9966e528f28a1c0e 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Text_IO;
index 6ca314dcc24a3d21cfc63284c57456da46b8a3ff..4b8b1366578489bb8947dfcb83e9a0646069adda 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 generic
index ee3cb224ae7ff06b4ebabb7c7db44cec96be4739..19d261b7a8f1a5a207552937aca4247f66e20a20 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Text_IO;
index 35d47b80978555846f51104b69f0fe51ee1c6ce1..085652354317471f4b182053b45fd80fc683b506 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 generic
index fee7e0eb953dbe9fee054edba35a2cab54746dda..e694e082ea6e09369f811f28379fa0e16f42ea88 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Text_IO;
index ba6cb14507c9737aaa620bf8893aadcda86bc979..d8b169a740b76f4c2e0e29aea2d7a121eb8c4292 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 generic
index 0d107aa166a353e5e7e0d5a12863c345d0c3988e..8cc1d4a616bb5c617b988fbe4de437133b7c6609 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.9 $
+--  $Revision: 1.10 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Text_IO;
index a539ac6139ce4f86f0e38052c5273875866c0372..618706fc51f134d92cbd397856ab0fd8a5787ecb 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.10 $
+--  $Revision: 1.11 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 generic
index 01076921c6170f0f110a31418a83de58fc53d18b..cbf1d54098c3d3f4ac2eaec4f4939d42ce006762 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.13 $
+--  $Revision: 1.14 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package body Terminal_Interface.Curses.Text_IO is
index d51922489c112046d931461365a829782fb5c307..2f6c48a1ed2e3394aaaff9beb86a41cb2956cca8 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.12 $
+--  $Revision: 1.13 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Ada.Text_IO;
index a61ef4d4a791b00272db11461da86230cc71d28e..6b510d91a602c88d6c99e4eddd7de41481608486 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.3 $
+--  $Revision: 1.4 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 #if ADA_TRACE then
index f196f3b5e1d3b70037b4e8485305184a1e0f4aeb..0349c80d82e73f4d25ee096b3390b6e73de7da81 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author: Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.28 $
+--  $Revision: 1.29 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with System;
index c7c0984d3314f685bf852262cd17a5f629809a5f..eaaeea9fc717f8dfbca8339ddd0f12c60b66b62f 100644 (file)
@@ -34,9 +34,8 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.11 $
+--  $Revision: 1.12 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 package Terminal_Interface is
diff --git a/INSTALL b/INSTALL
index a1c56ebbe0dbea634de9716b18d153bbedeccdc4..8743d4941cff1b6a14b5d153d6c0aa2ce69b6668 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,4 +1,4 @@
--- $Id: INSTALL,v 1.56 2002/09/01 22:42:11 tom Exp $
+-- $Id: INSTALL,v 1.71 2004/02/07 21:06:05 tom Exp $
 ---------------------------------------------------------------------
              How to install Ncurses/Terminfo on your system
 ---------------------------------------------------------------------
@@ -168,6 +168,11 @@ INSTALLATION PROCEDURE:
     databases are SVr4-compatible, but most seem to be.  Exceptions include
     DEC's Digital Unix (formerly known as OSF/1).
 
+    If you run the test programs WITHOUT installing terminfo, ncurses may
+    read the termcap file and cache that in $HOME/.terminfo, which will
+    thereafter be used instead of the terminfo database.  See the comments
+    on "--enable-getcap-cache", to see why this is a Bad Thing.
+
     It is possible to configure ncurses to use other terminfo database formats.
     A few are provided as examples in the include-directory (see --with-caps).
 
@@ -283,6 +288,12 @@ SUMMARY OF CONFIGURE OPTIONS:
        Compile without hashmap scrolling-optimization code.  This algorithm is
        the default.
 
+    --disable-home-terminfo
+       The $HOME/.terminfo directory is normally added to ncurses' search
+       list for reading/writing terminfo entries, since that directory is
+       more likely writable than the system terminfo database.  Use this
+       option to disable the feature altogether.
+
     --disable-leaks
        For testing, compile-in code that frees memory that normally would not
        be freed, to simplify analysis of memory-leaks.
@@ -312,10 +323,6 @@ SUMMARY OF CONFIGURE OPTIONS:
        Compile without scroll-hints code.  This option is ignored when
        hashmap scrolling is configured, which is the default.
 
-    --enable-add-ons=DIR...
-       This is used to check if this package is a glibc add-on.  This is used
-       only by the glibc makefiles.
-
     --enable-assertions
        For testing, compile-in assertion code.  This is used only for a few
        places where ncurses cannot easily recover by returning an error code.
@@ -454,6 +461,11 @@ SUMMARY OF CONFIGURE OPTIONS:
     --enable-xmc-glitch
        Compile-in support experimental xmc (magic cookie) code.
 
+    --with-abi-version=NUM
+       Override the ABI version, which is used in shared library filenames.
+       Normally this is the same as the release version; some ports have
+       special requirements for compatibility.
+
     --with-ada-compiler=CMD
        Specify the Ada95 compiler command (default "gnatmake")
 
@@ -472,7 +484,7 @@ SUMMARY OF CONFIGURE OPTIONS:
 
     --with-build-cc=XXX
        If cross-compiling, specify a host C compiler, which is needed to
-       compile a few utilties which generate source modules for ncurses.
+       compile a few utilities which generate source modules for ncurses.
        If you do not give this option, the configure script checks if the
        $BUILD_CC variable is set, and otherwise defaults to gcc or cc.
 
@@ -482,7 +494,7 @@ SUMMARY OF CONFIGURE OPTIONS:
        host compiler.
 
     --with-build-cppflags=XXX
-       If cross-compiling, specify the host C preprocesor-flags.  You might
+       If cross-compiling, specify the host C preprocessor-flags.  You might
        need to do this if the target compiler has unusual flags which confuse
        the host compiler.
 
@@ -544,9 +556,25 @@ SUMMARY OF CONFIGURE OPTIONS:
        NOTE:  a few systems build shared libraries with fixed pathnames; this
        option probably will not work for those configurations.
 
-     --with-libtool
-       Generate libraries with libtool.  If this option is selected, then
-       it overrides all other library model specifications.
+     --with-libtool[=XXX]
+       Generate libraries with libtool.  If this option is selected, then it
+       overrides all other library model specifications.  Note that libtool
+       must already be installed, uses makefile rules dependent on GNU make,
+       and does not promise to follow the version numbering convention of
+       other shared libraries on your system.  However, if the --with-shared
+       option does not succeed, you may get better results with this option.
+
+       If a parameter value is given, it must be the full pathname of the
+       particular version of libtool, e.g.,
+               /usr/bin/libtool-1.2.3
+
+    --with-manpage-aliases
+       Tell the configure script you wish to create entries in the
+       man-directory for aliases to manpages which list them, e.g., the
+       functions in the panel manpage.  This is the default.  You can disable
+       it if your man program does this.  You can also disable
+       --with-manpage-symlinks to install files containing a ".so" command
+       rather than symbolic links.
 
     --with-manpage-format=XXX
        Tell the configure script how you would like to install man-pages.  The
@@ -595,6 +623,12 @@ SUMMARY OF CONFIGURE OPTIONS:
     --with-rcs-ids
        Compile-in RCS identifiers.  Most of the C files have an identifier.
 
+    --with-rel-version=NUM
+       Override the release version, which may be used in shared library
+       filenames.  This consists of a major and minor version number separated
+       by ".".  Normally the major version number is the same as the ABI
+       version; some ports have special requirements for compatibility.
+
     --with-shared
        Generate shared-libraries.  The names given depend on the system for
        which you are building, typically using a ".so" suffix, along with
@@ -609,6 +643,9 @@ SUMMARY OF CONFIGURE OPTIONS:
        This is normally chosen automatically based on the type of system
        which you are building on.  We use it for testing the configure script.
 
+    --with-sysmouse
+       use FreeBSD sysmouse interface provide mouse support on the console.
+
     --with-system-type=XXX
        For testing, override the derived host system-type which is used to
        decide things such as the linker commands used to build shared
@@ -630,6 +667,10 @@ SUMMARY OF CONFIGURE OPTIONS:
        Specify a search-list of termcap files which will be compiled into the
        ncurses library (default:  /etc/termcap:/usr/share/misc/termcap)
 
+    --with-trace
+       Configure the trace() function as part of the all models of the ncurses
+       library.  Normally it is part of the debug (libncurses_g) library only.
+
     --without-ada
        Suppress the configure script's check for Ada95, do not build the
        Ada95 binding and related demo.
@@ -673,7 +714,53 @@ COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:
     you may encounter when building a system with different versions of
     ncurses:
 
-    5.3 (pre-release)
+    5.4 (February 8, 2004)
+       Interface changes:
+
+       + add the remaining functions for X/Open curses wide-character support. 
+         These are only available if the library is configured using the
+         --enable-widec option.
+               pecho_wchar()
+               slk_wset()
+
+       + write getyx() and related 2-return macros in terms of getcury(),
+         getcurx(), etc.
+
+       + simplify ifdef for bool declaration in curses.h
+
+       + modify ifdef's in curses.h that disabled use of __attribute__() for
+         g++, since recent versions implement the cases which ncurses uses.
+
+       + change some interfaces to use const:
+               define_key()
+               mvprintw()
+               mvwprintw()
+               printw()
+               vw_printw()
+               winsnstr()
+               wprintw()
+
+       Added extensions:
+               key_defined()
+       Added internal functions:
+               _nc_get_locale()
+               _nc_insert_ch()
+               _nc_is_charable()       wide
+               _nc_locale_breaks_acs()
+               _nc_pathlast()
+               _nc_to_char()           wide
+               _nc_to_widechar()       wide
+               _nc_tparm_analyze()
+               _nc_trace_bufcat()      debug
+               _nc_unicode_locale()
+       Removed internal functions:
+               _nc_outstr()
+               _nc_sigaction()
+       Modified internal functions:
+               _nc_remove_string()
+               _nc_retrace_chtype()
+
+    5.3 (October 12, 2002)
        Interface changes:
 
        + change type for bool used in headers to NCURSES_BOOL, which usually
@@ -693,9 +780,13 @@ COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:
                resize_term()
        Added internal functions:
                _nc_altcharset_name()   debug
+               _nc_reset_colors()
+               _nc_retrace_bool()      debug
+               _nc_retrace_unsigned()  debug
                _nc_rootname()
                _nc_trace_ttymode()     debug
                _nc_varargs()           debug
+               _nc_visbufn()           debug
                _nc_wgetch()
        Removed internal functions:
                _nc_background()
@@ -895,31 +986,34 @@ COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:
 IF YOU ARE A SYSTEM INTEGRATOR:
 ------------------------------
 
-    Beginning with 1.9.9, the ncurses distribution includes both a tset
-    utility and /usr/share/tabset directory.  If you are installing ncurses,
-    it is no longer either necessary or desirable to install tset-jv.
-
     Configuration and Installation:
 
-       Configure with --prefix=/usr to make the install productions put
-       libraries and headers in the correct locations (overwriting any
-       previous curses libraries and headers).  This will put the terminfo
-       hierarchy under /usr/share/terminfo; you may want to override this with
-       --datadir=/usr/share/misc; terminfo and tabset are installed under the
-       data directory.
-
-       Please configure the ncurses library in a pure-terminfo mode; that
-       is, with the --disable-termcap option.   This will make the ncurses
-       library smaller and faster. The ncurses library includes a termcap
-       emulation that queries the terminfo database, so even applications
-       that use raw termcap to query terminal characteristics will win
-       (providing you recompile and relink them!).
-
-       If you must configure with termcap fallback enabled, you may also
-       wish to use the --enable-getcap option.  This option speeds up
-       termcap-based startups, at the expense of not allowing personal
-       termcap entries to reference the terminfo tree.  See the code in
-       ncurses/tinfo/read_termcap.c for details.
+       On platforms where ncurses is assumed to be installed in /usr/lib,
+       the configure script uses "/usr" as a default:
+
+               Linux, FreeBSD, NetBSD, OpenBSD, Cygwin
+
+       For other platforms, the default is "/usr/local".  See the discussion
+       of the "--disable-overwrite" option.
+
+       The location of the terminfo is set indirectly by the "--datadir"
+       configure option, e.g., /usr/share/terminfo, given a datadir of
+       /usr/share.  You may want to override this if you are installing
+       ncurses libraries in nonstandard locations, but wish to share the
+       terminfo database.
+
+       Normally the ncurses library is configured in a pure-terminfo mode;
+       that is, with the --disable-termcap option.  This makes the ncurses
+       library smaller and faster.  The ncurses library includes a termcap
+       emulation that queries the terminfo database, so even applications that
+       use raw termcap to query terminal characteristics will win (providing
+       you recompile and relink them!).
+
+       If you must configure with termcap fallback enabled, you may also wish
+       to use the --enable-getcap option.  This speeds up termcap-based
+       startups, at the expense of not allowing personal termcap entries to
+       reference the terminfo tree.  See comments in
+       ncurses/tinfo/read_termcap.c for further details.
 
        Note that if you have $TERMCAP set, ncurses will use that value
        to locate termcap data.  In particular, running from xterm will
@@ -939,11 +1033,11 @@ IF YOU ARE A SYSTEM INTEGRATOR:
 
     Naming the Console Terminal
 
-       In various Linuxes (and possibly elsewhere) there has been a practice
-       of designating the system console driver type as `console'.  Please
-       do not do this any more!  It complicates peoples' lives, because it
-       can mean that several different terminfo entries from different
-       operating systems all logically want to be called `console'.
+       In various systems there has been a practice of designating the system
+       console driver type as `console'.  Please do not do this!  It
+       complicates peoples' lives, because it can mean that several different
+       terminfo entries from different operating systems all logically want to
+       be called `console'.
 
        Please pick a name unique to your console driver and set that up
        in the /etc/inittab table or local equivalent.  Send the entry to the
index 869e3bdb8a255a37cefec484864ab2bc7ab3509b..3d2297e13cd97edc999c32c337bf1d85d5549460 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
 ./Ada95/src/terminal_interface.ads
 ./INSTALL
 ./MANIFEST
-./Makefile.glibc
 ./Makefile.in
 ./Makefile.os2
 ./NEWS
 ./README
 ./README.emx
-./README.glibc
 ./TO-DO
 ./aclocal.m4
 ./announce.html.in
 ./doc/html/man/form_win.3x.html
 ./doc/html/man/infocmp.1m.html
 ./doc/html/man/infotocap.1m.html
+./doc/html/man/key_defined.3x.html
 ./doc/html/man/keybound.3x.html
 ./doc/html/man/keyok.3x.html
 ./doc/html/man/menu.3x.html
 ./man/form_win.3x
 ./man/infocmp.1m
 ./man/infotocap.1m
+./man/key_defined.3x
 ./man/keybound.3x
 ./man/keyok.3x
 ./man/make_sed.sh
 ./misc/chkdef.cmd
 ./misc/cleantic.cmd
 ./misc/cmpdef.cmd
+./misc/csort
 ./misc/emx.src
 ./misc/form.def
 ./misc/form.ref
 ./ncurses/base/MKunctrl.awk
 ./ncurses/base/README
 ./ncurses/base/define_key.c
+./ncurses/base/key_defined.c
 ./ncurses/base/keybound.c
 ./ncurses/base/keyok.c
 ./ncurses/base/lib_addch.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/tty/tty_display.h
 ./ncurses/tty/tty_input.h
 ./ncurses/tty/tty_update.c
+./ncurses/widechar/charable.c
+./ncurses/widechar/lib_add_wch.c
 ./ncurses/widechar/lib_box_set.c
 ./ncurses/widechar/lib_cchar.c
 ./ncurses/widechar/lib_erasewchar.c
 ./ncurses/widechar/lib_hline_set.c
 ./ncurses/widechar/lib_in_wch.c
 ./ncurses/widechar/lib_in_wchnstr.c
-./ncurses/widechar/lib_ins_nwstr.c
 ./ncurses/widechar/lib_ins_wch.c
 ./ncurses/widechar/lib_inwstr.c
+./ncurses/widechar/lib_pecho_wchar.c
+./ncurses/widechar/lib_slk_wset.c
 ./ncurses/widechar/lib_unget_wch.c
 ./ncurses/widechar/lib_vid_attr.c
 ./ncurses/widechar/lib_vline_set.c
 ./progs/toe.c
 ./progs/tput.c
 ./progs/tset.c
-./sysdeps/unix/sysv/linux/Makefile
-./sysdeps/unix/sysv/linux/alpha/configure
-./sysdeps/unix/sysv/linux/configure
-./sysdeps/unix/sysv/linux/edit_man.sed
-./sysdeps/unix/sysv/linux/edit_man.sh
-./sysdeps/unix/sysv/linux/run_tic.sh
 ./tack/COPYING
 ./tack/HISTORY
 ./tack/Makefile.in
 ./tar-copy.sh
 ./test/Makefile.in
 ./test/README
+./test/aclocal.m4
+./test/background.c
 ./test/blue.c
 ./test/bs.6
 ./test/bs.c
 ./test/cardfile.c
 ./test/cardfile.dat
+./test/color_set.c
 ./test/configure
 ./test/configure.in
+./test/demo_defkey.c
+./test/demo_forms.c
+./test/demo_keyok.c
+./test/demo_menus.c
+./test/demo_panels.c
 ./test/ditto.c
 ./test/dots.c
+./test/edit_field.c
+./test/edit_field.h
 ./test/filter.c
 ./test/firework.c
 ./test/firstlast.c
 ./test/gdc.c
 ./test/hanoi.c
 ./test/hashtest.c
+./test/ins_wide.c
+./test/inserts.c
 ./test/keynames.c
 ./test/knight.c
+./test/listused.sh
 ./test/lrtest.c
 ./test/modules
 ./test/ncurses.c
diff --git a/Makefile.glibc b/Makefile.glibc
deleted file mode 100644 (file)
index 2535e9f..0000000
+++ /dev/null
@@ -1,405 +0,0 @@
-# Copyright (C) 1997,1998 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Library General Public License as
-# published by the Free Software Foundation; either version 2 of the
-# License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Library General Public License for more details.
-
-# You should have received a copy of the GNU Library General Public
-# License along with the GNU C Library; see the file COPYING.LIB.  If not,
-# write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
-
-#
-#      Makefile for ncurses part.
-#
-subdir := ncurses
-
-ncurses-version        = 4.2
-form-version   = $(ncurses-version)
-menu-version   = $(ncurses-version)
-panel-version  = $(ncurses-version)
-
-extras                 := form menu ncurses panel
-
-extra-libs             = $(extras:%=lib%)
-# These libraries will be built in the `others' pass rather than
-# the `lib' pass, because they depend on libc.so being built already.
-extra-libs-others      = $(extra-libs)
-
-# The sources are found in the appropriate subdir.
-subdir-dirs = $(extras) progs test
-vpath %.c $(subdir-dirs)
-vpath %.h $(subdir-dirs)
-
-libform-routines       = \
-                       fld_arg \
-                       fld_attr \
-                       fld_current \
-                       fld_def \
-                       fld_dup \
-                       fld_ftchoice \
-                       fld_ftlink \
-                       fld_info \
-                       fld_just \
-                       fld_link \
-                       fld_max \
-                       fld_move \
-                       fld_newftyp \
-                       fld_opts \
-                       fld_pad \
-                       fld_page \
-                       fld_stat \
-                       fld_type \
-                       fld_user \
-                       frm_cursor \
-                       frm_data \
-                       frm_def \
-                       frm_driver \
-                       frm_hook \
-                       frm_opts \
-                       frm_page \
-                       frm_post \
-                       frm_req_name \
-                       frm_scale \
-                       frm_sub \
-                       frm_user \
-                       frm_win \
-                       fty_alnum \
-                       fty_alpha \
-                       fty_enum \
-                       fty_int \
-                       fty_ipv4 \
-                       fty_num \
-                       fty_regex
-
-libncurses-routines    = \
-                       base/define_key \
-                       base/keybound \
-                       base/keyok \
-                       base/lib_addch \
-                       base/lib_addstr \
-                       base/lib_beep \
-                       base/lib_bkgd \
-                       base/lib_box \
-                       base/lib_chgat \
-                       base/lib_clear \
-                       base/lib_clearok \
-                       base/lib_clrbot \
-                       base/lib_clreol \
-                       base/lib_color \
-                       base/lib_colorset \
-                       base/lib_delch \
-                       base/lib_delwin \
-                       base/lib_dft_fgbg \
-                       base/lib_echo \
-                       base/lib_endwin \
-                       base/lib_erase \
-                       base/lib_flash \
-                       base/lib_freeall \
-                       base/lib_getch \
-                       base/lib_getstr \
-                       base/lib_hline \
-                       base/lib_immedok \
-                       base/lib_inchstr \
-                       base/lib_initscr \
-                       base/lib_insch \
-                       base/lib_insdel \
-                       base/lib_insstr \
-                       base/lib_instr \
-                       base/lib_isendwin \
-                       base/lib_leaveok \
-                       base/lib_mouse \
-                       base/lib_move \
-                       base/lib_mvwin \
-                       base/lib_newterm \
-                       base/lib_newwin \
-                       base/lib_nl \
-                       base/lib_overlay \
-                       base/lib_pad \
-                       base/lib_printw \
-                       base/lib_redrawln \
-                       base/lib_refresh \
-                       base/lib_restart \
-                       base/lib_scanw \
-                       base/lib_screen \
-                       base/lib_scroll \
-                       base/lib_scrollok \
-                       base/lib_scrreg \
-                       base/lib_set_term \
-                       base/lib_slk \
-                       base/lib_slkatr_set \
-                       base/lib_slkatrof \
-                       base/lib_slkatron \
-                       base/lib_slkatrset \
-                       base/lib_slkattr \
-                       base/lib_slkclear \
-                       base/lib_slkcolor \
-                       base/lib_slkinit \
-                       base/lib_slklab \
-                       base/lib_slkrefr \
-                       base/lib_slkset \
-                       base/lib_slktouch \
-                       base/lib_touch \
-                       base/lib_ungetch \
-                       base/lib_vline \
-                       base/lib_wattroff \
-                       base/lib_wattron \
-                       base/lib_winch \
-                       base/lib_window \
-                       base/memmove \
-                       base/nc_panel \
-                       base/resizeterm \
-                       base/safe_sprintf \
-                       base/sigaction \
-                       base/tries \
-                       base/version \
-                       base/vsscanf \
-                       base/wresize \
-                       codes \
-                       comp_captab \
-                       expanded \
-                       fallback \
-                       lib_gen \
-                       lib_keyname \
-                       names \
-                       tinfo/access \
-                       tinfo/add_tries \
-                       tinfo/alloc_entry \
-                       tinfo/alloc_ttype \
-                       tinfo/captoinfo \
-                       tinfo/comp_error \
-                       tinfo/comp_expand \
-                       tinfo/comp_hash \
-                       tinfo/comp_parse \
-                       tinfo/comp_scan \
-                       tinfo/doalloc \
-                       tinfo/free_ttype \
-                       tinfo/getenv_num \
-                       tinfo/home_terminfo \
-                       tinfo/init_keytry \
-                       tinfo/lib_acs \
-                       tinfo/lib_baudrate \
-                       tinfo/lib_cur_term \
-                       tinfo/lib_data \
-                       tinfo/lib_has_cap \
-                       tinfo/lib_kernel \
-                       tinfo/lib_longname \
-                       tinfo/lib_napms \
-                       tinfo/lib_options \
-                       tinfo/lib_print \
-                       tinfo/lib_raw \
-                       tinfo/lib_setup \
-                       tinfo/lib_termcap \
-                       tinfo/lib_termname \
-                       tinfo/lib_tgoto \
-                       tinfo/lib_ti \
-                       tinfo/lib_tparm \
-                       tinfo/lib_tputs \
-                       tinfo/lib_ttyflags \
-                       tinfo/name_match \
-                       tinfo/parse_entry \
-                       tinfo/read_entry \
-                       tinfo/read_termcap \
-                       tinfo/setbuf \
-                       tinfo/strings \
-                       tinfo/write_entry \
-                       trace/lib_trace \
-                       trace/lib_traceatr \
-                       trace/lib_tracebits \
-                       trace/lib_tracechr \
-                       trace/lib_tracedmp \
-                       trace/lib_tracemse \
-                       trace/trace_buf \
-                       trace/trace_tries \
-                       trace/trace_xnames \
-                       trace/varargs \
-                       trace/visbuf \
-                       tty/hardscroll \
-                       tty/hashmap \
-                       tty/lib_mvcur \
-                       tty/lib_tstp \
-                       tty/lib_twait \
-                       tty/lib_vidattr \
-                       tty/tty_update \
-                       unctrl
-
-libmenu-routines       = \
-                       m_attribs \
-                       m_cursor \
-                       m_driver \
-                       m_format \
-                       m_global \
-                       m_hook \
-                       m_item_cur \
-                       m_item_nam \
-                       m_item_new \
-                       m_item_opt \
-                       m_item_top \
-                       m_item_use \
-                       m_item_val \
-                       m_item_vis \
-                       m_items \
-                       m_new \
-                       m_opts \
-                       m_pad \
-                       m_pattern \
-                       m_post \
-                       m_req_name \
-                       m_scale \
-                       m_spacing \
-                       m_sub \
-                       m_userptr \
-                       m_win
-
-libpanel-routines      = \
-                       panel \
-                       p_above \
-                       p_below \
-                       p_bottom \
-                       p_delete \
-                       p_hide \
-                       p_hidden \
-                       p_move \
-                       p_new \
-                       p_replace \
-                       p_show \
-                       p_top \
-                       p_update \
-                       p_user \
-                       p_win
-
-headers = curses.h eti.h form.h menu.h panel.h term.h termcap.h \
-         unctrl.h
-others = clear infocmp tic toe tput tset
-install-bin = $(others)
-
-clear-objs = clear.o
-infocmp-objs = infocmp.o dump_entry.o
-tic-objs = tic.o dump_entry.o
-toe-objs = toe.o dump_entry.o
-tput-objs = tput.o
-tset-objs = tset.o dump_entry.o
-extra-objs = $(tic-objs) $(toe-objs) $(infocmp-objs) $(clear-objs) \
-               $(tput-objs) $(tset-objs)
-
-test-srcs = blue bs cardfile ditto firework firstlast gdc hanoi hashtest knight \
-               lrtest ncurses newdemo rain tclock testaddch testcurs \
-               testscanw view worm xmas
-
-include ../Rules
-
-ifndef tabsetdir
-tabsetdir              = $(datadir)/tabset
-endif
-ifndef inst_tabsetdir
-inst_tabsetdir = $(install_root)/$(tabsetdir)
-endif
-
-ifndef terminfodir
-terminfodir            = $(datadir)/terminfo
-endif
-ifndef inst_terminfodir
-inst_terminfodir       = $(install_root)/$(terminfodir)
-endif
-
-ifndef mandir
-mandir                 = $(prefix)/man
-endif
-
-ifndef inst_mandir
-inst_mandir            = $(install_root)/$(mandir)
-endif
-
-CPPFLAGS += -DTERMINFO='"$(terminfodir)"' -Iinclude -Iform -Incurses \
-       -Imenu -Ipanel -Iprogs -Itest
-
-ifneq ($(strip $(objpfx)),)
-CPPFLAGS += -I$(objpfx)
-endif
-
-LDLIBS-tclock = math/libm
-
-tests: $(test-srcs:%=$(objpfx)%)
-
-$(objpfx)clear: $(addprefix $(objpfx),$(clear-objs))
-$(objpfx)infocmp: $(addprefix $(objpfx),$(infocmp-objs))
-$(objpfx)tic: $(addprefix $(objpfx),$(tic-objs))
-$(objpfx)toe: $(addprefix $(objpfx),$(toe-objs))
-$(objpfx)tput: $(addprefix $(objpfx),$(tput-objs))
-$(objpfx)tset: $(addprefix $(objpfx),$(tset-objs))
-
-ifeq ($(build-shared),yes)
-$(others:%=$(objpfx)%): $(objpfx)libncurses.so
-else
-$(others:%=$(objpfx)%): $(objpfx)libncurses.a
-endif
-
-$(test-srcs:%=$(objpfx)%): $(objpfx)libform.a $(objpfx)libmenu.a \
-       $(objpfx)libpanel.a $(objpfx)libncurses.a
-
-# Depend on libc.so so a DT_NEEDED is generated in the shared objects.
-# This ensures they will load libc.so for needed symbols if loaded by
-# a statically-linked program that hasn't already loaded it.
-$(extras:%=$(objpfx)lib%.so): $(common-objpfx)libc.so
-
-subdir_install: $(inst_libdir)/libtermcap.a $(inst_libdir)/libcurses.a \
-       $(inst_bindir)/reset $(inst_bindir)/captoinfo
-
-$(inst_libdir)/libtermcap.a $(inst_libdir)/libcurses.a: \
-               $(inst_libdir)/libncurses.a
-       $(make-link)
-
-$(inst_bindir)/reset: $(inst_bindir)/tset
-       $(make-link)
-
-$(inst_bindir)/captoinfo: $(inst_bindir)/tic
-       $(make-link)
-
-ifeq (yes,$(build-shared))
-subdir_install: $(inst_libdir)/libtermcap.so  $(inst_libdir)/libcurses.so
-
-$(inst_libdir)/libtermcap.so $(inst_libdir)/libcurses.so: \
-               $(inst_libdir)/libncurses.so
-       $(make-link)
-endif
-
-subdir_install: $(inst_mandir)/man5/terminfo.5
-
-$(inst_mandir)/man5/terminfo.5: $(objpfx)terminfo.5 $(wildcard man/*.[0-9]*)
-       $(make-target-directory)
-       sh $(edit_man-sh) $(prefix) $(inst_mandir) $(edit_man-sed) $^
-
-subdir_install: $(inst_tabsetdir)/std
-
-$(inst_tabsetdir)/std: \
-       $(filter-out misc/tabset/CVS, $(wildcard misc/tabset/*))
-       $(make-target-directory)
-       for f in $^; do \
-         echo installing $$f; \
-         $(INSTALL_DATA) $$f $(inst_tabsetdir); \
-       done
-
-
-ifeq (no,$(cross-compiling))
-subdir_install: $(inst_terminfodir)/v/vt100
-
-$(inst_terminfodir)/v/vt100: misc/terminfo.src $(objpfx)tic
-       $(make-target-directory)
-       sh $(run_tic-sh) $(common-objpfx) misc $(terminfodir) \
-               $(install_root)
-endif
-
-subdir_distclean subdir_realclean:
-       -rm -f $(addprefix $(objpfx), MKterm.h.awk codes.c \
-               comp_captab.c confdefs.h config.log curses.h \
-               expanded.c fallback.c hashsize.h keys.tries \
-               lib_gen.c lib_keyname.c names.c ncurses_cfg.h \
-               nomacros.h parametrized.h term.h termcap.h \
-               terminfo.5 termsort.c unctrl.c unctrl.h)
diff --git a/NEWS b/NEWS
index 8ce31076cad23f0f6cc656b34508f4edb9af9579..3f2c2d290c449a64b6fb81729d6536d840aab058 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
--- $Id: NEWS,v 1.714 2002/10/12 22:35:42 tom Exp $
+-- $Id: NEWS,v 1.797 2004/02/08 21:15:26 tom Exp $
 
 This is a log of changes that ncurses has gone through since Zeyd started
 working with Pavel Curtis' original work, pcurses, in 1992.
@@ -6,6 +6,788 @@ working with Pavel Curtis' original work, pcurses, in 1992.
 Changes through 1.9.9e are recorded by Zeyd M. Ben-Halim.
 Changes since 1.9.9e are recorded by Thomas Dickey.
 
+20040208 5.4 release for upload to ftp.gnu.org
+       + update TO-DO.
+
+20040207 pre-release
+       + minor fixes to _nc_tparm_analyze(), i.e., do not count %i as a param,
+         and do not count %d if it follows a %p.
+       + correct an inconsistency between handling of codes in the 128-255
+         range, e.g., as illustrated by test/ncurses.c f/F tests.  In POSIX
+         locale, the latter did not show printable results, while the former
+         did.
+       + modify MKlib_gen.sh to compensate for broken C preprocessor on Mac
+         OS X, which alters "%%" to "% % " (report by Robert Simms, fix
+         verified by Scott Corscadden).
+
+20040131 pre-release
+       + modify SCREEN struct to align it between normal/wide curses flavors
+         to simplify future changes to build a single version of libtinfo
+         (patch by Stanislav Ievlev).
+       + document handling of carriage return by addch() in manpage.
+       + document special features of unctrl() in manpage.
+       + documented interface changes in INSTALL.
+       + corrected control-char test in lib_addch.c to account for locale
+         (Debian #230335, cf: 971206).
+       + updated test/configure.in to use AC_EXEEXT and AC_OBJEXT.
+       + fixes to compile Ada95 binding with Debian gnat 3.15p-4 package.
+       + minor configure-script fixes for older ports, e.g., BeOS R4.5.
+
+20040125 pre-release
+       + amend change to PutAttrChar() from 20030614 which computed the number
+         of cells for a possibly multi-cell character.  The 20030614 change
+         forced the cell to a blank if the result from wcwidth() was not
+         greater than zero.  However, wcwidth() called for parameters in the
+         range 128-255 can give this return value.  The logic now simply
+         ensures that the number of cells is greater than zero without
+         modifying the displayed value.
+
+20040124 pre-release
+       + looked good for 5.4 release for upload to ftp.gnu.org (but see above)
+       + modify configure script check for ranlib to use AC_CHECK_TOOL, since
+         that works better for cross-compiling.
+
+20040117 pre-release
+       + modify lib_get_wch.c to prefer mblen/mbtowc over mbrlen/mbrtowc to
+         work around core dump in Solaris 8's locale support, e.g., for
+         zh_CN.GB18030 (report by Saravanan Bellan).
+       + add includes for <stdarg.h> and <stdio.h> in configure script macro
+         to make <wchar.h> check work with Tru64 4.0d.
+       + add terminfo entry for U/Win -TD
+       + add terminfo entries for SFU aka Interix aka OpenNT (Federico
+         Bianchi).
+       + modify tput's error messages to prefix them with the program name
+         (report by Vincent Lefevre, patch by Daniel Jacobowitz, Debian
+         #227586).
+       + correct a place in tack where exit_standout_mode was used instead of
+         exit_attribute_mode (patch by Jochen Voss, Debian #224443).
+       + modify c++/cursesf.h to use const in the Enumeration_Field method.
+       + remove an ambiguous (actually redundant) method from c++/cursesf.h
+       + make $HOME/.terminfo update optional (suggested by Stanislav Ievlev).
+       + improve sed script which extracts libtool's version in the
+         CF_WITH_LIBTOOL macro.
+       + add ifdef'd call to AC_PROG_LIBTOOL to CF_WITH_LIBTOOL macro (to
+         simplify local patch for Albert Chin-A-Young)..
+       + add $(CXXFLAGS) to link command in c++/Makefile.in (adapted from
+         patch by Albert Chin-A-Young)..
+       + fix a missing substitution in configure.in for "$target" needed for
+         HPUX .so/.sl case.
+       + resync CF_XOPEN_SOURCE configure macro with lynx; fixes IRIX64 and
+         NetBSD 1.6 conflicts with _XOPEN_SOURCE.
+       + make check for stdbool.h more specific, to ensure that including it
+         will actually define/declare bool for the configured compiler.
+       + rewrite ifdef's in curses.h relating NCURSES_BOOL and bool.  The
+         intention of that is to #define NCURSES_BOOL as bool when the
+         compiler declares bool, and to #define bool as NCURSES_BOOL when it
+         does not (reported by Jim Gifford, Sam Varshavchik, cf: 20031213).
+
+20040110 pre-release
+       + change minor version to 4, i.e., ncurses 5.4
+       + revised/improved terminfo entries for tvi912b, tvi920b (Benjamin C W
+         Sittler).
+       + simplified ncurses/base/version.c by defining the result from the
+         configure script rather than using sprintf (suggested by Stanislav
+         Ievlev).
+       + remove obsolete casts from c++/cursesw.h (reported by Stanislav
+         Ievlev).
+       + modify configure script so that when configuring for termlib, programs
+         such as tic are not linked with the upper-level ncurses library
+         (suggested by Stanislav Ievlev).
+       + move version.c from ncurses/base to ncurses/tinfo to allow linking
+         of tic, etc., using libtinfo (suggested by Stanislav Ievlev).
+
+20040103
+       + adjust -D's to build ncursesw on OpenBSD.
+       + modify CF_PROG_EXT to make OS/2 build with EXEEXT.
+       + add pecho_wchar().
+       + remove <wctype.h> include from lib_slk_wset.c which is not needed (or
+         available) on older platforms.
+
+20031227
+       + add -D's to build ncursew on FreeBSD 5.1.
+       + modify shared library configuration for FreeBSD 4.x/5.x to add the
+         soname information (request by Marc Glisse).
+       + modify _nc_read_tic_entry() to not use MAX_ALIAS, but PATH_MAX only
+         for limiting the length of a filename in the terminfo database.
+       + modify termname() to return the terminal name used by setupterm()
+         rather than $TERM, without truncating to 14 characters as documented
+         by X/Open (report by Stanislav Ievlev, cf:  970719).
+       + re-add definition for _BSD_TYPES, lost in merge (cf: 20031206).
+
+20031220
+       + add configure option --with-manpage-format=catonly to address
+         behavior of BSDI, allow install of man+cat files on NetBSD, whose
+         behavior has diverged by requiring both to be present.
+       + remove leading blanks from comment-lines in manlinks.sed script to
+         work with Tru64 4.0d.
+       + add screen.linux terminfo entry (discussion on mutt-users mailing
+         list).
+
+20031213
+       + add a check for tic to flag missing backslashes for termcap
+         continuation lines.  ncurses reads the whole entry, but termcap
+         applications do not.
+       + add configure option "--with-manpage-aliases" extending
+         "--with-manpage-aliases" to provide the option of generating ".so"
+         files rather than symbolic links for manpage aliases.
+       + add bool definition in include/curses.h.in for configurations with no
+         usable C++ compiler (cf: 20030607).
+       + fix pathname of SigAction.h for building with --srcdir (reported by
+         Mike Castle).
+
+20031206
+       + folded ncurses/base/sigaction.c into includes of ncurses/SigAction.h,
+         since that header is used only within ncurses/tty/lib_tstp.c, for
+         non-POSIX systems (discussion with Stanislav Ievlev).
+       + remove obsolete _nc_outstr() function (report by Stanislav Ievlev
+         <inger@altlinux.org>).
+       + add test/background.c and test/color_set.c
+       + modify color_set() function to work with color pair 0 (report by
+         George Andreou <gbandreo@tem.uoc.gr>).
+       + add configure option --with-trace, since defining TRACE seems too
+         awkward for some cases.
+       + remove a call to _nc_free_termtype() from read_termtype(), since the
+         corresponding buffer contents were already zeroed by a memset (cf:
+         20000101).
+       + improve configure check for _XOPEN_SOURCE and related definitions,
+         adding special cases for Solaris' __EXTENSIONS__ and FreeBSD's
+         __BSD_TYPES (reports by Marc Glisse <marc.glisse@normalesup.org>).
+       + small fixes to compile on Solaris and IRIX64 using cc.
+       + correct typo in check for pre-POSIX sort options in MKkey_defs.sh
+         (cf: 20031101).
+
+20031129
+       + modify _nc_gettime() to avoid a problem with arithmetic on unsigned
+         values (Philippe Blain).
+       + improve the nanosleep() logic in napms() by checking for EINTR and
+         restarting (Philippe Blain).
+       + correct expression for "%D" in lib_tgoto.c (Juha Jarvi
+         <mooz@welho.com>).
+
+20031122
+       + add linux-vt terminfo entry (Andrey V Lukyanov <land@long.yar.ru>).
+       + allow "\|" escape in terminfo; tic should not warn about this.
+       + save the full pathname of the trace-file the first time it is opened,
+         to avoid creating it in different directories if the application
+         opens and closes it while changing its working directory.
+       + modify configure script to provide a non-empty default for
+         $BROKEN_LINKER
+
+20031108
+       + add DJGPP to special case of DOS-style drive letters potentially
+         appearing in TERMCAP environment variable.
+       + fix some spelling in comments (reports by jmc, Jonathon Gray).
+       + update config.guess, config.sub
+
+20031101
+       + fix a memory leak in error-return from setupterm() (report by
+         Stanislav Ievlev <inger@altlinux.org>).
+       + use EXEEXT and OBJEXT consistently in makefiles.
+       + amend fixes for cross-compiling to use separate executable-suffix
+         BUILD_EXEEXT (cf: 20031018).
+       + modify MKkey_defs.sh to check for sort utility that does not
+         recognize key options, e.g., busybox (report by Peter S Mazinger
+         <ps.m@gmx.net>).
+       + fix potential out-of-bounds indexing in _nc_infotocap() (found by
+         David Krause using some of the new malloc debugging features
+         under OpenBSD, patch by Ted Unangst).
+       + modify CF_LIB_SUFFIX for Itanium releases of HP-UX, which use a
+         ".so" suffix (patch by Jonathan Ward <Jonathan.Ward@hp.com>).
+
+20031025
+       + update terminfo for xterm-xfree86 -TD
+       + add check for multiple "tc=" clauses in a termcap to tic.
+       + check for missing op/oc in tic.
+       + correct _nc_resolve_uses() and _nc_merge_entry() to allow infocmp and
+         tic to show cancelled capabilities.  These functions were ignoring
+         the state of the target entry, which should be untouched if cancelled.
+       + correct comment in tack/output.c (Debian #215806).
+       + add some null-pointer checks to lib_options.c (report by Michael
+         Bienia).
+       + regenerated html documentation.
+       + correction to tar-copy.sh, remove a trap command that resulted in
+         leaving temporary files (cf: 20030510).
+       + remove contact/maintainer addresses for Juergen Pfeifer (his request).
+
+20031018
+       + updated test/configure to reflect changes for libtool (cf: 20030830).
+       + fix several places in tack/pad.c which tested and used the parameter-
+         and parameterless strings inconsistently, i.e., in pad_rin(),
+         pad_il(), pad_indn() and pad_dl() (Debian #215805).
+       + minor fixes for configure script and makefiles to cleanup executables
+         generated when cross-compiling for DJGPP.
+       + modify infocmp to omit check for $TERM for operations that do not
+         require it, e.g., "infocmp -e" used to build fallback list (report by
+         Koblinger Egmont).
+
+20031004
+       + add terminfo entries for DJGPP.
+       + updated note about maintainer in ncurses-intro.html
+
+20030927
+       + update terminfo entries for gnome terminal.
+       + modify tack to reset colors after each color test, correct a place
+         where exit_standout_mode was used instead of exit_attribute_mode.
+       + improve tack's bce test by making it set colors other than black
+         on white.
+       + plug a potential recursion between napms() and _nc_timed_wait()
+         (report by Philippe Blain).
+
+20030920
+       + add --with-rel-version option to allow workaround to allow making
+         libtool on Darwin generate the "same" library names as with the
+         --with-shared option.  The Darwin ld program does not work well
+         with a zero as the minor-version value (request by Chris Zubrzycki).
+       + modify CF_MIXEDCASE_FILENAMES macro to work with cross-compiling.
+       + modify tack to allow it to run from fallback terminfo data.
+       > Philippe Blain:
+       + improve PutRange() by adjusting call to EmitRange() and corresponding
+         return-value to not emit unchanged characters on the end of the
+         range.
+       + improve a check for changed-attribute by exiting a loop when the
+         change is found.
+       + improve logic in TransformLine(), eliminating a duplicated comparison
+         in the clr_bol logic.
+
+20030913
+       > Philippe Blain:
+       + in ncurses/tty/lib_mvcur.c,
+         move the label 'nonlocal' just before the second gettimeofday() to
+         be able to compute the diff time when 'goto nonlocal' used.
+         Rename 'msec' to 'microsec' in the debug-message.
+       + in ncurses/tty/lib_mvcur.c,
+         Use _nc_outch() in carriage return/newline movement instead of
+         putchar() which goes to stdout.  Move test for xold>0 out of loop.
+       + in ncurses/tinfo/setbuf.c,
+         Set the flag SP->_buffered at the end of operations when all has been
+         successful (typeMalloc can fail).
+       + simplify NC_BUFFERED macro by moving check inside _nc_setbuf().
+
+20030906
+       + modify configure script to avoid using "head -1", which does not
+         work if POSIXLY_CORRECT (sic) is set.
+       + modify run_tic.in to avoid using wrong shared libraries when
+         cross-compiling (Dan Kegel).
+
+20030830
+       + alter configure script help message to make it clearer that
+         --with-build-cc does not specify a cross-compiler (suggested by Dan
+         Kegel <dank@kegel.com>).
+       + modify configure script to accommodate libtool 1.5, as well as add an
+         parameter to the "--with-libtool" option which can specify the
+         pathname of libtool (report by Chris Zubrzycki).  We note that
+         libtool 1.5 has more than one bug in its C++ support, so it is not
+         able to install libncurses++, for instance, if $DESTDIR or the option
+         --with-install-prefix is used.
+
+20030823
+       > Philippe Blain:
+       + move assignments to SP->_cursrow, SP->_curscol into online_mvcur().
+       + make baudrate computation in delay_output() consistent with the
+         assumption in _nc_mvcur_init(), i.e., a byte is 9 bits.
+
+20030816
+       + modify logic in waddch_literal() to take into account zh_TW.Big5
+         whose multibyte sequences may contain "printable" characters, e.g.,
+         a "g" in the sequence "\247g" (Debian #204889, cf: 20030621).
+       + improve storage used by _nc_safe_strcpy() by ensuring that the size
+         is reset based on the initialization call, in case it were called
+         after other strcpy/strcat calls (report by Philippe Blain).
+       > Philippe Blain:
+       + remove an unused ifdef for REAL_ATTR & WANT_CHAR
+       + correct a place where _cup_cost was used rather than _cuu_cost
+
+20030809
+       + fix a small memory leak in _nc_free_termtype().
+       + close trace-file if trace() is called with a zero parameter.
+       + free memory allocated for soft-key strings, in delscreen().
+       + fix an allocation size in safe_sprintf.c for the "*" format code.
+       + correct safe_sprintf.c to not return a null pointer if the format
+         happens to be an empty string.  This applies to the "configure
+         --enable-safe-sprintf" option (Redhat #101486).
+
+20030802
+       + modify casts used for ABSENT_BOOLEAN and CANCELLED_BOOLEAN (report by
+         Daniel Jacobowitz).
+       > Philippe Blain:
+       + change padding for change_scroll_region to not be proportional to
+         the size of the scroll-region.
+       + correct error-return in _nc_safe_strcat().
+
+20030726
+       + correct limit-checks in _nc_scroll_window() (report and test-case by
+         Thomas Graf <graf@dms.at> cf: 20011020).
+       + re-order configure checks for _XOPEN_SOURCE to avoid conflict with
+         _GNU_SOURCE check.
+
+20030719
+       + use clr_eol in preference to blanks for bce terminals, so select and
+         paste will have fewer trailing blanks, e.g., when using xterm
+         (request by Vincent Lefevre).
+       + correct prototype for wunctrl() in manpage.
+       + add configure --with-abi-version option (discussion with Charles
+         Wilson).
+       > cygwin changes from Charles Wilson:
+         + aclocal.m4: on cygwin, use autodetected prefix for import
+           and static lib, but use "cyg" for DLL.
+         + include/ncurses_dll.h: correct the comments to reflect current
+           status of cygwin/mingw port.  Fix compiler warning.
+         + misc/run_tic.in: ensure that tic.exe can find the uninstalled
+           DLL, by adding the lib-directory to the PATH variable.
+         + misc/terminfo.src (nxterm|xterm-color): make xterm-color
+           primary instead of nxterm, to match XFree86's xterm.terminfo
+           usage and to prevent circular links.
+           (rxvt): add additional codes from rxvt.org.
+           (rxvt-color): new alias
+           (rxvt-xpm): new alias
+           (rxvt-cygwin): like rxvt, but with special acsc codes.
+           (rxvt-cygwin-native): ditto.  rxvt may be run under XWindows, or
+           with a "native" MSWin GUI.  Each takes different acsc codes,
+           which are both different from the "normal" rxvt's acsc.
+           (cygwin): cygwin-in-cmd.exe window.  Lots of fixes.
+           (cygwinDBG): ditto.
+         + mk-1st.awk: use "cyg" for the DLL prefix, but "lib" for import
+           and static libs.
+
+20030712
+       + update config.guess, config.sub
+       + add triples for configuring shared libraries with the Debian
+         GNU/FreeBSD packages (patch by Robert Millan <zeratul2@wanadoo.es>).
+
+20030705
+       + modify CF_GCC_WARNINGS so it only applies to gcc, not g++.  Some
+         platforms have installed g++ along with the native C compiler, which
+         would not accept gcc warning options.
+       + add -D_XOPEN_SOURCE=500 when configuring with --enable-widec, to
+         get mbstate_t declaration on HPUX 11.11 (report by David Ellement).
+       + add _nc_pathlast() to get rid of casts in _nc_basename() calls.
+       + correct a sign-extension in wadd_wch() and wecho_wchar() from
+         20030628 (report by Tomohiro KUBOTA).
+       + work around omission of btowc() and wctob() from wide-character
+         support (sic) in NetBSD 1.6 using mbtowc() and wctomb() (report by
+         Gabor Z Papp).
+       + add portability note to curs_get_wstr.3x (Debian #199957).
+
+20030628
+       + rewrite wadd_wch() and wecho_wchar() to call waddch() and wechochar()
+         respectively, to avoid calling waddch_noecho() with wide-character
+         data, since that function assumes its input is 8-bit data.
+         Similarly, modify waddnwstr() to call wadd_wch().
+       + remove logic from waddnstr() which transformed multibyte character
+         strings into wide-characters.  Rewrite of waddch_literal() from
+         20030621 assumes its input is raw multibyte data rather than wide
+         characters (report by Tomohiro KUBOTA).
+
+20030621
+       + write getyx() and related 2-return macros in terms of getcury(),
+         getcurx(), etc.
+       + modify waddch_literal() in case an application passes bytes of a
+         multibyte character directly to waddch().  In this case, waddch()
+         must reassemble the bytes into a wide-character (report by Tomohiro
+         KUBOTA <kubota@debian.org>).
+
+20030614
+       + modify waddch_literal() in case a multibyte value occupies more than
+         two cells.
+       + modify PutAttrChar() to compute the number of character cells that
+         are used in multibyte values.  This fixes a problem displaying
+         double-width characters (report/test by Mitsuru Chinen
+         <mchinen@yamato.ibm.com>).
+       + add a null-pointer check for result of keyname() in _tracechar()
+       + modify _tracechar() to work around glibc sprintf bug.
+
+20030607
+       + add a call to setlocale() in cursesmain.cc, making demo display
+         properly in a UTF-8 locale.
+       + add a fallback definition in curses.priv.h for MB_LEN_MAX (prompted
+         by discussion with Gabor Z Papp).
+       + use macros NCURSES_ACS() and NCURSES_WACS() to hide cast needed to
+         appease -Wchar-subscript with g++ 3.3 (Debian #195732).
+       + fix a redefinition of $RANLIB in the configure script when libtool
+         is used, which broke configure on Mac OS X (report by Chris Zubrzycki
+         <beren@mac.com>).
+       + simplify ifdef for bool declaration in curses.h.in (suggested by
+         Albert Chin-A-Young).
+       + remove configure script check to allow -Wconversion for older
+         versions of gcc (suggested by Albert Chin-A-Young).
+
+20030531
+       + regenerated html manpages.
+       + modify ifdef's in curses.h.in that disabled use of __attribute__()
+         for g++, since recent versions implement the cases which ncurses uses
+         (Debian #195230).
+       + modify _nc_get_token() to handle a case where an entry has no
+         description, and capabilities begin on the same line as the entry
+         name.
+       + fix a typo in ncurses_dll.h reported by gcc 3.3.
+       + add an entry for key_defined.3x to man_db.renames.
+
+20030524
+       + modify setcchar() to allow converting control characters to complex
+         characters (report/test by Mitsuru Chinen <mchinen@yamato.ibm.com>).
+       + add tkterm entry -TD
+       + modify parse_entry.c to allow a terminfo entry with a leading
+         2-character name (report by Don Libes).
+       + corrected acsc in screen.teraterm, which requires a PC-style mapping.
+       + fix trace statements in read_entry.c to use lseek() rather than
+         tell().
+       + fix signed/unsigned warnings from Sun's compiler (gcc should give
+         these warnings, but it is unpredictable).
+       + modify configure script to omit -Winline for gcc 3.3, since that
+         feature is broken.
+       + modify manlinks.sed to add a few functions that were overlooked since
+         they return function pointers:  field_init, field_term, form_init,
+         form_term, item_init, item_term, menu_init and menu_term.
+
+20030517
+       + prevent recursion in wgetch() via wgetnstr() if the connection cannot
+         be switched between cooked/raw modes because it is not a TTY (report
+         by Wolfgang Gutjahr <gutw@knapp.com>).
+       + change parameter of define_key() and key_defined() to const (prompted
+         by Debian #192860).
+       + add a check in test/configure for ncurses extensions, since there
+         are some older versions, etc., which would not compile with the
+         current test programs.
+       + corrected demo in test/ncurses.c of wgetn_wstr(), which did not
+         convert wchar_t string to multibyte form before printing it.
+       + corrections to lib_get_wstr.c:
+         + null-terminate buffer passed to setcchar(), which occasionally
+           failed.
+         + map special characters such as erase- and kill-characters into
+           key-codes so those will work as expected even if they are not
+           mentioned in the terminfo.
+       + modify PUTC() and Charable() macros to make wide-character line
+         drawing work for POSIX locale on Linux console (cf: 20021221).
+
+20030510
+       + make typography for program options in manpages consistent (report
+         by Miloslav Trmac <mitr@volny.cz>).
+       + correct dependencies in Ada95/src/Makefile.in, so the builds with
+         "--srcdir" work (report by Warren L Dodge).
+       + correct missing definition of $(CC) in Ada95/gen/Makefile.in
+         (reported by Warren L Dodge <warrend@mdhost.cse.tek.com>).
+       + fix typos and whitespace in manpages (patch by jmc
+         <jmc@prioris.mini.pw.edu.pl>).
+
+20030503
+       + fix form_driver() cases for REQ_CLR_EOF, REQ_CLR_EOL, REQ_DEL_CHAR,
+         REQ_DEL_PREV and REQ_NEW_LINE, which did not ensure the cursor was at
+         the editing position before making modifications.
+       + add test/demo_forms and associated test/edit_field.c demos.
+       + modify test/configure.in to use test/modules for the list of objects
+         to compile rather than using the list of programs.
+
+20030419
+       + modify logic of acsc to use the original character if no mapping is
+         defined, noting that Solaris does this.
+       + modify ncurses 'b' test to avoid using the acs_map[] array since
+         20021231 changes it to no longer contain information from the acsc
+         string.
+       + modify makefile rules in c++, progs, tack and test to ensure that
+         the compiler flags (e.g., $CFLAGS or $CCFLAGS) are used in the link
+         command (report by Jose Luis Rico Botella <informatica@serpis.com>).
+       + modify soft-key initialization to use A_REVERSE if A_STANDOUT would
+         not be shown when colors are used, i.e., if ncv#1 is set in the
+         terminfo as is done in "screen".
+
+20030412
+       + add a test for slk_color(), in ncurses.c
+       + fix some issues reported by valgrind in the slk_set() and slk_wset()
+         code, from recent rewrite.
+       + modify ncurses 'E' test to use show previous label via slk_label(),
+         as in 'e' test.
+       + modify wide-character versions of NewChar(), NewChar2() macros to
+         ensure that the whole struct is initialized.
+
+20030405
+       + modify setupterm() to check if the terminfo and terminal-modes have
+         already been read.  This ensures that it does not reinvoke
+         def_prog_mode() when an application calls more than one function,
+         such as tgetent() and initscr() (report by Olaf Buddenhagen).
+
+20030329
+       + add 'E' test to ncurses.c, to exercise slk_wset().
+       + correct handling of carriage-return in wgetn_wstr(), used in demo of
+         slk_wset().
+       + first draft of slk_wset() function.
+
+20030322
+       + improved warnings in tic when suppressing items to fit in termcap's
+         1023-byte limit.
+       + built a list in test/README showing which externals are being used
+         by either programs in the test-directory or via internal library
+         calls.
+       + adjust include-options in CF_ETIP_DEFINES to avoid missing
+         ncurses_dll.h, fixing special definitions that may be needed for
+         etip.h (reported by Greg Schafer <gschafer@zip.com.au>).
+
+20030315
+       + minor fixes for cardfile.c, to make it write the updated fields to
+         a file when ^W is given.
+       + add/use _nc_trace_bufcat() to eliminate some fixed buffer limits in
+         trace code.
+
+20030308
+       + correct a case in _nc_remove_string(), used by define_key(), to avoid
+         infinite loop if the given string happens to be a substring of other
+         strings which are assigned to keys (report by John McCutchan).
+       + add key_defined() function, to tell which keycode a string is bound
+         to (discussion with John McCutchan <ttb@tentacle.dhs.org>).
+       + correct keybound(), which reported definitions in the wrong table,
+         i.e., the list of definitions which are disabled by keyok().
+       + modify demo_keydef.c to show the details it changes, and to check
+         for errors.
+
+20030301
+       + restructured test/configure script, make it work for libncursesw.
+       + add description of link_fieldtype() to manpage (report by
+         L Dee Holtsclaw <dee@sunbeltsoft.com>).
+
+20030222
+       + corrected ifdef's relating to configure check for wchar_t, etc.
+       + if the output is a socket or other non-tty device, use 1 millisecond
+         for the cost in mvcur; previously it was 9 milliseconds because the
+         baudrate was not known.
+       + in _nc_get_tty_mode(), initialize the TTY buffer on error, since
+         glibc copies uninitialized data in that case, as noted by valgrind.
+       + modify tput to use the same parameter analysis as tparm() does, to
+         provide for user-defined strings, e.g., for xterm title, a
+         corresponding capability might be
+               title=\E]2;%p1%s^G,
+       + modify MKlib_gen.sh to avoid passing "#" tokens through the C
+         preprocessor.  This works around Mac OS X's preprocessor, which
+         insists on adding a blank on each side of the token (report/analysis
+         by Kevin Murphy <murphy@genome.chop.edu>).
+
+20030215
+       + add configure check for wchar_t and wint_t types, rather than rely
+         on preprocessor definitions.  Also work around for gcc fixinclude
+         bug which creates a shadow copy of curses.h if it sees these symbols
+         apparently typedef'd.
+       + if database is disabled, do not generate run_tic.sh
+       + minor fixes for memory-leak checking when termcap is read.
+
+20030208
+       + add checking in tic for incomplete line-drawing character mapping.
+       + update configure script to reflect fix for AC_PROG_GCC_TRADITIONAL,
+         which is broken in autoconf 2.5x for Mac OS X 10.2.3 (report by
+         Gerben Wierda <Sherlock@rna.nl>).
+       + make return value from _nc_printf_string() consistent.  Before,
+         depending on whether --enable-safe-sprintf was used, it might not be
+         cached for reallocating.
+
+20030201
+       + minor fixes for memory-leak checking in lib_tparm.c, hardscroll.c
+       + correct a potentially-uninitialized value if _read_termtype() does
+         not read as much data as expected (report by Wolfgang Rohdewald
+         <wr6@uni.de>).
+       + correct several places where the aclocal.m4 macros relied on cache
+         variable names which were incompatible (as usual) between autoconf
+         2.13 and 2.5x, causing the test for broken-linker to give incorrect
+         results (reports by Gerben Wierda <Sherlock@rna.nl> and Thomas Esser
+         <te@dbs.uni-hannover.de>).
+       + do not try to open gpm mouse driver if standard output is not a tty;
+         the gpm library does not make this check (from bug report for dialog
+         by David Oliveira <davidoliveira@develop.prozone.ws>).
+
+20030125
+       + modified emx.src to correspond more closely to terminfo.src, added
+         emx-base to the latter -TD
+       + add configure option for FreeBSD sysmouse, --with-sysmouse, and
+         implement support for that in lib_mouse.c, lib_getch.c
+
+20030118
+       + revert 20030105 change to can_clear_with(), does not work for the
+         case where the update is made on cells which are blanks with
+         attributes, e.g., reverse.
+       + improve ifdef's to guard against redefinition of wchar_t and wint_t
+         in curses.h (report by Urs Jansen).
+
+20030111
+       + improve mvcur() by checking if it is safe to move when video
+         attributes are set (msgr), and if not, reset/restore attributes
+         within that function rather than doing it separately in the GoTo()
+         function in tty_update.c (suggested by Philippe Blain).
+       + add a message in run_tic.in to explain more clearly what does not
+         work when attempting to create a symbolic link for /usr/lib/terminfo
+         on OS/2 and other platforms with no symbolic links (report by John
+         Polterak).
+       + change several sed scripts to avoid using "\+" since it is not a BRE
+         (basic regular expression).  One instance caused terminfo.5 to be
+         misformatted on FreeBSD (from a FreeBSD bug report by Kazuo Horikawa
+         <horikawa@FreeBSD.org>).
+       + correct misspelled 'wint_t' in curs_get_wch.3x (Michael Elkins).
+
+20030105
+       + improve description of terminfo operators, especially static/dynamic
+         variables (comments by Mark I Manning IV <mark4th@earthlink.net>).
+       + demonstrate use of FIELDTYPE by modifying test/ncurses 'r' test to
+         use the predefined TYPE_ALPHA field-type, and by defining a
+         specialized type for the middle initial/name.
+       + fix MKterminfo.sh, another workaround for POSIXLY_CORRECT misfeature
+         of sed 4.0
+       > Philippe Blain:
+       + optimize can_clear_with() a little by testing first if the parameter
+         is indeed a "blank".
+       + simplify ClrBottom() a little by allowing it to use clr_eos to clear
+         sections as small as one line.
+       + improve ClrToEOL() by checking if clr_eos is available before trying
+         to use it.
+       + use tputs() rather than putp() in a few cases in tty_update.c since
+         the corresponding delays are proportional to the number of lines
+         affected: repeat_char, clr_eos, change_scroll_region.
+
+20021231
+       + rewrite of lib_acs.c conflicts with copying of SCREEN acs_map to/from
+         global acs_map[] array; removed the lines that did the copying.
+
+20021228
+       + change some overlooked tputs() calls in scrolling code to use putp()
+         (report by Philippe Blain).
+       + modify lib_getch.c to avoid recursion via wgetnstr() when the input
+         is not a tty and consequently mode-changes do not work (report by
+         <R.Chamberlin@querix.com>).
+       + rewrote lib_acs.c to allow PutAttrChar() to decide how to render
+         alternate-characters, i.e., to work with Linux console and UTF-8
+         locale.
+       + correct line/column reference in adjust_window(), needed to make
+         special windows such as curscr track properly when resizing (report
+         by Lucas Gonze <lgonze@panix.com>).
+       > Philippe Blain:
+       + correct the value used for blank in ClrBottom() (broken in 20000708).
+       + correct an off-by-one in GoTo() parameter in _nc_scrolln().
+
+20021221
+       + change several tputs() calls in scrolling code to use putp(), to
+         enable padding which may be needed for some terminals (patch by
+         by Philippe Blain).
+       + use '%' as sed substitute delimiter in run_tic script to avoid
+         problems with pathname delimiters such as ':' and '@' (report by John
+         Polterak).
+       + implement a workaround so that line-drawing works with screen's
+         crippled UTF-8 support (tested with 3.9.13).  This only works with
+         the wide-character support (--enable-widec); the normal library will
+         simply suppress line-drawing when running in a UTF-8 locale in screen.
+
+20021214
+       + allow BUILD_CC and related configure script variables to be
+         overridden from the environment.
+       + make build-tools variables in ncurses/Makefile.in consistent with
+         the configure script variables (report by Maciej W Rozycki).
+       + modify ncurses/modules to allow
+               configure --disable-leaks --disable-ext-funcs
+         to build (report by Gary Samuelson).
+       + fix a few places in configure.in which lacked quotes (report by
+         Gary Samuelson <gary.samuelson@verizon.com>).
+       + correct handling of multibyte characters in waddch_literal() which
+         force wrapping because they are started too late on the line (report
+         by Sam Varshavchik).
+       + small fix for CF_GNAT_VERSION to ignore the help-message which
+         gnatmake adds to its version-message.
+       > Maciej W Rozycki <macro@ds2.pg.gda.pl>:
+       + use AC_CHECK_TOOL to get proper values for AR and LD for cross
+         compiling.
+       + use $cross_compiling variable in configure script rather than
+         comparing $host_alias and $target alias, since "host" is
+         traditionally misused in autoconf to refer to the target platform.
+       + change configure --help message to use "build" rather than "host"
+         when referring to the --with-build-XXX options.
+
+20021206
+       + modify CF_GNAT_VERSION to print gnatmake's version, and to allow for
+         possible gnat versions such as 3.2 (report by Chris Lingard
+         <chris@stockwith.co.uk>).
+       + modify #define's for CKILL and other default control characters in
+         tset to use the system's default values if they are defined.
+       + correct interchanged defaults for kill and interrupt characters
+         in tset, which caused it to report unnecessarily (Debian #171583).
+       + repair check for missing C++ compiler, which is broken in autoconf
+         2.5x by hardcoding it to g++ (report by Martin Mokrejs).
+       + update config.guess, config.sub (2002-11-30)
+       + modify configure script to skip --with-shared, etc., when the
+         --with-libtool option is given, since they would be ignored anyway.
+       + fix to allow "configure --with-libtool --with-termlib" to build.
+       + modify configure script to show version number of libtool, to help
+         with bug reports.  libtool still gets confused if the installed
+         ncurses libraries are old, since it ignores the -L options at some
+         point (tested with libtool 1.3.3 and 1.4.3).
+       + reorder configure script's updating of $CPPFLAGS and $CFLAGS to
+         prevent -I options in the user's environment from introducing
+         conflicts with the build -I options (may be related to reports by
+         Patrick Ash and George Goffe).
+       + rename test/define_key.c to test/demo_defkey.c, test/keyok.c to
+         test/demo_keyok.c to allow building these with libtool.
+
+20021123
+       + add example program test/define_key.c for define_key().
+       + add example program test/keyok.c for keyok().
+       + add example program test/ins_wide.c for wins_wch() and wins_wstr().
+       + modify wins_wch() and wins_wstr() to interpret tabs by using the
+         winsch() internal function.
+       + modify setcchar() to allow for wchar_t input strings that have
+         more than one spacing character.
+
+20021116
+       + fix a boundary check in lib_insch.c (patch by Philippe Blain).
+       + change type for *printw functions from NCURSES_CONST to const
+         (prompted by comment by Pedro Palhoto Matos <plpm@mega.ist.utl.pt>,
+         but really from a note on X/Open's website stating that either is
+         acceptable, and the latter will be used in a future revision).
+       + add xterm-1002, xterm-1003 terminfo entries to demonstrate changes in
+         lib_mouse.c (20021026) -TD
+       + add screen-bce, screen-s entries from screen 3.9.13 (report by
+         Adam Lazur <zal@debian.org>) -TD
+       + add mterm terminfo entries -TD
+
+20021109
+       + split-out useful fragments in terminfo for vt100 and vt220 numeric
+         keypad, i.e., vt100+keypad, vt100+pfkeys, vt100+fnkeys and
+         vt220+keypad.  The last as embedded in various entries had ka3 and
+         kb2 interchanged (report/discussion with Leonard den Ottolander
+         <leonardjo@hetnet.nl>).
+       + add check in tic for keypads consistent with vt100 layout.
+       + improve checks in tic for color capabilities
+
+20021102
+       + check for missing/empty/illegal terminfo name in _nc_read_entry()
+         (report by Martin Mokrejs, where $TERM was set to an empty string).
+       + rewrote lib_insch.c, combining it with lib_insstr.c so both handle
+         tab and other control characters consistently (report by Philippe
+         Blain).
+       + remove an #undef for KEY_EVENT from curses.tail used in the
+         experimental NCURSES_WGETCH_EVENTS feature.  The #undef confuses
+         dpkg's build script (Debian #165897).
+       + fix MKlib_gen.sh, working around the ironically named POSIXLY_CORRECT
+         feature of GNU sed 4.0 (reported by Ervin Nemeth <airwin@inf.bme.hu>).
+
+20021026
+       + implement logic in lib_mouse.c to handle position reports which are
+         generated when XFree86 xterm is initialized with private modes 1002
+         or 1003.  These are returned to the application as the
+         REPORT_MOUSE_POSITION mask, which was not implemented.  Tested both
+         with ncurses 'a' menu (prompted by discussion with Larry Riedel
+         <Larry@Riedel.org>).
+       + modify lib_mouse.c to look for "XM" terminfo string, which allows
+         one to override the escape sequence used to enable/disable mouse
+         mode.  In particular this works for XFree86 xterm private modes
+         1002 and 1003.  If "XM" is missing (note that this is an extended
+         name), lib_mouse uses the conventional private mode 1000.
+       + correct NOT_LOCAL() macro in lib_mvcur.c to refer to screen_columns
+         where it used screen_lines (report by Philippe Blain).
+       + correct makefile rules for the case when both --with-libtool and
+         --with-gpm are given (report by Mr E_T <troll@logi.net.au>).
+       + add note to terminfo manpage regarding the differences between
+         setaf/setab and setf/setb capabilities (report by Pavel Roskin).
+
+20021019
+       + remove redundant initialization of TABSIZE in newterm(), since it is
+         already done in setupterm() (report by Philippe Blain).
+       + add test/inserts.c, to test winnstr() and winsch().
+       + replace 'sort' in dist.mk with script that sets locale to POSIX.
+       + update URLs in announce.html.in (patch by Frederic L W Meunier).
+       + remove glibc add-on files, which are no longer needed (report by
+         Frederic L W Meunier).
+
 20021012 5.3 release for upload to ftp.gnu.org
        + modify ifdef's in etip.h.in to allow the etip.h header to compile
          with gcc 3.2 (patch by Dimitar Zhekov <jimmy@is-vn.bg>).
@@ -192,7 +974,7 @@ Changes since 1.9.9e are recorded by Thomas Dickey.
 
 20020727
        + finish no-leak checking in cardfile.c, using this for testing changes
-         to resizeterm(). 
+         to resizeterm().
        + simplify _nc_freeall() using delscreen().
 
 20020720
@@ -355,7 +1137,7 @@ Changes since 1.9.9e are recorded by Thomas Dickey.
          can be linked.
 
 20020413
-       + add manpages: curs_get_wstr.3x, curs_in_wchstr.3x    
+       + add manpages: curs_get_wstr.3x, curs_in_wchstr.3x
        + implement wgetn_wstr().
        + implement win_wchnstr().
        + remove redefinition of unget_wch() in lib_gen.c (reported by
@@ -395,7 +1177,8 @@ Changes since 1.9.9e are recorded by Thomas Dickey.
        + implement key_name().
        + remove const's in lib_box.c incorrectly leftover after splitting off
          lib_box_set.c
-       + update llib-lncurses, llib-ncursesw, fix configure script related to these.
+       + update llib-lncurses, llib-ncursesw, fix configure script related to
+         these.
 
 20020218
        + remove quotes on "SYNOPSIS" in man/curs_box_set.3x, which resulted
@@ -417,7 +1200,7 @@ Changes since 1.9.9e are recorded by Thomas Dickey.
          options.
        > patch by Sven Verdoolaege (report by Gerhard Haering
          <haering_linux@gmx.de>):
-       + correct typos in definitions of several wide-character macros: 
+       + correct typos in definitions of several wide-character macros:
          waddwstr, wgetbkgrnd, mvaddwstr, mvwadd_wchnstr, mvwadd_wchnstr,
          mvwaddwstr.
        + pass $(CPPFLAGS) to MKlib_gen.sh, thereby fixing a missing definition
@@ -579,7 +1362,7 @@ Changes since 1.9.9e are recorded by Thomas Dickey.
          in the C++ runtime.
        + modify the build to name dynamic libraries according to the
          convention used on OS X and Darwin.  Rather than something like
-         libncurses.dylib.5.2, Darwin would name it libncurses.  5.dylib. 
+         libncurses.dylib.5.2, Darwin would name it libncurses.  5.dylib.
          There are a few additional minor fixes, such as setting the library
          version and compatibility version numbers (patch by Jason Evans
          <jevans@apple.com>).
@@ -664,7 +1447,7 @@ Changes since 1.9.9e are recorded by Thomas Dickey.
 20011001
        + simpler fix for signal_name(), to replace the one overlooked in
          20010929 (reported by Larry Virden).
-         
+
 20010929
        + add -i option to view.c, to test ncurses' check for non-default
          signal handler for SIGINT, etc.
diff --git a/README b/README
index c46fc195ac5b397ca6471eedc0b22da90bcaee7a..6fd3098d704af2e8e462d31a70a950c7908eee8c 100644 (file)
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
--- $Id: README,v 1.20 2000/08/12 23:31:21 tom Exp $
+-- $Id: README,v 1.21 2003/02/08 19:36:39 tom Exp $
 -------------------------------------------------------------------------------
                README file for the ncurses package
 
@@ -43,6 +43,14 @@ The libraries are:
        libform.so         (shared)
        libform_g.a        (debug enabled)
 
+If you configure using the --enable-widec option, a "w" is appended to the
+library names (e.g., libncursesw.a), and the resulting libraries support
+wide-characters, e.g., via a UTF-8 locale.  The corresponding header files
+are compatible with the non-wide-character configuration; wide-character
+features are provided by ifdef's in the header files.  The wide-character
+library interfaces are not binary-compatible with the non-wide-character
+version.
+
 The ncurses libraries implement the curses API.  The panel, menu and forms
 libraries implement clones of the SVr4 panel, menu and forms APIs.  The source
 code for these lives in the `ncurses', `panel', `menu', and `form' directories
diff --git a/README.glibc b/README.glibc
deleted file mode 100644 (file)
index 7d52269..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-To compile this as an add-on for glibc, unpack it in the glibc source
-tree and put ncurses on the add-on list when you do configure.
-
-hjl@gnu.ai.mit.edu
-03/21/1997
diff --git a/TO-DO b/TO-DO
index e99051f5503bf5ba58ffcf7c01a82c52f02a8bdf..a689447b723c2322355ab03c4a3ce11a949dad83 100644 (file)
--- a/TO-DO
+++ b/TO-DO
@@ -1,11 +1,15 @@
--- $Id: TO-DO,v 1.41 2002/08/31 21:32:43 tom Exp $
+-- $Id: TO-DO,v 1.43 2004/02/08 21:09:00 tom Exp $
 
 SHORT-TERM TO-DO ITEMS:
 
 Known Problems:
 
-* GNAT does not put libraries in the correct order, so a build only links
-  properly if you use shared libraries since -lncurses is first.
+* The form/menu libraries do not use wide-character features.
+
+* Some users would like to build a single version of libtinfo which can be
+  used from either libncursesw or libncurses.
+
+* libtool does not work with GNAT.
 
 * The screen optimization has been tested only in an ad hoc manner.  We should
   develop a good set of regression tests to cover lib_doupdate.c and
@@ -23,7 +27,7 @@ Known Problems:
   activates them), and a touchwin can apparently also force them to be
   displayed.
 
-+ The code departs from perfect 8-bit cleanness in one respect; you cannot
+* The code departs from perfect 8-bit cleanness in one respect; you cannot
   specify a character \200 as part of a capability string, because the terminfo
   library interprets \200 as a request to embed NUL (\000) at that point.  This
   is a legacy terminfo property we can't mess with.
@@ -42,7 +46,7 @@ Portability (or lack thereof):
   suspend (this problem was first seen running lynx).  You will not see 
   this problem if you are running Linux or one of the 4.4BSD derivatives
   like FreeBSD, NetBSD, or BSDI.  For details, see the analysis in the
-  header comment of ncurses/lib_tstp.c.
+  header comment of ncurses/tty/lib_tstp.c .
 
 * In theory, vwprintw and vwscanf are supposed to use the older varargs.h
   interface for handling variadic argument lists.  Linux doesn't have
@@ -56,21 +60,10 @@ Portability (or lack thereof):
   (It should work on any System V, however).  If you want to fix this, add
   an implementation to ncurses/vsscanf.c.
 
-* The demo build for the c++ library craps out with many link errors under gcc
-  2.6.3.  We're told the C++ support in 2.6.3 is broken and that the right
-  fix is to upgrade to 2.7.0.  This demo is also known to not build with
-  the Sun SPARCworks 4.1 C++ compiler, due to a problem resolving templates.
-
-* Under Ultrix, configure craps out (Ultrix sh is lame).  Run it under ksh.
-
-* We've not tested the configure script with cross-compilers.  The autoconf
-  tests are supposed to be able to support this (please report bugs).  You will
-  have to configure and build in two steps.  The first step must create the
-  automatically-generated sources (e.g., comp_captab.c) on your host machine. 
-  Then, run "make mostlyclean", remove config.* from the top-level directory
-  and configure for the cross-compiler.
+* The C++ binding fails to build with a few C++ compilers, mainly with
+  configure script problems with vsscanf().
 
-+ terminfo.5 does not format with the SunOS (and most other platform's) tbl
+* terminfo.5 does not format with the SunOS (and most other platform's) tbl
   utility because it relies on a diversion for each table entry.  Get the groff
   package.
 
@@ -83,8 +76,6 @@ Untested features:
   label_on, plab_norm, lab_f*) has not been tested.  The label_format and
   lab_f* capabilities aren't presently used.
 
-* The wide-character input functions need testing.
-
 LONGER-TERM TO-DO ITEMS:
 
 1. Extended COSE conformance
@@ -94,10 +85,6 @@ of the SVr4 API.  The library is BASE conformant with this standard.
 We would like to make ncurses fully conformant at the EXTENDED level
 supporting internationalization.
 
-Current status:
-       pecho_wchar() not implemented.
-       slk_wset not implemented.
-
 2. DOS port
 
 Only 16 of the 55 files in the library depend on the terminfo format.
@@ -187,5 +174,3 @@ These are the potentially important ones for ncurses.  Notes:
 
        ii) We probably don't care about dest_tabs_magic_smso; only
                Telerays used it and they're all long obsolete.
-
-
index 19f9bd58334516471def956167a15ef8183b82d1..a70a64e1a338bed405bf742eb01b0f696804d6c9 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
-dnl Copyright (c) 1998-2000,2001,2002 Free Software Foundation, Inc.         *
+dnl Copyright (c) 1998-2003,2004 Free Software Foundation, Inc.              *
 dnl                                                                          *
 dnl Permission is hereby granted, free of charge, to any person obtaining a  *
 dnl copy of this software and associated documentation files (the            *
@@ -26,22 +26,24 @@ dnl sale, use or other dealings in this Software without prior written       *
 dnl authorization.                                                           *
 dnl***************************************************************************
 dnl
-dnl Author: Thomas E. Dickey 1996,1997,1998,1999,2000,2001
+dnl Author: Thomas E. Dickey 1995-2003
 dnl
-dnl $Id: aclocal.m4,v 1.285 2002/09/21 23:59:01 tom Exp $
+dnl $Id: aclocal.m4,v 1.333 2004/01/30 20:59:56 tom Exp $
 dnl Macros used in NCURSES auto-configuration script.
 dnl
 dnl See http://invisible-island.net/autoconf/ for additional information.
 dnl
 dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
+dnl CF_ADA_INCLUDE_DIRS version: 4 updated: 2002/12/01 00:12:15
+dnl -------------------
 dnl Construct the list of include-options for the C programs in the Ada95
 dnl binding.
 AC_DEFUN([CF_ADA_INCLUDE_DIRS],
 [
-ACPPFLAGS="$ACPPFLAGS -I. -I../../include"
+ACPPFLAGS="-I. -I../../include $ACPPFLAGS"
 if test "$srcdir" != "."; then
-       ACPPFLAGS="$ACPPFLAGS -I\$(srcdir)/../../include"
+       ACPPFLAGS="-I\$(srcdir)/../../include $ACPPFLAGS"
 fi
 if test "$GCC" != yes; then
        ACPPFLAGS="$ACPPFLAGS -I\$(includedir)"
@@ -57,6 +59,8 @@ fi
 AC_SUBST(ACPPFLAGS)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_ADD_CFLAGS version: 5 updated: 2002/12/01 00:12:15
+dnl -------------
 dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
 dnl The second parameter if given makes this macro verbose.
 AC_DEFUN([CF_ADD_CFLAGS],
@@ -88,11 +92,13 @@ fi
 
 if test -n "$cf_new_cppflags" ; then
        ifelse($2,,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)])
-       CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+       CPPFLAGS="$cf_new_cppflags $CPPFLAGS"
 fi
 
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_ANSI_CC_CHECK version: 9 updated: 2001/12/30 17:53:34
+dnl ----------------
 dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES'
 dnl in the sharutils 4.2 distribution.
 AC_DEFUN([CF_ANSI_CC_CHECK],
@@ -143,6 +149,8 @@ fi
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_ANSI_CC_REQD version: 3 updated: 1997/09/06 13:40:44
+dnl ---------------
 dnl For programs that must use an ANSI compiler, obtain compiler options that
 dnl will make it recognize prototypes.  We'll do preprocessor checks in other
 dnl macros, since tools such as unproto can fake prototypes, but only part of
@@ -159,18 +167,38 @@ You have the following choices:
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_BOOL_DECL version: 8 updated: 2004/01/30 15:51:18
+dnl ------------
 dnl Test if 'bool' is a builtin type in the configured C++ compiler.  Some
 dnl older compilers (e.g., gcc 2.5.8) don't support 'bool' directly; gcc
 dnl 2.6.3 does, in anticipation of the ANSI C++ standard.
 dnl
 dnl Treat the configuration-variable specially here, since we're directly
 dnl substituting its value (i.e., 1/0).
+dnl
+dnl $1 is the shell variable to store the result in, if not $cv_cv_builtin_bool
 AC_DEFUN([CF_BOOL_DECL],
 [
-AC_CHECK_HEADER(stdbool.h,
-       cf_cv_header_stdbool_h=1,
-       cf_cv_header_stdbool_h=0)
+AC_MSG_CHECKING(if we should include stdbool.h)
+
+AC_CACHE_VAL(cf_cv_header_stdbool_h,[
+       AC_TRY_COMPILE([],[bool foo = false],
+               [cf_cv_header_stdbool_h=0],
+               [AC_TRY_COMPILE([
+#ifndef __BEOS__
+#include <stdbool.h>
+#endif
+],[bool foo = false],
+                       [cf_cv_header_stdbool_h=1],
+                       [cf_cv_header_stdbool_h=0])])])
+
+if test "$cf_cv_header_stdbool_h" = 1
+then   AC_MSG_RESULT(yes)
+else   AC_MSG_RESULT(no)
+fi
+
 AC_MSG_CHECKING([for builtin bool type])
+
 AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[
        AC_TRY_COMPILE([
 #include <stdio.h>
@@ -179,12 +207,15 @@ AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[
                [ifelse($1,,cf_cv_builtin_bool,[$1])=1],
                [ifelse($1,,cf_cv_builtin_bool,[$1])=0])
        ])
+
 if test "$ifelse($1,,cf_cv_builtin_bool,[$1])" = 1
 then   AC_MSG_RESULT(yes)
 else   AC_MSG_RESULT(no)
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_BOOL_SIZE version: 10 updated: 2002/02/23 20:38:31
+dnl ------------
 dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type).
 dnl Don't bother looking for bool.h, since it's been deprecated.
 dnl
@@ -251,6 +282,8 @@ if test "$cf_cv_type_of_bool" = unknown ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_CFG_DEFAULTS version: 6 updated: 2003/07/12 15:15:19
+dnl ---------------
 dnl Determine the default configuration into which we'll install ncurses.  This
 dnl can be overridden by the user's command-line options.  There's two items to
 dnl look for:
@@ -267,7 +300,7 @@ AC_MSG_CHECKING(for prefix)
 if test "x$prefix" = "xNONE" ; then
        case "$cf_cv_system_name" in
                # non-vendor systems don't have a conflict
-       openbsd*|netbsd*|freebsd*|linux*|cygwin*)
+       openbsd*|netbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu)
                prefix=/usr
                ;;
        *)      prefix=$ac_default_prefix
@@ -303,6 +336,8 @@ AC_MSG_RESULT($includedir)
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_CGETENT version: 3 updated: 2000/08/12 23:18:52
+dnl ----------
 dnl Check if the terminal-capability database functions are available.  If not,
 dnl ncurses has a much-reduced version.
 AC_DEFUN([CF_CGETENT],[
@@ -324,6 +359,8 @@ AC_MSG_RESULT($cf_cv_cgetent)
 test "$cf_cv_cgetent" = yes && AC_DEFINE(HAVE_BSD_CGETENT)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_CACHE version: 9 updated: 2004/01/30 15:59:13
+dnl --------------
 dnl Check if we're accidentally using a cache from a different machine.
 dnl Derive the system name, as a check for reusing the autoconf cache.
 dnl
@@ -331,6 +368,9 @@ dnl If we've packaged config.guess and config.sub, run that (since it does a
 dnl better job than uname).  Normally we'll use AC_CANONICAL_HOST, but allow
 dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM
 dnl which is useful in cross-compiles.
+dnl
+dnl Note: we would use $ac_config_sub, but that is one of the places where
+dnl autoconf 2.5x broke compatibility with autoconf 2.13
 AC_DEFUN([CF_CHECK_CACHE],
 [
 if test -f $srcdir/config.guess ; then
@@ -354,6 +394,8 @@ if test ".$system_name" != ".$cf_cv_system_name" ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_ERRNO version: 9 updated: 2001/12/30 18:03:23
+dnl --------------
 dnl Check for data that is usually declared in <stdio.h> or <errno.h>, e.g.,
 dnl the 'errno' variable.  Define a DECL_xxx symbol if we must declare it
 dnl ourselves.
@@ -383,6 +425,8 @@ fi
 CF_CHECK_EXTERN_DATA($1,int)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_EXTERN_DATA version: 3 updated: 2001/12/30 18:03:23
+dnl --------------------
 dnl Check for existence of external data in the current set of libraries.  If
 dnl we can modify it, it's real enough.
 dnl $1 = the name to check
@@ -406,6 +450,8 @@ fi
 
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_CPP_PARAM_INIT version: 4 updated: 2001/04/07 22:31:18
+dnl -----------------
 dnl Check if the C++ compiler accepts duplicate parameter initialization.  This
 dnl is a late feature for the standard and is not in some recent compilers
 dnl (1999/9/11).
@@ -439,6 +485,8 @@ fi
 test "$cf_cv_cpp_param_init" = yes && AC_DEFINE(CPP_HAS_PARAM_INIT)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_CPP_VSCAN_FUNC version: 5 updated: 2001/12/02 01:39:28
+dnl -----------------
 dnl Check if the g++ compiler supports vscan function (not a standard feature).
 AC_DEFUN([CF_CPP_VSCAN_FUNC],
 [
@@ -515,9 +563,13 @@ strstream_cast)
 esac
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52
+dnl ----------
 dnl "dirname" is not portable, so we fake it with a shell script.
-AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's:/[[^/]]*$::'`])dnl
+AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_DIRS_TO_MAKE version: 3 updated: 2002/02/23 20:38:31
+dnl ---------------
 AC_DEFUN([CF_DIRS_TO_MAKE],
 [
 DIRS_TO_MAKE="lib"
@@ -537,12 +589,16 @@ done
 AC_SUBST(DIRS_TO_MAKE)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_ERRNO version: 5 updated: 1997/11/30 12:44:39
+dnl --------
 dnl Check if 'errno' is declared in <errno.h>
 AC_DEFUN([CF_ERRNO],
 [
 CF_CHECK_ERRNO(errno)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_ETIP_DEFINES version: 3 updated: 2003/03/22 19:13:43
+dnl ---------------
 dnl Test for conflicting definitions of exception in gcc 2.8.0, etc., between
 dnl math.h and builtin.h, only for ncurses
 AC_DEFUN([CF_ETIP_DEFINES],
@@ -554,7 +610,7 @@ for cf_math in "" MATH_H
 do
 for cf_excp in "" MATH_EXCEPTION
 do
-       CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu"
+       CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include"
        test -n "$cf_math" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_math}"
        test -n "$cf_excp" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_excp}"
 AC_TRY_COMPILE([
@@ -571,6 +627,8 @@ AC_MSG_RESULT($cf_result)
 CXXFLAGS="$cf_save_CXXFLAGS"
 ])
 dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_MEMMOVE version: 5 updated: 2000/08/12 23:18:52
+dnl ---------------
 dnl Check for memmove, or a bcopy that can handle overlapping copy.  If neither
 dnl is found, add our own version of memmove to the list of objects.
 AC_DEFUN([CF_FUNC_MEMMOVE],
@@ -600,6 +658,8 @@ int main() {
        fi
 ])])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_POLL version: 2 updated: 2000/02/06 01:38:04
+dnl ------------
 dnl See if the poll function really works.  Some platforms have poll(), but
 dnl it does not work for terminals or files.
 AC_DEFUN([CF_FUNC_POLL],[
@@ -627,6 +687,8 @@ int main() {
 test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_TERMIOS version: 2 updated: 2000/07/22 23:37:24
+dnl ---------------
 dnl Some old/broken variations define tcgetattr() only as a macro in
 dnl termio(s).h
 AC_DEFUN([CF_FUNC_TERMIOS],[
@@ -654,6 +716,8 @@ tcgetattr(1, &foo);],
 test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_VSSCANF version: 3 updated: 2001/12/19 00:50:10
+dnl ---------------
 dnl Check for vsscanf() function, which is in c9x but generally not in earlier
 dnl versions of C.  It is in the GNU C library, and can often be simulated by
 dnl other functions.
@@ -697,6 +761,8 @@ esac
 
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_GCC_ATTRIBUTES version: 9 updated: 2002/12/21 19:25:52
+dnl -----------------
 dnl Test for availability of useful gcc __attribute__ directives to quiet
 dnl compiler warnings.  Though useful, not all are supported -- and contrary
 dnl to documentation, unrecognized directives cause older compilers to barf.
@@ -761,8 +827,6 @@ EOF
                if AC_TRY_EVAL(ac_compile); then
                        test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
                        cat conftest.h >>confdefs.h
-#              else
-#                      sed -e 's/__attr.*/\/*nothing*\//' conftest.h >>confdefs.h
                fi
        done
 else
@@ -772,17 +836,35 @@ rm -rf conftest*
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_GCC_VERSION version: 3 updated: 2003/09/06 19:16:57
+dnl --------------
+dnl Find version of gcc
+AC_DEFUN([CF_GCC_VERSION],[
+AC_REQUIRE([AC_PROG_CC])
+GCC_VERSION=none
+if test "$GCC" = yes ; then
+       AC_MSG_CHECKING(version of $CC)
+       GCC_VERSION="`${CC} --version|sed -e '2,$d' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
+       test -z "$GCC_VERSION" && GCC_VERSION=unknown
+       AC_MSG_RESULT($GCC_VERSION)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_GCC_WARNINGS version: 15 updated: 2003/07/05 18:42:30
+dnl ---------------
 dnl Check if the compiler supports useful warning options.  There's a few that
 dnl we don't use, simply because they're too noisy:
 dnl
 dnl    -Wconversion (useful in older versions of gcc, but not in gcc 2.7.x)
 dnl    -Wredundant-decls (system headers make this too noisy)
 dnl    -Wtraditional (combines too many unrelated messages, only a few useful)
-dnl    -Wwrite-strings (too noisy, but should review occasionally)
+dnl    -Wwrite-strings (too noisy, but should review occasionally).  This
+dnl            is enabled for ncurses using "--enable-const".
 dnl    -pedantic
 dnl
 AC_DEFUN([CF_GCC_WARNINGS],
 [
+AC_REQUIRE([CF_GCC_VERSION])
 if test "$GCC" = yes
 then
        cat > conftest.$ac_ext <<EOF
@@ -810,8 +892,19 @@ EOF
                CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
                if AC_TRY_EVAL(ac_compile); then
                        test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
+                       case $cf_opt in #(vi
+                       Wcast-qual) #(vi
+                               CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES"
+                               ;;
+                       Winline) #(vi
+                               case $GCC_VERSION in
+                               3.3*)
+                                       CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
+                                       continue;;
+                               esac
+                               ;;
+                       esac
                        EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
-                       test "$cf_opt" = Wcast-qual && EXTRA_CFLAGS="$EXTRA_CFLAGS -DXTSTRINGDEFINES"
                fi
        done
        rm -f conftest*
@@ -820,6 +913,8 @@ fi
 AC_SUBST(EXTRA_CFLAGS)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_GNAT_TRY_RUN version: 2 updated: 1998/07/19 00:25:18
+dnl ---------------
 dnl Verify that a test program compiles and runs with GNAT
 dnl $cf_ada_make is set to the program that compiles/links
 AC_DEFUN([CF_GNAT_TRY_RUN],
@@ -843,21 +938,26 @@ fi
 rm -f conftest*
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl Verify Version of GNAT.
+dnl CF_GNAT_VERSION version: 11 updated: 2003/09/06 19:42:09
+dnl ---------------
+dnl Verify version of GNAT.
 AC_DEFUN([CF_GNAT_VERSION],
 [
-cf_cv_gnat_version=`$cf_ada_make -v 2>&1 | grep '[[0-9]].[[0-9]][[0-9]]*' |\
-  sed -e 's/[[^0-9 \.]]//g' | $AWK '{print $[1];}'`
-case $cf_cv_gnat_version in
+AC_MSG_CHECKING(for gnat version)
+cf_gnat_version=`${cf_ada_make-gnatmake} -v 2>&1 | grep '[[0-9]].[[0-9]][[0-9]]*' |\
+  sed -e '2,$d' -e 's/[[^0-9 \.]]//g' -e 's/^[[ ]]*//' -e 's/ .*//'`
+AC_MSG_RESULT($cf_gnat_version)
+
+case $cf_gnat_version in
   3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*)
     cf_cv_prog_gnat_correct=yes
     ;;
-  *) echo Unsupported GNAT version $cf_cv_gnat_version. Required is 3.11 or better. Disabling Ada95 binding.
+  *) echo Unsupported GNAT version $cf_gnat_version. Required is 3.11 or better. Disabling Ada95 binding.
      cf_cv_prog_gnat_correct=no
      ;;
 esac
-case $cf_cv_gnat_version in
-  3.1*|[[4-9]].*)
+case $cf_gnat_version in
+  3.[[1-9]]*|[[4-9]].*)
       cf_compile_generics=generics
       cf_generic_objects="\$(GENOBJS)"
       ;;
@@ -867,6 +967,8 @@ case $cf_cv_gnat_version in
 esac
 ])
 dnl ---------------------------------------------------------------------------
+dnl CF_GNU_SOURCE version: 3 updated: 2000/10/29 23:30:53
+dnl -------------
 dnl Check if we must define _GNU_SOURCE to get a reasonable value for
 dnl _XOPEN_SOURCE, upon which many POSIX definitions depend.  This is a defect
 dnl (or misfeature) of glibc2, which breaks portability of many applications,
@@ -895,6 +997,8 @@ make an error
 test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_GPP_LIBRARY version: 8 updated: 2003/02/02 01:41:46
+dnl --------------
 dnl If we're trying to use g++, test if libg++ is installed (a rather common
 dnl problem :-).  If we have the compiler but no library, we'll be able to
 dnl configure, but won't be able to build the c++ demo program.
@@ -909,7 +1013,7 @@ os2*) #(vi
        cf_gpp_libname=g++
        ;;
 esac
-if test "$ac_cv_prog_gxx" = yes; then
+if test "$GXX" = yes; then
        AC_MSG_CHECKING([for lib$cf_gpp_libname])
        cf_save="$LIBS"
        LIBS="$LIBS -l$cf_gpp_libname"
@@ -937,20 +1041,37 @@ if test "$ac_cv_prog_gxx" = yes; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_GXX_VERSION version: 3 updated: 2003/09/06 19:16:21
+dnl --------------
+dnl Check for version of g++
+AC_DEFUN([CF_GXX_VERSION],[
+AC_REQUIRE([AC_PROG_CPP])
+GXX_VERSION=none
+if test "$GXX" = yes; then
+       AC_MSG_CHECKING(version of g++)
+       GXX_VERSION="`${CXX-g++} --version|sed -e '2,$d'`"
+       AC_MSG_RESULT($GXX_VERSION)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_HELP_MESSAGE version: 3 updated: 1998/01/14 10:56:23
+dnl ---------------
 dnl Insert text into the help-message, for readability, from AC_ARG_WITH.
 AC_DEFUN([CF_HELP_MESSAGE],
 [AC_DIVERT_HELP([$1])dnl
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_INCLUDE_DIRS version: 4 updated: 2002/12/01 00:12:15
+dnl ---------------
 dnl Construct the list of include-options according to whether we're building
 dnl in the source directory or using '--srcdir=DIR' option.  If we're building
 dnl with gcc, don't append the includedir if it happens to be /usr/include,
 dnl since that usually breaks gcc's shadow-includes.
 AC_DEFUN([CF_INCLUDE_DIRS],
 [
-CPPFLAGS="$CPPFLAGS -I. -I../include"
+CPPFLAGS="-I. -I../include $CPPFLAGS"
 if test "$srcdir" != "."; then
-       CPPFLAGS="$CPPFLAGS -I\$(srcdir)/../include"
+       CPPFLAGS="-I\$(srcdir)/../include $CPPFLAGS"
 fi
 if test "$GCC" != yes; then
        CPPFLAGS="$CPPFLAGS -I\$(includedir)"
@@ -966,6 +1087,8 @@ fi
 AC_SUBST(CPPFLAGS)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_ISASCII version: 3 updated: 2000/08/12 23:18:52
+dnl ----------
 dnl Check if we have either a function or macro for 'isascii()'.
 AC_DEFUN([CF_ISASCII],
 [
@@ -979,6 +1102,8 @@ AC_MSG_RESULT($cf_cv_have_isascii)
 test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_LIBUTF8 version: 2 updated: 2002/01/19 22:51:32
+dnl ----------
 dnl Check for libutf8
 AC_DEFUN([CF_LIBUTF8],
 [
@@ -998,6 +1123,8 @@ if test "$cf_cv_libutf8" = yes ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_LIB_PREFIX version: 7 updated: 2001/01/12 01:23:48
+dnl -------------
 dnl Compute the library-prefix for the given host system
 dnl $1 = variable to set
 AC_DEFUN([CF_LIB_PREFIX],
@@ -1011,6 +1138,8 @@ ifelse($1,,,[$1=$LIB_PREFIX])
        AC_SUBST(LIB_PREFIX)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_LIB_RULES version: 30 updated: 2004/01/10 15:50:50
+dnl ------------
 dnl Append definitions and rules for the given models to the subdirectory
 dnl Makefiles, and the recursion rule for the top-level Makefile.  If the
 dnl subdirectory is a library-source directory, modify the LIBRARIES list in
@@ -1054,8 +1183,10 @@ do
                                esac
                        fi
                        # cygwin needs import library, and has unique naming convention
+                       # use autodetected ${cf_prefix} for import lib and static lib, but
+                       # use 'cyg' prefix for shared lib.
                        if test $cf_cv_shlib_version = cygdll ; then
-                               SHARED_LIB="../lib/${cf_prefix}${cf_dir}\$(ABI_VERSION).dll"
+                               SHARED_LIB="../lib/cyg${cf_dir}\$(ABI_VERSION).dll"
                                IMPORT_LIB="../lib/${cf_prefix}${cf_dir}.dll.a"
                                LIBS_TO_MAKE="$LIBS_TO_MAKE \$(SHARED_LIB) \$(IMPORT_LIB)"
                                continue
@@ -1066,16 +1197,13 @@ do
 
                if test $cf_dir = ncurses ; then
                        cf_subsets="$LIB_SUBSETS"
-                       case "$LIB_SUBSETS" in #(vi
-                       termlib+*) #(vi
-                               ;;
-                       *) #(vi
-                               cf_item=`echo $LIBS_TO_MAKE |sed -e s/$LIB_NAME/$TINFO_NAME/g`
+                       cf_termlib=`echo "$cf_subsets" |sed -e 's/ .*$//'`
+                       if test "$cf_termlib" != "$cf_subsets" ; then
+                               cf_item=`echo $LIBS_TO_MAKE |sed -e s%$LIB_NAME%$TINFO_NAME%g`
                                LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE"
-                               ;;
-                       esac
+                       fi
                else
-                       cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib //'`
+                       cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'`
                fi
 
                sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \
@@ -1128,7 +1256,7 @@ do
                                ldconfig="$LDCONFIG" \
                                overwrite=$WITH_OVERWRITE \
                                depend="$cf_depend" \
-                               target="$target" \
+                               host="$host" \
                                $srcdir/$cf_dir/modules >>$cf_dir/Makefile
                        for cf_subdir2 in $cf_subdirs lib
                        do
@@ -1364,6 +1492,8 @@ done
 
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_LIB_SUFFIX version: 13 updated: 2003/11/01 16:09:07
+dnl -------------
 dnl Compute the library file-suffix from the given model name
 dnl $1 = model name
 dnl $2 = variable to set
@@ -1380,13 +1510,20 @@ AC_DEFUN([CF_LIB_SUFFIX],
                case $cf_cv_system_name in
                cygwin*) $2='.dll' ;;
                darwin*) $2='.dylib' ;;
-               hpux*)  $2='.sl'  ;;
+               hpux*)
+                       case $target in
+                       ia64*)  $2='.so' ;;
+                       *)      $2='.sl' ;;
+                       esac
+                       ;;
                *)      $2='.so'  ;;
                esac
        esac
        test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_LIB_TYPE version: 4 updated: 2000/10/20 22:57:49
+dnl -----------
 dnl Compute the string to append to -library from the given model name
 dnl $1 = model name
 dnl $2 = variable to set
@@ -1403,6 +1540,8 @@ AC_DEFUN([CF_LIB_TYPE],
        test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_LINK_DATAONLY version: 6 updated: 2003/02/02 01:41:46
+dnl ----------------
 dnl Some systems have a non-ANSI linker that doesn't pull in modules that have
 dnl only data (i.e., no functions), for example NeXT.  On those systems we'll
 dnl have to provide wrappers for global tables to ensure they're linked
@@ -1418,7 +1557,7 @@ int       testdata[[3]] = { 123, 456, 789 };
 EOF
        if AC_TRY_EVAL(ac_compile) ; then
                mv conftest.o data.o && \
-               ( $AR $AR_OPTS conftest.a data.o ) 2>&5 1>/dev/null
+               ( $AR $AR_OPTS conftest.a data.o ) 2>&AC_FD_CC 1>/dev/null
        fi
        rm -f conftest.$ac_ext data.o
        cat >conftest.$ac_ext <<EOF
@@ -1437,10 +1576,10 @@ int     testfunc()
 EOF
        if AC_TRY_EVAL(ac_compile); then
                mv conftest.o func.o && \
-               ( $AR $AR_OPTS conftest.a func.o ) 2>&5 1>/dev/null
+               ( $AR $AR_OPTS conftest.a func.o ) 2>&AC_FD_CC 1>/dev/null
        fi
        rm -f conftest.$ac_ext func.o
-       ( eval $ac_cv_prog_RANLIB conftest.a ) 2>&5 >/dev/null
+       ( eval $RANLIB conftest.a ) 2>&AC_FD_CC >/dev/null
        cf_saveLIBS="$LIBS"
        LIBS="conftest.a $LIBS"
        AC_TRY_RUN([
@@ -1464,6 +1603,8 @@ fi
 
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_LINK_FUNCS version: 5 updated: 2003/02/02 01:41:46
+dnl -------------
 dnl Most Unix systems have both link and symlink, a few don't have symlink.
 dnl A few non-Unix systems implement symlink, but not link.
 dnl A few non-systems implement neither (or have nonfunctional versions).
@@ -1473,7 +1614,7 @@ AC_CHECK_FUNCS( \
        remove \
        unlink )
 
-if test "$ac_cv_prog_cc_cross" = yes ; then
+if test "$cross_compiling" = yes ; then
        AC_CHECK_FUNCS( \
                link \
                symlink )
@@ -1519,6 +1660,8 @@ int main()
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_MAKEFLAGS version: 9 updated: 2001/12/30 18:17:27
+dnl ------------
 dnl Some 'make' programs support $(MAKEFLAGS), some $(MFLAGS), to pass 'make'
 dnl options to lower-levels.  It's very useful for "make -n" -- if we have it.
 dnl (GNU 'make' does both, something POSIX 'make', which happens to make the
@@ -1556,6 +1699,8 @@ CF_EOF
 AC_SUBST(cf_cv_makeflags)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_MAKE_TAGS version: 2 updated: 2000/10/04 09:18:40
+dnl ------------
 dnl Generate tags/TAGS targets for makefiles.  Do not generate TAGS if we have
 dnl a monocase filesystem.
 AC_DEFUN([CF_MAKE_TAGS],[
@@ -1583,8 +1728,20 @@ fi
 AC_SUBST(MAKE_LOWER_TAGS)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_MANPAGE_FORMAT version: 7 updated: 2003/12/20 19:30:34
+dnl -----------------
 dnl Option to allow user to override automatic configuration of manpage format.
-dnl There are several special cases.
+dnl There are several special cases:
+dnl
+dnl    gzip - man checks for, can display gzip'd files
+dnl    compress - man checks for, can display compressed files
+dnl    BSDI - files in the cat-directories are suffixed ".0"
+dnl    formatted - installer should format (put files in cat-directory)
+dnl    catonly - installer should only format, e.g., for a turnkey system.
+dnl
+dnl There are other configurations which this macro does not test, e.g., HPUX's
+dnl compressed manpages (but uncompressed manpages are fine, and HPUX's naming
+dnl convention would not match our use).
 AC_DEFUN([CF_MANPAGE_FORMAT],
 [
 AC_REQUIRE([CF_PATHSEP])
@@ -1592,49 +1749,96 @@ AC_MSG_CHECKING(format of man-pages)
 
 AC_ARG_WITH(manpage-format,
        [  --with-manpage-format   specify manpage-format: gzip/compress/BSDI/normal and
-                          optionally formatted, e.g., gzip,formatted],
+                          optionally formatted/catonly, e.g., gzip,formatted],
        [MANPAGE_FORMAT=$withval],
        [MANPAGE_FORMAT=unknown])
 
-case ".$MANPAGE_FORMAT" in
-.gzip|.compress|.BSDI|.normal|.formatted) # (vi
-  ;;
-.unknown|.) # (vi
+test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=unknown
+MANPAGE_FORMAT=`echo "$MANPAGE_FORMAT" | sed -e 's/,/ /g'`
+
+cf_unknown=
+
+case $MANPAGE_FORMAT in
+unknown)
   if test -z "$MANPATH" ; then
     MANPATH="/usr/man:/usr/share/man"
   fi
+
   # look for the 'date' man-page (it's most likely to be installed!)
+  MANPAGE_FORMAT=
+  cf_preform=no
+  cf_catonly=yes
+  cf_example=date
+
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATHSEP}"
-  MANPAGE_FORMAT=unknown
   for cf_dir in $MANPATH; do
     test -z "$cf_dir" && cf_dir=/usr/man
-    for cf_name in $cf_dir/*/date.[[01]]* $cf_dir/*/date
+    for cf_name in $cf_dir/man*/$cf_example.[[01]]* $cf_dir/cat*/$cf_example.[[01]]* $cf_dir/man*/$cf_example $cf_dir/cat*/$cf_example
     do
-       cf_test=`echo $cf_name | sed -e 's/*//'`
-       if test "x$cf_test" = "x$cf_name" ; then
-         case "$cf_name" in
-         *.gz) MANPAGE_FORMAT=gzip;;
-         *.Z)  MANPAGE_FORMAT=compress;;
-         *.0)  MANPAGE_FORMAT=BSDI,formatted;;
-         *)    MANPAGE_FORMAT=normal;;
-         esac
-         break
-       fi
+      cf_test=`echo $cf_name | sed -e 's/*//'`
+      if test "x$cf_test" = "x$cf_name" ; then
+
+       case "$cf_name" in
+       *.gz) MANPAGE_FORMAT="$MANPAGE_FORMAT gzip";;
+       *.Z)  MANPAGE_FORMAT="$MANPAGE_FORMAT compress";;
+       *.0)    MANPAGE_FORMAT="$MANPAGE_FORMAT BSDI";;
+       *)    MANPAGE_FORMAT="$MANPAGE_FORMAT normal";;
+       esac
+
+       case "$cf_name" in
+       $cf_dir/man*)
+         cf_catonly=no
+         ;;
+       $cf_dir/cat*)
+         cf_preform=yes
+         ;;
+       esac
+       break
+      fi
+
+      # if we found a match in either man* or cat*, stop looking
+      if test -n "$MANPAGE_FORMAT" ; then
+       cf_found=no
+       test "$cf_preform" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT formatted"
+       test "$cf_catonly" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT catonly"
+       case "$cf_name" in
+       $cf_dir/cat*)
+         cf_found=yes
+         ;;
+       esac
+       test $cf_found=yes && break
+      fi
     done
-    if test "$MANPAGE_FORMAT" != "unknown" ; then
+    # only check the first directory in $MANPATH where we find manpages
+    if test -n "$MANPAGE_FORMAT" ; then
        break
     fi
   done
+  # if we did not find the example, just assume it is normal
+  test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=normal
   IFS="$ac_save_ifs"
   ;;
-.*) # (vi
-  AC_MSG_WARN(Unexpected manpage-format)
+*)
+  for cf_option in $MANPAGE_FORMAT; do
+     case $cf_option in #(vi
+     gzip|compress|BSDI|normal|formatted|catonly)
+       ;;
+     *)
+       cf_unknown="$cf_unknown $cf_option"
+       ;;
+     esac
+  done
   ;;
 esac
 
 AC_MSG_RESULT($MANPAGE_FORMAT)
+if test -n "$cf_unknown" ; then
+  AC_MSG_WARN(Unexpected manpage-format $cf_unknown)
+fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_MANPAGE_RENAMES version: 6 updated: 2002/01/19 22:51:32
+dnl ------------------
 dnl The Debian people have their own naming convention for manpages.  This
 dnl option lets us override the name of the file containing renaming, or
 dnl disable it altogether.
@@ -1680,21 +1884,51 @@ AC_MSG_RESULT($MANPAGE_RENAMES)
 AC_SUBST(MANPAGE_RENAMES)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_MANPAGE_SYMLINKS version: 4 updated: 2003/12/13 18:01:58
+dnl -------------------
 dnl Some people expect each tool to make all aliases for manpages in the
 dnl man-directory.  This accommodates the older, less-capable implementations
 dnl of 'man', and is optional.
 AC_DEFUN([CF_MANPAGE_SYMLINKS],
 [
-AC_MSG_CHECKING(for manpage symlinks)
+AC_MSG_CHECKING(if manpage aliases will be installed)
+
+AC_ARG_WITH(manpage-aliases,
+       [  --with-manpage-aliases  specify manpage-aliases using .so],
+       [MANPAGE_ALIASES=$withval],
+       [MANPAGE_ALIASES=yes])
+
+AC_MSG_RESULT($MANPAGE_ALIASES)
+
+if test "$LN_S" = "ln -s"; then
+       cf_use_symlinks=yes
+else
+       cf_use_symlinks=no
+fi
+
+MANPAGE_SYMLINKS=no
+if test "$MANPAGE_ALIASES" = yes ; then
+AC_MSG_CHECKING(if manpage symlinks should be used)
 
 AC_ARG_WITH(manpage-symlinks,
-       [  --with-manpage-symlinks specify manpage-symlinks],
+       [  --with-manpage-symlinks specify manpage-aliases using symlinks],
        [MANPAGE_SYMLINKS=$withval],
-       [MANPAGE_SYMLINKS=yes])
+       [MANPAGE_SYMLINKS=$cf_use_symlinks])
+
+if test "$$cf_use_symlinks" = no; then
+if test "$MANPAGE_SYMLINKS" = yes ; then
+       AC_MSG_WARN(cannot make symlinks, will use .so files)
+       MANPAGE_SYMLINKS=no
+fi
+fi
 
 AC_MSG_RESULT($MANPAGE_SYMLINKS)
+fi
+
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_MANPAGE_TBL version: 3 updated: 2002/01/19 22:51:32
+dnl --------------
 dnl This option causes manpages to be run through tbl(1) to generate tables
 dnl correctly.
 AC_DEFUN([CF_MANPAGE_TBL],
@@ -1709,6 +1943,8 @@ AC_ARG_WITH(manpage-tbl,
 AC_MSG_RESULT($MANPAGE_TBL)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_MAN_PAGES version: 27 updated: 2003/12/20 20:39:45
+dnl ------------
 dnl Try to determine if the man-pages on the system are compressed, and if
 dnl so, what format is used.  Use this information to construct a script that
 dnl will install man-pages.
@@ -1727,20 +1963,40 @@ CF_MANPAGE_TBL
   fi
 
   case "$MANPAGE_FORMAT" in # (vi
+  *catonly*) # (vi
+    cf_format=yes
+    cf_inboth=no
+    ;;
   *formatted*) # (vi
-    cf_subdir='$mandir/cat'
     cf_format=yes
+    cf_inboth=yes
     ;;
   *)
-    cf_subdir='$mandir/man'
     cf_format=no
+    cf_inboth=no
     ;;
   esac
 
 test ! -d man && mkdir man
-cat >man/edit_man.sh <<CF_EOF
+
+cf_so_strip=
+cf_compress=
+case "$MANPAGE_FORMAT" in #(vi
+*compress*) #(vi
+       cf_so_strip="Z"
+       cf_compress=compress
+  ;;
+*gzip*) #(vi
+       cf_so_strip="gz"
+       cf_compress=gzip
+  ;;
+esac
+
+cf_edit_man=man/edit_man.sh
+
+cat >$cf_edit_man <<CF_EOF
 #! /bin/sh
-# this script is generated by the configure-script
+# this script is generated by the configure-script CF_MAN_PAGES macro.
 prefix="$cf_prefix"
 datadir="$datadir"
 NCURSES_OSPEED="$NCURSES_OSPEED"
@@ -1753,23 +2009,41 @@ transform="$program_transform_name"
 TMP=\${TMPDIR-/tmp}/man\$\$
 trap "rm -f \$TMP" 0 1 2 5 15
 
+form=\[$]1
+shift || exit 1
+
 verb=\[$]1
-shift
+shift || exit 1
 
 mandir=\[$]1
-shift
+shift || exit 1
 
 srcdir=\[$]1
-shift
+shift || exit 1
+
+if test "\$form" = normal ; then
+       if test "$cf_format" = yes ; then
+       if test "$cf_inboth" = no ; then
+               sh \[$]0 format \$verb \$mandir \$srcdir \[$]*
+               exit $?
+       fi
+       fi
+       cf_subdir=\$mandir/man
+       cf_tables=$MANPAGE_TBL
+else
+       cf_subdir=\$mandir/cat
+       cf_tables=yes
+fi
 
+# process the list of source-files
 for i in \[$]* ; do
 case \$i in #(vi
 *.orig|*.rej) ;; #(vi
 *.[[0-9]]*)
        section=\`expr "\$i" : '.*\\.\\([[0-9]]\\)[[xm]]*'\`;
        if test \$verb = installing ; then
-       if test ! -d $cf_subdir\${section} ; then
-               \$MKDIRS $cf_subdir\$section
+       if test ! -d \$cf_subdir\${section} ; then
+               \$MKDIRS \$cf_subdir\$section
        fi
        fi
        aliases=
@@ -1781,29 +2055,30 @@ case \$i in #(vi
                continue
        fi
 CF_EOF
-if test "$MANPAGE_SYMLINKS" = yes ; then
-cat >>man/edit_man.sh <<CF_EOF
+
+if test "$MANPAGE_ALIASES" != no ; then
+cat >>$cf_edit_man <<CF_EOF
        aliases=\`sed -f \$srcdir/manlinks.sed \$inalias | sort -u\`
 CF_EOF
 fi
 
 if test "$MANPAGE_RENAMES" = no ; then
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        # perform program transformations for section 1 man pages
        if test \$section = 1 ; then
-               target=$cf_subdir\${section}/\`echo \$source|sed "\${transform}"\`
+               target=\$cf_subdir\${section}/\`echo \$source|sed "\${transform}"\`
        else
-               target=$cf_subdir\${section}/\$source
+               target=\$cf_subdir\${section}/\$source
        fi
 CF_EOF
 else
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        target=\`grep "^\$source" $MANPAGE_RENAMES | $AWK '{print \[$]2}'\`
        if test -z "\$target" ; then
                echo '? missing rename for '\$source
                target="\$source"
        fi
-       target="$cf_subdir\${section}/\${target}"
+       target="\$cf_subdir\${section}/\${target}"
 CF_EOF
 fi
 
@@ -1811,89 +2086,90 @@ fi
        ifelse($1,,,[
        for cf_name in $1
        do
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        prog_$cf_name=\`echo $cf_name|sed "\${transform}"\`
 CF_EOF
        done
        ])
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        sed     -e "s,@DATADIR@,\$datadir," \\
                -e "s,@TERMINFO@,\$TERMINFO," \\
                -e "s,@NCURSES_OSPEED@,\$NCURSES_OSPEED," \\
 CF_EOF
+
        ifelse($1,,,[
        for cf_name in $1
        do
                cf_NAME=`echo "$cf_name" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
                -e "s,@$cf_NAME@,\$prog_$cf_name," \\
 CF_EOF
        done
        ])
+
 if test -f $MANPAGE_RENAMES ; then
-cat >>man/edit_man.sh <<CF_EOF
-               < \$i | sed -f edit_man.sed >\$TMP
+cat >>$cf_edit_man <<CF_EOF
+               < \$i | sed -f $srcdir/edit_man.sed >\$TMP
 CF_EOF
 else
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
                < \$i >\$TMP
 CF_EOF
 fi
-if test $MANPAGE_TBL = yes ; then
-cat >>man/edit_man.sh <<CF_EOF
+
+cat >>$cf_edit_man <<CF_EOF
+if test \$cf_tables = yes ; then
        tbl \$TMP >\$TMP.out
        mv \$TMP.out \$TMP
-CF_EOF
 fi
+CF_EOF
+
 if test $with_curses_h != yes ; then
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        sed -e "/\#[    ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
        mv \$TMP.out \$TMP
 CF_EOF
 fi
-if test $cf_format = yes ; then
-cat >>man/edit_man.sh <<CF_EOF
-       nroff -man \$TMP >\$TMP.out
-       mv \$TMP.out \$TMP
-CF_EOF
-fi
-case "$MANPAGE_FORMAT" in #(vi
-*compress*) #(vi
-cat >>man/edit_man.sh <<CF_EOF
-       if test \$verb = installing ; then
-       if ( compress -f \$TMP )
-       then
-               mv \$TMP.Z \$TMP
-       fi
+
+cat >>$cf_edit_man <<CF_EOF
+       if test \$form = format ; then
+               nroff -man \$TMP >\$TMP.out
+               mv \$TMP.out \$TMP
        fi
-       target="\$target.Z"
 CF_EOF
-  ;;
-*gzip*) #(vi
-cat >>man/edit_man.sh <<CF_EOF
+
+if test -n "$cf_compress" ; then
+cat >>$cf_edit_man <<CF_EOF
        if test \$verb = installing ; then
-       if ( gzip -f \$TMP )
+       if ( $cf_compress -f \$TMP )
        then
-               mv \$TMP.gz \$TMP
+               mv \$TMP.$cf_so_strip \$TMP
        fi
        fi
-       target="\$target.gz"
+       target="\$target.$cf_so_strip"
 CF_EOF
-  ;;
+fi
+
+case "$MANPAGE_FORMAT" in #(vi
 *BSDI*)
-cat >>man/edit_man.sh <<CF_EOF
-       # BSDI installs only .0 suffixes in the cat directories
-       target="\`echo \$target|sed -e 's/\.[[1-9]]\+.\?/.0/'\`"
+cat >>$cf_edit_man <<CF_EOF
+       if test \$form = format ; then
+               # BSDI installs only .0 suffixes in the cat directories
+               target="\`echo \$target|sed -e 's/\.[[1-9]]\+[[a-z]]*/.0/'\`"
+       fi
 CF_EOF
   ;;
 esac
-cat >>man/edit_man.sh <<CF_EOF
-       suffix=\`basename \$target | sed -e 's/^[[^.]]*//'\`
+
+cat >>$cf_edit_man <<CF_EOF
+       suffix=\`basename \$target | sed -e 's%^[[^.]]*%%'\`
        if test \$verb = installing ; then
                echo \$verb \$target
                \$INSTALL_DATA \$TMP \$target
                test -n "\$aliases" && (
-                       cd $cf_subdir\${section} && (
+                       cd \$cf_subdir\${section} && (
+                               source=\`echo \$target |sed -e 's%^.*/\([[^/]][[^/]]*/[[^/]][[^/]]*$\)%\1%'\`
+                               test -n "$cf_so_strip" && source=\`echo \$source |sed -e 's%\.$cf_so_strip\$%%'\`
                                target=\`basename \$target\`
                                for cf_alias in \$aliases
                                do
@@ -1901,19 +2177,31 @@ cat >>man/edit_man.sh <<CF_EOF
                                                cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
                                        fi
 
-                                       if test -f \$cf_alias\${suffix} ; then
-                                               if ( cmp -s \$target \$cf_alias\${suffix} )
-                                               then
-                                                       :
-                                               else
-                                                       echo .. \$verb alias \$cf_alias\${suffix}
-                                                       rm -f \$cf_alias\${suffix}
-                                                       $LN_S \$target \$cf_alias\${suffix}
+                                       if test "$MANPAGE_SYMLINKS" = yes ; then
+                                               if test -f \$cf_alias\${suffix} ; then
+                                                       if ( cmp -s \$target \$cf_alias\${suffix} )
+                                                       then
+                                                               continue
+                                                       fi
                                                fi
-                                       else
                                                echo .. \$verb alias \$cf_alias\${suffix}
                                                rm -f \$cf_alias\${suffix}
                                                $LN_S \$target \$cf_alias\${suffix}
+                                       elif test "\$target" != "\$cf_alias\${suffix}" ; then
+                                               echo ".so \$source" >\$TMP
+CF_EOF
+if test -n "$cf_compress" ; then
+cat >>$cf_edit_man <<CF_EOF
+                                               if test -n "$cf_so_strip" ; then
+                                                       $cf_compress -f \$TMP
+                                                       mv \$TMP.$cf_so_strip \$TMP
+                                               fi
+CF_EOF
+fi
+cat >>$cf_edit_man <<CF_EOF
+                                               echo .. \$verb alias \$cf_alias\${suffix}
+                                               rm -f \$cf_alias\${suffix}
+                                               \$INSTALL_DATA \$TMP \$cf_alias\${suffix}
                                        fi
                                done
                        )
@@ -1922,7 +2210,7 @@ cat >>man/edit_man.sh <<CF_EOF
                echo \$verb \$target
                rm -f \$target
                test -n "\$aliases" && (
-                       cd $cf_subdir\${section} && (
+                       cd \$cf_subdir\${section} && (
                                for cf_alias in \$aliases
                                do
                                        if test \$section = 1 ; then
@@ -1941,12 +2229,21 @@ cat >>man/edit_man.sh <<CF_EOF
        ;;
 esac
 done
+
+if test $cf_inboth = yes ; then
+if test \$form != format ; then
+       sh \[$]0 format \$verb \$mandir \$srcdir \[$]*
+fi
+fi
+
 exit 0
 CF_EOF
-chmod 755 man/edit_man.sh
+chmod 755 $cf_edit_man
 
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_MATH_LIB version: 5 updated: 2000/05/28 01:39:10
+dnl -----------
 dnl Checks for libraries.  At least one UNIX system, Apple Macintosh
 dnl Rhapsody 5.5, does not have -lm.  We cannot use the simpler
 dnl AC_CHECK_LIB(m,sin), because that fails for C++.
@@ -1969,42 +2266,23 @@ ifelse($1,,[
 fi
 ])
 dnl ---------------------------------------------------------------------------
-dnl Check if mbstate_t is declared, and if so, which header file.
-AC_DEFUN([CF_MBSTATE_T],
-[
-# This is needed on Tru64 5.0 to declare mbstate_t
-AC_CACHE_CHECK(if we must include wchar.h to declare mbstate_t,cf_cv_mbstate_t,[
-AC_TRY_COMPILE([
-#include <stdlib.h>
-#ifdef HAVE_LIBUTF8_H
-#include <libutf8.h>
-#endif],
-       [mbstate_t state],
-       [cf_cv_mbstate_t=no],
-       [AC_TRY_COMPILE([
-#include <stdlib.h>
-#include <wchar.h>
-#ifdef HAVE_LIBUTF8_H
-#include <libutf8.h>
-#endif],
-       [mbstate_t value],
-       [cf_cv_mbstate_t=yes],
-       [cf_cv_mbstate_t=unknown])])])
-
-if test "$cf_cv_mbstate_t" = yes ; then
-       AC_DEFINE(NEED_WCHAR_H)
-fi
-
-if test "$cf_cv_mbstate_t" != unknown ; then
-       AC_DEFINE(HAVE_MBSTATE_T)
-fi
-])dnl
-dnl ---------------------------------------------------------------------------
+dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55
+dnl ----------------------
 dnl Check if the file-system supports mixed-case filenames.  If we're able to
 dnl create a lowercase name and see it as uppercase, it doesn't support that.
 AC_DEFUN([CF_MIXEDCASE_FILENAMES],
 [
 AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
+if test "$cross_compiling" = yes ; then
+       case $target_alias in #(vi
+       *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
+               cf_cv_mixedcase=no
+               ;;
+       *)
+               cf_cv_mixedcase=yes
+               ;;
+       esac
+else
        rm -f conftest CONFTEST
        echo test >conftest
        if test -f CONFTEST ; then
@@ -2013,10 +2291,13 @@ AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
                cf_cv_mixedcase=yes
        fi
        rm -f conftest CONFTEST
+fi
 ])
 test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_MKSTEMP version: 3 updated: 2001/11/08 20:59:59
+dnl ----------
 dnl Check for a working mkstemp.  This creates two files, checks that they are
 dnl successfully created and distinct (AmigaOS apparently fails on the last).
 AC_DEFUN([CF_MKSTEMP],[
@@ -2065,6 +2346,27 @@ if test "$cf_cv_func_mkstemp" = yes ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_NUMBER_SYNTAX version: 1 updated: 2003/09/20 18:12:49
+dnl ----------------
+dnl Check if the given variable is a number.  If not, report an error.
+dnl $1 is the variable
+dnl $2 is the message
+AC_DEFUN([CF_NUMBER_SYNTAX],[
+if test -n "$1" ; then
+  case $1 in #(vi
+  [[0-9]]*) #(vi
+       ;;
+  *)
+       AC_MSG_ERROR($2 is not a number: $1)
+       ;;
+  esac
+else
+  AC_MSG_ERROR($2 value is empty)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_OBJ_SUBDIR version: 4 updated: 2002/02/23 20:38:31
+dnl -------------
 dnl Compute the object-directory name from the given model name
 AC_DEFUN([CF_OBJ_SUBDIR],
 [
@@ -2083,6 +2385,8 @@ AC_DEFUN([CF_OBJ_SUBDIR],
        esac
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_PATHSEP version: 3 updated: 2001/01/12 01:23:53
+dnl ----------
 dnl Provide a value for the $PATH and similar separator
 AC_DEFUN([CF_PATHSEP],
 [
@@ -2094,6 +2398,8 @@ ifelse($1,,,[$1=$PATHSEP])
        AC_SUBST(PATHSEP)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_PATH_SYNTAX version: 9 updated: 2002/09/17 23:03:38
+dnl --------------
 dnl Check the argument to see that it looks like a pathname.  Rewrite it if it
 dnl begins with one of the prefix/exec_prefix variables, and then again if the
 dnl result begins with 'NONE'.  This is necessary to work around autoconf's
@@ -2123,28 +2429,66 @@ case ".[$]$1" in #(vi
 esac
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_PREDEFINE version: 1 updated: 2003/07/26 17:53:56
+dnl ------------
+dnl Add definitions to CPPFLAGS to ensure they're predefined for all compiles.
+dnl
+dnl $1 = symbol to test
+dnl $2 = value (if any) to use for a predefinition
+AC_DEFUN([CF_PREDEFINE],
+[
+AC_MSG_CHECKING(if we must define $1)
+AC_TRY_COMPILE([#include <sys/types.h>
+],[
+#ifndef $1
+make an error
+#endif],[cf_result=no],[cf_result=yes])
+AC_MSG_RESULT($cf_result)
+
+if test "$cf_result" = yes ; then
+       CPPFLAGS="$CPPFLAGS ifelse($2,,-D$1,[-D$1=$2])"
+elif test "x$2" != "x" ; then
+       AC_MSG_CHECKING(checking for compatible value versus $2)
+       AC_TRY_COMPILE([#include <sys/types.h>
+],[
+#if $1-$2 < 0
+make an error
+#endif],[cf_result=yes],[cf_result=no])
+       AC_MSG_RESULT($cf_result)
+       if test "$cf_result" = no ; then
+               # perhaps we can override it - try...
+               CPPFLAGS="$CPPFLAGS -D$1=$2"
+       fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18
+dnl -----------
 dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX.
 AC_DEFUN([CF_PROG_EXT],
 [
 AC_REQUIRE([CF_CHECK_CACHE])
-PROG_EXT=
 case $cf_cv_system_name in
 os2*)
-    # We make sure -Zexe is not used -- it would interfere with @PROG_EXT@
     CFLAGS="$CFLAGS -Zmt"
     CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__"
     CXXFLAGS="$CXXFLAGS -Zmt"
-    LDFLAGS=`echo "$LDFLAGS -Zmt -Zcrtdll" | sed "s/-Zexe//g"`
-    PROG_EXT=".exe"
-    ;;
-cygwin*)
-    PROG_EXT=".exe"
+    # autoconf's macro sets -Zexe and suffix both, which conflict:w
+    LDFLAGS="$LDFLAGS -Zmt -Zcrtdll"
+    ac_cv_exeext=.exe
     ;;
 esac
+
+AC_EXEEXT
+AC_OBJEXT
+
+PROG_EXT="$EXEEXT"
 AC_SUBST(PROG_EXT)
 test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT")
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_PROG_INSTALL version: 5 updated: 2002/12/21 22:46:07
+dnl ---------------
 dnl Force $INSTALL to be an absolute-path.  Otherwise, edit_man.sh and the
 dnl misc/tabset install won't work properly.  Usually this happens only when
 dnl using the fallback mkinstalldirs script
@@ -2156,11 +2500,33 @@ case $INSTALL in
 *)
   CF_DIRNAME(cf_dir,$INSTALL)
   test -z "$cf_dir" && cf_dir=.
-  INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's:^.*/::'`
+  INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'`
   ;;
 esac
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_PROG_LDCONFIG version: 1 updated: 2003/09/20 17:07:55
+dnl ----------------
+dnl Check for ldconfig, needed to fixup shared libraries that would be built
+dnl and then used in the install.
+AC_DEFUN([CF_PROG_LDCONFIG],[
+if test "$cross_compiling" = yes ; then
+  LDCONFIG=:
+else
+case "$cf_cv_system_name" in #(vi
+freebsd*) #(vi
+  test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R"
+  ;;
+*) LDPATH=$PATH:/sbin:/usr/sbin
+  AC_PATH_PROG(LDCONFIG,ldconfig,,$LDPATH)
+  ;;
+esac
+fi
+AC_SUBST(LDCONFIG)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_REGEX version: 3 updated: 1997/11/01 14:26:01
+dnl --------
 dnl Attempt to determine if we've got one of the flavors of regular-expression
 dnl code that we can support.
 AC_DEFUN([CF_REGEX],
@@ -2193,6 +2559,8 @@ case $cf_cv_regex in
 esac
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_SHARED_OPTS version: 30 updated: 2003/12/27 20:48:07
+dnl --------------
 dnl Attempt to determine the appropriate CC/LD options for creating a shared
 dnl library.
 dnl
@@ -2303,7 +2671,7 @@ AC_DEFUN([CF_SHARED_OPTS],
                MK_SHARED_LIB='$(LD) -shared -rdata_shared -soname `basename $[@]` -o $[@]'
                cf_cv_rm_so_locs=yes
                ;;
-       linux*|gnu*)
+       linux*|gnu*|k*bsd*-gnu)
                if test "$DFT_LWR_MODEL" = "shared" ; then
                        LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
                        LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
@@ -2319,6 +2687,23 @@ AC_DEFUN([CF_SHARED_OPTS],
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
                MK_SHARED_LIB='$(LD) -Bshareable -soname,`basename $[@].$(ABI_VERSION)` -o $[@]'
                ;;
+       freebsd[[45]]*)
+               CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
+               MK_SHARED_LIB='$(LD) -Bshareable -soname=`basename $[@]` -o $[@]'
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
+
+# This doesn't work - I keep getting spurious references to needing
+# libncurses.so.5.3 when ldd says it's resolved.  LOCAL_LDFLAGS2 seems to be
+# no longer used anyway.  And the rpath logic isn't relative - so I have to
+# add the local and install lib-directories:
+#
+#              if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then
+#                      LOCAL_LDFLAGS="-rpath `pwd`/lib"
+#                      LOCAL_LDFLAGS2="-rpath \$(libdir) $LOCAL_LDFLAGS"
+#                      cf_ld_rpath_opt="-rpath "
+#                      EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS"
+#              fi
+               ;;
        openbsd*|freebsd*)
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
                MK_SHARED_LIB='$(LD) -Bshareable -o $[@]'
@@ -2364,7 +2749,7 @@ AC_DEFUN([CF_SHARED_OPTS],
                ;;
        sco3.2v5*)  # (also uw2* and UW7) hops 13-Apr-98
                # tested with osr5.0.5
-               if test "$ac_cv_prog_gcc" != yes; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-belf -KPIC'
                fi
                MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o [$]@'
@@ -2378,7 +2763,7 @@ AC_DEFUN([CF_SHARED_OPTS],
                ;;
        sunos4*)
                # tested with SunOS 4.1.1 and gcc 2.7.0
-               if test "$ac_cv_prog_gcc" != yes; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -assert pure-text -o $[@]'
@@ -2386,7 +2771,7 @@ AC_DEFUN([CF_SHARED_OPTS],
                ;;
        solaris2*)
                # tested with SunOS 5.5.1 (solaris 2.5.1) and gcc 2.7.2
-               if test "$ac_cv_prog_gcc" != yes; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]'
@@ -2402,7 +2787,7 @@ AC_DEFUN([CF_SHARED_OPTS],
                ;;
        sysv5uw7*|unix_sv*)
                # tested with UnixWare 7.1.0 (gcc 2.95.2 and cc)
-               if test "$ac_cv_prog_gcc" != yes; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -d y -G -o [$]@'
@@ -2449,6 +2834,8 @@ AC_DEFUN([CF_SHARED_OPTS],
        AC_SUBST(INSTALL_LIB)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_SIZECHANGE version: 8 updated: 2000/11/04 12:22:16
+dnl -------------
 dnl Check for definitions & structures needed for window size-changing
 dnl FIXME: check that this works with "snake" (HP-UX 10.x)
 AC_DEFUN([CF_SIZECHANGE],
@@ -2517,6 +2904,8 @@ if test "$cf_cv_sizechange" != no ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_SRC_MODULES version: 15 updated: 2004/01/10 16:05:16
+dnl --------------
 dnl For each parameter, test if the source-directory exists, and if it contains
 dnl a 'modules' file.  If so, add to the list $cf_cv_src_modules which we'll
 dnl use in CF_LIB_RULES.
@@ -2536,7 +2925,7 @@ else
 fi
 
 # dependencies and linker-arguments for utility-programs
-PROG_ARGS="$TEST_ARGS"
+test "$with_termlib" != yes && PROG_ARGS="$TEST_ARGS"
 
 cf_cv_src_modules=
 for cf_dir in $1
@@ -2614,6 +3003,8 @@ if test -n "$ADA_SUBDIRS"; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_STDCPP_LIBRARY version: 5 updated: 2000/08/12 23:18:52
+dnl -----------------
 dnl Check for -lstdc++, which is GNU's standard C++ library.
 AC_DEFUN([CF_STDCPP_LIBRARY],
 [
@@ -2642,10 +3033,14 @@ test "$cf_cv_libstdcpp" = yes && CXXLIBS="$CXXLIBS -l$cf_stdcpp_libname"
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_STRIP_G_OPT version: 3 updated: 2002/12/21 19:25:52
+dnl --------------
 dnl    Remove "-g" option from the compiler options
 AC_DEFUN([CF_STRIP_G_OPT],
-[$1=`echo ${$1} | sed -e 's/-g //' -e 's/-g$//'`])dnl
+[$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_STRUCT_SIGACTION version: 3 updated: 2000/08/12 23:18:52
+dnl -------------------
 dnl Check if we need _POSIX_SOURCE defined to use struct sigaction.  We'll only
 dnl do this if we've found the sigaction function.
 dnl
@@ -2671,6 +3066,8 @@ AC_MSG_RESULT($sigact_bad)
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_STRUCT_TERMIOS version: 5 updated: 2000/11/04 12:22:46
+dnl -----------------
 dnl Some machines require _POSIX_SOURCE to completely define struct termios.
 dnl If so, define SVR4_TERMIO
 AC_DEFUN([CF_STRUCT_TERMIOS],[
@@ -2705,6 +3102,8 @@ if test "$ac_cv_header_termios_h" = yes ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_SUBST version: 2 updated: 1997/09/06 23:41:28
+dnl --------
 dnl    Shorthand macro for substituting things that the user may override
 dnl    with an environment variable.
 dnl
@@ -2721,6 +3120,8 @@ cf_cv_subst_$2=[$]$2])
 $2=${cf_cv_subst_$2}
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_SUBST_NCURSES_VERSION version: 7 updated: 2003/06/07 16:22:51
+dnl ------------------------
 dnl Get the version-number for use in shared-library naming, etc.
 AC_DEFUN([CF_SUBST_NCURSES_VERSION],
 [
@@ -2739,12 +3140,13 @@ AC_SUBST(NCURSES_PATCH)
 dnl We need these values in the generated makefiles
 AC_SUBST(cf_cv_rel_version)
 AC_SUBST(cf_cv_abi_version)
-AC_SUBST(cf_cv_cc_bool_type)
 AC_SUBST(cf_cv_builtin_bool)
 AC_SUBST(cf_cv_header_stdbool_h)
 AC_SUBST(cf_cv_type_of_bool)dnl
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_SYS_TIME_SELECT version: 4 updated: 2000/10/04 09:18:40
+dnl ------------------
 dnl Check if we can include <sys/time.h> with <sys/select.h>; this breaks on
 dnl older SCO configurations.
 AC_DEFUN([CF_SYS_TIME_SELECT],
@@ -2766,6 +3168,8 @@ AC_MSG_RESULT($cf_cv_sys_time_select)
 test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_TYPEOF_CHTYPE version: 4 updated: 2000/10/04 09:18:40
+dnl ----------------
 dnl Determine the type we should use for chtype (and attr_t, which is treated
 dnl as the same thing).  We want around 32 bits, so on most machines want a
 dnl long, but on newer 64-bit machines, probably want an int.  If we're using
@@ -2835,6 +3239,8 @@ AC_SUBST(cf_cv_1UL)
 
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_TYPE_SIGACTION version: 3 updated: 2000/08/12 23:18:52
+dnl -----------------
 dnl
 AC_DEFUN([CF_TYPE_SIGACTION],
 [
@@ -2849,6 +3255,8 @@ AC_MSG_RESULT($cf_cv_type_sigaction)
 test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_UNSIGNED_LITERALS version: 2 updated: 1998/02/07 22:10:16
+dnl --------------------
 dnl Test if the compiler supports 'U' and 'L' suffixes.  Only old compilers
 dnl won't, but they're still there.
 AC_DEFUN([CF_UNSIGNED_LITERALS],
@@ -2862,6 +3270,8 @@ AC_CACHE_VAL(cf_cv_unsigned_literals,[
 AC_MSG_RESULT($cf_cv_unsigned_literals)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59
+dnl --------
 dnl Make an uppercase version of a variable
 dnl $1=uppercase($2)
 AC_DEFUN([CF_UPPER],
@@ -2869,11 +3279,244 @@ AC_DEFUN([CF_UPPER],
 $1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_VERBOSE version: 2 updated: 1997/09/05 10:45:14
+dnl ----------
 dnl Use AC_VERBOSE w/o the warnings
 AC_DEFUN([CF_VERBOSE],
 [test -n "$verbose" && echo "  $1" 1>&AC_FD_MSG
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_WCHAR_TYPE version: 2 updated: 2004/01/17 19:18:20
+dnl -------------
+dnl Check if type wide-character type $1 is declared, and if so, which header
+dnl file is needed.  The second parameter is used to set a shell variable when
+dnl the type is not found.  The first parameter sets a shell variable for the
+dnl opposite sense.
+AC_DEFUN([CF_WCHAR_TYPE],
+[
+# This is needed on Tru64 5.0 to declare $1
+AC_CACHE_CHECK(if we must include wchar.h to declare $1,cf_cv_$1,[
+AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <stdarg.h>
+#include <stdio.h>
+#ifdef HAVE_LIBUTF8_H
+#include <libutf8.h>
+#endif],
+       [$1 state],
+       [cf_cv_$1=no],
+       [AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <stdarg.h>
+#include <stdio.h>
+#include <wchar.h>
+#ifdef HAVE_LIBUTF8_H
+#include <libutf8.h>
+#endif],
+       [$1 value],
+       [cf_cv_$1=yes],
+       [cf_cv_$1=unknown])])])
+
+if test "$cf_cv_$1" = yes ; then
+       AC_DEFINE(NEED_WCHAR_H)
+       NEED_WCHAR_H=1
+fi
+
+ifelse($2,,,[
+# if we do not find $1 in either place, use substitution to provide a fallback.
+if test "$cf_cv_$1" = unknown ; then
+       $2=1
+fi
+])
+ifelse($3,,,[
+# if we find $1 in either place, use substitution to provide a fallback.
+if test "$cf_cv_$1" != unknown ; then
+       $3=1
+fi
+])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_ABI_VERSION version: 1 updated: 2003/09/20 18:12:49
+dnl -------------------
+dnl Allow library's ABI to be overridden.  Generally this happens when a
+dnl packager has incremented the ABI past that used in the original package,
+dnl and wishes to keep doing this.
+dnl
+dnl $1 is the package name, if any, to derive a corresponding {package}_ABI
+dnl symbol.
+AC_DEFUN([CF_WITH_ABI_VERSION],[
+test -z "$cf_cv_abi_version" && cf_cv_abi_version=0
+AC_ARG_WITH(abi-version,
+[  --with-abi-version=XXX  override derived ABI version],
+[AC_MSG_WARN(overriding ABI version $cf_cv_abi_version to $withval)
+ cf_cv_abi_version=$withval])
+ CF_NUMBER_SYNTAX($cf_cv_abi_version,ABI version)
+ifelse($1,,,[
+$1_ABI=$cf_cv_abi_version
+])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_DBMALLOC version: 2 updated: 2002/12/29 21:11:45
+dnl ----------------
+dnl Configure-option for dbmalloc
+AC_DEFUN([CF_WITH_DBMALLOC],[
+AC_MSG_CHECKING(if you want to link with dbmalloc for testing)
+AC_ARG_WITH(dbmalloc,
+       [  --with-dbmalloc         test: use Conor Cahill's dbmalloc library],
+       [with_dbmalloc=$withval],
+       [with_dbmalloc=no])
+AC_MSG_RESULT($with_dbmalloc)
+if test $with_dbmalloc = yes ; then
+       AC_CHECK_LIB(dbmalloc,debug_malloc)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_DMALLOC version: 2 updated: 2002/12/29 21:11:45
+dnl ---------------
+dnl Configure-option for dmalloc
+AC_DEFUN([CF_WITH_DMALLOC],[
+AC_MSG_CHECKING(if you want to link with dmalloc for testing)
+AC_ARG_WITH(dmalloc,
+       [  --with-dmalloc          test: use Gray Watson's dmalloc library],
+       [with_dmalloc=$withval],
+       [with_dmalloc=no])
+AC_MSG_RESULT($with_dmalloc)
+if test $with_dmalloc = yes ; then
+       AC_CHECK_LIB(dmalloc,dmalloc_debug)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_LIBTOOL version: 9 updated: 2004/01/16 14:55:37
+dnl ---------------
+dnl Provide a configure option to incorporate libtool.  Define several useful
+dnl symbols for the makefile rules.
+dnl
+dnl The reference to AC_PROG_LIBTOOL does not normally work, since it uses
+dnl macros from libtool.m4 which is in the aclocal directory of automake.
+dnl Following is a simple script which turns on the AC_PROG_LIBTOOL macro.
+dnl But that still does not work properly since the macro is expanded outside
+dnl the CF_WITH_LIBTOOL macro:
+dnl
+dnl    #!/bin/sh
+dnl    ACLOCAL=`aclocal --print-ac-dir`
+dnl    if test -z "$ACLOCAL" ; then
+dnl            echo cannot find aclocal directory
+dnl            exit 1
+dnl    elif test ! -f $ACLOCAL/libtool.m4 ; then
+dnl            echo cannot find libtool.m4 file
+dnl            exit 1
+dnl    fi
+dnl    
+dnl    LOCAL=aclocal.m4
+dnl    ORIG=aclocal.m4.orig
+dnl    
+dnl    trap "mv $ORIG $LOCAL" 0 1 2 5 15
+dnl    rm -f $ORIG
+dnl    mv $LOCAL $ORIG
+dnl    
+dnl    # sed the LIBTOOL= assignment to omit the current directory?
+dnl    sed -e 's/^LIBTOOL=.*/LIBTOOL=${LIBTOOL-libtool}/' $ACLOCAL/libtool.m4 >>$LOCAL
+dnl    cat $ORIG >>$LOCAL
+dnl    
+dnl    autoconf-257 $*
+dnl
+AC_DEFUN([CF_WITH_LIBTOOL],
+[
+ifdef([AC_PROG_LIBTOOL],,[
+LIBTOOL=
+])
+# common library maintenance symbols that are convenient for libtool scripts:
+LIB_CREATE='$(AR) -cr'
+LIB_OBJECT='$(OBJECTS)'
+LIB_SUFFIX=.a
+LIB_PREP="$RANLIB"
+
+# symbols used to prop libtool up to enable it to determine what it should be
+# doing:
+LIB_CLEAN=
+LIB_COMPILE=
+LIB_LINK=
+LIB_INSTALL=
+LIB_UNINSTALL=
+
+AC_MSG_CHECKING(if you want to build libraries with libtool)
+AC_ARG_WITH(libtool,
+       [  --with-libtool          generate libraries with libtool],
+       [with_libtool=$withval],
+       [with_libtool=no])
+AC_MSG_RESULT($with_libtool)
+if test "$with_libtool" != "no"; then
+ifdef([AC_PROG_LIBTOOL],[
+       # missing_content_AC_PROG_LIBTOOL{{
+       AC_PROG_LIBTOOL
+       # missing_content_AC_PROG_LIBTOOL}}
+],[
+       if test "$with_libtool" != "yes" ; then
+               CF_PATH_SYNTAX(with_libtool)
+               LIBTOOL=$with_libtool
+       else
+               AC_PATH_PROG(LIBTOOL,libtool)
+       fi
+       if test -z "$LIBTOOL" ; then
+               AC_MSG_ERROR(Cannot find libtool)
+       fi
+])dnl
+       LIB_CREATE='$(LIBTOOL) --mode=link $(CC) -rpath $(DESTDIR)$(libdir) -version-info `cut -f1 $(srcdir)/VERSION` -o'
+       LIB_OBJECT='$(OBJECTS:.o=.lo)'
+       LIB_SUFFIX=.la
+       LIB_CLEAN='$(LIBTOOL) --mode=clean'
+       LIB_COMPILE='$(LIBTOOL) --mode=compile'
+       LIB_LINK='$(LIBTOOL) --mode=link'
+       LIB_INSTALL='$(LIBTOOL) --mode=install'
+       LIB_UNINSTALL='$(LIBTOOL) --mode=uninstall'
+       LIB_PREP=:
+
+       # Show the version of libtool
+       AC_MSG_CHECKING(version of libtool)
+
+       # Save the version in a cache variable - this is not entirely a good
+       # thing, but the version string from libtool is very ugly, and for
+       # bug reports it might be useful to have the original string.
+       cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '2,$d' -e 's/([[^)]]*)//g' -e 's/^[[^1-9]]*//' -e 's/[[^0-9.]].*//'`
+       AC_MSG_RESULT($cf_cv_libtool_version)
+       if test -z "$cf_cv_libtool_version" ; then
+               AC_MSG_ERROR(This is not libtool)
+       fi
+
+       # special hack to add --tag option for C++ compiler
+       case $cf_cv_libtool_version in
+       1.[[5-9]]*|[[2-9]]*)
+               LIBTOOL_CXX="$LIBTOOL --tag=CXX"
+               ;;
+       *)
+               LIBTOOL_CXX="$LIBTOOL"
+               ;;
+       esac
+else
+       LIBTOOL=""
+       LIBTOOL_CXX=""
+fi
+
+test -z "$LIBTOOL" && ECHO_LT=
+
+AC_SUBST(LIBTOOL)
+AC_SUBST(LIBTOOL_CXX)
+
+AC_SUBST(LIB_CREATE)
+AC_SUBST(LIB_OBJECT)
+AC_SUBST(LIB_SUFFIX)
+AC_SUBST(LIB_PREP)
+
+AC_SUBST(LIB_CLEAN)
+AC_SUBST(LIB_COMPILE)
+AC_SUBST(LIB_LINK)
+AC_SUBST(LIB_INSTALL)
+AC_SUBST(LIB_UNINSTALL)
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_PATH version: 6 updated: 1998/10/11 00:40:17
+dnl ------------
 dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just
 dnl defaulting to yes/no.
 dnl
@@ -2891,6 +3534,8 @@ eval $3="$withval"
 AC_SUBST($3)dnl
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_WITH_PATHLIST version: 5 updated: 2001/12/10 01:28:30
+dnl ----------------
 dnl Process an option specifying a list of colon-separated paths.
 dnl
 dnl $1 = option name
@@ -2930,3 +3575,137 @@ eval '$3="$cf_dst_path"'
 AC_SUBST($3)dnl
 
 ])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_REL_VERSION version: 1 updated: 2003/09/20 18:12:49
+dnl -------------------
+dnl Allow library's release-version to be overridden.  Generally this happens when a
+dnl packager has incremented the release-version past that used in the original package,
+dnl and wishes to keep doing this.
+dnl
+dnl $1 is the package name, if any, to derive corresponding {package}_MAJOR
+dnl and {package}_MINOR symbols
+dnl symbol.
+AC_DEFUN([CF_WITH_REL_VERSION],[
+test -z "$cf_cv_rel_version" && cf_cv_rel_version=0.0
+AC_ARG_WITH(rel-version,
+[  --with-rel-version=XXX  override derived release version],
+[AC_MSG_WARN(overriding release version $cf_cv_rel_version to $withval)
+ cf_cv_rel_version=$withval])
+ifelse($1,,[
+ CF_NUMBER_SYNTAX($cf_cv_rel_version,Release version)
+],[
+ $1_MAJOR=`echo "$cf_cv_rel_version" | sed -e 's/\..*//'`
+ $1_MINOR=`echo "$cf_cv_rel_version" | sed -e 's/^[[^.]]*//' -e 's/^\.//' -e 's/\..*//'`
+ CF_NUMBER_SYNTAX([$]$1_MAJOR,Release major-version)
+ CF_NUMBER_SYNTAX([$]$1_MINOR,Release minor-version)
+])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_SYSMOUSE version: 2 updated: 2003/03/22 19:13:43
+dnl ----------------
+dnl If we can compile with sysmouse, make it available unless it is not wanted.
+AC_DEFUN([CF_WITH_SYSMOUSE],[
+# not everyone has "test -c"
+if test -c /dev/sysmouse 2>/dev/null ; then
+AC_MSG_CHECKING(if you want to use sysmouse)
+AC_ARG_WITH(sysmouse,
+       [  --with-sysmouse         use sysmouse (FreeBSD console)],
+       [cf_with_sysmouse=$withval],
+       [cf_with_sysmouse=maybe])
+       if test "$cf_with_sysmouse" != no ; then
+       AC_TRY_COMPILE([
+#include <osreldate.h>
+#if (__FreeBSD_version >= 400017)
+#include <sys/consio.h>
+#include <sys/fbio.h>
+#else
+#include <machine/console.h>
+#endif
+],[
+       struct mouse_info the_mouse;
+       ioctl(0, CONS_MOUSECTL, &the_mouse);
+],[cf_with_sysmouse=yes],[cf_with_sysmouse=no])
+       fi
+AC_MSG_RESULT($cf_with_sysmouse)
+test "$cf_with_sysmouse" = yes && AC_DEFINE(USE_SYSMOUSE)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_XOPEN_SOURCE version: 11 updated: 2004/01/26 20:58:41
+dnl ---------------
+dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions,
+dnl or adapt to the vendor's definitions to get equivalent functionality.
+AC_DEFUN([CF_XOPEN_SOURCE],[
+case $host_os in #(vi
+freebsd*) #(vi
+       CPPFLAGS="$CPPFLAGS -D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600"
+       ;;
+hpux*) #(vi
+       CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE"
+       ;;
+irix6.*) #(vi
+       CPPFLAGS="$CPPFLAGS -D_SGI_SOURCE"
+       ;;
+linux*) #(vi
+       CF_GNU_SOURCE
+       ;;
+mirbsd*) #(vi
+       # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h>
+       ;;
+netbsd*) #(vi
+       # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
+       ;;
+openbsd*) #(vi
+       # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
+       ;;
+osf[[45]]*) #(vi
+       CPPFLAGS="$CPPFLAGS -D_OSF_SOURCE"
+       ;;
+sco*) #(vi
+       # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
+       ;;
+solaris*) #(vi
+       CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__"
+       ;;
+*)
+       AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
+       AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifndef _XOPEN_SOURCE
+make an error
+#endif],
+       [cf_cv_xopen_source=no],
+       [cf_save="$CPPFLAGS"
+        CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500"
+        AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifdef _XOPEN_SOURCE
+make an error
+#endif],
+       [cf_cv_xopen_source=no],
+       [cf_cv_xopen_source=yes])
+       CPPFLAGS="$cf_save"
+       ])
+])
+test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500"
+
+       # FreeBSD 5.x headers demand this...
+       AC_CACHE_CHECK(if we should define _POSIX_C_SOURCE,cf_cv_xopen_source,[
+       AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifndef _POSIX_C_SOURCE
+make an error
+#endif],
+       [cf_cv_xopen_source=no],
+       [cf_save="$CPPFLAGS"
+        CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE"
+        AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifdef _POSIX_C_SOURCE
+make an error
+#endif],
+       [cf_cv_xopen_source=no],
+       [cf_cv_xopen_source=yes])
+       CPPFLAGS="$cf_save"
+       ])
+])
+test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE"
+       ;;
+esac
+])
index 403e6762489950b199d6925d525c88e98b55e1f9..11fb87c354712aa346270e7d53c0573d5bd9c7da 100644 (file)
@@ -1,11 +1,12 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN">
 <!--
-  $Id: announce.html.in,v 1.44 2002/10/12 23:35:32 tom Exp $
+  $Id: announce.html.in,v 1.53 2004/01/18 01:27:26 tom Exp $
 -->
 <HTML>
 <HEAD>
-<TITLE>Announcing ncurses @VERSION@ Pre-Release</TITLE>
+<TITLE>Announcing ncurses @VERSION@</TITLE>
 <link rev=made href="mailto:bug-ncurses@gnu.org">
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 </HEAD>
 <BODY>
 
@@ -35,173 +36,304 @@ the library and tools.<P>
 
 The ncurses distribution is available via anonymous FTP at
 the GNU distribution site
-<A HREF="ftp://ftp.gnu.org/pub/gnu/ncurses">ftp://ftp.gnu.org/pub/gnu/ncurses</A>.
+<A HREF="ftp://ftp.gnu.org/gnu/ncurses/">ftp://ftp.gnu.org/gnu/ncurses/</A>&nbsp;.
 <br>It is also available at
-<A HREF="ftp://invisible-island.net/ncurses">ftp://invisible-island.net/ncurses</A>.
+<A HREF="ftp://invisible-island.net/ncurses/">ftp://invisible-island.net/ncurses/</A>&nbsp;.
 
 <H1>Release Notes</H1>
 
-This release is designed to be upward compatible from ncurses 5.0 and 5.2;
+This release is designed to be upward compatible from ncurses 5.0 and 5.3;
 very few applications will require recompilation, depending on the platform.
-These are the highlights from the change-log since ncurses 5.2 release.
+These are the highlights from the change-log since ncurses 5.3 release.
 <p>
 Interface changes:
 <ul>
-       <li>change type for bool used in headers to <code>NCURSES_BOOL</code>,
-         which usually is the same as the compiler's definition for
-         <code>bool</code>.
-
-       <li>add all but two functions for X/Open curses wide-character support. 
-         These are only available if the library is configured using the
-         <kbd>--enable-widec</kbd> option.  Missing functions are
-               <ul>
-               <li>pecho_wchar()
-               <li>slk_wset()
-               </ul>
-
-       <li>add environment variable <code>$NCURSES_ASSUMED_COLORS</code> to
-         modify the <code>assume_default_colors()</code> extension.
-
+        <li>add the remaining functions for X/Open curses wide-character
+            support.
+                <ul>
+                <li>pecho_wchar()
+                <li>slk_wset()
+                </ul>
+            These are only available if the library is configured using the
+            <kbd>--enable-widec</kbd> option.
+
+        <li>write <code>getyx()</code> and related 2-return macros in terms of
+            <code>getcury()</code>,
+            <code>getcurx()</code>, etc.
+
+        <li>simplify ifdef for <code>bool</code> declaration in curses.h
+
+        <li>modify ifdef's in curses.h that disabled use of
+            <code>__attribute__()</code> for g++, since recent versions
+            implement the cases which ncurses uses.
+
+        <li>add <code>key_defined()</code> function, to tell which keycode a
+            string is bound to.
 </ul>
 New features and improvements:
 <ul>
-       <li>Improved support for termcap applications:
-       <ul>
-       <li>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.
-
-       <li>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.
-
-       <li>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.
-
-       <li>add tic -A option to suppress capabilities which are commented out
-         when translating to termcap.
-
-       <li>modify logic in lib_baudrate.c for ospeed, for FreeBSD to make it
-         work properly for termcap applications (patch by Andrey A Chernov).
-
-       </ul>
-
-       <li>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).
-
-       <li>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.
+        <li>library
+          <ul>
+            <li>implement logic in lib_mouse.c to handle position reports which
+              are generated when XFree86 xterm is initialized with private
+              modes 1002 or 1003. These are returned to the application as the
+              REPORT_MOUSE_POSITION mask, which was not implemented.
+            <li>modify soft-key initialization to use A_REVERSE if A_STANDOUT
+              would not be shown when colors are used, i.e., if ncv#1 is set in
+              the terminfo as is done in "screen".
+            <li>add configure option for FreeBSD sysmouse, --with-sysmouse, and
+              implement library support for that.
+          </ul>
+
+        <li>programs:
+
+          <ul>
+          <li>tack:
+
+            <ul>
+            <li>allow it to run from fallback terminfo data.
+            <li>reset colors after each color test, correct a place
+                where <code>exit_standout_mode</code> was used instead of
+                <code>exit_attribute_mode</code>.
+            <li>improve <code>bce</code> test by making it set colors other
+                than black on white.
+            </ul>
+
+          <li>tic:
+
+            <ul>
+            <li>handle a case where an entry has no
+                description, and capabilities begin on the same line as the entry
+                name.
+            <li>allow a terminfo entry with a leading 2-character name.
+            <li>improved warnings when suppressing items to fit in termcap's
+                1023-byte limit.
+            <li>add check for multiple "tc=" clauses in a termcap.
+            <li>correct logic for resolving "use=" clauses
+                allow infocmp and tic to show cancelled capabilities.
+            <li>check for incomplete line-drawing character mapping.
+            <li>check for missing/empty/illegal terminfo name.
+            </ul>
+
+          <li>tput:
+            <ul>
+            <li>modify tput to use the same parameter analysis as tparm() does,
+              to provide for user-defined strings, e.g., for xterm title, a
+              corresponding capability might be
+                title=\E]2;%p1%s^G,
+            </ul>
+
+          <li>tset:
+
+            <ul>
+            <li>use the system's default values for CKILL and other default
+                control characters.
+            <li>correct interchanged defaults for kill and interrupt
+                characters, which caused it to report unnecessarily.
+            </ul>
+
+          </ul>
 </ul>
 Major bug fixes:
 <ul>
-       <li>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.
-
-       <li>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().
-
-       <li>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.
-
-       <li>modified wresize() to ensure that a failed realloc will not corrupt
-         the window structure, and to make subwindows fit within the resized
-         window.
-
-       <li>altered resizeterm() to avoid having it fail when a child window
-         cannot be resized because it would be larger than its parent.
-
-       <li>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.
-
-       <li>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.
-
-       <li>add a check in relative_move() to guard against buffer overflow in
-         the overwrite logic.
-
-       <li>add some limit/pointer checks to -S option of tputs.
+        <li>prevent recursion in wgetch() via wgetnstr() if the connection
+          cannot be switched between cooked/raw modes because it is not a TTY.
+
+        <li>correct a case in _nc_remove_string(), used by
+          <code>define_key()</code>, to avoid infinite loop if the given string
+          happens to be a substring of other strings which are assigned to keys.
+
+        <li>modify logic of acsc to use the original character if no mapping is
+          defined, rather than a null.
+
+        <li>several improvements for handling multi-cell display of wide
+            characters.
+          <ul>
+          <li>modify setcchar() to allow converting control characters to complex
+            characters.
+          <li>correct handling of multibyte characters in waddch_literal() which
+            force wrapping because they are started too late on the line.
+          <li>modify setcchar() to allow for wchar_t input strings that have
+            more than one spacing character.
+          </ul>
+
+       <li>other fixes for wide-character support:
+         <ul>
+          <li>rewrote lib_acs.c to allow PutAttrChar() to decide how to render
+            alternate-characters, i.e., to work with Linux console and UTF-8
+            locale.
+          <li>implement a workaround so that line-drawing works with screen's
+            crippled UTF-8 support (tested with 3.9.13).  This only works with
+           the wide-character support (--enable-widec); the normal library
+           will simply suppress line-drawing when running in a UTF-8 locale in
+           screen.
+          <li>corrections to lib_get_wstr.c:
+            <ul>
+            <li>null-terminate buffer passed to setcchar(), which occasionally
+              failed.
+            <li>map special characters such as erase- and kill-characters into
+              key-codes so those will work as expected even if they are not
+              mentioned in the terminfo.
+            </ul>
+         </ul>
 
-       <li>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).
+        <li>modify <code>setupterm()</code> to check if the terminfo and
+          terminal-modes have already been read.  This ensures that it does not
+          reinvoke <code>def_prog_mode()</code> when an application calls more
+          than one function, such as <code>tgetent()</code> and
+          <code>initscr()</code>.
+
+        <li>fix form_driver() cases for REQ_CLR_EOF, REQ_CLR_EOL, REQ_DEL_CHAR,
+          REQ_DEL_PREV and REQ_NEW_LINE, which did not ensure the cursor was at
+          the editing position before making modifications.
+
+        <li>correct <code>keybound()</code>, which reported definitions in the
+          wrong table, i.e., the list of definitions which are disabled by
+          <code>keyok()</code>.
+
+        <li>fixes related to safe_sprintf.c:
+          <ul>
+          <li>correct an allocation size in safe_sprintf.c for the "*" format
+          code.
+          <li>correct safe_sprintf.c to not return a null pointer if the format
+            happens to be an empty string.
+          <li>make return value from _nc_printf_string() consistent. Before,
+            depending on whether --enable-safe-sprintf was used, it might not
+            be cached for reallocating.
+          </ul>
+
+        <li>other low-level improvements to the optimization code include:
+          <ul>
+          <li>if the output is a socket or other non-tty device, use 1
+            millisecond
+            for the cost in mvcur; previously it was 9 milliseconds because the
+            baudrate was not known.
+          <li>modify lib_getch.c to avoid recursion via wgetnstr() when the
+            input
+            is not a tty and consequently mode-changes do not work.
+          <li>fix several places in tack/pad.c which tested and used the
+            parameter- and parameterless strings inconsistently.
+          <li>change several tputs() calls in scrolling code to use putp(), to
+            enable padding which may be needed for some terminals.
+          <li>improve mvcur() by checking if it is safe to move when video
+            attributes are set (msgr), and if not, reset/restore attributes
+            within that function rather than doing it separately in the GoTo()
+            function in tty_update.c.
+         <li>use tputs() rather than putp() in a few cases in tty_update.c
+           since the corresponding delays are proportional to the number of
+           lines affected: repeat_char, clr_eos, change_scroll_region.
+          </ul>
+
+        <li>correct line/column reference in adjust_window(), needed to make
+          special windows such as curscr track properly when resizing.
+
+        <li>fix a potential recursion between napms() and _nc_timed_wait()
+
+        <li>rewrote lib_insch.c, combining it with lib_insstr.c so both handle
+          tab and other control characters consistently.
+
+        <li>do not try to open gpm mouse driver if standard output is not a
+          tty; the gpm library does not make this check.
 </ul>
 
 Portability:
 <ul>
-       <li>configure script:
-       <ul>
-         <li>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.
-
-         <li>correct a typo in configure --enable-colorfgbg option, and move it
-           to the experimental section (cf: 20011208).
-
-         <li>modify configure script to allow building with termcap only, or with
-           fallbacks only.  In this case, we do not build tic and toe.
-
-         <li>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.
-
-         <li>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.
-
-         <li>add several configure script options to aid with cross-compiling:
-           --with-build-cc, --with-build-cflags, --with-build-ldflags, and
-           --with-build-libs.
-
-         <li>add experimental --with-caps=XXX option to customize to similar
-           terminfo database formats such as AIX 4.x
-
-         <li>add configure option --with-ospeed to assist packagers in transition
-           to 5.3 change to ospeed type.
-         </ul>
-
-       <li>library:
-       <ul>
-         <li>implement a simple vsscanf() fallback function which uses the %n
-           conversion to help parse the input data.
-
-         <li>various fixes to build/work with different implementations of
-           vsscanf().
-
-         <li>add/use macro to suppress sign-extension of char type on
-           platforms where this is a problem in ctype macros, e.g., Solaris.
-
-         <li>finish changes needed to build dll's on cygwin.
-
-         <li>add #undef's before possible redefinition of ERR and OK in curses.h
-       </ul>
-
-       <li>programs:
-       <ul>
-         <li>modify ifdef's in write_entry.c to allow use of symbolic links on
-           platforms with no hard links, e.g., BeOS.
-
-         <li>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.
-
-         <li>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".
-       </ul>
+        <li>configure script:
+          <ul>
+          <li>new options:
+            <dl>
+            <dt>--with-abi-version option.
+             <dd>addresses platforms where packagers have diverged from
+                 ncurses ABI numbering.
+            <dt>--with-manpage-format=catonly
+              <dd>addresses
+                  behavior of BSDI, allow install of man+cat files on NetBSD,
+                  whose behavior has diverged by requiring both to be present.
+            <dt>--with-manpage-aliases
+              <dd>extends
+                  "--with-manpage-aliases" to provide the option of generating
+                  ".so" files rather than symbolic links for manpage aliases.
+            <dt>--with-rel-version
+              <dd>workaround to force
+                 libtool on Darwin generate the "same" library names as with
+                 the "--with-shared" option.  The Darwin ld program does not
+                 work well with a zero as the minor-version value.
+            <dt>--with-trace
+              <dd>simplifies defining TRACE to incorporate trace() in libraries.
+            </dl>
+  
+          <li>fixes/improvements for cross-compiling:
+  
+            <ul>
+            <li>allow BUILD_CC and related configure script variables to be
+              overridden from the environment.
+            <li>use AC_CHECK_TOOL to get proper values for AR and LD for cross
+              compiling.
+           <li>use <code>$cross_compiling</code> variable in configure script
+             rather than comparing <code>$host_alias</code> and
+             <code>$target</code> alias, since "host" is traditionally misused
+             in autoconf to refer to the target platform.
+            <li>modify run_tic.in to avoid using wrong shared libraries when
+              cross-compiling.
+            </ul>
+  
+          <li>fixes for Mac OS X:
+            <ul>
+            <li>fix a redefinition of <code>$RANLIB</code> in the configure
+              script when libtool is used.
+            <li>modify MKlib_gen.sh to avoid passing "#" tokens through the C
+              preprocessor.  This works around Mac OS X's preprocessor, which
+              insists on adding a blank on each side of the token.
+            </ul>
+  
+          <li>workarounds for broken tools:
+            <ul>
+            <li>add configure check for wchar_t and wint_t types, rather than
+              rely on preprocessor definitions.  Also work around for gcc
+             <code>fixinclude</code> bug which creates a shadow copy of
+             curses.h if it sees these symbols apparently typedef'd.
+           <li>modify configure script to omit -Winline for gcc 3.3, since
+             that feature is broken.
+            <li>several script fixes to work around the ironically named
+              <em>POSIXLY_CORRECT</em> feature of GNU sed 4.0.
+           <li>modify configure script to avoid using "head -1", which does
+             not work if POSIXLY_CORRECT (sic) is set.
+            <li>update configure script to reflect fix for
+              AC_PROG_GCC_TRADITIONAL, which is broken in autoconf 2.5x for Mac
+              OS X 10.2.3.
+            <li>repair check for missing C++ compiler, which is broken in
+              autoconf 2.5x by hardcoding it to g++.
+            </ul>
+  
+          <li>corrected ifdef's relating to configure check for wchar_t, etc.
+          <li>remove configure script check to allow -Wconversion for older
+            versions of gcc
+         <li>modify configure script to accommodate libtool 1.5, as well as
+           add an parameter to the "--with-libtool" option which can specify
+           the pathname of libtool.
+          <li>change several sed scripts to avoid using "\+" since it is not a
+           BRE (basic regular expression).  One instance caused terminfo.5 to
+           be misformatted on FreeBSD.
+          <li>use '%' as sed substitute delimiter in run_tic script to avoid
+            problems with pathname delimiters such as ':' and '@'.
+          <li>add -D_XOPEN_SOURCE=500 if needed when configuring with
+           "--enable-widec", to get <code>mbstate_t</code> declaration on HPUX
+           11.11.
+          </ul>
+
+        <li>library:
+          <ul>
+          <li>adjust include-options in CF_ETIP_DEFINES to avoid missing
+            ncurses_dll.h, fixing special definitions that may be needed for
+            etip.h.
+          <li>modify CF_LIB_SUFFIX for Itanium releases of HP-UX, which use a
+            ".so" suffix.
+          <li>improve ifdef's to guard against redefinition of wchar_t and wint_t
+            in curses.h.
+          <li>remove an #undef for KEY_EVENT from curses.tail used in the
+            experimental NCURSES_WGETCH_EVENTS feature.  The #undef confuses
+            Debian <code>dpkg</code>'s build script.
+          </ul>
 </ul>
 
 <H1>Features of Ncurses</H1>
@@ -317,61 +449,60 @@ including (versions starting with those noted):
 <DT> cdk
 <DD> Curses Development Kit
 <br>
-<A HREF="http://invisible-island.net/cdk/cdk.html">http://invisible-island.net/cdk</A>.
+<A HREF="http://invisible-island.net/cdk/">http://invisible-island.net/cdk/</A>
 <br>
-<A HREF="http://www.vexus.ca/CDK.html">http://www.vexus.ca/CDK.html</a>
+<A HREF="http://www.vexus.ca/products/CDK/">http://www.vexus.ca/products/CDK/</a>
 <DT> ded
 <DD> directory-editor
 <br>
-<A HREF="http://invisible-island.net/ded/ded.html">http://invisible-island.net/ded</A>.
+<A HREF="http://invisible-island.net/ded/">http://invisible-island.net/ded/</A>
 <DT> dialog
 <DD> the underlying application used in Slackware's setup, and the basis
 for similar applications on GNU/Linux.
 <br>
-<A HREF="http://invisible-island.net/dialog/dialog.html">http://invisible-island.net/dialog</A>.
+<A HREF="http://invisible-island.net/dialog/">http://invisible-island.net/dialog/</A>
 <DT> lynx
 <DD> the character-screen WWW browser
 <br>
-<A HREF="http://lynx.isc.org/release/">http://lynx.isc.org/release</A>.
+<A HREF="http://lynx.isc.org/release/">http://lynx.isc.org/release/</A>
 <DT> Midnight Commander
 <DD> file manager
 <br>
-<A HREF="www.gnome.org/mc/">www.gnome.org/mc/</A>.
+<A HREF="http://www.ibiblio.org/mc/">http://www.ibiblio.org/mc/</A>
 <DT> mutt
 <DD> mail utility
 <br>
-<A HREF="http://www.mutt.org">http://www.mutt.org</A>.
+<A HREF="http://www.mutt.org/">http://www.mutt.org/</A>
 <DT> ncftp
 <DD> file-transfer utility
 <br>
-<A HREF="http://www.ncftp.com">http://www.ncftp.com</A>.
+<A HREF="http://www.ncftp.com/">http://www.ncftp.com/</A>
 <DT> nvi
 <DD> New vi versions 1.50 are able to use ncurses versions 1.9.7 and later.
 <br>
-<A HREF="http://www.bostic.com/vi/">http://www.bostic.com/vi/</A>.
+<A HREF="http://www.bostic.com/vi/">http://www.bostic.com/vi/</A>
+<br>
+<DT> pinfo
+<DD> Lynx-like info browser.
+<A HREF="http://dione.ids.pl/~pborys/software/pinfo/">http://dione.ids.pl/~pborys/software/pinfo/</A>
 <DT> tin
 <DD> newsreader, supporting color, MIME
-<br>
-<A HREF="http://www.tin.org">http://www.tin.org</A>.
-<DT> taper
-<DD> tape archive utility
-<br>
-<A HREF="http://members.iinet.net.au/~yusuf/taper/">http://members.iinet.net.au/~yusuf/taper/</A>.
+<A HREF="http://www.tin.org/">http://www.tin.org/</A>
 <DT> vh-1.6
 <DD> Volks-Hypertext browser for the Jargon File
 <br>
-<A HREF="http://www.bg.debian.org/Packages/unstable/text/vh.html">http://www.bg.debian.org/Packages/unstable/text/vh.html</A>.
+<A HREF="http://www.debian.org/Packages/unstable/text/vh.html">http://www.debian.org/Packages/unstable/text/vh.html</A>
 </DL>
 as well as some that use ncurses for the terminfo support alone:
 <DL>
 <DT> minicom
 <DD> terminal emulator
 <br>
-<A HREF="http://www.pp.clinet.fi/~walker/minicom.html">http://www.pp.clinet.fi/~walker/minicom.html</A>.
+<A HREF="http://www.netsonic.fi/~walker/minicom.html">http://www.netsonic.fi/~walker/minicom.html</A>
 <DT> vile
 <DD> vi-like-emacs
 <br>
-<A HREF="http://invisible-island.net/vile/vile.html">http://invisible-island.net/vile</A>.
+<A HREF="http://invisible-island.net/vile/">http://invisible-island.net/vile/</A>
 </DL>
 <P>
 
@@ -380,16 +511,16 @@ a few games).
 
 <H2>Who's Who and What's What</H2>
 
-The original developers of ncurses are <A
-HREF="mailto:zmbenhal@netcom.com">Zeyd Ben-Halim</A> and
-<A HREF="http://www.ccil.org/~esr/home.html">Eric S. Raymond</A>.
+Zeyd Ben-Halim
+started it from a previous package pcurses, written by Pavel Curtis.
+Eric S. Raymond
+continued development.
+J&uuml;rgen Pfeifer wrote most of the form and menu libraries.
 Ongoing work is being done by
-<A HREF="mailto:dickey@herndon4.his.com">Thomas Dickey</A>
-and
-<A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">J&uuml;rgen Pfeifer</A>.
-<A HREF="mailto:dickey@herndon4.his.com">Thomas Dickey</A>
-acts as the maintainer for the Free Software Foundation, which holds the
-copyright on ncurses.
+<A HREF="mailto:dickey@invisible-island.net">Thomas Dickey</A>.
+Thomas Dickey
+acts as the maintainer for the Free Software Foundation,
+which holds the copyright on ncurses.
 Contact the current maintainers at
 <A HREF="mailto:bug-ncurses@gnu.org">bug-ncurses@gnu.org</A>.
 <P>
@@ -404,7 +535,7 @@ This list is open to anyone interested in helping with the development and
 testing of this package.<P>
 
 Beta versions of ncurses and patches to the current release are made available at
-<A HREF="ftp://invisible-island.net/ncurses">ftp://invisible-island.net/ncurses</A>.
+<A HREF="ftp://invisible-island.net/ncurses/">ftp://invisible-island.net/ncurses/</A>&nbsp;.
 
 <H2>Future Plans</H2>
 <UL>
@@ -416,14 +547,16 @@ on them, please join the ncurses list.
 
 <H2>Other Related Resources</H2>
 
-The distribution includes and uses a version of the terminfo-format
-terminal description file maintained by Eric Raymond.
-<A HREF="http://earthspace.net/~esr/terminfo">http://earthspace.net/~esr/terminfo</A>.<P>
+The distribution provides a newer version of the terminfo-format
+terminal description file maintained by
+<A HREF="http://www.catb.org/~esr/terminfo/">Eric Raymond</A>&nbsp;.
+Unlike the older version, the termcap and terminfo data are provided
+in the same file.<P>
 
 You can find lots of information on terminal-related topics
 not covered in the terminfo file at
 <A HREF="http://www.cs.utk.edu/~shuford/terminal_index.html">Richard Shuford's
-archive</A>.
+archive</A>&nbsp;.
 </BODY>
 </HTML>
 <!--
index 9555320e4c6b63e2b0a0d4d5db5f30c5fb6243d1..c389449464ed1469df7a68f8de635bb4c70546a0 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.64 2002/01/19 20:25:31 NIIBE.Yutaka Exp $
+# $Id: Makefile.in,v 1.72 2004/01/16 22:44:56 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,1999,2000,2001,2002 Free Software Foundation, Inc.      #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -27,7 +27,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997
+# Author: Thomas E. Dickey
 #
 #  Simple makefile for c++ window class demo
 
@@ -38,7 +38,8 @@ SHELL         = /bin/sh
 
 CF_MFLAGS      = @cf_cv_makeflags@
 @SET_MAKE@
-x              = @PROG_EXT@
+x              = @EXEEXT@
+o              = .@OBJEXT@
 
 MODEL          = ../@DFT_OBJ_SUBDIR@
 DESTDIR                = @DESTDIR@
@@ -48,7 +49,12 @@ exec_prefix  = @exec_prefix@
 libdir         = @libdir@
 includedir     = @includedir@
 
-LIBTOOL                = @LIBTOOL@
+LIBTOOL                = @LIBTOOL_CXX@
+LIBTOOL_CLEAN  = @LIB_CLEAN@
+LIBTOOL_COMPILE        = @LIB_COMPILE@
+LIBTOOL_LINK   = @LIB_LINK@
+LIBTOOL_INSTALL        = @LIB_INSTALL@
+LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
 
 INSTALL                = @INSTALL@
 INSTALL_DATA   = @INSTALL_DATA@
@@ -58,7 +64,7 @@ AR_OPTS               = @AR_OPTS@
 
 CXX_AR         = @CXX_AR@
 CXX_AR_OPTS    = @CXX_AR_OPTS@
-RANLIB         = @RANLIB@
+RANLIB         = @LIB_PREP@
 
 CXX            = @CXX@
 CPP            = @CPP@
@@ -83,7 +89,9 @@ NCURSES_MINOR = @NCURSES_MINOR@
 REL_VERSION     = @cf_cv_rel_version@
 ABI_VERSION    = @cf_cv_abi_version@
 
-LINK           = @LINK_PROGS@ $(LIBTOOL) $(CXX) @CXXLDFLAGS@
+LINK           = @LINK_PROGS@ $(LIBTOOL_LINK) $(CXX) @CXXLDFLAGS@
+SHLIB_DIRS     = -L../lib
+SHLIB_LIST     = $(SHLIB_DIRS) -lncurses@LIB_SUFFIX@ @SHLIB_LIST@
 
 LIBROOT                = ncurses++
 
@@ -102,11 +110,11 @@ LINK_SHARED       = $(LINK_FLAGS)
 LDFLAGS                = @TEST_ARGS@ @LDFLAGS@ \
        @LD_MODEL@ @LIBS@ @EXTRA_LIBS@ @LOCAL_LDFLAGS@ $(CXXLIBS)
 
-LDFLAGS_LIBTOOL        = $(LDFLAGS)
-LDFLAGS_NORMAL = $(LDFLAGS)
-LDFLAGS_DEBUG  = $(LDFLAGS) @CC_G_OPT@
-LDFLAGS_PROFILE        = $(LDFLAGS) -pg
-LDFLAGS_SHARED = $(LDFLAGS) @LD_SHARED_OPTS@
+LDFLAGS_LIBTOOL        = $(LDFLAGS) $(CFLAGS_LIBTOOL)
+LDFLAGS_NORMAL = $(LDFLAGS) $(CFLAGS_NORMAL)
+LDFLAGS_DEBUG  = $(LDFLAGS) $(CFLAGS_DEBUG)
+LDFLAGS_PROFILE        = $(LDFLAGS) $(CFLAGS_PROFILE)
+LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
 
 LDFLAGS_DEFAULT        = $(LINK_@DFT_UPR_MODEL@) $(LDFLAGS_@DFT_UPR_MODEL@)
 
@@ -126,27 +134,28 @@ depend :
 # pull in all of the ncurses libraries (panel, menu, form, ncurses) as direct
 # dependencies.
 LIB_OBJS = \
-       $(MODEL)/cursesf.o \
-       $(MODEL)/cursesm.o \
-       $(MODEL)/cursesw.o \
-       $(MODEL)/cursespad.o \
-       $(MODEL)/cursesp.o \
-       $(MODEL)/cursslk.o \
-       $(MODEL)/cursesapp.o \
-       $(MODEL)/cursesmain.o
+       $(MODEL)/cursesf$o \
+       $(MODEL)/cursesm$o \
+       $(MODEL)/cursesw$o \
+       $(MODEL)/cursespad$o \
+       $(MODEL)/cursesp$o \
+       $(MODEL)/cursslk$o \
+       $(MODEL)/cursesapp$o \
+       $(MODEL)/cursesmain$o
 
 ../lib/$(LIBNAME_NORMAL) : $(LIB_OBJS)
        $(CXX_AR) $(CXX_AR_OPTS) $@ $?
        $(RANLIB) $@
 
 ../lib/$(LIBNAME_LIBTOOL) : $(LIB_OBJS)
-       cd ../lib && $(LIBTOOL) $(CXX) -o $(LIBNAME) $(LIB_OBJS:.o=.lo) \
+       cd ../lib && $(LIBTOOL_LINK) $(CXX) $(CXXFLAGS) \
+               -o $(LIBNAME) $(LIB_OBJS:$o=.lo) \
                -rpath $(INSTALL_PREFIX)$(libdir) \
-               -version-info $(NCURSES_MAJOR):$(NCURSES_MINOR)
+               -version-info $(NCURSES_MAJOR):$(NCURSES_MINOR) $(SHLIB_LIST)
 
-OBJS_DEMO = $(MODEL)/demo.o
+OBJS_DEMO = $(MODEL)/demo$o
 
-$(MODEL)/demo.o : $(srcdir)/demo.cc \
+$(MODEL)/demo$o : $(srcdir)/demo.cc \
        $(cursesf_h) $(cursesm_h) $(cursesapp_h)
 
 demo$x:        $(OBJS_DEMO) \
@@ -163,18 +172,19 @@ $(DESTDIR)$(libdir) :
 
 install \
 install.libs:: ../lib/$(LIBNAME) $(DESTDIR)$(libdir)
-       $(LIBTOOL) $(INSTALL) ../lib/$(LIBNAME) $(DESTDIR)$(libdir)/$(LIBNAME)
+       $(LIBTOOL_INSTALL) $(INSTALL) ../lib/$(LIBNAME) $(DESTDIR)$(libdir)/$(LIBNAME)
 
 uninstall \
 uninstall.libs::
-       -$(LIBTOOL) rm -f $(DESTDIR)$(libdir)/$(LIBNAME)
+       -$(LIBTOOL_UNINSTALL) rm -f $(DESTDIR)$(libdir)/$(LIBNAME)
 
 mostlyclean ::
        -rm -f core tags TAGS *~ *.bak *.i *.ii *.ln *.atac trace
 
 clean :: mostlyclean
+       -sh -c "if test -n '$x' ; then $(MAKE) clean x=''; fi"
        -rm -rf $(MODEL)/SunWS_cache
-       -$(LIBTOOL) rm -f demo$x $(AUTO_SRC) ../lib/$(LIBNAME) $(LIB_OBJS) $(LIB_OBJS:.o=.lo) $(OBJS_DEMO)
+       -$(LIBTOOL_CLEAN) rm -f demo$x $(AUTO_SRC) ../lib/$(LIBNAME) $(LIB_OBJS) $(LIB_OBJS:$o=.lo) $(OBJS_DEMO)
        -rm -rf .libs
 
 distclean :: clean
index 747fb1e768917c187f859662e652eabc1b455a64..ff1e5c5d96769dc3e3b041ee0869a6e5b84d5153 100644 (file)
@@ -1,3 +1,5 @@
+-- $Id: README-first,v 1.7 2003/10/25 15:13:23 tom Exp $
+-------------------------------------------------------------------------------
                   C++ interface to ncurses routines
 -----------------------------------------------------------------------
 
@@ -55,4 +57,4 @@ Authors of first ncurses based release (NCursesWindow, NCursesPanel):
  and Anatoly Ivasyuk     <anatoly@nick.csh.rit.edu>
 
 Author of this release:
-     Juergen Pfeifer     http://www.familiepfeifer.de/Contact.aspx?Lang=en
+     Juergen Pfeifer
index 5b7ab5c0ab99f655537679b9fecb8ccd140e2783..82432c5c8dea300170e2694c814a4a2e91ed7a90 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,1999,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "internal.h"
 #include "cursesapp.h"
 
-MODULE_ID("$Id: cursesapp.cc,v 1.9 2002/07/06 15:47:52 juergen Exp $")
+MODULE_ID("$Id: cursesapp.cc,v 1.10 2003/10/25 15:04:46 tom Exp $")
 
 void
 NCursesApplication::init(bool bColors) {
index 3eb25d031191626d06995cf2a7ac98da313077f3..4a7a21f1f7cdd9ae263a9696099ab1d9fece812d 100644 (file)
@@ -1,6 +1,6 @@
 // * This makes emacs happy -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
-// $Id: cursesapp.h,v 1.8 2002/07/06 15:47:52 juergen Exp $
+// $Id: cursesapp.h,v 1.9 2003/10/25 15:04:46 tom Exp $
 
 #ifndef NCURSES_CURSESAPP_H_incl
 #define NCURSES_CURSESAPP_H_incl
index aff7b4f8ca053f787b35884fb9de8004ad2e7172..b6a0a59369896722377639b0095f4c55bd7554f3 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,2001 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "internal.h"
 #include "cursesf.h"
 #include "cursesapp.h"
 
-MODULE_ID("$Id: cursesf.cc,v 1.15 2002/07/06 15:47:52 juergen Exp $")
+MODULE_ID("$Id: cursesf.cc,v 1.16 2003/10/25 15:04:46 tom Exp $")
 
 NCursesFormField::~NCursesFormField () {
   if (field)
index abd2a7dcc7dc2ea4667102920d51d2f0d4dcf47f..91b390b2387c0ef77496f3d30e69609638f0d944 100644 (file)
@@ -1,6 +1,6 @@
 // * This makes emacs happy -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.         *
+ * Copyright (c) 1998-2003,2004 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
-// $Id: cursesf.h,v 1.17 2002/07/06 15:47:52 juergen Exp $
+// $Id: cursesf.h,v 1.19 2004/01/15 00:43:46 tom Exp $
 
 #ifndef NCURSES_CURSESF_H_incl
 #define NCURSES_CURSESF_H_incl 1
@@ -591,12 +590,6 @@ protected:
   }
 
 public:
-  NCursesUserForm (NCursesFormField Fields[],
-                  bool with_frame=FALSE,
-                  bool autoDelete_Fields=FALSE)
-    : NCursesForm (Fields, with_frame, autoDelete_Fields) {
-  };
-
   NCursesUserForm (NCursesFormField Fields[],
                   const T* p_UserData = (T*)0,
                   bool with_frame=FALSE,
@@ -724,7 +717,7 @@ public:
 
 class NCURSES_IMPEXP Enumeration_Field : public NCursesFieldType {
 private:
-  char** list;
+  const char** list;
   int case_sensitive;
   int non_unique_matches;
 
@@ -733,7 +726,7 @@ private:
                             list,case_sensitive,non_unique_matches));
   }
 public:
-  Enumeration_Field(char* enums[],
+  Enumeration_Field(const char* enums[],
                    bool case_sens=FALSE,
                    bool non_unique=FALSE)
     : NCursesFieldType(TYPE_ENUM),
index f1ff57662f4b06686a11575239ca185e1101e62b..22b785bc6270ced03ed5c090ac6fdaa7368af9d8 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,1999,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "internal.h"
 #include "cursesm.h"
 #include "cursesapp.h"
 
-MODULE_ID("$Id: cursesm.cc,v 1.17 2002/07/06 15:47:52 juergen Exp $")
+MODULE_ID("$Id: cursesm.cc,v 1.18 2003/10/25 15:04:46 tom Exp $")
 
 NCursesMenuItem::~NCursesMenuItem() {
   if (item)
index 8873eca341c5748b94aa5fcae0127e757497c012..cc12d33aeb3eea2857a25ae5a09120e5d804d9fd 100644 (file)
@@ -1,6 +1,6 @@
 // * This makes emacs happy -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
-// $Id: cursesm.h,v 1.16 2002/07/06 15:47:52 juergen Exp $
+// $Id: cursesm.h,v 1.17 2003/10/25 15:04:46 tom Exp $
 
 #ifndef NCURSES_CURSESM_H_incl
 #define NCURSES_CURSESM_H_incl 1
index 7a3721ddc0d1f3bcfd15bd96adba4076a0d32028..d10035b5f06e69c1242bc89e7197e82840eec68e 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,2001 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "internal.h"
 #include "cursesapp.h"
 
-MODULE_ID("$Id: cursesmain.cc,v 1.9 2002/07/06 15:47:52 juergen Exp $")
+MODULE_ID("$Id: cursesmain.cc,v 1.11 2003/10/25 14:53:13 tom Exp $")
+
+#if HAVE_LOCALE_H
+#include <locale.h>
+#else
+#define setlocale(name,string) /* nothing */
+#endif
 
 /* This is the default implementation of main() for a NCursesApplication.
  * You only have to instantiate a static NCursesApplication object in your
  * main application source file and link this module with your application.
- */ 
+ */
 int main(int argc, char* argv[])
 {
+  setlocale(LC_ALL, "");
+
   NCursesApplication* A = NCursesApplication::getApplication();
   if (!A)
     return(1);
index 2e6931b1bbc28be1114704d3aa960449fde262ae..c236d516c7620e36e184856c36b6674cd161744a 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.         *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1993, 1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "internal.h"
 #include "cursesp.h"
 #include <string.h>
 
-MODULE_ID("$Id: cursesp.cc,v 1.20 2002/07/13 11:35:08 juergen Exp $")
+MODULE_ID("$Id: cursesp.cc,v 1.21 2003/10/25 15:04:46 tom Exp $")
 
 NCursesPanel* NCursesPanel::dummy = (NCursesPanel*)0;
 
index f5295e410c90832298a48f1a6fe74293625974f4..33eae9b24c301e197beb37425f6c9c13b909c498 100644 (file)
@@ -1,6 +1,6 @@
 // * This makes emacs happy -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.         *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #ifndef NCURSES_CURSESP_H_incl
 #define NCURSES_CURSESP_H_incl 1
 
-// $Id: cursesp.h,v 1.17 2002/07/06 15:47:52 juergen Exp $
+// $Id: cursesp.h,v 1.18 2003/10/25 15:04:46 tom Exp $
 
 #include <cursesw.h>
 
index 815f51ce0df7d54781f19b38f3a82394abfd1503..2d067a0e56f00790550fc8a9d35f11ed3a5b4a54 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1999                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "internal.h"
 #include "etip.h"
 #include "cursesw.h"
 
-MODULE_ID("$Id: cursespad.cc,v 1.6 2002/09/22 19:32:55 tom Exp $")
+MODULE_ID("$Id: cursespad.cc,v 1.7 2003/10/25 15:04:46 tom Exp $")
 
 NCursesPad::NCursesPad(int lines, int cols)
   : NCursesWindow(),
index 905a7b52c20d9a5a0536af4fd9744efc0ddf3e30..662edb5ad476edbf5052821603b9af58b7ffebd8 100644 (file)
           and Anatoly Ivasyuk (anatoly@nick.csh.rit.edu)
 
   modified by Juergen Pfeifer
-  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
+  and Thomas Dickey (noting that more than 70% of this file has been changed)
 */
 
 #include "internal.h"
 #include "cursesw.h"
 
-MODULE_ID("$Id: cursesw.cc,v 1.25 2002/07/06 15:47:52 juergen Exp $")
+MODULE_ID("$Id: cursesw.cc,v 1.26 2003/10/25 15:02:46 tom Exp $")
 
 #define COLORS_NEED_INITIALIZATION  -1
 #define COLORS_NOT_INITIALIZED       0
index 5383399de4fee7cb7b981f1ffe0c256aba633a33..8e86ff99f02fbbd9b5c061a22675e8c6314b0fec 100644 (file)
@@ -1,6 +1,6 @@
 // * This makes emacs happy -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.         *
+ * Copyright (c) 1998-2001,2004 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            *
 #ifndef NCURSES_CURSESW_H_incl
 #define NCURSES_CURSESW_H_incl 1
 
-// $Id: cursesw.h,v 1.28 2001/07/15 01:17:56 tom Exp $
+// $Id: cursesw.h,v 1.30 2004/02/08 00:11:54 tom Exp $
 
 #include <etip.h>
-#include <stdio.h>
 #include <stdarg.h>
+#include <stdio.h>
 
 #if HAVE_STRSTREAM_H && (USE_STRSTREAM_VSCAN||USE_STRSTREAM_VSCAN_CAST)
 #include <strstream.h>
@@ -73,8 +73,7 @@ inline int UNDEF(insdelln)(int n)  { return insdelln(n); }
 #endif
 
 #ifdef addstr
-/* The (char*) cast is to hack around missing const's */
-inline int UNDEF(addstr)(const char * str)  { return addstr((char*)str); }
+inline int UNDEF(addstr)(const char * str)  { return addstr(str); }
 #undef addstr
 #define addstr UNDEF(addstr)
 #endif
@@ -98,14 +97,14 @@ inline chtype UNDEF(attrset)(chtype at) { return attrset(at); }
 #endif
 
 #ifdef color_set
-inline chtype UNDEF(color_set)(short p,void* opts) { return color_set(p,opts); }
+inline chtype UNDEF(color_set)(short p, void* opts) { return color_set(p, opts); }
 #undef color_set
 #define color_set UNDEF(color_set)
 #endif
 
 #ifdef border
 inline int UNDEF(border)(chtype ls, chtype rs, chtype ts, chtype bs, chtype tl, chtype tr, chtype bl, chtype br)
-{ return border(ls,rs,ts,bs,tl,tr,bl,br); }
+{ return border(ls, rs, ts, bs, tl, tr, bl, br); }
 #undef border
 #define border UNDEF(border)
 #endif
@@ -117,15 +116,15 @@ inline int UNDEF(box)(WINDOW *win, int v, int h) { return box(win, v, h); }
 #endif
 
 #ifdef mvwhline
-inline int UNDEF(mvwhline)(WINDOW *win,int y,int x,chtype c,int n) {
-  return mvwhline(win,y,x,c,n); }
+inline int UNDEF(mvwhline)(WINDOW *win, int y, int x, chtype c, int n) {
+  return mvwhline(win, y, x, c, n); }
 #undef mvwhline
 #define mvwhline UNDEF(mvwhline)
 #endif
 
 #ifdef mvwvline
-inline int UNDEF(mvwvline)(WINDOW *win,int y,int x,chtype c,int n) {
-  return mvwvline(win,y,x,c,n); }
+inline int UNDEF(mvwvline)(WINDOW *win, int y, int x, chtype c, int n) {
+  return mvwvline(win, y, x, c, n); }
 #undef mvwvline
 #define mvwvline UNDEF(mvwvline)
 #endif
@@ -202,35 +201,35 @@ inline int UNDEF(instr)(char *_str)  { return instr(_str); }
 #endif
 
 #ifdef innstr
-inline int UNDEF(innstr)(char *_str, int n)  { return innstr(_str,n); }
+inline int UNDEF(innstr)(char *_str, int n)  { return innstr(_str, n); }
 #undef innstr
 #define innstr UNDEF(innstr)
 #endif
 
 #ifdef mvwinnstr
 inline int UNDEF(mvwinnstr)(WINDOW *win, int y, int x, char *_str, int n) {
-  return mvwinnstr(win,y,x,_str,n); }
+  return mvwinnstr(win, y, x, _str, n); }
 #undef mvwinnstr
 #define mvwinnstr UNDEF(mvwinnstr)
 #endif
 
 #ifdef mvinnstr
 inline int UNDEF(mvinnstr)(int y, int x, char *_str, int n) {
-  return mvinnstr(y,x,_str,n); }
+  return mvinnstr(y, x, _str, n); }
 #undef mvinnstr
 #define mvinnstr UNDEF(mvinnstr)
 #endif
 
 #ifdef winsstr
 inline int UNDEF(winsstr)(WINDOW *w, const char *_str)  {
-  return winsstr(w,_str); }
+  return winsstr(w, _str); }
 #undef winsstr
 #define winsstr UNDEF(winsstr)
 #endif
 
 #ifdef mvwinsstr
 inline int UNDEF(mvwinsstr)(WINDOW *w, int y, int x,  const char *_str)  {
-  return mvwinsstr(w,y,x,_str); }
+  return mvwinsstr(w, y, x, _str); }
 #undef mvwinsstr
 #define mvwinsstr UNDEF(mvwinsstr)
 #endif
@@ -243,35 +242,35 @@ inline int UNDEF(insstr)(const char *_str)  {
 #endif
 
 #ifdef mvinsstr
-inline int UNDEF(mvinsstr)(int y, int x,const char *_str)  {
-  return mvinsstr(y,x,_str); }
+inline int UNDEF(mvinsstr)(int y, int x, const char *_str)  {
+  return mvinsstr(y, x, _str); }
 #undef mvinsstr
 #define mvinsstr UNDEF(mvinsstr)
 #endif
 
 #ifdef insnstr
 inline int UNDEF(insnstr)(const char *_str, int n)  {
-  return insnstr(_str,n); }
+  return insnstr(_str, n); }
 #undef insnstr
 #define insnstr UNDEF(insnstr)
 #endif
 
 #ifdef mvwinsnstr
-inline int UNDEF(mvwinsnstr)(WINDOW *w, int y, int x,const char *_str, int n) {
-  return mvwinsnstr(w,y,x,_str,n); }
+inline int UNDEF(mvwinsnstr)(WINDOW *w, int y, int x, const char *_str, int n) {
+  return mvwinsnstr(w, y, x, _str, n); }
 #undef mvwinsnstr
 #define mvwinsnstr UNDEF(mvwinsnstr)
 #endif
 
 #ifdef mvinsnstr
-inline int UNDEF(mvinsnstr)(int y, int x,const char *_str, int n) {
-  return mvinsnstr(y,x,_str,n); }
+inline int UNDEF(mvinsnstr)(int y, int x, const char *_str, int n) {
+  return mvinsnstr(y, x, _str, n); }
 #undef mvinsnstr
 #define mvinsnstr UNDEF(mvinsnstr)
 #endif
 
 #ifdef getnstr
-inline int UNDEF(getnstr)(char *_str, int n)  { return getnstr(_str,n); }
+inline int UNDEF(getnstr)(char *_str, int n)  { return getnstr(_str, n); }
 #undef getnstr
 #define getnstr UNDEF(getnstr)
 #endif
@@ -389,7 +388,7 @@ inline int UNDEF(standout)()  { return standout(); }
 
 #ifdef subpad
 inline WINDOW *UNDEF(subpad)(WINDOW *p, int l, int c, int y, int x)
-{ return derwin(p,l,c,y,x); }
+{ return derwin(p, l, c, y, x); }
 #undef subpad
 #define subpad UNDEF(subpad)
 #endif
@@ -402,7 +401,7 @@ inline void UNDEF(timeout)(int delay) { timeout(delay); }
 
 #ifdef touchline
 inline int UNDEF(touchline)(WINDOW *win, int s, int c)
-{ return touchline(win,s,c); }
+{ return touchline(win, s, c); }
 #undef touchline
 #define touchline UNDEF(touchline)
 #endif
@@ -457,8 +456,8 @@ inline int UNDEF(wattroff)(WINDOW *win, int att) { return wattroff(win, att); }
 #endif
 
 #ifdef chgat
-inline int UNDEF(chgat)(int n,attr_t attr, short color, const void *opts) {
-  return chgat(n,attr,color,opts); }
+inline int UNDEF(chgat)(int n, attr_t attr, short color, const void *opts) {
+  return chgat(n, attr, color, opts); }
 #undef chgat
 #define chgat UNDEF(chgat)
 #endif
@@ -466,7 +465,7 @@ inline int UNDEF(chgat)(int n,attr_t attr, short color, const void *opts) {
 #ifdef mvchgat
 inline int UNDEF(mvchgat)(int y, int x, int n,
                          attr_t attr, short color, const void *opts) {
-  return mvchgat(y,x,n,attr,color,opts); }
+  return mvchgat(y, x, n, attr, color, opts); }
 #undef mvchgat
 #define mvchgat UNDEF(mvchgat)
 #endif
@@ -474,7 +473,7 @@ inline int UNDEF(mvchgat)(int y, int x, int n,
 #ifdef mvwchgat
 inline int UNDEF(mvwchgat)(WINDOW *win, int y, int x, int n,
                           attr_t attr, short color, const void *opts) {
-  return mvwchgat(win,y,x,n,attr,color,opts); }
+  return mvwchgat(win, y, x, n, attr, color, opts); }
 #undef mvwchgat
 #define mvwchgat UNDEF(mvwchgat)
 #endif
@@ -514,21 +513,21 @@ inline int UNDEF(mvwaddchstr)(WINDOW *win, int y, int x, chtype *str)
 
 #ifdef addnstr
 inline int UNDEF(addnstr)(const char *str, int n)
-{ return addnstr((char*)str, n); }
+{ return addnstr(str, n); }
 #undef addnstr
 #define addnstr UNDEF(addnstr)
 #endif
 
 #ifdef mvwaddnstr
 inline int UNDEF(mvwaddnstr)(WINDOW *win, int y, int x, const char *str, int n)
-{ return mvwaddnstr(win, y, x, (char*)str, n); }
+{ return mvwaddnstr(win, y, x, str, n); }
 #undef mvwaddnstr
 #define mvwaddnstr UNDEF(mvwaddnstr)
 #endif
 
 #ifdef mvwaddstr
 inline int UNDEF(mvwaddstr)(WINDOW *win, int y, int x, const char * str)
-{ return mvwaddstr(win, y, x, (char*)str); }
+{ return mvwaddstr(win, y, x, str); }
 #undef mvwaddstr
 #define mvwaddstr UNDEF(mvwaddstr)
 #endif
@@ -548,14 +547,14 @@ inline int UNDEF(mvwgetch)(WINDOW *win, int y, int x) { return mvwgetch(win, y,
 
 #ifdef mvwgetstr
 inline int UNDEF(mvwgetstr)(WINDOW *win, int y, int x, char *str)
-{return mvwgetstr(win,y,x, str);}
+{return mvwgetstr(win, y, x, str);}
 #undef mvwgetstr
 #define mvwgetstr UNDEF(mvwgetstr)
 #endif
 
 #ifdef mvwgetnstr
 inline int UNDEF(mvwgetnstr)(WINDOW *win, int y, int x, char *str, int n)
-{return mvwgetnstr(win,y,x, str,n);}
+{return mvwgetnstr(win, y, x, str, n);}
 #undef mvwgetnstr
 #define mvwgetnstr UNDEF(mvwgetnstr)
 #endif
@@ -583,14 +582,14 @@ inline int UNDEF(mvaddch)(int y, int x, chtype ch)
 
 #ifdef mvaddnstr
 inline int UNDEF(mvaddnstr)(int y, int x, const char *str, int n)
-{ return mvaddnstr(y, x, (char*)str, n); }
+{ return mvaddnstr(y, x, str, n); }
 #undef mvaddnstr
 #define mvaddnstr UNDEF(mvaddnstr)
 #endif
 
 #ifdef mvaddstr
 inline int UNDEF(mvaddstr)(int y, int x, const char * str)
-{ return mvaddstr(y, x, (char*)str); }
+{ return mvaddstr(y, x, str); }
 #undef mvaddstr
 #define mvaddstr UNDEF(mvaddstr)
 #endif
@@ -615,7 +614,7 @@ inline int UNDEF(mvgetstr)(int y, int x, char *str) {return mvgetstr(y, x, str);
 
 #ifdef mvgetnstr
 inline int UNDEF(mvgetnstr)(int y, int x, char *str, int n) {
-  return mvgetnstr(y, x, str,n);}
+  return mvgetnstr(y, x, str, n);}
 #undef mvgetnstr
 #define mvgetnstr UNDEF(mvgetnstr)
 #endif
@@ -702,7 +701,7 @@ class NCURSES_IMPEXP NCursesWindow
 private:
   static bool    b_initialized;
   static void    initialize();
-  static int     ripoff_init(WINDOW *,int);
+  static int     ripoff_init(WINDOW *, int);
 
   void           init();
 
@@ -839,7 +838,7 @@ public:
   // window positioning
   // -------------------------------------------------------------------------
   virtual int    mvwin(int begin_y, int begin_x) {
-    return ::mvwin(w,begin_y,begin_x); }
+    return ::mvwin(w, begin_y, begin_x); }
   // Move window to new position with the new position as top left corner.
   // This is virtual because it is redefined in NCursesPanel.
 
@@ -862,27 +861,27 @@ public:
   int            getch() { return ::wgetch(w); }
   // Get a keystroke from the window.
 
-  int            getch(int y, int x) { return ::mvwgetch(w,y,x); }
+  int            getch(int y, int x) { return ::mvwgetch(w, y, x); }
   // Move cursor to position and get a keystroke from the window
 
   int            getstr(char* str, int n=-1) {
-    return ::wgetnstr(w, str,n); }
+    return ::wgetnstr(w, str, n); }
   // Read a series of characters into str until a newline or carriage return
   // is received. Read at most n characters. If n is negative, the limit is
   // ignored.
 
   int            getstr(int y, int x, char* str, int n=-1) {
-    return ::mvwgetnstr(w,y,x,str,n); }
+    return ::mvwgetnstr(w, y, x, str, n); }
   // Move the cursor to the requested position and then perform the getstr()
   // as described above.
 
-  int            instr(char *s, int n=-1) { return ::winnstr(w,s,n); }
+  int            instr(char *s, int n=-1) { return ::winnstr(w, s, n); }
   // Get a string of characters from the window into the buffer s. Retrieve
   // at most n characters, if n is negative retrieve all characters up to the
   // end of the current line. Attributes are stripped from the characters.
 
   int            instr(int y, int x, char *s, int n=-1) {
-    return ::mvwinnstr(w,y,x,s,n); }
+    return ::mvwinnstr(w, y, x, s, n); }
   // Move the cursor to the requested position and then perform the instr()
   // as described above.
 
@@ -910,20 +909,20 @@ public:
   // Put attributed character to the window.
 
   int            addch(int y, int x, const chtype ch) {
-    return ::mvwaddch(w,y,x,ch); }
+    return ::mvwaddch(w, y, x, ch); }
   // Move cursor to the requested position and then put attributed character
   // to the window.
 
-  int            echochar(const chtype ch) { return ::wechochar(w,ch); }
+  int            echochar(const chtype ch) { return ::wechochar(w, ch); }
   // Put attributed character to the window and refresh it immediately.
 
   int            addstr(const char* str, int n=-1) {
-    return ::waddnstr(w, (char*)str,n); }
+    return ::waddnstr(w, str, n); }
   // Write the string str to the window, stop writing if the terminating
   // NUL or the limit n is reached. If n is negative, it is ignored.
 
   int            addstr(int y, int x, const char * str, int n=-1) {
-    return ::mvwaddnstr(w,y,x,(char*)str,n); }
+    return ::mvwaddnstr(w, y, x, str, n); }
   // Move the cursor to the requested position and then perform the addstr
   // as described above.
 
@@ -946,7 +945,7 @@ public:
   chtype         inch() const { return ::winch(w); }
   // Retrieve attributed character under the current cursor position.
 
-  chtype         inch(int y, int x) { return ::mvwinch(w,y,x); }
+  chtype         inch(int y, int x) { return ::mvwinch(w, y, x); }
   // Move cursor to requested position and then retrieve attributed character
   // at this position.
 
@@ -955,25 +954,25 @@ public:
   // position.
 
   int            insch(int y, int x, chtype ch) {
-    return ::mvwinsch(w,y,x,(char)ch); }
+    return ::mvwinsch(w, y, x, ch); }
   // Move cursor to requested position and then insert the attributed
   // character before that position.
 
-  int            insertln() { return ::winsdelln(w,1); }
+  int            insertln() { return ::winsdelln(w, 1); }
   // Insert an empty line above the current line.
 
-  int            insdelln(int n=1) { return ::winsdelln(w,n); }
+  int            insdelln(int n=1) { return ::winsdelln(w, n); }
   // If n>0 insert that many lines above the current line. If n<0 delete
   // that many lines beginning with the current line.
 
   int            insstr(const char *s, int n=-1) {
-    return ::winsnstr(w,s,n); }
+    return ::winsnstr(w, s, n); }
   // Insert the string into the window before the current cursor position.
   // Insert stops at end of string or when the limit n is reached. If n is
   // negative, it is ignored.
 
   int            insstr(int y, int x, const char *s, int n=-1) {
-    return ::mvwinsnstr(w,y,x,s,n); }
+    return ::mvwinsnstr(w, y, x, s, n); }
   // Move the cursor to the requested position and then perform the insstr()
   // as described above.
 
@@ -990,15 +989,15 @@ public:
     return ::wcolor_set(w, color_pair_number, opts); }
   // Set the window color attribute;
 
-  int            chgat(int n,attr_t attr, short color, const void *opts=NULL) {
-    return ::wchgat(w,n,attr,color,opts); }
+  int            chgat(int n, attr_t attr, short color, const void *opts=NULL) {
+    return ::wchgat(w, n, attr, color, opts); }
   // Change the attributes of the next n characters in the current line. If
   // n is negative or greater than the number of remaining characters in the
   // line, the attributes will be changed up to the end of the line.
 
   int            chgat(int y, int x,
-                      int n,attr_t attr, short color, const void *opts=NULL) {
-    return ::mvwchgat(w,y,x,n,attr,color,opts); }
+                      int n, attr_t attr, short color, const void *opts=NULL) {
+    return ::mvwchgat(w, y, x, n, attr, color, opts); }
   // Move the cursor to the requested position and then perform chgat() as
   // described above.
 
@@ -1008,17 +1007,17 @@ public:
   chtype         getbkgd() const { return ::getbkgd(w); }
   // Get current background setting.
 
-  int            bkgd(const chtype ch) { return ::wbkgd(w,ch); }
+  int            bkgd(const chtype ch) { return ::wbkgd(w, ch); }
   // Set the background property and apply it to the window.
 
-  void           bkgdset(chtype ch) { ::wbkgdset(w,ch); }
+  void           bkgdset(chtype ch) { ::wbkgdset(w, ch); }
   // Set the background property.
 
   // -------------------------------------------------------------------------
   // borders
   // -------------------------------------------------------------------------
   int            box(chtype vert=0, chtype  hor=0) {
-    return ::wborder(w, vert, vert, hor, hor, 0, 0 ,0, 0); }
+    return ::wborder(w, vert, vert, hor, hor, 0, 00, 0); }
   // Draw a box around the window with the given vertical and horizontal
   // drawing characters. If you specify a zero as character, curses will try
   // to find a "nice" character.
@@ -1027,8 +1026,8 @@ public:
                        chtype top =0, chtype bottom=0,
                        chtype top_left =0, chtype top_right=0,
                        chtype bottom_left =0, chtype bottom_right=0) {
-    return ::wborder(w,left,right,top,bottom,top_left,top_right,
-                    bottom_left,bottom_right); }
+    return ::wborder(w, left, right, top, bottom, top_left, top_right,
+                    bottom_left, bottom_right); }
   // Draw a border around the window with the given characters for the
   // various parts of the border. If you pass zero for a character, curses
   // will try to find "nice" characters.
@@ -1041,7 +1040,7 @@ public:
   // you pass zero for the character, curses will try to find a "nice" one.
 
   int            hline(int y, int x, int len, chtype ch=0) {
-    return ::mvwhline(w,y,x,ch,len); }
+    return ::mvwhline(w, y, x, ch, len); }
   // Move the cursor to the requested position and then draw a horizontal line.
 
   int            vline(int len, chtype ch=0) { return ::wvline(w, ch, len); }
@@ -1049,7 +1048,7 @@ public:
   // you pass zero for the character, curses will try to find a "nice" one.
 
   int            vline(int y, int x, int len, chtype ch=0) {
-    return ::mvwvline(w,y,x,ch,len); }
+    return ::mvwvline(w, y, x, ch, len); }
   // Move the cursor to the requested position and then draw a vertical line.
 
   // -------------------------------------------------------------------------
@@ -1074,17 +1073,17 @@ public:
   int            delch() { return ::wdelch(w); }
   // Delete character under the cursor.
 
-  int            delch(int y, int x) { return ::mvwdelch(w,y,x); }
+  int            delch(int y, int x) { return ::mvwdelch(w, y, x); }
   // Move cursor to requested position and delete the character under the
   // cursor.
 
-  int            deleteln() { return ::winsdelln(w,-1); }
+  int            deleteln() { return ::winsdelln(w, -1); }
   // Delete the current line.
 
   // -------------------------------------------------------------------------
   // screen control
   // -------------------------------------------------------------------------
-  int            scroll(int amount=1) { return ::wscrl(w,amount); }
+  int            scroll(int amount=1) { return ::wscrl(w, amount); }
   // Scroll amount lines. If amount is positive, scroll up, otherwise
   // scroll down.
 
@@ -1094,7 +1093,7 @@ public:
   // at the bottom line.
 
   int            setscrreg(int from, int to) {
-    return ::wsetscrreg(w,from,to); }
+    return ::wsetscrreg(w, from, to); }
   // Define a soft scrolling region.
 
   int            idlok(bool bf) { return ::idlok(w, bf); }
@@ -1106,19 +1105,19 @@ public:
   // If bf is TRUE, use insert/delete character hardware support if possible.
   // Otherwise do it in software.
 
-  int            touchwin()   { return ::wtouchln(w,0,height(),1); }
+  int            touchwin()   { return ::wtouchln(w, 0, height(), 1); }
   // Mark the whole window as modified.
 
-  int            untouchwin() { return ::wtouchln(w,0,height(),0); }
+  int            untouchwin() { return ::wtouchln(w, 0, height(), 0); }
   // Mark the whole window as unmodified.
 
   int            touchln(int s, int cnt, bool changed=TRUE) {
-    return ::wtouchln(w,s,cnt,(int)(changed?1:0)); }
+    return ::wtouchln(w, s, cnt, (int)(changed?1:0)); }
   // Mark cnt lines beginning from line s as changed or unchanged, depending
   // on the value of the changed flag.
 
   bool           is_linetouched(int line) const {
-    return (::is_linetouched(w,line) ? TRUE:FALSE); }
+    return (::is_linetouched(w, line) ? TRUE:FALSE); }
   // Return TRUE if line is marked as changed, FALSE otherwise
 
   bool           is_wintouched() const {
@@ -1129,10 +1128,10 @@ public:
   // If bf is TRUE, curses will leave the cursor after an update whereever
   // it is after the update.
 
-  int            redrawln(int from, int n) { return ::wredrawln(w,from,n); }
+  int            redrawln(int from, int n) { return ::wredrawln(w, from, n); }
   // Redraw n lines starting from the requested line
 
-  int            redrawwin() { return ::wredrawln(w,0,height()); }
+  int            redrawwin() { return ::wredrawln(w, 0, height()); }
   // Redraw the whole window
 
   int            doupdate()  { return ::doupdate(); }
@@ -1147,21 +1146,21 @@ public:
   void           cursyncup() { ::wcursyncup(w); }
   // Position the cursor in all ancestor windows corresponding to our setting
 
-  int            syncok(bool bf) { return ::syncok(w,bf); }
+  int            syncok(bool bf) { return ::syncok(w, bf); }
   // If called with bf=TRUE, syncup() is called whenever the window is changed
 
 #ifndef _no_flushok
   int            flushok(bool bf) { return ::flushok(w, bf); }
 #endif
 
-  void           immedok(bool bf) { ::immedok(w,bf); }
+  void           immedok(bool bf) { ::immedok(w, bf); }
   // If called with bf=TRUE, any change in the window will cause an
   // automatic immediate refresh()
 
   int            keypad(bool bf) { return ::keypad(w, bf); }
   // If called with bf=TRUE, the application will interpret function keys.
 
-  int            meta(bool bf) { return ::meta(w,bf); }
+  int            meta(bool bf) { return ::meta(w, bf); }
   // If called with bf=TRUE, keys may generate 8-Bit characters. Otherwise
   // 7-Bit characters are generated.
 
@@ -1198,8 +1197,8 @@ public:
                         int sminrow, int smincol,
                         int dminrow, int dmincol,
                         int dmaxrow, int dmaxcol, bool overlay=TRUE) {
-    return ::copywin(w,win.w,sminrow,smincol,dminrow,dmincol,
-                    dmaxrow,dmaxcol,(int)(overlay?1:0)); }
+    return ::copywin(w, win.w, sminrow, smincol, dminrow, dmincol,
+                    dmaxrow, dmaxcol, (int)(overlay?1:0)); }
   // Overlay or overwrite the rectangle in win given by dminrow,dmincol,
   // dmaxrow,dmaxcol with the rectangle in this window beginning at
   // sminrow,smincol.
@@ -1239,7 +1238,7 @@ public:
                     int cols,          // number of columns
                     int begin_y,       // line origin
                     int begin_x)       // col origin
-    : NCursesWindow(lines,cols,begin_y,begin_x) {
+    : NCursesWindow(lines, cols, begin_y, begin_x) {
       useColors(); }
 
   NCursesColorWindow(NCursesWindow& par,// parent window
@@ -1248,8 +1247,8 @@ public:
                     int begin_y,       // absolute or relative
                     int begin_x,       //   origins:
                     char absrel = 'a') // if `a', by & bx are
-    : NCursesWindow(par,lines,cols,     // absolute screen pos,
-                   begin_y,begin_x,    // else if `r', they are
+    : NCursesWindow(par, lines, cols,   // absolute screen pos,
+                   begin_y, begin_x,   // else if `r', they are
                    absrel ) {          // relative to par origin
       useColors(); }
 };
@@ -1320,7 +1319,7 @@ public:
 
   virtual ~NCursesPad() {}
 
-  int echochar(const chtype ch) { return ::pechochar(w,ch); }
+  int echochar(const chtype ch) { return ::pechochar(w, ch); }
   // Put the attributed character onto the pad and immediately do a
   // prefresh().
 
@@ -1331,8 +1330,8 @@ public:
   int refresh(int pminrow, int pmincol,
              int sminrow, int smincol,
              int smaxrow, int smaxcol) {
-    return ::prefresh(w,pminrow,pmincol,
-                     sminrow,smincol,smaxrow,smaxcol);
+    return ::prefresh(w, pminrow, pmincol,
+                     sminrow, smincol, smaxrow, smaxcol);
   }
   // The coordinates sminrow,smincol,smaxrow,smaxcol describe a rectangle
   // on the screen. <b>refresh</b> copies a rectangle of this size beginning
@@ -1345,8 +1344,8 @@ public:
   int noutrefresh(int pminrow, int pmincol,
                  int sminrow, int smincol,
                  int smaxrow, int smaxcol) {
-    return ::pnoutrefresh(w,pminrow,pmincol,
-                         sminrow,smincol,smaxrow,smaxcol);
+    return ::pnoutrefresh(w, pminrow, pmincol,
+                         sminrow, smincol, smaxrow, smaxcol);
   }
   // Does the same as refresh() but without calling doupdate().
 
@@ -1372,8 +1371,8 @@ protected:
 public:
   NCursesFramedPad(NCursesWindow& win, int lines, int cols,
                   int v_grid = 1, int h_grid = 1)
-    : NCursesPad(lines,cols) {
-    NCursesPad::setWindow(win,v_grid,h_grid);
+    : NCursesPad(lines, cols) {
+    NCursesPad::setWindow(win, v_grid, h_grid);
     NCursesPad::setSubWindow(*(new NCursesWindow(win)));
   }
   // Construct the FramedPad with the given Window win as viewport.
index 2107625ba5e49c83dcdaafde348704bc231b2f18..fbc5cda40b1f11578f0c1eea26e4358e528d327b 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -29,7 +29,6 @@
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "internal.h"
@@ -37,7 +36,7 @@
 #include "cursesapp.h"
 #include <string.h>
 
-MODULE_ID("$Id: cursslk.cc,v 1.10 2002/07/13 11:35:08 juergen Exp $")
+MODULE_ID("$Id: cursslk.cc,v 1.11 2003/10/25 15:04:46 tom Exp $")
 
 void Soft_Label_Key_Set::Soft_Label_Key::operator=(char *text)  {
   delete[] label;
index ab6a9c0fef2c719fb8c9a294cc516ccb1ee97bd0..0fa1f11043ca47a36efe76c81fd82973e803a0d8 100644 (file)
@@ -1,6 +1,6 @@
 // * this is for making emacs happy: -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
-// $Id: cursslk.h,v 1.8 2002/07/06 15:47:52 juergen Exp $
+// $Id: cursslk.h,v 1.9 2003/10/25 15:04:46 tom Exp $
 
 #ifndef NCURSES_CURSSLK_H_incl
 #define NCURSES_CURSSLK_H_incl
index 047e4b2473db1f64e08b6db295179da3b65f5715..f3fe3e46f7ef4fe75da1937a712a42de434e8060 100644 (file)
@@ -5,9 +5,8 @@
  *
  *   Demo code for NCursesMenu and NCursesForm written by
  *   Juergen Pfeifer
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
  *
- * $Id: demo.cc,v 1.22 2002/07/06 15:47:52 juergen Exp $
+ * $Id: demo.cc,v 1.24 2004/01/15 00:21:27 tom Exp $
  */
 
 #include "cursesapp.h"
@@ -205,7 +204,7 @@ private:
   Integer_Field *ift;
   Enumeration_Field *eft;
 
-  static char *weekdays[];
+  static const char *weekdays[];
 
 public:
   TestForm() : NCursesForm(13,51,(lines()-15)/2,(cols()-53)/2) {
@@ -247,9 +246,9 @@ public:
   }
 };
 
-char* TestForm::weekdays[] = {
+const char* TestForm::weekdays[] = {
     "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
-    "Friday", "Saturday", (char *)0 };
+    "Friday", "Saturday", (const char *)0 };
 //
 // -------------------------------------------------------------------------
 //
index e0c182257d54a8dec39e5a650ec4013a584e3d79..30c9485056e4f440f44884088388ecbf97d31457 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
-# $Id: edit_cfg.sh,v 1.12 2001/12/08 20:44:59 tom Exp $
+# $Id: edit_cfg.sh,v 1.13 2003/12/20 13:14:25 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.                #
+# Copyright (c) 1998-2001,2003 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"), #
@@ -28,7 +28,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1997
+# Author: Thomas E. Dickey 1997
 #
 # Edit the default value of the etip.h file based on the autoconf-generated
 # values:
@@ -50,6 +50,7 @@ for name in \
        USE_STRSTREAM_VSCAN \
        USE_STRSTREAM_VSCAN_CAST
 do
+       rm -f $2.bak
        mv $2 $2.bak
        if ( grep "[    ]$name[         ]1" $1 2>&1 >/dev/null)
        then
index d41c7d43ee26b07055e08c2b91aca4297372dc86..2ddc292adda09dab5a812f031fc4a7dd0867ebcc 100644 (file)
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
-// $Id: etip.h.in,v 1.24 2002/10/12 22:33:07 Dimitar.Zhekov Exp $
+// $Id: etip.h.in,v 1.25 2003/10/25 15:05:58 tom Exp $
 
 #ifndef NCURSES_ETIP_H_incl
 #define NCURSES_ETIP_H_incl 1
index d680d144f561d04711237d89aab5034ce97e45f9..921389c81fb7ce0e09e7b57550caff69a069d438 100644 (file)
@@ -1,6 +1,6 @@
 // * This makes emacs happy -*-Mode: C++;-*-
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author: Juergen Pfeifer, 1997                                          *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
-// $Id: internal.h,v 1.9 2002/07/13 11:35:08 juergen Exp $
+// $Id: internal.h,v 1.10 2003/10/25 15:04:46 tom Exp $
 
 #ifndef NCURSES_CPLUS_INTERNAL_H
 #define NCURSES_CPLUS_INTERNAL_H 1
index 9f4e5a6d715d3fdde8eabc906ad7d263068b9d0a..c033ee2107f8f0c958707160dcd54e8bb7163ad1 100755 (executable)
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003 Free Software Foundation, Inc.
 
-timestamp='2002-08-23'
+timestamp='2004-01-05'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -98,30 +98,32 @@ trap 'exit 1' 1 2 15
 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
 # use `HOST_CC' if defined, but it is deprecated.
 
-# This shell variable is my proudest work .. or something. --bje
+# Portable tmp directory creation inspired by the Autoconf team.
 
-set_cc_for_build='tmpdir=${TMPDIR-/tmp}/config-guess-$$ ;
-(old=`umask` && umask 077 && mkdir $tmpdir && umask $old && unset old)
-   || (echo "$me: cannot create $tmpdir" >&2 && exit 1) ;
-dummy=$tmpdir/dummy ;
-files="$dummy.c $dummy.o $dummy.rel $dummy" ;
-trap '"'"'rm -f $files; rmdir $tmpdir; exit 1'"'"' 1 2 15 ;
+set_cc_for_build='
+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
+: ${TMPDIR=/tmp} ;
+ { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
+dummy=$tmp/dummy ;
+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
 case $CC_FOR_BUILD,$HOST_CC,$CC in
  ,,)    echo "int x;" > $dummy.c ;
        for c in cc gcc c89 c99 ; do
-         if ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ; then
+         if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
             CC_FOR_BUILD="$c"; break ;
          fi ;
        done ;
-       rm -f $files ;
        if test x"$CC_FOR_BUILD" = x ; then
          CC_FOR_BUILD=no_compiler_found ;
        fi
        ;;
  ,,*)   CC_FOR_BUILD=$CC ;;
  ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ;
-unset files'
+esac ;'
 
 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
 # (ghazi@noc.rutgers.edu 1994-08-24)
@@ -178,7 +180,18 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
                ;;
        esac
        # The OS release
-       release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+       # Debian GNU/NetBSD machines have a different userland, and
+       # thus, need a distinct triplet. However, they do not need
+       # kernel version information, so it can be replaced with a
+       # suitable tag, in the style of linux-gnu.
+       case "${UNAME_VERSION}" in
+           Debian*)
+               release='-gnu'
+               ;;
+           *)
+               release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+               ;;
+       esac
        # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
        # contains redundant information, the shorter form:
        # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
@@ -208,6 +221,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
     mvmeppc:OpenBSD:*:*)
        echo powerpc-unknown-openbsd${UNAME_RELEASE}
        exit 0 ;;
+    pegasos:OpenBSD:*:*)
+       echo powerpc-unknown-openbsd${UNAME_RELEASE}
+       exit 0 ;;
     pmax:OpenBSD:*:*)
        echo mipsel-unknown-openbsd${UNAME_RELEASE}
        exit 0 ;;
@@ -227,68 +243,52 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
        if test $UNAME_RELEASE = "V4.0"; then
                UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
        fi
+       # According to Compaq, /usr/sbin/psrinfo has been available on
+       # OSF/1 and Tru64 systems produced since 1995.  I hope that
+       # covers most systems running today.  This code pipes the CPU
+       # types through head -n 1, so we only detect the type of CPU 0.
+       ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+       case "$ALPHA_CPU_TYPE" in
+           "EV4 (21064)")
+               UNAME_MACHINE="alpha" ;;
+           "EV4.5 (21064)")
+               UNAME_MACHINE="alpha" ;;
+           "LCA4 (21066/21068)")
+               UNAME_MACHINE="alpha" ;;
+           "EV5 (21164)")
+               UNAME_MACHINE="alphaev5" ;;
+           "EV5.6 (21164A)")
+               UNAME_MACHINE="alphaev56" ;;
+           "EV5.6 (21164PC)")
+               UNAME_MACHINE="alphapca56" ;;
+           "EV5.7 (21164PC)")
+               UNAME_MACHINE="alphapca57" ;;
+           "EV6 (21264)")
+               UNAME_MACHINE="alphaev6" ;;
+           "EV6.7 (21264A)")
+               UNAME_MACHINE="alphaev67" ;;
+           "EV6.8CB (21264C)")
+               UNAME_MACHINE="alphaev68" ;;
+           "EV6.8AL (21264B)")
+               UNAME_MACHINE="alphaev68" ;;
+           "EV6.8CX (21264D)")
+               UNAME_MACHINE="alphaev68" ;;
+           "EV6.9A (21264/EV69A)")
+               UNAME_MACHINE="alphaev69" ;;
+           "EV7 (21364)")
+               UNAME_MACHINE="alphaev7" ;;
+           "EV7.9 (21364A)")
+               UNAME_MACHINE="alphaev79" ;;
+       esac
        # A Vn.n version is a released version.
        # A Tn.n version is a released field test version.
        # A Xn.n version is an unreleased experimental baselevel.
        # 1.2 uses "1.2" for uname -r.
-       eval $set_cc_for_build
-       cat <<EOF >$dummy.s
-       .data
-\$Lformat:
-       .byte 37,100,45,37,120,10,0     # "%d-%x\n"
-
-       .text
-       .globl main
-       .align 4
-       .ent main
-main:
-       .frame \$30,16,\$26,0
-       ldgp \$29,0(\$27)
-       .prologue 1
-       .long 0x47e03d80 # implver \$0
-       lda \$2,-1
-       .long 0x47e20c21 # amask \$2,\$1
-       lda \$16,\$Lformat
-       mov \$0,\$17
-       not \$1,\$18
-       jsr \$26,printf
-       ldgp \$29,0(\$26)
-       mov 0,\$16
-       jsr \$26,exit
-       .end main
-EOF
-       $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
-       if test "$?" = 0 ; then
-               case `$dummy` in
-                       0-0)
-                               UNAME_MACHINE="alpha"
-                               ;;
-                       1-0)
-                               UNAME_MACHINE="alphaev5"
-                               ;;
-                       1-1)
-                               UNAME_MACHINE="alphaev56"
-                               ;;
-                       1-101)
-                               UNAME_MACHINE="alphapca56"
-                               ;;
-                       2-303)
-                               UNAME_MACHINE="alphaev6"
-                               ;;
-                       2-307)
-                               UNAME_MACHINE="alphaev67"
-                               ;;
-                       2-1307)
-                               UNAME_MACHINE="alphaev68"
-                               ;;
-                       3-1307)
-                               UNAME_MACHINE="alphaev7"
-                               ;;
-               esac
-       fi
-       rm -f $dummy.s $dummy && rmdir $tmpdir
        echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
        exit 0 ;;
+    Alpha*:OpenVMS:*:*)
+       echo alpha-hp-vms
+       exit 0 ;;
     Alpha\ *:Windows_NT*:*)
        # How do we know it's Interix rather than the generic POSIX subsystem?
        # Should we change UNAME_MACHINE based on the output of uname instead
@@ -310,6 +310,9 @@ EOF
     *:OS/390:*:*)
        echo i370-ibm-openedition
        exit 0 ;;
+    *:OS400:*:*)
+       echo powerpc-ibm-os400
+       exit 0 ;;
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
        echo arm-acorn-riscix${UNAME_RELEASE}
        exit 0;;
@@ -327,6 +330,9 @@ EOF
     NILE*:*:*:dcosx)
        echo pyramid-pyramid-svr4
        exit 0 ;;
+    DRS?6000:unix:4.0:6*)
+       echo sparc-icl-nx6
+       exit 0 ;;
     DRS?6000:UNIX_SV:4.2*:7*)
        case `/usr/bin/uname -p` in
            sparc) echo sparc-icl-nx7 && exit 0 ;;
@@ -437,10 +443,9 @@ EOF
          exit (-1);
        }
 EOF
-       $CC_FOR_BUILD $dummy.c -o $dummy \
+       $CC_FOR_BUILD -o $dummy $dummy.c \
          && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-         && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
-       rm -f $dummy.c $dummy && rmdir $tmpdir
+         && exit 0
        echo mips-mips-riscos${UNAME_RELEASE}
        exit 0 ;;
     Motorola:PowerMAX_OS:*:*)
@@ -449,7 +454,7 @@ EOF
     Motorola:*:4.3:PL8-*)
        echo powerpc-harris-powermax
        exit 0 ;;
-    Night_Hawk:*:*:PowerMAX_OS)
+    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
        echo powerpc-harris-powermax
        exit 0 ;;
     Night_Hawk:Power_UNIX:*:*)
@@ -524,8 +529,7 @@ EOF
                        exit(0);
                        }
 EOF
-               $CC_FOR_BUILD $dummy.c -o $dummy && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
-               rm -f $dummy.c $dummy && rmdir $tmpdir
+               $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
                echo rs6000-ibm-aix3.2.5
        elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
                echo rs6000-ibm-aix3.2.4
@@ -623,11 +627,21 @@ EOF
                   exit (0);
               }
 EOF
-                   (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null) && HP_ARCH=`$dummy`
-                   if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
-                   rm -f $dummy.c $dummy && rmdir $tmpdir
+                   (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+                   test -z "$HP_ARCH" && HP_ARCH=hppa
                fi ;;
        esac
+       if [ ${HP_ARCH} = "hppa2.0w" ]
+       then
+           # avoid double evaluation of $set_cc_for_build
+           test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
+           if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
+           then
+               HP_ARCH="hppa2.0w"
+           else
+               HP_ARCH="hppa64"
+           fi
+       fi
        echo ${HP_ARCH}-hp-hpux${HPUX_REV}
        exit 0 ;;
     ia64:HP-UX:*:*)
@@ -661,8 +675,7 @@ EOF
          exit (0);
        }
 EOF
-       $CC_FOR_BUILD $dummy.c -o $dummy && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
-       rm -f $dummy.c $dummy && rmdir $tmpdir
+       $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
        echo unknown-hitachi-hiuxwe2
        exit 0 ;;
     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
@@ -720,21 +733,26 @@ EOF
     CRAY*TS:*:*:*)
        echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
        exit 0 ;;
-    CRAY*T3D:*:*:*)
-       echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-       exit 0 ;;
     CRAY*T3E:*:*:*)
        echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
        exit 0 ;;
     CRAY*SV1:*:*:*)
        echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
        exit 0 ;;
+    *:UNICOS/mp:*:*)
+       echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+       exit 0 ;;
     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
        FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-        exit 0 ;;
+       FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+       FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+       echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+       exit 0 ;;
+    5000:UNIX_System_V:4.*:*)
+       FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+       FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+       echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+       exit 0 ;;
     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
        echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
        exit 0 ;;
@@ -756,8 +774,10 @@ EOF
        #endif
 EOF
        eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
-       rm -f $dummy.c && rmdir $tmpdir
-       echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
+       # GNU/KFreeBSD systems have a "k" prefix to indicate we are using
+       # FreeBSD's kernel, but not the complete OS.
+       case ${LIBC} in gnu) kernel_only='k' ;; esac
+       echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
        exit 0 ;;
     i*:CYGWIN*:*)
        echo ${UNAME_MACHINE}-pc-cygwin
@@ -768,14 +788,17 @@ EOF
     i*:PW*:*)
        echo ${UNAME_MACHINE}-pc-pw32
        exit 0 ;;
-    x86:Interix*:3*)
-       echo i386-pc-interix3
+    x86:Interix*:[34]*)
+       echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
+       exit 0 ;;
+    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+       echo i${UNAME_MACHINE}-pc-mks
        exit 0 ;;
     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
        # How do we know it's Interix rather than the generic POSIX subsystem?
        # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
        # UNAME_MACHINE based on the output of uname instead of i386?
-       echo i386-pc-interix
+       echo i586-pc-interix
        exit 0 ;;
     i*:UWIN*:*)
        echo ${UNAME_MACHINE}-pc-uwin
@@ -787,14 +810,22 @@ EOF
        echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
        exit 0 ;;
     *:GNU:*:*)
+       # the GNU system
        echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
        exit 0 ;;
+    *:GNU/*:*:*)
+       # other systems with GNU libc and userland
+       echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+       exit 0 ;;
     i*86:Minix:*:*)
        echo ${UNAME_MACHINE}-pc-minix
        exit 0 ;;
     arm*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
        exit 0 ;;
+    cris:Linux:*:*)
+       echo cris-axis-linux-gnu
+       exit 0 ;;
     ia64:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
        exit 0 ;;
@@ -818,8 +849,26 @@ EOF
        #endif
 EOF
        eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
-       rm -f $dummy.c && rmdir $tmpdir
-       test x"${CPU}" != x && echo "${CPU}-pc-linux-gnu" && exit 0
+       test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+       ;;
+    mips64:Linux:*:*)
+       eval $set_cc_for_build
+       sed 's/^        //' << EOF >$dummy.c
+       #undef CPU
+       #undef mips64
+       #undef mips64el
+       #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+       CPU=mips64el
+       #else
+       #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+       CPU=mips64
+       #else
+       CPU=
+       #endif
+       #endif
+EOF
+       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+       test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
        ;;
     ppc:Linux:*:*)
        echo powerpc-unknown-linux-gnu
@@ -855,6 +904,9 @@ EOF
     s390:Linux:*:* | s390x:Linux:*:*)
        echo ${UNAME_MACHINE}-ibm-linux
        exit 0 ;;
+    sh64*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit 0 ;;
     sh*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
        exit 0 ;;
@@ -912,9 +964,11 @@ EOF
        LIBC=gnuaout
        #endif
        #endif
+       #ifdef __dietlibc__
+       LIBC=dietlibc
+       #endif
 EOF
        eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
-       rm -f $dummy.c && rmdir $tmpdir
        test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
        test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
        ;;
@@ -932,6 +986,26 @@ EOF
         # Use sysv4.2uw... so that sysv4* matches it.
        echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
        exit 0 ;;
+    i*86:OS/2:*:*)
+       # If we were able to find `uname', then EMX Unix compatibility
+       # is probably installed.
+       echo ${UNAME_MACHINE}-pc-os2-emx
+       exit 0 ;;
+    i*86:XTS-300:*:STOP)
+       echo ${UNAME_MACHINE}-unknown-stop
+       exit 0 ;;
+    i*86:atheos:*:*)
+       echo ${UNAME_MACHINE}-unknown-atheos
+       exit 0 ;;
+    i*86:syllable:*:*)
+       echo ${UNAME_MACHINE}-pc-syllable
+       exit 0 ;;
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+       echo i386-unknown-lynxos${UNAME_RELEASE}
+       exit 0 ;;
+    i*86:*DOS:*:*)
+       echo ${UNAME_MACHINE}-pc-msdosdjgpp
+       exit 0 ;;
     i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
        UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
        if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
@@ -966,9 +1040,6 @@ EOF
                echo ${UNAME_MACHINE}-pc-sysv32
        fi
        exit 0 ;;
-    i*86:*DOS:*:*)
-       echo ${UNAME_MACHINE}-pc-msdosdjgpp
-       exit 0 ;;
     pc:*:*:*)
        # Left here for compatibility:
         # uname -m prints for DJGPP always 'pc', but it prints nothing about
@@ -995,9 +1066,12 @@ EOF
     mc68k:UNIX:SYSTEM5:3.51m)
        echo m68k-convergent-sysv
        exit 0 ;;
+    M680?0:D-NIX:5.3:*)
+       echo m68k-diab-dnix
+       exit 0 ;;
     M68*:*:R3V[567]*:*)
        test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
-    3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0)
+    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
        OS_REL=''
        test -r /etc/.relid \
        && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
@@ -1014,9 +1088,6 @@ EOF
     mc68030:UNIX_System_V:4.*:*)
        echo m68k-atari-sysv4
        exit 0 ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
-       echo i386-unknown-lynxos${UNAME_RELEASE}
-       exit 0 ;;
     TSUNAMI:LynxOS:2.*:*)
        echo sparc-unknown-lynxos${UNAME_RELEASE}
        exit 0 ;;
@@ -1098,7 +1169,11 @@ EOF
        echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
        exit 0 ;;
     *:Darwin:*:*)
-       echo `uname -p`-apple-darwin${UNAME_RELEASE}
+       case `uname -p` in
+           *86) UNAME_PROCESSOR=i686 ;;
+           powerpc) UNAME_PROCESSOR=powerpc ;;
+       esac
+       echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
        exit 0 ;;
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
        UNAME_PROCESSOR=`uname -p`
@@ -1111,7 +1186,7 @@ EOF
     *:QNX:*:4*)
        echo i386-pc-qnx
        exit 0 ;;
-    NSR-[GKLNPTVW]:NONSTOP_KERNEL:*:*)
+    NSR-?:NONSTOP_KERNEL:*:*)
        echo nsr-tandem-nsk${UNAME_RELEASE}
        exit 0 ;;
     *:NonStop-UX:*:*)
@@ -1134,11 +1209,6 @@ EOF
        fi
        echo ${UNAME_MACHINE}-unknown-plan9
        exit 0 ;;
-    i*86:OS/2:*:*)
-       # If we were able to find `uname', then EMX Unix compatibility
-       # is probably installed.
-       echo ${UNAME_MACHINE}-pc-os2-emx
-       exit 0 ;;
     *:TOPS-10:*:*)
        echo pdp10-unknown-tops10
        exit 0 ;;
@@ -1157,11 +1227,11 @@ EOF
     *:ITS:*:*)
        echo pdp10-unknown-its
        exit 0 ;;
-    i*86:XTS-300:*:STOP)
-       echo ${UNAME_MACHINE}-unknown-stop
+    SEI:*:*:SEIUX)
+       echo mips-sei-seiux${UNAME_RELEASE}
        exit 0 ;;
-    i*86:atheos:*:*)
-       echo ${UNAME_MACHINE}-unknown-atheos
+    *:DRAGONFLY:*:*)
+       echo ${UNAME_MACHINE}-unknown-dragonfly${UNAME_RELEASE}
        exit 0 ;;
 esac
 
@@ -1283,8 +1353,7 @@ main ()
 }
 EOF
 
-$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
-rm -f $dummy.c $dummy && rmdir $tmpdir
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
 
 # Apollos put the system type in the environment.
 
index b0222f7ea0bb03621b52062eb794bb4ceb272994..6b6c9d6d438f2f53b5c5b18da94dd8a1ae48c980 100755 (executable)
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003 Free Software Foundation, Inc.
 
-timestamp='2002-08-22'
+timestamp='2004-01-05'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -118,7 +118,8 @@ esac
 # Here we must recognize all the valid KERNEL-OS combinations.
 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
-  nto-qnx* | linux-gnu* | freebsd*-gnu* | storm-chaos* | os2-emx* | windows32-* | rtmk-nova*)
+  nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
+  kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
     ;;
@@ -228,13 +229,14 @@ case $basic_machine in
        | a29k \
        | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
        | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
+       | am33_2.0 \
        | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
        | c4x | clipper \
        | d10v | d30v | dlx | dsp16xx \
        | fr30 | frv \
        | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
        | i370 | i860 | i960 | ia64 \
-       | ip2k \
+       | ip2k | iq2000 \
        | m32r | m68000 | m68k | m88k | mcore \
        | mips | mipsbe | mipseb | mipsel | mipsle \
        | mips16 \
@@ -245,21 +247,24 @@ case $basic_machine in
        | mips64vr4300 | mips64vr4300el \
        | mips64vr5000 | mips64vr5000el \
        | mipsisa32 | mipsisa32el \
+       | mipsisa32r2 | mipsisa32r2el \
        | mipsisa64 | mipsisa64el \
+       | mipsisa64r2 | mipsisa64r2el \
        | mipsisa64sb1 | mipsisa64sb1el \
        | mipsisa64sr71k | mipsisa64sr71kel \
        | mipstx39 | mipstx39el \
        | mn10200 | mn10300 \
+       | msp430 \
        | ns16k | ns32k \
        | openrisc | or32 \
        | pdp10 | pdp11 | pj | pjl \
        | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
        | pyramid \
-       | sh | sh[1234] | sh3e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+       | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
        | sh64 | sh64le \
        | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
        | strongarm \
-       | tahoe | thumb | tic80 | tron \
+       | tahoe | thumb | tic4x | tic80 | tron \
        | v850 | v850e \
        | we32k \
        | x86 | xscale | xstormy16 | xtensa \
@@ -278,8 +283,8 @@ case $basic_machine in
        # because (1) that's what they normally are, and
        # (2) the word "unknown" tends to confuse beginning users.
        i*86 | x86_64)
-         basic_machine=$basic_machine-pc
-         ;;
+               basic_machine=$basic_machine-pc
+               ;;
        # Object if more than one company name word.
        *-*-*)
                echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
@@ -294,7 +299,7 @@ case $basic_machine in
        | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
        | avr-* \
        | bs2000-* \
-       | c[123]* | c30-* | [cjt]90-* | c54x-* \
+       | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
        | clipper-* | cydra-* \
        | d10v-* | d30v-* | dlx-* \
        | elxsi-* \
@@ -302,7 +307,7 @@ case $basic_machine in
        | h8300-* | h8500-* \
        | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
        | i*86-* | i860-* | i960-* | ia64-* \
-       | ip2k-* \
+       | ip2k-* | iq2000-* \
        | m32r-* \
        | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
        | m88110-* | m88k-* | mcore-* \
@@ -315,21 +320,26 @@ case $basic_machine in
        | mips64vr4300-* | mips64vr4300el-* \
        | mips64vr5000-* | mips64vr5000el-* \
        | mipsisa32-* | mipsisa32el-* \
+       | mipsisa32r2-* | mipsisa32r2el-* \
        | mipsisa64-* | mipsisa64el-* \
+       | mipsisa64r2-* | mipsisa64r2el-* \
        | mipsisa64sb1-* | mipsisa64sb1el-* \
        | mipsisa64sr71k-* | mipsisa64sr71kel-* \
-       | mipstx39 | mipstx39el \
-       | none-* | np1-* | ns16k-* | ns32k-* \
+       | mipstx39-* | mipstx39el-* \
+       | msp430-* \
+       | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
        | orion-* \
        | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
        | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
        | pyramid-* \
        | romp-* | rs6000-* \
-       | sh-* | sh[1234]-* | sh3e-* | sh[34]eb-* | shbe-* \
+       | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
        | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
        | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
        | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
-       | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
+       | tahoe-* | thumb-* \
+       | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+       | tron-* \
        | v850-* | v850e-* | vax-* \
        | we32k-* \
        | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
@@ -367,6 +377,12 @@ case $basic_machine in
                basic_machine=a29k-none
                os=-bsd
                ;;
+       amd64)
+               basic_machine=x86_64-pc
+               ;;
+       amd64-*)
+               basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
        amdahl)
                basic_machine=580-amdahl
                os=-sysv
@@ -716,6 +732,10 @@ case $basic_machine in
        np1)
                basic_machine=np1-gould
                ;;
+       nv1)
+               basic_machine=nv1-cray
+               os=-unicosmp
+               ;;
        nsr-tandem)
                basic_machine=nsr-tandem
                ;;
@@ -727,6 +747,10 @@ case $basic_machine in
                basic_machine=or32-unknown
                os=-coff
                ;;
+       os400)
+               basic_machine=powerpc-ibm
+               os=-os400
+               ;;
        OSE68000 | ose68000)
                basic_machine=m68000-ericsson
                os=-ose
@@ -758,18 +782,24 @@ case $basic_machine in
        pentiumpro | p6 | 6x86 | athlon | athlon_*)
                basic_machine=i686-pc
                ;;
-       pentiumii | pentium2)
+       pentiumii | pentium2 | pentiumiii | pentium3)
                basic_machine=i686-pc
                ;;
+       pentium4)
+               basic_machine=i786-pc
+               ;;
        pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
                basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
        pentiumpro-* | p6-* | 6x86-* | athlon-*)
                basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
-       pentiumii-* | pentium2-*)
+       pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
                basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
+       pentium4-*)
+               basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
        pn)
                basic_machine=pn-gould
                ;;
@@ -828,6 +858,10 @@ case $basic_machine in
        sb1el)
                basic_machine=mipsisa64sb1el-unknown
                ;;
+       sei)
+               basic_machine=mips-sei
+               os=-seiux
+               ;;
        sequent)
                basic_machine=i386-sequent
                ;;
@@ -835,6 +869,9 @@ case $basic_machine in
                basic_machine=sh-hitachi
                os=-hms
                ;;
+       sh64)
+               basic_machine=sh64-unknown
+               ;;
        sparclite-wrs | simso-wrs)
                basic_machine=sparclite-wrs
                os=-vxworks
@@ -901,10 +938,6 @@ case $basic_machine in
                basic_machine=i386-sequent
                os=-dynix
                ;;
-       t3d)
-               basic_machine=alpha-cray
-               os=-unicos
-               ;;
        t3e)
                basic_machine=alphaev5-cray
                os=-unicos
@@ -917,6 +950,14 @@ case $basic_machine in
                basic_machine=tic54x-unknown
                os=-coff
                ;;
+       tic55x | c55x*)
+               basic_machine=tic55x-unknown
+               os=-coff
+               ;;
+       tic6x | c6x*)
+               basic_machine=tic6x-unknown
+               os=-coff
+               ;;
        tx39)
                basic_machine=mipstx39-unknown
                ;;
@@ -930,6 +971,10 @@ case $basic_machine in
        tower | tower-32)
                basic_machine=m68k-ncr
                ;;
+       tpf)
+               basic_machine=s390x-ibm
+               os=-tpf
+               ;;
        udi29k)
                basic_machine=a29k-amd
                os=-udi
@@ -973,10 +1018,6 @@ case $basic_machine in
                basic_machine=hppa1.1-winbond
                os=-proelf
                ;;
-       windows32)
-               basic_machine=i386-pc
-               os=-windows32-msvcrt
-               ;;
        xps | xps100)
                basic_machine=xps100-honeywell
                ;;
@@ -1023,7 +1064,7 @@ case $basic_machine in
        we32k)
                basic_machine=we32k-att
                ;;
-       sh3 | sh4 | sh3eb | sh4eb | sh[1234]le | sh3ele)
+       sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
                basic_machine=sh-unknown
                ;;
        sh64)
@@ -1047,10 +1088,6 @@ case $basic_machine in
        pmac | pmac-mpw)
                basic_machine=powerpc-apple
                ;;
-       c4x*)
-               basic_machine=c4x-none
-               os=-coff
-               ;;
        *-unknown)
                # Make sure to match an already-canonicalized machine name.
                ;;
@@ -1077,8 +1114,8 @@ esac
 if [ x"$os" != x"" ]
 then
 case $os in
-        # First match some system type aliases
-        # that might get confused with valid system types.
+       # First match some system type aliases
+       # that might get confused with valid system types.
        # -solaris* is a basic system type, with this one exception.
        -solaris1 | -solaris1.*)
                os=`echo $os | sed -e 's|solaris1|sunos4|'`
@@ -1106,18 +1143,19 @@ case $os in
              | -aos* \
              | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
              | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-             | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
+             | -hiux* | -386bsd* | -knetbsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \
              | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
              | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
              | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
              | -chorusos* | -chorusrdb* \
              | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-             | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
-             | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
+             | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
+             | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
              | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
              | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
              | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-             | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* | -powermax*)
+             | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+             | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
        # Remember, each alternative MUST END IN *, to match a version number.
                ;;
        -qnx*)
@@ -1129,8 +1167,10 @@ case $os in
                        ;;
                esac
                ;;
+       -nto-qnx*)
+               ;;
        -nto*)
-               os=-nto-qnx
+               os=`echo $os | sed -e 's|nto|nto-qnx|'`
                ;;
        -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
              | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
@@ -1139,6 +1179,9 @@ case $os in
        -mac*)
                os=`echo $os | sed -e 's|mac|macos|'`
                ;;
+       -linux-dietlibc)
+               os=-linux-dietlibc
+               ;;
        -linux*)
                os=`echo $os | sed -e 's|linux|linux-gnu|'`
                ;;
@@ -1151,6 +1194,9 @@ case $os in
        -opened*)
                os=-openedition
                ;;
+       -os400*)
+               os=-os400
+               ;;
        -wince*)
                os=-wince
                ;;
@@ -1172,6 +1218,9 @@ case $os in
        -atheos*)
                os=-atheos
                ;;
+       -syllable*)
+               os=-syllable
+               ;;
        -386bsd)
                os=-bsd
                ;;
@@ -1194,6 +1243,9 @@ case $os in
        -sinix*)
                os=-sysv4
                ;;
+       -tpf*)
+               os=-tpf
+               ;;
        -triton*)
                os=-sysv3
                ;;
@@ -1224,6 +1276,12 @@ case $os in
        -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
                os=-mint
                ;;
+       -aros*)
+               os=-aros
+               ;;
+       -kaos*)
+               os=-kaos
+               ;;
        -none)
                ;;
        *)
@@ -1255,6 +1313,9 @@ case $basic_machine in
        arm*-semi)
                os=-aout
                ;;
+       c4x-* | tic4x-*)
+               os=-coff
+               ;;
        # This must come before the *-dec entry.
        pdp10-*)
                os=-tops20
@@ -1433,9 +1494,15 @@ case $basic_machine in
                        -mvs* | -opened*)
                                vendor=ibm
                                ;;
+                       -os400*)
+                               vendor=ibm
+                               ;;
                        -ptx*)
                                vendor=sequent
                                ;;
+                       -tpf*)
+                               vendor=ibm
+                               ;;
                        -vxsim* | -vxworks* | -windiss*)
                                vendor=wrs
                                ;;
index c20c60f3ec2e5920babc1b53b6a740330d8727c5..c5383e392bedb948f64e9fa50c05c251605b0577 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,7 +1,7 @@
 #! /bin/sh
-# From configure.in Revision: 1.274 .
+# From configure.in Revision: 1.312 .
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by Autoconf 2.52.20011227.
+# Generated by Autoconf 2.52.20030208.
 #
 # Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
 # Free Software Foundation, Inc.
@@ -655,19 +655,21 @@ Optional Features:
   --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
 
+  --with-rel-version=XXX  override derived release version
+  --with-abi-version=XXX  override derived ABI version
   --with-system-type=XXX  test: override derived host system-type
-  --enable-add-ons=DIR... used to check if we are a glibc add-on.
-  --with-build-cc=XXX     if cross-compiling, the host C compiler (\$BUILD_CC)
-  --with-build-cflags=XXX if cross-compiling, the host C compiler-flags
-  --with-build-cppflags=XXX if cross-compiling, the host C preprocessor-flags
-  --with-build-ldflags=XXX if cross-compiling, the host linker-flags
-  --with-build-libs=XXX   if cross-compiling, the host libraries
   --without-cxx           do not adjust ncurses bool to match C++
   --without-cxx-binding   do not build C++ binding and demo
   --without-ada           suppress check for Ada95, don't build demo
   --without-progs         suppress build with programs (e.g., tic)
   --without-curses-h      install curses.h as ncurses.h only
-  --with-install-prefix   prefixes actual install-location (\$DESTDIR)
+  --with-install-prefix   prefixes actual install-location ($DESTDIR)
+Build-Tools Needed to Compile Temporary Applications for Cross-compiling:
+  --with-build-cc=XXX     the build C compiler ($BUILD_CC)
+  --with-build-cflags=XXX the build C compiler-flags
+  --with-build-cppflags=XXX the build C preprocessor-flags
+  --with-build-ldflags=XXX the build linker-flags
+  --with-build-libs=XXX   the build libraries
 Options to Specify the Libraries Built/Used:
   --with-libtool          generate libraries with libtool
   --with-shared           generate shared-libraries
@@ -678,6 +680,7 @@ Options to Specify the Libraries Built/Used:
   --with-dbmalloc         test: use Conor Cahill's dbmalloc library
   --with-dmalloc          test: use Gray Watson's dmalloc library
   --with-gpm              use Alessandro Rubini's GPM library
+  --with-sysmouse         use sysmouse (FreeBSD console)
   --enable-rpath          use rpath option when generating shared libraries
   --with-shlib-version=X  Specify rel or abi version for shared libs
 Fine-Tuning Your Configuration:
@@ -692,6 +695,7 @@ Fine-Tuning Your Configuration:
   --with-termpath=XXX     specify list of termcap files (default: /etc/termcap:/usr/share/misc/termcap)
   --enable-getcap         fast termcap load, no xrefs to terminfo
   --enable-getcap-cache   cache translated termcaps in ~/.terminfo
+  --disable-home-terminfo drop ~/.terminfo from terminfo search-path
   --enable-symlinks       make tic use symbolic links not hard links
   --enable-broken_linker  compile with broken-linker support code
   --with-bool=TYPE        override fallback type of bool variable
@@ -700,14 +704,15 @@ Fine-Tuning Your Configuration:
   --with-rcs-ids          compile-in RCS identifiers
 Options to Specify How Manpages are Installed:
   --with-manpage-format   specify manpage-format: gzip/compress/BSDI/normal and
-                          optionally formatted, e.g., gzip,formatted
+                          optionally formatted/catonly, e.g., gzip,formatted
   --with-manpage-renames  specify manpage-renaming
-  --with-manpage-symlinks specify manpage-symlinks
+  --with-manpage-aliases  specify manpage-aliases using .so
+  --with-manpage-symlinks specify manpage-aliases using symlinks
   --with-manpage-tbl      specify manpage processing with tbl
 Extensions:
   --disable-ext-funcs     disable function-extensions
   --enable-const          compile with extra/non-standard const
-  --enable-no-padding     compile with \$NCURSES_NO_PADDING code
+  --enable-no-padding     compile with $NCURSES_NO_PADDING code
   --enable-sigwinch       compile with SIGWINCH handler
   --enable-tcap-names     compile with user-definable terminal capabilities
 Development Code:
@@ -718,7 +723,7 @@ Development Code:
 Experimental Code:
   --disable-assumed-color do not assume anything about default-colors
   --disable-hashmap       compile without hashmap scrolling-optimization
-  --enable-colorfgbg      compile with \$COLORFGBG code
+  --enable-colorfgbg      compile with $COLORFGBG code
   --enable-safe-sprintf   compile with experimental safe-sprintf code
   --disable-scroll-hints  compile without scroll-hints code
   --enable-widec          compile with experimental wide-char/UTF-8 code
@@ -730,6 +735,7 @@ Testing/development Options:
   --disable-leaks         test: suppress permanent memory-leaks
   --enable-expanded       test: generate functions for certain macros
   --disable-macros        test: use functions rather than macros
+  --with-trace            test: add trace() function to all models of ncurses
 Ada95 Binding Options:
   --with-ada-compiler=CMD specify Ada95 compiler command (default gnatmake)
   --with-ada-include=DIR  Ada includes are in DIR (default: PREFIX/lib/ada/adainclude)
@@ -806,7 +812,7 @@ This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
 It was created by $as_me, which was
-generated by GNU Autoconf 2.52.20011227.  Invocation command line was
+generated by GNU Autoconf 2.52.20030208.  Invocation command line was
 
   $ $0 $@
 
@@ -930,7 +936,7 @@ if test -z "$CONFIG_SITE"; then
 fi
 for ac_site_file in $CONFIG_SITE; do
   if test -r "$ac_site_file"; then
-    { echo "$as_me:933: loading site script $ac_site_file" >&5
+    { echo "$as_me:939: loading site script $ac_site_file" >&5
 echo "$as_me: loading site script $ac_site_file" >&6;}
     cat "$ac_site_file" >&5
     . "$ac_site_file"
@@ -941,7 +947,7 @@ if test -r "$cache_file"; then
   # Some versions of bash will fail to source /dev/null (special
   # files actually), so we avoid doing that.
   if test -f "$cache_file"; then
-    { echo "$as_me:944: loading cache $cache_file" >&5
+    { echo "$as_me:950: loading cache $cache_file" >&5
 echo "$as_me: loading cache $cache_file" >&6;}
     case $cache_file in
       [\\/]* | ?:[\\/]* ) . $cache_file;;
@@ -949,7 +955,7 @@ echo "$as_me: loading cache $cache_file" >&6;}
     esac
   fi
 else
-  { echo "$as_me:952: creating cache $cache_file" >&5
+  { echo "$as_me:958: creating cache $cache_file" >&5
 echo "$as_me: creating cache $cache_file" >&6;}
   >$cache_file
 fi
@@ -965,21 +971,21 @@ for ac_var in `(set) 2>&1 |
   eval ac_new_val="\$ac_env_${ac_var}_value"
   case $ac_old_set,$ac_new_set in
     set,)
-      { echo "$as_me:968: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+      { echo "$as_me:974: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
 echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,set)
-      { echo "$as_me:972: error: \`$ac_var' was not set in the previous run" >&5
+      { echo "$as_me:978: error: \`$ac_var' was not set in the previous run" >&5
 echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,);;
     *)
       if test "x$ac_old_val" != "x$ac_new_val"; then
-        { echo "$as_me:978: error: \`$ac_var' has changed since the previous run:" >&5
+        { echo "$as_me:984: error: \`$ac_var' has changed since the previous run:" >&5
 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-        { echo "$as_me:980:   former value:  $ac_old_val" >&5
+        { echo "$as_me:986:   former value:  $ac_old_val" >&5
 echo "$as_me:   former value:  $ac_old_val" >&2;}
-        { echo "$as_me:982:   current value: $ac_new_val" >&5
+        { echo "$as_me:988:   current value: $ac_new_val" >&5
 echo "$as_me:   current value: $ac_new_val" >&2;}
         ac_cache_corrupted=:
       fi;;
@@ -998,9 +1004,9 @@ echo "$as_me:   current value: $ac_new_val" >&2;}
   fi
 done
 if $ac_cache_corrupted; then
-  { echo "$as_me:1001: error: changes in the environment can compromise the build" >&5
+  { echo "$as_me:1007: error: changes in the environment can compromise the build" >&5
 echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  { { echo "$as_me:1003: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+  { { echo "$as_me:1009: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
 echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -1020,10 +1026,10 @@ esac
 echo "#! $SHELL" >conftest.sh
 echo  "exit 0"   >>conftest.sh
 chmod +x conftest.sh
-if { (echo "$as_me:1023: PATH=\".;.\"; conftest.sh") >&5
+if { (echo "$as_me:1029: PATH=\".;.\"; conftest.sh") >&5
   (PATH=".;."; conftest.sh) 2>&5
   ac_status=$?
-  echo "$as_me:1026: \$? = $ac_status" >&5
+  echo "$as_me:1032: \$? = $ac_status" >&5
   (exit $ac_status); }; then
   ac_path_separator=';'
 else
@@ -1040,9 +1046,80 @@ NCURSES_PATCH="`egrep '^NCURSES_PATCH[   ]*=' $srcdir/dist.mk | sed -e 's/^[^0-9]
 cf_cv_abi_version=${NCURSES_MAJOR}
 cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR}
 cf_cv_timestamp=`date`
-echo "$as_me:1043: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5
+echo "$as_me:1049: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5
 echo "${ECHO_T}Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&6
 
+test -z "$cf_cv_rel_version" && cf_cv_rel_version=0.0
+
+# Check whether --with-rel-version or --without-rel-version was given.
+if test "${with_rel_version+set}" = set; then
+  withval="$with_rel_version"
+  { echo "$as_me:1057: WARNING: overriding release version $cf_cv_rel_version to $withval" >&5
+echo "$as_me: WARNING: overriding release version $cf_cv_rel_version to $withval" >&2;}
+ cf_cv_rel_version=$withval
+fi;
+
+ NCURSES_MAJOR=`echo "$cf_cv_rel_version" | sed -e 's/\..*//'`
+ NCURSES_MINOR=`echo "$cf_cv_rel_version" | sed -e 's/^[^.]*//' -e 's/^\.//' -e 's/\..*//'`
+
+if test -n "$NCURSES_MAJOR" ; then
+  case $NCURSES_MAJOR in #(vi
+  [0-9]*) #(vi
+       ;;
+  *)
+       { { echo "$as_me:1070: error: Release major-version is not a number: $NCURSES_MAJOR" >&5
+echo "$as_me: error: Release major-version is not a number: $NCURSES_MAJOR" >&2;}
+   { (exit 1); exit 1; }; }
+       ;;
+  esac
+else
+  { { echo "$as_me:1076: error: Release major-version value is empty" >&5
+echo "$as_me: error: Release major-version value is empty" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+if test -n "$NCURSES_MINOR" ; then
+  case $NCURSES_MINOR in #(vi
+  [0-9]*) #(vi
+       ;;
+  *)
+       { { echo "$as_me:1086: error: Release minor-version is not a number: $NCURSES_MINOR" >&5
+echo "$as_me: error: Release minor-version is not a number: $NCURSES_MINOR" >&2;}
+   { (exit 1); exit 1; }; }
+       ;;
+  esac
+else
+  { { echo "$as_me:1092: error: Release minor-version value is empty" >&5
+echo "$as_me: error: Release minor-version value is empty" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+test -z "$cf_cv_abi_version" && cf_cv_abi_version=0
+
+# Check whether --with-abi-version or --without-abi-version was given.
+if test "${with_abi_version+set}" = set; then
+  withval="$with_abi_version"
+  { echo "$as_me:1102: WARNING: overriding ABI version $cf_cv_abi_version to $withval" >&5
+echo "$as_me: WARNING: overriding ABI version $cf_cv_abi_version to $withval" >&2;}
+ cf_cv_abi_version=$withval
+fi;
+
+if test -n "$cf_cv_abi_version" ; then
+  case $cf_cv_abi_version in #(vi
+  [0-9]*) #(vi
+       ;;
+  *)
+       { { echo "$as_me:1112: error: ABI version is not a number: $cf_cv_abi_version" >&5
+echo "$as_me: error: ABI version is not a number: $cf_cv_abi_version" >&2;}
+   { (exit 1); exit 1; }; }
+       ;;
+  esac
+else
+  { { echo "$as_me:1118: error: ABI version value is empty" >&5
+echo "$as_me: error: ABI version value is empty" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
 ac_aux_dir=
 for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
   if test -f $ac_dir/install-sh; then
@@ -1060,7 +1137,7 @@ for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
   fi
 done
 if test -z "$ac_aux_dir"; then
-  { { echo "$as_me:1063: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
+  { { echo "$as_me:1140: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
 echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -1070,11 +1147,11 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
 
 # Make sure we can run config.sub.
 $ac_config_sub sun4 >/dev/null 2>&1 ||
-  { { echo "$as_me:1073: error: cannot run $ac_config_sub" >&5
+  { { echo "$as_me:1150: error: cannot run $ac_config_sub" >&5
 echo "$as_me: error: cannot run $ac_config_sub" >&2;}
    { (exit 1); exit 1; }; }
 
-echo "$as_me:1077: checking build system type" >&5
+echo "$as_me:1154: checking build system type" >&5
 echo $ECHO_N "checking build system type... $ECHO_C" >&6
 if test "${ac_cv_build+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1083,23 +1160,23 @@ else
 test -z "$ac_cv_build_alias" &&
   ac_cv_build_alias=`$ac_config_guess`
 test -z "$ac_cv_build_alias" &&
-  { { echo "$as_me:1086: error: cannot guess build type; you must specify one" >&5
+  { { echo "$as_me:1163: error: cannot guess build type; you must specify one" >&5
 echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
    { (exit 1); exit 1; }; }
 ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
-  { { echo "$as_me:1090: error: $ac_config_sub $ac_cv_build_alias failed." >&5
+  { { echo "$as_me:1167: error: $ac_config_sub $ac_cv_build_alias failed." >&5
 echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;}
    { (exit 1); exit 1; }; }
 
 fi
-echo "$as_me:1095: result: $ac_cv_build" >&5
+echo "$as_me:1172: result: $ac_cv_build" >&5
 echo "${ECHO_T}$ac_cv_build" >&6
 build=$ac_cv_build
 build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
 build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
 build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
 
-echo "$as_me:1102: checking host system type" >&5
+echo "$as_me:1179: checking host system type" >&5
 echo $ECHO_N "checking host system type... $ECHO_C" >&6
 if test "${ac_cv_host+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1108,12 +1185,12 @@ else
 test -z "$ac_cv_host_alias" &&
   ac_cv_host_alias=$ac_cv_build_alias
 ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
-  { { echo "$as_me:1111: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+  { { echo "$as_me:1188: error: $ac_config_sub $ac_cv_host_alias failed" >&5
 echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
    { (exit 1); exit 1; }; }
 
 fi
-echo "$as_me:1116: result: $ac_cv_host" >&5
+echo "$as_me:1193: result: $ac_cv_host" >&5
 echo "${ECHO_T}$ac_cv_host" >&6
 host=$ac_cv_host
 host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
@@ -1121,7 +1198,7 @@ host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
 host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
 
 if test -f $srcdir/config.guess ; then
-       echo "$as_me:1124: checking target system type" >&5
+       echo "$as_me:1201: checking target system type" >&5
 echo $ECHO_N "checking target system type... $ECHO_C" >&6
 if test "${ac_cv_target+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1130,12 +1207,12 @@ else
 test "x$ac_cv_target_alias" = "x" &&
   ac_cv_target_alias=$ac_cv_host_alias
 ac_cv_target=`$ac_config_sub $ac_cv_target_alias` ||
-  { { echo "$as_me:1133: error: $ac_config_sub $ac_cv_target_alias failed" >&5
+  { { echo "$as_me:1210: error: $ac_config_sub $ac_cv_target_alias failed" >&5
 echo "$as_me: error: $ac_config_sub $ac_cv_target_alias failed" >&2;}
    { (exit 1); exit 1; }; }
 
 fi
-echo "$as_me:1138: result: $ac_cv_target" >&5
+echo "$as_me:1215: result: $ac_cv_target" >&5
 echo "${ECHO_T}$ac_cv_target" >&6
 target=$ac_cv_target
 target_cpu=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
@@ -1166,13 +1243,13 @@ else
 fi
 
 test -z "$system_name" && system_name="$cf_cv_system_name"
-test -n "$cf_cv_system_name" && echo "$as_me:1169: result: Configuring for $cf_cv_system_name" >&5
+test -n "$cf_cv_system_name" && echo "$as_me:1246: result: Configuring for $cf_cv_system_name" >&5
 echo "${ECHO_T}Configuring for $cf_cv_system_name" >&6
 
 if test ".$system_name" != ".$cf_cv_system_name" ; then
-       echo "$as_me:1173: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
+       echo "$as_me:1250: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
 echo "${ECHO_T}Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&6
-       { { echo "$as_me:1175: error: \"Please remove config.cache and try again.\"" >&5
+       { { echo "$as_me:1252: error: \"Please remove config.cache and try again.\"" >&5
 echo "$as_me: error: \"Please remove config.cache and try again.\"" >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -1180,62 +1257,33 @@ fi
 # Check whether --with-system-type or --without-system-type was given.
 if test "${with_system_type+set}" = set; then
   withval="$with_system_type"
-  { echo "$as_me:1183: WARNING: overriding system type to $withval" >&5
+  { echo "$as_me:1260: WARNING: overriding system type to $withval" >&5
 echo "$as_me: WARNING: overriding system type to $withval" >&2;}
  cf_cv_system_name=$withval
 fi;
 
-# We need a configure script only when compiling as part of GNU C library.
-# Here we have to generate one of the files we need while compiling.
-#
-# The only problem is that users of the package might think they have to
-# run configure themself and find it irritating when nothing happens.
-#
-# So we try here to find out whether we are called from the glibc configure
-# or by a user.
-#
-
-# Check whether --enable-add-ons or --disable-add-ons was given.
-if test "${enable_add_ons+set}" = set; then
-  enableval="$enable_add_ons"
-  glibc_add_on=yes
-else
-  glibc_add_on=
-fi;
-
-if test x"$glibc_add_on" = "xyes" ; then
-  rm -f $srcdir/Banner
-  # We are in glibc.
-  rm -f $srcdir/Makefile
-  cp $srcdir/Makefile.glibc $srcdir/Makefile
-  echo "ncurses `grep \"^[     ]*ncurses-version[      ]*=.*$\" \
-               $srcdir/Makefile | sed -e \
-               's/^[   ]*ncurses-version[      ]*=[    ]*\([^  ^ ]*\)[         ]*$/\1/'`" > $srcdir/Banner
-  exit 0
-fi
-
 ###    Save the given $CFLAGS to allow user-override.
 cf_user_CFLAGS="$CFLAGS"
 
 ###    Default install-location
 
-echo "$as_me:1222: checking for prefix" >&5
+echo "$as_me:1270: checking for prefix" >&5
 echo $ECHO_N "checking for prefix... $ECHO_C" >&6
 if test "x$prefix" = "xNONE" ; then
        case "$cf_cv_system_name" in
                # non-vendor systems don't have a conflict
-       openbsd*|netbsd*|freebsd*|linux*|cygwin*)
+       openbsd*|netbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu)
                prefix=/usr
                ;;
        *)      prefix=$ac_default_prefix
                ;;
        esac
 fi
-echo "$as_me:1234: result: $prefix" >&5
+echo "$as_me:1282: result: $prefix" >&5
 echo "${ECHO_T}$prefix" >&6
 
 if test "x$prefix" = "xNONE" ; then
-echo "$as_me:1238: checking for default include-directory" >&5
+echo "$as_me:1286: checking for default include-directory" >&5
 echo $ECHO_N "checking for default include-directory... $ECHO_C" >&6
 test -n "$verbose" && echo 1>&6
 for cf_symbol in \
@@ -1258,7 +1306,7 @@ do
        fi
        test -n "$verbose"  && echo "   tested $cf_dir" 1>&6
 done
-echo "$as_me:1261: result: $includedir" >&5
+echo "$as_me:1309: result: $includedir" >&5
 echo "${ECHO_T}$includedir" >&6
 fi
 
@@ -1271,7 +1319,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; ac_word=$2
-echo "$as_me:1274: checking for $ac_word" >&5
+echo "$as_me:1322: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1286,7 +1334,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CC="${ac_tool_prefix}gcc"
-echo "$as_me:1289: found $ac_dir/$ac_word" >&5
+echo "$as_me:1337: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1294,10 +1342,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:1297: result: $CC" >&5
+  echo "$as_me:1345: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:1300: result: no" >&5
+  echo "$as_me:1348: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1306,7 +1354,7 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-echo "$as_me:1309: checking for $ac_word" >&5
+echo "$as_me:1357: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1321,7 +1369,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CC="gcc"
-echo "$as_me:1324: found $ac_dir/$ac_word" >&5
+echo "$as_me:1372: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1329,10 +1377,10 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  echo "$as_me:1332: result: $ac_ct_CC" >&5
+  echo "$as_me:1380: result: $ac_ct_CC" >&5
 echo "${ECHO_T}$ac_ct_CC" >&6
 else
-  echo "$as_me:1335: result: no" >&5
+  echo "$as_me:1383: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1345,7 +1393,7 @@ if test -z "$CC"; then
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; ac_word=$2
-echo "$as_me:1348: checking for $ac_word" >&5
+echo "$as_me:1396: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1360,7 +1408,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CC="${ac_tool_prefix}cc"
-echo "$as_me:1363: found $ac_dir/$ac_word" >&5
+echo "$as_me:1411: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1368,10 +1416,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:1371: result: $CC" >&5
+  echo "$as_me:1419: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:1374: result: no" >&5
+  echo "$as_me:1422: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1380,7 +1428,7 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-echo "$as_me:1383: checking for $ac_word" >&5
+echo "$as_me:1431: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1395,7 +1443,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CC="cc"
-echo "$as_me:1398: found $ac_dir/$ac_word" >&5
+echo "$as_me:1446: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1403,10 +1451,10 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  echo "$as_me:1406: result: $ac_ct_CC" >&5
+  echo "$as_me:1454: result: $ac_ct_CC" >&5
 echo "${ECHO_T}$ac_ct_CC" >&6
 else
-  echo "$as_me:1409: result: no" >&5
+  echo "$as_me:1457: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1419,7 +1467,7 @@ fi
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-echo "$as_me:1422: checking for $ac_word" >&5
+echo "$as_me:1470: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1439,7 +1487,7 @@ if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
   continue
 fi
 ac_cv_prog_CC="cc"
-echo "$as_me:1442: found $ac_dir/$ac_word" >&5
+echo "$as_me:1490: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1461,10 +1509,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:1464: result: $CC" >&5
+  echo "$as_me:1512: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:1467: result: no" >&5
+  echo "$as_me:1515: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1475,7 +1523,7 @@ if test -z "$CC"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:1478: checking for $ac_word" >&5
+echo "$as_me:1526: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1490,7 +1538,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-echo "$as_me:1493: found $ac_dir/$ac_word" >&5
+echo "$as_me:1541: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1498,10 +1546,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:1501: result: $CC" >&5
+  echo "$as_me:1549: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:1504: result: no" >&5
+  echo "$as_me:1552: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1514,7 +1562,7 @@ if test -z "$CC"; then
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:1517: checking for $ac_word" >&5
+echo "$as_me:1565: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1529,7 +1577,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CC="$ac_prog"
-echo "$as_me:1532: found $ac_dir/$ac_word" >&5
+echo "$as_me:1580: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1537,10 +1585,10 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  echo "$as_me:1540: result: $ac_ct_CC" >&5
+  echo "$as_me:1588: result: $ac_ct_CC" >&5
 echo "${ECHO_T}$ac_ct_CC" >&6
 else
-  echo "$as_me:1543: result: no" >&5
+  echo "$as_me:1591: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1552,32 +1600,32 @@ fi
 
 fi
 
-test -z "$CC" && { { echo "$as_me:1555: error: no acceptable cc found in \$PATH" >&5
+test -z "$CC" && { { echo "$as_me:1603: error: no acceptable cc found in \$PATH" >&5
 echo "$as_me: error: no acceptable cc found in \$PATH" >&2;}
    { (exit 1); exit 1; }; }
 
 # Provide some information about the compiler.
-echo "$as_me:1560:" \
+echo "$as_me:1608:" \
      "checking for C compiler version" >&5
 ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:1563: \"$ac_compiler --version </dev/null >&5\"") >&5
+{ (eval echo "$as_me:1611: \"$ac_compiler --version </dev/null >&5\"") >&5
   (eval $ac_compiler --version </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:1566: \$? = $ac_status" >&5
+  echo "$as_me:1614: \$? = $ac_status" >&5
   (exit $ac_status); }
-{ (eval echo "$as_me:1568: \"$ac_compiler -v </dev/null >&5\"") >&5
+{ (eval echo "$as_me:1616: \"$ac_compiler -v </dev/null >&5\"") >&5
   (eval $ac_compiler -v </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:1571: \$? = $ac_status" >&5
+  echo "$as_me:1619: \$? = $ac_status" >&5
   (exit $ac_status); }
-{ (eval echo "$as_me:1573: \"$ac_compiler -V </dev/null >&5\"") >&5
+{ (eval echo "$as_me:1621: \"$ac_compiler -V </dev/null >&5\"") >&5
   (eval $ac_compiler -V </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:1576: \$? = $ac_status" >&5
+  echo "$as_me:1624: \$? = $ac_status" >&5
   (exit $ac_status); }
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 1580 "configure"
+#line 1628 "configure"
 #include "confdefs.h"
 
 int
@@ -1593,13 +1641,13 @@ ac_clean_files="$ac_clean_files a.out a.exe"
 # Try to create an executable without -o first, disregard a.out.
 # It will help us diagnose broken compilers, and finding out an intuition
 # of exeext.
-echo "$as_me:1596: checking for C compiler default output" >&5
+echo "$as_me:1644: checking for C compiler default output" >&5
 echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
 ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-if { (eval echo "$as_me:1599: \"$ac_link_default\"") >&5
+if { (eval echo "$as_me:1647: \"$ac_link_default\"") >&5
   (eval $ac_link_default) 2>&5
   ac_status=$?
-  echo "$as_me:1602: \$? = $ac_status" >&5
+  echo "$as_me:1650: \$? = $ac_status" >&5
   (exit $ac_status); }; then
   # Find the output, starting from the most likely.  This scheme is
 # not robust to junk in `.', hence go to wildcards (a.*) only as a last
@@ -1622,34 +1670,34 @@ done
 else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
-{ { echo "$as_me:1625: error: C compiler cannot create executables" >&5
+{ { echo "$as_me:1673: error: C compiler cannot create executables" >&5
 echo "$as_me: error: C compiler cannot create executables" >&2;}
    { (exit 77); exit 77; }; }
 fi
 
 ac_exeext=$ac_cv_exeext
-echo "$as_me:1631: result: $ac_file" >&5
+echo "$as_me:1679: result: $ac_file" >&5
 echo "${ECHO_T}$ac_file" >&6
 
 # Check the compiler produces executables we can run.  If not, either
 # the compiler is broken, or we cross compile.
-echo "$as_me:1636: checking whether the C compiler works" >&5
+echo "$as_me:1684: checking whether the C compiler works" >&5
 echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
 # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
 # If not cross compiling, check that we can run a simple program.
 if test "$cross_compiling" != yes; then
   if { ac_try='./$ac_file'
-  { (eval echo "$as_me:1642: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1690: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1645: \$? = $ac_status" >&5
+  echo "$as_me:1693: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
     cross_compiling=no
   else
     if test "$cross_compiling" = maybe; then
        cross_compiling=yes
     else
-       { { echo "$as_me:1652: error: cannot run C compiled programs.
+       { { echo "$as_me:1700: error: cannot run C compiled programs.
 If you meant to cross compile, use \`--host'." >&5
 echo "$as_me: error: cannot run C compiled programs.
 If you meant to cross compile, use \`--host'." >&2;}
@@ -1657,24 +1705,24 @@ If you meant to cross compile, use \`--host'." >&2;}
     fi
   fi
 fi
-echo "$as_me:1660: result: yes" >&5
+echo "$as_me:1708: result: yes" >&5
 echo "${ECHO_T}yes" >&6
 
 rm -f a.out a.exe conftest$ac_cv_exeext
 ac_clean_files=$ac_clean_files_save
 # Check the compiler produces executables we can run.  If not, either
 # the compiler is broken, or we cross compile.
-echo "$as_me:1667: checking whether we are cross compiling" >&5
+echo "$as_me:1715: checking whether we are cross compiling" >&5
 echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
-echo "$as_me:1669: result: $cross_compiling" >&5
+echo "$as_me:1717: result: $cross_compiling" >&5
 echo "${ECHO_T}$cross_compiling" >&6
 
-echo "$as_me:1672: checking for executable suffix" >&5
+echo "$as_me:1720: checking for executable suffix" >&5
 echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
-if { (eval echo "$as_me:1674: \"$ac_link\"") >&5
+if { (eval echo "$as_me:1722: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:1677: \$? = $ac_status" >&5
+  echo "$as_me:1725: \$? = $ac_status" >&5
   (exit $ac_status); }; then
   # If both `conftest.exe' and `conftest' are `present' (well, observable)
 # catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
@@ -1690,25 +1738,25 @@ for ac_file in `(ls conftest.exe; ls conftest; ls conftest.*) 2>/dev/null`; do
   esac
 done
 else
-  { { echo "$as_me:1693: error: cannot compute EXEEXT: cannot compile and link" >&5
+  { { echo "$as_me:1741: error: cannot compute EXEEXT: cannot compile and link" >&5
 echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;}
    { (exit 1); exit 1; }; }
 fi
 
 rm -f conftest$ac_cv_exeext
-echo "$as_me:1699: result: $ac_cv_exeext" >&5
+echo "$as_me:1747: result: $ac_cv_exeext" >&5
 echo "${ECHO_T}$ac_cv_exeext" >&6
 
 rm -f conftest.$ac_ext
 EXEEXT=$ac_cv_exeext
 ac_exeext=$EXEEXT
-echo "$as_me:1705: checking for object suffix" >&5
+echo "$as_me:1753: checking for object suffix" >&5
 echo $ECHO_N "checking for object suffix... $ECHO_C" >&6
 if test "${ac_cv_objext+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 1711 "configure"
+#line 1759 "configure"
 #include "confdefs.h"
 
 int
@@ -1720,10 +1768,10 @@ main ()
 }
 _ACEOF
 rm -f conftest.o conftest.obj
-if { (eval echo "$as_me:1723: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1771: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1726: \$? = $ac_status" >&5
+  echo "$as_me:1774: \$? = $ac_status" >&5
   (exit $ac_status); }; then
   for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
   case $ac_file in
@@ -1735,24 +1783,24 @@ done
 else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
-{ { echo "$as_me:1738: error: cannot compute OBJEXT: cannot compile" >&5
+{ { echo "$as_me:1786: error: cannot compute OBJEXT: cannot compile" >&5
 echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;}
    { (exit 1); exit 1; }; }
 fi
 
 rm -f conftest.$ac_cv_objext conftest.$ac_ext
 fi
-echo "$as_me:1745: result: $ac_cv_objext" >&5
+echo "$as_me:1793: result: $ac_cv_objext" >&5
 echo "${ECHO_T}$ac_cv_objext" >&6
 OBJEXT=$ac_cv_objext
 ac_objext=$OBJEXT
-echo "$as_me:1749: checking whether we are using the GNU C compiler" >&5
+echo "$as_me:1797: checking whether we are using the GNU C compiler" >&5
 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
 if test "${ac_cv_c_compiler_gnu+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 1755 "configure"
+#line 1803 "configure"
 #include "confdefs.h"
 
 int
@@ -1767,16 +1815,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1770: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1818: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1773: \$? = $ac_status" >&5
+  echo "$as_me:1821: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1776: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1824: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1779: \$? = $ac_status" >&5
+  echo "$as_me:1827: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_compiler_gnu=yes
 else
@@ -1788,19 +1836,19 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-echo "$as_me:1791: result: $ac_cv_c_compiler_gnu" >&5
+echo "$as_me:1839: result: $ac_cv_c_compiler_gnu" >&5
 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
 GCC=`test $ac_compiler_gnu = yes && echo yes`
 ac_test_CFLAGS=${CFLAGS+set}
 ac_save_CFLAGS=$CFLAGS
 CFLAGS="-g"
-echo "$as_me:1797: checking whether $CC accepts -g" >&5
+echo "$as_me:1845: checking whether $CC accepts -g" >&5
 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
 if test "${ac_cv_prog_cc_g+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 1803 "configure"
+#line 1851 "configure"
 #include "confdefs.h"
 
 int
@@ -1812,16 +1860,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1815: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1863: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1818: \$? = $ac_status" >&5
+  echo "$as_me:1866: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1821: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1869: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1824: \$? = $ac_status" >&5
+  echo "$as_me:1872: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_prog_cc_g=yes
 else
@@ -1831,7 +1879,7 @@ ac_cv_prog_cc_g=no
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:1834: result: $ac_cv_prog_cc_g" >&5
+echo "$as_me:1882: result: $ac_cv_prog_cc_g" >&5
 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
 if test "$ac_test_CFLAGS" = set; then
   CFLAGS=$ac_save_CFLAGS
@@ -1858,16 +1906,16 @@ cat >conftest.$ac_ext <<_ACEOF
 #endif
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1861: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1909: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1864: \$? = $ac_status" >&5
+  echo "$as_me:1912: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1867: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1915: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1870: \$? = $ac_status" >&5
+  echo "$as_me:1918: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   for ac_declaration in \
    ''\
@@ -1879,7 +1927,7 @@ if { (eval echo "$as_me:1861: \"$ac_compile\"") >&5
    'void exit (int);'
 do
   cat >conftest.$ac_ext <<_ACEOF
-#line 1882 "configure"
+#line 1930 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 $ac_declaration
@@ -1892,16 +1940,16 @@ exit (42);
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1895: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1943: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1898: \$? = $ac_status" >&5
+  echo "$as_me:1946: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1901: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1949: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1904: \$? = $ac_status" >&5
+  echo "$as_me:1952: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   :
 else
@@ -1911,7 +1959,7 @@ continue
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
   cat >conftest.$ac_ext <<_ACEOF
-#line 1914 "configure"
+#line 1962 "configure"
 #include "confdefs.h"
 $ac_declaration
 int
@@ -1923,16 +1971,16 @@ exit (42);
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1926: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1974: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1929: \$? = $ac_status" >&5
+  echo "$as_me:1977: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1932: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1980: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1935: \$? = $ac_status" >&5
+  echo "$as_me:1983: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   break
 else
@@ -1961,98 +2009,20 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 GCC_VERSION=none
 if test "$GCC" = yes ; then
-       echo "$as_me:1964: checking version of gcc" >&5
-echo $ECHO_N "checking version of gcc... $ECHO_C" >&6
-       GCC_VERSION="`${CC} --version|head -1`"
-       echo "$as_me:1967: result: $GCC_VERSION" >&5
+       echo "$as_me:2012: checking version of $CC" >&5
+echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
+       GCC_VERSION="`${CC} --version|sed -e '2,$d' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
+       test -z "$GCC_VERSION" && GCC_VERSION=unknown
+       echo "$as_me:2016: result: $GCC_VERSION" >&5
 echo "${ECHO_T}$GCC_VERSION" >&6
 fi
 
-# If we're cross-compiling, allow the user to override the tools and their
-# options.  The configure script is oriented toward identifying the target
-# compiler, etc., but we need a host compiler to generate parts of the source.
-BUILD_CC='$(CC)'
-BUILD_CFLAGS='$(CFLAGS)'
-BUILD_CPPFLAGS='$(CPPFLAGS)'
-BUILD_LDFLAGS='$(LDFLAGS)'
-BUILD_LIBS='$(LIBS)'
-if test "$host_alias" != "$target_alias" ; then
-
-# Check whether --with-build-cc or --without-build-cc was given.
-if test "${with_build_cc+set}" = set; then
-  withval="$with_build_cc"
-  BUILD_CC="$withval"
-else
-  for ac_prog in $CC gcc cc
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo "$as_me:1990: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_BUILD_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$BUILD_CC"; then
-  ac_cv_prog_BUILD_CC="$BUILD_CC" # Let the user override the test.
-else
-  ac_save_IFS=$IFS; IFS=$ac_path_separator
-ac_dummy="$PATH"
-for ac_dir in $ac_dummy; do
-  IFS=$ac_save_IFS
-  test -z "$ac_dir" && ac_dir=.
-  $as_executable_p "$ac_dir/$ac_word" || continue
-ac_cv_prog_BUILD_CC="$ac_prog"
-echo "$as_me:2005: found $ac_dir/$ac_word" >&5
-break
-done
-
-fi
-fi
-BUILD_CC=$ac_cv_prog_BUILD_CC
-if test -n "$BUILD_CC"; then
-  echo "$as_me:2013: result: $BUILD_CC" >&5
-echo "${ECHO_T}$BUILD_CC" >&6
-else
-  echo "$as_me:2016: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-  test -n "$BUILD_CC" && break
-done
-
-fi;
-
-# Check whether --with-build-cflags or --without-build-cflags was given.
-if test "${with_build_cflags+set}" = set; then
-  withval="$with_build_cflags"
-  BUILD_CFLAGS="$withval"
-fi;
-
-# Check whether --with-build-cppflags or --without-build-cppflags was given.
-if test "${with_build_cppflags+set}" = set; then
-  withval="$with_build_cppflags"
-  BUILD_CPPFLAGS="$withval"
-fi;
-
-# Check whether --with-build-ldflags or --without-build-ldflags was given.
-if test "${with_build_ldflags+set}" = set; then
-  withval="$with_build_ldflags"
-  BUILD_LDFLAGS="$withval"
-fi;
-
-# Check whether --with-build-libs or --without-build-libs was given.
-if test "${with_build_libs+set}" = set; then
-  withval="$with_build_libs"
-  BUILD_LIBS="$withval"
-fi;
-fi
-
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
-echo "$as_me:2055: checking how to run the C preprocessor" >&5
+echo "$as_me:2025: checking how to run the C preprocessor" >&5
 echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
@@ -2073,18 +2043,18 @@ do
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat >conftest.$ac_ext <<_ACEOF
-#line 2076 "configure"
+#line 2046 "configure"
 #include "confdefs.h"
 #include <assert.h>
                      Syntax error
 _ACEOF
-if { (eval echo "$as_me:2081: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:2051: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:2087: \$? = $ac_status" >&5
+  echo "$as_me:2057: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -2107,17 +2077,17 @@ rm -f conftest.err conftest.$ac_ext
   # OK, works on sane cases.  Now check whether non-existent headers
   # can be detected and how.
   cat >conftest.$ac_ext <<_ACEOF
-#line 2110 "configure"
+#line 2080 "configure"
 #include "confdefs.h"
 #include <ac_nonexistent.h>
 _ACEOF
-if { (eval echo "$as_me:2114: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:2084: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:2120: \$? = $ac_status" >&5
+  echo "$as_me:2090: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -2154,7 +2124,7 @@ fi
 else
   ac_cv_prog_CPP=$CPP
 fi
-echo "$as_me:2157: result: $CPP" >&5
+echo "$as_me:2127: result: $CPP" >&5
 echo "${ECHO_T}$CPP" >&6
 ac_preproc_ok=false
 for ac_c_preproc_warn_flag in '' yes
@@ -2164,18 +2134,18 @@ do
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat >conftest.$ac_ext <<_ACEOF
-#line 2167 "configure"
+#line 2137 "configure"
 #include "confdefs.h"
 #include <assert.h>
                      Syntax error
 _ACEOF
-if { (eval echo "$as_me:2172: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:2142: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:2178: \$? = $ac_status" >&5
+  echo "$as_me:2148: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -2198,17 +2168,17 @@ rm -f conftest.err conftest.$ac_ext
   # OK, works on sane cases.  Now check whether non-existent headers
   # can be detected and how.
   cat >conftest.$ac_ext <<_ACEOF
-#line 2201 "configure"
+#line 2171 "configure"
 #include "confdefs.h"
 #include <ac_nonexistent.h>
 _ACEOF
-if { (eval echo "$as_me:2205: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:2175: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:2211: \$? = $ac_status" >&5
+  echo "$as_me:2181: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -2236,7 +2206,7 @@ rm -f conftest.err conftest.$ac_ext
 if $ac_preproc_ok; then
   :
 else
-  { { echo "$as_me:2239: error: C preprocessor \"$CPP\" fails sanity check" >&5
+  { { echo "$as_me:2209: error: C preprocessor \"$CPP\" fails sanity check" >&5
 echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -2248,17 +2218,17 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 if test $ac_cv_c_compiler_gnu = yes; then
-    echo "$as_me:2251: checking whether $CC needs -traditional" >&5
+    echo "$as_me:2221: checking whether $CC needs -traditional" >&5
 echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6
 if test "${ac_cv_prog_gcc_traditional+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
     ac_pattern="Autoconf.*'x'"
   cat >conftest.$ac_ext <<_ACEOF
-#line 2258 "configure"
+#line 2228 "configure"
 #include "confdefs.h"
 #include <sgtty.h>
-Autoconf TIOCGETP
+int Autoconf = TIOCGETP;
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "$ac_pattern" >/dev/null 2>&1; then
@@ -2270,10 +2240,10 @@ rm -f conftest*
 
   if test $ac_cv_prog_gcc_traditional = no; then
     cat >conftest.$ac_ext <<_ACEOF
-#line 2273 "configure"
+#line 2243 "configure"
 #include "confdefs.h"
 #include <termio.h>
-Autoconf TCGETA
+int Autoconf = TCGETA;
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "$ac_pattern" >/dev/null 2>&1; then
@@ -2283,19 +2253,19 @@ rm -f conftest*
 
   fi
 fi
-echo "$as_me:2286: result: $ac_cv_prog_gcc_traditional" >&5
+echo "$as_me:2256: result: $ac_cv_prog_gcc_traditional" >&5
 echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6
   if test $ac_cv_prog_gcc_traditional = yes; then
     CC="$CC -traditional"
   fi
 fi
 
-echo "$as_me:2293: checking for POSIXized ISC" >&5
+echo "$as_me:2263: checking for POSIXized ISC" >&5
 echo $ECHO_N "checking for POSIXized ISC... $ECHO_C" >&6
 if test -d /etc/conf/kconfig.d &&
    grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
 then
-  echo "$as_me:2298: result: yes" >&5
+  echo "$as_me:2268: result: yes" >&5
 echo "${ECHO_T}yes" >&6
   ISC=yes # If later tests want to check for ISC.
 
@@ -2309,12 +2279,12 @@ EOF
     CC="$CC -Xp"
   fi
 else
-  echo "$as_me:2312: result: no" >&5
+  echo "$as_me:2282: result: no" >&5
 echo "${ECHO_T}no" >&6
   ISC=
 fi
 
-echo "$as_me:2317: checking for ${CC-cc} option to accept ANSI C" >&5
+echo "$as_me:2287: checking for ${CC-cc} option to accept ANSI C" >&5
 echo $ECHO_N "checking for ${CC-cc} option to accept ANSI C... $ECHO_C" >&6
 if test "${cf_cv_ansi_cc+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2366,11 +2336,11 @@ fi
 
 if test -n "$cf_new_cppflags" ; then
 
-       CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+       CPPFLAGS="$cf_new_cppflags $CPPFLAGS"
 fi
 
        cat >conftest.$ac_ext <<_ACEOF
-#line 2373 "configure"
+#line 2343 "configure"
 #include "confdefs.h"
 
 #ifndef CC_HAS_PROTOS
@@ -2391,16 +2361,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2394: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2364: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2397: \$? = $ac_status" >&5
+  echo "$as_me:2367: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2400: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2370: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2403: \$? = $ac_status" >&5
+  echo "$as_me:2373: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_ansi_cc="$cf_arg"; break
 else
@@ -2413,7 +2383,7 @@ CFLAGS="$cf_save_CFLAGS"
 CPPFLAGS="$cf_save_CPPFLAGS"
 
 fi
-echo "$as_me:2416: result: $cf_cv_ansi_cc" >&5
+echo "$as_me:2386: result: $cf_cv_ansi_cc" >&5
 echo "${ECHO_T}$cf_cv_ansi_cc" >&6
 
 if test "$cf_cv_ansi_cc" != "no"; then
@@ -2446,7 +2416,7 @@ fi
 
 if test -n "$cf_new_cppflags" ; then
 
-       CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+       CPPFLAGS="$cf_new_cppflags $CPPFLAGS"
 fi
 
 else
@@ -2458,7 +2428,7 @@ fi
 fi
 
 if test "$cf_cv_ansi_cc" = "no"; then
-       { { echo "$as_me:2461: error: Your compiler does not appear to recognize prototypes.
+       { { echo "$as_me:2431: error: Your compiler does not appear to recognize prototypes.
 You have the following choices:
        a. adjust your compiler options
        b. get an up-to-date compiler
@@ -2471,33 +2441,34 @@ You have the following choices:
    { (exit 1); exit 1; }; }
 fi
 
-PROG_EXT=
 case $cf_cv_system_name in
 os2*)
-    # We make sure -Zexe is not used -- it would interfere with @PROG_EXT@
     CFLAGS="$CFLAGS -Zmt"
     CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__"
     CXXFLAGS="$CXXFLAGS -Zmt"
-    LDFLAGS=`echo "$LDFLAGS -Zmt -Zcrtdll" | sed "s/-Zexe//g"`
-    PROG_EXT=".exe"
-    ;;
-cygwin*)
-    PROG_EXT=".exe"
+    # autoconf's macro sets -Zexe and suffix both, which conflict:w
+    LDFLAGS="$LDFLAGS -Zmt -Zcrtdll"
+    ac_cv_exeext=.exe
     ;;
 esac
 
+PROG_EXT="$EXEEXT"
+
 test -n "$PROG_EXT" && cat >>confdefs.h <<EOF
 #define PROG_EXT "$PROG_EXT"
 EOF
 
-case "$cf_cv_system_name" in
+if test "$cross_compiling" = yes ; then
+  LDCONFIG=:
+else
+case "$cf_cv_system_name" in #(vi
 freebsd*) #(vi
   test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R"
   ;;
 *) LDPATH=$PATH:/sbin:/usr/sbin
   # Extract the first word of "ldconfig", so it can be a program name with args.
 set dummy ldconfig; ac_word=$2
-echo "$as_me:2500: checking for $ac_word" >&5
+echo "$as_me:2471: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_path_LDCONFIG+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2514,7 +2485,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   if $as_executable_p "$ac_dir/$ac_word"; then
    ac_cv_path_LDCONFIG="$ac_dir/$ac_word"
-   echo "$as_me:2517: found $ac_dir/$ac_word" >&5
+   echo "$as_me:2488: found $ac_dir/$ac_word" >&5
    break
 fi
 done
@@ -2525,17 +2496,18 @@ fi
 LDCONFIG=$ac_cv_path_LDCONFIG
 
 if test -n "$LDCONFIG"; then
-  echo "$as_me:2528: result: $LDCONFIG" >&5
+  echo "$as_me:2499: result: $LDCONFIG" >&5
 echo "${ECHO_T}$LDCONFIG" >&6
 else
-  echo "$as_me:2531: result: no" >&5
+  echo "$as_me:2502: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
   ;;
 esac
+fi
 
-echo "$as_me:2538: checking if you want to ensure bool is consistent with C++" >&5
+echo "$as_me:2510: checking if you want to ensure bool is consistent with C++" >&5
 echo $ECHO_N "checking if you want to ensure bool is consistent with C++... $ECHO_C" >&6
 
 # Check whether --with-cxx or --without-cxx was given.
@@ -2545,12 +2517,13 @@ if test "${with_cxx+set}" = set; then
 else
   cf_with_cxx=yes
 fi;
-echo "$as_me:2548: result: $cf_with_cxx" >&5
+echo "$as_me:2520: result: $cf_with_cxx" >&5
 echo "${ECHO_T}$cf_with_cxx" >&6
 if test "X$cf_with_cxx" = Xno ; then
        CXX=""
        GXX=""
 else
+       # with autoconf 2.13, we can change the error to a warning:
                ac_ext=cc
 ac_cpp='$CXXCPP $CPPFLAGS'
 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -2561,7 +2534,7 @@ if test -n "$ac_tool_prefix"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:2564: checking for $ac_word" >&5
+echo "$as_me:2537: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CXX+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2576,7 +2549,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
-echo "$as_me:2579: found $ac_dir/$ac_word" >&5
+echo "$as_me:2552: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2584,10 +2557,10 @@ fi
 fi
 CXX=$ac_cv_prog_CXX
 if test -n "$CXX"; then
-  echo "$as_me:2587: result: $CXX" >&5
+  echo "$as_me:2560: result: $CXX" >&5
 echo "${ECHO_T}$CXX" >&6
 else
-  echo "$as_me:2590: result: no" >&5
+  echo "$as_me:2563: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2600,7 +2573,7 @@ if test -z "$CXX"; then
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:2603: checking for $ac_word" >&5
+echo "$as_me:2576: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2615,7 +2588,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CXX="$ac_prog"
-echo "$as_me:2618: found $ac_dir/$ac_word" >&5
+echo "$as_me:2591: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2623,10 +2596,10 @@ fi
 fi
 ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
 if test -n "$ac_ct_CXX"; then
-  echo "$as_me:2626: result: $ac_ct_CXX" >&5
+  echo "$as_me:2599: result: $ac_ct_CXX" >&5
 echo "${ECHO_T}$ac_ct_CXX" >&6
 else
-  echo "$as_me:2629: result: no" >&5
+  echo "$as_me:2602: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2638,32 +2611,32 @@ test -n "$ac_ct_CXX" || ac_ct_CXX="g++"
 fi
 
 # Provide some information about the compiler.
-echo "$as_me:2641:" \
+echo "$as_me:2614:" \
      "checking for C++ compiler version" >&5
 ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:2644: \"$ac_compiler --version </dev/null >&5\"") >&5
+{ (eval echo "$as_me:2617: \"$ac_compiler --version </dev/null >&5\"") >&5
   (eval $ac_compiler --version </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:2647: \$? = $ac_status" >&5
+  echo "$as_me:2620: \$? = $ac_status" >&5
   (exit $ac_status); }
-{ (eval echo "$as_me:2649: \"$ac_compiler -v </dev/null >&5\"") >&5
+{ (eval echo "$as_me:2622: \"$ac_compiler -v </dev/null >&5\"") >&5
   (eval $ac_compiler -v </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:2652: \$? = $ac_status" >&5
+  echo "$as_me:2625: \$? = $ac_status" >&5
   (exit $ac_status); }
-{ (eval echo "$as_me:2654: \"$ac_compiler -V </dev/null >&5\"") >&5
+{ (eval echo "$as_me:2627: \"$ac_compiler -V </dev/null >&5\"") >&5
   (eval $ac_compiler -V </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:2657: \$? = $ac_status" >&5
+  echo "$as_me:2630: \$? = $ac_status" >&5
   (exit $ac_status); }
 
-echo "$as_me:2660: checking whether we are using the GNU C++ compiler" >&5
+echo "$as_me:2633: checking whether we are using the GNU C++ compiler" >&5
 echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6
 if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 2666 "configure"
+#line 2639 "configure"
 #include "confdefs.h"
 
 int
@@ -2678,16 +2651,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2681: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2654: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2684: \$? = $ac_status" >&5
+  echo "$as_me:2657: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2687: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2660: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2690: \$? = $ac_status" >&5
+  echo "$as_me:2663: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_compiler_gnu=yes
 else
@@ -2699,19 +2672,19 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
 
 fi
-echo "$as_me:2702: result: $ac_cv_cxx_compiler_gnu" >&5
+echo "$as_me:2675: result: $ac_cv_cxx_compiler_gnu" >&5
 echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6
 GXX=`test $ac_compiler_gnu = yes && echo yes`
 ac_test_CXXFLAGS=${CXXFLAGS+set}
 ac_save_CXXFLAGS=$CXXFLAGS
 CXXFLAGS="-g"
-echo "$as_me:2708: checking whether $CXX accepts -g" >&5
+echo "$as_me:2681: checking whether $CXX accepts -g" >&5
 echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6
 if test "${ac_cv_prog_cxx_g+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 2714 "configure"
+#line 2687 "configure"
 #include "confdefs.h"
 
 int
@@ -2723,16 +2696,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2726: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2699: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2729: \$? = $ac_status" >&5
+  echo "$as_me:2702: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2732: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2705: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2735: \$? = $ac_status" >&5
+  echo "$as_me:2708: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_prog_cxx_g=yes
 else
@@ -2742,7 +2715,7 @@ ac_cv_prog_cxx_g=no
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:2745: result: $ac_cv_prog_cxx_g" >&5
+echo "$as_me:2718: result: $ac_cv_prog_cxx_g" >&5
 echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6
 if test "$ac_test_CXXFLAGS" = set; then
   CXXFLAGS=$ac_save_CXXFLAGS
@@ -2769,7 +2742,7 @@ for ac_declaration in \
    'void exit (int);'
 do
   cat >conftest.$ac_ext <<_ACEOF
-#line 2772 "configure"
+#line 2745 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 $ac_declaration
@@ -2782,16 +2755,16 @@ exit (42);
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2785: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2758: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2788: \$? = $ac_status" >&5
+  echo "$as_me:2761: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2791: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2764: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2794: \$? = $ac_status" >&5
+  echo "$as_me:2767: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   :
 else
@@ -2801,7 +2774,7 @@ continue
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
   cat >conftest.$ac_ext <<_ACEOF
-#line 2804 "configure"
+#line 2777 "configure"
 #include "confdefs.h"
 $ac_declaration
 int
@@ -2813,16 +2786,16 @@ exit (42);
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2816: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2789: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2819: \$? = $ac_status" >&5
+  echo "$as_me:2792: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2822: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2795: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2825: \$? = $ac_status" >&5
+  echo "$as_me:2798: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   break
 else
@@ -2844,26 +2817,72 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
+               # autoconf 2.5x removed the error - by hardcoding it to g++.
+       if test "$CXX" = "g++" ; then
+               # Extract the first word of "g++", so it can be a program name with args.
+set dummy g++; ac_word=$2
+echo "$as_me:2824: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_CXX+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $CXX in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_CXX="$CXX" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_CXX="$ac_dir/$ac_word"
+   echo "$as_me:2841: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+CXX=$ac_cv_path_CXX
+
+if test -n "$CXX"; then
+  echo "$as_me:2852: result: $CXX" >&5
+echo "${ECHO_T}$CXX" >&6
+else
+  echo "$as_me:2855: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
        fi
+       if test "$CXX" = "g++" ; then
+               { echo "$as_me:2861: WARNING: ignoring hardcoded g++" >&5
+echo "$as_me: WARNING: ignoring hardcoded g++" >&2;}
+               cf_with_cxx=no; CXX=""; GXX="";
+       fi
+fi
 
 GXX_VERSION=none
 if test "$GXX" = yes; then
-       echo "$as_me:2851: checking version of g++" >&5
+       echo "$as_me:2869: checking version of g++" >&5
 echo $ECHO_N "checking version of g++... $ECHO_C" >&6
-       GXX_VERSION="`${CXX-g++} --version|head -1`"
-       echo "$as_me:2854: result: $GXX_VERSION" >&5
+       GXX_VERSION="`${CXX-g++} --version|sed -e '2,$d'`"
+       echo "$as_me:2872: result: $GXX_VERSION" >&5
 echo "${ECHO_T}$GXX_VERSION" >&6
-       case $GXX_VERSION in
-       1*|2.[0-6]*)
-               GXX=""; CXX=""; ac_cv_cxx_compiler_gnu=no
-               cf_cxx_library=no
-               { echo "$as_me:2860: WARNING: templates do not work" >&5
-echo "$as_me: WARNING: templates do not work" >&2;}
-               ;;
-       esac
 fi
 
-echo "$as_me:2866: checking if you want to build C++ binding and demo" >&5
+case $GXX_VERSION in
+1*|2.[0-6]*)
+       GXX=""; CXX=""; ac_cv_cxx_compiler_gnu=no
+       cf_cxx_library=no
+       { echo "$as_me:2880: WARNING: templates do not work" >&5
+echo "$as_me: WARNING: templates do not work" >&2;}
+       ;;
+esac
+
+echo "$as_me:2885: checking if you want to build C++ binding and demo" >&5
 echo $ECHO_N "checking if you want to build C++ binding and demo... $ECHO_C" >&6
 
 # Check whether --with-cxx-binding or --without-cxx-binding was given.
@@ -2873,10 +2892,10 @@ if test "${with_cxx_binding+set}" = set; then
 else
   cf_with_cxx_binding=$cf_with_cxx
 fi;
-echo "$as_me:2876: result: $cf_with_cxx_binding" >&5
+echo "$as_me:2895: result: $cf_with_cxx_binding" >&5
 echo "${ECHO_T}$cf_with_cxx_binding" >&6
 
-echo "$as_me:2879: checking if you want to build with Ada95" >&5
+echo "$as_me:2898: checking if you want to build with Ada95" >&5
 echo $ECHO_N "checking if you want to build with Ada95... $ECHO_C" >&6
 
 # Check whether --with-ada or --without-ada was given.
@@ -2886,10 +2905,10 @@ if test "${with_ada+set}" = set; then
 else
   cf_with_ada=yes
 fi;
-echo "$as_me:2889: result: $cf_with_ada" >&5
+echo "$as_me:2908: result: $cf_with_ada" >&5
 echo "${ECHO_T}$cf_with_ada" >&6
 
-echo "$as_me:2892: checking if you want to build programs such as tic" >&5
+echo "$as_me:2911: checking if you want to build programs such as tic" >&5
 echo $ECHO_N "checking if you want to build programs such as tic... $ECHO_C" >&6
 
 # Check whether --with-progs or --without-progs was given.
@@ -2899,10 +2918,10 @@ if test "${with_progs+set}" = set; then
 else
   cf_with_progs=yes
 fi;
-echo "$as_me:2902: result: $cf_with_progs" >&5
+echo "$as_me:2921: result: $cf_with_progs" >&5
 echo "${ECHO_T}$cf_with_progs" >&6
 
-echo "$as_me:2905: checking if you wish to install curses.h" >&5
+echo "$as_me:2924: checking if you wish to install curses.h" >&5
 echo $ECHO_N "checking if you wish to install curses.h... $ECHO_C" >&6
 
 # Check whether --with-curses-h or --without-curses-h was given.
@@ -2912,7 +2931,7 @@ if test "${with_curses_h+set}" = set; then
 else
   with_curses_h=yes
 fi;
-echo "$as_me:2915: result: $with_curses_h" >&5
+echo "$as_me:2934: result: $with_curses_h" >&5
 echo "${ECHO_T}$with_curses_h" >&6
 
 modules_to_build="ncurses"
@@ -2938,7 +2957,7 @@ for ac_prog in mawk gawk nawk awk
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:2941: checking for $ac_word" >&5
+echo "$as_me:2960: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_AWK+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2953,7 +2972,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_AWK="$ac_prog"
-echo "$as_me:2956: found $ac_dir/$ac_word" >&5
+echo "$as_me:2975: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2961,17 +2980,17 @@ fi
 fi
 AWK=$ac_cv_prog_AWK
 if test -n "$AWK"; then
-  echo "$as_me:2964: result: $AWK" >&5
+  echo "$as_me:2983: result: $AWK" >&5
 echo "${ECHO_T}$AWK" >&6
 else
-  echo "$as_me:2967: result: no" >&5
+  echo "$as_me:2986: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
   test -n "$AWK" && break
 done
 
-echo "$as_me:2974: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "$as_me:2993: checking whether ${MAKE-make} sets \${MAKE}" >&5
 echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6
 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
 if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
@@ -2991,11 +3010,11 @@ fi
 rm -f conftest.make
 fi
 if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
-  echo "$as_me:2994: result: yes" >&5
+  echo "$as_me:3013: result: yes" >&5
 echo "${ECHO_T}yes" >&6
   SET_MAKE=
 else
-  echo "$as_me:2998: result: no" >&5
+  echo "$as_me:3017: result: no" >&5
 echo "${ECHO_T}no" >&6
   SET_MAKE="MAKE=${MAKE-make}"
 fi
@@ -3012,7 +3031,7 @@ fi
 # AFS /usr/afsws/bin/install, which mishandles nonexistent args
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:3015: checking for a BSD compatible install" >&5
+echo "$as_me:3034: checking for a BSD compatible install" >&5
 echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6
 if test -z "$INSTALL"; then
 if test "${ac_cv_path_install+set}" = set; then
@@ -3061,7 +3080,7 @@ fi
     INSTALL=$ac_install_sh
   fi
 fi
-echo "$as_me:3064: result: $INSTALL" >&5
+echo "$as_me:3083: result: $INSTALL" >&5
 echo "${ECHO_T}$INSTALL" >&6
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
@@ -3076,13 +3095,13 @@ case $INSTALL in
 /*)
   ;;
 *)
-  cf_dir=`echo $INSTALL | sed -e 's:/[^/]*$::'`
+  cf_dir=`echo $INSTALL | sed -e 's%/[^/]*$%%'`
   test -z "$cf_dir" && cf_dir=.
-  INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's:^.*/::'`
+  INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'`
   ;;
 esac
 
-echo "$as_me:3085: checking for long file names" >&5
+echo "$as_me:3104: checking for long file names" >&5
 echo $ECHO_N "checking for long file names... $ECHO_C" >&6
 if test "${ac_cv_sys_long_file_names+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3121,7 +3140,7 @@ for ac_dir in  . $ac_tmpdirs `eval echo $prefix/lib $exec_prefix/lib` ; do
   rm -rf $ac_xdir 2>/dev/null
 done
 fi
-echo "$as_me:3124: result: $ac_cv_sys_long_file_names" >&5
+echo "$as_me:3143: result: $ac_cv_sys_long_file_names" >&5
 echo "${ECHO_T}$ac_cv_sys_long_file_names" >&6
 if test $ac_cv_sys_long_file_names = yes; then
 
@@ -3131,12 +3150,22 @@ EOF
 
 fi
 
-echo "$as_me:3134: checking if filesystem supports mixed-case filenames" >&5
+echo "$as_me:3153: checking if filesystem supports mixed-case filenames" >&5
 echo $ECHO_N "checking if filesystem supports mixed-case filenames... $ECHO_C" >&6
 if test "${cf_cv_mixedcase+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
+if test "$cross_compiling" = yes ; then
+       case $target_alias in #(vi
+       *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
+               cf_cv_mixedcase=no
+               ;;
+       *)
+               cf_cv_mixedcase=yes
+               ;;
+       esac
+else
        rm -f conftest CONFTEST
        echo test >conftest
        if test -f CONFTEST ; then
@@ -3145,102 +3174,29 @@ else
                cf_cv_mixedcase=yes
        fi
        rm -f conftest CONFTEST
+fi
 
 fi
-echo "$as_me:3150: result: $cf_cv_mixedcase" >&5
+echo "$as_me:3180: result: $cf_cv_mixedcase" >&5
 echo "${ECHO_T}$cf_cv_mixedcase" >&6
 test "$cf_cv_mixedcase" = yes && cat >>confdefs.h <<\EOF
 #define MIXEDCASE_FILENAMES 1
 EOF
 
-echo "$as_me:3156: checking whether ln -s works" >&5
+echo "$as_me:3186: checking whether ln -s works" >&5
 echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
 LN_S=$as_ln_s
 if test "$LN_S" = "ln -s"; then
-  echo "$as_me:3160: result: yes" >&5
+  echo "$as_me:3190: result: yes" >&5
 echo "${ECHO_T}yes" >&6
 else
-  echo "$as_me:3163: result: no, using $LN_S" >&5
+  echo "$as_me:3193: result: no, using $LN_S" >&5
 echo "${ECHO_T}no, using $LN_S" >&6
 fi
 
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo "$as_me:3170: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_RANLIB+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-  ac_save_IFS=$IFS; IFS=$ac_path_separator
-ac_dummy="$PATH"
-for ac_dir in $ac_dummy; do
-  IFS=$ac_save_IFS
-  test -z "$ac_dir" && ac_dir=.
-  $as_executable_p "$ac_dir/$ac_word" || continue
-ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-echo "$as_me:3185: found $ac_dir/$ac_word" >&5
-break
-done
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
-  echo "$as_me:3193: result: $RANLIB" >&5
-echo "${ECHO_T}$RANLIB" >&6
-else
-  echo "$as_me:3196: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
-  ac_ct_RANLIB=$RANLIB
-  # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo "$as_me:3205: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_RANLIB"; then
-  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-  ac_save_IFS=$IFS; IFS=$ac_path_separator
-ac_dummy="$PATH"
-for ac_dir in $ac_dummy; do
-  IFS=$ac_save_IFS
-  test -z "$ac_dir" && ac_dir=.
-  $as_executable_p "$ac_dir/$ac_word" || continue
-ac_cv_prog_ac_ct_RANLIB="ranlib"
-echo "$as_me:3220: found $ac_dir/$ac_word" >&5
-break
-done
-
-  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
-  echo "$as_me:3229: result: $ac_ct_RANLIB" >&5
-echo "${ECHO_T}$ac_ct_RANLIB" >&6
-else
-  echo "$as_me:3232: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-  RANLIB=$ac_ct_RANLIB
-else
-  RANLIB="$ac_cv_prog_RANLIB"
-fi
-
 # Extract the first word of "ctags", so it can be a program name with args.
 set dummy ctags; ac_word=$2
-echo "$as_me:3243: checking for $ac_word" >&5
+echo "$as_me:3199: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_MAKE_LOWER_TAGS+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3255,7 +3211,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_MAKE_LOWER_TAGS="yes"
-echo "$as_me:3258: found $ac_dir/$ac_word" >&5
+echo "$as_me:3214: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -3264,17 +3220,17 @@ fi
 fi
 MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS
 if test -n "$MAKE_LOWER_TAGS"; then
-  echo "$as_me:3267: result: $MAKE_LOWER_TAGS" >&5
+  echo "$as_me:3223: result: $MAKE_LOWER_TAGS" >&5
 echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6
 else
-  echo "$as_me:3270: result: no" >&5
+  echo "$as_me:3226: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
 if test "$cf_cv_mixedcase" = yes ; then
        # Extract the first word of "etags", so it can be a program name with args.
 set dummy etags; ac_word=$2
-echo "$as_me:3277: checking for $ac_word" >&5
+echo "$as_me:3233: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_MAKE_UPPER_TAGS+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3289,7 +3245,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_MAKE_UPPER_TAGS="yes"
-echo "$as_me:3292: found $ac_dir/$ac_word" >&5
+echo "$as_me:3248: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -3298,10 +3254,10 @@ fi
 fi
 MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS
 if test -n "$MAKE_UPPER_TAGS"; then
-  echo "$as_me:3301: result: $MAKE_UPPER_TAGS" >&5
+  echo "$as_me:3257: result: $MAKE_UPPER_TAGS" >&5
 echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6
 else
-  echo "$as_me:3304: result: no" >&5
+  echo "$as_me:3260: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -3325,7 +3281,7 @@ for ac_prog in tdlint lint alint
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:3328: checking for $ac_word" >&5
+echo "$as_me:3284: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_LINT+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3340,7 +3296,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_LINT="$ac_prog"
-echo "$as_me:3343: found $ac_dir/$ac_word" >&5
+echo "$as_me:3299: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -3348,10 +3304,10 @@ fi
 fi
 LINT=$ac_cv_prog_LINT
 if test -n "$LINT"; then
-  echo "$as_me:3351: result: $LINT" >&5
+  echo "$as_me:3307: result: $LINT" >&5
 echo "${ECHO_T}$LINT" >&6
 else
-  echo "$as_me:3354: result: no" >&5
+  echo "$as_me:3310: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -3362,7 +3318,7 @@ for ac_prog in man man_db
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:3365: checking for $ac_word" >&5
+echo "$as_me:3321: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_MAN+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3377,7 +3333,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_MAN="$ac_prog"
-echo "$as_me:3380: found $ac_dir/$ac_word" >&5
+echo "$as_me:3336: found $ac_dir/$ac_word" >&5
 break
 done
 
 fi
 MAN=$ac_cv_prog_MAN
 if test -n "$MAN"; then
-  echo "$as_me:3388: result: $MAN" >&5
+  echo "$as_me:3344: result: $MAN" >&5
 echo "${ECHO_T}$MAN" >&6
 else
-  echo "$as_me:3391: result: no" >&5
+  echo "$as_me:3347: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
   test -n "$MAN" && break
 done
 
-if test "${cf_cv_subst_LD+set}" = set; then
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+echo "$as_me:3357: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_RANLIB+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
+  if test -n "$RANLIB"; then
+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+echo "$as_me:3372: found $ac_dir/$ac_word" >&5
+break
+done
 
-echo "$as_me:3402: checking for loader (symbol LD)" >&5
-echo $ECHO_N "checking for loader (symbol LD)... $ECHO_C" >&6
-test -z "$LD" && LD=ld
-echo "$as_me:3405: result: $LD" >&5
-echo "${ECHO_T}$LD" >&6
-
-cf_cv_subst_LD=$LD
 fi
-
-LD=${cf_cv_subst_LD}
-
-if test "${cf_cv_subst_AR+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+  echo "$as_me:3380: result: $RANLIB" >&5
+echo "${ECHO_T}$RANLIB" >&6
 else
-
-echo "$as_me:3417: checking for archiver (symbol AR)" >&5
-echo $ECHO_N "checking for archiver (symbol AR)... $ECHO_C" >&6
-test -z "$AR" && AR=ar
-echo "$as_me:3420: result: $AR" >&5
-echo "${ECHO_T}$AR" >&6
-
-cf_cv_subst_AR=$AR
+  echo "$as_me:3383: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-AR=${cf_cv_subst_AR}
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+  ac_ct_RANLIB=$RANLIB
+  # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+echo "$as_me:3392: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_RANLIB"; then
+  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_RANLIB="ranlib"
+echo "$as_me:3407: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB="':'"
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+  echo "$as_me:3416: result: $ac_ct_RANLIB" >&5
+echo "${ECHO_T}$ac_ct_RANLIB" >&6
+else
+  echo "$as_me:3419: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  RANLIB=$ac_ct_RANLIB
+else
+  RANLIB="$ac_cv_prog_RANLIB"
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ld", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ld; ac_word=$2
+echo "$as_me:3431: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_LD+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$LD"; then
+  ac_cv_prog_LD="$LD" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_LD="${ac_tool_prefix}ld"
+echo "$as_me:3446: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+LD=$ac_cv_prog_LD
+if test -n "$LD"; then
+  echo "$as_me:3454: result: $LD" >&5
+echo "${ECHO_T}$LD" >&6
+else
+  echo "$as_me:3457: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_LD"; then
+  ac_ct_LD=$LD
+  # Extract the first word of "ld", so it can be a program name with args.
+set dummy ld; ac_word=$2
+echo "$as_me:3466: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_LD+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_LD"; then
+  ac_cv_prog_ac_ct_LD="$ac_ct_LD" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_LD="ld"
+echo "$as_me:3481: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_ac_ct_LD" && ac_cv_prog_ac_ct_LD="ld"
+fi
+fi
+ac_ct_LD=$ac_cv_prog_ac_ct_LD
+if test -n "$ac_ct_LD"; then
+  echo "$as_me:3490: result: $ac_ct_LD" >&5
+echo "${ECHO_T}$ac_ct_LD" >&6
+else
+  echo "$as_me:3493: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  LD=$ac_ct_LD
+else
+  LD="$ac_cv_prog_LD"
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ar; ac_word=$2
+echo "$as_me:3505: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$AR"; then
+  ac_cv_prog_AR="$AR" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_AR="${ac_tool_prefix}ar"
+echo "$as_me:3520: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+AR=$ac_cv_prog_AR
+if test -n "$AR"; then
+  echo "$as_me:3528: result: $AR" >&5
+echo "${ECHO_T}$AR" >&6
+else
+  echo "$as_me:3531: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_AR"; then
+  ac_ct_AR=$AR
+  # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
+echo "$as_me:3540: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_AR"; then
+  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_AR="ar"
+echo "$as_me:3555: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_ac_ct_AR" && ac_cv_prog_ac_ct_AR="ar"
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+  echo "$as_me:3564: result: $ac_ct_AR" >&5
+echo "${ECHO_T}$ac_ct_AR" >&6
+else
+  echo "$as_me:3567: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  AR=$ac_ct_AR
+else
+  AR="$ac_cv_prog_AR"
+fi
 
 if test "${cf_cv_subst_AR_OPTS+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
-echo "$as_me:3432: checking for archiver options (symbol AR_OPTS)" >&5
+echo "$as_me:3580: checking for archiver options (symbol AR_OPTS)" >&5
 echo $ECHO_N "checking for archiver options (symbol AR_OPTS)... $ECHO_C" >&6
 test -z "$AR_OPTS" && AR_OPTS=rv
-echo "$as_me:3435: result: $AR_OPTS" >&5
+echo "$as_me:3583: result: $AR_OPTS" >&5
 echo "${ECHO_T}$AR_OPTS" >&6
 
 cf_cv_subst_AR_OPTS=$AR_OPTS
@@ -3440,7 +3588,7 @@ fi
 
 AR_OPTS=${cf_cv_subst_AR_OPTS}
 
-echo "$as_me:3443: checking for makeflags variable" >&5
+echo "$as_me:3591: checking for makeflags variable" >&5
 echo $ECHO_N "checking for makeflags variable... $ECHO_C" >&6
 if test "${cf_cv_makeflags+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3473,10 +3621,10 @@ CF_EOF
        rm -f cf_makeflags.tmp
 
 fi
-echo "$as_me:3476: result: $cf_cv_makeflags" >&5
+echo "$as_me:3624: result: $cf_cv_makeflags" >&5
 echo "${ECHO_T}$cf_cv_makeflags" >&6
 
-echo "$as_me:3479: checking if you have specified an install-prefix" >&5
+echo "$as_me:3627: checking if you have specified an install-prefix" >&5
 echo $ECHO_N "checking if you have specified an install-prefix... $ECHO_C" >&6
 
 # Check whether --with-install-prefix or --without-install-prefix was given.
@@ -3489,17 +3637,116 @@ if test "${with_install_prefix+set}" = set; then
                ;;
        esac
 fi;
-echo "$as_me:3492: result: $DESTDIR" >&5
+echo "$as_me:3640: result: $DESTDIR" >&5
 echo "${ECHO_T}$DESTDIR" >&6
 
 ###############################################################################
 
+# If we're cross-compiling, allow the user to override the tools and their
+# options.  The configure script is oriented toward identifying the host
+# compiler, etc., but we need a build compiler to generate parts of the source.
+: ${BUILD_CC:='$(CC)'}
+: ${BUILD_CFLAGS:='$(CFLAGS)'}
+: ${BUILD_CPPFLAGS:='$(CPPFLAGS)'}
+: ${BUILD_LDFLAGS:='$(LDFLAGS)'}
+: ${BUILD_LIBS:='$(LIBS)'}
+: ${BUILD_EXEEXT:='$x'}
+if test "$cross_compiling" = yes ; then
+
+# Check whether --with-build-cc or --without-build-cc was given.
+if test "${with_build_cc+set}" = set; then
+  withval="$with_build_cc"
+  BUILD_CC="$withval"
+else
+  for ac_prog in $CC gcc cc
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:3665: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_BUILD_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$BUILD_CC"; then
+  ac_cv_prog_BUILD_CC="$BUILD_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_BUILD_CC="$ac_prog"
+echo "$as_me:3680: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+BUILD_CC=$ac_cv_prog_BUILD_CC
+if test -n "$BUILD_CC"; then
+  echo "$as_me:3688: result: $BUILD_CC" >&5
+echo "${ECHO_T}$BUILD_CC" >&6
+else
+  echo "$as_me:3691: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$BUILD_CC" && break
+done
+
+fi;
+
+# Check whether --with-build-cflags or --without-build-cflags was given.
+if test "${with_build_cflags+set}" = set; then
+  withval="$with_build_cflags"
+  BUILD_CFLAGS="$withval"
+fi;
+
+# Check whether --with-build-cppflags or --without-build-cppflags was given.
+if test "${with_build_cppflags+set}" = set; then
+  withval="$with_build_cppflags"
+  BUILD_CPPFLAGS="$withval"
+fi;
+
+# Check whether --with-build-ldflags or --without-build-ldflags was given.
+if test "${with_build_ldflags+set}" = set; then
+  withval="$with_build_ldflags"
+  BUILD_LDFLAGS="$withval"
+fi;
+
+# Check whether --with-build-libs or --without-build-libs was given.
+if test "${with_build_libs+set}" = set; then
+  withval="$with_build_libs"
+  BUILD_LIBS="$withval"
+fi;
+       BUILD_EXEEXT=
+fi
+
+###############################################################################
+
 ### Options to allow the user to specify the set of libraries which are used.
 ### Use "--without-normal --with-shared" to allow the default model to be
 ### shared, for example.
 cf_list_models=""
 
-echo "$as_me:3502: checking if you want to build libraries with libtool" >&5
+LIBTOOL=
+
+# common library maintenance symbols that are convenient for libtool scripts:
+LIB_CREATE='$(AR) -cr'
+LIB_OBJECT='$(OBJECTS)'
+LIB_SUFFIX=.a
+LIB_PREP="$RANLIB"
+
+# symbols used to prop libtool up to enable it to determine what it should be
+# doing:
+LIB_CLEAN=
+LIB_COMPILE=
+LIB_LINK=
+LIB_INSTALL=
+LIB_UNINSTALL=
+
+echo "$as_me:3749: checking if you want to build libraries with libtool" >&5
 echo $ECHO_N "checking if you want to build libraries with libtool... $ECHO_C" >&6
 
 # Check whether --with-libtool or --without-libtool was given.
@@ -3509,16 +3756,131 @@ if test "${with_libtool+set}" = set; then
 else
   with_libtool=no
 fi;
-echo "$as_me:3512: result: $with_libtool" >&5
+echo "$as_me:3759: result: $with_libtool" >&5
 echo "${ECHO_T}$with_libtool" >&6
-if test "$with_libtool" = "yes"; then
-       cf_list_models="$cf_list_models libtool"
-       test -z "$LIBTOOL" && LIBTOOL=libtool
+if test "$with_libtool" != "no"; then
+
+       if test "$with_libtool" != "yes" ; then
+
+case ".$with_libtool" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval with_libtool="$with_libtool"
+  case ".$with_libtool" in #(vi
+  .NONE/*)
+    with_libtool=`echo $with_libtool | sed -e s%NONE%$ac_default_prefix%`
+    ;;
+  esac
+  ;; #(vi
+.NONE/*)
+  with_libtool=`echo $with_libtool | sed -e s%NONE%$ac_default_prefix%`
+  ;;
+*)
+  { { echo "$as_me:3784: error: expected a pathname, not \"$with_libtool\"" >&5
+echo "$as_me: error: expected a pathname, not \"$with_libtool\"" >&2;}
+   { (exit 1); exit 1; }; }
+  ;;
+esac
+
+               LIBTOOL=$with_libtool
+       else
+               # Extract the first word of "libtool", so it can be a program name with args.
+set dummy libtool; ac_word=$2
+echo "$as_me:3794: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_LIBTOOL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $LIBTOOL in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_LIBTOOL="$LIBTOOL" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_LIBTOOL="$ac_dir/$ac_word"
+   echo "$as_me:3811: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+LIBTOOL=$ac_cv_path_LIBTOOL
+
+if test -n "$LIBTOOL"; then
+  echo "$as_me:3822: result: $LIBTOOL" >&5
+echo "${ECHO_T}$LIBTOOL" >&6
+else
+  echo "$as_me:3825: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+       fi
+       if test -z "$LIBTOOL" ; then
+               { { echo "$as_me:3831: error: Cannot find libtool" >&5
+echo "$as_me: error: Cannot find libtool" >&2;}
+   { (exit 1); exit 1; }; }
+       fi
+       LIB_CREATE='$(LIBTOOL) --mode=link $(CC) -rpath $(DESTDIR)$(libdir) -version-info `cut -f1 $(srcdir)/VERSION` -o'
+       LIB_OBJECT='$(OBJECTS:.o=.lo)'
+       LIB_SUFFIX=.la
+       LIB_CLEAN='$(LIBTOOL) --mode=clean'
+       LIB_COMPILE='$(LIBTOOL) --mode=compile'
+       LIB_LINK='$(LIBTOOL) --mode=link'
+       LIB_INSTALL='$(LIBTOOL) --mode=install'
+       LIB_UNINSTALL='$(LIBTOOL) --mode=uninstall'
+       LIB_PREP=:
+
+       # Show the version of libtool
+       echo "$as_me:3846: checking version of libtool" >&5
+echo $ECHO_N "checking version of libtool... $ECHO_C" >&6
+
+       # Save the version in a cache variable - this is not entirely a good
+       # thing, but the version string from libtool is very ugly, and for
+       # bug reports it might be useful to have the original string.
+       cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '2,$d' -e 's/([^)]*)//g' -e 's/^[^1-9]*//' -e 's/[^0-9.].*//'`
+       echo "$as_me:3853: result: $cf_cv_libtool_version" >&5
+echo "${ECHO_T}$cf_cv_libtool_version" >&6
+       if test -z "$cf_cv_libtool_version" ; then
+               { { echo "$as_me:3856: error: This is not libtool" >&5
+echo "$as_me: error: This is not libtool" >&2;}
+   { (exit 1); exit 1; }; }
+       fi
+
+       # special hack to add --tag option for C++ compiler
+       case $cf_cv_libtool_version in
+       1.[5-9]*|[2-9]*)
+               LIBTOOL_CXX="$LIBTOOL --tag=CXX"
+               ;;
+       *)
+               LIBTOOL_CXX="$LIBTOOL"
+               ;;
+       esac
 else
        LIBTOOL=""
+       LIBTOOL_CXX=""
 fi
 
-echo "$as_me:3521: checking if you want to build shared libraries" >&5
+test -z "$LIBTOOL" && ECHO_LT=
+
+if test "$with_libtool" != "no" ; then
+
+cf_list_models="$cf_list_models libtool"
+
+else
+
+echo "$as_me:3883: checking if you want to build shared libraries" >&5
 echo $ECHO_N "checking if you want to build shared libraries... $ECHO_C" >&6
 
 # Check whether --with-shared or --without-shared was given.
@@ -3528,11 +3890,11 @@ if test "${with_shared+set}" = set; then
 else
   with_shared=no
 fi;
-echo "$as_me:3531: result: $with_shared" >&5
+echo "$as_me:3893: result: $with_shared" >&5
 echo "${ECHO_T}$with_shared" >&6
 test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared"
 
-echo "$as_me:3535: checking if you want to build static libraries" >&5
+echo "$as_me:3897: checking if you want to build static libraries" >&5
 echo $ECHO_N "checking if you want to build static libraries... $ECHO_C" >&6
 
 # Check whether --with-normal or --without-normal was given.
@@ -3542,11 +3904,11 @@ if test "${with_normal+set}" = set; then
 else
   with_normal=yes
 fi;
-echo "$as_me:3545: result: $with_normal" >&5
+echo "$as_me:3907: result: $with_normal" >&5
 echo "${ECHO_T}$with_normal" >&6
 test "$with_normal" = "yes" && cf_list_models="$cf_list_models normal"
 
-echo "$as_me:3549: checking if you want to build debug libraries" >&5
+echo "$as_me:3911: checking if you want to build debug libraries" >&5
 echo $ECHO_N "checking if you want to build debug libraries... $ECHO_C" >&6
 
 # Check whether --with-debug or --without-debug was given.
@@ -3556,11 +3918,11 @@ if test "${with_debug+set}" = set; then
 else
   with_debug=yes
 fi;
-echo "$as_me:3559: result: $with_debug" >&5
+echo "$as_me:3921: result: $with_debug" >&5
 echo "${ECHO_T}$with_debug" >&6
 test "$with_debug" = "yes" && cf_list_models="$cf_list_models debug"
 
-echo "$as_me:3563: checking if you want to build profiling libraries" >&5
+echo "$as_me:3925: checking if you want to build profiling libraries" >&5
 echo $ECHO_N "checking if you want to build profiling libraries... $ECHO_C" >&6
 
 # Check whether --with-profile or --without-profile was given.
@@ -3570,25 +3932,27 @@ if test "${with_profile+set}" = set; then
 else
   with_profile=no
 fi;
-echo "$as_me:3573: result: $with_profile" >&5
+echo "$as_me:3935: result: $with_profile" >&5
 echo "${ECHO_T}$with_profile" >&6
 test "$with_profile" = "yes" && cf_list_models="$cf_list_models profile"
 
+fi
+
 ###############################################################################
 
-echo "$as_me:3579: checking for specified models" >&5
+echo "$as_me:3943: checking for specified models" >&5
 echo $ECHO_N "checking for specified models... $ECHO_C" >&6
 test -z "$cf_list_models" && cf_list_models=normal
-test "$with_libtool" = "yes" && cf_list_models=libtool
-echo "$as_me:3583: result: $cf_list_models" >&5
+test "$with_libtool" != "no" && cf_list_models=libtool
+echo "$as_me:3947: result: $cf_list_models" >&5
 echo "${ECHO_T}$cf_list_models" >&6
 
 ### Use the first model as the default, and save its suffix for use in building
 ### up test-applications.
-echo "$as_me:3588: checking for default model" >&5
+echo "$as_me:3952: checking for default model" >&5
 echo $ECHO_N "checking for default model... $ECHO_C" >&6
-DFT_LWR_MODEL=`echo $cf_list_models | $AWK '{print $1}'`
-echo "$as_me:3591: result: $DFT_LWR_MODEL" >&5
+DFT_LWR_MODEL=`echo "$cf_list_models" | $AWK '{print $1}'`
+echo "$as_me:3955: result: $DFT_LWR_MODEL" >&5
 echo "${ECHO_T}$DFT_LWR_MODEL" >&6
 
 DFT_UPR_MODEL=`echo "$DFT_LWR_MODEL" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
@@ -3612,7 +3976,7 @@ LIB_SUFFIX=
 
 ###############################################################################
 
-echo "$as_me:3615: checking if you want to build a separate terminfo library" >&5
+echo "$as_me:3979: checking if you want to build a separate terminfo library" >&5
 echo $ECHO_N "checking if you want to build a separate terminfo library... $ECHO_C" >&6
 
 # Check whether --with-termlib or --without-termlib was given.
@@ -3622,11 +3986,12 @@ if test "${with_termlib+set}" = set; then
 else
   with_termlib=no
 fi;
-echo "$as_me:3625: result: $with_termlib" >&5
+echo "$as_me:3989: result: $with_termlib" >&5
 echo "${ECHO_T}$with_termlib" >&6
 
 ### Checks for special libraries, must be done up-front.
-echo "$as_me:3629: checking if you want to link with dbmalloc for testing" >&5
+
+echo "$as_me:3994: checking if you want to link with dbmalloc for testing" >&5
 echo $ECHO_N "checking if you want to link with dbmalloc for testing... $ECHO_C" >&6
 
 # Check whether --with-dbmalloc or --without-dbmalloc was given.
@@ -3636,11 +4001,11 @@ if test "${with_dbmalloc+set}" = set; then
 else
   with_dbmalloc=no
 fi;
-echo "$as_me:3639: result: $with_dbmalloc" >&5
+echo "$as_me:4004: result: $with_dbmalloc" >&5
 echo "${ECHO_T}$with_dbmalloc" >&6
-if test "$with_dbmalloc" = yes ; then
+if test $with_dbmalloc = yes ; then
 
-echo "$as_me:3643: checking for debug_malloc in -ldbmalloc" >&5
+echo "$as_me:4008: checking for debug_malloc in -ldbmalloc" >&5
 echo $ECHO_N "checking for debug_malloc in -ldbmalloc... $ECHO_C" >&6
 if test "${ac_cv_lib_dbmalloc_debug_malloc+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3648,7 +4013,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldbmalloc  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 3651 "configure"
+#line 4016 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -3667,16 +4032,16 @@ debug_malloc ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3670: \"$ac_link\"") >&5
+if { (eval echo "$as_me:4035: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:3673: \$? = $ac_status" >&5
+  echo "$as_me:4038: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:3676: \"$ac_try\"") >&5
+  { (eval echo "$as_me:4041: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:3679: \$? = $ac_status" >&5
+  echo "$as_me:4044: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_dbmalloc_debug_malloc=yes
 else
@@ -3687,7 +4052,7 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:3690: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5
+echo "$as_me:4055: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5
 echo "${ECHO_T}$ac_cv_lib_dbmalloc_debug_malloc" >&6
 if test $ac_cv_lib_dbmalloc_debug_malloc = yes; then
   cat >>confdefs.h <<EOF
@@ -3700,7 +4065,7 @@ fi
 
 fi
 
-echo "$as_me:3703: checking if you want to link with dmalloc for testing" >&5
+echo "$as_me:4068: checking if you want to link with dmalloc for testing" >&5
 echo $ECHO_N "checking if you want to link with dmalloc for testing... $ECHO_C" >&6
 
 # Check whether --with-dmalloc or --without-dmalloc was given.
@@ -3710,11 +4075,11 @@ if test "${with_dmalloc+set}" = set; then
 else
   with_dmalloc=no
 fi;
-echo "$as_me:3713: result: $with_dmalloc" >&5
+echo "$as_me:4078: result: $with_dmalloc" >&5
 echo "${ECHO_T}$with_dmalloc" >&6
-if test "$with_dmalloc" = yes ; then
+if test $with_dmalloc = yes ; then
 
-echo "$as_me:3717: checking for dmalloc_debug in -ldmalloc" >&5
+echo "$as_me:4082: checking for dmalloc_debug in -ldmalloc" >&5
 echo $ECHO_N "checking for dmalloc_debug in -ldmalloc... $ECHO_C" >&6
 if test "${ac_cv_lib_dmalloc_dmalloc_debug+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3722,7 +4087,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldmalloc  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 3725 "configure"
+#line 4090 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -3741,16 +4106,16 @@ dmalloc_debug ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3744: \"$ac_link\"") >&5
+if { (eval echo "$as_me:4109: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:3747: \$? = $ac_status" >&5
+  echo "$as_me:4112: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:3750: \"$ac_try\"") >&5
+  { (eval echo "$as_me:4115: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:3753: \$? = $ac_status" >&5
+  echo "$as_me:4118: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_dmalloc_dmalloc_debug=yes
 else
@@ -3761,7 +4126,7 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:3764: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5
+echo "$as_me:4129: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5
 echo "${ECHO_T}$ac_cv_lib_dmalloc_dmalloc_debug" >&6
 if test $ac_cv_lib_dmalloc_dmalloc_debug = yes; then
   cat >>confdefs.h <<EOF
@@ -3775,7 +4140,7 @@ fi
 fi
 
 SHLIB_LIST=""
-echo "$as_me:3778: checking if you want to link with the gpm mouse library" >&5
+echo "$as_me:4143: checking if you want to link with the gpm mouse library" >&5
 echo $ECHO_N "checking if you want to link with the gpm mouse library... $ECHO_C" >&6
 
 # Check whether --with-gpm or --without-gpm was given.
@@ -3785,10 +4150,10 @@ if test "${with_gpm+set}" = set; then
 else
   with_gpm=no
 fi;
-echo "$as_me:3788: result: $with_gpm" >&5
+echo "$as_me:4153: result: $with_gpm" >&5
 echo "${ECHO_T}$with_gpm" >&6
 if test "$with_gpm" = yes ; then
-       echo "$as_me:3791: checking for Gpm_Open in -lgpm" >&5
+       echo "$as_me:4156: checking for Gpm_Open in -lgpm" >&5
 echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6
 if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3796,7 +4161,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lgpm  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 3799 "configure"
+#line 4164 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -3815,16 +4180,16 @@ Gpm_Open ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3818: \"$ac_link\"") >&5
+if { (eval echo "$as_me:4183: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:3821: \$? = $ac_status" >&5
+  echo "$as_me:4186: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:3824: \"$ac_try\"") >&5
+  { (eval echo "$as_me:4189: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:3827: \$? = $ac_status" >&5
+  echo "$as_me:4192: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_gpm_Gpm_Open=yes
 else
@@ -3835,7 +4200,7 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:3838: result: $ac_cv_lib_gpm_Gpm_Open" >&5
+echo "$as_me:4203: result: $ac_cv_lib_gpm_Gpm_Open" >&5
 echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6
 if test $ac_cv_lib_gpm_Gpm_Open = yes; then
 
@@ -3848,23 +4213,23 @@ EOF
 for ac_header in gpm.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:3851: checking for $ac_header" >&5
+echo "$as_me:4216: checking for $ac_header" >&5
 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
 if eval "test \"\${$as_ac_Header+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 3857 "configure"
+#line 4222 "configure"
 #include "confdefs.h"
 #include <$ac_header>
 _ACEOF
-if { (eval echo "$as_me:3861: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:4226: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:3867: \$? = $ac_status" >&5
+  echo "$as_me:4232: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -3883,7 +4248,7 @@ else
 fi
 rm -f conftest.err conftest.$ac_ext
 fi
-echo "$as_me:3886: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "$as_me:4251: result: `eval echo '${'$as_ac_Header'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
 if test `eval echo '${'$as_ac_Header'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -3894,12 +4259,76 @@ fi
 done
 
 else
-  { echo "$as_me:3897: WARNING: Cannot link with gpm library - read the FAQ" >&5
+  { echo "$as_me:4262: WARNING: Cannot link with gpm library - read the FAQ" >&5
 echo "$as_me: WARNING: Cannot link with gpm library - read the FAQ" >&2;}
 fi
 
 fi
 
+# not everyone has "test -c"
+if test -c /dev/sysmouse 2>/dev/null ; then
+echo "$as_me:4270: checking if you want to use sysmouse" >&5
+echo $ECHO_N "checking if you want to use sysmouse... $ECHO_C" >&6
+
+# Check whether --with-sysmouse or --without-sysmouse was given.
+if test "${with_sysmouse+set}" = set; then
+  withval="$with_sysmouse"
+  cf_with_sysmouse=$withval
+else
+  cf_with_sysmouse=maybe
+fi;
+       if test "$cf_with_sysmouse" != no ; then
+       cat >conftest.$ac_ext <<_ACEOF
+#line 4282 "configure"
+#include "confdefs.h"
+
+#include <osreldate.h>
+#if (__FreeBSD_version >= 400017)
+#include <sys/consio.h>
+#include <sys/fbio.h>
+#else
+#include <machine/console.h>
+#endif
+
+int
+main ()
+{
+
+       struct mouse_info the_mouse;
+       ioctl(0, CONS_MOUSECTL, &the_mouse);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:4305: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:4308: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:4311: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4314: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_with_sysmouse=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_with_sysmouse=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+       fi
+echo "$as_me:4324: result: $cf_with_sysmouse" >&5
+echo "${ECHO_T}$cf_with_sysmouse" >&6
+test "$cf_with_sysmouse" = yes && cat >>confdefs.h <<\EOF
+#define USE_SYSMOUSE 1
+EOF
+
+fi
+
 if test X"$CC_G_OPT" = X"" ; then
        CC_G_OPT='-g'
        test -n "$GCC" && test "${ac_cv_prog_cc_g}" != yes && CC_G_OPT=''
@@ -3910,7 +4339,7 @@ if test X"$CXX_G_OPT" = X"" ; then
        test -n "$GXX" && test "${ac_cv_prog_cxx_g}" != yes && CXX_G_OPT=''
 fi
 
-echo "$as_me:3913: checking for default loader flags" >&5
+echo "$as_me:4342: checking for default loader flags" >&5
 echo $ECHO_N "checking for default loader flags... $ECHO_C" >&6
 case $DFT_LWR_MODEL in
 libtool) LD_MODEL=''   ;;
@@ -3919,10 +4348,10 @@ debug)   LD_MODEL=$CC_G_OPT ;;
 profile) LD_MODEL='-pg';;
 shared)  LD_MODEL=''   ;;
 esac
-echo "$as_me:3922: result: $LD_MODEL" >&5
+echo "$as_me:4351: result: $LD_MODEL" >&5
 echo "${ECHO_T}$LD_MODEL" >&6
 
-echo "$as_me:3925: checking if rpath option should be used" >&5
+echo "$as_me:4354: checking if rpath option should be used" >&5
 echo $ECHO_N "checking if rpath option should be used... $ECHO_C" >&6
 
 # Check whether --enable-rpath or --disable-rpath was given.
@@ -3932,7 +4361,7 @@ if test "${enable_rpath+set}" = set; then
 else
   cf_cv_ld_rpath=no
 fi;
-echo "$as_me:3935: result: $cf_cv_ld_rpath" >&5
+echo "$as_me:4364: result: $cf_cv_ld_rpath" >&5
 echo "${ECHO_T}$cf_cv_ld_rpath" >&6
 
        LOCAL_LDFLAGS=
@@ -3942,7 +4371,7 @@ echo "${ECHO_T}$cf_cv_ld_rpath" >&6
 
        cf_cv_do_symlinks=no
 
-       echo "$as_me:3945: checking if release/abi version should be used for shared libs" >&5
+       echo "$as_me:4374: checking if release/abi version should be used for shared libs" >&5
 echo $ECHO_N "checking if release/abi version should be used for shared libs... $ECHO_C" >&6
 
 # Check whether --with-shlib-version or --without-shlib-version was given.
@@ -3957,7 +4386,7 @@ if test "${with_shlib_version+set}" = set; then
                cf_cv_shlib_version=$withval
                ;;
        *)
-               { { echo "$as_me:3960: error: option value must be one of: rel, abi, auto or no" >&5
+               { { echo "$as_me:4389: error: option value must be one of: rel, abi, auto or no" >&5
 echo "$as_me: error: option value must be one of: rel, abi, auto or no" >&2;}
    { (exit 1); exit 1; }; }
                ;;
@@ -3966,7 +4395,7 @@ echo "$as_me: error: option value must be one of: rel, abi, auto or no" >&2;}
 else
   cf_cv_shlib_version=auto
 fi;
-       echo "$as_me:3969: result: $cf_cv_shlib_version" >&5
+       echo "$as_me:4398: result: $cf_cv_shlib_version" >&5
 echo "${ECHO_T}$cf_cv_shlib_version" >&6
 
        cf_cv_rm_so_locs=no
@@ -3975,14 +4404,14 @@ echo "${ECHO_T}$cf_cv_shlib_version" >&6
        CC_SHARED_OPTS=
        if test "$GCC" = yes
        then
-               echo "$as_me:3978: checking which $CC option to use" >&5
+               echo "$as_me:4407: checking which $CC option to use" >&5
 echo $ECHO_N "checking which $CC option to use... $ECHO_C" >&6
                cf_save_CFLAGS="$CFLAGS"
                for CC_SHARED_OPTS in -fPIC -fpic ''
                do
                        CFLAGS="$cf_save_CFLAGS $CC_SHARED_OPTS"
                        cat >conftest.$ac_ext <<_ACEOF
-#line 3985 "configure"
+#line 4414 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int
@@ -3994,16 +4423,16 @@ int x = 1
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:3997: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:4426: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:4000: \$? = $ac_status" >&5
+  echo "$as_me:4429: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:4003: \"$ac_try\"") >&5
+  { (eval echo "$as_me:4432: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:4006: \$? = $ac_status" >&5
+  echo "$as_me:4435: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   break
 else
@@ -4012,7 +4441,7 @@ cat conftest.$ac_ext >&5
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
                done
-               echo "$as_me:4015: result: $CC_SHARED_OPTS" >&5
+               echo "$as_me:4444: result: $CC_SHARED_OPTS" >&5
 echo "${ECHO_T}$CC_SHARED_OPTS" >&6
                CFLAGS="$cf_save_CFLAGS"
        fi
@@ -4061,7 +4490,7 @@ echo "${ECHO_T}$CC_SHARED_OPTS" >&6
                MK_SHARED_LIB='$(LD) -shared -rdata_shared -soname `basename $@` -o $@'
                cf_cv_rm_so_locs=yes
                ;;
-       linux*|gnu*)
+       linux*|gnu*|k*bsd*-gnu)
                if test "$DFT_LWR_MODEL" = "shared" ; then
                        LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
                        LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
@@ -4077,6 +4506,23 @@ echo "${ECHO_T}$CC_SHARED_OPTS" >&6
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
                MK_SHARED_LIB='$(LD) -Bshareable -soname,`basename $@.$(ABI_VERSION)` -o $@'
                ;;
+       freebsd[45]*)
+               CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
+               MK_SHARED_LIB='$(LD) -Bshareable -soname=`basename $@` -o $@'
+               test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
+
+# This doesn't work - I keep getting spurious references to needing
+# libncurses.so.5.3 when ldd says it's resolved.  LOCAL_LDFLAGS2 seems to be
+# no longer used anyway.  And the rpath logic isn't relative - so I have to
+# add the local and install lib-directories:
+#
+#              if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then
+#                      LOCAL_LDFLAGS="-rpath `pwd`/lib"
+#                      LOCAL_LDFLAGS2="-rpath \$(libdir) $LOCAL_LDFLAGS"
+#                      cf_ld_rpath_opt="-rpath "
+#                      EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS"
+#              fi
+               ;;
        openbsd*|freebsd*)
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
                MK_SHARED_LIB='$(LD) -Bshareable -o $@'
@@ -4122,7 +4568,7 @@ echo "${ECHO_T}$CC_SHARED_OPTS" >&6
                ;;
        sco3.2v5*)  # (also uw2* and UW7) hops 13-Apr-98
                # tested with osr5.0.5
-               if test "$ac_cv_c_compiler_gnu" != yes; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-belf -KPIC'
                fi
                MK_SHARED_LIB='$(LD) -dy -G -h `basename $@ .$(REL_VERSION)`.$(ABI_VERSION) -o $@'
@@ -4136,7 +4582,7 @@ echo "${ECHO_T}$CC_SHARED_OPTS" >&6
                ;;
        sunos4*)
                # tested with SunOS 4.1.1 and gcc 2.7.0
-               if test "$ac_cv_c_compiler_gnu" != yes; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -assert pure-text -o $@'
@@ -4144,7 +4590,7 @@ echo "${ECHO_T}$CC_SHARED_OPTS" >&6
                ;;
        solaris2*)
                # tested with SunOS 5.5.1 (solaris 2.5.1) and gcc 2.7.2
-               if test "$ac_cv_c_compiler_gnu" != yes; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -dy -G -h `basename $@ .$(REL_VERSION)`.$(ABI_VERSION) -o $@'
@@ -4160,7 +4606,7 @@ echo "${ECHO_T}$CC_SHARED_OPTS" >&6
                ;;
        sysv5uw7*|unix_sv*)
                # tested with UnixWare 7.1.0 (gcc 2.95.2 and cc)
-               if test "$ac_cv_c_compiler_gnu" != yes; then
+               if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
                MK_SHARED_LIB='$(LD) -d y -G -o $@'
@@ -4179,7 +4625,7 @@ echo "${ECHO_T}$CC_SHARED_OPTS" >&6
                        test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes
                        ;;
                *)
-                       { echo "$as_me:4182: WARNING: ignored --with-shlib-version" >&5
+                       { echo "$as_me:4628: WARNING: ignored --with-shlib-version" >&5
 echo "$as_me: WARNING: ignored --with-shlib-version" >&2;}
                        ;;
                esac
@@ -4187,12 +4633,12 @@ echo "$as_me: WARNING: ignored --with-shlib-version" >&2;}
        esac
 
        if test -n "$cf_ld_rpath_opt" ; then
-               echo "$as_me:4190: checking if we need a space after rpath option" >&5
+               echo "$as_me:4636: checking if we need a space after rpath option" >&5
 echo $ECHO_N "checking if we need a space after rpath option... $ECHO_C" >&6
                cf_save_LIBS="$LIBS"
                LIBS="$LIBS ${cf_ld_rpath_opt}$libdir"
                cat >conftest.$ac_ext <<_ACEOF
-#line 4195 "configure"
+#line 4641 "configure"
 #include "confdefs.h"
 
 int
@@ -4204,16 +4650,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:4207: \"$ac_link\"") >&5
+if { (eval echo "$as_me:4653: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:4210: \$? = $ac_status" >&5
+  echo "$as_me:4656: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:4213: \"$ac_try\"") >&5
+  { (eval echo "$as_me:4659: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:4216: \$? = $ac_status" >&5
+  echo "$as_me:4662: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_rpath_space=no
 else
@@ -4223,7 +4669,7 @@ cf_rpath_space=yes
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
                LIBS="$cf_save_LIBS"
-               echo "$as_me:4226: result: $cf_rpath_space" >&5
+               echo "$as_me:4672: result: $cf_rpath_space" >&5
 echo "${ECHO_T}$cf_rpath_space" >&6
                test "$cf_rpath_space" = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt "
                MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\$(libdir)"
@@ -4232,7 +4678,7 @@ echo "${ECHO_T}$cf_rpath_space" >&6
 if test "$CC_SHARED_OPTS" = "unknown"; then
        for model in $cf_list_models; do
                if test "$model" = "shared"; then
-                       { { echo "$as_me:4235: error: Shared libraries are not supported in this version" >&5
+                       { { echo "$as_me:4681: error: Shared libraries are not supported in this version" >&5
 echo "$as_me: error: Shared libraries are not supported in this version" >&2;}
    { (exit 1); exit 1; }; }
                fi
@@ -4242,7 +4688,7 @@ fi
 ###############################################################################
 
 ###    use option --disable-overwrite to leave out the link to -lcurses
-echo "$as_me:4245: checking if you wish to install ncurses overwriting curses" >&5
+echo "$as_me:4691: checking if you wish to install ncurses overwriting curses" >&5
 echo $ECHO_N "checking if you wish to install ncurses overwriting curses... $ECHO_C" >&6
 
 # Check whether --enable-overwrite or --disable-overwrite was given.
@@ -4252,10 +4698,10 @@ if test "${enable_overwrite+set}" = set; then
 else
   if test "$prefix" = "/usr" ; then with_overwrite=yes; else with_overwrite=no; fi
 fi;
-echo "$as_me:4255: result: $with_overwrite" >&5
+echo "$as_me:4701: result: $with_overwrite" >&5
 echo "${ECHO_T}$with_overwrite" >&6
 
-echo "$as_me:4258: checking if external terminfo-database is used" >&5
+echo "$as_me:4704: checking if external terminfo-database is used" >&5
 echo $ECHO_N "checking if external terminfo-database is used... $ECHO_C" >&6
 
 # Check whether --enable-database or --disable-database was given.
@@ -4265,7 +4711,7 @@ if test "${enable_database+set}" = set; then
 else
   use_database=yes
 fi;
-echo "$as_me:4268: result: $use_database" >&5
+echo "$as_me:4714: result: $use_database" >&5
 echo "${ECHO_T}$use_database" >&6
 
 case $host_os in #(vi
@@ -4287,7 +4733,7 @@ if test "$use_database" != no ; then
 #define USE_DATABASE 1
 EOF
 
-       echo "$as_me:4290: checking which terminfo source-file will be installed" >&5
+       echo "$as_me:4736: checking which terminfo source-file will be installed" >&5
 echo $ECHO_N "checking which terminfo source-file will be installed... $ECHO_C" >&6
 
 # Check whether --enable-database or --disable-database was given.
@@ -4295,11 +4741,11 @@ if test "${enable_database+set}" = set; then
   enableval="$enable_database"
   TERMINFO_SRC=$withval
 fi;
-       echo "$as_me:4298: result: $TERMINFO_SRC" >&5
+       echo "$as_me:4744: result: $TERMINFO_SRC" >&5
 echo "${ECHO_T}$TERMINFO_SRC" >&6
 fi
 
-echo "$as_me:4302: checking for list of fallback descriptions" >&5
+echo "$as_me:4748: checking for list of fallback descriptions" >&5
 echo $ECHO_N "checking for list of fallback descriptions... $ECHO_C" >&6
 
 # Check whether --with-fallbacks or --without-fallbacks was given.
@@ -4309,9 +4755,9 @@ if test "${with_fallbacks+set}" = set; then
 else
   with_fallback=
 fi;
-echo "$as_me:4312: result: $with_fallback" >&5
+echo "$as_me:4758: result: $with_fallback" >&5
 echo "${ECHO_T}$with_fallback" >&6
-FALLBACK_LIST=`echo $with_fallback|sed -e 's/,/ /g'`
+FALLBACK_LIST=`echo "$with_fallback" | sed -e 's/,/ /g'`
 
 MAKE_TERMINFO=
 if test "$use_database" = no ; then
@@ -4319,7 +4765,7 @@ if test "$use_database" = no ; then
        MAKE_TERMINFO="#"
 else
 
-echo "$as_me:4322: checking for list of terminfo directories" >&5
+echo "$as_me:4768: checking for list of terminfo directories" >&5
 echo $ECHO_N "checking for list of terminfo directories... $ECHO_C" >&6
 
 # Check whether --with-terminfo-dirs or --without-terminfo-dirs was given.
@@ -4353,7 +4799,7 @@ case ".$cf_src_path" in #(vi
   cf_src_path=`echo $cf_src_path | sed -e s%NONE%$ac_default_prefix%`
   ;;
 *)
-  { { echo "$as_me:4356: error: expected a pathname, not \"$cf_src_path\"" >&5
+  { { echo "$as_me:4802: error: expected a pathname, not \"$cf_src_path\"" >&5
 echo "$as_me: error: expected a pathname, not \"$cf_src_path\"" >&2;}
    { (exit 1); exit 1; }; }
   ;;
@@ -4366,13 +4812,13 @@ IFS="$ac_save_ifs"
 
 eval 'TERMINFO_DIRS="$cf_dst_path"'
 
-echo "$as_me:4369: result: $TERMINFO_DIRS" >&5
+echo "$as_me:4815: result: $TERMINFO_DIRS" >&5
 echo "${ECHO_T}$TERMINFO_DIRS" >&6
 test -n "$TERMINFO_DIRS" && cat >>confdefs.h <<EOF
 #define TERMINFO_DIRS "$TERMINFO_DIRS"
 EOF
 
-echo "$as_me:4375: checking for default terminfo directory" >&5
+echo "$as_me:4821: checking for default terminfo directory" >&5
 echo $ECHO_N "checking for default terminfo directory... $ECHO_C" >&6
 
 # Check whether --with-default-terminfo-dir or --without-default-terminfo-dir was given.
@@ -4401,7 +4847,7 @@ case ".$withval" in #(vi
   withval=`echo $withval | sed -e s%NONE%$ac_default_prefix%`
   ;;
 *)
-  { { echo "$as_me:4404: error: expected a pathname, not \"$withval\"" >&5
+  { { echo "$as_me:4850: error: expected a pathname, not \"$withval\"" >&5
 echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
    { (exit 1); exit 1; }; }
   ;;
@@ -4409,7 +4855,7 @@ esac
 
 eval TERMINFO="$withval"
 
-echo "$as_me:4412: result: $TERMINFO" >&5
+echo "$as_me:4858: result: $TERMINFO" >&5
 echo "${ECHO_T}$TERMINFO" >&6
 cat >>confdefs.h <<EOF
 #define TERMINFO "$TERMINFO"
@@ -4419,7 +4865,7 @@ fi
 
 ###    use option --disable-big-core to make tic run on small machines
 ###    We need 4Mb, check if we can allocate 50% more than that.
-echo "$as_me:4422: checking if big-core option selected" >&5
+echo "$as_me:4868: checking if big-core option selected" >&5
 echo $ECHO_N "checking if big-core option selected... $ECHO_C" >&6
 
 # Check whether --enable-big-core or --disable-big-core was given.
@@ -4431,7 +4877,7 @@ else
   with_big_core=no
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 4434 "configure"
+#line 4880 "configure"
 #include "confdefs.h"
 
 #include <stdlib.h>
@@ -4445,15 +4891,15 @@ int main() {
 }
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:4448: \"$ac_link\"") >&5
+if { (eval echo "$as_me:4894: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:4451: \$? = $ac_status" >&5
+  echo "$as_me:4897: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:4453: \"$ac_try\"") >&5
+  { (eval echo "$as_me:4899: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:4456: \$? = $ac_status" >&5
+  echo "$as_me:4902: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   with_big_core=yes
 else
@@ -4465,14 +4911,14 @@ fi
 rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
 fi;
-echo "$as_me:4468: result: $with_big_core" >&5
+echo "$as_me:4914: result: $with_big_core" >&5
 echo "${ECHO_T}$with_big_core" >&6
 test "$with_big_core" = "yes" && cat >>confdefs.h <<\EOF
 #define HAVE_BIG_CORE 1
 EOF
 
 ###    use option --enable-termcap to compile in the termcap fallback support
-echo "$as_me:4475: checking if you want termcap-fallback support" >&5
+echo "$as_me:4921: checking if you want termcap-fallback support" >&5
 echo $ECHO_N "checking if you want termcap-fallback support... $ECHO_C" >&6
 
 # Check whether --enable-termcap or --disable-termcap was given.
@@ -4482,13 +4928,13 @@ if test "${enable_termcap+set}" = set; then
 else
   with_termcap=no
 fi;
-echo "$as_me:4485: result: $with_termcap" >&5
+echo "$as_me:4931: result: $with_termcap" >&5
 echo "${ECHO_T}$with_termcap" >&6
 
 if test "$with_termcap" != "yes" ; then
        if test "$use_database" = no ; then
-               if test -z $with_fallback ; then
-                       { { echo "$as_me:4491: error: You have disabled the database w/o specifying fallbacks" >&5
+               if test -z "$with_fallback" ; then
+                       { { echo "$as_me:4937: error: You have disabled the database w/o specifying fallbacks" >&5
 echo "$as_me: error: You have disabled the database w/o specifying fallbacks" >&2;}
    { (exit 1); exit 1; }; }
                fi
@@ -4503,7 +4949,7 @@ cat >>confdefs.h <<\EOF
 #define USE_TERMCAP 1
 EOF
 
-echo "$as_me:4506: checking for list of termcap files" >&5
+echo "$as_me:4952: checking for list of termcap files" >&5
 echo $ECHO_N "checking for list of termcap files... $ECHO_C" >&6
 
 # Check whether --with-termpath or --without-termpath was given.
@@ -4537,7 +4983,7 @@ case ".$cf_src_path" in #(vi
   cf_src_path=`echo $cf_src_path | sed -e s%NONE%$ac_default_prefix%`
   ;;
 *)
-  { { echo "$as_me:4540: error: expected a pathname, not \"$cf_src_path\"" >&5
+  { { echo "$as_me:4986: error: expected a pathname, not \"$cf_src_path\"" >&5
 echo "$as_me: error: expected a pathname, not \"$cf_src_path\"" >&2;}
    { (exit 1); exit 1; }; }
   ;;
@@ -4550,14 +4996,14 @@ IFS="$ac_save_ifs"
 
 eval 'TERMPATH="$cf_dst_path"'
 
-echo "$as_me:4553: result: $TERMPATH" >&5
+echo "$as_me:4999: result: $TERMPATH" >&5
 echo "${ECHO_T}$TERMPATH" >&6
 test -n "$TERMPATH" && cat >>confdefs.h <<EOF
 #define TERMPATH "$TERMPATH"
 EOF
 
 ###    use option --enable-getcap to use a hacked getcap for reading termcaps
-echo "$as_me:4560: checking if fast termcap-loader is needed" >&5
+echo "$as_me:5006: checking if fast termcap-loader is needed" >&5
 echo $ECHO_N "checking if fast termcap-loader is needed... $ECHO_C" >&6
 
 # Check whether --enable-getcap or --disable-getcap was given.
@@ -4567,13 +5013,13 @@ if test "${enable_getcap+set}" = set; then
 else
   with_getcap=no
 fi;
-echo "$as_me:4570: result: $with_getcap" >&5
+echo "$as_me:5016: result: $with_getcap" >&5
 echo "${ECHO_T}$with_getcap" >&6
 test "$with_getcap" = "yes" && cat >>confdefs.h <<\EOF
 #define USE_GETCAP 1
 EOF
 
-echo "$as_me:4576: checking if translated termcaps will be cached in ~/.terminfo" >&5
+echo "$as_me:5022: checking if translated termcaps will be cached in ~/.terminfo" >&5
 echo $ECHO_N "checking if translated termcaps will be cached in ~/.terminfo... $ECHO_C" >&6
 
 # Check whether --enable-getcap-cache or --disable-getcap-cache was given.
@@ -4583,7 +5029,7 @@ if test "${enable_getcap_cache+set}" = set; then
 else
   with_getcap_cache=no
 fi;
-echo "$as_me:4586: result: $with_getcap_cache" >&5
+echo "$as_me:5032: result: $with_getcap_cache" >&5
 echo "${ECHO_T}$with_getcap_cache" >&6
 test "$with_getcap_cache" = "yes" && cat >>confdefs.h <<\EOF
 #define USE_GETCAP_CACHE 1
@@ -4591,6 +5037,21 @@ EOF
 
 fi
 
+###   Use option --disable-home-terminfo to completely remove ~/.terminfo
+echo "$as_me:5041: checking if ~/.terminfo is wanted" >&5
+echo $ECHO_N "checking if ~/.terminfo is wanted... $ECHO_C" >&6
+
+# Check whether --enable-home-terminfo or --disable-home-terminfo was given.
+if test "${enable_home_terminfo+set}" = set; then
+  enableval="$enable_home_terminfo"
+  with_home_terminfo=$enableval
+else
+  with_home_terminfo=yes
+fi;
+test "$with_home_terminfo" = "yes" && cat >>confdefs.h <<\EOF
+#define USE_HOME_TERMINFO 1
+EOF
+
 ###   Use option --enable-symlinks to make tic use symlinks, not hard links
 ###   to reduce storage requirements for the terminfo database.
 
@@ -4599,13 +5060,13 @@ for ac_func in \
        unlink
 do
 as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:4602: checking for $ac_func" >&5
+echo "$as_me:5063: checking for $ac_func" >&5
 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
 if eval "test \"\${$as_ac_var+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 4608 "configure"
+#line 5069 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func (); below.  */
@@ -4636,16 +5097,16 @@ f = $ac_func;
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:4639: \"$ac_link\"") >&5
+if { (eval echo "$as_me:5100: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:4642: \$? = $ac_status" >&5
+  echo "$as_me:5103: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:4645: \"$ac_try\"") >&5
+  { (eval echo "$as_me:5106: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:4648: \$? = $ac_status" >&5
+  echo "$as_me:5109: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   eval "$as_ac_var=yes"
 else
@@ -4655,7 +5116,7 @@ eval "$as_ac_var=no"
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-echo "$as_me:4658: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "$as_me:5119: result: `eval echo '${'$as_ac_var'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
 if test `eval echo '${'$as_ac_var'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -4665,20 +5126,20 @@ EOF
 fi
 done
 
-if test "$ac_cv_prog_cc_cross" = yes ; then
+if test "$cross_compiling" = yes ; then
 
 for ac_func in \
                link \
                symlink
 do
 as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:4675: checking for $ac_func" >&5
+echo "$as_me:5136: checking for $ac_func" >&5
 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
 if eval "test \"\${$as_ac_var+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 4681 "configure"
+#line 5142 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func (); below.  */
@@ -4709,16 +5170,16 @@ f = $ac_func;
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:4712: \"$ac_link\"") >&5
+if { (eval echo "$as_me:5173: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:4715: \$? = $ac_status" >&5
+  echo "$as_me:5176: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:4718: \"$ac_try\"") >&5
+  { (eval echo "$as_me:5179: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:4721: \$? = $ac_status" >&5
+  echo "$as_me:5182: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   eval "$as_ac_var=yes"
 else
@@ -4728,7 +5189,7 @@ eval "$as_ac_var=no"
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-echo "$as_me:4731: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "$as_me:5192: result: `eval echo '${'$as_ac_var'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
 if test `eval echo '${'$as_ac_var'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -4739,7 +5200,7 @@ fi
 done
 
 else
-       echo "$as_me:4742: checking if link/symlink functions work" >&5
+       echo "$as_me:5203: checking if link/symlink functions work" >&5
 echo $ECHO_N "checking if link/symlink functions work... $ECHO_C" >&6
 if test "${cf_cv_link_funcs+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -4752,7 +5213,7 @@ else
                        eval 'ac_cv_func_'$cf_func'=error'
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 4755 "configure"
+#line 5216 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -4782,15 +5243,15 @@ int main()
 
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:4785: \"$ac_link\"") >&5
+if { (eval echo "$as_me:5246: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:4788: \$? = $ac_status" >&5
+  echo "$as_me:5249: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:4790: \"$ac_try\"") >&5
+  { (eval echo "$as_me:5251: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:4793: \$? = $ac_status" >&5
+  echo "$as_me:5254: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
 
                        cf_cv_link_funcs="$cf_cv_link_funcs $cf_func"
@@ -4808,7 +5269,7 @@ fi
                test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no
 
 fi
-echo "$as_me:4811: result: $cf_cv_link_funcs" >&5
+echo "$as_me:5272: result: $cf_cv_link_funcs" >&5
 echo "${ECHO_T}$cf_cv_link_funcs" >&6
        test "$ac_cv_func_link"    = yes && cat >>confdefs.h <<\EOF
 #define HAVE_LINK 1
@@ -4824,27 +5285,27 @@ with_links=no
 with_symlinks=no
 
 if test "$ac_cv_func_link" != yes ; then
-    echo "$as_me:4827: checking if tic should use symbolic links" >&5
+    echo "$as_me:5288: checking if tic should use symbolic links" >&5
 echo $ECHO_N "checking if tic should use symbolic links... $ECHO_C" >&6
     if test "$ac_cv_func_symlink" = yes ; then
        with_symlinks=yes
     else
        with_symlinks=no
     fi
-    echo "$as_me:4834: result: $with_symlinks" >&5
+    echo "$as_me:5295: result: $with_symlinks" >&5
 echo "${ECHO_T}$with_symlinks" >&6
 elif test "$ac_cv_func_symlink" != yes ; then
-    echo "$as_me:4837: checking if tic should use hard links" >&5
+    echo "$as_me:5298: checking if tic should use hard links" >&5
 echo $ECHO_N "checking if tic should use hard links... $ECHO_C" >&6
     if test "$ac_cv_func_link" = yes ; then
        with_links=yes
     else
        with_links=no
     fi
-    echo "$as_me:4844: result: $with_links" >&5
+    echo "$as_me:5305: result: $with_links" >&5
 echo "${ECHO_T}$with_links" >&6
 else
-    echo "$as_me:4847: checking if tic should use symbolic links" >&5
+    echo "$as_me:5308: checking if tic should use symbolic links" >&5
 echo $ECHO_N "checking if tic should use symbolic links... $ECHO_C" >&6
 
 # Check whether --enable-symlinks or --disable-symlinks was given.
@@ -4854,7 +5315,7 @@ if test "${enable_symlinks+set}" = set; then
 else
   with_symlinks=no
 fi;
-    echo "$as_me:4857: result: $with_symlinks" >&5
+    echo "$as_me:5318: result: $with_symlinks" >&5
 echo "${ECHO_T}$with_symlinks" >&6
 fi
 
@@ -4867,7 +5328,7 @@ test "$with_symlinks" = yes && cat >>confdefs.h <<\EOF
 EOF
 
 ###   use option --enable-broken-linker to force on use of broken-linker support
-echo "$as_me:4870: checking if you want broken-linker support code" >&5
+echo "$as_me:5331: checking if you want broken-linker support code" >&5
 echo $ECHO_N "checking if you want broken-linker support code... $ECHO_C" >&6
 
 # Check whether --enable-broken_linker or --disable-broken_linker was given.
@@ -4875,9 +5336,9 @@ if test "${enable_broken_linker+set}" = set; then
   enableval="$enable_broken_linker"
   with_broken_linker=$enableval
 else
-  with_broken_linker=$BROKEN_LINKER
+  with_broken_linker=${BROKEN_LINKER-no}
 fi;
-echo "$as_me:4880: result: $with_broken_linker" >&5
+echo "$as_me:5341: result: $with_broken_linker" >&5
 echo "${ECHO_T}$with_broken_linker" >&6
 
 BROKEN_LINKER=0
@@ -4887,7 +5348,7 @@ if test "$with_broken_linker" = yes ; then
 EOF
 
        BROKEN_LINKER=1
-elif test $DFT_LWR_MODEL = shared ; then
+elif test "$DFT_LWR_MODEL" = shared ; then
        case $cf_cv_system_name in #(vi
        cygwin*)
                cat >>confdefs.h <<\EOF
@@ -4902,7 +5363,7 @@ EOF
 fi
 
 ###   use option --with-bool to override bool's type
-echo "$as_me:4905: checking for type of bool" >&5
+echo "$as_me:5366: checking for type of bool" >&5
 echo $ECHO_N "checking for type of bool... $ECHO_C" >&6
 
 # Check whether --with-bool or --without-bool was given.
@@ -4912,11 +5373,11 @@ if test "${with_bool+set}" = set; then
 else
   NCURSES_BOOL=auto
 fi;
-echo "$as_me:4915: result: $NCURSES_BOOL" >&5
+echo "$as_me:5376: result: $NCURSES_BOOL" >&5
 echo "${ECHO_T}$NCURSES_BOOL" >&6
 
 ###   use option --with-ospeed to override ospeed's type
-echo "$as_me:4919: checking for type of ospeed" >&5
+echo "$as_me:5380: checking for type of ospeed" >&5
 echo $ECHO_N "checking for type of ospeed... $ECHO_C" >&6
 
 # Check whether --with-ospeed or --without-ospeed was given.
@@ -4926,11 +5387,11 @@ if test "${with_ospeed+set}" = set; then
 else
   NCURSES_OSPEED=short
 fi;
-echo "$as_me:4929: result: $NCURSES_OSPEED" >&5
+echo "$as_me:5390: result: $NCURSES_OSPEED" >&5
 echo "${ECHO_T}$NCURSES_OSPEED" >&6
 
 ###   use option --enable-bsdpad to have tputs process BSD-style prefix padding
-echo "$as_me:4933: checking if tputs should process BSD-style prefix padding" >&5
+echo "$as_me:5394: checking if tputs should process BSD-style prefix padding" >&5
 echo $ECHO_N "checking if tputs should process BSD-style prefix padding... $ECHO_C" >&6
 
 # Check whether --enable-bsdpad or --disable-bsdpad was given.
@@ -4940,14 +5401,14 @@ if test "${enable_bsdpad+set}" = set; then
 else
   with_bsdpad=no
 fi;
-echo "$as_me:4943: result: $with_bsdpad" >&5
+echo "$as_me:5404: result: $with_bsdpad" >&5
 echo "${ECHO_T}$with_bsdpad" >&6
 test "$with_bsdpad" = yes && cat >>confdefs.h <<\EOF
 #define BSD_TPUTS 1
 EOF
 
 ### Enable compiling-in rcs id's
-echo "$as_me:4950: checking if RCS identifiers should be compiled-in" >&5
+echo "$as_me:5411: checking if RCS identifiers should be compiled-in" >&5
 echo $ECHO_N "checking if RCS identifiers should be compiled-in... $ECHO_C" >&6
 
 # Check whether --with-rcs-ids or --without-rcs-ids was given.
@@ -4957,7 +5418,7 @@ if test "${with_rcs_ids+set}" = set; then
 else
   with_rcs_ids=no
 fi;
-echo "$as_me:4960: result: $with_rcs_ids" >&5
+echo "$as_me:5421: result: $with_rcs_ids" >&5
 echo "${ECHO_T}$with_rcs_ids" >&6
 test "$with_rcs_ids" = yes && cat >>confdefs.h <<\EOF
 #define USE_RCS_IDS 1
@@ -4965,7 +5426,7 @@ EOF
 
 ###############################################################################
 
-echo "$as_me:4968: checking format of man-pages" >&5
+echo "$as_me:5429: checking format of man-pages" >&5
 echo $ECHO_N "checking format of man-pages... $ECHO_C" >&6
 
 # Check whether --with-manpage-format or --without-manpage-format was given.
@@ -4976,47 +5437,92 @@ else
   MANPAGE_FORMAT=unknown
 fi;
 
-case ".$MANPAGE_FORMAT" in
-.gzip|.compress|.BSDI|.normal|.formatted) # (vi
-  ;;
-.unknown|.) # (vi
+test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=unknown
+MANPAGE_FORMAT=`echo "$MANPAGE_FORMAT" | sed -e 's/,/ /g'`
+
+cf_unknown=
+
+case $MANPAGE_FORMAT in
+unknown)
   if test -z "$MANPATH" ; then
     MANPATH="/usr/man:/usr/share/man"
   fi
+
   # look for the 'date' man-page (it's most likely to be installed!)
+  MANPAGE_FORMAT=
+  cf_preform=no
+  cf_catonly=yes
+  cf_example=date
+
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATHSEP}"
-  MANPAGE_FORMAT=unknown
   for cf_dir in $MANPATH; do
     test -z "$cf_dir" && cf_dir=/usr/man
-    for cf_name in $cf_dir/*/date.[01]* $cf_dir/*/date
+    for cf_name in $cf_dir/man*/$cf_example.[01]* $cf_dir/cat*/$cf_example.[01]* $cf_dir/man*/$cf_example $cf_dir/cat*/$cf_example
     do
-       cf_test=`echo $cf_name | sed -e 's/*//'`
-       if test "x$cf_test" = "x$cf_name" ; then
-         case "$cf_name" in
-         *.gz) MANPAGE_FORMAT=gzip;;
-         *.Z)  MANPAGE_FORMAT=compress;;
-         *.0)  MANPAGE_FORMAT=BSDI,formatted;;
-         *)    MANPAGE_FORMAT=normal;;
-         esac
-         break
-       fi
+      cf_test=`echo $cf_name | sed -e 's/*//'`
+      if test "x$cf_test" = "x$cf_name" ; then
+
+       case "$cf_name" in
+       *.gz) MANPAGE_FORMAT="$MANPAGE_FORMAT gzip";;
+       *.Z)  MANPAGE_FORMAT="$MANPAGE_FORMAT compress";;
+       *.0)    MANPAGE_FORMAT="$MANPAGE_FORMAT BSDI";;
+       *)    MANPAGE_FORMAT="$MANPAGE_FORMAT normal";;
+       esac
+
+       case "$cf_name" in
+       $cf_dir/man*)
+         cf_catonly=no
+         ;;
+       $cf_dir/cat*)
+         cf_preform=yes
+         ;;
+       esac
+       break
+      fi
+
+      # if we found a match in either man* or cat*, stop looking
+      if test -n "$MANPAGE_FORMAT" ; then
+       cf_found=no
+       test "$cf_preform" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT formatted"
+       test "$cf_catonly" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT catonly"
+       case "$cf_name" in
+       $cf_dir/cat*)
+         cf_found=yes
+         ;;
+       esac
+       test $cf_found=yes && break
+      fi
     done
-    if test "$MANPAGE_FORMAT" != "unknown" ; then
+    # only check the first directory in $MANPATH where we find manpages
+    if test -n "$MANPAGE_FORMAT" ; then
        break
     fi
   done
+  # if we did not find the example, just assume it is normal
+  test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=normal
   IFS="$ac_save_ifs"
   ;;
-.*) # (vi
-  { echo "$as_me:5011: WARNING: Unexpected manpage-format" >&5
-echo "$as_me: WARNING: Unexpected manpage-format" >&2;}
+*)
+  for cf_option in $MANPAGE_FORMAT; do
+     case $cf_option in #(vi
+     gzip|compress|BSDI|normal|formatted|catonly)
+       ;;
+     *)
+       cf_unknown="$cf_unknown $cf_option"
+       ;;
+     esac
+  done
   ;;
 esac
 
-echo "$as_me:5016: result: $MANPAGE_FORMAT" >&5
+echo "$as_me:5518: result: $MANPAGE_FORMAT" >&5
 echo "${ECHO_T}$MANPAGE_FORMAT" >&6
+if test -n "$cf_unknown" ; then
+  { echo "$as_me:5521: WARNING: Unexpected manpage-format $cf_unknown" >&5
+echo "$as_me: WARNING: Unexpected manpage-format $cf_unknown" >&2;}
+fi
 
-echo "$as_me:5019: checking for manpage renaming" >&5
+echo "$as_me:5525: checking for manpage renaming" >&5
 echo $ECHO_N "checking for manpage renaming... $ECHO_C" >&6
 
 # Check whether --with-manpage-renames or --without-manpage-renames was given.
@@ -5044,7 +5550,7 @@ if test "$MANPAGE_RENAMES" != no ; then
   if test -f $srcdir/man/$MANPAGE_RENAMES ; then
     MANPAGE_RENAMES=`cd $srcdir/man && pwd`/$MANPAGE_RENAMES
   elif test ! -f $MANPAGE_RENAMES ; then
-    { { echo "$as_me:5047: error: not a filename: $MANPAGE_RENAMES" >&5
+    { { echo "$as_me:5553: error: not a filename: $MANPAGE_RENAMES" >&5
 echo "$as_me: error: not a filename: $MANPAGE_RENAMES" >&2;}
    { (exit 1); exit 1; }; }
   fi
@@ -5058,24 +5564,55 @@ echo "$as_me: error: not a filename: $MANPAGE_RENAMES" >&2;}
   fi
 fi
 
-echo "$as_me:5061: result: $MANPAGE_RENAMES" >&5
+echo "$as_me:5567: result: $MANPAGE_RENAMES" >&5
 echo "${ECHO_T}$MANPAGE_RENAMES" >&6
 
-echo "$as_me:5064: checking for manpage symlinks" >&5
-echo $ECHO_N "checking for manpage symlinks... $ECHO_C" >&6
+echo "$as_me:5570: checking if manpage aliases will be installed" >&5
+echo $ECHO_N "checking if manpage aliases will be installed... $ECHO_C" >&6
+
+# Check whether --with-manpage-aliases or --without-manpage-aliases was given.
+if test "${with_manpage_aliases+set}" = set; then
+  withval="$with_manpage_aliases"
+  MANPAGE_ALIASES=$withval
+else
+  MANPAGE_ALIASES=yes
+fi;
+
+echo "$as_me:5581: result: $MANPAGE_ALIASES" >&5
+echo "${ECHO_T}$MANPAGE_ALIASES" >&6
+
+if test "$LN_S" = "ln -s"; then
+       cf_use_symlinks=yes
+else
+       cf_use_symlinks=no
+fi
+
+MANPAGE_SYMLINKS=no
+if test "$MANPAGE_ALIASES" = yes ; then
+echo "$as_me:5592: checking if manpage symlinks should be used" >&5
+echo $ECHO_N "checking if manpage symlinks should be used... $ECHO_C" >&6
 
 # Check whether --with-manpage-symlinks or --without-manpage-symlinks was given.
 if test "${with_manpage_symlinks+set}" = set; then
   withval="$with_manpage_symlinks"
   MANPAGE_SYMLINKS=$withval
 else
-  MANPAGE_SYMLINKS=yes
+  MANPAGE_SYMLINKS=$cf_use_symlinks
 fi;
 
-echo "$as_me:5075: result: $MANPAGE_SYMLINKS" >&5
+if test "$$cf_use_symlinks" = no; then
+if test "$MANPAGE_SYMLINKS" = yes ; then
+       { echo "$as_me:5605: WARNING: cannot make symlinks" >&5
+echo "$as_me: WARNING: cannot make symlinks" >&2;}
+       MANPAGE_SYMLINKS=no
+fi
+fi
+
+echo "$as_me:5611: result: $MANPAGE_SYMLINKS" >&5
 echo "${ECHO_T}$MANPAGE_SYMLINKS" >&6
+fi
 
-echo "$as_me:5078: checking for manpage tbl" >&5
+echo "$as_me:5615: checking for manpage tbl" >&5
 echo $ECHO_N "checking for manpage tbl... $ECHO_C" >&6
 
 # Check whether --with-manpage-tbl or --without-manpage-tbl was given.
@@ -5086,7 +5623,7 @@ else
   MANPAGE_TBL=no
 fi;
 
-echo "$as_me:5089: result: $MANPAGE_TBL" >&5
+echo "$as_me:5626: result: $MANPAGE_TBL" >&5
 echo "${ECHO_T}$MANPAGE_TBL" >&6
 
   if test "$prefix" = "NONE" ; then
@@ -5096,20 +5633,40 @@ echo "${ECHO_T}$MANPAGE_TBL" >&6
   fi
 
   case "$MANPAGE_FORMAT" in # (vi
+  *catonly*) # (vi
+    cf_format=yes
+    cf_inboth=no
+    ;;
   *formatted*) # (vi
-    cf_subdir='$mandir/cat'
     cf_format=yes
+    cf_inboth=yes
     ;;
   *)
-    cf_subdir='$mandir/man'
     cf_format=no
+    cf_inboth=no
     ;;
   esac
 
 test ! -d man && mkdir man
-cat >man/edit_man.sh <<CF_EOF
+
+cf_so_strip=
+cf_compress=
+case "$MANPAGE_FORMAT" in #(vi
+*compress*) #(vi
+       cf_so_strip="Z"
+       cf_compress=compress
+  ;;
+*gzip*) #(vi
+       cf_so_strip="gz"
+       cf_compress=gzip
+  ;;
+esac
+
+cf_edit_man=man/edit_man.sh
+
+cat >$cf_edit_man <<CF_EOF
 #! /bin/sh
-# this script is generated by the configure-script
+# this script is generated by the configure-script CF_MAN_PAGES macro.
 prefix="$cf_prefix"
 datadir="$datadir"
 NCURSES_OSPEED="$NCURSES_OSPEED"
@@ -5122,23 +5679,41 @@ transform="$program_transform_name"
 TMP=\${TMPDIR-/tmp}/man\$\$
 trap "rm -f \$TMP" 0 1 2 5 15
 
+form=\$1
+shift || exit 1
+
 verb=\$1
-shift
+shift || exit 1
 
 mandir=\$1
-shift
+shift || exit 1
 
 srcdir=\$1
-shift
+shift || exit 1
+
+if test "\$form" = normal ; then
+       if test "$cf_format" = yes ; then
+       if test "$cf_inboth" = no ; then
+               sh \$0 format \$verb \$mandir \$srcdir \$*
+               exit $?
+       fi
+       fi
+       cf_subdir=\$mandir/man
+       cf_tables=$MANPAGE_TBL
+else
+       cf_subdir=\$mandir/cat
+       cf_tables=yes
+fi
 
+# process the list of source-files
 for i in \$* ; do
 case \$i in #(vi
 *.orig|*.rej) ;; #(vi
 *.[0-9]*)
        section=\`expr "\$i" : '.*\\.\\([0-9]\\)[xm]*'\`;
        if test \$verb = installing ; then
-       if test ! -d $cf_subdir\${section} ; then
-               \$MKDIRS $cf_subdir\$section
+       if test ! -d \$cf_subdir\${section} ; then
+               \$MKDIRS \$cf_subdir\$section
        fi
        fi
        aliases=
@@ -5150,29 +5725,30 @@ case \$i in #(vi
                continue
        fi
 CF_EOF
-if test "$MANPAGE_SYMLINKS" = yes ; then
-cat >>man/edit_man.sh <<CF_EOF
+
+if test "$MANPAGE_ALIASES" != no ; then
+cat >>$cf_edit_man <<CF_EOF
        aliases=\`sed -f \$srcdir/manlinks.sed \$inalias | sort -u\`
 CF_EOF
 fi
 
 if test "$MANPAGE_RENAMES" = no ; then
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        # perform program transformations for section 1 man pages
        if test \$section = 1 ; then
-               target=$cf_subdir\${section}/\`echo \$source|sed "\${transform}"\`
+               target=\$cf_subdir\${section}/\`echo \$source|sed "\${transform}"\`
        else
-               target=$cf_subdir\${section}/\$source
+               target=\$cf_subdir\${section}/\$source
        fi
 CF_EOF
 else
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        target=\`grep "^\$source" $MANPAGE_RENAMES | $AWK '{print \$2}'\`
        if test -z "\$target" ; then
                echo '? missing rename for '\$source
                target="\$source"
        fi
-       target="$cf_subdir\${section}/\${target}"
+       target="\$cf_subdir\${section}/\${target}"
 CF_EOF
 fi
 
@@ -5180,12 +5756,12 @@ fi
 
        for cf_name in  captoinfo clear infocmp infotocap tic toe tput
        do
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        prog_$cf_name=\`echo $cf_name|sed "\${transform}"\`
 CF_EOF
        done
 
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        sed     -e "s,@DATADIR@,\$datadir," \\
                -e "s,@TERMINFO@,\$TERMINFO," \\
                -e "s,@NCURSES_OSPEED@,\$NCURSES_OSPEED," \\
@@ -5194,75 +5770,74 @@ CF_EOF
        for cf_name in  captoinfo clear infocmp infotocap tic toe tput
        do
                cf_NAME=`echo "$cf_name" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
                -e "s,@$cf_NAME@,\$prog_$cf_name," \\
 CF_EOF
        done
 
 if test -f $MANPAGE_RENAMES ; then
-cat >>man/edit_man.sh <<CF_EOF
-               < \$i | sed -f edit_man.sed >\$TMP
+cat >>$cf_edit_man <<CF_EOF
+               < \$i | sed -f $srcdir/edit_man.sed >\$TMP
 CF_EOF
 else
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
                < \$i >\$TMP
 CF_EOF
 fi
-if test $MANPAGE_TBL = yes ; then
-cat >>man/edit_man.sh <<CF_EOF
+
+cat >>$cf_edit_man <<CF_EOF
+if test \$cf_tables = yes ; then
        tbl \$TMP >\$TMP.out
        mv \$TMP.out \$TMP
-CF_EOF
 fi
+CF_EOF
+
 if test $with_curses_h != yes ; then
-cat >>man/edit_man.sh <<CF_EOF
+cat >>$cf_edit_man <<CF_EOF
        sed -e "/\#[    ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
        mv \$TMP.out \$TMP
 CF_EOF
 fi
-if test $cf_format = yes ; then
-cat >>man/edit_man.sh <<CF_EOF
-       nroff -man \$TMP >\$TMP.out
-       mv \$TMP.out \$TMP
-CF_EOF
-fi
-case "$MANPAGE_FORMAT" in #(vi
-*compress*) #(vi
-cat >>man/edit_man.sh <<CF_EOF
-       if test \$verb = installing ; then
-       if ( compress -f \$TMP )
-       then
-               mv \$TMP.Z \$TMP
-       fi
+
+cat >>$cf_edit_man <<CF_EOF
+       if test \$form = format ; then
+               nroff -man \$TMP >\$TMP.out
+               mv \$TMP.out \$TMP
        fi
-       target="\$target.Z"
 CF_EOF
-  ;;
-*gzip*) #(vi
-cat >>man/edit_man.sh <<CF_EOF
+
+if test -n "$cf_compress" ; then
+cat >>$cf_edit_man <<CF_EOF
        if test \$verb = installing ; then
-       if ( gzip -f \$TMP )
+       if ( $cf_compress -f \$TMP )
        then
-               mv \$TMP.gz \$TMP
+               mv \$TMP.$cf_so_strip \$TMP
        fi
        fi
-       target="\$target.gz"
+       target="\$target.$cf_so_strip"
 CF_EOF
-  ;;
+fi
+
+case "$MANPAGE_FORMAT" in #(vi
 *BSDI*)
-cat >>man/edit_man.sh <<CF_EOF
-       # BSDI installs only .0 suffixes in the cat directories
-       target="\`echo \$target|sed -e 's/\.[1-9]\+.\?/.0/'\`"
+cat >>$cf_edit_man <<CF_EOF
+       if test \$form = format ; then
+               # BSDI installs only .0 suffixes in the cat directories
+               target="\`echo \$target|sed -e 's/\.[1-9]\+[a-z]*/.0/'\`"
+       fi
 CF_EOF
   ;;
 esac
-cat >>man/edit_man.sh <<CF_EOF
-       suffix=\`basename \$target | sed -e 's/^[^.]*//'\`
+
+cat >>$cf_edit_man <<CF_EOF
+       suffix=\`basename \$target | sed -e 's%^[^.]*%%'\`
        if test \$verb = installing ; then
                echo \$verb \$target
                \$INSTALL_DATA \$TMP \$target
                test -n "\$aliases" && (
-                       cd $cf_subdir\${section} && (
+                       cd \$cf_subdir\${section} && (
+                               source=\`echo \$target |sed -e 's%^.*/\([^/][^/]*/[^/][^/]*$\)%\1%'\`
+                               test -n "$cf_so_strip" && source=\`echo \$source |sed -e 's%\.$cf_so_strip\$%%'\`
                                target=\`basename \$target\`
                                for cf_alias in \$aliases
                                do
@@ -5270,19 +5845,31 @@ cat >>man/edit_man.sh <<CF_EOF
                                                cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
                                        fi
 
-                                       if test -f \$cf_alias\${suffix} ; then
-                                               if ( cmp -s \$target \$cf_alias\${suffix} )
-                                               then
-                                                       :
-                                               else
-                                                       echo .. \$verb alias \$cf_alias\${suffix}
-                                                       rm -f \$cf_alias\${suffix}
-                                                       $LN_S \$target \$cf_alias\${suffix}
+                                       if test "$MANPAGE_SYMLINKS" = yes ; then
+                                               if test -f \$cf_alias\${suffix} ; then
+                                                       if ( cmp -s \$target \$cf_alias\${suffix} )
+                                                       then
+                                                               continue
+                                                       fi
                                                fi
-                                       else
                                                echo .. \$verb alias \$cf_alias\${suffix}
                                                rm -f \$cf_alias\${suffix}
                                                $LN_S \$target \$cf_alias\${suffix}
+                                       elif test "\$target" != "\$cf_alias\${suffix}" ; then
+                                               echo ".so \$source" >\$TMP
+CF_EOF
+if test -n "$cf_compress" ; then
+cat >>$cf_edit_man <<CF_EOF
+                                               if test -n "$cf_so_strip" ; then
+                                                       $cf_compress -f \$TMP
+                                                       mv \$TMP.$cf_so_strip \$TMP
+                                               fi
+CF_EOF
+fi
+cat >>$cf_edit_man <<CF_EOF
+                                               echo .. \$verb alias \$cf_alias\${suffix}
+                                               rm -f \$cf_alias\${suffix}
+                                               \$INSTALL_DATA \$TMP \$cf_alias\${suffix}
                                        fi
                                done
                        )
@@ -5291,7 +5878,7 @@ cat >>man/edit_man.sh <<CF_EOF
                echo \$verb \$target
                rm -f \$target
                test -n "\$aliases" && (
-                       cd $cf_subdir\${section} && (
+                       cd \$cf_subdir\${section} && (
                                for cf_alias in \$aliases
                                do
                                        if test \$section = 1 ; then
@@ -5310,14 +5897,21 @@ cat >>man/edit_man.sh <<CF_EOF
        ;;
 esac
 done
+
+if test $cf_inboth = yes ; then
+if test \$form != format ; then
+       sh \$0 format \$verb \$mandir \$srcdir \$*
+fi
+fi
+
 exit 0
 CF_EOF
-chmod 755 man/edit_man.sh
+chmod 755 $cf_edit_man
 
 ###############################################################################
 
 ### Note that some functions (such as const) are normally disabled anyway.
-echo "$as_me:5320: checking if you want to build with function extensions" >&5
+echo "$as_me:5914: checking if you want to build with function extensions" >&5
 echo $ECHO_N "checking if you want to build with function extensions... $ECHO_C" >&6
 
 # Check whether --enable-ext-funcs or --disable-ext-funcs was given.
@@ -5327,7 +5921,7 @@ if test "${enable_ext_funcs+set}" = set; then
 else
   with_ext_funcs=yes
 fi;
-echo "$as_me:5330: result: $with_ext_funcs" >&5
+echo "$as_me:5924: result: $with_ext_funcs" >&5
 echo "${ECHO_T}$with_ext_funcs" >&6
 if test "$with_ext_funcs" = yes ; then
        NCURSES_EXT_FUNCS=1
@@ -5341,6 +5935,10 @@ EOF
 
        cat >>confdefs.h <<\EOF
 #define HAVE_RESIZETERM 1
+EOF
+
+       cat >>confdefs.h <<\EOF
+#define HAVE_RESIZE_TERM 1
 EOF
 
        cat >>confdefs.h <<\EOF
@@ -5360,7 +5958,7 @@ else
 fi
 
 ###   use option --enable-const to turn on use of const beyond that in XSI.
-echo "$as_me:5363: checking for extended use of const keyword" >&5
+echo "$as_me:5961: checking for extended use of const keyword" >&5
 echo $ECHO_N "checking for extended use of const keyword... $ECHO_C" >&6
 
 # Check whether --enable-const or --disable-const was given.
@@ -5370,14 +5968,14 @@ if test "${enable_const+set}" = set; then
 else
   with_ext_const=no
 fi;
-echo "$as_me:5373: result: $with_ext_const" >&5
+echo "$as_me:5971: result: $with_ext_const" >&5
 echo "${ECHO_T}$with_ext_const" >&6
 NCURSES_CONST='/*nothing*/'
 if test "$with_ext_const" = yes ; then
        NCURSES_CONST=const
 fi
 
-echo "$as_me:5380: checking if you want \$NCURSES_NO_PADDING code" >&5
+echo "$as_me:5978: checking if you want \$NCURSES_NO_PADDING code" >&5
 echo $ECHO_N "checking if you want \$NCURSES_NO_PADDING code... $ECHO_C" >&6
 
 # Check whether --enable-no-padding or --disable-no-padding was given.
@@ -5387,14 +5985,14 @@ if test "${enable_no_padding+set}" = set; then
 else
   with_no_padding=$with_ext_funcs
 fi;
-echo "$as_me:5390: result: $with_no_padding" >&5
+echo "$as_me:5988: result: $with_no_padding" >&5
 echo "${ECHO_T}$with_no_padding" >&6
 test "$with_no_padding" = yes && cat >>confdefs.h <<\EOF
 #define NCURSES_NO_PADDING 1
 EOF
 
 ###   use option --enable-sigwinch to turn on use of SIGWINCH logic
-echo "$as_me:5397: checking if you want SIGWINCH handler" >&5
+echo "$as_me:5995: checking if you want SIGWINCH handler" >&5
 echo $ECHO_N "checking if you want SIGWINCH handler... $ECHO_C" >&6
 
 # Check whether --enable-sigwinch or --disable-sigwinch was given.
@@ -5404,14 +6002,14 @@ if test "${enable_sigwinch+set}" = set; then
 else
   with_sigwinch=$with_ext_funcs
 fi;
-echo "$as_me:5407: result: $with_sigwinch" >&5
+echo "$as_me:6005: result: $with_sigwinch" >&5
 echo "${ECHO_T}$with_sigwinch" >&6
 test "$with_sigwinch" = yes && cat >>confdefs.h <<\EOF
 #define USE_SIGWINCH 1
 EOF
 
 ###   use option --enable-tcap-names to allow user to define new capabilities
-echo "$as_me:5414: checking if you want user-definable terminal capabilities like termcap" >&5
+echo "$as_me:6012: checking if you want user-definable terminal capabilities like termcap" >&5
 echo $ECHO_N "checking if you want user-definable terminal capabilities like termcap... $ECHO_C" >&6
 
 # Check whether --enable-tcap-names or --disable-tcap-names was given.
@@ -5421,7 +6019,7 @@ if test "${enable_tcap_names+set}" = set; then
 else
   with_tcap_names=$with_ext_funcs
 fi;
-echo "$as_me:5424: result: $with_tcap_names" >&5
+echo "$as_me:6022: result: $with_tcap_names" >&5
 echo "${ECHO_T}$with_tcap_names" >&6
 NCURSES_XNAMES=0
 test "$with_tcap_names" = yes && NCURSES_XNAMES=1
@@ -5429,7 +6027,7 @@ test "$with_tcap_names" = yes && NCURSES_XNAMES=1
 ###############################################################################
 # These options are relatively safe to experiment with.
 
-echo "$as_me:5432: checking if you want all development code" >&5
+echo "$as_me:6030: checking if you want all development code" >&5
 echo $ECHO_N "checking if you want all development code... $ECHO_C" >&6
 
 # Check whether --with-develop or --without-develop was given.
@@ -5439,11 +6037,11 @@ if test "${with_develop+set}" = set; then
 else
   with_develop=no
 fi;
-echo "$as_me:5442: result: $with_develop" >&5
+echo "$as_me:6040: result: $with_develop" >&5
 echo "${ECHO_T}$with_develop" >&6
 
 ###   use option --enable-hard-tabs to turn on use of hard-tabs optimize
-echo "$as_me:5446: checking if you want hard-tabs code" >&5
+echo "$as_me:6044: checking if you want hard-tabs code" >&5
 echo $ECHO_N "checking if you want hard-tabs code... $ECHO_C" >&6
 
 # Check whether --enable-hard-tabs or --disable-hard-tabs was given.
@@ -5453,13 +6051,13 @@ if test "${enable_hard_tabs+set}" = set; then
 else
   with_hardtabs=$with_develop
 fi;
-echo "$as_me:5456: result: $with_hardtabs" >&5
+echo "$as_me:6054: result: $with_hardtabs" >&5
 echo "${ECHO_T}$with_hardtabs" >&6
 test "$with_hardtabs" = yes && cat >>confdefs.h <<\EOF
 #define USE_HARD_TABS 1
 EOF
 
-echo "$as_me:5462: checking if you want to use restrict environment when running as root" >&5
+echo "$as_me:6060: checking if you want to use restrict environment when running as root" >&5
 echo $ECHO_N "checking if you want to use restrict environment when running as root... $ECHO_C" >&6
 
 # Check whether --enable-root-environ or --disable-root-environ was given.
@@ -5469,14 +6067,14 @@ if test "${enable_root_environ+set}" = set; then
 else
   with_root_environ=yes
 fi;
-echo "$as_me:5472: result: $with_root_environ" >&5
+echo "$as_me:6070: result: $with_root_environ" >&5
 echo "${ECHO_T}$with_root_environ" >&6
 test "$with_root_environ" = yes && cat >>confdefs.h <<\EOF
 #define USE_ROOT_ENVIRON 1
 EOF
 
 ###   use option --enable-xmc-glitch to turn on use of magic-cookie optimize
-echo "$as_me:5479: checking if you want limited support for xmc" >&5
+echo "$as_me:6077: checking if you want limited support for xmc" >&5
 echo $ECHO_N "checking if you want limited support for xmc... $ECHO_C" >&6
 
 # Check whether --enable-xmc-glitch or --disable-xmc-glitch was given.
@@ -5486,7 +6084,7 @@ if test "${enable_xmc_glitch+set}" = set; then
 else
   with_xmc_glitch=$with_develop
 fi;
-echo "$as_me:5489: result: $with_xmc_glitch" >&5
+echo "$as_me:6087: result: $with_xmc_glitch" >&5
 echo "${ECHO_T}$with_xmc_glitch" >&6
 test "$with_xmc_glitch" = yes && cat >>confdefs.h <<\EOF
 #define USE_XMC_SUPPORT 1
@@ -5495,7 +6093,7 @@ EOF
 ###############################################################################
 # These are just experimental, probably should not be in a package:
 
-echo "$as_me:5498: checking if you do not want to assume colors are white-on-black" >&5
+echo "$as_me:6096: checking if you do not want to assume colors are white-on-black" >&5
 echo $ECHO_N "checking if you do not want to assume colors are white-on-black... $ECHO_C" >&6
 
 # Check whether --enable-assumed-color or --disable-assumed-color was given.
@@ -5505,14 +6103,14 @@ if test "${enable_assumed_color+set}" = set; then
 else
   with_assumed_color=yes
 fi;
-echo "$as_me:5508: result: $with_assumed_color" >&5
+echo "$as_me:6106: result: $with_assumed_color" >&5
 echo "${ECHO_T}$with_assumed_color" >&6
 test "$with_assumed_color" = yes && cat >>confdefs.h <<\EOF
 #define USE_ASSUMED_COLOR 1
 EOF
 
 ###   use option --enable-hashmap to turn on use of hashmap scrolling logic
-echo "$as_me:5515: checking if you want hashmap scrolling-optimization code" >&5
+echo "$as_me:6113: checking if you want hashmap scrolling-optimization code" >&5
 echo $ECHO_N "checking if you want hashmap scrolling-optimization code... $ECHO_C" >&6
 
 # Check whether --enable-hashmap or --disable-hashmap was given.
@@ -5522,14 +6120,14 @@ if test "${enable_hashmap+set}" = set; then
 else
   with_hashmap=yes
 fi;
-echo "$as_me:5525: result: $with_hashmap" >&5
+echo "$as_me:6123: result: $with_hashmap" >&5
 echo "${ECHO_T}$with_hashmap" >&6
 test "$with_hashmap" = yes && cat >>confdefs.h <<\EOF
 #define USE_HASHMAP 1
 EOF
 
 ###   use option --enable-colorfgbg to turn on use of $COLORFGBG environment
-echo "$as_me:5532: checking if you want colorfgbg code" >&5
+echo "$as_me:6130: checking if you want colorfgbg code" >&5
 echo $ECHO_N "checking if you want colorfgbg code... $ECHO_C" >&6
 
 # Check whether --enable-colorfgbg or --disable-colorfgbg was given.
@@ -5539,13 +6137,13 @@ if test "${enable_colorfgbg+set}" = set; then
 else
   with_colorfgbg=no
 fi;
-echo "$as_me:5542: result: $with_colorfgbg" >&5
+echo "$as_me:6140: result: $with_colorfgbg" >&5
 echo "${ECHO_T}$with_colorfgbg" >&6
 test "$with_colorfgbg" = yes && cat >>confdefs.h <<\EOF
 #define USE_COLORFGBG 1
 EOF
 
-echo "$as_me:5548: checking if you want experimental safe-sprintf code" >&5
+echo "$as_me:6146: checking if you want experimental safe-sprintf code" >&5
 echo $ECHO_N "checking if you want experimental safe-sprintf code... $ECHO_C" >&6
 
 # Check whether --enable-safe-sprintf or --disable-safe-sprintf was given.
@@ -5555,7 +6153,7 @@ if test "${enable_safe_sprintf+set}" = set; then
 else
   with_safe_sprintf=no
 fi;
-echo "$as_me:5558: result: $with_safe_sprintf" >&5
+echo "$as_me:6156: result: $with_safe_sprintf" >&5
 echo "${ECHO_T}$with_safe_sprintf" >&6
 test "$with_safe_sprintf" = yes && cat >>confdefs.h <<\EOF
 #define USE_SAFE_SPRINTF 1
@@ -5564,7 +6162,7 @@ EOF
 ###   use option --disable-scroll-hints to turn off use of scroll-hints scrolling logic
 # when hashmap is used scroll hints are useless
 if test "$with_hashmap" = no ; then
-echo "$as_me:5567: checking if you want to experiment without scrolling-hints code" >&5
+echo "$as_me:6165: checking if you want to experiment without scrolling-hints code" >&5
 echo $ECHO_N "checking if you want to experiment without scrolling-hints code... $ECHO_C" >&6
 
 # Check whether --enable-scroll-hints or --disable-scroll-hints was given.
@@ -5574,7 +6172,7 @@ if test "${enable_scroll_hints+set}" = set; then
 else
   with_scroll_hints=yes
 fi;
-echo "$as_me:5577: result: $with_scroll_hints" >&5
+echo "$as_me:6175: result: $with_scroll_hints" >&5
 echo "${ECHO_T}$with_scroll_hints" >&6
 test "$with_scroll_hints" = yes && cat >>confdefs.h <<\EOF
 #define USE_SCROLL_HINTS 1
 ###   use option --enable-widec to turn on use of wide-character support
 NCURSES_CH_T=chtype
 NCURSES_LIBUTF8=0
+
+NEED_WCHAR_H=0
 NCURSES_MBSTATE_T=0
-echo "$as_me:5589: checking if you want experimental wide-character code" >&5
-echo $ECHO_N "checking if you want experimental wide-character code... $ECHO_C" >&6
+NCURSES_WCHAR_T=0
+NCURSES_WINT_T=0
 
-# Check whether --enable-widec or --disable-widec was given.
-if test "${enable_widec+set}" = set; then
-  enableval="$enable_widec"
-  with_widec=$enableval
+# Check to define _XOPEN_SOURCE "automatically"
+
+case $host_os in #(vi
+freebsd*) #(vi
+       CPPFLAGS="$CPPFLAGS -D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600"
+       ;;
+hpux*) #(vi
+       CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE"
+       ;;
+irix6.*) #(vi
+       CPPFLAGS="$CPPFLAGS -D_SGI_SOURCE"
+       ;;
+linux*) #(vi
+
+echo "$as_me:6206: checking if we must define _GNU_SOURCE" >&5
+echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6
+if test "${cf_cv_gnu_source+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  with_widec=no
-fi;
-echo "$as_me:5599: result: $with_widec" >&5
-echo "${ECHO_T}$with_widec" >&6
-if test "$with_widec" = yes ; then
-       LIB_SUFFIX="w${LIB_SUFFIX}"
-       cat >>confdefs.h <<\EOF
-#define USE_WIDEC_SUPPORT 1
-EOF
 
-       CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
-       # with_overwrite=no
-       NCURSES_CH_T=cchar_t
-       echo "$as_me:5610: checking for putwc" >&5
-echo $ECHO_N "checking for putwc... $ECHO_C" >&6
-if test "${ac_cv_func_putwc+set}" = set; then
+cat >conftest.$ac_ext <<_ACEOF
+#line 6213 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifndef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6228: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6231: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6234: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6237: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_gnu_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_save="$CPPFLAGS"
+        CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 6246 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifdef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6261: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6264: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6267: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6270: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_gnu_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_gnu_source=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+       CPPFLAGS="$cf_save"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:6285: result: $cf_cv_gnu_source" >&5
+echo "${ECHO_T}$cf_cv_gnu_source" >&6
+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+
+       ;;
+mirbsd*) #(vi
+       # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h>
+       ;;
+netbsd*) #(vi
+       # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
+       ;;
+openbsd*) #(vi
+       # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
+       ;;
+osf[45]*) #(vi
+       CPPFLAGS="$CPPFLAGS -D_OSF_SOURCE"
+       ;;
+sco*) #(vi
+       # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
+       ;;
+solaris*) #(vi
+       CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__"
+       ;;
+*)
+       echo "$as_me:6309: checking if we should define _XOPEN_SOURCE" >&5
+echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6
+if test "${cf_cv_xopen_source+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-#line 5616 "configure"
+
+       cat >conftest.$ac_ext <<_ACEOF
+#line 6316 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifndef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6331: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6334: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6337: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6340: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xopen_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_save="$CPPFLAGS"
+        CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 6349 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifdef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6364: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6367: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6370: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6373: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xopen_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_xopen_source=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+       CPPFLAGS="$cf_save"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:6388: result: $cf_cv_xopen_source" >&5
+echo "${ECHO_T}$cf_cv_xopen_source" >&6
+test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500"
+
+       # FreeBSD 5.x headers demand this...
+       echo "$as_me:6393: checking if we should define _POSIX_C_SOURCE" >&5
+echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6
+if test "${cf_cv_xopen_source+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+       cat >conftest.$ac_ext <<_ACEOF
+#line 6400 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifndef _POSIX_C_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6415: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6418: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6421: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6424: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xopen_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_save="$CPPFLAGS"
+        CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 6433 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifdef _POSIX_C_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6448: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6451: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6454: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6457: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xopen_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_xopen_source=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+       CPPFLAGS="$cf_save"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:6472: result: $cf_cv_xopen_source" >&5
+echo "${ECHO_T}$cf_cv_xopen_source" >&6
+test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE"
+       ;;
+esac
+
+# use these variables to work around a defect in gcc's fixincludes.
+NCURSES_OK_WCHAR_T=
+NCURSES_OK_WINT_T=
+
+echo "$as_me:6482: checking if you want experimental wide-character code" >&5
+echo $ECHO_N "checking if you want experimental wide-character code... $ECHO_C" >&6
+
+# Check whether --enable-widec or --disable-widec was given.
+if test "${enable_widec+set}" = set; then
+  enableval="$enable_widec"
+  with_widec=$enableval
+else
+  with_widec=no
+fi;
+echo "$as_me:6492: result: $with_widec" >&5
+echo "${ECHO_T}$with_widec" >&6
+if test "$with_widec" = yes ; then
+       LIB_SUFFIX="w${LIB_SUFFIX}"
+       cat >>confdefs.h <<\EOF
+#define USE_WIDEC_SUPPORT 1
+EOF
+
+echo "$as_me:6500: checking if we must define _XOPEN_SOURCE" >&5
+echo $ECHO_N "checking if we must define _XOPEN_SOURCE... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 6503 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+int
+main ()
+{
+
+#ifndef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6519: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6522: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6525: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6528: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:6537: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+
+if test "$cf_result" = yes ; then
+       CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500"
+elif test "x500" != "x" ; then
+       echo "$as_me:6543: checking checking for compatible value versus 500" >&5
+echo $ECHO_N "checking checking for compatible value versus 500... $ECHO_C" >&6
+       cat >conftest.$ac_ext <<_ACEOF
+#line 6546 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+int
+main ()
+{
+
+#if _XOPEN_SOURCE-500 < 0
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6562: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6565: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6568: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6571: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+       echo "$as_me:6580: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+       if test "$cf_result" = no ; then
+               # perhaps we can override it - try...
+               CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500"
+       fi
+fi
+
+echo "$as_me:6588: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
+echo $ECHO_N "checking if we must define _XOPEN_SOURCE_EXTENDED... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 6591 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+int
+main ()
+{
+
+#ifndef _XOPEN_SOURCE_EXTENDED
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6607: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6610: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6613: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6616: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:6625: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+
+if test "$cf_result" = yes ; then
+       CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
+elif test "x" != "x" ; then
+       echo "$as_me:6631: checking checking for compatible value versus " >&5
+echo $ECHO_N "checking checking for compatible value versus ... $ECHO_C" >&6
+       cat >conftest.$ac_ext <<_ACEOF
+#line 6634 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+int
+main ()
+{
+
+#if _XOPEN_SOURCE_EXTENDED- < 0
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6650: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6653: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6656: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6659: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+       echo "$as_me:6668: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+       if test "$cf_result" = no ; then
+               # perhaps we can override it - try...
+               CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED="
+       fi
+fi
+
+       # with_overwrite=no
+       NCURSES_CH_T=cchar_t
+
+for ac_func in putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:6682: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 6688 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:6719: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6722: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:6725: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6728: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:6738: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+       if test "$ac_cv_func_putwc" != yes ; then
+
+echo "$as_me:6750: checking for putwc in libutf8" >&5
+echo $ECHO_N "checking for putwc in libutf8... $ECHO_C" >&6
+if test "${cf_cv_libutf8+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+       cf_save_LIBS="$LIBS"
+       LIBS="-lutf8 $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 6759 "configure"
+#include "confdefs.h"
+
+#include <libutf8.h>
+int
+main ()
+{
+putwc(0,0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:6772: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6775: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:6778: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6781: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_libutf8=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_libutf8=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+       LIBS="$cf_save_LIBS"
+
+fi
+echo "$as_me:6793: result: $cf_cv_libutf8" >&5
+echo "${ECHO_T}$cf_cv_libutf8" >&6
+
+if test "$cf_cv_libutf8" = yes ; then
+       cat >>confdefs.h <<\EOF
+#define HAVE_LIBUTF8_H 1
+EOF
+
+       LIBS="-lutf8 $LIBS"
+fi
+
+               if test "$cf_cv_libutf8" = yes ; then
+                       NCURSES_LIBUTF8=1
+               fi
+       fi
+
+# This is needed on Tru64 5.0 to declare mbstate_t
+echo "$as_me:6810: checking if we must include wchar.h to declare mbstate_t" >&5
+echo $ECHO_N "checking if we must include wchar.h to declare mbstate_t... $ECHO_C" >&6
+if test "${cf_cv_mbstate_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 6817 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <stdarg.h>
+#include <stdio.h>
+#ifdef HAVE_LIBUTF8_H
+#include <libutf8.h>
+#endif
+int
+main ()
+{
+mbstate_t state
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6835: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6838: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6841: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6844: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_mbstate_t=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 6851 "configure"
 #include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char putwc (); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
-   builtin and then its argument prototype would still apply.  */
-char putwc ();
-char (*f) ();
 
+#include <stdlib.h>
+#include <stdarg.h>
+#include <stdio.h>
+#include <wchar.h>
+#ifdef HAVE_LIBUTF8_H
+#include <libutf8.h>
+#endif
 int
 main ()
 {
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_putwc) || defined (__stub___putwc)
-choke me
-#else
-f = putwc;
-#endif
-
+mbstate_t value
   ;
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5647: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6870: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:5650: \$? = $ac_status" >&5
+  echo "$as_me:6873: \$? = $ac_status" >&5
   (exit $ac_status); } &&
-         { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:5653: \"$ac_try\"") >&5
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6876: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:5656: \$? = $ac_status" >&5
+  echo "$as_me:6879: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  ac_cv_func_putwc=yes
+  cf_cv_mbstate_t=yes
 else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
-ac_cv_func_putwc=no
+cf_cv_mbstate_t=unknown
 fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:6891: result: $cf_cv_mbstate_t" >&5
+echo "${ECHO_T}$cf_cv_mbstate_t" >&6
+
+if test "$cf_cv_mbstate_t" = yes ; then
+       cat >>confdefs.h <<\EOF
+#define NEED_WCHAR_H 1
+EOF
+
+       NEED_WCHAR_H=1
 fi
-echo "$as_me:5666: result: $ac_cv_func_putwc" >&5
-echo "${ECHO_T}$ac_cv_func_putwc" >&6
 
-if test "$ac_cv_func_putwc" != yes ; then
+# if we do not find mbstate_t in either place, use substitution to provide a fallback.
+if test "$cf_cv_mbstate_t" = unknown ; then
+       NCURSES_MBSTATE_T=1
+fi
 
-echo "$as_me:5671: checking for putwc in libutf8" >&5
-echo $ECHO_N "checking for putwc in libutf8... $ECHO_C" >&6
-if test "${cf_cv_libutf8+set}" = set; then
+# This is needed on Tru64 5.0 to declare wchar_t
+echo "$as_me:6908: checking if we must include wchar.h to declare wchar_t" >&5
+echo $ECHO_N "checking if we must include wchar.h to declare wchar_t... $ECHO_C" >&6
+if test "${cf_cv_wchar_t+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
-       cf_save_LIBS="$LIBS"
-       LIBS="-lutf8 $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 5680 "configure"
+#line 6915 "configure"
 #include "confdefs.h"
 
+#include <stdlib.h>
+#include <stdarg.h>
+#include <stdio.h>
+#ifdef HAVE_LIBUTF8_H
 #include <libutf8.h>
+#endif
 int
 main ()
 {
-putwc(0,0);
+wchar_t state
   ;
   return 0;
 }
 _ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:5693: \"$ac_link\"") >&5
-  (eval $ac_link) 2>&5
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6933: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:5696: \$? = $ac_status" >&5
+  echo "$as_me:6936: \$? = $ac_status" >&5
   (exit $ac_status); } &&
-         { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:5699: \"$ac_try\"") >&5
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6939: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:5702: \$? = $ac_status" >&5
+  echo "$as_me:6942: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  cf_cv_libutf8=yes
+  cf_cv_wchar_t=no
 else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
-cf_cv_libutf8=no
-fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-       LIBS="$cf_save_LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 6949 "configure"
+#include "confdefs.h"
 
+#include <stdlib.h>
+#include <stdarg.h>
+#include <stdio.h>
+#include <wchar.h>
+#ifdef HAVE_LIBUTF8_H
+#include <libutf8.h>
+#endif
+int
+main ()
+{
+wchar_t value
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6968: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6971: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6974: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6977: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_wchar_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_wchar_t=unknown
 fi
-echo "$as_me:5714: result: $cf_cv_libutf8" >&5
-echo "${ECHO_T}$cf_cv_libutf8" >&6
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:6989: result: $cf_cv_wchar_t" >&5
+echo "${ECHO_T}$cf_cv_wchar_t" >&6
 
-if test "$cf_cv_libutf8" = yes ; then
+if test "$cf_cv_wchar_t" = yes ; then
        cat >>confdefs.h <<\EOF
-#define HAVE_LIBUTF8_H 1
+#define NEED_WCHAR_H 1
 EOF
 
-       LIBS="-lutf8 $LIBS"
+       NEED_WCHAR_H=1
 fi
 
-       if test "$cf_cv_libutf8" = yes ; then
-               NCURSES_LIBUTF8=1
-       fi
+# if we do not find wchar_t in either place, use substitution to provide a fallback.
+if test "$cf_cv_wchar_t" = unknown ; then
+       NCURSES_WCHAR_T=1
 fi
 
-# This is needed on Tru64 5.0 to declare mbstate_t
-echo "$as_me:5731: checking if we must include wchar.h to declare mbstate_t" >&5
-echo $ECHO_N "checking if we must include wchar.h to declare mbstate_t... $ECHO_C" >&6
-if test "${cf_cv_mbstate_t+set}" = set; then
+# if we find wchar_t in either place, use substitution to provide a fallback.
+if test "$cf_cv_wchar_t" != unknown ; then
+       NCURSES_OK_WCHAR_T=1
+fi
+
+# This is needed on Tru64 5.0 to declare wint_t
+echo "$as_me:7011: checking if we must include wchar.h to declare wint_t" >&5
+echo $ECHO_N "checking if we must include wchar.h to declare wint_t... $ECHO_C" >&6
+if test "${cf_cv_wint_t+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 5738 "configure"
+#line 7018 "configure"
 #include "confdefs.h"
 
 #include <stdlib.h>
+#include <stdarg.h>
+#include <stdio.h>
 #ifdef HAVE_LIBUTF8_H
 #include <libutf8.h>
 #endif
 int
 main ()
 {
-mbstate_t state
+wint_t state
   ;
   return 0;
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5754: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:7036: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:5757: \$? = $ac_status" >&5
+  echo "$as_me:7039: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:5760: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7042: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:5763: \$? = $ac_status" >&5
+  echo "$as_me:7045: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  cf_cv_mbstate_t=no
+  cf_cv_wint_t=no
 else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
 cat >conftest.$ac_ext <<_ACEOF
-#line 5770 "configure"
+#line 7052 "configure"
 #include "confdefs.h"
 
 #include <stdlib.h>
+#include <stdarg.h>
+#include <stdio.h>
 #include <wchar.h>
 #ifdef HAVE_LIBUTF8_H
 #include <libutf8.h>
@@ -5778,56 +7062,57 @@ cat >conftest.$ac_ext <<_ACEOF
 int
 main ()
 {
-mbstate_t value
+wint_t value
   ;
   return 0;
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:5787: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:7071: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:5790: \$? = $ac_status" >&5
+  echo "$as_me:7074: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:5793: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7077: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:5796: \$? = $ac_status" >&5
+  echo "$as_me:7080: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
-  cf_cv_mbstate_t=yes
+  cf_cv_wint_t=yes
 else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
-cf_cv_mbstate_t=unknown
+cf_cv_wint_t=unknown
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:5808: result: $cf_cv_mbstate_t" >&5
-echo "${ECHO_T}$cf_cv_mbstate_t" >&6
+echo "$as_me:7092: result: $cf_cv_wint_t" >&5
+echo "${ECHO_T}$cf_cv_wint_t" >&6
 
-if test "$cf_cv_mbstate_t" = yes ; then
+if test "$cf_cv_wint_t" = yes ; then
        cat >>confdefs.h <<\EOF
 #define NEED_WCHAR_H 1
 EOF
 
+       NEED_WCHAR_H=1
 fi
 
-if test "$cf_cv_mbstate_t" != unknown ; then
-       cat >>confdefs.h <<\EOF
-#define HAVE_MBSTATE_T 1
-EOF
+# if we do not find wint_t in either place, use substitution to provide a fallback.
+if test "$cf_cv_wint_t" = unknown ; then
+       NCURSES_WINT_T=1
+fi
 
+# if we find wint_t in either place, use substitution to provide a fallback.
+if test "$cf_cv_wint_t" != unknown ; then
+       NCURSES_OK_WINT_T=1
 fi
 
-       if test $cf_cv_mbstate_t = yes ; then
-               NCURSES_MBSTATE_T=1
-       fi
 fi
 
-echo "$as_me:5830: checking for terminal capabilities file" >&5
+echo "$as_me:7115: checking for terminal capabilities file" >&5
 echo $ECHO_N "checking for terminal capabilities file... $ECHO_C" >&6
 
 # Check whether --with-caps or --without-caps was given.
@@ -5838,13 +7123,13 @@ else
   TERMINFO_CAPS=Caps
 fi;
 test -f ${srcdir}/include/${TERMINFO_CAPS} || TERMINFO_CAPS=Caps
-echo "$as_me:5841: result: $TERMINFO_CAPS" >&5
+echo "$as_me:7126: result: $TERMINFO_CAPS" >&5
 echo "${ECHO_T}$TERMINFO_CAPS" >&6
 
 ###############################################################################
 
 ###    use option --disable-echo to suppress full display compiling commands
-echo "$as_me:5847: checking if you want to display full commands during build" >&5
+echo "$as_me:7132: checking if you want to display full commands during build" >&5
 echo $ECHO_N "checking if you want to display full commands during build... $ECHO_C" >&6
 
 # Check whether --enable-echo or --disable-echo was given.
@@ -5860,11 +7145,11 @@ else
        ECHO_LINK='@ echo linking $@ ... ;'
        test -n "$LIBTOOL" && LIBTOOL="$LIBTOOL --silent"
 fi
-echo "$as_me:5863: result: $with_echo" >&5
+echo "$as_me:7148: result: $with_echo" >&5
 echo "${ECHO_T}$with_echo" >&6
 
 ###    use option --enable-warnings to turn on all gcc warnings
-echo "$as_me:5867: checking if you want to see compiler warnings" >&5
+echo "$as_me:7152: checking if you want to see compiler warnings" >&5
 echo $ECHO_N "checking if you want to see compiler warnings... $ECHO_C" >&6
 
 # Check whether --enable-warnings or --disable-warnings was given.
@@ -5872,7 +7157,7 @@ if test "${enable_warnings+set}" = set; then
   enableval="$enable_warnings"
   with_warnings=$enableval
 fi;
-echo "$as_me:5875: result: $with_warnings" >&5
+echo "$as_me:7160: result: $with_warnings" >&5
 echo "${ECHO_T}$with_warnings" >&6
 
 if test -n "$with_warnings"; then
@@ -5881,10 +7166,10 @@ if test -n "$with_warnings"; then
 if test "$GCC" = yes
 then
        cat > conftest.$ac_ext <<EOF
-#line 5884 "configure"
+#line 7169 "configure"
 int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
 EOF
-       { echo "$as_me:5887: checking for $CC warning options..." >&5
+       { echo "$as_me:7172: checking for $CC warning options..." >&5
 echo "$as_me: checking for $CC warning options..." >&6;}
        cf_save_CFLAGS="$CFLAGS"
        EXTRA_CFLAGS="-W -Wall"
@@ -5904,15 +7189,27 @@ echo "$as_me: checking for $CC warning options..." >&6;}
                Wundef $cf_warn_CONST
        do
                CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-               if { (eval echo "$as_me:5907: \"$ac_compile\"") >&5
+               if { (eval echo "$as_me:7192: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:5910: \$? = $ac_status" >&5
+  echo "$as_me:7195: \$? = $ac_status" >&5
   (exit $ac_status); }; then
-                       test -n "$verbose" && echo "$as_me:5912: result: ... -$cf_opt" >&5
+                       test -n "$verbose" && echo "$as_me:7197: result: ... -$cf_opt" >&5
 echo "${ECHO_T}... -$cf_opt" >&6
+                       case $cf_opt in #(vi
+                       Wcast-qual) #(vi
+                               CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES"
+                               ;;
+                       Winline) #(vi
+                               case $GCC_VERSION in
+                               3.3*)
+                                       test -n "$verbose" && echo "    feature is broken in gcc $GCC_VERSION" 1>&6
+
+                                       continue;;
+                               esac
+                               ;;
+                       esac
                        EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
-                       test "$cf_opt" = Wcast-qual && EXTRA_CFLAGS="$EXTRA_CFLAGS -DXTSTRINGDEFINES"
                fi
        done
        rm -f conftest*
@@ -5939,10 +7236,10 @@ cat > conftest.i <<EOF
 EOF
 if test "$GCC" = yes
 then
-       { echo "$as_me:5942: checking for $CC __attribute__ directives..." >&5
+       { echo "$as_me:7239: checking for $CC __attribute__ directives..." >&5
 echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
 cat > conftest.$ac_ext <<EOF
-#line 5945 "configure"
+#line 7242 "configure"
 #include "confdefs.h"
 #include "conftest.h"
 #include "conftest.i"
@@ -5980,16 +7277,14 @@ EOF
 EOF
                        ;;
                esac
-               if { (eval echo "$as_me:5983: \"$ac_compile\"") >&5
+               if { (eval echo "$as_me:7280: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:5986: \$? = $ac_status" >&5
+  echo "$as_me:7283: \$? = $ac_status" >&5
   (exit $ac_status); }; then
-                       test -n "$verbose" && echo "$as_me:5988: result: ... $cf_attribute" >&5
+                       test -n "$verbose" && echo "$as_me:7285: result: ... $cf_attribute" >&5
 echo "${ECHO_T}... $cf_attribute" >&6
                        cat conftest.h >>confdefs.h
-#              else
-#                      sed -e 's/__attr.*/\/*nothing*\//' conftest.h >>confdefs.h
                fi
        done
 else
@@ -5999,7 +7294,7 @@ rm -rf conftest*
 fi
 
 ###    use option --enable-assertions to turn on generation of assertion code
-echo "$as_me:6002: checking if you want to enable runtime assertions" >&5
+echo "$as_me:7297: checking if you want to enable runtime assertions" >&5
 echo $ECHO_N "checking if you want to enable runtime assertions... $ECHO_C" >&6
 
 # Check whether --enable-assertions or --disable-assertions was given.
@@ -6009,7 +7304,7 @@ if test "${enable_assertions+set}" = set; then
 else
   with_assertions=no
 fi;
-echo "$as_me:6012: result: $with_assertions" >&5
+echo "$as_me:7307: result: $with_assertions" >&5
 echo "${ECHO_T}$with_assertions" >&6
 if test -n "$GCC"
 then
@@ -6061,14 +7356,75 @@ EOF
 
 fi;
 
+# Normally we only add trace() to the debug-library.  Allow this to be
+# extended to all models of the ncurses library:
+cf_all_traces=no
+case "$CFLAGS $CPPFLAGS" in
+*-DTRACE*)
+       cf_all_traces=yes
+       ;;
+esac
+
+echo "$as_me:7368: checking whether to add trace feature to all models" >&5
+echo $ECHO_N "checking whether to add trace feature to all models... $ECHO_C" >&6
+
+# Check whether --with-trace or --without-trace was given.
+if test "${with_trace+set}" = set; then
+  withval="$with_trace"
+  cf_with_trace=$withval
+else
+  cf_with_trace=$cf_all_traces
+fi;
+echo "$as_me:7378: result: $with_trace" >&5
+echo "${ECHO_T}$with_trace" >&6
+
+if test "$cf_with_trace" = yes ; then
+       LIB_TRACING=all
+       ADA_TRACE=TRUE
+
+cf_new_cflags=
+cf_new_cppflags=
+for cf_add_cflags in -DTRACE
+do
+       case $cf_add_cflags in #(vi
+       -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+               case "$CPPFLAGS" in
+               *$cf_add_cflags) #(vi
+                       ;;
+               *) #(vi
+                       cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+                       ;;
+               esac
+               ;;
+       *)
+               cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+               ;;
+       esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+       CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+       CPPFLAGS="$cf_new_cppflags $CPPFLAGS"
+fi
+
+else
+       LIB_TRACING=DEBUG
+       ADA_TRACE=FALSE
+fi
+
 ###    Checks for libraries.
-echo "$as_me:6065: checking for gettimeofday" >&5
+echo "$as_me:7421: checking for gettimeofday" >&5
 echo $ECHO_N "checking for gettimeofday... $ECHO_C" >&6
 if test "${ac_cv_func_gettimeofday+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 6071 "configure"
+#line 7427 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gettimeofday (); below.  */
@@ -6099,16 +7455,16 @@ f = gettimeofday;
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6102: \"$ac_link\"") >&5
+if { (eval echo "$as_me:7458: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6105: \$? = $ac_status" >&5
+  echo "$as_me:7461: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6108: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7464: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6111: \$? = $ac_status" >&5
+  echo "$as_me:7467: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_func_gettimeofday=yes
 else
@@ -6118,7 +7474,7 @@ ac_cv_func_gettimeofday=no
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-echo "$as_me:6121: result: $ac_cv_func_gettimeofday" >&5
+echo "$as_me:7477: result: $ac_cv_func_gettimeofday" >&5
 echo "${ECHO_T}$ac_cv_func_gettimeofday" >&6
 if test $ac_cv_func_gettimeofday = yes; then
   cat >>confdefs.h <<\EOF
@@ -6127,7 +7483,7 @@ EOF
 
 else
 
-echo "$as_me:6130: checking for gettimeofday in -lbsd" >&5
+echo "$as_me:7486: checking for gettimeofday in -lbsd" >&5
 echo $ECHO_N "checking for gettimeofday in -lbsd... $ECHO_C" >&6
 if test "${ac_cv_lib_bsd_gettimeofday+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6135,7 +7491,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lbsd  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 6138 "configure"
+#line 7494 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -6154,16 +7510,16 @@ gettimeofday ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6157: \"$ac_link\"") >&5
+if { (eval echo "$as_me:7513: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6160: \$? = $ac_status" >&5
+  echo "$as_me:7516: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6163: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7519: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6166: \$? = $ac_status" >&5
+  echo "$as_me:7522: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_bsd_gettimeofday=yes
 else
@@ -6174,7 +7530,7 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:6177: result: $ac_cv_lib_bsd_gettimeofday" >&5
+echo "$as_me:7533: result: $ac_cv_lib_bsd_gettimeofday" >&5
 echo "${ECHO_T}$ac_cv_lib_bsd_gettimeofday" >&6
 if test $ac_cv_lib_bsd_gettimeofday = yes; then
   cat >>confdefs.h <<\EOF
@@ -6186,14 +7542,14 @@ fi
 
 fi
 
-echo "$as_me:6189: checking if -lm needed for math functions" >&5
+echo "$as_me:7545: checking if -lm needed for math functions" >&5
 echo $ECHO_N "checking if -lm needed for math functions... $ECHO_C" >&6
 if test "${cf_cv_need_libm+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
        cat >conftest.$ac_ext <<_ACEOF
-#line 6196 "configure"
+#line 7552 "configure"
 #include "confdefs.h"
 
        #include <stdio.h>
@@ -6208,124 +7564,40 @@ double x = rand(); printf("result = %g\n", sin(x))
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6211: \"$ac_link\"") >&5
+if { (eval echo "$as_me:7567: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6214: \$? = $ac_status" >&5
+  echo "$as_me:7570: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6217: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7573: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6220: \$? = $ac_status" >&5
+  echo "$as_me:7576: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_need_libm=no
 else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
-cf_cv_need_libm=yes
-fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:6230: result: $cf_cv_need_libm" >&5
-echo "${ECHO_T}$cf_cv_need_libm" >&6
-if test "$cf_cv_need_libm" = yes
-then
-MATH_LIB=-lm
-fi
-
-###    Checks for header files.
-
-echo "$as_me:6239: checking if we must define _GNU_SOURCE" >&5
-echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6
-if test "${cf_cv_gnu_source+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-
-cat >conftest.$ac_ext <<_ACEOF
-#line 6246 "configure"
-#include "confdefs.h"
-#include <sys/types.h>
-int
-main ()
-{
-
-#ifndef _XOPEN_SOURCE
-make an error
-#endif
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6261: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  echo "$as_me:6264: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-         { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:6267: \"$ac_try\"") >&5
-  (eval $ac_try) 2>&5
-  ac_status=$?
-  echo "$as_me:6270: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-  cf_cv_gnu_source=no
-else
-  echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cf_save="$CPPFLAGS"
-        CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
-        cat >conftest.$ac_ext <<_ACEOF
-#line 6279 "configure"
-#include "confdefs.h"
-#include <sys/types.h>
-int
-main ()
-{
-
-#ifdef _XOPEN_SOURCE
-make an error
-#endif
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6294: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  echo "$as_me:6297: \$? = $ac_status" >&5
-  (exit $ac_status); } &&
-         { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:6300: \"$ac_try\"") >&5
-  (eval $ac_try) 2>&5
-  ac_status=$?
-  echo "$as_me:6303: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-  cf_cv_gnu_source=no
-else
-  echo "$as_me: failed program was:" >&5
-cat conftest.$ac_ext >&5
-cf_cv_gnu_source=yes
+cf_cv_need_libm=yes
 fi
-rm -f conftest.$ac_objext conftest.$ac_ext
-       CPPFLAGS="$cf_save"
-
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-rm -f conftest.$ac_objext conftest.$ac_ext
-
+echo "$as_me:7586: result: $cf_cv_need_libm" >&5
+echo "${ECHO_T}$cf_cv_need_libm" >&6
+if test "$cf_cv_need_libm" = yes
+then
+MATH_LIB=-lm
 fi
-echo "$as_me:6318: result: $cf_cv_gnu_source" >&5
-echo "${ECHO_T}$cf_cv_gnu_source" >&6
-test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
 
-echo "$as_me:6322: checking for ANSI C header files" >&5
+###    Checks for header files.
+echo "$as_me:7594: checking for ANSI C header files" >&5
 echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
 if test "${ac_cv_header_stdc+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 6328 "configure"
+#line 7600 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -6333,13 +7605,13 @@ else
 #include <float.h>
 
 _ACEOF
-if { (eval echo "$as_me:6336: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:7608: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:6342: \$? = $ac_status" >&5
+  echo "$as_me:7614: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -6361,7 +7633,7 @@ rm -f conftest.err conftest.$ac_ext
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
   cat >conftest.$ac_ext <<_ACEOF
-#line 6364 "configure"
+#line 7636 "configure"
 #include "confdefs.h"
 #include <string.h>
 
@@ -6379,7 +7651,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
   cat >conftest.$ac_ext <<_ACEOF
-#line 6382 "configure"
+#line 7654 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 
@@ -6400,7 +7672,7 @@ if test $ac_cv_header_stdc = yes; then
   :
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 6403 "configure"
+#line 7675 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #if ((' ' & 0x0FF) == 0x020)
@@ -6426,15 +7698,15 @@ main ()
 }
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:6429: \"$ac_link\"") >&5
+if { (eval echo "$as_me:7701: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6432: \$? = $ac_status" >&5
+  echo "$as_me:7704: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:6434: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7706: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6437: \$? = $ac_status" >&5
+  echo "$as_me:7709: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   :
 else
@@ -6447,7 +7719,7 @@ rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
 fi
 fi
-echo "$as_me:6450: result: $ac_cv_header_stdc" >&5
+echo "$as_me:7722: result: $ac_cv_header_stdc" >&5
 echo "${ECHO_T}$ac_cv_header_stdc" >&6
 if test $ac_cv_header_stdc = yes; then
 
@@ -6460,13 +7732,13 @@ fi
 ac_header_dirent=no
 for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
   as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-echo "$as_me:6463: checking for $ac_hdr that defines DIR" >&5
+echo "$as_me:7735: checking for $ac_hdr that defines DIR" >&5
 echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6
 if eval "test \"\${$as_ac_Header+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 6469 "configure"
+#line 7741 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
@@ -6481,16 +7753,16 @@ return 0;
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6484: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:7756: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:6487: \$? = $ac_status" >&5
+  echo "$as_me:7759: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:6490: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7762: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6493: \$? = $ac_status" >&5
+  echo "$as_me:7765: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   eval "$as_ac_Header=yes"
 else
@@ -6500,7 +7772,7 @@ eval "$as_ac_Header=no"
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:6503: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "$as_me:7775: result: `eval echo '${'$as_ac_Header'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
 if test `eval echo '${'$as_ac_Header'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -6513,7 +7785,7 @@ fi
 done
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
-  echo "$as_me:6516: checking for opendir in -ldir" >&5
+  echo "$as_me:7788: checking for opendir in -ldir" >&5
 echo $ECHO_N "checking for opendir in -ldir... $ECHO_C" >&6
 if test "${ac_cv_lib_dir_opendir+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6521,7 +7793,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldir  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 6524 "configure"
+#line 7796 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -6540,16 +7812,16 @@ opendir ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6543: \"$ac_link\"") >&5
+if { (eval echo "$as_me:7815: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6546: \$? = $ac_status" >&5
+  echo "$as_me:7818: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6549: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7821: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6552: \$? = $ac_status" >&5
+  echo "$as_me:7824: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_dir_opendir=yes
 else
@@ -6560,14 +7832,14 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:6563: result: $ac_cv_lib_dir_opendir" >&5
+echo "$as_me:7835: result: $ac_cv_lib_dir_opendir" >&5
 echo "${ECHO_T}$ac_cv_lib_dir_opendir" >&6
 if test $ac_cv_lib_dir_opendir = yes; then
   LIBS="$LIBS -ldir"
 fi
 
 else
-  echo "$as_me:6570: checking for opendir in -lx" >&5
+  echo "$as_me:7842: checking for opendir in -lx" >&5
 echo $ECHO_N "checking for opendir in -lx... $ECHO_C" >&6
 if test "${ac_cv_lib_x_opendir+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6575,7 +7847,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lx  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 6578 "configure"
+#line 7850 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -6594,16 +7866,16 @@ opendir ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6597: \"$ac_link\"") >&5
+if { (eval echo "$as_me:7869: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6600: \$? = $ac_status" >&5
+  echo "$as_me:7872: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6603: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7875: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6606: \$? = $ac_status" >&5
+  echo "$as_me:7878: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_x_opendir=yes
 else
@@ -6614,7 +7886,7 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:6617: result: $ac_cv_lib_x_opendir" >&5
+echo "$as_me:7889: result: $ac_cv_lib_x_opendir" >&5
 echo "${ECHO_T}$ac_cv_lib_x_opendir" >&6
 if test $ac_cv_lib_x_opendir = yes; then
   LIBS="$LIBS -lx"
@@ -6622,13 +7894,13 @@ fi
 
 fi
 
-echo "$as_me:6625: checking whether time.h and sys/time.h may both be included" >&5
+echo "$as_me:7897: checking whether time.h and sys/time.h may both be included" >&5
 echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6
 if test "${ac_cv_header_time+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 6631 "configure"
+#line 7903 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -6644,16 +7916,16 @@ return 0;
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:6647: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:7919: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:6650: \$? = $ac_status" >&5
+  echo "$as_me:7922: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:6653: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7925: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6656: \$? = $ac_status" >&5
+  echo "$as_me:7928: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_header_time=yes
 else
@@ -6663,7 +7935,7 @@ ac_cv_header_time=no
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:6666: result: $ac_cv_header_time" >&5
+echo "$as_me:7938: result: $ac_cv_header_time" >&5
 echo "${ECHO_T}$ac_cv_header_time" >&6
 if test $ac_cv_header_time = yes; then
 
@@ -6673,14 +7945,14 @@ EOF
 
 fi
 
-echo "$as_me:6676: checking for regular-expression headers" >&5
+echo "$as_me:7948: checking for regular-expression headers" >&5
 echo $ECHO_N "checking for regular-expression headers... $ECHO_C" >&6
 if test "${cf_cv_regex+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 6683 "configure"
+#line 7955 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <regex.h>
@@ -6698,16 +7970,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6701: \"$ac_link\"") >&5
+if { (eval echo "$as_me:7973: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6704: \$? = $ac_status" >&5
+  echo "$as_me:7976: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6707: \"$ac_try\"") >&5
+  { (eval echo "$as_me:7979: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6710: \$? = $ac_status" >&5
+  echo "$as_me:7982: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_regex="regex.h"
 else
@@ -6715,7 +7987,7 @@ else
 cat conftest.$ac_ext >&5
 
        cat >conftest.$ac_ext <<_ACEOF
-#line 6718 "configure"
+#line 7990 "configure"
 #include "confdefs.h"
 #include <regexp.h>
 int
@@ -6730,16 +8002,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6733: \"$ac_link\"") >&5
+if { (eval echo "$as_me:8005: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6736: \$? = $ac_status" >&5
+  echo "$as_me:8008: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6739: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8011: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6742: \$? = $ac_status" >&5
+  echo "$as_me:8014: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_regex="regexp.h"
 else
@@ -6749,7 +8021,7 @@ cat conftest.$ac_ext >&5
                cf_save_LIBS="$LIBS"
                LIBS="-lgen $LIBS"
                cat >conftest.$ac_ext <<_ACEOF
-#line 6752 "configure"
+#line 8024 "configure"
 #include "confdefs.h"
 #include <regexpr.h>
 int
@@ -6764,16 +8036,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6767: \"$ac_link\"") >&5
+if { (eval echo "$as_me:8039: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6770: \$? = $ac_status" >&5
+  echo "$as_me:8042: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6773: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8045: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6776: \$? = $ac_status" >&5
+  echo "$as_me:8048: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_regex="regexpr.h"
 else
@@ -6789,7 +8061,7 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 
 fi
 
-echo "$as_me:6792: result: $cf_cv_regex" >&5
+echo "$as_me:8064: result: $cf_cv_regex" >&5
 echo "${ECHO_T}$cf_cv_regex" >&6
 case $cf_cv_regex in
        regex.h)   cat >>confdefs.h <<\EOF
@@ -6822,26 +8094,26 @@ sys/time.h \
 sys/times.h \
 ttyent.h \
 unistd.h \
-
+wctype.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:6828: checking for $ac_header" >&5
+echo "$as_me:8100: checking for $ac_header" >&5
 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
 if eval "test \"\${$as_ac_Header+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 6834 "configure"
+#line 8106 "configure"
 #include "confdefs.h"
 #include <$ac_header>
 _ACEOF
-if { (eval echo "$as_me:6838: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:8110: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:6844: \$? = $ac_status" >&5
+  echo "$as_me:8116: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -6860,7 +8132,7 @@ else
 fi
 rm -f conftest.err conftest.$ac_ext
 fi
-echo "$as_me:6863: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "$as_me:8135: result: `eval echo '${'$as_ac_Header'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
 if test `eval echo '${'$as_ac_Header'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -6874,7 +8146,7 @@ done
 # Note: even non-Posix ISC needs <sys/bsdtypes.h> to declare fd_set
 if test "$ISC" = yes ; then
 
-echo "$as_me:6877: checking for main in -lcposix" >&5
+echo "$as_me:8149: checking for main in -lcposix" >&5
 echo $ECHO_N "checking for main in -lcposix... $ECHO_C" >&6
 if test "${ac_cv_lib_cposix_main+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6882,7 +8154,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcposix  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 6885 "configure"
+#line 8157 "configure"
 #include "confdefs.h"
 
 int
@@ -6894,16 +8166,16 @@ main ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6897: \"$ac_link\"") >&5
+if { (eval echo "$as_me:8169: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6900: \$? = $ac_status" >&5
+  echo "$as_me:8172: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6903: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8175: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6906: \$? = $ac_status" >&5
+  echo "$as_me:8178: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_cposix_main=yes
 else
@@ -6914,7 +8186,7 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:6917: result: $ac_cv_lib_cposix_main" >&5
+echo "$as_me:8189: result: $ac_cv_lib_cposix_main" >&5
 echo "${ECHO_T}$ac_cv_lib_cposix_main" >&6
 if test $ac_cv_lib_cposix_main = yes; then
   cat >>confdefs.h <<EOF
@@ -6925,7 +8197,7 @@ EOF
 
 fi
 
-       echo "$as_me:6928: checking for bzero in -linet" >&5
+       echo "$as_me:8200: checking for bzero in -linet" >&5
 echo $ECHO_N "checking for bzero in -linet... $ECHO_C" >&6
 if test "${ac_cv_lib_inet_bzero+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -6933,7 +8205,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-linet  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 6936 "configure"
+#line 8208 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -6952,16 +8224,16 @@ bzero ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:6955: \"$ac_link\"") >&5
+if { (eval echo "$as_me:8227: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:6958: \$? = $ac_status" >&5
+  echo "$as_me:8230: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:6961: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8233: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:6964: \$? = $ac_status" >&5
+  echo "$as_me:8236: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_inet_bzero=yes
 else
@@ -6972,21 +8244,21 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:6975: result: $ac_cv_lib_inet_bzero" >&5
+echo "$as_me:8247: result: $ac_cv_lib_inet_bzero" >&5
 echo "${ECHO_T}$ac_cv_lib_inet_bzero" >&6
 if test $ac_cv_lib_inet_bzero = yes; then
   LIBS="$LIBS -linet"
 fi
 fi
 
-echo "$as_me:6982: checking if sys/time.h works with sys/select.h" >&5
+echo "$as_me:8254: checking if sys/time.h works with sys/select.h" >&5
 echo $ECHO_N "checking if sys/time.h works with sys/select.h... $ECHO_C" >&6
 if test "${cf_cv_sys_time_select+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 6989 "configure"
+#line 8261 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -7006,16 +8278,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7009: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:8281: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7012: \$? = $ac_status" >&5
+  echo "$as_me:8284: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:7015: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8287: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7018: \$? = $ac_status" >&5
+  echo "$as_me:8290: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_sys_time_select=yes
 else
@@ -7027,7 +8299,7 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 
 fi
 
-echo "$as_me:7030: result: $cf_cv_sys_time_select" >&5
+echo "$as_me:8302: result: $cf_cv_sys_time_select" >&5
 echo "${ECHO_T}$cf_cv_sys_time_select" >&6
 test "$cf_cv_sys_time_select" = yes && cat >>confdefs.h <<\EOF
 #define HAVE_SYS_TIME_SELECT 1
@@ -7040,7 +8312,7 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-echo "$as_me:7043: checking for $CC option to accept ANSI C" >&5
+echo "$as_me:8315: checking for $CC option to accept ANSI C" >&5
 echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
 if test "${ac_cv_prog_cc_stdc+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7048,7 +8320,7 @@ else
   ac_cv_prog_cc_stdc=no
 ac_save_CC=$CC
 cat >conftest.$ac_ext <<_ACEOF
-#line 7051 "configure"
+#line 8323 "configure"
 #include "confdefs.h"
 #include <stdarg.h>
 #include <stdio.h>
@@ -7097,16 +8369,16 @@ for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIO
 do
   CC="$ac_save_CC $ac_arg"
   rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7100: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:8372: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7103: \$? = $ac_status" >&5
+  echo "$as_me:8375: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:7106: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8378: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7109: \$? = $ac_status" >&5
+  echo "$as_me:8381: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_prog_cc_stdc=$ac_arg
 break
@@ -7123,21 +8395,21 @@ fi
 
 case "x$ac_cv_prog_cc_stdc" in
   x|xno)
-    echo "$as_me:7126: result: none needed" >&5
+    echo "$as_me:8398: result: none needed" >&5
 echo "${ECHO_T}none needed" >&6 ;;
   *)
-    echo "$as_me:7129: result: $ac_cv_prog_cc_stdc" >&5
+    echo "$as_me:8401: result: $ac_cv_prog_cc_stdc" >&5
 echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
     CC="$CC $ac_cv_prog_cc_stdc" ;;
 esac
 
-echo "$as_me:7134: checking for an ANSI C-conforming const" >&5
+echo "$as_me:8406: checking for an ANSI C-conforming const" >&5
 echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6
 if test "${ac_cv_c_const+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 7140 "configure"
+#line 8412 "configure"
 #include "confdefs.h"
 
 int
@@ -7195,16 +8467,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7198: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:8470: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7201: \$? = $ac_status" >&5
+  echo "$as_me:8473: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:7204: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8476: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7207: \$? = $ac_status" >&5
+  echo "$as_me:8479: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_c_const=yes
 else
@@ -7214,7 +8486,7 @@ ac_cv_c_const=no
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:7217: result: $ac_cv_c_const" >&5
+echo "$as_me:8489: result: $ac_cv_c_const" >&5
 echo "${ECHO_T}$ac_cv_c_const" >&6
 if test $ac_cv_c_const = no; then
 
@@ -7224,7 +8496,7 @@ EOF
 
 fi
 
-echo "$as_me:7227: checking for inline" >&5
+echo "$as_me:8499: checking for inline" >&5
 echo $ECHO_N "checking for inline... $ECHO_C" >&6
 if test "${ac_cv_c_inline+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7232,7 +8504,7 @@ else
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat >conftest.$ac_ext <<_ACEOF
-#line 7235 "configure"
+#line 8507 "configure"
 #include "confdefs.h"
 #ifndef __cplusplus
 static $ac_kw int static_foo () {return 0; }
@@ -7241,16 +8513,16 @@ $ac_kw int foo () {return 0; }
 
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7244: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:8516: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7247: \$? = $ac_status" >&5
+  echo "$as_me:8519: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:7250: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8522: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7253: \$? = $ac_status" >&5
+  echo "$as_me:8525: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_c_inline=$ac_kw; break
 else
@@ -7261,7 +8533,7 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 done
 
 fi
-echo "$as_me:7264: result: $ac_cv_c_inline" >&5
+echo "$as_me:8536: result: $ac_cv_c_inline" >&5
 echo "${ECHO_T}$ac_cv_c_inline" >&6
 case $ac_cv_c_inline in
   inline | yes) ;;
@@ -7280,14 +8552,14 @@ test "$ac_cv_c_inline" != no && cat >>confdefs.h <<\EOF
 #define CC_HAS_INLINE_FUNCS 1
 EOF
 
-echo "$as_me:7283: checking if unsigned literals are legal" >&5
+echo "$as_me:8555: checking if unsigned literals are legal" >&5
 echo $ECHO_N "checking if unsigned literals are legal... $ECHO_C" >&6
 if test "${cf_cv_unsigned_literals+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
        cat >conftest.$ac_ext <<_ACEOF
-#line 7290 "configure"
+#line 8562 "configure"
 #include "confdefs.h"
 
 int
@@ -7299,16 +8571,16 @@ long x = 1L + 1UL + 1U + 1
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7302: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:8574: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7305: \$? = $ac_status" >&5
+  echo "$as_me:8577: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:7308: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8580: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7311: \$? = $ac_status" >&5
+  echo "$as_me:8583: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_unsigned_literals=yes
 else
@@ -7320,10 +8592,10 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 
 fi
 
-echo "$as_me:7323: result: $cf_cv_unsigned_literals" >&5
+echo "$as_me:8595: result: $cf_cv_unsigned_literals" >&5
 echo "${ECHO_T}$cf_cv_unsigned_literals" >&6
 
-echo "$as_me:7326: checking for type of chtype" >&5
+echo "$as_me:8598: checking for type of chtype" >&5
 echo $ECHO_N "checking for type of chtype... $ECHO_C" >&6
 if test "${cf_cv_typeof_chtype+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7333,7 +8605,7 @@ else
   cf_cv_typeof_chtype=long
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 7336 "configure"
+#line 8608 "configure"
 #include "confdefs.h"
 
 #ifdef USE_WIDEC_SUPPORT
@@ -7380,15 +8652,15 @@ int main()
 
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:7383: \"$ac_link\"") >&5
+if { (eval echo "$as_me:8655: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:7386: \$? = $ac_status" >&5
+  echo "$as_me:8658: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:7388: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8660: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7391: \$? = $ac_status" >&5
+  echo "$as_me:8663: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_typeof_chtype=`cat cf_test.out`
 else
@@ -7403,7 +8675,7 @@ fi
 
 fi
 
-echo "$as_me:7406: result: $cf_cv_typeof_chtype" >&5
+echo "$as_me:8678: result: $cf_cv_typeof_chtype" >&5
 echo "${ECHO_T}$cf_cv_typeof_chtype" >&6
 
 cat >>confdefs.h <<EOF
@@ -7416,14 +8688,14 @@ test "$cf_cv_typeof_chtype"    = long && cf_cv_1UL="${cf_cv_1UL}L"
 
 ###    Checks for external-data
 
-echo "$as_me:7419: checking if external errno is declared" >&5
+echo "$as_me:8691: checking if external errno is declared" >&5
 echo $ECHO_N "checking if external errno is declared... $ECHO_C" >&6
 if test "${cf_cv_dcl_errno+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
     cat >conftest.$ac_ext <<_ACEOF
-#line 7426 "configure"
+#line 8698 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_STDLIB_H
@@ -7441,16 +8713,16 @@ long x = (long) errno
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7444: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:8716: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7447: \$? = $ac_status" >&5
+  echo "$as_me:8719: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:7450: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8722: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7453: \$? = $ac_status" >&5
+  echo "$as_me:8725: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_dcl_errno=yes
 else
@@ -7461,7 +8733,7 @@ fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 
 fi
-echo "$as_me:7464: result: $cf_cv_dcl_errno" >&5
+echo "$as_me:8736: result: $cf_cv_dcl_errno" >&5
 echo "${ECHO_T}$cf_cv_dcl_errno" >&6
 
 if test "$cf_cv_dcl_errno" = no ; then
@@ -7476,14 +8748,14 @@ fi
 
 # It's possible (for near-UNIX clones) that the data doesn't exist
 
-echo "$as_me:7479: checking if external errno exists" >&5
+echo "$as_me:8751: checking if external errno exists" >&5
 echo $ECHO_N "checking if external errno exists... $ECHO_C" >&6
 if test "${cf_cv_have_errno+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
     cat >conftest.$ac_ext <<_ACEOF
-#line 7486 "configure"
+#line 8758 "configure"
 #include "confdefs.h"
 
 #undef errno
@@ -7498,16 +8770,16 @@ errno = 2
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7501: \"$ac_link\"") >&5
+if { (eval echo "$as_me:8773: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:7504: \$? = $ac_status" >&5
+  echo "$as_me:8776: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:7507: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8779: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7510: \$? = $ac_status" >&5
+  echo "$as_me:8782: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_have_errno=yes
 else
@@ -7518,7 +8790,7 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 
 fi
-echo "$as_me:7521: result: $cf_cv_have_errno" >&5
+echo "$as_me:8793: result: $cf_cv_have_errno" >&5
 echo "${ECHO_T}$cf_cv_have_errno" >&6
 
 if test "$cf_cv_have_errno" = yes ; then
@@ -7531,7 +8803,7 @@ EOF
 
 fi
 
-echo "$as_me:7534: checking if data-only library module links" >&5
+echo "$as_me:8806: checking if data-only library module links" >&5
 echo $ECHO_N "checking if data-only library module links... $ECHO_C" >&6
 if test "${cf_cv_link_dataonly+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -7539,20 +8811,20 @@ else
 
        rm -f conftest.a
        cat >conftest.$ac_ext <<EOF
-#line 7542 "configure"
+#line 8814 "configure"
 int    testdata[3] = { 123, 456, 789 };
 EOF
-       if { (eval echo "$as_me:7545: \"$ac_compile\"") >&5
+       if { (eval echo "$as_me:8817: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7548: \$? = $ac_status" >&5
+  echo "$as_me:8820: \$? = $ac_status" >&5
   (exit $ac_status); } ; then
                mv conftest.o data.o && \
                ( $AR $AR_OPTS conftest.a data.o ) 2>&5 1>/dev/null
        fi
        rm -f conftest.$ac_ext data.o
        cat >conftest.$ac_ext <<EOF
-#line 7555 "configure"
+#line 8827 "configure"
 int    testfunc()
 {
 #if defined(NeXT)
@@ -7565,23 +8837,23 @@ int     testfunc()
 #endif
 }
 EOF
-       if { (eval echo "$as_me:7568: \"$ac_compile\"") >&5
+       if { (eval echo "$as_me:8840: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7571: \$? = $ac_status" >&5
+  echo "$as_me:8843: \$? = $ac_status" >&5
   (exit $ac_status); }; then
                mv conftest.o func.o && \
                ( $AR $AR_OPTS conftest.a func.o ) 2>&5 1>/dev/null
        fi
        rm -f conftest.$ac_ext func.o
-       ( eval $ac_cv_prog_RANLIB conftest.a ) 2>&5 >/dev/null
+       ( eval $RANLIB conftest.a ) 2>&5 >/dev/null
        cf_saveLIBS="$LIBS"
        LIBS="conftest.a $LIBS"
        if test "$cross_compiling" = yes; then
   cf_cv_link_dataonly=unknown
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 7584 "configure"
+#line 8856 "configure"
 #include "confdefs.h"
 
        int main()
@@ -7592,15 +8864,15 @@ else
 
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:7595: \"$ac_link\"") >&5
+if { (eval echo "$as_me:8867: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:7598: \$? = $ac_status" >&5
+  echo "$as_me:8870: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:7600: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8872: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7603: \$? = $ac_status" >&5
+  echo "$as_me:8875: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_link_dataonly=yes
 else
@@ -7615,7 +8887,7 @@ fi
 
 fi
 
-echo "$as_me:7618: result: $cf_cv_link_dataonly" >&5
+echo "$as_me:8890: result: $cf_cv_link_dataonly" >&5
 echo "${ECHO_T}$cf_cv_link_dataonly" >&6
 
 if test "$cf_cv_link_dataonly" = no ; then
@@ -7652,13 +8924,13 @@ vsnprintf \
 
 do
 as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:7655: checking for $ac_func" >&5
+echo "$as_me:8927: checking for $ac_func" >&5
 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
 if eval "test \"\${$as_ac_var+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 7661 "configure"
+#line 8933 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func (); below.  */
@@ -7689,16 +8961,16 @@ f = $ac_func;
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7692: \"$ac_link\"") >&5
+if { (eval echo "$as_me:8964: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:7695: \$? = $ac_status" >&5
+  echo "$as_me:8967: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:7698: \"$ac_try\"") >&5
+  { (eval echo "$as_me:8970: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7701: \$? = $ac_status" >&5
+  echo "$as_me:8973: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   eval "$as_ac_var=yes"
 else
@@ -7708,7 +8980,7 @@ eval "$as_ac_var=no"
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-echo "$as_me:7711: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "$as_me:8983: result: `eval echo '${'$as_ac_var'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
 if test `eval echo '${'$as_ac_var'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -7720,14 +8992,14 @@ done
 
 if test "$with_getcap" = "yes" ; then
 
-echo "$as_me:7723: checking for terminal-capability database functions" >&5
+echo "$as_me:8995: checking for terminal-capability database functions" >&5
 echo $ECHO_N "checking for terminal-capability database functions... $ECHO_C" >&6
 if test "${cf_cv_cgetent+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 7730 "configure"
+#line 9002 "configure"
 #include "confdefs.h"
 
 #include <stdlib.h>
@@ -7747,16 +9019,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7750: \"$ac_link\"") >&5
+if { (eval echo "$as_me:9022: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:7753: \$? = $ac_status" >&5
+  echo "$as_me:9025: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:7756: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9028: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7759: \$? = $ac_status" >&5
+  echo "$as_me:9031: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_cgetent=yes
 else
@@ -7768,7 +9040,7 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 
 fi
 
-echo "$as_me:7771: result: $cf_cv_cgetent" >&5
+echo "$as_me:9043: result: $cf_cv_cgetent" >&5
 echo "${ECHO_T}$cf_cv_cgetent" >&6
 test "$cf_cv_cgetent" = yes && cat >>confdefs.h <<\EOF
 #define HAVE_BSD_CGETENT 1
@@ -7776,14 +9048,14 @@ EOF
 
 fi
 
-echo "$as_me:7779: checking for isascii" >&5
+echo "$as_me:9051: checking for isascii" >&5
 echo $ECHO_N "checking for isascii... $ECHO_C" >&6
 if test "${cf_cv_have_isascii+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
        cat >conftest.$ac_ext <<_ACEOF
-#line 7786 "configure"
+#line 9058 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 int
@@ -7795,16 +9067,16 @@ int x = isascii(' ')
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:7798: \"$ac_link\"") >&5
+if { (eval echo "$as_me:9070: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:7801: \$? = $ac_status" >&5
+  echo "$as_me:9073: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:7804: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9076: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7807: \$? = $ac_status" >&5
+  echo "$as_me:9079: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_have_isascii=yes
 else
@@ -7815,17 +9087,17 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 
 fi
-echo "$as_me:7818: result: $cf_cv_have_isascii" >&5
+echo "$as_me:9090: result: $cf_cv_have_isascii" >&5
 echo "${ECHO_T}$cf_cv_have_isascii" >&6
 test "$cf_cv_have_isascii" = yes && cat >>confdefs.h <<\EOF
 #define HAVE_ISASCII 1
 EOF
 
 if test "$ac_cv_func_sigaction" = yes; then
-echo "$as_me:7825: checking whether sigaction needs _POSIX_SOURCE" >&5
+echo "$as_me:9097: checking whether sigaction needs _POSIX_SOURCE" >&5
 echo $ECHO_N "checking whether sigaction needs _POSIX_SOURCE... $ECHO_C" >&6
 cat >conftest.$ac_ext <<_ACEOF
-#line 7828 "configure"
+#line 9100 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -7839,16 +9111,16 @@ struct sigaction act
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7842: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:9114: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7845: \$? = $ac_status" >&5
+  echo "$as_me:9117: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:7848: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9120: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7851: \$? = $ac_status" >&5
+  echo "$as_me:9123: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   sigact_bad=no
 else
@@ -7856,7 +9128,7 @@ else
 cat conftest.$ac_ext >&5
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 7859 "configure"
+#line 9131 "configure"
 #include "confdefs.h"
 
 #define _POSIX_SOURCE
@@ -7871,16 +9143,16 @@ struct sigaction act
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:7874: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:9146: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:7877: \$? = $ac_status" >&5
+  echo "$as_me:9149: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:7880: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9152: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:7883: \$? = $ac_status" >&5
+  echo "$as_me:9155: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   sigact_bad=yes
         cat >>confdefs.h <<\EOF
@@ -7895,7 +9167,7 @@ fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:7898: result: $sigact_bad" >&5
+echo "$as_me:9170: result: $sigact_bad" >&5
 echo "${ECHO_T}$sigact_bad" >&6
 fi
 
@@ -7906,23 +9178,23 @@ unistd.h \
 
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:7909: checking for $ac_header" >&5
+echo "$as_me:9181: checking for $ac_header" >&5
 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
 if eval "test \"\${$as_ac_Header+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 7915 "configure"
+#line 9187 "configure"
 #include "confdefs.h"
 #include <$ac_header>
 _ACEOF
-if { (eval echo "$as_me:7919: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:9191: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:7925: \$? = $ac_status" >&5
+  echo "$as_me:9197: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -7941,7 +9213,7 @@ else
 fi
 rm -f conftest.err conftest.$ac_ext
 fi
-echo "$as_me:7944: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "$as_me:9216: result: `eval echo '${'$as_ac_Header'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
 if test `eval echo '${'$as_ac_Header'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -7956,23 +9228,23 @@ if test "$ISC" = yes ; then
 for ac_header in sys/termio.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:7959: checking for $ac_header" >&5
+echo "$as_me:9231: checking for $ac_header" >&5
 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
 if eval "test \"\${$as_ac_Header+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 7965 "configure"
+#line 9237 "configure"
 #include "confdefs.h"
 #include <$ac_header>
 _ACEOF
-if { (eval echo "$as_me:7969: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:9241: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:7975: \$? = $ac_status" >&5
+  echo "$as_me:9247: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -7991,7 +9263,7 @@ else
 fi
 rm -f conftest.err conftest.$ac_ext
 fi
-echo "$as_me:7994: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "$as_me:9266: result: `eval echo '${'$as_ac_Header'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
 if test `eval echo '${'$as_ac_Header'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -8009,10 +9281,10 @@ if test "$ac_cv_header_termios_h" = yes ; then
        *)      termios_bad=maybe ;;
        esac
        if test "$termios_bad" = maybe ; then
-       echo "$as_me:8012: checking whether termios.h needs _POSIX_SOURCE" >&5
+       echo "$as_me:9284: checking whether termios.h needs _POSIX_SOURCE" >&5
 echo $ECHO_N "checking whether termios.h needs _POSIX_SOURCE... $ECHO_C" >&6
        cat >conftest.$ac_ext <<_ACEOF
-#line 8015 "configure"
+#line 9287 "configure"
 #include "confdefs.h"
 #include <termios.h>
 int
@@ -8024,16 +9296,16 @@ struct termios foo; int x = foo.c_iflag
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8027: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:9299: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:8030: \$? = $ac_status" >&5
+  echo "$as_me:9302: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:8033: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9305: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8036: \$? = $ac_status" >&5
+  echo "$as_me:9308: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   termios_bad=no
 else
@@ -8041,7 +9313,7 @@ else
 cat conftest.$ac_ext >&5
 
                cat >conftest.$ac_ext <<_ACEOF
-#line 8044 "configure"
+#line 9316 "configure"
 #include "confdefs.h"
 
 #define _POSIX_SOURCE
@@ -8055,16 +9327,16 @@ struct termios foo; int x = foo.c_iflag
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8058: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:9330: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:8061: \$? = $ac_status" >&5
+  echo "$as_me:9333: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:8064: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9336: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8067: \$? = $ac_status" >&5
+  echo "$as_me:9339: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   termios_bad=unknown
 else
@@ -8079,19 +9351,19 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
-       echo "$as_me:8082: result: $termios_bad" >&5
+       echo "$as_me:9354: result: $termios_bad" >&5
 echo "${ECHO_T}$termios_bad" >&6
        fi
 fi
 
-echo "$as_me:8087: checking for tcgetattr" >&5
+echo "$as_me:9359: checking for tcgetattr" >&5
 echo $ECHO_N "checking for tcgetattr... $ECHO_C" >&6
 if test "${cf_cv_have_tcgetattr+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 8094 "configure"
+#line 9366 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -8119,16 +9391,16 @@ tcgetattr(1, &foo);
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8122: \"$ac_link\"") >&5
+if { (eval echo "$as_me:9394: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8125: \$? = $ac_status" >&5
+  echo "$as_me:9397: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:8128: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9400: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8131: \$? = $ac_status" >&5
+  echo "$as_me:9403: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_have_tcgetattr=yes
 else
@@ -8138,20 +9410,20 @@ cf_cv_have_tcgetattr=no
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-echo "$as_me:8141: result: $cf_cv_have_tcgetattr" >&5
+echo "$as_me:9413: result: $cf_cv_have_tcgetattr" >&5
 echo "${ECHO_T}$cf_cv_have_tcgetattr" >&6
 test "$cf_cv_have_tcgetattr" = yes && cat >>confdefs.h <<\EOF
 #define HAVE_TCGETATTR 1
 EOF
 
-echo "$as_me:8147: checking for vsscanf function or workaround" >&5
+echo "$as_me:9419: checking for vsscanf function or workaround" >&5
 echo $ECHO_N "checking for vsscanf function or workaround... $ECHO_C" >&6
 if test "${cf_cv_func_vsscanf+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 8154 "configure"
+#line 9426 "configure"
 #include "confdefs.h"
 
 #include <stdarg.h>
@@ -8167,16 +9439,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8170: \"$ac_link\"") >&5
+if { (eval echo "$as_me:9442: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8173: \$? = $ac_status" >&5
+  echo "$as_me:9445: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:8176: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9448: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8179: \$? = $ac_status" >&5
+  echo "$as_me:9451: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_func_vsscanf=vsscanf
 else
@@ -8184,7 +9456,7 @@ else
 cat conftest.$ac_ext >&5
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 8187 "configure"
+#line 9459 "configure"
 #include "confdefs.h"
 
 #include <stdarg.h>
@@ -8206,16 +9478,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8209: \"$ac_link\"") >&5
+if { (eval echo "$as_me:9481: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8212: \$? = $ac_status" >&5
+  echo "$as_me:9484: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:8215: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9487: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8218: \$? = $ac_status" >&5
+  echo "$as_me:9490: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_func_vsscanf=vfscanf
 else
@@ -8223,7 +9495,7 @@ else
 cat conftest.$ac_ext >&5
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 8226 "configure"
+#line 9498 "configure"
 #include "confdefs.h"
 
 #include <stdarg.h>
@@ -8245,16 +9517,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8248: \"$ac_link\"") >&5
+if { (eval echo "$as_me:9520: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8251: \$? = $ac_status" >&5
+  echo "$as_me:9523: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:8254: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9526: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8257: \$? = $ac_status" >&5
+  echo "$as_me:9529: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_func_vsscanf=_doscan
 else
@@ -8269,7 +9541,7 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-echo "$as_me:8272: result: $cf_cv_func_vsscanf" >&5
+echo "$as_me:9544: result: $cf_cv_func_vsscanf" >&5
 echo "${ECHO_T}$cf_cv_func_vsscanf" >&6
 
 case $cf_cv_func_vsscanf in #(vi
@@ -8287,7 +9559,7 @@ EOF
 ;;
 esac
 
-echo "$as_me:8290: checking for working mkstemp" >&5
+echo "$as_me:9562: checking for working mkstemp" >&5
 echo $ECHO_N "checking for working mkstemp... $ECHO_C" >&6
 if test "${cf_cv_func_mkstemp+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8295,13 +9567,13 @@ else
 
 rm -f conftest*
 if test "$cross_compiling" = yes; then
-  echo "$as_me:8298: checking for mkstemp" >&5
+  echo "$as_me:9570: checking for mkstemp" >&5
 echo $ECHO_N "checking for mkstemp... $ECHO_C" >&6
 if test "${ac_cv_func_mkstemp+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 8304 "configure"
+#line 9576 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char mkstemp (); below.  */
@@ -8332,16 +9604,16 @@ f = mkstemp;
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8335: \"$ac_link\"") >&5
+if { (eval echo "$as_me:9607: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8338: \$? = $ac_status" >&5
+  echo "$as_me:9610: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:8341: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9613: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8344: \$? = $ac_status" >&5
+  echo "$as_me:9616: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_func_mkstemp=yes
 else
@@ -8351,12 +9623,12 @@ ac_cv_func_mkstemp=no
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-echo "$as_me:8354: result: $ac_cv_func_mkstemp" >&5
+echo "$as_me:9626: result: $ac_cv_func_mkstemp" >&5
 echo "${ECHO_T}$ac_cv_func_mkstemp" >&6
 
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 8359 "configure"
+#line 9631 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -8394,15 +9666,15 @@ int main()
 
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:8397: \"$ac_link\"") >&5
+if { (eval echo "$as_me:9669: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8400: \$? = $ac_status" >&5
+  echo "$as_me:9672: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:8402: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9674: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8405: \$? = $ac_status" >&5
+  echo "$as_me:9677: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_func_mkstemp=yes
 
@@ -8417,7 +9689,7 @@ rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
 
 fi
-echo "$as_me:8420: result: $cf_cv_func_mkstemp" >&5
+echo "$as_me:9692: result: $cf_cv_func_mkstemp" >&5
 echo "${ECHO_T}$cf_cv_func_mkstemp" >&6
 if test "$cf_cv_func_mkstemp" = yes ; then
        cat >>confdefs.h <<\EOF
@@ -8434,21 +9706,21 @@ else
 fi
 
 if test "$cross_compiling" = yes ; then
-       { echo "$as_me:8437: WARNING: cross compiling: assume setvbuf params not reversed" >&5
+       { echo "$as_me:9709: WARNING: cross compiling: assume setvbuf params not reversed" >&5
 echo "$as_me: WARNING: cross compiling: assume setvbuf params not reversed" >&2;}
 else
-       echo "$as_me:8440: checking whether setvbuf arguments are reversed" >&5
+       echo "$as_me:9712: checking whether setvbuf arguments are reversed" >&5
 echo $ECHO_N "checking whether setvbuf arguments are reversed... $ECHO_C" >&6
 if test "${ac_cv_func_setvbuf_reversed+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test "$cross_compiling" = yes; then
-  { { echo "$as_me:8446: error: cannot run test program while cross compiling" >&5
+  { { echo "$as_me:9718: error: cannot run test program while cross compiling" >&5
 echo "$as_me: error: cannot run test program while cross compiling" >&2;}
    { (exit 1); exit 1; }; }
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 8451 "configure"
+#line 9723 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 /* If setvbuf has the reversed format, exit 0. */
@@ -8465,15 +9737,15 @@ main ()
 }
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:8468: \"$ac_link\"") >&5
+if { (eval echo "$as_me:9740: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8471: \$? = $ac_status" >&5
+  echo "$as_me:9743: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:8473: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9745: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8476: \$? = $ac_status" >&5
+  echo "$as_me:9748: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_func_setvbuf_reversed=yes
 else
@@ -8486,7 +9758,7 @@ rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
 rm -f core core.* *.core
 fi
-echo "$as_me:8489: result: $ac_cv_func_setvbuf_reversed" >&5
+echo "$as_me:9761: result: $ac_cv_func_setvbuf_reversed" >&5
 echo "${ECHO_T}$ac_cv_func_setvbuf_reversed" >&6
 if test $ac_cv_func_setvbuf_reversed = yes; then
 
@@ -8497,13 +9769,13 @@ EOF
 fi
 
 fi
-echo "$as_me:8500: checking return type of signal handlers" >&5
+echo "$as_me:9772: checking return type of signal handlers" >&5
 echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6
 if test "${ac_cv_type_signal+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 8506 "configure"
+#line 9778 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <signal.h>
@@ -8525,16 +9797,16 @@ int i;
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8528: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:9800: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:8531: \$? = $ac_status" >&5
+  echo "$as_me:9803: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:8534: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9806: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8537: \$? = $ac_status" >&5
+  echo "$as_me:9809: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_type_signal=void
 else
@@ -8544,21 +9816,21 @@ ac_cv_type_signal=int
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:8547: result: $ac_cv_type_signal" >&5
+echo "$as_me:9819: result: $ac_cv_type_signal" >&5
 echo "${ECHO_T}$ac_cv_type_signal" >&6
 
 cat >>confdefs.h <<EOF
 #define RETSIGTYPE $ac_cv_type_signal
 EOF
 
-echo "$as_me:8554: checking for type sigaction_t" >&5
+echo "$as_me:9826: checking for type sigaction_t" >&5
 echo $ECHO_N "checking for type sigaction_t... $ECHO_C" >&6
 if test "${cf_cv_type_sigaction+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
        cat >conftest.$ac_ext <<_ACEOF
-#line 8561 "configure"
+#line 9833 "configure"
 #include "confdefs.h"
 
 #include <signal.h>
@@ -8571,16 +9843,16 @@ sigaction_t x
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8574: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:9846: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:8577: \$? = $ac_status" >&5
+  echo "$as_me:9849: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:8580: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9852: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8583: \$? = $ac_status" >&5
+  echo "$as_me:9855: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_type_sigaction=yes
 else
@@ -8591,13 +9863,13 @@ fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
 
-echo "$as_me:8594: result: $cf_cv_type_sigaction" >&5
+echo "$as_me:9866: result: $cf_cv_type_sigaction" >&5
 echo "${ECHO_T}$cf_cv_type_sigaction" >&6
 test "$cf_cv_type_sigaction" = yes && cat >>confdefs.h <<\EOF
 #define HAVE_TYPE_SIGACTION 1
 EOF
 
-echo "$as_me:8600: checking declaration of size-change" >&5
+echo "$as_me:9872: checking declaration of size-change" >&5
 echo $ECHO_N "checking declaration of size-change... $ECHO_C" >&6
 if test "${cf_cv_sizechange+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8612,7 +9884,7 @@ do
     CPPFLAGS="$cf_save_CPPFLAGS"
     test -n "$cf_opts" && CPPFLAGS="$CPPFLAGS -D$cf_opts"
     cat >conftest.$ac_ext <<_ACEOF
-#line 8615 "configure"
+#line 9887 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #ifdef HAVE_TERMIOS_H
@@ -8656,16 +9928,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:8659: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:9931: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:8662: \$? = $ac_status" >&5
+  echo "$as_me:9934: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:8665: \"$ac_try\"") >&5
+  { (eval echo "$as_me:9937: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8668: \$? = $ac_status" >&5
+  echo "$as_me:9940: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_sizechange=yes
 else
@@ -8684,7 +9956,7 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 done
 
 fi
-echo "$as_me:8687: result: $cf_cv_sizechange" >&5
+echo "$as_me:9959: result: $cf_cv_sizechange" >&5
 echo "${ECHO_T}$cf_cv_sizechange" >&6
 if test "$cf_cv_sizechange" != no ; then
        cat >>confdefs.h <<\EOF
@@ -8701,13 +9973,13 @@ EOF
        esac
 fi
 
-echo "$as_me:8704: checking for memmove" >&5
+echo "$as_me:9976: checking for memmove" >&5
 echo $ECHO_N "checking for memmove... $ECHO_C" >&6
 if test "${ac_cv_func_memmove+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 8710 "configure"
+#line 9982 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char memmove (); below.  */
@@ -8738,16 +10010,16 @@ f = memmove;
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8741: \"$ac_link\"") >&5
+if { (eval echo "$as_me:10013: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8744: \$? = $ac_status" >&5
+  echo "$as_me:10016: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:8747: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10019: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8750: \$? = $ac_status" >&5
+  echo "$as_me:10022: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_func_memmove=yes
 else
@@ -8757,19 +10029,19 @@ ac_cv_func_memmove=no
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-echo "$as_me:8760: result: $ac_cv_func_memmove" >&5
+echo "$as_me:10032: result: $ac_cv_func_memmove" >&5
 echo "${ECHO_T}$ac_cv_func_memmove" >&6
 if test $ac_cv_func_memmove = yes; then
   :
 else
 
-echo "$as_me:8766: checking for bcopy" >&5
+echo "$as_me:10038: checking for bcopy" >&5
 echo $ECHO_N "checking for bcopy... $ECHO_C" >&6
 if test "${ac_cv_func_bcopy+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 8772 "configure"
+#line 10044 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char bcopy (); below.  */
@@ -8800,16 +10072,16 @@ f = bcopy;
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:8803: \"$ac_link\"") >&5
+if { (eval echo "$as_me:10075: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8806: \$? = $ac_status" >&5
+  echo "$as_me:10078: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:8809: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10081: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8812: \$? = $ac_status" >&5
+  echo "$as_me:10084: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_func_bcopy=yes
 else
@@ -8819,11 +10091,11 @@ ac_cv_func_bcopy=no
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-echo "$as_me:8822: result: $ac_cv_func_bcopy" >&5
+echo "$as_me:10094: result: $ac_cv_func_bcopy" >&5
 echo "${ECHO_T}$ac_cv_func_bcopy" >&6
 if test $ac_cv_func_bcopy = yes; then
 
-       echo "$as_me:8826: checking if bcopy does overlapping moves" >&5
+       echo "$as_me:10098: checking if bcopy does overlapping moves" >&5
 echo $ECHO_N "checking if bcopy does overlapping moves... $ECHO_C" >&6
 if test "${cf_cv_good_bcopy+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8833,7 +10105,7 @@ else
   cf_cv_good_bcopy=unknown
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 8836 "configure"
+#line 10108 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -8847,15 +10119,15 @@ int main() {
 
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:8850: \"$ac_link\"") >&5
+if { (eval echo "$as_me:10122: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8853: \$? = $ac_status" >&5
+  echo "$as_me:10125: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:8855: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10127: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8858: \$? = $ac_status" >&5
+  echo "$as_me:10130: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_good_bcopy=yes
 else
@@ -8868,7 +10140,7 @@ rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
 
 fi
-echo "$as_me:8871: result: $cf_cv_good_bcopy" >&5
+echo "$as_me:10143: result: $cf_cv_good_bcopy" >&5
 echo "${ECHO_T}$cf_cv_good_bcopy" >&6
 
 else
@@ -8889,7 +10161,7 @@ EOF
 
 fi
 
-echo "$as_me:8892: checking if poll really works" >&5
+echo "$as_me:10164: checking if poll really works" >&5
 echo $ECHO_N "checking if poll really works... $ECHO_C" >&6
 if test "${cf_cv_working_poll+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -8899,7 +10171,7 @@ if test "$cross_compiling" = yes; then
   cf_cv_working_poll=unknown
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 8902 "configure"
+#line 10174 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -8920,15 +10192,15 @@ int main() {
 }
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:8923: \"$ac_link\"") >&5
+if { (eval echo "$as_me:10195: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:8926: \$? = $ac_status" >&5
+  echo "$as_me:10198: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:8928: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10200: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:8931: \$? = $ac_status" >&5
+  echo "$as_me:10203: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_working_poll=yes
 else
 rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
 fi
-echo "$as_me:8943: result: $cf_cv_working_poll" >&5
+echo "$as_me:10215: result: $cf_cv_working_poll" >&5
 echo "${ECHO_T}$cf_cv_working_poll" >&6
 test "$cf_cv_working_poll" = "yes" && cat >>confdefs.h <<\EOF
 #define HAVE_WORKING_POLL 1
 EOF
 
 if test -z "$cf_user_CFLAGS" ; then
-       CFLAGS=`echo ${CFLAGS} | sed -e 's/-g //' -e 's/-g$//'`
-       CXXFLAGS=`echo ${CXXFLAGS} | sed -e 's/-g //' -e 's/-g$//'`
+       CFLAGS=`echo ${CFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'`
+       CXXFLAGS=`echo ${CXXFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'`
 fi
 
-echo "$as_me:8954: checking for stdbool.h" >&5
-echo $ECHO_N "checking for stdbool.h... $ECHO_C" >&6
-if test "${ac_cv_header_stdbool_h+set}" = set; then
+# Just in case, check if the C compiler has a bool type.
+
+echo "$as_me:10228: checking if we should include stdbool.h" >&5
+echo $ECHO_N "checking if we should include stdbool.h... $ECHO_C" >&6
+
+if test "${cf_cv_header_stdbool_h+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-#line 8960 "configure"
+
+       cat >conftest.$ac_ext <<_ACEOF
+#line 10236 "configure"
 #include "confdefs.h"
-#include <stdbool.h>
+
+int
+main ()
+{
+bool foo = false
+  ;
+  return 0;
+}
 _ACEOF
-if { (eval echo "$as_me:8964: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10248: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
   ac_status=$?
-  egrep -v '^ *\+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:8970: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_c_preproc_warn_flag
-  else
-    ac_cpp_err=
-  fi
+  echo "$as_me:10251: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10254: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10257: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_header_stdbool_h=0
 else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_cv_header_stdbool_h=yes
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 10264 "configure"
+#include "confdefs.h"
+
+#ifndef __BEOS__
+#include <stdbool.h>
+#endif
+
+int
+main ()
+{
+bool foo = false
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10280: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10283: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10286: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10289: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_header_stdbool_h=1
 else
   echo "$as_me: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  ac_cv_header_stdbool_h=no
+cat conftest.$ac_ext >&5
+cf_cv_header_stdbool_h=0
 fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:8989: result: $ac_cv_header_stdbool_h" >&5
-echo "${ECHO_T}$ac_cv_header_stdbool_h" >&6
-if test $ac_cv_header_stdbool_h = yes; then
-  cf_cv_header_stdbool_h=1
-else
-  cf_cv_header_stdbool_h=0
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+
+if test "$cf_cv_header_stdbool_h" = 1
+then   echo "$as_me:10303: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else   echo "$as_me:10305: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-echo "$as_me:8997: checking for builtin bool type" >&5
+echo "$as_me:10309: checking for builtin bool type" >&5
 echo $ECHO_N "checking for builtin bool type... $ECHO_C" >&6
+
 if test "${cf_cv_cc_bool_type+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
        cat >conftest.$ac_ext <<_ACEOF
-#line 9004 "configure"
+#line 10317 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -9016,16 +10329,16 @@ bool x = false
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9019: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:10332: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:9022: \$? = $ac_status" >&5
+  echo "$as_me:10335: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:9025: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10338: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:9028: \$? = $ac_status" >&5
+  echo "$as_me:10341: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_cc_bool_type=1
 else
@@ -9038,12 +10351,13 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 fi
 
 if test "$cf_cv_cc_bool_type" = 1
-then   echo "$as_me:9041: result: yes" >&5
+then   echo "$as_me:10354: result: yes" >&5
 echo "${ECHO_T}yes" >&6
-else   echo "$as_me:9043: result: no" >&5
+else   echo "$as_me:10356: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
+# Check for C++ compiler characteristics (and ensure that it's there!)
 if test -n "$CXX" ; then
        ac_ext=cc
 ac_cpp='$CXXCPP $CPPFLAGS'
@@ -9060,7 +10374,7 @@ os2*) #(vi
        cf_stdcpp_libname=stdc++
        ;;
 esac
-echo "$as_me:9063: checking for library $cf_stdcpp_libname" >&5
+echo "$as_me:10377: checking for library $cf_stdcpp_libname" >&5
 echo $ECHO_N "checking for library $cf_stdcpp_libname... $ECHO_C" >&6
 if test "${cf_cv_libstdcpp+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9069,7 +10383,7 @@ else
        cf_save="$LIBS"
        LIBS="$LIBS -l$cf_stdcpp_libname"
 cat >conftest.$ac_ext <<_ACEOF
-#line 9072 "configure"
+#line 10386 "configure"
 #include "confdefs.h"
 
 #include <strstream.h>
@@ -9085,16 +10399,16 @@ strstreambuf foo(buf, sizeof(buf))
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9088: \"$ac_link\"") >&5
+if { (eval echo "$as_me:10402: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:9091: \$? = $ac_status" >&5
+  echo "$as_me:10405: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:9094: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10408: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:9097: \$? = $ac_status" >&5
+  echo "$as_me:10411: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_libstdcpp=yes
 else
@@ -9106,7 +10420,7 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
        LIBS="$cf_save"
 
 fi
-echo "$as_me:9109: result: $cf_cv_libstdcpp" >&5
+echo "$as_me:10423: result: $cf_cv_libstdcpp" >&5
 echo "${ECHO_T}$cf_cv_libstdcpp" >&6
 test "$cf_cv_libstdcpp" = yes && CXXLIBS="$CXXLIBS -l$cf_stdcpp_libname"
 fi
@@ -9126,13 +10440,13 @@ os2*) #(vi
        cf_gpp_libname=g++
        ;;
 esac
-if test "$ac_cv_cxx_compiler_gnu" = yes; then
-       echo "$as_me:9130: checking for lib$cf_gpp_libname" >&5
+if test "$GXX" = yes; then
+       echo "$as_me:10444: checking for lib$cf_gpp_libname" >&5
 echo $ECHO_N "checking for lib$cf_gpp_libname... $ECHO_C" >&6
        cf_save="$LIBS"
        LIBS="$LIBS -l$cf_gpp_libname"
        cat >conftest.$ac_ext <<_ACEOF
-#line 9135 "configure"
+#line 10449 "configure"
 #include "confdefs.h"
 
 #include <$cf_gpp_libname/builtin.h>
@@ -9146,16 +10460,16 @@ two_arg_error_handler_t foo2 = lib_error_handler
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9149: \"$ac_link\"") >&5
+if { (eval echo "$as_me:10463: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:9152: \$? = $ac_status" >&5
+  echo "$as_me:10466: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:9155: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10469: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:9158: \$? = $ac_status" >&5
+  echo "$as_me:10472: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cxx_library=yes
         CXXLIBS="$CXXLIBS -l$cf_gpp_libname"
@@ -9174,7 +10488,7 @@ else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
 cat >conftest.$ac_ext <<_ACEOF
-#line 9177 "configure"
+#line 10491 "configure"
 #include "confdefs.h"
 
 #include <builtin.h>
@@ -9188,16 +10502,16 @@ two_arg_error_handler_t foo2 = lib_error_handler
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9191: \"$ac_link\"") >&5
+if { (eval echo "$as_me:10505: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:9194: \$? = $ac_status" >&5
+  echo "$as_me:10508: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:9197: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10511: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:9200: \$? = $ac_status" >&5
+  echo "$as_me:10514: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cxx_library=yes
         CXXLIBS="$CXXLIBS -l$cf_gpp_libname"
@@ -9214,7 +10528,7 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
        LIBS="$cf_save"
-       echo "$as_me:9217: result: $cf_cxx_library" >&5
+       echo "$as_me:10531: result: $cf_cxx_library" >&5
 echo "${ECHO_T}$cf_cxx_library" >&6
 fi
 
@@ -9229,7 +10543,7 @@ ac_cpp='$CXXCPP $CPPFLAGS'
 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-echo "$as_me:9232: checking how to run the C++ preprocessor" >&5
+echo "$as_me:10546: checking how to run the C++ preprocessor" >&5
 echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6
 if test -z "$CXXCPP"; then
   if test "${ac_cv_prog_CXXCPP+set}" = set; then
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat >conftest.$ac_ext <<_ACEOF
-#line 9249 "configure"
+#line 10563 "configure"
 #include "confdefs.h"
 #include <assert.h>
                      Syntax error
 _ACEOF
-if { (eval echo "$as_me:9254: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:10568: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:9260: \$? = $ac_status" >&5
+  echo "$as_me:10574: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_cxx_preproc_warn_flag
@@ -9280,17 +10594,17 @@ rm -f conftest.err conftest.$ac_ext
   # OK, works on sane cases.  Now check whether non-existent headers
   # can be detected and how.
   cat >conftest.$ac_ext <<_ACEOF
-#line 9283 "configure"
+#line 10597 "configure"
 #include "confdefs.h"
 #include <ac_nonexistent.h>
 _ACEOF
-if { (eval echo "$as_me:9287: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:10601: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:9293: \$? = $ac_status" >&5
+  echo "$as_me:10607: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_cxx_preproc_warn_flag
@@ -9327,7 +10641,7 @@ fi
 else
   ac_cv_prog_CXXCPP=$CXXCPP
 fi
-echo "$as_me:9330: result: $CXXCPP" >&5
+echo "$as_me:10644: result: $CXXCPP" >&5
 echo "${ECHO_T}$CXXCPP" >&6
 ac_preproc_ok=false
 for ac_cxx_preproc_warn_flag in '' yes
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat >conftest.$ac_ext <<_ACEOF
-#line 9340 "configure"
+#line 10654 "configure"
 #include "confdefs.h"
 #include <assert.h>
                      Syntax error
 _ACEOF
-if { (eval echo "$as_me:9345: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:10659: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:9351: \$? = $ac_status" >&5
+  echo "$as_me:10665: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_cxx_preproc_warn_flag
@@ -9371,17 +10685,17 @@ rm -f conftest.err conftest.$ac_ext
   # OK, works on sane cases.  Now check whether non-existent headers
   # can be detected and how.
   cat >conftest.$ac_ext <<_ACEOF
-#line 9374 "configure"
+#line 10688 "configure"
 #include "confdefs.h"
 #include <ac_nonexistent.h>
 _ACEOF
-if { (eval echo "$as_me:9378: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:10692: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:9384: \$? = $ac_status" >&5
+  echo "$as_me:10698: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_cxx_preproc_warn_flag
@@ -9409,7 +10723,7 @@ rm -f conftest.err conftest.$ac_ext
 if $ac_preproc_ok; then
   :
 else
-  { { echo "$as_me:9412: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5
+  { { echo "$as_me:10726: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5
 echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -9423,23 +10737,23 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 for ac_header in typeinfo
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:9426: checking for $ac_header" >&5
+echo "$as_me:10740: checking for $ac_header" >&5
 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
 if eval "test \"\${$as_ac_Header+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 9432 "configure"
+#line 10746 "configure"
 #include "confdefs.h"
 #include <$ac_header>
 _ACEOF
-if { (eval echo "$as_me:9436: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:10750: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:9442: \$? = $ac_status" >&5
+  echo "$as_me:10756: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_cxx_preproc_warn_flag
@@ -9458,7 +10772,7 @@ else
 fi
 rm -f conftest.err conftest.$ac_ext
 fi
-echo "$as_me:9461: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "$as_me:10775: result: `eval echo '${'$as_ac_Header'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
 if test `eval echo '${'$as_ac_Header'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -9468,57 +10782,96 @@ EOF
 fi
 done
 
-echo "$as_me:9471: checking for stdbool.h" >&5
-echo $ECHO_N "checking for stdbool.h... $ECHO_C" >&6
-if test "${ac_cv_header_stdbool_h+set}" = set; then
+echo "$as_me:10785: checking if we should include stdbool.h" >&5
+echo $ECHO_N "checking if we should include stdbool.h... $ECHO_C" >&6
+
+if test "${cf_cv_header_stdbool_h+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-#line 9477 "configure"
+
+       cat >conftest.$ac_ext <<_ACEOF
+#line 10793 "configure"
 #include "confdefs.h"
-#include <stdbool.h>
+
+int
+main ()
+{
+bool foo = false
+  ;
+  return 0;
+}
 _ACEOF
-if { (eval echo "$as_me:9481: \"$ac_cpp conftest.$ac_ext\"") >&5
-  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10805: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
   ac_status=$?
-  egrep -v '^ *\+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:9487: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null; then
-  if test -s conftest.err; then
-    ac_cpp_err=$ac_cxx_preproc_warn_flag
-  else
-    ac_cpp_err=
-  fi
+  echo "$as_me:10808: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10811: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10814: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_header_stdbool_h=0
 else
-  ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
-  ac_cv_header_stdbool_h=yes
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 10821 "configure"
+#include "confdefs.h"
+
+#ifndef __BEOS__
+#include <stdbool.h>
+#endif
+
+int
+main ()
+{
+bool foo = false
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10837: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10840: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10843: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10846: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_header_stdbool_h=1
 else
   echo "$as_me: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  ac_cv_header_stdbool_h=no
+cat conftest.$ac_ext >&5
+cf_cv_header_stdbool_h=0
 fi
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:9506: result: $ac_cv_header_stdbool_h" >&5
-echo "${ECHO_T}$ac_cv_header_stdbool_h" >&6
-if test $ac_cv_header_stdbool_h = yes; then
-  cf_cv_header_stdbool_h=1
-else
-  cf_cv_header_stdbool_h=0
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+
+if test "$cf_cv_header_stdbool_h" = 1
+then   echo "$as_me:10860: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else   echo "$as_me:10862: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-echo "$as_me:9514: checking for builtin bool type" >&5
+echo "$as_me:10866: checking for builtin bool type" >&5
 echo $ECHO_N "checking for builtin bool type... $ECHO_C" >&6
+
 if test "${cf_cv_builtin_bool+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
        cat >conftest.$ac_ext <<_ACEOF
-#line 9521 "configure"
+#line 10874 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -9533,16 +10886,16 @@ bool x = false
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9536: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:10889: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:9539: \$? = $ac_status" >&5
+  echo "$as_me:10892: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:9542: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10895: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:9545: \$? = $ac_status" >&5
+  echo "$as_me:10898: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_builtin_bool=1
 else
@@ -9555,13 +10908,13 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 fi
 
 if test "$cf_cv_builtin_bool" = 1
-then   echo "$as_me:9558: result: yes" >&5
+then   echo "$as_me:10911: result: yes" >&5
 echo "${ECHO_T}yes" >&6
-else   echo "$as_me:9560: result: no" >&5
+else   echo "$as_me:10913: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
-echo "$as_me:9564: checking for size of bool" >&5
+echo "$as_me:10917: checking for size of bool" >&5
 echo $ECHO_N "checking for size of bool... $ECHO_C" >&6
 if test "${cf_cv_type_of_bool+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9572,7 +10925,7 @@ else
   cf_cv_type_of_bool=unknown
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 9575 "configure"
+#line 10928 "configure"
 #include "confdefs.h"
 
 #include <stdlib.h>
@@ -9614,15 +10967,15 @@ main()
 
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:9617: \"$ac_link\"") >&5
+if { (eval echo "$as_me:10970: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:9620: \$? = $ac_status" >&5
+  echo "$as_me:10973: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:9622: \"$ac_try\"") >&5
+  { (eval echo "$as_me:10975: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:9625: \$? = $ac_status" >&5
+  echo "$as_me:10978: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_type_of_bool=`cat cf_test.out`
                 if test -z "$cf_cv_type_of_bool"; then
 fi
 
        rm -f cf_test.out
-echo "$as_me:9643: result: $cf_cv_type_of_bool" >&5
+echo "$as_me:10996: result: $cf_cv_type_of_bool" >&5
 echo "${ECHO_T}$cf_cv_type_of_bool" >&6
 if test "$cf_cv_type_of_bool" = unknown ; then
        case .$NCURSES_BOOL in #(vi
        .auto|.) NCURSES_BOOL=unsigned;;
        esac
-       { echo "$as_me:9649: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
+       { echo "$as_me:11002: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
 echo "$as_me: WARNING: Assuming $NCURSES_BOOL for type of bool" >&2;}
        cf_cv_type_of_bool=$NCURSES_BOOL
 fi
 
-echo "$as_me:9654: checking for special defines needed for etip.h" >&5
+echo "$as_me:11007: checking for special defines needed for etip.h" >&5
 echo $ECHO_N "checking for special defines needed for etip.h... $ECHO_C" >&6
 cf_save_CXXFLAGS="$CXXFLAGS"
 cf_result="none"
@@ -9659,11 +11012,11 @@ for cf_math in "" MATH_H
 do
 for cf_excp in "" MATH_EXCEPTION
 do
-       CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu"
+       CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include"
        test -n "$cf_math" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_math}"
        test -n "$cf_excp" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_excp}"
 cat >conftest.$ac_ext <<_ACEOF
-#line 9666 "configure"
+#line 11019 "configure"
 #include "confdefs.h"
 
 #include <etip.h.in>
@@ -9677,16 +11030,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:9680: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:11033: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:9683: \$? = $ac_status" >&5
+  echo "$as_me:11036: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:9686: \"$ac_try\"") >&5
+  { (eval echo "$as_me:11039: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:9689: \$? = $ac_status" >&5
+  echo "$as_me:11042: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
 
        test -n "$cf_math" && cat >>confdefs.h <<EOF
 rm -f conftest.$ac_objext conftest.$ac_ext
 done
 done
-echo "$as_me:9710: result: $cf_result" >&5
+echo "$as_me:11063: result: $cf_result" >&5
 echo "${ECHO_T}$cf_result" >&6
 CXXFLAGS="$cf_save_CXXFLAGS"
 
 if test -n "$CXX"; then
-echo "$as_me:9715: checking if $CXX accepts parameter initialization" >&5
+echo "$as_me:11068: checking if $CXX accepts parameter initialization" >&5
 echo $ECHO_N "checking if $CXX accepts parameter initialization... $ECHO_C" >&6
 if test "${cf_cv_cpp_param_init+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9728,7 +11081,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
   cf_cv_cpp_param_init=unknown
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 9731 "configure"
+#line 11084 "configure"
 #include "confdefs.h"
 
 class TEST {
@@ -9747,15 +11100,15 @@ void main() { }
 
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:9750: \"$ac_link\"") >&5
+if { (eval echo "$as_me:11103: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:9753: \$? = $ac_status" >&5
+  echo "$as_me:11106: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:9755: \"$ac_try\"") >&5
+  { (eval echo "$as_me:11108: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:9758: \$? = $ac_status" >&5
+  echo "$as_me:11111: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_cpp_param_init=yes
 else
@@ -9773,7 +11126,7 @@ ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ex
 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 
 fi
-echo "$as_me:9776: result: $cf_cv_cpp_param_init" >&5
+echo "$as_me:11129: result: $cf_cv_cpp_param_init" >&5
 echo "${ECHO_T}$cf_cv_cpp_param_init" >&6
 fi
 test "$cf_cv_cpp_param_init" = yes && cat >>confdefs.h <<\EOF
@@ -9791,23 +11144,23 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 for ac_header in strstream.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:9794: checking for $ac_header" >&5
+echo "$as_me:11147: checking for $ac_header" >&5
 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
 if eval "test \"\${$as_ac_Header+set}\" = set"; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 9800 "configure"
+#line 11153 "configure"
 #include "confdefs.h"
 #include <$ac_header>
 _ACEOF
-if { (eval echo "$as_me:9804: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:11157: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:9810: \$? = $ac_status" >&5
+  echo "$as_me:11163: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_cxx_preproc_warn_flag
@@ -9826,7 +11179,7 @@ else
 fi
 rm -f conftest.err conftest.$ac_ext
 fi
-echo "$as_me:9829: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "$as_me:11182: result: `eval echo '${'$as_ac_Header'}'`" >&5
 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
 if test `eval echo '${'$as_ac_Header'}'` = yes; then
   cat >>confdefs.h <<EOF
@@ -9836,7 +11189,7 @@ EOF
 fi
 done
 
-echo "$as_me:9839: checking if $CXX supports vscan function" >&5
+echo "$as_me:11192: checking if $CXX supports vscan function" >&5
 echo $ECHO_N "checking if $CXX supports vscan function... $ECHO_C" >&6
 if test "${cf_cv_cpp_vscan_func+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -9850,7 +11203,7 @@ else
        strstream_cast) cf_vscan_defs=USE_STRSTREAM_VSCAN_CAST ;;
        esac
        cat >conftest.$ac_ext <<_ACEOF
-#line 9853 "configure"
+#line 11206 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -9895,16 +11248,16 @@ int tmp, foo = scanw("%d", &tmp)
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:9898: \"$ac_link\"") >&5
+if { (eval echo "$as_me:11251: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:9901: \$? = $ac_status" >&5
+  echo "$as_me:11254: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:9904: \"$ac_try\"") >&5
+  { (eval echo "$as_me:11257: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:9907: \$? = $ac_status" >&5
+  echo "$as_me:11260: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_cpp_vscan_func=$cf_vscan_func; break
 else
@@ -9917,7 +11270,7 @@ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
        done
 
 fi
-echo "$as_me:9920: result: $cf_cv_cpp_vscan_func" >&5
+echo "$as_me:11273: result: $cf_cv_cpp_vscan_func" >&5
 echo "${ECHO_T}$cf_cv_cpp_vscan_func" >&6
 
 ac_ext=cc
@@ -9999,7 +11352,7 @@ else
        else
                if test "$cf_cv_header_stdbool_h" = 1 ; then
 
-echo "$as_me:10002: checking for size of bool" >&5
+echo "$as_me:11355: checking for size of bool" >&5
 echo $ECHO_N "checking for size of bool... $ECHO_C" >&6
 if test "${cf_cv_type_of_bool+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -10010,7 +11363,7 @@ else
   cf_cv_type_of_bool=unknown
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 10013 "configure"
+#line 11366 "configure"
 #include "confdefs.h"
 
 #include <stdlib.h>
@@ -10052,15 +11405,15 @@ main()
 
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:10055: \"$ac_link\"") >&5
+if { (eval echo "$as_me:11408: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:10058: \$? = $ac_status" >&5
+  echo "$as_me:11411: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:10060: \"$ac_try\"") >&5
+  { (eval echo "$as_me:11413: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:10063: \$? = $ac_status" >&5
+  echo "$as_me:11416: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   cf_cv_type_of_bool=`cat cf_test.out`
                 if test -z "$cf_cv_type_of_bool"; then
 fi
 
        rm -f cf_test.out
-echo "$as_me:10081: result: $cf_cv_type_of_bool" >&5
+echo "$as_me:11434: result: $cf_cv_type_of_bool" >&5
 echo "${ECHO_T}$cf_cv_type_of_bool" >&6
 if test "$cf_cv_type_of_bool" = unknown ; then
        case .$NCURSES_BOOL in #(vi
        .auto|.) NCURSES_BOOL=unsigned;;
        esac
-       { echo "$as_me:10087: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
+       { echo "$as_me:11440: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
 echo "$as_me: WARNING: Assuming $NCURSES_BOOL for type of bool" >&2;}
        cf_cv_type_of_bool=$NCURSES_BOOL
 fi
 
                else
-                       echo "$as_me:10093: checking for fallback type of bool" >&5
+                       echo "$as_me:11446: checking for fallback type of bool" >&5
 echo $ECHO_N "checking for fallback type of bool... $ECHO_C" >&6
                        case "$host_cpu" in #(vi
                        i?86)   cf_cv_type_of_bool=char ;; #(vi
                        *)      cf_cv_type_of_bool=int  ;;
                        esac
-                       echo "$as_me:10099: result: $cf_cv_type_of_bool" >&5
+                       echo "$as_me:11452: result: $cf_cv_type_of_bool" >&5
 echo "${ECHO_T}$cf_cv_type_of_bool" >&6
                fi
        fi
 fi
 
+# If the C compiler did not declare bool, and we did not determine that the C++
+# compiler does not declare bool, turn on an ifdef in curses.h that makes the
+# ncurses library use the same type as C++ bool.  Note that this allows one to
+# specify the type of bool in a configure-script option and postpone
+# integration with the C++ compiler provided that the types are compatible.
+USE_CXX_BOOL=1
+if test $cf_cv_cc_bool_type = 1
+then
+       # oops: C has a bool.  Unlikely, but C++ could differ.
+       USE_CXX_BOOL=0
+elif test $cf_cv_builtin_bool = 0
+then
+       # C++ has no bool
+       USE_CXX_BOOL=0
+else
+       # this is the normal case
+       USE_CXX_BOOL='defined(__cplusplus)'
+fi
+
 if test "$cf_with_ada" != "no" ; then
 cf_ada_make=gnatmake
 # Extract the first word of "$cf_ada_make", so it can be a program name with args.
 set dummy $cf_ada_make; ac_word=$2
-echo "$as_me:10109: checking for $ac_word" >&5
+echo "$as_me:11481: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_gnat_exists+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -10121,7 +11493,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_gnat_exists="yes"
-echo "$as_me:10124: found $ac_dir/$ac_word" >&5
+echo "$as_me:11496: found $ac_dir/$ac_word" >&5
 break
 done
 
 fi
 gnat_exists=$ac_cv_prog_gnat_exists
 if test -n "$gnat_exists"; then
-  echo "$as_me:10133: result: $gnat_exists" >&5
+  echo "$as_me:11505: result: $gnat_exists" >&5
 echo "${ECHO_T}$gnat_exists" >&6
 else
-  echo "$as_me:10136: result: no" >&5
+  echo "$as_me:11508: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -10141,18 +11513,23 @@ if test "$ac_cv_prog_gnat_exists" = no; then
    cf_ada_make=
 else
 
-cf_cv_gnat_version=`$cf_ada_make -v 2>&1 | grep '[0-9].[0-9][0-9]*' |\
-  sed -e 's/[^0-9 \.]//g' | $AWK '{print $1;}'`
-case $cf_cv_gnat_version in
+echo "$as_me:11516: checking for gnat version" >&5
+echo $ECHO_N "checking for gnat version... $ECHO_C" >&6
+cf_gnat_version=`${cf_ada_make-gnatmake} -v 2>&1 | grep '[0-9].[0-9][0-9]*' |\
+  sed -e '2,$d' -e 's/[^0-9 \.]//g' -e 's/^[ ]*//' -e 's/ .*//'`
+echo "$as_me:11520: result: $cf_gnat_version" >&5
+echo "${ECHO_T}$cf_gnat_version" >&6
+
+case $cf_gnat_version in
   3.1[1-9]*|3.[2-9]*|[4-9].*)
     cf_cv_prog_gnat_correct=yes
     ;;
-  *) echo Unsupported GNAT version $cf_cv_gnat_version. Required is 3.11 or better. Disabling Ada95 binding.
+  *) echo Unsupported GNAT version $cf_gnat_version. Required is 3.11 or better. Disabling Ada95 binding.
      cf_cv_prog_gnat_correct=no
      ;;
 esac
-case $cf_cv_gnat_version in
-  3.1*|[4-9].*)
+case $cf_gnat_version in
+  3.[1-9]*|[4-9].*)
       cf_compile_generics=generics
       cf_generic_objects="\$(GENOBJS)"
       ;;
@@ -10163,7 +11540,7 @@ esac
 
    # Extract the first word of "m4", so it can be a program name with args.
 set dummy m4; ac_word=$2
-echo "$as_me:10166: checking for $ac_word" >&5
+echo "$as_me:11543: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_M4_exists+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -10178,7 +11555,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_M4_exists="yes"
-echo "$as_me:10181: found $ac_dir/$ac_word" >&5
+echo "$as_me:11558: found $ac_dir/$ac_word" >&5
 break
 done
 
 fi
 M4_exists=$ac_cv_prog_M4_exists
 if test -n "$M4_exists"; then
-  echo "$as_me:10190: result: $M4_exists" >&5
+  echo "$as_me:11567: result: $M4_exists" >&5
 echo "${ECHO_T}$M4_exists" >&6
 else
-  echo "$as_me:10193: result: no" >&5
+  echo "$as_me:11570: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -10199,7 +11576,7 @@ fi
       echo Ada95 binding required program m4 not found. Ada95 binding disabled.
    fi
    if test "$cf_cv_prog_gnat_correct" = yes; then
-      echo "$as_me:10202: checking if GNAT works" >&5
+      echo "$as_me:11579: checking if GNAT works" >&5
 echo $ECHO_N "checking if GNAT works... $ECHO_C" >&6
 
 rm -f conftest*
@@ -10227,7 +11604,7 @@ else
 fi
 rm -f conftest*
 
-      echo "$as_me:10230: result: $cf_cv_prog_gnat_correct" >&5
+      echo "$as_me:11607: result: $cf_cv_prog_gnat_correct" >&5
 echo "${ECHO_T}$cf_cv_prog_gnat_correct" >&6
    fi
 fi
@@ -10270,7 +11647,7 @@ case ".$withval" in #(vi
   withval=`echo $withval | sed -e s%NONE%$ac_default_prefix%`
   ;;
 *)
-  { { echo "$as_me:10273: error: expected a pathname, not \"$withval\"" >&5
+  { { echo "$as_me:11650: error: expected a pathname, not \"$withval\"" >&5
 echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
    { (exit 1); exit 1; }; }
   ;;
@@ -10304,7 +11681,7 @@ case ".$withval" in #(vi
   withval=`echo $withval | sed -e s%NONE%$ac_default_prefix%`
   ;;
 *)
-  { { echo "$as_me:10307: error: expected a pathname, not \"$withval\"" >&5
+  { { echo "$as_me:11684: error: expected a pathname, not \"$withval\"" >&5
 echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
    { (exit 1); exit 1; }; }
   ;;
@@ -10315,51 +11692,29 @@ eval ADA_OBJECTS="$withval"
 fi
 fi
 
-### It's not possible to appease gcc 2.6.3's conversion-warnings if we're
-### using a 'char' for bools.  gcc 2.7.0's conversion-warnings are broken too
-### badly to consider using for development purposes, but 2.5.8 is okay.
-if test -n "$with_warnings"; then
-       case $GCC_VERSION in
-       2.6.3)
-               if test "$cf_cv_type_of_bool" != "char"; then
-                       EXTRA_CFLAGS="$EXTRA_CFLAGS -Wconversion"
-               fi
-               ;;
-       2.5*)
-               EXTRA_CFLAGS="$EXTRA_CFLAGS -Wconversion"
-               ;;
-       esac
-fi
-
 ### Construct the library-subsets, if any, from this set of keywords:
-### none, base, ext_funcs, termlib.
-echo "$as_me:10336: checking for library subsets" >&5
+### none, base, ext_funcs, ext_tinfo, termlib, widechar (see CF_LIB_RULES).
+echo "$as_me:11697: checking for library subsets" >&5
 echo $ECHO_N "checking for library subsets... $ECHO_C" >&6
 if test "$with_termlib" = yes ; then
-       LIB_SUBSETS="termlib "
+       LIB_SUBSETS="termlib"
+       test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo"
+       LIB_SUBSETS="${LIB_SUBSETS} "
 else
        LIB_SUBSETS="termlib+"
+       test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}ext_tinfo+"
 fi
 LIB_SUBSETS="${LIB_SUBSETS}base"
-test "$with_widec" = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
+test "$with_widec"     = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
 test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs"
-echo "$as_me:10346: result: $LIB_SUBSETS" >&5
+echo "$as_me:11710: result: $LIB_SUBSETS" >&5
 echo "${ECHO_T}$LIB_SUBSETS" >&6
 
-LIB_TRACING=DEBUG
-ADA_TRACE=FALSE
-case "$CFLAGS $CPPFLAGS" in
-*-DTRACE*)
-       LIB_TRACING=all
-       ADA_TRACE=TRUE
-       ;;
-esac
-
 ### Construct the list of include-directories to be generated
 
-CPPFLAGS="$CPPFLAGS -I. -I../include"
+CPPFLAGS="-I. -I../include $CPPFLAGS"
 if test "$srcdir" != "."; then
-       CPPFLAGS="$CPPFLAGS -I\$(srcdir)/../include"
+       CPPFLAGS="-I\$(srcdir)/../include $CPPFLAGS"
 fi
 if test "$GCC" != yes; then
        CPPFLAGS="$CPPFLAGS -I\$(includedir)"
@@ -10373,9 +11728,9 @@ elif test "$includedir" != "/usr/include"; then
        fi
 fi
 
-ACPPFLAGS="$ACPPFLAGS -I. -I../../include"
+ACPPFLAGS="-I. -I../../include $ACPPFLAGS"
 if test "$srcdir" != "."; then
-       ACPPFLAGS="$ACPPFLAGS -I\$(srcdir)/../../include"
+       ACPPFLAGS="-I\$(srcdir)/../../include $ACPPFLAGS"
 fi
 if test "$GCC" != yes; then
        ACPPFLAGS="$ACPPFLAGS -I\$(includedir)"
@@ -10390,7 +11745,7 @@ elif test "$includedir" != "/usr/include"; then
 fi
 
 ### Build up pieces for makefile rules
-echo "$as_me:10393: checking default library suffix" >&5
+echo "$as_me:11748: checking default library suffix" >&5
 echo $ECHO_N "checking default library suffix... $ECHO_C" >&6
 
        case $DFT_LWR_MODEL in
@@ -10401,10 +11756,10 @@ echo $ECHO_N "checking default library suffix... $ECHO_C" >&6
        shared)  DFT_ARG_SUFFIX=''   ;;
        esac
        test -n "$LIB_SUFFIX" && DFT_ARG_SUFFIX="${LIB_SUFFIX}${DFT_ARG_SUFFIX}"
-echo "$as_me:10404: result: $DFT_ARG_SUFFIX" >&5
+echo "$as_me:11759: result: $DFT_ARG_SUFFIX" >&5
 echo "${ECHO_T}$DFT_ARG_SUFFIX" >&6
 
-echo "$as_me:10407: checking default library-dependency suffix" >&5
+echo "$as_me:11762: checking default library-dependency suffix" >&5
 echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
 
        case $DFT_LWR_MODEL in
@@ -10416,7 +11771,12 @@ echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
                case $cf_cv_system_name in
                cygwin*) DFT_DEP_SUFFIX='.dll' ;;
                darwin*) DFT_DEP_SUFFIX='.dylib' ;;
-               hpux*)  DFT_DEP_SUFFIX='.sl'  ;;
+               hpux*)
+                       case $target in
+                       ia64*)  DFT_DEP_SUFFIX='.so' ;;
+                       *)      DFT_DEP_SUFFIX='.sl' ;;
+                       esac
+                       ;;
                *)      DFT_DEP_SUFFIX='.so'  ;;
                esac
        esac
@@ -10428,10 +11788,10 @@ if test $DFT_LWR_MODEL = shared ; then
                ;;
        esac
 fi
-echo "$as_me:10431: result: $DFT_DEP_SUFFIX" >&5
+echo "$as_me:11791: result: $DFT_DEP_SUFFIX" >&5
 echo "${ECHO_T}$DFT_DEP_SUFFIX" >&6
 
-echo "$as_me:10434: checking default object directory" >&5
+echo "$as_me:11794: checking default object directory" >&5
 echo $ECHO_N "checking default object directory... $ECHO_C" >&6
 
        case $DFT_LWR_MODEL in
@@ -10447,13 +11807,14 @@ echo $ECHO_N "checking default object directory... $ECHO_C" >&6
                        DFT_OBJ_SUBDIR='obj_s' ;;
                esac
        esac
-echo "$as_me:10450: result: $DFT_OBJ_SUBDIR" >&5
+echo "$as_me:11810: result: $DFT_OBJ_SUBDIR" >&5
 echo "${ECHO_T}$DFT_OBJ_SUBDIR" >&6
 
 # libtool thinks it can make c++ shared libraries (perhaps only g++)
-echo "$as_me:10454: checking c++ library-dependency suffix" >&5
+if test "$cf_with_cxx" = yes ; then
+echo "$as_me:11815: checking c++ library-dependency suffix" >&5
 echo $ECHO_N "checking c++ library-dependency suffix... $ECHO_C" >&6
-if test "$with_libtool" = "yes"; then
+if test "$with_libtool" != "no"; then
        CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX
 else
 
@@ -10466,24 +11827,33 @@ else
                case $cf_cv_system_name in
                cygwin*) CXX_LIB_SUFFIX='.dll' ;;
                darwin*) CXX_LIB_SUFFIX='.dylib' ;;
-               hpux*)  CXX_LIB_SUFFIX='.sl'  ;;
+               hpux*)
+                       case $target in
+                       ia64*)  CXX_LIB_SUFFIX='.so' ;;
+                       *)      CXX_LIB_SUFFIX='.sl' ;;
+                       esac
+                       ;;
                *)      CXX_LIB_SUFFIX='.so'  ;;
                esac
        esac
        test -n "$LIB_SUFFIX" && CXX_LIB_SUFFIX="${LIB_SUFFIX}${CXX_LIB_SUFFIX}"
 fi
-echo "$as_me:10475: result: $CXX_LIB_SUFFIX" >&5
+echo "$as_me:11841: result: $CXX_LIB_SUFFIX" >&5
 echo "${ECHO_T}$CXX_LIB_SUFFIX" >&6
 
+fi
+
 TINFO_LIST="$SHLIB_LIST"
-test "$with_termlib" = yes && SHLIB_LIST="$SHLIB_LIST -ltinfo${LIB_SUFFIX}"
+if test "$with_libtool" = no ; then
+       test "$with_termlib" = yes && SHLIB_LIST="$SHLIB_LIST -ltinfo${LIB_SUFFIX}"
+fi
 
-echo "$as_me:10481: checking where we will install curses.h" >&5
+echo "$as_me:11851: checking where we will install curses.h" >&5
 echo $ECHO_N "checking where we will install curses.h... $ECHO_C" >&6
 test "$with_overwrite" = no && \
 test "x$includedir" = 'x${prefix}/include' && \
        includedir='$(prefix)/include/ncurses'${LIB_SUFFIX}
-echo "$as_me:10486: result: $includedir" >&5
+echo "$as_me:11856: result: $includedir" >&5
 echo "${ECHO_T}$includedir" >&6
 
 ### Resolve a conflict between normal and wide-curses by forcing applications
@@ -10491,7 +11861,7 @@ echo "${ECHO_T}$includedir" >&6
 if test "$with_overwrite" != no ; then
 if test "$NCURSES_LIBUTF8" = 1 ; then
        NCURSES_LIBUTF8='defined(HAVE_LIBUTF8_H)'
-       { echo "$as_me:10494: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&5
+       { echo "$as_me:11864: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&5
 echo "$as_me: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&2;}
 fi
 fi
 PROG_DEPS="$TEST_DEPS"
 PROG_ARGS="$TEST_ARGS"
 
+### predefined stuff for the test programs
+cat >>confdefs.h <<\EOF
+#define HAVE_SLK_COLOR 1
+EOF
+
 ### Construct the list of subdirectories for which we'll customize makefiles
 ### with the appropriate compile-rules.
 
-echo "$as_me:10515: checking for src modules" >&5
+echo "$as_me:11890: checking for src modules" >&5
 echo $ECHO_N "checking for src modules... $ECHO_C" >&6
 
 # dependencies and linker-arguments for test-programs
@@ -10524,7 +11899,7 @@ else
 fi
 
 # dependencies and linker-arguments for utility-programs
-PROG_ARGS="$TEST_ARGS"
+test "$with_termlib" != yes && PROG_ARGS="$TEST_ARGS"
 
 cf_cv_src_modules=
 for cf_dir in $modules_to_build
@@ -10572,7 +11947,7 @@ EOF
                fi
        fi
 done
-echo "$as_me:10575: result: $cf_cv_src_modules" >&5
+echo "$as_me:11950: result: $cf_cv_src_modules" >&5
 echo "${ECHO_T}$cf_cv_src_modules" >&6
 TEST_ARGS="-L${LIB_DIR} $TEST_ARGS"
 
@@ -10640,11 +12015,45 @@ cat >>confdefs.h <<EOF
 #define NCURSES_PATHSEP '$PATHSEP'
 EOF
 
+cat >>confdefs.h <<EOF
+#define NCURSES_VERSION_STRING "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}"
+EOF
+
 ### Now that we're done running tests, add the compiler-warnings, if any
-CFLAGS="$CFLAGS $EXTRA_CFLAGS"
+
+cf_new_cflags=
+cf_new_cppflags=
+for cf_add_cflags in $EXTRA_CFLAGS
+do
+       case $cf_add_cflags in #(vi
+       -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+               case "$CPPFLAGS" in
+               *$cf_add_cflags) #(vi
+                       ;;
+               *) #(vi
+                       cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+                       ;;
+               esac
+               ;;
+       *)
+               cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+               ;;
+       esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+       CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+       CPPFLAGS="$cf_new_cppflags $CPPFLAGS"
+fi
 
 ################################################################################
-ac_config_files="$ac_config_files include/MKterm.h.awk include/curses.head:include/curses.h.in include/termcap.h include/unctrl.h misc/run_tic.sh:misc/run_tic.in $SUB_MAKEFILES Makefile"
+test "$use_database" = yes && SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in"
+ac_config_files="$ac_config_files include/MKterm.h.awk include/curses.head:include/curses.h.in include/termcap.h include/unctrl.h $SUB_MAKEFILES Makefile"
 ac_config_commands="$ac_config_commands default"
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -10725,7 +12134,7 @@ DEFS=-DHAVE_CONFIG_H
 : ${CONFIG_STATUS=./config.status}
 ac_clean_files_save=$ac_clean_files
 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:10728: creating $CONFIG_STATUS" >&5
+{ echo "$as_me:12137: creating $CONFIG_STATUS" >&5
 echo "$as_me: creating $CONFIG_STATUS" >&6;}
 cat >$CONFIG_STATUS <<_ACEOF
 #! $SHELL
@@ -10857,7 +12266,7 @@ EOF
 cat >>$CONFIG_STATUS <<EOF
 ac_cs_version="\\
 config.status
-configured by $0, generated by GNU Autoconf 2.52.20011227,
+configured by $0, generated by GNU Autoconf 2.52.20030208,
   with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
 
 Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
@@ -10901,7 +12310,7 @@ cat >>$CONFIG_STATUS <<\EOF
     echo "$ac_cs_version"; exit 0 ;;
   --he | --h)
     # Conflict between --help and --header
-    { { echo "$as_me:10904: error: ambiguous option: $1
+    { { echo "$as_me:12313: error: ambiguous option: $1
 Try \`$0 --help' for more information." >&5
 echo "$as_me: error: ambiguous option: $1
 Try \`$0 --help' for more information." >&2;}
@@ -10920,7 +12329,7 @@ Try \`$0 --help' for more information." >&2;}
     ac_need_defaults=false;;
 
   # This is an error.
-  -*) { { echo "$as_me:10923: error: unrecognized option: $1
+  -*) { { echo "$as_me:12332: error: unrecognized option: $1
 Try \`$0 --help' for more information." >&5
 echo "$as_me: error: unrecognized option: $1
 Try \`$0 --help' for more information." >&2;}
@@ -10939,7 +12348,7 @@ cat >&5 << _ACEOF
 ## Running config.status.  ##
 ## ----------------------- ##
 
-This file was extended by $as_me 2.52.20011227, executed with
+This file was extended by $as_me 2.52.20030208, executed with
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
   CONFIG_LINKS    = $CONFIG_LINKS
@@ -10982,6 +12391,7 @@ cf_cv_shlib_version="$cf_cv_shlib_version"
 cf_cv_shlib_version_infix="$cf_cv_shlib_version_infix"
 cf_cv_system_name="$cf_cv_system_name"
 cf_with_cxx_binding="$cf_with_cxx_binding"
+host="$host"
 target="$target"
 
 EOF
   "include/curses.head" ) CONFIG_FILES="$CONFIG_FILES include/curses.head:include/curses.h.in" ;;
   "include/termcap.h" ) CONFIG_FILES="$CONFIG_FILES include/termcap.h" ;;
   "include/unctrl.h" ) CONFIG_FILES="$CONFIG_FILES include/unctrl.h" ;;
-  "misc/run_tic.sh" ) CONFIG_FILES="$CONFIG_FILES misc/run_tic.sh:misc/run_tic.in" ;;
   "$SUB_MAKEFILES" ) CONFIG_FILES="$CONFIG_FILES $SUB_MAKEFILES" ;;
   "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
   "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
   "include/ncurses_cfg.h" ) CONFIG_HEADERS="$CONFIG_HEADERS include/ncurses_cfg.h:include/ncurses_cfg.hin" ;;
-  *) { { echo "$as_me:11003: error: invalid argument: $ac_config_target" >&5
+  *) { { echo "$as_me:12412: error: invalid argument: $ac_config_target" >&5
 echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
    { (exit 1); exit 1; }; };;
   esac
@@ -11087,7 +12496,6 @@ s,@NCURSES_MINOR@,$NCURSES_MINOR,;t t
 s,@NCURSES_PATCH@,$NCURSES_PATCH,;t t
 s,@cf_cv_rel_version@,$cf_cv_rel_version,;t t
 s,@cf_cv_abi_version@,$cf_cv_abi_version,;t t
-s,@cf_cv_cc_bool_type@,$cf_cv_cc_bool_type,;t t
 s,@cf_cv_builtin_bool@,$cf_cv_builtin_bool,;t t
 s,@cf_cv_header_stdbool_h@,$cf_cv_header_stdbool_h,;t t
 s,@cf_cv_type_of_bool@,$cf_cv_type_of_bool,;t t
@@ -11110,11 +12518,6 @@ s,@CPPFLAGS@,$CPPFLAGS,;t t
 s,@ac_ct_CC@,$ac_ct_CC,;t t
 s,@EXEEXT@,$EXEEXT,;t t
 s,@OBJEXT@,$OBJEXT,;t t
-s,@BUILD_CC@,$BUILD_CC,;t t
-s,@BUILD_CFLAGS@,$BUILD_CFLAGS,;t t
-s,@BUILD_CPPFLAGS@,$BUILD_CPPFLAGS,;t t
-s,@BUILD_LDFLAGS@,$BUILD_LDFLAGS,;t t
-s,@BUILD_LIBS@,$BUILD_LIBS,;t t
 s,@CPP@,$CPP,;t t
 s,@PROG_EXT@,$PROG_EXT,;t t
 s,@LDCONFIG@,$LDCONFIG,;t t
@@ -11127,26 +12530,43 @@ s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
 s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
 s,@INSTALL_DATA@,$INSTALL_DATA,;t t
 s,@LN_S@,$LN_S,;t t
-s,@RANLIB@,$RANLIB,;t t
-s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
 s,@MAKE_LOWER_TAGS@,$MAKE_LOWER_TAGS,;t t
 s,@MAKE_UPPER_TAGS@,$MAKE_UPPER_TAGS,;t t
 s,@LINT@,$LINT,;t t
 s,@MAN@,$MAN,;t t
 s,@LINT_OPTS@,$LINT_OPTS,;t t
+s,@RANLIB@,$RANLIB,;t t
+s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
 s,@LD@,$LD,;t t
+s,@ac_ct_LD@,$ac_ct_LD,;t t
 s,@AR@,$AR,;t t
+s,@ac_ct_AR@,$ac_ct_AR,;t t
 s,@AR_OPTS@,$AR_OPTS,;t t
 s,@cf_cv_makeflags@,$cf_cv_makeflags,;t t
 s,@DESTDIR@,$DESTDIR,;t t
+s,@BUILD_CC@,$BUILD_CC,;t t
+s,@BUILD_CFLAGS@,$BUILD_CFLAGS,;t t
+s,@BUILD_CPPFLAGS@,$BUILD_CPPFLAGS,;t t
+s,@BUILD_LDFLAGS@,$BUILD_LDFLAGS,;t t
+s,@BUILD_LIBS@,$BUILD_LIBS,;t t
+s,@BUILD_EXEEXT@,$BUILD_EXEEXT,;t t
 s,@cf_list_models@,$cf_list_models,;t t
 s,@LIBTOOL@,$LIBTOOL,;t t
+s,@LIBTOOL_CXX@,$LIBTOOL_CXX,;t t
+s,@LIB_CREATE@,$LIB_CREATE,;t t
+s,@LIB_OBJECT@,$LIB_OBJECT,;t t
+s,@LIB_SUFFIX@,$LIB_SUFFIX,;t t
+s,@LIB_PREP@,$LIB_PREP,;t t
+s,@LIB_CLEAN@,$LIB_CLEAN,;t t
+s,@LIB_COMPILE@,$LIB_COMPILE,;t t
+s,@LIB_LINK@,$LIB_LINK,;t t
+s,@LIB_INSTALL@,$LIB_INSTALL,;t t
+s,@LIB_UNINSTALL@,$LIB_UNINSTALL,;t t
 s,@DFT_LWR_MODEL@,$DFT_LWR_MODEL,;t t
 s,@DFT_UPR_MODEL@,$DFT_UPR_MODEL,;t t
 s,@TINFO_NAME@,$TINFO_NAME,;t t
 s,@LIB_NAME@,$LIB_NAME,;t t
 s,@LIB_PREFIX@,$LIB_PREFIX,;t t
-s,@LIB_SUFFIX@,$LIB_SUFFIX,;t t
 s,@CC_G_OPT@,$CC_G_OPT,;t t
 s,@CXX_G_OPT@,$CXX_G_OPT,;t t
 s,@LD_MODEL@,$LD_MODEL,;t t
@@ -11175,10 +12595,16 @@ s,@NCURSES_CONST@,$NCURSES_CONST,;t t
 s,@NCURSES_XNAMES@,$NCURSES_XNAMES,;t t
 s,@NCURSES_CH_T@,$NCURSES_CH_T,;t t
 s,@NCURSES_LIBUTF8@,$NCURSES_LIBUTF8,;t t
+s,@NEED_WCHAR_H@,$NEED_WCHAR_H,;t t
 s,@NCURSES_MBSTATE_T@,$NCURSES_MBSTATE_T,;t t
+s,@NCURSES_WCHAR_T@,$NCURSES_WCHAR_T,;t t
+s,@NCURSES_WINT_T@,$NCURSES_WINT_T,;t t
+s,@NCURSES_OK_WCHAR_T@,$NCURSES_OK_WCHAR_T,;t t
+s,@NCURSES_OK_WINT_T@,$NCURSES_OK_WINT_T,;t t
 s,@TERMINFO_CAPS@,$TERMINFO_CAPS,;t t
 s,@ECHO_LINK@,$ECHO_LINK,;t t
 s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t
+s,@ADA_TRACE@,$ADA_TRACE,;t t
 s,@MATH_LIB@,$MATH_LIB,;t t
 s,@cf_cv_typeof_chtype@,$cf_cv_typeof_chtype,;t t
 s,@cf_cv_1UL@,$cf_cv_1UL,;t t
@@ -11188,6 +12614,7 @@ s,@CXXLDFLAGS@,$CXXLDFLAGS,;t t
 s,@CXX_AR@,$CXX_AR,;t t
 s,@CXX_AR_OPTS@,$CXX_AR_OPTS,;t t
 s,@CXXLIBS@,$CXXLIBS,;t t
+s,@USE_CXX_BOOL@,$USE_CXX_BOOL,;t t
 s,@gnat_exists@,$gnat_exists,;t t
 s,@M4_exists@,$M4_exists,;t t
 s,@cf_ada_make@,$cf_ada_make,;t t
@@ -11198,7 +12625,6 @@ s,@cf_compile_generics@,$cf_compile_generics,;t t
 s,@cf_generic_objects@,$cf_generic_objects,;t t
 s,@ADA_INCLUDE@,$ADA_INCLUDE,;t t
 s,@ADA_OBJECTS@,$ADA_OBJECTS,;t t
-s,@ADA_TRACE@,$ADA_TRACE,;t t
 s,@ACPPFLAGS@,$ACPPFLAGS,;t t
 s,@DFT_ARG_SUFFIX@,$DFT_ARG_SUFFIX,;t t
 s,@DFT_DEP_SUFFIX@,$DFT_DEP_SUFFIX,;t t
@@ -11326,7 +12752,7 @@ done; }
   esac
 
   if test x"$ac_file" != x-; then
-    { echo "$as_me:11329: creating $ac_file" >&5
+    { echo "$as_me:12755: creating $ac_file" >&5
 echo "$as_me: creating $ac_file" >&6;}
     rm -f "$ac_file"
   fi
@@ -11344,7 +12770,7 @@ echo "$as_me: creating $ac_file" >&6;}
       -) echo $tmp/stdin ;;
       [\\/$]*)
          # Absolute (can't be DOS-style, as IFS=:)
-         test -f "$f" || { { echo "$as_me:11347: error: cannot find input file: $f" >&5
+         test -f "$f" || { { echo "$as_me:12773: error: cannot find input file: $f" >&5
 echo "$as_me: error: cannot find input file: $f" >&2;}
    { (exit 1); exit 1; }; }
          echo $f;;
@@ -11357,7 +12783,7 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
            echo $srcdir/$f
          else
            # /dev/null tree
-           { { echo "$as_me:11360: error: cannot find input file: $f" >&5
+           { { echo "$as_me:12786: error: cannot find input file: $f" >&5
 echo "$as_me: error: cannot find input file: $f" >&2;}
    { (exit 1); exit 1; }; }
          fi;;
@@ -11423,7 +12849,7 @@ for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
   * )   ac_file_in=$ac_file.in ;;
   esac
 
-  test x"$ac_file" != x- && { echo "$as_me:11426: creating $ac_file" >&5
+  test x"$ac_file" != x- && { echo "$as_me:12852: creating $ac_file" >&5
 echo "$as_me: creating $ac_file" >&6;}
 
   # First look for the input files in the build tree, otherwise in the
@@ -11434,7 +12860,7 @@ echo "$as_me: creating $ac_file" >&6;}
       -) echo $tmp/stdin ;;
       [\\/$]*)
          # Absolute (can't be DOS-style, as IFS=:)
-         test -f "$f" || { { echo "$as_me:11437: error: cannot find input file: $f" >&5
+         test -f "$f" || { { echo "$as_me:12863: error: cannot find input file: $f" >&5
 echo "$as_me: error: cannot find input file: $f" >&2;}
    { (exit 1); exit 1; }; }
          echo $f;;
@@ -11447,7 +12873,7 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
            echo $srcdir/$f
          else
            # /dev/null tree
-           { { echo "$as_me:11450: error: cannot find input file: $f" >&5
+           { { echo "$as_me:12876: error: cannot find input file: $f" >&5
 echo "$as_me: error: cannot find input file: $f" >&2;}
    { (exit 1); exit 1; }; }
          fi;;
@@ -11505,7 +12931,7 @@ cat >>$CONFIG_STATUS <<\EOF
   rm -f $tmp/in
   if test x"$ac_file" != x-; then
     if cmp -s $ac_file $tmp/config.h 2>/dev/null; then
-      { echo "$as_me:11508: $ac_file is unchanged" >&5
+      { echo "$as_me:12934: $ac_file is unchanged" >&5
 echo "$as_me: $ac_file is unchanged" >&6;}
     else
       ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
                case $cf_cv_system_name in
                cygwin*) cf_suffix='.dll' ;;
                darwin*) cf_suffix='.dylib' ;;
-               hpux*)  cf_suffix='.sl'  ;;
+               hpux*)
+                       case $target in
+                       ia64*)  cf_suffix='.so' ;;
+                       *)      cf_suffix='.sl' ;;
+                       esac
+                       ;;
                *)      cf_suffix='.so'  ;;
                esac
        esac
                                esac
                        fi
                        # cygwin needs import library, and has unique naming convention
+                       # use autodetected ${cf_prefix} for import lib and static lib, but
+                       # use 'cyg' prefix for shared lib.
                        if test $cf_cv_shlib_version = cygdll ; then
-                               SHARED_LIB="../lib/${cf_prefix}${cf_dir}\$(ABI_VERSION).dll"
+                               SHARED_LIB="../lib/cyg${cf_dir}\$(ABI_VERSION).dll"
                                IMPORT_LIB="../lib/${cf_prefix}${cf_dir}.dll.a"
                                LIBS_TO_MAKE="$LIBS_TO_MAKE \$(SHARED_LIB) \$(IMPORT_LIB)"
                                continue
 
                if test $cf_dir = ncurses ; then
                        cf_subsets="$LIB_SUBSETS"
-                       case "$LIB_SUBSETS" in #(vi
-                       termlib+*) #(vi
-                               ;;
-                       *) #(vi
-                               cf_item=`echo $LIBS_TO_MAKE |sed -e s/$LIB_NAME/$TINFO_NAME/g`
+                       cf_termlib=`echo "$cf_subsets" |sed -e 's/ .*$//'`
+                       if test "$cf_termlib" != "$cf_subsets" ; then
+                               cf_item=`echo $LIBS_TO_MAKE |sed -e s%$LIB_NAME%$TINFO_NAME%g`
                                LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE"
-                               ;;
-                       esac
+                       fi
                else
-                       cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib //'`
+                       cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'`
                fi
 
                sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \
@@ -11660,7 +13090,12 @@ CF_ITEM=`echo "$cf_item" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQ
                case $cf_cv_system_name in
                cygwin*) cf_suffix='.dll' ;;
                darwin*) cf_suffix='.dylib' ;;
-               hpux*)  cf_suffix='.sl'  ;;
+               hpux*)
+                       case $target in
+                       ia64*)  cf_suffix='.so' ;;
+                       *)      cf_suffix='.sl' ;;
+                       esac
+                       ;;
                *)      cf_suffix='.so'  ;;
                esac
        esac
@@ -11710,7 +13145,7 @@ CF_ITEM=`echo "$cf_item" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQ
                                ldconfig="$LDCONFIG" \
                                overwrite=$WITH_OVERWRITE \
                                depend="$cf_depend" \
-                               target="$target" \
+                               host="$host" \
                                $srcdir/$cf_dir/modules >>$cf_dir/Makefile
                        for cf_subdir2 in $cf_subdirs lib
                        do
index 14d08e097218ed7c8442d9703d2d46a1fe57bdb3..02fd45cd57a81f989b05217f6fe13e672d705f87 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
-dnl Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+dnl Copyright (c) 1998-2003,2004 Free Software Foundation, Inc.              *
 dnl                                                                          *
 dnl Permission is hereby granted, free of charge, to any person obtaining a  *
 dnl copy of this software and associated documentation files (the            *
@@ -28,50 +28,28 @@ dnl***************************************************************************
 dnl
 dnl Author: Thomas E. Dickey 1995-on
 dnl
-dnl $Id: configure.in,v 1.274 2002/09/15 00:11:28 tom Exp $
+dnl $Id: configure.in,v 1.312 2004/01/24 19:29:13 tom Exp $
 dnl Process this file with autoconf to produce a configure script.
 dnl
 dnl See http://invisible-island.net/autoconf/ for additional information.
 dnl
 dnl ---------------------------------------------------------------------------
 AC_PREREQ(2.13.20020210)
-AC_REVISION($Revision: 1.274 $)
+AC_REVISION($Revision: 1.312 $)
 AC_INIT(ncurses/base/lib_initscr.c)
 AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
 
 CF_SUBST_NCURSES_VERSION
+
+CF_WITH_REL_VERSION(NCURSES)
+CF_WITH_ABI_VERSION
+
 CF_CHECK_CACHE([AC_CANONICAL_SYSTEM])
 AC_ARG_WITH(system-type,
 [  --with-system-type=XXX  test: override derived host system-type],
 [AC_MSG_WARN(overriding system type to $withval)
  cf_cv_system_name=$withval])
 
-# We need a configure script only when compiling as part of GNU C library.
-# Here we have to generate one of the files we need while compiling.
-#
-# The only problem is that users of the package might think they have to
-# run configure themself and find it irritating when nothing happens.
-#
-# So we try here to find out whether we are called from the glibc configure
-# or by a user.
-#
-dnl Check if we are a drop-in addition to glibc.
-AC_ARG_ENABLE(add-ons, dnl
-[  --enable-add-ons=DIR... used to check if we are a glibc add-on.],
-               [glibc_add_on=yes],
-               [glibc_add_on=])
-
-if test x"$glibc_add_on" = "xyes" ; then
-  rm -f $srcdir/Banner
-  # We are in glibc.
-  rm -f $srcdir/Makefile
-  cp $srcdir/Makefile.glibc $srcdir/Makefile
-  echo "ncurses `grep \"^[[    ]]*ncurses-version[[    ]]*=.*$\" \
-               $srcdir/Makefile | sed -e \
-               's/^[[  ]]*ncurses-version[[    ]]*=[[  ]]*\([[^        ^ ]]*\)[[       ]]*$/\1/'`" > $srcdir/Banner
-  exit 0
-fi
-
 ###    Save the given $CFLAGS to allow user-override.
 cf_user_CFLAGS="$CFLAGS"
 
@@ -80,60 +58,14 @@ CF_CFG_DEFAULTS
 
 ###    Checks for programs.
 AC_PROG_CC
-GCC_VERSION=none
-if test "$GCC" = yes ; then
-       AC_MSG_CHECKING(version of gcc)
-       GCC_VERSION="`${CC} --version|head -1`"
-       AC_MSG_RESULT($GCC_VERSION)
-fi
-
-# If we're cross-compiling, allow the user to override the tools and their
-# options.  The configure script is oriented toward identifying the target
-# compiler, etc., but we need a host compiler to generate parts of the source.
-BUILD_CC='$(CC)'
-BUILD_CFLAGS='$(CFLAGS)'
-BUILD_CPPFLAGS='$(CPPFLAGS)'
-BUILD_LDFLAGS='$(LDFLAGS)'
-BUILD_LIBS='$(LIBS)'
-if test "$host_alias" != "$target_alias" ; then
-       AC_ARG_WITH(build-cc,
-               [  --with-build-cc=XXX     if cross-compiling, the host C compiler (\$BUILD_CC)],
-               [BUILD_CC="$withval"],
-               [AC_CHECK_PROGS(BUILD_CC, $CC gcc cc)])
-       AC_ARG_WITH(build-cflags,
-               [  --with-build-cflags=XXX if cross-compiling, the host C compiler-flags],
-               [BUILD_CFLAGS="$withval"])
-       AC_ARG_WITH(build-cppflags,
-               [  --with-build-cppflags=XXX if cross-compiling, the host C preprocessor-flags],
-               [BUILD_CPPFLAGS="$withval"])
-       AC_ARG_WITH(build-ldflags,
-               [  --with-build-ldflags=XXX if cross-compiling, the host linker-flags],
-               [BUILD_LDFLAGS="$withval"])
-       AC_ARG_WITH(build-libs,
-               [  --with-build-libs=XXX   if cross-compiling, the host libraries],
-               [BUILD_LIBS="$withval"])
-fi
-AC_SUBST(BUILD_CC)
-AC_SUBST(BUILD_CFLAGS)
-AC_SUBST(BUILD_CPPFLAGS)
-AC_SUBST(BUILD_LDFLAGS)
-AC_SUBST(BUILD_LIBS)
+CF_GCC_VERSION
 
 AC_PROG_CPP
 AC_PROG_GCC_TRADITIONAL
 AC_ISC_POSIX
 CF_ANSI_CC_REQD
 CF_PROG_EXT
-
-case "$cf_cv_system_name" in
-freebsd*) #(vi
-  test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R"
-  ;;
-*) LDPATH=$PATH:/sbin:/usr/sbin
-  AC_PATH_PROG(LDCONFIG,ldconfig,,$LDPATH)
-  ;;
-esac
-AC_SUBST(LDCONFIG)
+CF_PROG_LDCONFIG
 
 dnl DEFECT in autoconf 2.12:   an attempt to set policy, this breaks the
 dnl                            configure script by not letting us test if C++
@@ -148,26 +80,31 @@ if test "X$cf_with_cxx" = Xno ; then
        CXX=""
        GXX=""
 else
+       # with autoconf 2.13, we can change the error to a warning:
        pushdef([AC_MSG_ERROR],
-               [AC_MSG_RESULT([You don't have any C++ compiler, too bad]); dnl
+               [AC_MSG_RESULT(no)
+                AC_MSG_WARN([You don't have any C++ compiler, too bad])
                cf_with_cxx=no; CXX=""; GXX="";])dnl
        AC_PROG_CXX
        popdef([AC_MSG_ERROR])dnl
+       # autoconf 2.5x removed the error - by hardcoding it to g++.
+       if test "$CXX" = "g++" ; then
+               AC_PATH_PROG(CXX,g++)
+       fi
+       if test "$CXX" = "g++" ; then
+               AC_MSG_WARN(ignoring hardcoded g++)
+               cf_with_cxx=no; CXX=""; GXX="";
+       fi
 fi
 
-GXX_VERSION=none
-if test "$GXX" = yes; then
-       AC_MSG_CHECKING(version of g++)
-       GXX_VERSION="`${CXX-g++} --version|head -1`"
-       AC_MSG_RESULT($GXX_VERSION)
-       case $GXX_VERSION in
-       1*|2.[[0-6]]*)
-               GXX=""; CXX=""; ac_cv_prog_gxx=no
-               cf_cxx_library=no
-               AC_MSG_WARN(templates do not work)
-               ;;
-       esac
-fi
+CF_GXX_VERSION
+case $GXX_VERSION in
+1*|2.[[0-6]]*)
+       GXX=""; CXX=""; ac_cv_prog_gxx=no
+       cf_cxx_library=no
+       AC_MSG_WARN(templates do not work)
+       ;;
+esac
 
 AC_MSG_CHECKING(if you want to build C++ binding and demo)
 AC_ARG_WITH(cxx-binding,
@@ -210,15 +147,15 @@ CF_PROG_INSTALL
 AC_SYS_LONG_FILE_NAMES
 CF_MIXEDCASE_FILENAMES
 AC_PROG_LN_S
-AC_PROG_RANLIB
 CF_MAKE_TAGS
 AC_CHECK_PROGS(LINT, tdlint lint alint)
 AC_CHECK_PROGS(MAN, man man_db)
 AC_SUBST(LINT_OPTS)
 
 dnl These are standard among *NIX systems, but not when cross-compiling
-CF_SUBST(loader,LD,ld)
-CF_SUBST(archiver,AR,ar)
+AC_CHECK_TOOL(RANLIB, ranlib, ':')
+AC_CHECK_TOOL(LD, ld, ld)
+AC_CHECK_TOOL(AR, ar, ar)
 CF_SUBST(archiver options,AR_OPTS,rv)
 
 CF_MAKEFLAGS
@@ -228,7 +165,7 @@ dnl adjust the location into which the actual install is done, so that an
 dnl archive can be built without modifying the host system's configuration.
 AC_MSG_CHECKING(if you have specified an install-prefix)
 AC_ARG_WITH(install-prefix,
-       [  --with-install-prefix   prefixes actual install-location (\$DESTDIR)],
+       [  --with-install-prefix   prefixes actual install-location ($DESTDIR)],
        [case "$withval" in #(vi
        yes|no) #(vi
                ;;
@@ -238,6 +175,43 @@ AC_ARG_WITH(install-prefix,
 AC_MSG_RESULT($DESTDIR)
 AC_SUBST(DESTDIR)
 
+###############################################################################
+CF_HELP_MESSAGE(Build-Tools Needed to Compile Temporary Applications for Cross-compiling:)
+# If we're cross-compiling, allow the user to override the tools and their
+# options.  The configure script is oriented toward identifying the host
+# compiler, etc., but we need a build compiler to generate parts of the source.
+: ${BUILD_CC:='$(CC)'}
+: ${BUILD_CFLAGS:='$(CFLAGS)'}
+: ${BUILD_CPPFLAGS:='$(CPPFLAGS)'}
+: ${BUILD_LDFLAGS:='$(LDFLAGS)'}
+: ${BUILD_LIBS:='$(LIBS)'}
+: ${BUILD_EXEEXT:='$x'}
+if test "$cross_compiling" = yes ; then
+       AC_ARG_WITH(build-cc,
+               [  --with-build-cc=XXX     the build C compiler ($BUILD_CC)],
+               [BUILD_CC="$withval"],
+               [AC_CHECK_PROGS(BUILD_CC, $CC gcc cc)])
+       AC_ARG_WITH(build-cflags,
+               [  --with-build-cflags=XXX the build C compiler-flags],
+               [BUILD_CFLAGS="$withval"])
+       AC_ARG_WITH(build-cppflags,
+               [  --with-build-cppflags=XXX the build C preprocessor-flags],
+               [BUILD_CPPFLAGS="$withval"])
+       AC_ARG_WITH(build-ldflags,
+               [  --with-build-ldflags=XXX the build linker-flags],
+               [BUILD_LDFLAGS="$withval"])
+       AC_ARG_WITH(build-libs,
+               [  --with-build-libs=XXX   the build libraries],
+               [BUILD_LIBS="$withval"])
+       BUILD_EXEEXT=
+fi
+AC_SUBST(BUILD_CC)
+AC_SUBST(BUILD_CFLAGS)
+AC_SUBST(BUILD_CPPFLAGS)
+AC_SUBST(BUILD_LDFLAGS)
+AC_SUBST(BUILD_LIBS)
+AC_SUBST(BUILD_EXEEXT)
+
 ###############################################################################
 CF_HELP_MESSAGE(Options to Specify the Libraries Built/Used:)
 
@@ -247,19 +221,12 @@ CF_HELP_MESSAGE(Options to Specify the Libraries Built/Used:)
 cf_list_models=""
 AC_SUBST(cf_list_models)dnl    the complete list of models ("normal debug")
 
-AC_MSG_CHECKING(if you want to build libraries with libtool)
-AC_ARG_WITH(libtool,
-       [  --with-libtool          generate libraries with libtool],
-       [with_libtool=$withval],
-       [with_libtool=no])
-AC_MSG_RESULT($with_libtool)
-if test "$with_libtool" = "yes"; then
-       cf_list_models="$cf_list_models libtool"
-       test -z "$LIBTOOL" && LIBTOOL=libtool
+CF_WITH_LIBTOOL
+if test "$with_libtool" != "no" ; then
+
+cf_list_models="$cf_list_models libtool"
+
 else
-       LIBTOOL=""
-fi
-AC_SUBST(LIBTOOL)
 
 AC_MSG_CHECKING(if you want to build shared libraries)
 AC_ARG_WITH(shared,
@@ -293,19 +260,21 @@ AC_ARG_WITH(profile,
 AC_MSG_RESULT($with_profile)
 test "$with_profile" = "yes" && cf_list_models="$cf_list_models profile"
 
+fi
+
 ###############################################################################
 
 AC_MSG_CHECKING(for specified models)
 test -z "$cf_list_models" && cf_list_models=normal
 dnl If we use libtool to generate libraries, then it must be the only
 dnl specified model.
-test "$with_libtool" = "yes" && cf_list_models=libtool
+test "$with_libtool" != "no" && cf_list_models=libtool
 AC_MSG_RESULT($cf_list_models)
 
 ### Use the first model as the default, and save its suffix for use in building
 ### up test-applications.
 AC_MSG_CHECKING(for default model)
-DFT_LWR_MODEL=`echo $cf_list_models | $AWK '{print $1}'`
+DFT_LWR_MODEL=`echo "$cf_list_models" | $AWK '{print $1}'`
 AC_MSG_RESULT($DFT_LWR_MODEL)
 
 CF_UPPER(DFT_UPR_MODEL,$DFT_LWR_MODEL)dnl
@@ -337,25 +306,8 @@ AC_ARG_WITH(termlib,
 AC_MSG_RESULT($with_termlib)
 
 ### Checks for special libraries, must be done up-front.
-AC_MSG_CHECKING(if you want to link with dbmalloc for testing)
-AC_ARG_WITH(dbmalloc,
-       [  --with-dbmalloc         test: use Conor Cahill's dbmalloc library],
-       [with_dbmalloc=$withval],
-       [with_dbmalloc=no])
-AC_MSG_RESULT($with_dbmalloc)
-if test "$with_dbmalloc" = yes ; then
-       AC_CHECK_LIB(dbmalloc,debug_malloc)
-fi
-
-AC_MSG_CHECKING(if you want to link with dmalloc for testing)
-AC_ARG_WITH(dmalloc,
-       [  --with-dmalloc          test: use Gray Watson's dmalloc library],
-       [with_dmalloc=$withval],
-       [with_dmalloc=no])
-AC_MSG_RESULT($with_dmalloc)
-if test "$with_dmalloc" = yes ; then
-       AC_CHECK_LIB(dmalloc,dmalloc_debug)
-fi
+CF_WITH_DBMALLOC
+CF_WITH_DMALLOC
 
 SHLIB_LIST=""
 AC_MSG_CHECKING(if you want to link with the gpm mouse library)
@@ -373,6 +325,8 @@ if test "$with_gpm" = yes ; then
        ],AC_MSG_WARN(Cannot link with gpm library - read the FAQ))
 fi
 
+CF_WITH_SYSMOUSE
+
 dnl Not all ports of gcc support the -g option
 
 if test X"$CC_G_OPT" = X"" ; then
@@ -458,7 +412,7 @@ AC_ARG_WITH(fallbacks,
        [with_fallback=$withval],
        [with_fallback=])
 AC_MSG_RESULT($with_fallback)
-FALLBACK_LIST=`echo $with_fallback|sed -e 's/,/ /g'`
+FALLBACK_LIST=`echo "$with_fallback" | sed -e 's/,/ /g'`
 AC_SUBST(FALLBACK_LIST)
 
 MAKE_TERMINFO=
@@ -522,7 +476,7 @@ AC_MSG_RESULT($with_termcap)
 
 if test "$with_termcap" != "yes" ; then
        if test "$use_database" = no ; then
-               if test -z $with_fallback ; then
+               if test -z "$with_fallback" ; then
                        AC_ERROR(You have disabled the database w/o specifying fallbacks)
                fi
        fi
@@ -557,6 +511,14 @@ test "$with_getcap_cache" = "yes" && AC_DEFINE(USE_GETCAP_CACHE)
 
 fi
 
+###   Use option --disable-home-terminfo to completely remove ~/.terminfo
+AC_MSG_CHECKING(if ~/.terminfo is wanted)
+AC_ARG_ENABLE(home-terminfo,
+       [  --disable-home-terminfo drop ~/.terminfo from terminfo search-path],
+       [with_home_terminfo=$enableval],
+       [with_home_terminfo=yes])
+test "$with_home_terminfo" = "yes" && AC_DEFINE(USE_HOME_TERMINFO)
+
 ###   Use option --enable-symlinks to make tic use symlinks, not hard links
 ###   to reduce storage requirements for the terminfo database.
 CF_LINK_FUNCS
@@ -597,14 +559,14 @@ AC_MSG_CHECKING(if you want broken-linker support code)
 AC_ARG_ENABLE(broken_linker,
        [  --enable-broken_linker  compile with broken-linker support code],
        [with_broken_linker=$enableval],
-       [with_broken_linker=$BROKEN_LINKER])
+       [with_broken_linker=${BROKEN_LINKER-no}])
 AC_MSG_RESULT($with_broken_linker)
 
 BROKEN_LINKER=0
 if test "$with_broken_linker" = yes ; then
        AC_DEFINE(BROKEN_LINKER)
        BROKEN_LINKER=1
-elif test $DFT_LWR_MODEL = shared ; then
+elif test "$DFT_LWR_MODEL" = shared ; then
        case $cf_cv_system_name in #(vi
        cygwin*)
                AC_DEFINE(BROKEN_LINKER)
@@ -669,6 +631,7 @@ if test "$with_ext_funcs" = yes ; then
        AC_DEFINE(HAVE_CURSES_VERSION)
        AC_DEFINE(HAVE_HAS_KEY)
        AC_DEFINE(HAVE_RESIZETERM)
+       AC_DEFINE(HAVE_RESIZE_TERM)
        AC_DEFINE(HAVE_USE_DEFAULT_COLORS)
        AC_DEFINE(HAVE_WRESIZE)
        AC_DEFINE(NCURSES_EXT_FUNCS)
@@ -692,7 +655,7 @@ AC_SUBST(NCURSES_CONST)
 
 AC_MSG_CHECKING(if you want \$NCURSES_NO_PADDING code)
 AC_ARG_ENABLE(no-padding,
-       [  --enable-no-padding     compile with \$NCURSES_NO_PADDING code],
+       [  --enable-no-padding     compile with $NCURSES_NO_PADDING code],
        [with_no_padding=$enableval],
        [with_no_padding=$with_ext_funcs])
 AC_MSG_RESULT($with_no_padding)
@@ -778,7 +741,7 @@ test "$with_hashmap" = yes && AC_DEFINE(USE_HASHMAP)
 ###   use option --enable-colorfgbg to turn on use of $COLORFGBG environment
 AC_MSG_CHECKING(if you want colorfgbg code)
 AC_ARG_ENABLE(colorfgbg,
-       [  --enable-colorfgbg      compile with \$COLORFGBG code],
+       [  --enable-colorfgbg      compile with $COLORFGBG code],
        [with_colorfgbg=$enableval],
        [with_colorfgbg=no])
 AC_MSG_RESULT($with_colorfgbg)
@@ -807,7 +770,19 @@ fi
 ###   use option --enable-widec to turn on use of wide-character support
 NCURSES_CH_T=chtype
 NCURSES_LIBUTF8=0
+
+NEED_WCHAR_H=0
 NCURSES_MBSTATE_T=0
+NCURSES_WCHAR_T=0
+NCURSES_WINT_T=0
+
+# Check to define _XOPEN_SOURCE "automatically"
+CF_XOPEN_SOURCE
+
+# use these variables to work around a defect in gcc's fixincludes.
+NCURSES_OK_WCHAR_T=
+NCURSES_OK_WINT_T=
+
 AC_MSG_CHECKING(if you want experimental wide-character code)
 AC_ARG_ENABLE(widec,
        [  --enable-widec          compile with experimental wide-char/UTF-8 code],
@@ -817,24 +792,31 @@ AC_MSG_RESULT($with_widec)
 if test "$with_widec" = yes ; then
        LIB_SUFFIX="w${LIB_SUFFIX}"
        AC_DEFINE(USE_WIDEC_SUPPORT)
-       CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
+       CF_PREDEFINE(_XOPEN_SOURCE,500)
+       CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED)
        # with_overwrite=no
        NCURSES_CH_T=cchar_t
-       AC_CHECK_FUNC(putwc)
-if test "$ac_cv_func_putwc" != yes ; then
-       CF_LIBUTF8
-       if test "$cf_cv_libutf8" = yes ; then
-               NCURSES_LIBUTF8=1
-       fi
-fi
-       CF_MBSTATE_T
-       if test $cf_cv_mbstate_t = yes ; then
-               NCURSES_MBSTATE_T=1
+       AC_CHECK_FUNCS(putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc)
+       if test "$ac_cv_func_putwc" != yes ; then
+               CF_LIBUTF8
+               if test "$cf_cv_libutf8" = yes ; then
+                       NCURSES_LIBUTF8=1
+               fi
        fi
+       CF_WCHAR_TYPE(mbstate_t, NCURSES_MBSTATE_T)
+       CF_WCHAR_TYPE(wchar_t,   NCURSES_WCHAR_T,   NCURSES_OK_WCHAR_T)
+       CF_WCHAR_TYPE(wint_t,    NCURSES_WINT_T,    NCURSES_OK_WINT_T)
 fi
 AC_SUBST(NCURSES_CH_T)
 AC_SUBST(NCURSES_LIBUTF8)
+
+AC_SUBST(NEED_WCHAR_H)
 AC_SUBST(NCURSES_MBSTATE_T)
+AC_SUBST(NCURSES_WCHAR_T)
+AC_SUBST(NCURSES_WINT_T)
+
+AC_SUBST(NCURSES_OK_WCHAR_T)
+AC_SUBST(NCURSES_OK_WINT_T)
 
 AC_MSG_CHECKING(for terminal capabilities file)
 AC_ARG_WITH(caps,
@@ -910,6 +892,33 @@ AC_ARG_ENABLE(macros,
        [  --disable-macros        test: use functions rather than macros],
        [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS)])
 
+# Normally we only add trace() to the debug-library.  Allow this to be
+# extended to all models of the ncurses library:
+cf_all_traces=no
+case "$CFLAGS $CPPFLAGS" in
+*-DTRACE*)
+       cf_all_traces=yes
+       ;;
+esac
+
+AC_MSG_CHECKING(whether to add trace feature to all models)
+AC_ARG_WITH(trace,
+[  --with-trace            test: add trace() function to all models of ncurses],
+[cf_with_trace=$withval],
+[cf_with_trace=$cf_all_traces])
+AC_MSG_RESULT($with_trace)
+
+if test "$cf_with_trace" = yes ; then
+       LIB_TRACING=all
+       ADA_TRACE=TRUE
+       CF_ADD_CFLAGS(-DTRACE)
+else
+       LIB_TRACING=DEBUG
+       ADA_TRACE=FALSE
+fi
+
+AC_SUBST(ADA_TRACE)
+
 ###    Checks for libraries.
 AC_CHECK_FUNC(gettimeofday,
        AC_DEFINE(HAVE_GETTIMEOFDAY),[
@@ -922,7 +931,6 @@ CF_MATH_LIB(MATH_LIB,sin(x))
 AC_SUBST(MATH_LIB)
 
 ###    Checks for header files.
-CF_GNU_SOURCE
 AC_STDC_HEADERS
 AC_HEADER_DIRENT
 AC_HEADER_TIME
@@ -945,7 +953,7 @@ sys/time.h \
 sys/times.h \
 ttyent.h \
 unistd.h \
-)
+wctype.h )
 
 # check for ISC (this may also define _POSIX_SOURCE)
 # Note: even non-Posix ISC needs <sys/bsdtypes.h> to declare fd_set
@@ -1027,8 +1035,10 @@ if test -z "$cf_user_CFLAGS" ; then
        CF_STRIP_G_OPT(CXXFLAGS)
 fi
 
-dnl Check for C++ compiler characteristics (and ensure that it's there!)
+# Just in case, check if the C compiler has a bool type.
 CF_BOOL_DECL(cf_cv_cc_bool_type)
+
+# Check for C++ compiler characteristics (and ensure that it's there!)
 if test -n "$CXX" ; then
        AC_LANG_CPLUSPLUS
        CF_STDCPP_LIBRARY
@@ -1105,6 +1115,26 @@ else
 fi
 AC_SUBST(CXXLIBS)
 
+# If the C compiler did not declare bool, and we did not determine that the C++
+# compiler does not declare bool, turn on an ifdef in curses.h that makes the
+# ncurses library use the same type as C++ bool.  Note that this allows one to
+# specify the type of bool in a configure-script option and postpone
+# integration with the C++ compiler provided that the types are compatible.
+USE_CXX_BOOL=1
+if test $cf_cv_cc_bool_type = 1
+then
+       # oops: C has a bool.  Unlikely, but C++ could differ.
+       USE_CXX_BOOL=0
+elif test $cf_cv_builtin_bool = 0
+then
+       # C++ has no bool
+       USE_CXX_BOOL=0
+else
+       # this is the normal case
+       USE_CXX_BOOL='defined(__cplusplus)'
+fi
+AC_SUBST(USE_CXX_BOOL)
+
 CF_HELP_MESSAGE(Ada95 Binding Options:)
 
 dnl Check for availability of GNU Ada Translator (GNAT).
@@ -1169,45 +1199,22 @@ if test "$cf_cv_prog_gnat_correct" = yes; then
 fi
 fi
 
-### It's not possible to appease gcc 2.6.3's conversion-warnings if we're
-### using a 'char' for bools.  gcc 2.7.0's conversion-warnings are broken too
-### badly to consider using for development purposes, but 2.5.8 is okay.
-if test -n "$with_warnings"; then
-       case $GCC_VERSION in
-       2.6.3)
-               if test "$cf_cv_type_of_bool" != "char"; then
-                       EXTRA_CFLAGS="$EXTRA_CFLAGS -Wconversion"
-               fi
-               ;;
-       2.5*)
-               EXTRA_CFLAGS="$EXTRA_CFLAGS -Wconversion"
-               ;;
-       esac
-fi
-
 ### Construct the library-subsets, if any, from this set of keywords:
-### none, base, ext_funcs, termlib.
+### none, base, ext_funcs, ext_tinfo, termlib, widechar (see CF_LIB_RULES).
 AC_MSG_CHECKING(for library subsets)
 if test "$with_termlib" = yes ; then
-       LIB_SUBSETS="termlib "
+       LIB_SUBSETS="termlib"
+       test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo"
+       LIB_SUBSETS="${LIB_SUBSETS} "
 else
        LIB_SUBSETS="termlib+"
+       test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}ext_tinfo+"
 fi
 LIB_SUBSETS="${LIB_SUBSETS}base"
-test "$with_widec" = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
+test "$with_widec"     = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
 test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs"
 AC_MSG_RESULT($LIB_SUBSETS)
 
-LIB_TRACING=DEBUG
-ADA_TRACE=FALSE
-case "$CFLAGS $CPPFLAGS" in
-*-DTRACE*)
-       LIB_TRACING=all
-       ADA_TRACE=TRUE
-       ;;
-esac
-AC_SUBST(ADA_TRACE)
-
 ### Construct the list of include-directories to be generated
 CF_INCLUDE_DIRS
 CF_ADA_INCLUDE_DIRS
@@ -1236,17 +1243,21 @@ AC_SUBST(DFT_OBJ_SUBDIR)dnl the default object-directory ("obj")
 AC_MSG_RESULT($DFT_OBJ_SUBDIR)
 
 # libtool thinks it can make c++ shared libraries (perhaps only g++)
+if test "$cf_with_cxx" = yes ; then
 AC_MSG_CHECKING(c++ library-dependency suffix)
-if test "$with_libtool" = "yes"; then
+if test "$with_libtool" != "no"; then
        CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX
 else
        CF_LIB_SUFFIX(normal,CXX_LIB_SUFFIX)dnl we normally make a static library
 fi
 AC_MSG_RESULT($CXX_LIB_SUFFIX)
 AC_SUBST(CXX_LIB_SUFFIX)
+fi
 
 TINFO_LIST="$SHLIB_LIST"
-test "$with_termlib" = yes && SHLIB_LIST="$SHLIB_LIST -ltinfo${LIB_SUFFIX}"
+if test "$with_libtool" = no ; then
+       test "$with_termlib" = yes && SHLIB_LIST="$SHLIB_LIST -ltinfo${LIB_SUFFIX}"
+fi
 
 AC_MSG_CHECKING(where we will install curses.h)
 test "$with_overwrite" = no && \
@@ -1280,6 +1291,9 @@ fi
 PROG_DEPS="$TEST_DEPS"
 PROG_ARGS="$TEST_ARGS"
 
+### predefined stuff for the test programs
+AC_DEFINE(HAVE_SLK_COLOR)
+
 ### Construct the list of subdirectories for which we'll customize makefiles
 ### with the appropriate compile-rules.
 
@@ -1288,16 +1302,18 @@ CF_DIRS_TO_MAKE
 
 AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATHSEP')
 
+AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}")
+
 ### Now that we're done running tests, add the compiler-warnings, if any
-CFLAGS="$CFLAGS $EXTRA_CFLAGS"
+CF_ADD_CFLAGS($EXTRA_CFLAGS)
 
 ################################################################################
+test "$use_database" = yes && SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in"
 AC_OUTPUT( \
        include/MKterm.h.awk \
        include/curses.head:include/curses.h.in \
        include/termcap.h \
        include/unctrl.h \
-       misc/run_tic.sh:misc/run_tic.in \
        $SUB_MAKEFILES \
        Makefile,[
 CF_LIB_RULES
@@ -1329,6 +1345,7 @@ cf_cv_shlib_version="$cf_cv_shlib_version"
 cf_cv_shlib_version_infix="$cf_cv_shlib_version_infix"
 cf_cv_system_name="$cf_cv_system_name"
 cf_with_cxx_binding="$cf_with_cxx_binding"
+host="$host"
 target="$target"
 
 ],cat)dnl
diff --git a/dist.mk b/dist.mk
index ad6743f8c8e0667f4935a81f03564eedc957724c..2651e2bb1f9b7c0d7cf963a4fd01d2890a382419 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -1,4 +1,4 @@
-# $Id: dist.mk,v 1.327 2002/10/12 23:27:36 tom Exp $
+# $Id: dist.mk,v 1.402 2004/02/08 20:56:43 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -9,8 +9,8 @@ SHELL = /bin/sh
 
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 5
-NCURSES_MINOR = 3
-NCURSES_PATCH = 20021012
+NCURSES_MINOR = 4
+NCURSES_PATCH = 20040208
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
@@ -24,8 +24,10 @@ GNATHTML= `type -p gnathtml || type -p gnathtml.pl`
 # Not all man programs agree with this assumption; some use half-spacing, which
 # has the effect of lengthening the text portion of the page -- so man2html
 # would remove some text.  The man program on Redhat 6.1 appears to work with
-# man2html if we set the top/bottom margins to 6 (the default is 7).
-MAN2HTML= man2html -botm=6 -topm=6 -cgiurl '$$title.$$section$$subsection.html'
+# man2html if we set the top/bottom margins to 6 (the default is 7).  Newer
+# versions of 'man' on Linux leave no margin (and make it harder to sync with
+# pages).
+MAN2HTML= man2html -botm=0 -topm=0 -cgiurl '$$title.$$section$$subsection.html'
 
 ALL    = ANNOUNCE doc/html/announce.html doc/ncurses-intro.doc doc/hackguide.doc manhtml adahtml
 
@@ -68,7 +70,7 @@ manhtml: MANIFEST
        @echo 's/<\/B>/<\/STRONG>/g' >> subst.tmp
        @echo 's/<I>/<EM>/g'         >> subst.tmp
        @echo 's/<\/I>/<\/EM>/g'     >> subst.tmp
-       @sort < subst.tmp | uniq > subst.sed
+       @misc/csort < subst.tmp | uniq > subst.sed
        @echo '/<\/TITLE>/a\' >> subst.sed
        @echo '<link rev=made href="mailto:bug-ncurses@gnu.org">\' >> subst.sed
        @echo '<meta http-equiv="Content-Type" content="text\/html; charset=iso-8859-1">' >> subst.sed
@@ -88,7 +90,7 @@ manhtml: MANIFEST
                        -e 's/>/\&gt;/g' \
           >> doc/html/man/$$g ;\
           echo '-->' >> doc/html/man/$$g ;\
-          man/edit_man.sh editing /usr/man man $$f | $(MANPROG) | tr '\255' '-' | $(MAN2HTML) -title "$$T" | \
+          man/edit_man.sh normal editing /usr/man man $$f | $(MANPROG) | tr '\255' '-' | $(MAN2HTML) -title "$$T" | \
           sed -f subst.sed |\
           sed -e 's/"curses.3x.html"/"ncurses.3x.html"/g' \
           >> doc/html/man/$$g ;\
@@ -97,7 +99,7 @@ manhtml: MANIFEST
        @sed -e "\%./doc/html/man/%d" < MANIFEST > MANIFEST.tmp
        @find ./doc/html/man -type f -print >> MANIFEST.tmp
        @chmod u+w MANIFEST
-       @sort -u < MANIFEST.tmp > MANIFEST
+       @misc/csort -u < MANIFEST.tmp > MANIFEST
        @rm -f MANIFEST.tmp
 
 #
@@ -110,7 +112,7 @@ adahtml: MANIFEST
          (cd ./Ada95/gen ; make html) ;\
          sed -e "\%./doc/html/ada/%d" < MANIFEST > MANIFEST.tmp ;\
          find ./doc/html/ada -type f -print >> MANIFEST.tmp ;\
-         sort -u < MANIFEST.tmp > MANIFEST ;\
+         misc/csort -u < MANIFEST.tmp > MANIFEST ;\
          rm -f MANIFEST.tmp ;\
        fi
 
@@ -128,7 +130,7 @@ writelock:
 MANIFEST:
        -rm -f $@
        touch $@
-       find . -type f -print |sort | fgrep -v .lsm |fgrep -v .spec >$@
+       find . -type f -print |misc/csort | fgrep -v .lsm |fgrep -v .spec >$@
 
 TAGS:
        etags */*.[ch]
index e9828d2919fab62f53a0e0f7efbf00c482dbdd6c..a3524301681375b8ea77c43ae0185e4f45b5862a 100644 (file)
@@ -1,8 +1,8 @@
 
                           A Hacker's Guide to NCURSES
-                                       
+
                                    Contents
-                                       
+
      * Abstract
      * Objective of the Package
           + Why System V Curses?
      * Other Utilities
      * Style Tips for Developers
      * Porting Hints
-       
+
                                    Abstract
-                                       
+
    This document is a hacker's tour of the ncurses library and utilities.
-   It discusses design philosophy, implementation methods, and the
-   conventions used for coding and documentation. It is recommended
-   reading for anyone who is interested in porting, extending or
+   It  discusses  design  philosophy,  implementation  methods,  and  the
+   conventions  used  for  coding  and  documentation.  It is recommended
+   reading  for  anyone  who  is  interested  in  porting,  extending  or
    improving the package.
-   
+
                            Objective of the Package
-                                       
+
    The objective of the ncurses package is to provide a free software API
    for character-cell terminals and terminal emulators with the following
    characteristics:
-     * Source-compatible with historical curses implementations
+     * Source-compatible    with    historical   curses   implementations
        (including the original BSD curses and System V curses.
-     * Conformant with the XSI Curses standard issued as part of XPG4 by
+     * Conformant  with the XSI Curses standard issued as part of XPG4 by
        X/Open.
-     * High-quality -- stable and reliable code, wide portability, good
+     * High-quality  --  stable and reliable code, wide portability, good
        packaging, superior documentation.
-     * Featureful -- should eliminate as much of the drudgery of C
+     * Featureful  --  should  eliminate  as  much  of  the drudgery of C
        interface programming as possible, freeing programmers to think at
        a higher level of design.
-       
-   These objectives are in priority order. So, for example, source
-   compatibility with older version must trump featurefulness -- we
-   cannot add features if it means breaking the portion of the API
+
+   These  objectives  are  in  priority  order.  So,  for example, source
+   compatibility  with  older  version  must  trump  featurefulness -- we
+   cannot  add  features  if  it  means  breaking  the portion of the API
    corresponding to historical curses versions.
-   
+
 Why System V Curses?
 
-   We used System V curses as a model, reverse-engineering their API, in
+   We  used System V curses as a model, reverse-engineering their API, in
    order to fulfill the first two objectives.
-   
-   System V curses implementations can support BSD curses programs with
+
+   System  V  curses implementations can support BSD curses programs with
    just a recompilation, so by capturing the System V API we also capture
    BSD's.
-   
-   More importantly for the future, the XSI Curses standard issued by
-   X/Open is explicitly and closely modeled on System V. So conformance
+
+   More  importantly  for  the  future, the XSI Curses standard issued by
+   X/Open  is  explicitly and closely modeled on System V. So conformance
    with System V took us most of the way to base-level XSI conformance.
-   
+
 How to Design Extensions
 
-   The third objective (standards conformance) requires that it be easy
-   to condition source code using ncurses so that the absence of
+   The  third  objective (standards conformance) requires that it be easy
+   to  condition  source  code  using  ncurses  so  that  the  absence of
    nonstandard extensions does not break the code.
-   
-   Accordingly, we have a policy of associating with each nonstandard
-   extension a feature macro, so that ncurses client code can use this
-   macro to condition in or out the code that requires the ncurses
+
+   Accordingly,  we  have  a  policy of associating with each nonstandard
+   extension  a  feature  macro, so that ncurses client code can use this
+   macro  to  condition  in  or  out  the  code that requires the ncurses
    extension.
-   
-   For example, there is a macro NCURSES_MOUSE_VERSION which XSI Curses
-   does not define, but which is defined in the ncurses library header.
+
+   For  example,  there is a macro NCURSES_MOUSE_VERSION which XSI Curses
+   does  not  define, but which is defined in the ncurses library header.
    You can use this to condition the calls to the mouse API calls.
-   
+
                          Portability and Configuration
-                                       
-   Code written for ncurses may assume an ANSI-standard C compiler and
-   POSIX-compatible OS interface. It may also assume the presence of a
+
+   Code  written  for  ncurses may assume an ANSI-standard C compiler and
+   POSIX-compatible  OS  interface.  It may also assume the presence of a
    System-V-compatible select(2) call.
-   
+
    We encourage (but do not require) developers to make the code friendly
    to less-capable UNIX environments wherever possible.
-   
-   We encourage developers to support OS-specific optimizations and
+
+   We  encourage  developers  to  support  OS-specific  optimizations and
    methods not available under POSIX/ANSI, provided only that:
-     * All such code is properly conditioned so the build process does
+     * All  such  code  is properly conditioned so the build process does
        not attempt to compile it under a plain ANSI/POSIX environment.
-     * Adding such implementation methods does not introduce
+     * Adding    such   implementation   methods   does   not   introduce
        incompatibilities in the ncurses API between platforms.
-       
-   We use GNU autoconf(1) as a tool to deal with portability issues. The
+
+   We  use GNU autoconf(1) as a tool to deal with portability issues. The
    right way to leverage an OS-specific feature is to modify the autoconf
-   specification files (configure.in and aclocal.m4) to set up a new
+   specification  files  (configure.in  and  aclocal.m4)  to set up a new
    feature macro, which you then use to condition your code.
-   
+
                            Documentation Conventions
-                                       
-   There are three kinds of documentation associated with this package.
+
+   There  are  three kinds of documentation associated with this package.
    Each has a different preferred format:
      * Package-internal files (README, INSTALL, TO-DO etc.)
      * Manual pages.
      * Everything else (i.e., narrative documentation).
-       
+
    Our conventions are simple:
     1. Maintain package-internal files in plain text. The expected viewer
-       for them more(1) or an editor window; there's no point in
+       for  them  more(1)  or  an  editor  window;  there's  no  point in
        elaborate mark-up.
-    2. Mark up manual pages in the man macros. These have to be viewable
+    2. Mark  up manual pages in the man macros. These have to be viewable
        through traditional man(1) programs.
     3. Write everything else in HTML.
-       
-   When in doubt, HTMLize a master and use lynx(1) to generate plain
+
+   When  in  doubt,  HTMLize  a  master and use lynx(1) to generate plain
    ASCII (as we do for the announcement document).
-   
+
    The reason for choosing HTML is that it's (a) well-adapted for on-line
    browsing through viewers that are everywhere; (b) more easily readable
-   as plain text than most other mark-ups, if you don't have a viewer;
-   and (c) carries enough information that you can generate a
-   nice-looking printed version from it. Also, of course, it make
+   as  plain  text  than most other mark-ups, if you don't have a viewer;
+   and   (c)   carries   enough  information  that  you  can  generate  a
+   nice-looking  printed  version  from  it.  Also,  of  course,  it make
    exporting things like the announcement document to WWW pretty trivial.
-   
+
                               How to Report Bugs
-                                       
-   The reporting address for bugs is bug-ncurses@gnu.org. This is a
-   majordomo list; to join, write to bug-ncurses-request@gnu.org with a
+
+   The  reporting  address  for  bugs  is  bug-ncurses@gnu.org. This is a
+   majordomo  list;  to join, write to bug-ncurses-request@gnu.org with a
    message containing the line:
              subscribe <name>@<host.domain>
 
-   The ncurses code is maintained by a small group of volunteers. While
-   we try our best to fix bugs promptly, we simply don't have a lot of
-   hours to spend on elementary hand-holding. We rely on intelligent
-   cooperation from our users. If you think you have found a bug in
-   ncurses, there are some steps you can take before contacting us that
+   The  ncurses  code is maintained by a small group of volunteers. While
+   we  try  our  best to fix bugs promptly, we simply don't have a lot of
+   hours  to  spend  on  elementary  hand-holding. We rely on intelligent
+   cooperation  from  our  users.  If  you  think you have found a bug in
+   ncurses,  there  are some steps you can take before contacting us that
    will help get the bug fixed quickly.
-   
-   In order to use our bug-fixing time efficiently, we put people who
+
+   In  order  to  use  our bug-fixing time efficiently, we put people who
    show us they've taken these steps at the head of our queue. This means
-   that if you don't, you'll probably end up at the tail end and have to
+   that  if you don't, you'll probably end up at the tail end and have to
    wait a while.
     1. Develop a recipe to reproduce the bug.
-       Bugs we can reproduce are likely to be fixed very quickly, often
-       within days. The most effective single thing you can do to get a
-       quick fix is develop a way we can duplicate the bad behavior --
-       ideally, by giving us source for a small, portable test program
-       that breaks the library. (Even better is a keystroke recipe using
+       Bugs  we  can reproduce are likely to be fixed very quickly, often
+       within  days.  The most effective single thing you can do to get a
+       quick  fix  is  develop a way we can duplicate the bad behavior --
+       ideally,  by  giving  us source for a small, portable test program
+       that  breaks the library. (Even better is a keystroke recipe using
        one of the test programs provided with the distribution.)
     2. Try to reproduce the bug on a different terminal type.
-       In our experience, most of the behaviors people report as library
+       In  our experience, most of the behaviors people report as library
        bugs are actually due to subtle problems in terminal descriptions.
        This is especially likely to be true if you're using a traditional
-       asynchronous terminal or PC-based terminal emulator, rather than
+       asynchronous  terminal  or PC-based terminal emulator, rather than
        xterm or a UNIX console entry.
        It's therefore extremely helpful if you can tell us whether or not
-       your problem reproduces on other terminal types. Usually you'll
-       have both a console type and xterm available; please tell us
+       your  problem  reproduces  on other terminal types. Usually you'll
+       have  both  a  console  type  and  xterm available; please tell us
        whether or not your bug reproduces on both.
-       If you have xterm available, it is also good to collect xterm
+       If  you  have  xterm  available,  it is also good to collect xterm
        reports for different window sizes. This is especially true if you
-       normally use an unusual xterm window size -- a surprising number
+       normally  use  an unusual xterm window size -- a surprising number
        of the bugs we've seen are either triggered or masked by these.
     3. Generate and examine a trace file for the broken behavior.
-       Recompile your program with the debugging versions of the
-       libraries. Insert a trace() call with the argument set to
-       TRACE_UPDATE. (See "Writing Programs with NCURSES" for details on
-       trace levels.) Reproduce your bug, then look at the trace file to
+       Recompile   your  program  with  the  debugging  versions  of  the
+       libraries.  Insert  a  trace()  call  with  the  argument  set  to
+       TRACE_UPDATE.  (See "Writing Programs with NCURSES" for details on
+       trace  levels.) Reproduce your bug, then look at the trace file to
        see what the library was actually doing.
-       Another frequent cause of apparent bugs is application coding
-       errors that cause the wrong things to be put on the virtual
+       Another  frequent  cause  of  apparent  bugs is application coding
+       errors  that  cause  the  wrong  things  to  be put on the virtual
        screen. Looking at the virtual-screen dumps in the trace file will
-       tell you immediately if this is happening, and save you from the
-       possible embarrassment of being told that the bug is in your code
+       tell  you  immediately if this is happening, and save you from the
+       possible  embarrassment of being told that the bug is in your code
        and is your problem rather than ours.
-       If the virtual-screen dumps look correct but the bug persists,
-       it's possible to crank up the trace level to give more and more
-       information about the library's update actions and the control
-       sequences it issues to perform them. The test directory of the
+       If  the  virtual-screen  dumps  look correct but the bug persists,
+       it's  possible  to  crank up the trace level to give more and more
+       information  about  the  library's  update actions and the control
+       sequences  it  issues  to  perform them. The test directory of the
        distribution contains a tool for digesting these logs to make them
        less tedious to wade through.
        Often you'll find terminfo problems at this stage by noticing that
-       the escape sequences put out for various capabilities are wrong.
-       If not, you're likely to learn enough to be able to characterize
+       the  escape  sequences put out for various capabilities are wrong.
+       If  not,  you're likely to learn enough to be able to characterize
        any bug in the screen-update logic quite exactly.
     4. Report details and symptoms, not just interpretations.
-       If you do the preceding two steps, it is very likely that you'll
+       If  you  do the preceding two steps, it is very likely that you'll
        discover the nature of the problem yourself and be able to send us
-       a fix. This will create happy feelings all around and earn you
-       good karma for the first time you run into a bug you really can't
+       a  fix.  This  will  create happy feelings all around and earn you
+       good  karma for the first time you run into a bug you really can't
        characterize and fix yourself.
-       If you're still stuck, at least you'll know what to tell us.
-       Remember, we need details. If you guess about what is safe to
+       If  you're  still  stuck,  at  least  you'll know what to tell us.
+       Remember,  we  need  details.  If  you guess about what is safe to
        leave out, you are too likely to be wrong.
-       If your bug produces a bad update, include a trace file. Try to
-       make the trace at the least voluminous level that pins down the
-       bug. Logs that have been through tracemunch are OK, it doesn't
-       throw away any information (actually they're better than
+       If  your  bug  produces a bad update, include a trace file. Try to
+       make  the  trace  at the least voluminous level that pins down the
+       bug.  Logs  that  have  been through tracemunch are OK, it doesn't
+       throw   away   any   information  (actually  they're  better  than
        un-munched ones because they're easier to read).
-       If your bug produces a core-dump, please include a symbolic stack
+       If  your bug produces a core-dump, please include a symbolic stack
        trace generated by gdb(1) or your local equivalent.
        Tell us about every terminal on which you've reproduced the bug --
-       and every terminal on which you can't. Ideally, sent us terminfo
+       and  every  terminal on which you can't. Ideally, sent us terminfo
        sources for all of these (yours might differ from ours).
-       Include your ncurses version and your OS/machine type, of course!
+       Include  your ncurses version and your OS/machine type, of course!
        You can find your ncurses version in the curses.h file.
-       
-   If your problem smells like a logic error or in cursor movement or
-   scrolling or a bad capability, there are a couple of tiny test frames
-   for the library algorithms in the progs directory that may help you
-   isolate it. These are not part of the normal build, but do have their
+
+   If  your  problem  smells  like a logic error or in cursor movement or
+   scrolling  or a bad capability, there are a couple of tiny test frames
+   for  the  library  algorithms in the progs directory that may help you
+   isolate  it. These are not part of the normal build, but do have their
    own make productions.
-   
-   The most important of these is mvcur, a test frame for the
-   cursor-movement optimization code. With this program, you can see
-   directly what control sequences will be emitted for any given cursor
+
+   The   most  important  of  these  is  mvcur,  a  test  frame  for  the
+   cursor-movement  optimization  code.  With  this  program, you can see
+   directly  what  control sequences will be emitted for any given cursor
    movement or scroll/insert/delete operations. If you think you've got a
-   bad capability identified, you can disable it and test again. The
+   bad  capability  identified,  you  can  disable it and test again. The
    program is command-driven and has on-line help.
-   
-   If you think the vertical-scroll optimization is broken, or just want
-   to understand how it works better, build hashmap and read the header
-   comments of hardscroll.c and hashmap.c; then try it out. You can also
+
+   If  you think the vertical-scroll optimization is broken, or just want
+   to  understand  how it works better, build hashmap and read the header
+   comments  of hardscroll.c and hashmap.c; then try it out. You can also
    test the hardware-scrolling optimization separately with hardscroll.
-   
-   There's one other interactive tester, tctest, that exercises
-   translation between termcap and terminfo formats. If you have a
+
+   There's   one   other   interactive  tester,  tctest,  that  exercises
+   translation  between  termcap  and  terminfo  formats.  If  you have a
    serious need to run this, you probably belong on our development team!
-   
+
                          A Tour of the Ncurses Library
-                                       
+
 Library Overview
 
-   Most of the library is superstructure -- fairly trivial convenience
-   interfaces to a small set of basic functions and data structures used
-   to manipulate the virtual screen (in particular, none of this code
-   does any I/O except through calls to more fundamental modules
+   Most  of  the  library is superstructure -- fairly trivial convenience
+   interfaces  to a small set of basic functions and data structures used
+   to  manipulate  the  virtual  screen (in particular, none of this code
+   does  any  I/O  except  through  calls  to  more  fundamental  modules
    described below). The files
-   
-     lib_addch.c lib_bkgd.c lib_box.c lib_chgat.c lib_clear.c
-     lib_clearok.c lib_clrbot.c lib_clreol.c lib_colorset.c lib_data.c
-     lib_delch.c lib_delwin.c lib_echo.c lib_erase.c lib_gen.c
-     lib_getstr.c lib_hline.c lib_immedok.c lib_inchstr.c lib_insch.c
-     lib_insdel.c lib_insstr.c lib_instr.c lib_isendwin.c lib_keyname.c
-     lib_leaveok.c lib_move.c lib_mvwin.c lib_overlay.c lib_pad.c
-     lib_printw.c lib_redrawln.c lib_scanw.c lib_screen.c lib_scroll.c
-     lib_scrollok.c lib_scrreg.c lib_set_term.c lib_slk.c
-     lib_slkatr_set.c lib_slkatrof.c lib_slkatron.c lib_slkatrset.c
-     lib_slkattr.c lib_slkclear.c lib_slkcolor.c lib_slkinit.c
-     lib_slklab.c lib_slkrefr.c lib_slkset.c lib_slktouch.c lib_touch.c
+
+     lib_addch.c    lib_bkgd.c    lib_box.c    lib_chgat.c   lib_clear.c
+     lib_clearok.c  lib_clrbot.c  lib_clreol.c lib_colorset.c lib_data.c
+     lib_delch.c    lib_delwin.c    lib_echo.c   lib_erase.c   lib_gen.c
+     lib_getstr.c  lib_hline.c  lib_immedok.c  lib_inchstr.c lib_insch.c
+     lib_insdel.c  lib_insstr.c lib_instr.c lib_isendwin.c lib_keyname.c
+     lib_leaveok.c   lib_move.c   lib_mvwin.c   lib_overlay.c  lib_pad.c
+     lib_printw.c  lib_redrawln.c  lib_scanw.c lib_screen.c lib_scroll.c
+     lib_scrollok.c      lib_scrreg.c      lib_set_term.c      lib_slk.c
+     lib_slkatr_set.c   lib_slkatrof.c   lib_slkatron.c  lib_slkatrset.c
+     lib_slkattr.c     lib_slkclear.c    lib_slkcolor.c    lib_slkinit.c
+     lib_slklab.c  lib_slkrefr.c lib_slkset.c lib_slktouch.c lib_touch.c
      lib_unctrl.c lib_vline.c lib_wattroff.c lib_wattron.c lib_window.c
-     
-   are all in this category. They are very unlikely to need change,
+
+   are  all  in  this  category.  They  are very unlikely to need change,
    barring bugs or some fundamental reorganization in the underlying data
    structures.
-   
+
    These files are used only for debugging support:
-   
-     lib_trace.c lib_traceatr.c lib_tracebits.c lib_tracechr.c
+
+     lib_trace.c     lib_traceatr.c    lib_tracebits.c    lib_tracechr.c
      lib_tracedmp.c lib_tracemse.c trace_buf.c
-     
-   It is rather unlikely you will ever need to change these, unless you
+
+   It  is  rather unlikely you will ever need to change these, unless you
    want to introduce a new debug trace level for some reasoon.
-   
-   There is another group of files that do direct I/O via tputs(),
-   computations on the terminal capabilities, or queries to the OS
-   environment, but nevertheless have only fairly low complexity. These
+
+   There  is  another  group  of  files  that  do direct I/O via tputs(),
+   computations  on  the  terminal  capabilities,  or  queries  to the OS
+   environment,  but  nevertheless have only fairly low complexity. These
    include:
-   
-     lib_acs.c lib_beep.c lib_color.c lib_endwin.c lib_initscr.c
-     lib_longname.c lib_newterm.c lib_options.c lib_termcap.c lib_ti.c
+
+     lib_acs.c   lib_beep.c   lib_color.c   lib_endwin.c   lib_initscr.c
+     lib_longname.c  lib_newterm.c  lib_options.c lib_termcap.c lib_ti.c
      lib_tparm.c lib_tputs.c lib_vidattr.c read_entry.c.
-     
+
    They are likely to need revision only if ncurses is being ported to an
    environment without an underlying terminfo capability representation.
-   
-   These files have serious hooks into the tty driver and signal
+
+   These  files  have  serious  hooks  into  the  tty  driver  and signal
    facilities:
-   
+
      lib_kernel.c lib_baudrate.c lib_raw.c lib_tstp.c lib_twait.c
-     
+
    If you run into porting snafus moving the package to another UNIX, the
-   problem is likely to be in one of these files. The file lib_print.c
+   problem  is  likely  to be in one of these files. The file lib_print.c
    uses sleep(2) and also falls in this category.
-   
+
    Almost all of the real work is done in the files
-   
-     hardscroll.c hashmap.c lib_addch.c lib_doupdate.c lib_getch.c
+
+     hardscroll.c   hashmap.c   lib_addch.c  lib_doupdate.c  lib_getch.c
      lib_mouse.c lib_mvcur.c lib_refresh.c lib_setup.c lib_vidattr.c
-     
-   Most of the algorithmic complexity in the library lives in these
-   files. If there is a real bug in ncurses itself, it's probably here.
+
+   Most  of  the  algorithmic  complexity  in  the library lives in these
+   files.  If  there is a real bug in ncurses itself, it's probably here.
    We'll tour some of these files in detail below (see The Engine Room).
-   
-   Finally, there is a group of files that is actually most of the
-   terminfo compiler. The reason this code lives in the ncurses library
+
+   Finally,  there  is  a  group  of  files  that is actually most of the
+   terminfo  compiler.  The reason this code lives in the ncurses library
    is to support fallback to /etc/termcap. These files include
-   
-     alloc_entry.c captoinfo.c comp_captab.c comp_error.c comp_hash.c
+
+     alloc_entry.c  captoinfo.c  comp_captab.c  comp_error.c comp_hash.c
      comp_parse.c comp_scan.c parse_entry.c read_termcap.c write_entry.c
-     
+
    We'll discuss these in the compiler tour.
-   
+
 The Engine Room
 
   Keyboard Input
-  
-   All ncurses input funnels through the function wgetch(), defined in
-   lib_getch.c. This function is tricky; it has to poll for keyboard and
-   mouse events and do a running match of incoming input against the set
+
+   All  ncurses  input  funnels through the function wgetch(), defined in
+   lib_getch.c.  This function is tricky; it has to poll for keyboard and
+   mouse  events and do a running match of incoming input against the set
    of defined special keys.
-   
-   The central data structure in this module is a FIFO queue, used to
-   match multiple-character input sequences against special-key
+
+   The  central  data  structure  in this module is a FIFO queue, used to
+   match   multiple-character   input   sequences   against   special-key
    capabilities; also to implement pushback via ungetch().
-   
+
    The wgetch() code distinguishes between function key sequences and the
-   same sequences typed manually by doing a timed wait after each input
-   character that could lead a function key sequence. If the entire
-   sequence takes less than 1 second, it is assumed to have been
+   same  sequences  typed manually by doing a timed wait after each input
+   character  that  could  lead  a  function  key sequence. If the entire
+   sequence  takes  less  than  1  second,  it  is  assumed  to have been
    generated by a function key press.
-   
-   Hackers bruised by previous encounters with variant select(2) calls
-   may find the code in lib_twait.c interesting. It deals with the
+
+   Hackers  bruised  by  previous encounters with variant select(2) calls
+   may  find  the  code  in  lib_twait.c  interesting.  It deals with the
    problem that some BSD selects don't return a reliable time-left value.
    The function timed_wait() effectively simulates a System V select.
-   
+
   Mouse Events
-  
+
    If the mouse interface is active, wgetch() polls for mouse events each
-   call, before it goes to the keyboard for input. It is up to
+   call,  before  it  goes  to  the  keyboard  for  input.  It  is  up to
    lib_mouse.c how the polling is accomplished; it may vary for different
    devices.
-   
-   Under xterm, however, mouse event notifications come in via the
-   keyboard input stream. They are recognized by having the kmous
-   capability as a prefix. This is kind of klugey, but trying to wire in
-   recognition of a mouse key prefix without going through the
-   function-key machinery would be just too painful, and this turns out
-   to imply having the prefix somewhere in the function-key capabilities
+
+   Under  xterm,  however,  mouse  event  notifications  come  in via the
+   keyboard  input  stream.  They  are  recognized  by  having  the kmous
+   capability  as a prefix. This is kind of klugey, but trying to wire in
+   recognition   of   a  mouse  key  prefix  without  going  through  the
+   function-key  machinery  would be just too painful, and this turns out
+   to  imply having the prefix somewhere in the function-key capabilities
    at terminal-type initialization.
-   
-   This kluge only works because kmous isn't actually used by any
+
+   This  kluge  only  works  because  kmous  isn't  actually  used by any
    historic terminal type or curses implementation we know of. Best guess
-   is it's a relic of some forgotten experiment in-house at Bell Labs
-   that didn't leave any traces in the publicly-distributed System V
-   terminfo files. If System V or XPG4 ever gets serious about using it
+   is  it's  a  relic  of some forgotten experiment in-house at Bell Labs
+   that  didn't  leave  any  traces  in the publicly-distributed System V
+   terminfo  files.  If System V or XPG4 ever gets serious about using it
    again, this kluge may have to change.
-   
+
    Here are some more details about mouse event handling:
-   
+
    The lib_mouse()code is logically split into a lower level that accepts
-   event reports in a device-dependent format and an upper level that
+   event  reports  in  a  device-dependent format and an upper level that
    parses mouse gestures and filters events. The mediating data structure
    is a circular queue of event structures.
-   
+
    Functionally, the lower level's job is to pick up primitive events and
-   put them on the circular queue. This can happen in one of two ways:
-   either (a) _nc_mouse_event() detects a series of incoming mouse
-   reports and queues them, or (b) code in lib_getch.c detects the kmous
-   prefix in the keyboard input stream and calls _nc_mouse_inline to
+   put  them  on  the circular queue. This can happen in one of two ways:
+   either  (a)  _nc_mouse_event()  detects  a  series  of  incoming mouse
+   reports  and queues them, or (b) code in lib_getch.c detects the kmous
+   prefix  in  the  keyboard  input  stream and calls _nc_mouse_inline to
    queue up a series of adjacent mouse reports.
-   
+
    In either case, _nc_mouse_parse() should be called after the series is
    accepted to parse the digested mouse reports (low-level events) into a
    gesture (a high-level or composite event).
-   
+
   Output and Screen Updating
-  
+
    With the single exception of character echoes during a wgetnstr() call
-   (which simulates cooked-mode line editing in an ncurses window), the
+   (which  simulates  cooked-mode line editing in an ncurses window), the
    library normally does all its output at refresh time.
-   
-   The main job is to go from the current state of the screen (as
-   represented in the curscr window structure) to the desired new state
+
+   The  main  job  is  to  go  from  the  current state of the screen (as
+   represented  in  the curscr window structure) to the desired new state
    (as represented in the newscr window structure), while doing as little
    I/O as possible.
-   
-   The brains of this operation are the modules hashmap.c, hardscroll.c
-   and lib_doupdate.c; the latter two use lib_mvcur.c. Essentially, what
+
+   The  brains  of this operation are the modules hashmap.c, hardscroll.c
+   and  lib_doupdate.c; the latter two use lib_mvcur.c. Essentially, what
    happens looks like this:
-   
-   The hashmap.c module tries to detect vertical motion changes between
-   the real and virtual screens. This information is represented by the
-   oldindex members in the newscr structure. These are modified by
-   vertical-motion and clear operations, and both are re-initialized
+
+   The  hashmap.c  module tries to detect vertical motion changes between
+   the  real  and virtual screens. This information is represented by the
+   oldindex  members  in  the  newscr  structure.  These  are modified by
+   vertical-motion  and  clear  operations,  and  both are re-initialized
    after each update. To this change-journalling information, the hashmap
-   code adds deductions made using a modified Heckel algorithm on hash
+   code  adds  deductions  made using a modified Heckel algorithm on hash
    values generated from the line contents.
-   
-   The hardscroll.c module computes an optimum set of scroll, insertion,
-   and deletion operations to make the indices match. It calls
+
+   The  hardscroll.c module computes an optimum set of scroll, insertion,
+   and   deletion   operations  to  make  the  indices  match.  It  calls
    _nc_mvcur_scrolln() in lib_mvcur.c to do those motions.
-   
-   Then lib_doupdate.c goes to work. Its job is to do line-by-line
-   transformations of curscr lines to newscr lines. Its main tool is the
-   routine mvcur() in lib_mvcur.c. This routine does cursor-movement
-   optimization, attempting to get from given screen location A to given
+
+   Then  lib_doupdate.c  goes  to  work.  Its  job  is to do line-by-line
+   transformations  of curscr lines to newscr lines. Its main tool is the
+   routine  mvcur()  in  lib_mvcur.c.  This  routine does cursor-movement
+   optimization,  attempting to get from given screen location A to given
    location B in the fewest output characters posible.
-   
-   If you want to work on screen optimizations, you should use the fact
-   that (in the trace-enabled version of the library) enabling the
-   TRACE_TIMES trace level causes a report to be emitted after each
-   screen update giving the elapsed time and a count of characters
-   emitted during the update. You can use this to tell when an update
+
+   If  you  want to work on screen optimizations, you should use the fact
+   that  (in  the  trace-enabled  version  of  the  library) enabling the
+   TRACE_TIMES  trace  level  causes  a  report  to be emitted after each
+   screen  update  giving  the  elapsed  time  and  a count of characters
+   emitted  during  the  update.  You can use this to tell when an update
    optimization improves efficiency.
-   
-   In the trace-enabled version of the library, it is also possible to
+
+   In  the  trace-enabled  version of the library, it is also possible to
    disable and re-enable various optimizations at runtime by tweaking the
-   variable _nc_optimize_enable. See the file include/curses.h.in for
+   variable  _nc_optimize_enable.  See  the  file include/curses.h.in for
    mask values, near the end.
-   
+
                          The Forms and Menu Libraries
-                                       
-   The forms and menu libraries should work reliably in any environment
-   you can port ncurses to. The only portability issue anywhere in them
-   is what flavor of regular expressions the built-in form field type
+
+   The  forms  and menu libraries should work reliably in any environment
+   you  can  port ncurses to. The only portability issue anywhere in them
+   is  what  flavor  of  regular expressions the built-in form field type
    TYPE_REGEXP will recognize.
-   
-   The configuration code prefers the POSIX regex facility, modeled on
-   System V's, but will settle for BSD regexps if the former isn't
+
+   The  configuration  code  prefers the POSIX regex facility, modeled on
+   System  V's,  but  will  settle  for  BSD  regexps if the former isn't
    available.
-   
-   Historical note: the panels code was written primarily to assist in
-   porting u386mon 2.0 (comp.sources.misc v14i001-4) to systems lacking
-   panels support; u386mon 2.10 and beyond use it. This version has been
+
+   Historical  note:  the  panels code was written primarily to assist in
+   porting  u386mon  2.0 (comp.sources.misc v14i001-4) to systems lacking
+   panels  support; u386mon 2.10 and beyond use it. This version has been
    slightly cleaned up for ncurses.
-   
+
                         A Tour of the Terminfo Compiler
-                                       
+
    The ncurses implementation of tic is rather complex internally; it has
-   to do a trying combination of missions. This starts with the fact
-   that, in addition to its normal duty of compiling terminfo sources
-   into loadable terminfo binaries, it has to be able to handle termcap
+   to  do  a  trying  combination  of missions. This starts with the fact
+   that,  in  addition  to  its normal duty of compiling terminfo sources
+   into  loadable  terminfo binaries, it has to be able to handle termcap
    syntax and compile that too into terminfo entries.
-   
-   The implementation therefore starts with a table-driven, dual-mode
+
+   The  implementation  therefore  starts  with a table-driven, dual-mode
    lexical analyzer (in comp_scan.c). The lexer chooses its mode (termcap
    or terminfo) based on the first `,' or `:' it finds in each entry. The
-   lexer does all the work of recognizing capability names and values;
-   the grammar above it is trivial, just "parse entries till you run out
+   lexer  does  all  the work of recognizing capability names and values;
+   the  grammar above it is trivial, just "parse entries till you run out
    of file".
-   
+
 Translation of Non-use Capabilities
 
-   Translation of most things besides use capabilities is pretty
-   straightforward. The lexical analyzer's tokenizer hands each
-   capability name to a hash function, which drives a table lookup. The
+   Translation   of  most  things  besides  use  capabilities  is  pretty
+   straightforward.   The   lexical   analyzer's   tokenizer  hands  each
+   capability  name  to a hash function, which drives a table lookup. The
    table entry yields an index which is used to look up the token type in
    another table, and controls interpretation of the value.
-   
-   One possibly interesting aspect of the implementation is the way the
-   compiler tables are initialized. All the tables are generated by
-   various awk/sed/sh scripts from a master table include/Caps; these
-   scripts actually write C initializers which are linked to the
+
+   One  possibly  interesting aspect of the implementation is the way the
+   compiler  tables  are  initialized.  All  the  tables are generated by
+   various  awk/sed/sh  scripts  from  a master table include/Caps; these
+   scripts  actually  write  C  initializers  which  are  linked  to  the
    compiler. Furthermore, the hash table is generated in the same way, so
-   it doesn't have to be generated at compiler startup time (another
-   benefit of this organization is that the hash table can be in
+   it  doesn't  have  to  be  generated at compiler startup time (another
+   benefit  of  this  organization  is  that  the  hash  table  can be in
    shareable text space).
-   
+
    Thus, adding a new capability is usually pretty trivial, just a matter
-   of adding one line to the include/Caps file. We'll have more to say
+   of  adding  one  line to the include/Caps file. We'll have more to say
    about this in the section on Source-Form Translation.
-   
+
 Use Capability Resolution
 
-   The background problem that makes tic tricky isn't the capability
-   translation itself, it's the resolution of use capabilities. Older
+   The  background  problem  that  makes  tic tricky isn't the capability
+   translation  itself,  it's  the  resolution of use capabilities. Older
    versions would not handle forward use references for this reason (that
    is, a using terminal always had to follow its use target in the source
-   file). By doing this, they got away with a simple implementation
-   tactic; compile everything as it blows by, then resolve uses from
+   file).  By  doing  this,  they  got  away with a simple implementation
+   tactic;  compile  everything  as  it  blows by, then resolve uses from
    compiled entries.
-   
-   This won't do for ncurses. The problem is that that the whole
-   compilation process has to be embeddable in the ncurses library so
+
+   This  won't  do  for  ncurses.  The  problem  is  that  that the whole
+   compilation  process  has  to  be embeddable in the ncurses library so
    that it can be called by the startup code to translate termcap entries
-   on the fly. The embedded version can't go promiscuously writing
-   everything it translates out to disk -- for one thing, it will
+   on  the  fly.  The  embedded  version  can't  go promiscuously writing
+   everything  it  translates  out  to  disk  --  for  one thing, it will
    typically be running with non-root permissions.
-   
-   So our tic is designed to parse an entire terminfo file into a
-   doubly-linked circular list of entry structures in-core, and then do
-   use resolution in-memory before writing everything out. This design
+
+   So  our  tic  is  designed  to  parse  an  entire terminfo file into a
+   doubly-linked  circular  list of entry structures in-core, and then do
+   use  resolution  in-memory  before writing everything out. This design
    has other advantages: it makes forward and back use-references equally
-   easy (so we get the latter for free), and it makes checking for name
+   easy  (so  we get the latter for free), and it makes checking for name
    collisions before they're written out easy to do.
-   
-   And this is exactly how the embedded version works. But the
-   stand-alone user-accessible version of tic partly reverts to the
+
+   And   this  is  exactly  how  the  embedded  version  works.  But  the
+   stand-alone  user-accessible  version  of  tic  partly  reverts to the
    historical strategy; it writes to disk (not keeping in core) any entry
    with no use references.
-   
-   This is strictly a core-economy kluge, implemented because the
-   terminfo master file is large enough that some core-poor systems swap
+
+   This  is  strictly  a  core-economy  kluge,  implemented  because  the
+   terminfo  master file is large enough that some core-poor systems swap
    like crazy when you compile it all in memory...there have been reports
-   of this process taking three hours, rather than the twenty seconds or
+   of  this process taking three hours, rather than the twenty seconds or
    less typical on the author's development box.
-   
+
    So. The executable tic passes the entry-parser a hook that immediately
-   writes out the referenced entry if it has no use capabilities. The
-   compiler main loop refrains from adding the entry to the in-core list
-   when this hook fires. If some other entry later needs to reference an
-   entry that got written immediately, that's OK; the resolution code
+   writes  out  the  referenced  entry if it has no use capabilities. The
+   compiler  main loop refrains from adding the entry to the in-core list
+   when  this hook fires. If some other entry later needs to reference an
+   entry  that  got  written  immediately, that's OK; the resolution code
    will fetch it off disk when it can't find it in core.
-   
-   Name collisions will still be detected, just not as cleanly. The
-   write_entry() code complains before overwriting an entry that
-   postdates the time of tic's first call to write_entry(), Thus it will
-   complain about overwriting entries newly made during the tic run, but
+
+   Name  collisions  will  still  be  detected,  just not as cleanly. The
+   write_entry()   code   complains  before  overwriting  an  entry  that
+   postdates  the time of tic's first call to write_entry(), Thus it will
+   complain  about overwriting entries newly made during the tic run, but
    not about overwriting ones that predate it.
-   
+
 Source-Form Translation
 
    Another use of tic is to do source translation between various termcap
    and terminfo formats. There are more variants out there than you might
    think; the ones we know about are described in the captoinfo(1) manual
    page.
-   
-   The translation output code (dump_entry() in ncurses/dump_entry.c) is
-   shared with the infocmp(1) utility. It takes the same internal
-   representation used to generate the binary form and dumps it to
+
+   The  translation output code (dump_entry() in ncurses/dump_entry.c) is
+   shared  with  the  infocmp(1)  utility.  It  takes  the  same internal
+   representation  used  to  generate  the  binary  form  and dumps it to
    standard output in a specified format.
-   
-   The include/Caps file has a header comment describing ways you can
-   specify source translations for nonstandard capabilities just by
+
+   The  include/Caps  file  has  a header comment describing ways you can
+   specify  source  translations  for  nonstandard  capabilities  just by
    altering the master table. It's possible to set up capability aliasing
-   or tell the compiler to plain ignore a given capability without
+   or  tell  the  compiler  to  plain  ignore  a given capability without
    writing any C code at all.
-   
-   For circumstances where you need to do algorithmic translation, there
-   are functions in parse_entry.c called after the parse of each entry
+
+   For  circumstances where you need to do algorithmic translation, there
+   are  functions  in  parse_entry.c called after the parse of each entry
    that are specifically intended to encapsulate such translations. This,
-   for example, is where the AIX box1 capability get translated to an
+   for  example,  is  where  the AIX box1 capability get translated to an
    acsc string.
-   
+
                                 Other Utilities
-                                       
-   The infocmp utility is just a wrapper around the same entry-dumping
-   code used by tic for source translation. Perhaps the one interesting
-   aspect of the code is the use of a predicate function passed in to
-   dump_entry() to control which capabilities are dumped. This is
+
+   The  infocmp  utility  is just a wrapper around the same entry-dumping
+   code  used  by tic for source translation. Perhaps the one interesting
+   aspect  of  the  code  is the use of a predicate function passed in to
+   dump_entry()  to  control  which  capabilities  are  dumped.  This  is
    necessary in order to handle both the ordinary De-compilation case and
    entry difference reporting.
-   
-   The tput and clear utilities just do an entry load followed by a
+
+   The  tput  and  clear  utilities  just  do an entry load followed by a
    tputs() of a selected capability.
-   
+
                            Style Tips for Developers
-                                       
-   See the TO-DO file in the top-level directory of the source
+
+   See   the  TO-DO  file  in  the  top-level  directory  of  the  source
    distribution for additions that would be particularly useful.
-   
-   The prefix _nc_ should be used on library public functions that are
-   not part of the curses API in order to prevent pollution of the
-   application namespace. If you have to add to or modify the function
-   prototypes in curses.h.in, read ncurses/MKlib_gen.sh first so you can
-   avoid breaking XSI conformance. Please join the ncurses mailing list.
-   See the INSTALL file in the top level of the distribution for details
+
+   The  prefix  _nc_  should be used on library public functions that are
+   not  part  of  the  curses  API  in  order to prevent pollution of the
+   application  namespace.  If  you have to add to or modify the function
+   prototypes  in curses.h.in, read ncurses/MKlib_gen.sh first so you can
+   avoid  breaking XSI conformance. Please join the ncurses mailing list.
+   See  the INSTALL file in the top level of the distribution for details
    on the list.
-   
-   Look for the string FIXME in source files to tag minor bugs and
+
+   Look  for  the  string  FIXME  in  source  files to tag minor bugs and
    potential problems that could use fixing.
-   
-   Don't try to auto-detect OS features in the main body of the C code.
+
+   Don't  try  to auto-detect OS features in the main body of the C code.
    That's the job of the configuration system.
-   
+
    To hold down complexity, do make your code data-driven. Especially, if
-   you can drive logic from a table filtered out of include/Caps, do it.
-   If you find you need to augment the data in that file in order to
-   generate the proper table, that's still preferable to ad-hoc code --
+   you  can drive logic from a table filtered out of include/Caps, do it.
+   If  you  find  you  need  to augment the data in that file in order to
+   generate  the  proper table, that's still preferable to ad-hoc code --
    that's why the fifth field (flags) is there.
-   
+
    Have fun!
-   
+
                                  Porting Hints
-                                       
-   The following notes are intended to be a first step towards DOS and
+
+   The  following  notes  are intended to be a first step towards DOS and
    Macintosh ports of the ncurses libraries.
-   
-   The following library modules are `pure curses'; they operate only on
-   the curses internal structures, do all output through other curses
-   calls (not including tputs() and putp()) and do not call any other
-   UNIX routines such as signal(2) or the stdio library. Thus, they
+
+   The  following library modules are `pure curses'; they operate only on
+   the  curses  internal  structures,  do all output through other curses
+   calls  (not  including  tputs()  and putp()) and do not call any other
+   UNIX  routines  such  as  signal(2)  or  the stdio library. Thus, they
    should not need to be modified for single-terminal ports.
-   
-     lib_addch.c lib_addstr.c lib_bkgd.c lib_box.c lib_clear.c
-     lib_clrbot.c lib_clreol.c lib_delch.c lib_delwin.c lib_erase.c
-     lib_inchstr.c lib_insch.c lib_insdel.c lib_insstr.c lib_keyname.c
-     lib_move.c lib_mvwin.c lib_newwin.c lib_overlay.c lib_pad.c
-     lib_printw.c lib_refresh.c lib_scanw.c lib_scroll.c lib_scrreg.c
-     lib_set_term.c lib_touch.c lib_tparm.c lib_tputs.c lib_unctrl.c
+
+     lib_addch.c    lib_addstr.c    lib_bkgd.c   lib_box.c   lib_clear.c
+     lib_clrbot.c   lib_clreol.c  lib_delch.c  lib_delwin.c  lib_erase.c
+     lib_inchstr.c  lib_insch.c  lib_insdel.c lib_insstr.c lib_keyname.c
+     lib_move.c   lib_mvwin.c   lib_newwin.c   lib_overlay.c   lib_pad.c
+     lib_printw.c  lib_refresh.c  lib_scanw.c  lib_scroll.c lib_scrreg.c
+     lib_set_term.c  lib_touch.c  lib_tparm.c  lib_tputs.c  lib_unctrl.c
      lib_window.c panel.c
-     
+
    This module is pure curses, but calls outstr():
-   
+
      lib_getstr.c
-     
-   These modules are pure curses, except that they use tputs() and
+
+   These  modules  are  pure  curses,  except  that  they use tputs() and
    putp():
-   
-     lib_beep.c lib_color.c lib_endwin.c lib_options.c lib_slk.c
+
+     lib_beep.c   lib_color.c   lib_endwin.c   lib_options.c   lib_slk.c
      lib_vidattr.c
-     
+
    This modules assist in POSIX emulation on non-POSIX systems:
-   
+
    sigaction.c
           signal calls
-          
-   The following source files will not be needed for a
+
+   The    following   source   files   will   not   be   needed   for   a
    single-terminal-type port.
-   
-     alloc_entry.c captoinfo.c clear.c comp_captab.c comp_error.c
-     comp_hash.c comp_main.c comp_parse.c comp_scan.c dump_entry.c
+
+     alloc_entry.c   captoinfo.c   clear.c   comp_captab.c  comp_error.c
+     comp_hash.c   comp_main.c   comp_parse.c  comp_scan.c  dump_entry.c
      infocmp.c parse_entry.c read_entry.c tput.c write_entry.c
-     
-   The following modules will use open()/read()/write()/close()/lseek()
+
+   The  following  modules will use open()/read()/write()/close()/lseek()
    on files, but no other OS calls.
-   
+
    lib_screen.c
           used to read/write screen dumps
-          
+
    lib_trace.c
           used to write trace data to the logfile
-          
+
    Modules that would have to be modified for a port start here:
-   
-   The following modules are `pure curses' but contain assumptions
+
+   The  following  modules  are  `pure  curses'  but  contain assumptions
    inappropriate for a memory-mapped port.
-   
+
    lib_longname.c
           assumes there may be multiple terminals
-          
+
    lib_acs.c
           assumes acs_map as a double indirection
-          
+
    lib_mvcur.c
           assumes cursor moves have variable cost
-          
+
    lib_termcap.c
           assumes there may be multiple terminals
-          
+
    lib_ti.c
           assumes there may be multiple terminals
-          
+
    The following modules use UNIX-specific calls:
-   
+
    lib_doupdate.c
           input checking
-          
+
    lib_getch.c
           read()
-          
+
    lib_initscr.c
           getenv()
-          
+
    lib_newterm.c
    lib_baudrate.c
    lib_kernel.c
           various tty-manipulation and system calls
-          
+
    lib_raw.c
           various tty-manipulation calls
-          
+
    lib_setup.c
           various tty-manipulation calls
-          
+
    lib_restart.c
           various tty-manipulation calls
-          
+
    lib_tstp.c
           signal-manipulation calls
-          
+
    lib_twait.c
           gettimeofday(), select().
      _________________________________________________________________
-   
-   
+
+
     Eric S. Raymond <esr@snark.thyrsus.com>
-    
+
    (Note: This is not the bug address!)
index 70a951dbfe0cbf28c6953d2216f0811a9a6558f0..043b9de5d2ca56c8f6cdf122c0e6795db1ff62fd 100644 (file)
@@ -1,6 +1,34 @@
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
 <!--
-  $Id: Ada95.html,v 1.3 2002/07/13 16:32:37 tom Exp $
+  $Id: Ada95.html,v 1.6 2004/01/18 00:32:47 tom Exp $
+  ****************************************************************************
+  * Copyright (c) 1998-2003,2004 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.                                                           *
+  ****************************************************************************
+  * @Id: clear.1,v 1.3 2000/07/15 23:59:35 china Exp @
 -->
 <HTML>
 <HEAD>
@@ -8,20 +36,8 @@
 </HEAD>
 <BODY>
 <H1>Ada95 Binding for ncurses</H1>
-The ncurses Ada95 binding is &copy; 1996-2000 by 
-<A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">J&uuml;rgen Pfeifer</A>.
-<P>
-                                                                         
-Permission is hereby granted to reproduce and distribute this
-binding by any means and for any fee, whether alone or as part 
-of a larger distribution, in source or in binary form, PROVIDED        
-this notice is included with any such distribution, and is not    
-removed from any of its header files. Mention of ncurses and the
-author of this binding in any applications linked with it is 
-highly appreciated.<BR>                
-                                                                         
-This binding comes AS IS with no warranty, implied or expressed.       
-<P>
+by J&uuml;rgen Pfeifer.
+
 <HR SIZE=3 NOSHADE>
 <H2>General Remarks</H2>
 <UL>
@@ -29,24 +45,24 @@ This binding comes AS IS with no warranty, implied or expressed.
 <LI>The functionality is modeled to be compatible with the ncurses
 package, a clone of the SVr4 curses model.<BR>
 I did the development on an Intel box running the latest stable release of
-<A HREF="http://www.linux.org">Linux</A>, ncurses and the most recent released 
+<A HREF="http://www.linux.org">Linux</A>, ncurses and the most recent released
 <A HREF="http://www.gnat.com">GNU Ada Translator</A>
 gnat versions. For any older versions of ncurses and gnat
 it is not guaranteed to work.</LI>
 <LI>You must have the m4 macroprocessor to build this package.
 If you don't have this program, you can get the FSF version
-<A HREF="ftp://prep.ai.mit.edu/pub/gnu/">here</A>.</LI>
+<A HREF="ftp://ftp.gnu.org/pub/gnu/">here</A>.</LI>
 <LI>Ada programs are supposed to be readable. One of my
 favorite methods to make code readable is to use expressive
 names for the identifiers. You can find a list of a mapping
 of the cryptic curses names to the Ada names in this <A HREF="ada/table.html">table</A>.</LI>
-<LI>This is not a typical one-2-one interface mapping. It is 
-close to one-2-one on the functional level. Each (n)curses function
+<LI>This is not a typical one-to-one interface mapping. It is
+close to one-to-one on the functional level. Each (n)curses function
 has it's counterpart with a more or less similar formal parameter list
-in the binding. It is not one-2-one with respect to the datatypes.
+in the binding. It is not one-to-one with respect to the datatypes.
 I tried to make records out of the flat chtype and similar structures,
 so you don't have to do bit operations to mark an attributed character
-as bold. Just make the boolean member <STRONG>bold</STRONG> of the record 
+as bold. Just make the boolean member <STRONG>bold</STRONG> of the record
 true. The binding also hides the structures like WINDOW, PANEL, MENU, FORM
 etc. ! It's a pure functional API.</LI>
 <LI>I try to do as much error checking as possible and feasible
@@ -58,8 +74,7 @@ error checking style of C.</LI>
 <LI>Support for wide characters is currently not in the binding, as it
 is not really in ncurses at this point in time.</LI>
 </UL>
-<P>
-      
+
 <H2>Limitations</H2>
 <UL>
 <LI>I provide no SCREEN datatype and functions to set a new screen.
@@ -79,7 +94,7 @@ which the various fieldtypes are derived.</LI>
 forms subsystem.</LI>
 <LI>The *_IO packages are currently output only.</LI>
 </UL>
-        
+
 <H2>Hierarchy of packages</H2>
 <UL>
 <LI><A HREF="ada/terminal_interface__ads.htm">Terminal_Interface</A>
@@ -91,11 +106,11 @@ forms subsystem.</LI>
            <LI><A HREF="ada/terminal_interface-curses-menus__ads.htm">Menus</A>
                <UL><LI><A HREF="ada/terminal_interface-curses-menus-menu_user_data__ads.htm">Menu_User_Data</A>
                    <LI><A HREF="ada/terminal_interface-curses-menus-item_user_data__ads.htm">Item_User_Data</A>
-               </UL>    
+               </UL>
            <LI><A HREF="ada/terminal_interface-curses-forms__ads.htm">Forms</A>
                <UL><LI><A HREF="ada/terminal_interface-curses-forms-form_user_data__ads.htm">Form_User_Data</A>
                    <LI><A HREF="ada/terminal_interface-curses-forms-field_user_data__ads.htm">Field_User_Data</A>
-                   <LI><A HREF="ada/terminal_interface-curses-forms-field_types__ads.htm">Field_Types</A>                   
+                   <LI><A HREF="ada/terminal_interface-curses-forms-field_types__ads.htm">Field_Types</A>
                    <UL><LI><A HREF="ada/terminal_interface-curses-forms-field_types-alpha__ads.htm">Alpha</A>
                        <LI><A HREF="ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm">AlphaNumeric</A>
                        <LI><A HREF="ada/terminal_interface-curses-forms-field_types-intfield__ads.htm">IntField</A>
@@ -108,8 +123,8 @@ forms subsystem.</LI>
                        <LI><A HREF="ada/terminal_interface-curses-forms-field_types-user__ads.htm">User</A>
                        <UL><LI><A HREF="ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm">Choice</A>
                         </UL>
-                     </UL>   
-               </UL>   
+                     </UL>
+               </UL>
            <LI><A HREF="ada/terminal_interface-curses-text_io__ads.htm">Text_IO</A>
                <UL><LI><A HREF="ada/terminal_interface-curses-text_io-integer_io__ads.htm">Integer_IO</A>
                    <LI><A HREF="ada/terminal_interface-curses-text_io-float_io__ads.htm">Float_IO</A>
@@ -120,15 +135,15 @@ forms subsystem.</LI>
                    <LI><A HREF="ada/terminal_interface-curses-text_io-complex_io__ads.htm">Complex_IO</A>
                </UL>
          </UL>
-     </UL>        
+     </UL>
 </UL>
 If you want to navigate through the html pages of the package specs, click <A HREF="ada/index.htm">here</A>.
 <H2>Implementation Details</H2>
 <H4>Behind the abstraction</H4>
 All the new types like <STRONG>Window</STRONG>, <STRONG>Panel</STRONG>,
 <STRONG>Menu</STRONG>, <STRONG>Form</STRONG> etc. are just
-opaque representations of the pointers to the corresponding 
-low level (n)curses structures like 
+opaque representations of the pointers to the corresponding
+low level (n)curses structures like
 <STRONG>WINDOW *</STRONG>, <STRONG>PANEL *</STRONG>,
 <STRONG>MENU *</STRONG> or <STRONG>FORM *</STRONG>.
 So you can safely pass them to C routines that expect a pointer
@@ -163,6 +178,6 @@ have two choices to deal with this:
 Most likely you will follow a mixed approach. Some features are easy to simulate,
 others will be hard if not impossible.</LI>
 </UL>
-I'm quite sure I forgot something.<P>
+I'm quite sure I forgot something.
 </BODY>
 </HTML>
index 8fcea4d6019c1b573d42b248a5c5b1c7f3a07db4..b99789411e8521a3ab5f5146d06e287268375aed 100644 (file)
@@ -74,4 +74,4 @@
 <LI><A HREF="../terminal_interface-curses__adb.htm" TARGET="main">terminal_interface-curses.adb</A>
 <LI><A HREF="../terminal_interface-curses__ads.htm" TARGET="main">terminal_interface-curses.ads</A>
 <LI><A HREF="../terminal_interface__ads.htm" TARGET="main">terminal_interface.ads</A>
-</UL></BODY></HTML>
\ No newline at end of file
+</UL></BODY></HTML>
index dd98d806a9c04e64478610e3d690c4f3e03bf055..c59849d810450b8d4fafb7b9cbf1e3e68923316a 100644 (file)
@@ -3,17 +3,6 @@
 <H2>Functions - A</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses-putwin__adb.htm#49_12" TARGET="main">ACS</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#959_16" TARGET="main">Ahead</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__adb.htm#53_16" TARGET="main">Allocate_Arg</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-alpha__ads.htm#42_53" TARGET="main">Alpha</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#42_53" TARGET="main">AlphaNumeric</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#57_12" TARGET="main">ASF</A>
-<LI><A HREF="../terminal_interface-curses-text_io-aux__ads.htm#42_51" TARGET="main">Aux -  terminal_interface-curses-text_io-aux.ads:42</A>
-<LI><A HREF="../terminal_interface-curses-text_io-float_io__adb.htm#47_12" TARGET="main">Aux -  terminal_interface-curses-text_io-float_io.adb:47</A>
-<LI><A HREF="../terminal_interface-curses-text_io-decimal_io__adb.htm#47_12" TARGET="main">Aux -  terminal_interface-curses-text_io-decimal_io.adb:47</A>
-<LI><A HREF="../terminal_interface-curses-text_io-enumeration_io__adb.htm#48_12" TARGET="main">Aux -  terminal_interface-curses-text_io-enumeration_io.adb:48</A>
-<LI><A HREF="../terminal_interface-curses-text_io-fixed_io__adb.htm#47_12" TARGET="main">Aux -  terminal_interface-curses-text_io-fixed_io.adb:47</A>
-<LI><A HREF="../terminal_interface-curses-text_io-integer_io__adb.htm#47_12" TARGET="main">Aux -  terminal_interface-curses-text_io-integer_io.adb:47</A>
-<LI><A HREF="../terminal_interface-curses-text_io-modular_io__adb.htm#47_12" TARGET="main">Aux -  terminal_interface-curses-text_io-modular_io.adb:47</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#958_16" TARGET="main">Ahead</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user__adb.htm#52_16" TARGET="main">Allocate_Arg</A>
+</UL></BODY></HTML>
index cd263b76628ff7865f1f6b323a94ea6e8ed5e9eb..d23957e1db8894c0d5253095142e320176cd959b 100644 (file)
@@ -3,8 +3,8 @@
 <H2>Functions - B</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2080_16" TARGET="main">Baud</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#804_16" TARGET="main">Beeper</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#975_16" TARGET="main">Behind</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#65_16" TARGET="main">Bottompanel</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#2079_16" TARGET="main">Baud</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#803_16" TARGET="main">Beeper</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#974_16" TARGET="main">Behind</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#64_16" TARGET="main">Bottompanel</A>
+</UL></BODY></HTML>
index e5ab81fa756cf64a5867045a4db4ab0d0f5bedbf..949508ddd4160247bd0248702ff935a30852898a 100644 (file)
@@ -3,34 +3,31 @@
 <H2>Functions - C</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2240_16" TARGET="main">Canchangecolor</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#824_16" TARGET="main">Cbreak</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#64_13" TARGET="main">Character_Check</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#44_58" TARGET="main">Choice</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#69_13" TARGET="main">CInt_2_FOS</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#77_13" TARGET="main">CInt_2_FrmOS</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#72_13" TARGET="main">CInt_2_IOS</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#64_13" TARGET="main">CInt_2_MOS</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1018_16" TARGET="main">Clear_Ok</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2239_16" TARGET="main">Canchangecolor</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#823_16" TARGET="main">Cbreak</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#63_13" TARGET="main">Character_Check</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#68_13" TARGET="main">CInt_2_FOS</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#76_13" TARGET="main">CInt_2_FrmOS</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#71_13" TARGET="main">CInt_2_IOS</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#63_13" TARGET="main">CInt_2_MOS</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1017_16" TARGET="main">Clear_Ok</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#98_13" TARGET="main">Col -  terminal_interface-curses-text_io.ads:98</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#99_13" TARGET="main">Col -  terminal_interface-curses-text_io.ads:99</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#100_13" TARGET="main">Col -  terminal_interface-curses-text_io.ads:100</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2257_16" TARGET="main">Colorcontent</A>
-<LI><A HREF="../terminal_interface-curses-text_io-complex_io__ads.htm#45_17" TARGET="main">Complex_Types</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1319_16" TARGET="main">Copywin</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#774_16" TARGET="main">Count -  terminal_interface-curses-forms.adb:774</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#912_16" TARGET="main">Count -  terminal_interface-curses-menus.adb:912</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#49_13" TARGET="main">Create -  terminal_interface-curses-forms-field_types-enumeration-ada.ads:49</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_13" TARGET="main">Create -  terminal_interface-curses-forms-field_types-enumeration.ads:65</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1040_16" TARGET="main">Current_Fld</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#300_16" TARGET="main">Curr_Item</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2470_16" TARGET="main">curses_versionC</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2344_16" TARGET="main">Curs_Set</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2456_16" TARGET="main">C_Assume_Default_Colors</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#150_13" TARGET="main">C_Builtin_Router</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#72_15" TARGET="main">C_E_Array</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#757_16" TARGET="main">C_Fields</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#81_13" TARGET="main">C_Generic_Choice</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#82_13" TARGET="main">C_Generic_Type</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#923_16" TARGET="main">C_Mitems</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2444_16" TARGET="main">C_Use_Default_Colors</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#2256_16" TARGET="main">Colorcontent</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1318_16" TARGET="main">Copywin</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#773_16" TARGET="main">Count -  terminal_interface-curses-forms.adb:773</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#911_16" TARGET="main">Count -  terminal_interface-curses-menus.adb:911</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#48_13" TARGET="main">Create -  terminal_interface-curses-forms-field_types-enumeration-ada.ads:48</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_13" TARGET="main">Create -  terminal_interface-curses-forms-field_types-enumeration.ads:64</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1039_16" TARGET="main">Current_Fld</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#299_16" TARGET="main">Curr_Item</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2469_16" TARGET="main">curses_versionC</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2343_16" TARGET="main">Curs_Set</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2455_16" TARGET="main">C_Assume_Default_Colors</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#149_13" TARGET="main">C_Builtin_Router</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#756_16" TARGET="main">C_Fields</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#80_13" TARGET="main">C_Generic_Choice</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#81_13" TARGET="main">C_Generic_Type</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#922_16" TARGET="main">C_Mitems</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2443_16" TARGET="main">C_Use_Default_Colors</A>
+</UL></BODY></HTML>
index 705bd5c6fea85565f93720261dd048908490abea..fa010bc74b7e884a3ae98ad15d0fa92a0cb59948 100644 (file)
@@ -3,20 +3,19 @@
 <H2>Functions - D</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2028_16" TARGET="main">Defkey</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2276_16" TARGET="main">Def_Prog_Mode</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2278_16" TARGET="main">Def_Shell_Mode</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2060_16" TARGET="main">Delayoutput</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#156_16" TARGET="main">Del_Panel</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#351_16" TARGET="main">Derwin</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#126_16" TARGET="main">Descname -  terminal_interface-curses-menus.adb:126</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#270_16" TARGET="main">Descname -  terminal_interface-curses-menus.adb:270</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#278_16" TARGET="main">Descname -  terminal_interface-curses-menus.adb:278</A>
-<LI><A HREF="../terminal_interface-curses-text_io-decimal_io__adb.htm#48_12" TARGET="main">DIO</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#129_14" TARGET="main">Dispatch_Event</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1111_16" TARGET="main">Do_Update</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#973_16" TARGET="main">Driver</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#374_16" TARGET="main">Dupwin</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#151_16" TARGET="main">Dup_Field</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#559_16" TARGET="main">Dyn_Info</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#2027_16" TARGET="main">Defkey</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2275_16" TARGET="main">Def_Prog_Mode</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2277_16" TARGET="main">Def_Shell_Mode</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2059_16" TARGET="main">Delayoutput</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#155_16" TARGET="main">Del_Panel</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#350_16" TARGET="main">Derwin</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#125_16" TARGET="main">Descname -  terminal_interface-curses-menus.adb:125</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#269_16" TARGET="main">Descname -  terminal_interface-curses-menus.adb:269</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#277_16" TARGET="main">Descname -  terminal_interface-curses-menus.adb:277</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#128_14" TARGET="main">Dispatch_Event</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1110_16" TARGET="main">Do_Update</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#972_16" TARGET="main">Driver</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#373_16" TARGET="main">Dupwin</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#150_16" TARGET="main">Dup_Field</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#558_16" TARGET="main">Dyn_Info</A>
+</UL></BODY></HTML>
index b927c7b4c8c3f88addae29c9a223ece7039fc3cf..933c74ad46105aa3eb1341a2b69f02c150721d1a 100644 (file)
@@ -3,9 +3,7 @@
 <H2>Functions - E</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#862_16" TARGET="main">Echo</A>
-<LI><A HREF="../terminal_interface-curses-text_io-enumeration_io__adb.htm#49_12" TARGET="main">EIO</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#166_16" TARGET="main">Endwin</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#44_53" TARGET="main">Enumeration</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2088_16" TARGET="main">Erasechar</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#861_16" TARGET="main">Echo</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#165_16" TARGET="main">Endwin</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2087_16" TARGET="main">Erasechar</A>
+</UL></BODY></HTML>
index 21e6172a40c6fd4955a3672b11b6d39c3f4dbfe3..5a95433f38364d530b8ba2bf808de0d8a1199b94 100644 (file)
@@ -3,44 +3,40 @@
 <H2>Functions - F</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#468_16" TARGET="main">Field_Back -  terminal_interface-curses-forms.adb:468</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#478_16" TARGET="main">Field_Back -  terminal_interface-curses-forms.adb:478</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#255_16" TARGET="main">Field_Buffer -  terminal_interface-curses-forms.adb:255</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#266_16" TARGET="main">Field_Buffer -  terminal_interface-curses-forms.adb:266</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#57_13" TARGET="main">Field_Check</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#424_16" TARGET="main">Field_Fore -  terminal_interface-curses-forms.adb:424</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#434_16" TARGET="main">Field_Fore -  terminal_interface-curses-forms.adb:434</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#213_16" TARGET="main">Field_Just</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#374_16" TARGET="main">Field_Opts</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#352_16" TARGET="main">Field_Opts_Off</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#349_16" TARGET="main">Field_Opts_On</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#507_16" TARGET="main">Field_Pad</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#293_16" TARGET="main">Field_Status</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_user_data__adb.htm#73_16" TARGET="main">Field_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-text_io-complex_io__adb.htm#46_12" TARGET="main">FIO -  terminal_interface-curses-text_io-complex_io.adb:46</A>
-<LI><A HREF="../terminal_interface-curses-text_io-float_io__adb.htm#48_12" TARGET="main">FIO -  terminal_interface-curses-text_io-float_io.adb:48</A>
-<LI><A HREF="../terminal_interface-curses-text_io-fixed_io__adb.htm#48_12" TARGET="main">FIXIO</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#814_16" TARGET="main">Flash</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#528_16" TARGET="main">Fld_Info</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#467_16" TARGET="main">Field_Back -  terminal_interface-curses-forms.adb:467</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#477_16" TARGET="main">Field_Back -  terminal_interface-curses-forms.adb:477</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#254_16" TARGET="main">Field_Buffer -  terminal_interface-curses-forms.adb:254</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#265_16" TARGET="main">Field_Buffer -  terminal_interface-curses-forms.adb:265</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#56_13" TARGET="main">Field_Check</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#423_16" TARGET="main">Field_Fore -  terminal_interface-curses-forms.adb:423</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#433_16" TARGET="main">Field_Fore -  terminal_interface-curses-forms.adb:433</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#212_16" TARGET="main">Field_Just</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#373_16" TARGET="main">Field_Opts</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#351_16" TARGET="main">Field_Opts_Off</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#348_16" TARGET="main">Field_Opts_On</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#506_16" TARGET="main">Field_Pad</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#292_16" TARGET="main">Field_Status</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_user_data__adb.htm#72_16" TARGET="main">Field_Userptr</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#813_16" TARGET="main">Flash</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#527_16" TARGET="main">Fld_Info</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#65_14" TARGET="main">Flush -  terminal_interface-curses-text_io.ads:65</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#66_14" TARGET="main">Flush -  terminal_interface-curses-text_io.ads:66</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#67_14" TARGET="main">Flush -  terminal_interface-curses-text_io.ads:67</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2070_16" TARGET="main">Flushinp</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#889_16" TARGET="main">Form_Opts</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#867_16" TARGET="main">Form_Opts_Off</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#864_16" TARGET="main">Form_Opts_On</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#84_16" TARGET="main">Form_Request_Name -  terminal_interface-curses-forms.adb:84</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#92_16" TARGET="main">Form_Request_Name -  terminal_interface-curses-forms.adb:92</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#628_16" TARGET="main">Form_Sub</A>
-<LI><A HREF="../terminal_interface-curses-forms-form_user_data__adb.htm#74_16" TARGET="main">Form_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#600_16" TARGET="main">Form_Win</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#65_13" TARGET="main">FOS_2_CInt</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#825_16" TARGET="main">Free -  terminal_interface-curses-forms.adb:825</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#958_16" TARGET="main">Free -  terminal_interface-curses-menus.adb:958</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#123_17" TARGET="main">Freeargs</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#131_16" TARGET="main">Freeitem</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#133_16" TARGET="main">Free_Field</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#121_17" TARGET="main">Free_Type</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#73_13" TARGET="main">FrmOS_2_CInt</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#996_16" TARGET="main">Frm_Driver</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#56_12" TARGET="main">F_Array</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#2069_16" TARGET="main">Flushinp</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#888_16" TARGET="main">Form_Opts</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#866_16" TARGET="main">Form_Opts_Off</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#863_16" TARGET="main">Form_Opts_On</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#83_16" TARGET="main">Form_Request_Name -  terminal_interface-curses-forms.adb:83</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#91_16" TARGET="main">Form_Request_Name -  terminal_interface-curses-forms.adb:91</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#627_16" TARGET="main">Form_Sub</A>
+<LI><A HREF="../terminal_interface-curses-forms-form_user_data__adb.htm#73_16" TARGET="main">Form_Userptr</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#599_16" TARGET="main">Form_Win</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#64_13" TARGET="main">FOS_2_CInt</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#824_16" TARGET="main">Free -  terminal_interface-curses-forms.adb:824</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#957_16" TARGET="main">Free -  terminal_interface-curses-menus.adb:957</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#122_17" TARGET="main">Freeargs</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#130_16" TARGET="main">Freeitem</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#132_16" TARGET="main">Free_Field</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#120_17" TARGET="main">Free_Type</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#72_13" TARGET="main">FrmOS_2_CInt</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#995_16" TARGET="main">Frm_Driver</A>
+</UL></BODY></HTML>
index 4b6367be3adaeec2fbbef62d91905e7e90312cec..1a57040da823b24ae3d0555658c3255526ea62f6 100644 (file)
@@ -3,30 +3,30 @@
 <H2>Functions - G</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#91_13" TARGET="main">Generic_Char_Check</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#84_13" TARGET="main">Generic_Field_Check</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#83_13" TARGET="main">Generic_Next</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#90_13" TARGET="main">Generic_Prev</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#69_16" TARGET="main">Getmouse</A>
-<LI><A HREF="../terminal_interface-curses-putwin__adb.htm#66_16" TARGET="main">getwin</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#62_13" TARGET="main">Get_Arg</A>
-<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#60_13" TARGET="main">Get_Entry</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1084_16" TARGET="main">Get_Fieldindex</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#59_13" TARGET="main">Get_Fieldtype</A>
-<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#64_13" TARGET="main">Get_Flag -  terminal_interface-curses-termcap.ads:64</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#65_13" TARGET="main">Get_Flag -  terminal_interface-curses-terminfo.ads:65</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#93_13" TARGET="main">Get_Flag -  terminal_interface-curses.adb:93</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#340_16" TARGET="main">Get_Itemindex</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#532_16" TARGET="main">Get_Menu_Mark -  terminal_interface-curses-menus.adb:532</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#540_16" TARGET="main">Get_Menu_Mark -  terminal_interface-curses-menus.adb:540</A>
-<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#68_14" TARGET="main">Get_Number -  terminal_interface-curses-termcap.ads:68</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#69_13" TARGET="main">Get_Number -  terminal_interface-curses-terminfo.ads:69</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1070_16" TARGET="main">Get_Page</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#758_16" TARGET="main">Get_Pattern</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#713_16" TARGET="main">Get_Spacing</A>
-<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#74_14" TARGET="main">Get_String -  terminal_interface-curses-termcap.ads:74</A>
-<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#77_13" TARGET="main">Get_String -  terminal_interface-curses-termcap.ads:77</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#58_14" TARGET="main">Get_String -  terminal_interface-curses-terminfo.ads:58</A>
-<LI><A HREF="../terminal_interface-curses-putwin__ads.htm#49_13" TARGET="main">Get_Window -  terminal_interface-curses-putwin.ads:49</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#63_13" TARGET="main">Get_Window -  terminal_interface-curses-text_io.ads:63</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#90_13" TARGET="main">Generic_Char_Check</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#83_13" TARGET="main">Generic_Field_Check</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#82_13" TARGET="main">Generic_Next</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#89_13" TARGET="main">Generic_Prev</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#68_16" TARGET="main">Getmouse</A>
+<LI><A HREF="../terminal_interface-curses-putwin__adb.htm#65_16" TARGET="main">getwin</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#61_13" TARGET="main">Get_Arg</A>
+<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#59_13" TARGET="main">Get_Entry</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1083_16" TARGET="main">Get_Fieldindex</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#58_13" TARGET="main">Get_Fieldtype</A>
+<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#63_13" TARGET="main">Get_Flag -  terminal_interface-curses-termcap.ads:63</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#64_13" TARGET="main">Get_Flag -  terminal_interface-curses-terminfo.ads:64</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#92_13" TARGET="main">Get_Flag -  terminal_interface-curses.adb:92</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#339_16" TARGET="main">Get_Itemindex</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#531_16" TARGET="main">Get_Menu_Mark -  terminal_interface-curses-menus.adb:531</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#539_16" TARGET="main">Get_Menu_Mark -  terminal_interface-curses-menus.adb:539</A>
+<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#67_14" TARGET="main">Get_Number -  terminal_interface-curses-termcap.ads:67</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#68_13" TARGET="main">Get_Number -  terminal_interface-curses-terminfo.ads:68</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1069_16" TARGET="main">Get_Page</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#757_16" TARGET="main">Get_Pattern</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#712_16" TARGET="main">Get_Spacing</A>
+<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#73_14" TARGET="main">Get_String -  terminal_interface-curses-termcap.ads:73</A>
+<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#76_13" TARGET="main">Get_String -  terminal_interface-curses-termcap.ads:76</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#57_14" TARGET="main">Get_String -  terminal_interface-curses-terminfo.ads:57</A>
+<LI><A HREF="../terminal_interface-curses-putwin__ads.htm#48_13" TARGET="main">Get_Window -  terminal_interface-curses-putwin.ads:48</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#62_13" TARGET="main">Get_Window -  terminal_interface-curses-text_io.ads:62</A>
+</UL></BODY></HTML>
index 8dd6ecf9b34f09359ed53dd097f9e3e8d3e14441..c3aa4789457ea1538b561b07f87b01f25a0d084b 100644 (file)
@@ -3,11 +3,11 @@
 <H2>Functions - H</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#910_16" TARGET="main">Halfdelay</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2211_16" TARGET="main">Hascolors</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#600_16" TARGET="main">Haskey</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2104_16" TARGET="main">Has_Ic</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2116_16" TARGET="main">Has_Il</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#61_13" TARGET="main">Has_String</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#95_16" TARGET="main">Hidepanel</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#909_16" TARGET="main">Halfdelay</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2210_16" TARGET="main">Hascolors</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#599_16" TARGET="main">Haskey</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2103_16" TARGET="main">Has_Ic</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2115_16" TARGET="main">Has_Il</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#60_13" TARGET="main">Has_String</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#94_16" TARGET="main">Hidepanel</A>
+</UL></BODY></HTML>
index 1ed76f9bbad910506fba1783fe5ed0c6f299bd13..4968d3c2bf9f04cfd5fa7b3fda847a219923cc5c 100644 (file)
@@ -3,31 +3,26 @@
 <H2>Functions - I</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses-putwin__adb.htm#48_12" TARGET="main">ICS</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1042_16" TARGET="main">IDC_Ok</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1030_16" TARGET="main">IDL_Ok</A>
-<LI><A HREF="../terminal_interface-curses-text_io-integer_io__adb.htm#48_12" TARGET="main">IIO</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1066_16" TARGET="main">Immedok</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2226_16" TARGET="main">Initcolor</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2172_16" TARGET="main">Initpair</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#153_16" TARGET="main">Initscr</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-intfield__ads.htm#42_53" TARGET="main">IntField</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#922_16" TARGET="main">Intrflush</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#68_13" TARGET="main">IOS_2_CInt</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#42_53" TARGET="main">IPV4_Address</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#176_16" TARGET="main">Isendwin</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#51_13" TARGET="main">Is_MinusOne_Pointer</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1119_16" TARGET="main">Is_New</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#128_16" TARGET="main">Itemname -  terminal_interface-curses-menus.adb:128</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#253_16" TARGET="main">Itemname -  terminal_interface-curses-menus.adb:253</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#261_16" TARGET="main">Itemname -  terminal_interface-curses-menus.adb:261</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#860_16" TARGET="main">Item_Init</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#234_16" TARGET="main">Item_Opts</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#214_16" TARGET="main">Item_Opts_Off</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#211_16" TARGET="main">Item_Opts_On</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#868_16" TARGET="main">Item_Term</A>
-<LI><A HREF="../terminal_interface-curses-menus-item_user_data__adb.htm#65_16" TARGET="main">Item_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#168_16" TARGET="main">Item_Val</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#181_16" TARGET="main">Item_Vis</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#54_12" TARGET="main">I_Array</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#1041_16" TARGET="main">IDC_Ok</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1029_16" TARGET="main">IDL_Ok</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1065_16" TARGET="main">Immedok</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2225_16" TARGET="main">Initcolor</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2171_16" TARGET="main">Initpair</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#152_16" TARGET="main">Initscr</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#921_16" TARGET="main">Intrflush</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#67_13" TARGET="main">IOS_2_CInt</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#175_16" TARGET="main">Isendwin</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#50_13" TARGET="main">Is_MinusOne_Pointer</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1118_16" TARGET="main">Is_New</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#127_16" TARGET="main">Itemname -  terminal_interface-curses-menus.adb:127</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#252_16" TARGET="main">Itemname -  terminal_interface-curses-menus.adb:252</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#260_16" TARGET="main">Itemname -  terminal_interface-curses-menus.adb:260</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#859_16" TARGET="main">Item_Init</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#233_16" TARGET="main">Item_Opts</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#213_16" TARGET="main">Item_Opts_Off</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#210_16" TARGET="main">Item_Opts_On</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#867_16" TARGET="main">Item_Term</A>
+<LI><A HREF="../terminal_interface-curses-menus-item_user_data__adb.htm#64_16" TARGET="main">Item_Userptr</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#167_16" TARGET="main">Item_Val</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#180_16" TARGET="main">Item_Vis</A>
+</UL></BODY></HTML>
index 0e8e47f2057bbdf3a0db2340e1db5f632cca3ac4..ad419ef3a2484f4637cb799fea5f75846ef05a0d 100644 (file)
@@ -3,8 +3,8 @@
 <H2>Functions - K</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#117_16" TARGET="main">Keyname</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2015_16" TARGET="main">Keyok</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#893_16" TARGET="main">Keypad</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2096_16" TARGET="main">Killchar</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#116_16" TARGET="main">Keyname</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2014_16" TARGET="main">Keyok</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#892_16" TARGET="main">Keypad</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2095_16" TARGET="main">Killchar</A>
+</UL></BODY></HTML>
index 4bf37daec5e70eb5da37107d4735cca4d076acf8..b97a815e9d4c7fa39d820a22175b0719379effac 100644 (file)
@@ -3,12 +3,12 @@
 <H2>Functions - L</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1054_16" TARGET="main">Leave_Ok</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1053_16" TARGET="main">Leave_Ok</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#101_13" TARGET="main">Line -  terminal_interface-curses-text_io.ads:101</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#102_13" TARGET="main">Line -  terminal_interface-curses-text_io.ads:102</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#103_13" TARGET="main">Line -  terminal_interface-curses-text_io.ads:103</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#77_13" TARGET="main">Line_Length -  terminal_interface-curses-text_io.ads:77</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#78_13" TARGET="main">Line_Length -  terminal_interface-curses-text_io.ads:78</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#79_13" TARGET="main">Line_Length -  terminal_interface-curses-text_io.ads:79</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#172_16" TARGET="main">Lnk_Field</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2138_16" TARGET="main">Longname -  terminal_interface-curses.adb:2138</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2146_16" TARGET="main">Longname -  terminal_interface-curses.adb:2146</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#171_16" TARGET="main">Lnk_Field</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2137_16" TARGET="main">Longname -  terminal_interface-curses.adb:2137</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2145_16" TARGET="main">Longname -  terminal_interface-curses.adb:2145</A>
+</UL></BODY></HTML>
index dda915480f376af88bf12af1c3b401b904be5e22..37297ae05f4fbf30f1744dc72b75dd49d10a9b74 100644 (file)
@@ -3,42 +3,41 @@
 <H2>Functions - M</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#74_13" TARGET="main">Make_Enumeration_Type</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#608_16" TARGET="main">Menu_Back -  terminal_interface-curses-menus.adb:608</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#618_16" TARGET="main">Menu_Back -  terminal_interface-curses-menus.adb:618</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#787_16" TARGET="main">Menu_Fmt</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#569_16" TARGET="main">Menu_Fore -  terminal_interface-curses-menus.adb:569</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#579_16" TARGET="main">Menu_Fore -  terminal_interface-curses-menus.adb:579</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#647_16" TARGET="main">Menu_Grey -  terminal_interface-curses-menus.adb:647</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#657_16" TARGET="main">Menu_Grey -  terminal_interface-curses-menus.adb:657</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#876_16" TARGET="main">Menu_Init</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#414_16" TARGET="main">Menu_Opts</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#394_16" TARGET="main">Menu_Opts_Off</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#391_16" TARGET="main">Menu_Opts_On</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#682_16" TARGET="main">Menu_Pad</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#470_16" TARGET="main">Menu_Sub</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#884_16" TARGET="main">Menu_Term</A>
-<LI><A HREF="../terminal_interface-curses-menus-menu_user_data__adb.htm#64_16" TARGET="main">Menu_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#446_16" TARGET="main">Menu_Win</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#882_16" TARGET="main">Meta</A>
-<LI><A HREF="../terminal_interface-curses-text_io-modular_io__adb.htm#48_12" TARGET="main">MIO</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#113_16" TARGET="main">MMask</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#60_13" TARGET="main">MOS_2_CInt</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#209_16" TARGET="main">Mouseinterval</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#55_16" TARGET="main">Mouse_Avail</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#786_16" TARGET="main">Move -  terminal_interface-curses-forms.adb:786</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#132_16" TARGET="main">Move -  terminal_interface-curses-panels.adb:132</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#403_16" TARGET="main">Mvderwin</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#229_16" TARGET="main">mvwaddch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1609_16" TARGET="main">Mvwdelch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#389_16" TARGET="main">Mvwin</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1633_16" TARGET="main">Mvwinch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1658_16" TARGET="main">Mvwinsch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1697_16" TARGET="main">Mvwinsnstr</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#916_16" TARGET="main">M_Post -  terminal_interface-curses-forms.adb:916</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#354_16" TARGET="main">M_Post -  terminal_interface-curses-menus.adb:354</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#643_16" TARGET="main">M_Scale -  terminal_interface-curses-forms.adb:643</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#483_16" TARGET="main">M_Scale -  terminal_interface-curses-menus.adb:483</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#918_16" TARGET="main">M_Unpost -  terminal_interface-curses-forms.adb:918</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#356_16" TARGET="main">M_Unpost -  terminal_interface-curses-menus.adb:356</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#73_13" TARGET="main">Make_Enumeration_Type</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#607_16" TARGET="main">Menu_Back -  terminal_interface-curses-menus.adb:607</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#617_16" TARGET="main">Menu_Back -  terminal_interface-curses-menus.adb:617</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#786_16" TARGET="main">Menu_Fmt</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#568_16" TARGET="main">Menu_Fore -  terminal_interface-curses-menus.adb:568</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#578_16" TARGET="main">Menu_Fore -  terminal_interface-curses-menus.adb:578</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#646_16" TARGET="main">Menu_Grey -  terminal_interface-curses-menus.adb:646</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#656_16" TARGET="main">Menu_Grey -  terminal_interface-curses-menus.adb:656</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#875_16" TARGET="main">Menu_Init</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#413_16" TARGET="main">Menu_Opts</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#393_16" TARGET="main">Menu_Opts_Off</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#390_16" TARGET="main">Menu_Opts_On</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#681_16" TARGET="main">Menu_Pad</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#469_16" TARGET="main">Menu_Sub</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#883_16" TARGET="main">Menu_Term</A>
+<LI><A HREF="../terminal_interface-curses-menus-menu_user_data__adb.htm#63_16" TARGET="main">Menu_Userptr</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#445_16" TARGET="main">Menu_Win</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#881_16" TARGET="main">Meta</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#112_16" TARGET="main">MMask</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#59_13" TARGET="main">MOS_2_CInt</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#208_16" TARGET="main">Mouseinterval</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#54_16" TARGET="main">Mouse_Avail</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#785_16" TARGET="main">Move -  terminal_interface-curses-forms.adb:785</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#131_16" TARGET="main">Move -  terminal_interface-curses-panels.adb:131</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#402_16" TARGET="main">Mvderwin</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#228_16" TARGET="main">mvwaddch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1608_16" TARGET="main">Mvwdelch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#388_16" TARGET="main">Mvwin</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1632_16" TARGET="main">Mvwinch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1657_16" TARGET="main">Mvwinsch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1696_16" TARGET="main">Mvwinsnstr</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#915_16" TARGET="main">M_Post -  terminal_interface-curses-forms.adb:915</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#353_16" TARGET="main">M_Post -  terminal_interface-curses-menus.adb:353</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#642_16" TARGET="main">M_Scale -  terminal_interface-curses-forms.adb:642</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#482_16" TARGET="main">M_Scale -  terminal_interface-curses-menus.adb:482</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#917_16" TARGET="main">M_Unpost -  terminal_interface-curses-forms.adb:917</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#355_16" TARGET="main">M_Unpost -  terminal_interface-curses-menus.adb:355</A>
+</UL></BODY></HTML>
index ca3036390248bb08b34c32beb33d281e801d6134..10345d6ae0c7c1356c3d8e02b0e090f5ffc5f874 100644 (file)
@@ -3,26 +3,25 @@
 <H2>Functions - N</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2357_16" TARGET="main">Napms</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#116_16" TARGET="main">Newfield</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#804_16" TARGET="main">NewForm</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#98_16" TARGET="main">Newitem</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#939_16" TARGET="main">Newmenu</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1456_16" TARGET="main">Newpad</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#51_16" TARGET="main">Newpanel</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#287_16" TARGET="main">Newwin</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2356_16" TARGET="main">Napms</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#115_16" TARGET="main">Newfield</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#803_16" TARGET="main">NewForm</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#97_16" TARGET="main">Newitem</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#938_16" TARGET="main">Newmenu</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1455_16" TARGET="main">Newpad</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#50_16" TARGET="main">Newpanel</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#286_16" TARGET="main">Newwin</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#86_14" TARGET="main">New_Line -  terminal_interface-curses-text_io.ads:86</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#87_14" TARGET="main">New_Line -  terminal_interface-curses-text_io.ads:87</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#88_14" TARGET="main">New_Line -  terminal_interface-curses-text_io.ads:88</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#89_14" TARGET="main">New_Page -  terminal_interface-curses-text_io.ads:89</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#90_14" TARGET="main">New_Page -  terminal_interface-curses-text_io.ads:90</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#91_14" TARGET="main">New_Page -  terminal_interface-curses-text_io.ads:91</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#61_13" TARGET="main">Next</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#997_16" TARGET="main">NL</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#826_16" TARGET="main">NoCbreak</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#950_16" TARGET="main">Nodelay</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#864_16" TARGET="main">NoEcho</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#999_16" TARGET="main">NoNL</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#845_16" TARGET="main">NoRaw</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#985_16" TARGET="main">Notimeout</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#936_17" TARGET="main">No_Qiflush</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-numeric__ads.htm#42_53" TARGET="main">Numeric</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#60_13" TARGET="main">Next</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#996_16" TARGET="main">NL</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#825_16" TARGET="main">NoCbreak</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#949_16" TARGET="main">Nodelay</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#863_16" TARGET="main">NoEcho</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#998_16" TARGET="main">NoNL</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#844_16" TARGET="main">NoRaw</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#984_16" TARGET="main">Notimeout</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#935_17" TARGET="main">No_Qiflush</A>
+</UL></BODY></HTML>
index ec2e133836f2c7b7fbd99a679e87c0bd6446803a..a4e4d3b7cd1d40b1c90c9bcbc84ed0126464e9c6 100644 (file)
@@ -3,7 +3,7 @@
 <H2>Functions - O</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses-text_io-aux__adb.htm#59_17" TARGET="main">Output</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1360_16" TARGET="main">Overlay</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1348_16" TARGET="main">Overwrite</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses-text_io-aux__adb.htm#58_17" TARGET="main">Output</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1359_16" TARGET="main">Overlay</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1347_16" TARGET="main">Overwrite</A>
+</UL></BODY></HTML>
index c0f4120da90bd7779536ae14a59250bed36995d8..2e5fc912b1b522379c293b85e70bf311b4ddb22d 100644 (file)
@@ -3,42 +3,41 @@
 <H2>Functions - P</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#80_13" TARGET="main">Page_Length -  terminal_interface-curses-text_io.ads:80</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#81_13" TARGET="main">Page_Length -  terminal_interface-curses-text_io.ads:81</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#82_13" TARGET="main">Page_Length -  terminal_interface-curses-text_io.ads:82</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2194_16" TARGET="main">Paircontent</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#144_16" TARGET="main">Panel_Hidden</A>
-<LI><A HREF="../terminal_interface-curses-panels-user_data__adb.htm#66_16" TARGET="main">Panel_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#105_16" TARGET="main">Panel_Win</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1560_16" TARGET="main">Pechochar</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1535_16" TARGET="main">Pnoutrefresh</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#941_16" TARGET="main">Pos_Form_Cursor</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#499_16" TARGET="main">Pos_Menu_Cursor</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1505_16" TARGET="main">Prefresh</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#68_13" TARGET="main">Previous</A>
-<LI><A HREF="../terminal_interface-curses-text_io-complex_io__ads.htm#55_14" TARGET="main">Put -  terminal_interface-curses-text_io-complex_io.ads:55</A>
-<LI><A HREF="../terminal_interface-curses-text_io-complex_io__ads.htm#62_14" TARGET="main">Put -  terminal_interface-curses-text_io-complex_io.ads:62</A>
-<LI><A HREF="../terminal_interface-curses-text_io-decimal_io__ads.htm#51_14" TARGET="main">Put -  terminal_interface-curses-text_io-decimal_io.ads:51</A>
-<LI><A HREF="../terminal_interface-curses-text_io-decimal_io__ads.htm#58_14" TARGET="main">Put -  terminal_interface-curses-text_io-decimal_io.ads:58</A>
-<LI><A HREF="../terminal_interface-curses-text_io-enumeration_io__ads.htm#50_14" TARGET="main">Put -  terminal_interface-curses-text_io-enumeration_io.ads:50</A>
-<LI><A HREF="../terminal_interface-curses-text_io-enumeration_io__ads.htm#56_14" TARGET="main">Put -  terminal_interface-curses-text_io-enumeration_io.ads:56</A>
-<LI><A HREF="../terminal_interface-curses-text_io-fixed_io__ads.htm#51_14" TARGET="main">Put -  terminal_interface-curses-text_io-fixed_io.ads:51</A>
-<LI><A HREF="../terminal_interface-curses-text_io-fixed_io__ads.htm#58_14" TARGET="main">Put -  terminal_interface-curses-text_io-fixed_io.ads:58</A>
-<LI><A HREF="../terminal_interface-curses-text_io-float_io__ads.htm#51_14" TARGET="main">Put -  terminal_interface-curses-text_io-float_io.ads:51</A>
-<LI><A HREF="../terminal_interface-curses-text_io-float_io__ads.htm#58_14" TARGET="main">Put -  terminal_interface-curses-text_io-float_io.ads:58</A>
-<LI><A HREF="../terminal_interface-curses-text_io-integer_io__ads.htm#50_14" TARGET="main">Put -  terminal_interface-curses-text_io-integer_io.ads:50</A>
-<LI><A HREF="../terminal_interface-curses-text_io-integer_io__ads.htm#56_14" TARGET="main">Put -  terminal_interface-curses-text_io-integer_io.ads:56</A>
-<LI><A HREF="../terminal_interface-curses-text_io-modular_io__ads.htm#50_14" TARGET="main">Put -  terminal_interface-curses-text_io-modular_io.ads:50</A>
-<LI><A HREF="../terminal_interface-curses-text_io-modular_io__ads.htm#56_14" TARGET="main">Put -  terminal_interface-curses-text_io-modular_io.ads:56</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2193_16" TARGET="main">Paircontent</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#143_16" TARGET="main">Panel_Hidden</A>
+<LI><A HREF="../terminal_interface-curses-panels-user_data__adb.htm#65_16" TARGET="main">Panel_Userptr</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#104_16" TARGET="main">Panel_Win</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1559_16" TARGET="main">Pechochar</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1534_16" TARGET="main">Pnoutrefresh</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#940_16" TARGET="main">Pos_Form_Cursor</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#498_16" TARGET="main">Pos_Menu_Cursor</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1504_16" TARGET="main">Prefresh</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#67_13" TARGET="main">Previous</A>
+<LI><A HREF="../terminal_interface-curses-text_io-complex_io__ads.htm#54_14" TARGET="main">Put -  terminal_interface-curses-text_io-complex_io.ads:54</A>
+<LI><A HREF="../terminal_interface-curses-text_io-complex_io__ads.htm#61_14" TARGET="main">Put -  terminal_interface-curses-text_io-complex_io.ads:61</A>
+<LI><A HREF="../terminal_interface-curses-text_io-decimal_io__ads.htm#50_14" TARGET="main">Put -  terminal_interface-curses-text_io-decimal_io.ads:50</A>
+<LI><A HREF="../terminal_interface-curses-text_io-decimal_io__ads.htm#57_14" TARGET="main">Put -  terminal_interface-curses-text_io-decimal_io.ads:57</A>
+<LI><A HREF="../terminal_interface-curses-text_io-enumeration_io__ads.htm#49_14" TARGET="main">Put -  terminal_interface-curses-text_io-enumeration_io.ads:49</A>
+<LI><A HREF="../terminal_interface-curses-text_io-enumeration_io__ads.htm#55_14" TARGET="main">Put -  terminal_interface-curses-text_io-enumeration_io.ads:55</A>
+<LI><A HREF="../terminal_interface-curses-text_io-fixed_io__ads.htm#50_14" TARGET="main">Put -  terminal_interface-curses-text_io-fixed_io.ads:50</A>
+<LI><A HREF="../terminal_interface-curses-text_io-fixed_io__ads.htm#57_14" TARGET="main">Put -  terminal_interface-curses-text_io-fixed_io.ads:57</A>
+<LI><A HREF="../terminal_interface-curses-text_io-float_io__ads.htm#50_14" TARGET="main">Put -  terminal_interface-curses-text_io-float_io.ads:50</A>
+<LI><A HREF="../terminal_interface-curses-text_io-float_io__ads.htm#57_14" TARGET="main">Put -  terminal_interface-curses-text_io-float_io.ads:57</A>
+<LI><A HREF="../terminal_interface-curses-text_io-integer_io__ads.htm#49_14" TARGET="main">Put -  terminal_interface-curses-text_io-integer_io.ads:49</A>
+<LI><A HREF="../terminal_interface-curses-text_io-integer_io__ads.htm#55_14" TARGET="main">Put -  terminal_interface-curses-text_io-integer_io.ads:55</A>
+<LI><A HREF="../terminal_interface-curses-text_io-modular_io__ads.htm#49_14" TARGET="main">Put -  terminal_interface-curses-text_io-modular_io.ads:49</A>
+<LI><A HREF="../terminal_interface-curses-text_io-modular_io__ads.htm#55_14" TARGET="main">Put -  terminal_interface-curses-text_io-modular_io.ads:55</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#108_14" TARGET="main">Put -  terminal_interface-curses-text_io.ads:108</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#109_14" TARGET="main">Put -  terminal_interface-curses-text_io.ads:109</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#110_14" TARGET="main">Put -  terminal_interface-curses-text_io.ads:110</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#115_14" TARGET="main">Put -  terminal_interface-curses-text_io.ads:115</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#116_14" TARGET="main">Put -  terminal_interface-curses-text_io.ads:116</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#117_14" TARGET="main">Put -  terminal_interface-curses-text_io.ads:117</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#144_16" TARGET="main">putp</A>
-<LI><A HREF="../terminal_interface-curses-putwin__ads.htm#44_35" TARGET="main">PutWin</A>
-<LI><A HREF="../terminal_interface-curses-putwin__adb.htm#54_16" TARGET="main">putwin</A>
-<LI><A HREF="../terminal_interface-curses-text_io-aux__ads.htm#48_14" TARGET="main">Put_Buf</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#119_14" TARGET="main">Put_Line -  terminal_interface-curses-text_io.ads:119</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#123_14" TARGET="main">Put_Line -  terminal_interface-curses-text_io.ads:123</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#77_14" TARGET="main">Put_String</A>
-<LI><A HREF="../terminal_interface-curses-putwin__ads.htm#46_14" TARGET="main">Put_Window</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#143_16" TARGET="main">putp</A>
+<LI><A HREF="../terminal_interface-curses-putwin__adb.htm#53_16" TARGET="main">putwin</A>
+<LI><A HREF="../terminal_interface-curses-text_io-aux__ads.htm#47_14" TARGET="main">Put_Buf</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#118_14" TARGET="main">Put_Line -  terminal_interface-curses-text_io.ads:118</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#122_14" TARGET="main">Put_Line -  terminal_interface-curses-text_io.ads:122</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#76_14" TARGET="main">Put_String</A>
+<LI><A HREF="../terminal_interface-curses-putwin__ads.htm#45_14" TARGET="main">Put_Window</A>
+</UL></BODY></HTML>
index ae7d42c701a6643e1c0b758929acd2b1e1084d50..8164ad3e9e015a8ae7fb12286a5e1d95e0f60d5e 100644 (file)
@@ -3,5 +3,5 @@
 <H2>Functions - Q</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#934_17" TARGET="main">Qiflush</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#933_17" TARGET="main">Qiflush</A>
+</UL></BODY></HTML>
index fd066825f630533c557bc0888efda281302c311d..eb6817b1e4b6f819716a12ffd4a995ef57b4d305 100644 (file)
@@ -3,18 +3,17 @@
 <H2>Functions - R</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#843_16" TARGET="main">Raw</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1142_16" TARGET="main">Redrawwin</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-regexp__ads.htm#42_53" TARGET="main">RegExp</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#78_14" TARGET="main">Release -  terminal_interface-curses-forms-field_types-enumeration.ads:78</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1134_17" TARGET="main">Release -  terminal_interface-curses-forms.adb:1134</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#995_17" TARGET="main">Release -  terminal_interface-curses-menus.adb:995</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__adb.htm#53_17" TARGET="main">Release_String</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#119_16" TARGET="main">Replace_Pan</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#80_16" TARGET="main">Request_Name -  terminal_interface-curses-menus.adb:80</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#88_16" TARGET="main">Request_Name -  terminal_interface-curses-menus.adb:88</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2322_16" TARGET="main">Resetty</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2294_16" TARGET="main">Reset_Prog_Mode</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2296_16" TARGET="main">Reset_Shell_Mode</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2333_16" TARGET="main">Ripoffline</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#842_16" TARGET="main">Raw</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1141_16" TARGET="main">Redrawwin</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#77_14" TARGET="main">Release -  terminal_interface-curses-forms-field_types-enumeration.ads:77</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1133_17" TARGET="main">Release -  terminal_interface-curses-forms.adb:1133</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#994_17" TARGET="main">Release -  terminal_interface-curses-menus.adb:994</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__adb.htm#52_17" TARGET="main">Release_String</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#118_16" TARGET="main">Replace_Pan</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#79_16" TARGET="main">Request_Name -  terminal_interface-curses-menus.adb:79</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#87_16" TARGET="main">Request_Name -  terminal_interface-curses-menus.adb:87</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2321_16" TARGET="main">Resetty</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2293_16" TARGET="main">Reset_Prog_Mode</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2295_16" TARGET="main">Reset_Shell_Mode</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2332_16" TARGET="main">Ripoffline</A>
+</UL></BODY></HTML>
index b9850c9daf85e7e38e2522e7c5e9f30863c2a5c8..9e68099fd2630b314d1cf78a65adb4c8b1b978cd 100644 (file)
@@ -3,95 +3,95 @@
 <H2>Functions - S</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2312_16" TARGET="main">Savetty</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1078_16" TARGET="main">Scrollok</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2494_16" TARGET="main">scr_dump</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2520_16" TARGET="main">scr_init</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2507_16" TARGET="main">scr_restore</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2533_16" TARGET="main">scr_set</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2311_16" TARGET="main">Savetty</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1077_16" TARGET="main">Scrollok</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2493_16" TARGET="main">scr_dump</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2519_16" TARGET="main">scr_init</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2506_16" TARGET="main">scr_restore</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2532_16" TARGET="main">scr_set</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#92_14" TARGET="main">Set_Col -  terminal_interface-curses-text_io.ads:92</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#93_14" TARGET="main">Set_Col -  terminal_interface-curses-text_io.ads:93</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#94_14" TARGET="main">Set_Col -  terminal_interface-curses-text_io.ads:94</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1026_16" TARGET="main">Set_Current_Fld</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#287_16" TARGET="main">Set_Curr_Item</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#448_16" TARGET="main">Set_Field_Back</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#404_16" TARGET="main">Set_Field_Fore</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#665_16" TARGET="main">Set_Field_Init</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#196_16" TARGET="main">Set_Field_Just</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#310_16" TARGET="main">Set_Field_Max</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#330_16" TARGET="main">Set_Field_Opts</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#490_16" TARGET="main">Set_Field_Pad</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#681_16" TARGET="main">Set_Field_Term</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-alpha__ads.htm#50_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-alpha.ads:50</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#51_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-alphanumeric.ads:51</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-enumeration.ads:85</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-intfield__ads.htm#52_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-intfield.ads:52</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#48_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-ipv4_address.ads:48</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-numeric__ads.htm#52_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-numeric.ads:52</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-regexp__ads.htm#52_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-regexp.ads:52</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#71_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-user.ads:71</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_user_data__adb.htm#58_16" TARGET="main">Set_Field_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#231_16" TARGET="main">Set_Fld_Buffer</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#278_16" TARGET="main">Set_Fld_Status</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-alpha__adb.htm#55_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-alpha.adb:55</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#55_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-alphanumeric.adb:55</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__adb.htm#98_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-enumeration.adb:98</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-intfield__adb.htm#55_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-intfield.adb:55</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#55_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-ipv4_address.adb:55</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-numeric__adb.htm#57_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-numeric.adb:57</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__adb.htm#56_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-user.adb:56</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#152_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types.adb:152</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#697_16" TARGET="main">Set_Form_Init</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#845_16" TARGET="main">Set_Form_Opts</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#613_16" TARGET="main">Set_Form_Sub</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#713_16" TARGET="main">Set_Form_Term</A>
-<LI><A HREF="../terminal_interface-curses-forms-form_user_data__adb.htm#59_16" TARGET="main">Set_Form_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#585_16" TARGET="main">Set_Form_Win</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#733_16" TARGET="main">Set_Frm_Fields</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1056_16" TARGET="main">Set_Frm_Page</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-regexp__adb.htm#55_16" TARGET="main">Set_Ftyp</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#893_16" TARGET="main">Set_Items</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#805_16" TARGET="main">Set_Item_Init</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#194_16" TARGET="main">Set_Item_Opts</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#819_16" TARGET="main">Set_Item_Term</A>
-<LI><A HREF="../terminal_interface-curses-menus-item_user_data__adb.htm#52_16" TARGET="main">Set_Item_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#155_16" TARGET="main">Set_Item_Val</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1025_16" TARGET="main">Set_Current_Fld</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#286_16" TARGET="main">Set_Curr_Item</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#447_16" TARGET="main">Set_Field_Back</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#403_16" TARGET="main">Set_Field_Fore</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#664_16" TARGET="main">Set_Field_Init</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#195_16" TARGET="main">Set_Field_Just</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#309_16" TARGET="main">Set_Field_Max</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#329_16" TARGET="main">Set_Field_Opts</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#489_16" TARGET="main">Set_Field_Pad</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#680_16" TARGET="main">Set_Field_Term</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-alpha__ads.htm#49_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-alpha.ads:49</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#50_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-alphanumeric.ads:50</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#84_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-enumeration.ads:84</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-intfield__ads.htm#51_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-intfield.ads:51</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#47_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-ipv4_address.ads:47</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-numeric__ads.htm#51_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-numeric.ads:51</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-regexp__ads.htm#51_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-regexp.ads:51</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#70_14" TARGET="main">Set_Field_Type -  terminal_interface-curses-forms-field_types-user.ads:70</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_user_data__adb.htm#57_16" TARGET="main">Set_Field_Userptr</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#230_16" TARGET="main">Set_Fld_Buffer</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#277_16" TARGET="main">Set_Fld_Status</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-alpha__adb.htm#54_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-alpha.adb:54</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#54_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-alphanumeric.adb:54</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__adb.htm#97_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-enumeration.adb:97</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-intfield__adb.htm#54_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-intfield.adb:54</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#54_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-ipv4_address.adb:54</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-numeric__adb.htm#56_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-numeric.adb:56</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user__adb.htm#55_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types-user.adb:55</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#151_16" TARGET="main">Set_Fld_Type -  terminal_interface-curses-forms-field_types.adb:151</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#696_16" TARGET="main">Set_Form_Init</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#844_16" TARGET="main">Set_Form_Opts</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#612_16" TARGET="main">Set_Form_Sub</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#712_16" TARGET="main">Set_Form_Term</A>
+<LI><A HREF="../terminal_interface-curses-forms-form_user_data__adb.htm#58_16" TARGET="main">Set_Form_Userptr</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#584_16" TARGET="main">Set_Form_Win</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#732_16" TARGET="main">Set_Frm_Fields</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1055_16" TARGET="main">Set_Frm_Page</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-regexp__adb.htm#54_16" TARGET="main">Set_Ftyp</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#892_16" TARGET="main">Set_Items</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#804_16" TARGET="main">Set_Item_Init</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#193_16" TARGET="main">Set_Item_Opts</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#818_16" TARGET="main">Set_Item_Term</A>
+<LI><A HREF="../terminal_interface-curses-menus-item_user_data__adb.htm#51_16" TARGET="main">Set_Item_Userptr</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#154_16" TARGET="main">Set_Item_Val</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#95_14" TARGET="main">Set_Line -  terminal_interface-curses-text_io.ads:95</A>
 <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#96_14" TARGET="main">Set_Line -  terminal_interface-curses-text_io.ads:96</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#97_14" TARGET="main">Set_Line -  terminal_interface-curses-text_io.ads:97</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#514_16" TARGET="main">Set_Mark</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#591_16" TARGET="main">Set_Menu_Back</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#768_16" TARGET="main">Set_Menu_Fmt</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#552_16" TARGET="main">Set_Menu_Fore</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#629_16" TARGET="main">Set_Menu_Grey</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#833_16" TARGET="main">Set_Menu_Init</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#374_16" TARGET="main">Set_Menu_Opts</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#667_16" TARGET="main">Set_Menu_Pad</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#457_16" TARGET="main">Set_Menu_Sub</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#847_16" TARGET="main">Set_Menu_Term</A>
-<LI><A HREF="../terminal_interface-curses-menus-menu_user_data__adb.htm#51_16" TARGET="main">Set_Menu_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#433_16" TARGET="main">Set_Menu_Win</A>
-<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1105_16" TARGET="main">Set_Page</A>
-<LI><A HREF="../terminal_interface-curses-panels-user_data__adb.htm#55_16" TARGET="main">Set_Panel_Userptr</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#736_16" TARGET="main">Set_Pattern</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#693_16" TARGET="main">Set_Spacing</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#314_16" TARGET="main">Set_Toprow</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#60_14" TARGET="main">Set_Window</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#85_16" TARGET="main">Showpanel</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1983_16" TARGET="main">Slk_Attr -  terminal_interface-curses.adb:1983</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1993_16" TARGET="main">Slk_Attr -  terminal_interface-curses.adb:1993</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1947_16" TARGET="main">Slk_Attroff</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1945_16" TARGET="main">Slk_Attron</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1969_16" TARGET="main">Slk_Attrset</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1913_16" TARGET="main">Slk_Clear</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2003_16" TARGET="main">Slk_Color</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1847_16" TARGET="main">Slk_Init</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1897_16" TARGET="main">Slk_Label -  terminal_interface-curses.adb:1897</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1905_16" TARGET="main">Slk_Label -  terminal_interface-curses.adb:1905</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1886_16" TARGET="main">Slk_Noutrefresh</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1876_16" TARGET="main">Slk_Refresh</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1923_16" TARGET="main">Slk_Restore</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1859_16" TARGET="main">Slk_Set</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1933_16" TARGET="main">Slk_Touch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1475_16" TARGET="main">Subpad</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#323_16" TARGET="main">Subwin</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#416_16" TARGET="main">Syncok</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#513_16" TARGET="main">Set_Mark</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#590_16" TARGET="main">Set_Menu_Back</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#767_16" TARGET="main">Set_Menu_Fmt</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#551_16" TARGET="main">Set_Menu_Fore</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#628_16" TARGET="main">Set_Menu_Grey</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#832_16" TARGET="main">Set_Menu_Init</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#373_16" TARGET="main">Set_Menu_Opts</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#666_16" TARGET="main">Set_Menu_Pad</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#456_16" TARGET="main">Set_Menu_Sub</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#846_16" TARGET="main">Set_Menu_Term</A>
+<LI><A HREF="../terminal_interface-curses-menus-menu_user_data__adb.htm#50_16" TARGET="main">Set_Menu_Userptr</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#432_16" TARGET="main">Set_Menu_Win</A>
+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#1104_16" TARGET="main">Set_Page</A>
+<LI><A HREF="../terminal_interface-curses-panels-user_data__adb.htm#54_16" TARGET="main">Set_Panel_Userptr</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#735_16" TARGET="main">Set_Pattern</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#692_16" TARGET="main">Set_Spacing</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#313_16" TARGET="main">Set_Toprow</A>
+<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#59_14" TARGET="main">Set_Window</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#84_16" TARGET="main">Showpanel</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1982_16" TARGET="main">Slk_Attr -  terminal_interface-curses.adb:1982</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1992_16" TARGET="main">Slk_Attr -  terminal_interface-curses.adb:1992</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1946_16" TARGET="main">Slk_Attroff</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1944_16" TARGET="main">Slk_Attron</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1968_16" TARGET="main">Slk_Attrset</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1912_16" TARGET="main">Slk_Clear</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2002_16" TARGET="main">Slk_Color</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1846_16" TARGET="main">Slk_Init</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1896_16" TARGET="main">Slk_Label -  terminal_interface-curses.adb:1896</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1904_16" TARGET="main">Slk_Label -  terminal_interface-curses.adb:1904</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1885_16" TARGET="main">Slk_Noutrefresh</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1875_16" TARGET="main">Slk_Refresh</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1922_16" TARGET="main">Slk_Restore</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1858_16" TARGET="main">Slk_Set</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1932_16" TARGET="main">Slk_Touch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1474_16" TARGET="main">Subpad</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#322_16" TARGET="main">Subwin</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#415_16" TARGET="main">Syncok</A>
+</UL></BODY></HTML>
index a02ce1a50cb55ec79cc89721f7d92164e7b051b5..3988e338473c1f1e105957b2a0884686e5f1c537 100644 (file)
@@ -3,32 +3,28 @@
 <H2>Functions - T</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2128_16" TARGET="main">Termattrs</A>
-<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#43_35" TARGET="main">Termcap</A>
-<LI><A HREF="../terminal_interface__ads.htm#42_9" TARGET="main">Terminal_Interface</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#45_35" TARGET="main">Terminfo</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2154_16" TARGET="main">Termname -  terminal_interface-curses.adb:2154</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2162_16" TARGET="main">Termname -  terminal_interface-curses.adb:2162</A>
-<LI><A HREF="../terminal_interface-curses-text_io__ads.htm#45_35" TARGET="main">Text_IO</A>
-<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#51_16" TARGET="main">tgetent</A>
-<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#71_16" TARGET="main">tgetflag</A>
-<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#89_16" TARGET="main">tgetnum</A>
-<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#108_16" TARGET="main">tgetstr -  terminal_interface-curses-termcap.adb:108</A>
-<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#129_16" TARGET="main">tgetstr -  terminal_interface-curses-termcap.adb:129</A>
-<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#54_13" TARGET="main">TGoto</A>
-<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#151_16" TARGET="main">tgoto</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#70_16" TARGET="main">tigetflag</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#88_16" TARGET="main">tigetstr -  terminal_interface-curses-terminfo.adb:88</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#109_16" TARGET="main">tigetstr -  terminal_interface-curses-terminfo.adb:109</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#128_16" TARGET="main">tigetstr -  terminal_interface-curses-terminfo.adb:128</A>
-<LI><A HREF="../terminal_interface-curses-panels__adb.htm#75_16" TARGET="main">Toppanel</A>
-<LI><A HREF="../terminal_interface-curses-menus__adb.htm#327_16" TARGET="main">Toprow</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#107_16" TARGET="main">To_Access</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__adb.htm#50_13" TARGET="main">To_Argument_Access -  terminal_interface-curses-forms-field_types-user-choice.adb:50</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__adb.htm#81_13" TARGET="main">To_Argument_Access -  terminal_interface-curses-forms-field_types-user.adb:81</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#56_13" TARGET="main">To_Argument_Access -  terminal_interface-curses-forms-field_types.adb:56</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#76_16" TARGET="main">To_Pointer</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#56_16" TARGET="main">To_Weird</A>
-<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#141_16" TARGET="main">tputs</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2421_16" TARGET="main">Transform</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#2127_16" TARGET="main">Termattrs</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2153_16" TARGET="main">Termname -  terminal_interface-curses.adb:2153</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2161_16" TARGET="main">Termname -  terminal_interface-curses.adb:2161</A>
+<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#50_16" TARGET="main">tgetent</A>
+<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#70_16" TARGET="main">tgetflag</A>
+<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#88_16" TARGET="main">tgetnum</A>
+<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#107_16" TARGET="main">tgetstr -  terminal_interface-curses-termcap.adb:107</A>
+<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#128_16" TARGET="main">tgetstr -  terminal_interface-curses-termcap.adb:128</A>
+<LI><A HREF="../terminal_interface-curses-termcap__adb.htm#150_16" TARGET="main">tgoto</A>
+<LI><A HREF="../terminal_interface-curses-termcap__ads.htm#53_13" TARGET="main">TGoto</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#69_16" TARGET="main">tigetflag</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#87_16" TARGET="main">tigetstr -  terminal_interface-curses-terminfo.adb:87</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#108_16" TARGET="main">tigetstr -  terminal_interface-curses-terminfo.adb:108</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#127_16" TARGET="main">tigetstr -  terminal_interface-curses-terminfo.adb:127</A>
+<LI><A HREF="../terminal_interface-curses-panels__adb.htm#74_16" TARGET="main">Toppanel</A>
+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#326_16" TARGET="main">Toprow</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#106_16" TARGET="main">To_Access</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__adb.htm#49_13" TARGET="main">To_Argument_Access -  terminal_interface-curses-forms-field_types-user-choice.adb:49</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types-user__adb.htm#80_13" TARGET="main">To_Argument_Access -  terminal_interface-curses-forms-field_types-user.adb:80</A>
+<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#55_13" TARGET="main">To_Argument_Access -  terminal_interface-curses-forms-field_types.adb:55</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#75_16" TARGET="main">To_Pointer</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#55_16" TARGET="main">To_Weird</A>
+<LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#140_16" TARGET="main">tputs</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2420_16" TARGET="main">Transform</A>
+</UL></BODY></HTML>
index 1c66bf8a61bb13abcb1fc8f6f5866b5598096a55..1d8b8756f427a2122cee8b167f552761571cf137 100644 (file)
@@ -3,10 +3,9 @@
 <H2>Functions - U</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2044_16" TARGET="main">Unctrl -  terminal_interface-curses.adb:2044</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2052_16" TARGET="main">Unctrl -  terminal_interface-curses.adb:2052</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#590_16" TARGET="main">Ungetch</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#184_16" TARGET="main">Ungetmouse</A>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#44_53" TARGET="main">User</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2479_16" TARGET="main">use_extended_namesC</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#2043_16" TARGET="main">Unctrl -  terminal_interface-curses.adb:2043</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2051_16" TARGET="main">Unctrl -  terminal_interface-curses.adb:2051</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#589_16" TARGET="main">Ungetch</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#183_16" TARGET="main">Ungetmouse</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2478_16" TARGET="main">use_extended_namesC</A>
+</UL></BODY></HTML>
index f30d7515505ce5a2aaaa6d26290e36c90f9a061a..1562c4a34c95d262d992ccade1d7e93bb25e89bc 100644 (file)
@@ -3,5 +3,5 @@
 <H2>Functions - V</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#54_13" TARGET="main">Value</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#53_13" TARGET="main">Value</A>
+</UL></BODY></HTML>
index 01a72e1501a09ad9c6a065d0bb5f45b209e53429..00fd97694cdfdf85427f468c2d02c709d274d7cb 100644 (file)
@@ -3,52 +3,53 @@
 <H2>Functions - W</H2>
 <A HREF="../funcs.htm" TARGET="_self">[index]</A>
 <UL COMPACT TYPE=DISC>
-<LI><A HREF="../terminal_interface-curses__adb.htm#204_16" TARGET="main">Waddch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#460_16" TARGET="main">Waddchnstr</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#429_16" TARGET="main">Waddnstr</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#708_16" TARGET="main">Wattrget -  terminal_interface-curses.adb:708</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#731_16" TARGET="main">Wattrget -  terminal_interface-curses.adb:731</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#667_16" TARGET="main">Wattroff</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#664_16" TARGET="main">Wattron</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#692_16" TARGET="main">Wattrset</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1211_17" TARGET="main">WBackground</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#501_16" TARGET="main">Wborder</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1221_16" TARGET="main">WChangeBkgd</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#772_16" TARGET="main">Wchgat</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1179_16" TARGET="main">Wclear</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1189_16" TARGET="main">Wclearbot</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1199_16" TARGET="main">Wcleareol</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1596_16" TARGET="main">Wdelch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#307_16" TARGET="main">Wdelwin</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#261_16" TARGET="main">Wechochar</A>
-<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#195_16" TARGET="main">Wenclose</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1169_16" TARGET="main">Werase</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1232_16" TARGET="main">Wgetbkgd</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#576_16" TARGET="main">Wgetch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1807_16" TARGET="main">Wgetnstr</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#543_16" TARGET="main">Whline</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1622_16" TARGET="main">Winch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1760_16" TARGET="main">Winchnstr</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1718_16" TARGET="main">Winnstr</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1644_16" TARGET="main">Winsch</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1373_16" TARGET="main">Winsdelln</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1676_16" TARGET="main">Winsnstr</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1285_16" TARGET="main">WLineTouched</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#190_16" TARGET="main">Wmove</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1132_16" TARGET="main">Wnoutrefresh</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1155_16" TARGET="main">Wredrawln</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1121_16" TARGET="main">Wrefresh</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#2547_16" TARGET="main">wresize</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1584_16" TARGET="main">Wscrl</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1098_16" TARGET="main">Wsetscrreg</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#754_16" TARGET="main">Wset_Color</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#644_16" TARGET="main">wstandend</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#642_16" TARGET="main">wstandout</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#962_16" TARGET="main">Wtimeout</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1243_16" TARGET="main">Wtouchln</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#560_16" TARGET="main">Wvline</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#1298_16" TARGET="main">WWinTouched</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#91_13" TARGET="main">W_Get_Byte</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#89_13" TARGET="main">W_Get_Int</A>
-<LI><A HREF="../terminal_interface-curses__adb.htm#90_13" TARGET="main">W_Get_Short</A>
-</UL></BODY></HTML>
\ No newline at end of file
+<LI><A HREF="../terminal_interface-curses__adb.htm#203_16" TARGET="main">Waddch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#459_16" TARGET="main">Waddchnstr</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#428_16" TARGET="main">Waddnstr</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#707_16" TARGET="main">Wattrget -  terminal_interface-curses.adb:707</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#730_16" TARGET="main">Wattrget -  terminal_interface-curses.adb:730</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#666_16" TARGET="main">Wattroff</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#663_16" TARGET="main">Wattron</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#691_16" TARGET="main">Wattrset</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1210_17" TARGET="main">WBackground</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#500_16" TARGET="main">Wborder</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1220_16" TARGET="main">WChangeBkgd</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#771_16" TARGET="main">Wchgat</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1178_16" TARGET="main">Wclear</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1188_16" TARGET="main">Wclearbot</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1198_16" TARGET="main">Wcleareol</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1595_16" TARGET="main">Wdelch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#306_16" TARGET="main">Wdelwin</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#260_16" TARGET="main">Wechochar</A>
+<LI><A HREF="../terminal_interface-curses-mouse__adb.htm#194_16" TARGET="main">Wenclose</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1168_16" TARGET="main">Werase</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1231_16" TARGET="main">Wgetbkgd</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#575_16" TARGET="main">Wgetch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1806_16" TARGET="main">Wgetnstr</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#542_16" TARGET="main">Whline</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1621_16" TARGET="main">Winch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1759_16" TARGET="main">Winchnstr</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1717_16" TARGET="main">Winnstr</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1643_16" TARGET="main">Winsch</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1372_16" TARGET="main">Winsdelln</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1675_16" TARGET="main">Winsnstr</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1284_16" TARGET="main">WLineTouched</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#189_16" TARGET="main">Wmove</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1131_16" TARGET="main">Wnoutrefresh</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1154_16" TARGET="main">Wredrawln</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1120_16" TARGET="main">Wrefresh</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#2546_16" TARGET="main">wresize</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1583_16" TARGET="main">Wscrl</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1097_16" TARGET="main">Wsetscrreg</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#753_16" TARGET="main">Wset_Color</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#643_16" TARGET="main">wstandend</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#641_16" TARGET="main">wstandout</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#961_16" TARGET="main">Wtimeout</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1242_16" TARGET="main">Wtouchln</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#559_16" TARGET="main">Wvline</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#1297_16" TARGET="main">WWinTouched</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#90_13" TARGET="main">W_Get_Byte</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#65_13" TARGET="main">W_Get_Element</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#88_13" TARGET="main">W_Get_Int</A>
+<LI><A HREF="../terminal_interface-curses__adb.htm#89_13" TARGET="main">W_Get_Short</A>
+</UL></BODY></HTML>
index 748102006c128455b8e000f880effcaaefb17fd9..05c57e03228c6528ff4fd2fbc427d4d5f4f820bb 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A><FONT COLOR=red><A NAME="42_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A> <b>is</b>
    <FONT COLOR=green><EM>--</EM></FONT>
    <FONT COLOR=green><EM>--  Some helpers</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A><FONT COLOR=red><A NAME="45_14"></A></FONT> (<A HREF="terminal_interface-curses-aux__ads.htm#117_27">Cp</A>  : <b>in</b>  chars_ptr;
-                          <A HREF="terminal_interface-curses-aux__ads.htm#118_27">Str</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A><FONT COLOR=red><A NAME="44_14"></A></FONT> (<A HREF="terminal_interface-curses-aux__ads.htm#116_27">Cp</A>  : <b>in</b>  chars_ptr;
+                          <A HREF="terminal_interface-curses-aux__ads.htm#117_27">Str</A> : <b>out</b> String)
    <b>is</b>
       <FONT COLOR=green><EM>--  Fill the string with the characters referenced by the</EM></FONT>
       <FONT COLOR=green><EM>--  chars_ptr.</EM></FONT>
       <FONT COLOR=green><EM>--</EM></FONT>
-      <FONT COLOR=red><A NAME="51_7">Len</A></FONT> : Natural;
+      <FONT COLOR=red><A NAME="50_7">Len</A></FONT> : Natural;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#117_27">Cp</A> /= Null_Ptr <b>then</b>
-         <A HREF="terminal_interface-curses-aux__adb.htm#51_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#117_27">Cp</A>));
-         <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#118_27">Str</A>'Length &lt; <A HREF="terminal_interface-curses-aux__adb.htm#51_7">Len</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#116_27">Cp</A> /= Null_Ptr <b>then</b>
+         <A HREF="terminal_interface-curses-aux__adb.htm#50_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#116_27">Cp</A>));
+         <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#117_27">Str</A>'Length &lt; <A HREF="terminal_interface-curses-aux__adb.htm#50_7">Len</A> <b>then</b>
             <b>raise</b> Constraint_Error;
          <b>end</b> <b>if</b>;
          <b>declare</b>
-            <FONT COLOR=red><A NAME="59_13">S</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#51_7">Len</A>);
+            <FONT COLOR=red><A NAME="58_13">S</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#50_7">Len</A>);
          <b>begin</b>
-            <A HREF="terminal_interface-curses-aux__adb.htm#59_13">S</A> := Value (<A HREF="terminal_interface-curses-aux__ads.htm#117_27">Cp</A>);
-            <A HREF="terminal_interface-curses-aux__ads.htm#118_27">Str</A> (<A HREF="terminal_interface-curses-aux__ads.htm#118_27">Str</A>'First .. (<A HREF="terminal_interface-curses-aux__ads.htm#118_27">Str</A>'First + <A HREF="terminal_interface-curses-aux__adb.htm#51_7">Len</A> - 1)) := <A HREF="terminal_interface-curses-aux__adb.htm#59_13">S</A> (<A HREF="terminal_interface-curses-aux__adb.htm#59_13">S</A>'<b>Range</b>);
+            <A HREF="terminal_interface-curses-aux__adb.htm#58_13">S</A> := Value (<A HREF="terminal_interface-curses-aux__ads.htm#116_27">Cp</A>);
+            <A HREF="terminal_interface-curses-aux__ads.htm#117_27">Str</A> (<A HREF="terminal_interface-curses-aux__ads.htm#117_27">Str</A>'First .. (<A HREF="terminal_interface-curses-aux__ads.htm#117_27">Str</A>'First + <A HREF="terminal_interface-curses-aux__adb.htm#50_7">Len</A> - 1)) := <A HREF="terminal_interface-curses-aux__adb.htm#58_13">S</A> (<A HREF="terminal_interface-curses-aux__adb.htm#58_13">S</A>'<b>Range</b>);
          <b>end</b>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-aux__adb.htm#51_7">Len</A> := 0;
+         <A HREF="terminal_interface-curses-aux__adb.htm#50_7">Len</A> := 0;
       <b>end</b> <b>if</b>;
 
-      <b>if</b> <A HREF="terminal_interface-curses-aux__adb.htm#51_7">Len</A> &lt; <A HREF="terminal_interface-curses-aux__ads.htm#118_27">Str</A>'Length <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#118_27">Str</A> ((<A HREF="terminal_interface-curses-aux__ads.htm#118_27">Str</A>'First + <A HREF="terminal_interface-curses-aux__adb.htm#51_7">Len</A>) .. <A HREF="terminal_interface-curses-aux__ads.htm#118_27">Str</A>'Last) := (<b>others</b> =&gt; ' ');
+      <b>if</b> <A HREF="terminal_interface-curses-aux__adb.htm#50_7">Len</A> &lt; <A HREF="terminal_interface-curses-aux__ads.htm#117_27">Str</A>'Length <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#117_27">Str</A> ((<A HREF="terminal_interface-curses-aux__ads.htm#117_27">Str</A>'First + <A HREF="terminal_interface-curses-aux__adb.htm#50_7">Len</A>) .. <A HREF="terminal_interface-curses-aux__ads.htm#117_27">Str</A>'Last) := (<b>others</b> =&gt; ' ');
       <b>end</b> <b>if</b>;
 
-   <b>end</b> Fill_String;
+   <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A><A HREF="terminal_interface-curses-aux__ads.htm#116_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A><FONT COLOR=red><A NAME="74_13"></A></FONT> (<A HREF="terminal_interface-curses-aux__ads.htm#122_26">Cp</A> : chars_ptr) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#121_26">Cp</A> : chars_ptr) <b>return</b> String
    <b>is</b>
-      <FONT COLOR=red><A NAME="76_7">Len</A></FONT> : Natural;
+      <FONT COLOR=red><A NAME="75_7">Len</A></FONT> : Natural;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_26">Cp</A> /= Null_Ptr <b>then</b>
-         <A HREF="terminal_interface-curses-aux__adb.htm#76_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#122_26">Cp</A>));
-         <b>if</b> <A HREF="terminal_interface-curses-aux__adb.htm#76_7">Len</A> = 0 <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_26">Cp</A> /= Null_Ptr <b>then</b>
+         <A HREF="terminal_interface-curses-aux__adb.htm#75_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#121_26">Cp</A>));
+         <b>if</b> <A HREF="terminal_interface-curses-aux__adb.htm#75_7">Len</A> = 0 <b>then</b>
             <b>return</b> "";
          <b>else</b>
             <b>declare</b>
-               <FONT COLOR=red><A NAME="84_16">S</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#76_7">Len</A>);
+               <FONT COLOR=red><A NAME="83_16">S</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#75_7">Len</A>);
             <b>begin</b>
-               <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#122_26">Cp</A>, <A HREF="terminal_interface-curses-aux__adb.htm#84_16">S</A>);
-               <b>return</b> <A HREF="terminal_interface-curses-aux__adb.htm#84_16">S</A>;
+               <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#121_26">Cp</A>, <A HREF="terminal_interface-curses-aux__adb.htm#83_16">S</A>);
+               <b>return</b> <A HREF="terminal_interface-curses-aux__adb.htm#83_16">S</A>;
             <b>end</b>;
          <b>end</b> <b>if</b>;
       <b>else</b>
          <b>return</b> "";
       <b>end</b> <b>if</b>;
-   <b>end</b> Fill_String;
+   <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A><A HREF="terminal_interface-curses-aux__ads.htm#121_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A><FONT COLOR=red><A NAME="95_14"></A></FONT> (<A HREF="terminal_interface-curses-aux__ads.htm#97_29">Code</A> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A><FONT COLOR=red><A NAME="94_14"></A></FONT> (<A HREF="terminal_interface-curses-aux__ads.htm#96_29">Code</A> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>)
    <b>is</b>
    <b>begin</b>
-      <b>case</b> <A HREF="terminal_interface-curses-aux__ads.htm#97_29">Code</A> <b>is</b>
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A>              =&gt; <b>null</b>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#82_4">E_System_Error</A>    =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#389_4">Eti_System_Error</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#83_4">E_Bad_Argument</A>    =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#390_4">Eti_Bad_Argument</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#84_4">E_Posted</A>          =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#391_4">Eti_Posted</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#85_4">E_Connected</A>       =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#392_4">Eti_Connected</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#86_4">E_Bad_State</A>       =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#393_4">Eti_Bad_State</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#87_4">E_No_Room</A>         =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#394_4">Eti_No_Room</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#88_4">E_Not_Posted</A>      =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#395_4">Eti_Not_Posted</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#89_4">E_Unknown_Command</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#396_4">Eti_Unknown_Command</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#90_4">E_No_Match</A>        =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#397_4">Eti_No_Match</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#91_4">E_Not_Selectable</A>  =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#398_4">Eti_Not_Selectable</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#92_4">E_Not_Connected</A>   =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#399_4">Eti_Not_Connected</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#93_4">E_Request_Denied</A>  =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#400_4">Eti_Request_Denied</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#94_4">E_Invalid_Field</A>   =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#401_4">Eti_Invalid_Field</A>;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#95_4">E_Current</A>         =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#402_4">Eti_Current</A>;
+      <b>case</b> <A HREF="terminal_interface-curses-aux__ads.htm#96_29">Code</A> <b>is</b>
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A>              =&gt; <b>null</b>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_System_Error</A>    =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#388_4">Eti_System_Error</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#82_4">E_Bad_Argument</A>    =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#389_4">Eti_Bad_Argument</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#83_4">E_Posted</A>          =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#390_4">Eti_Posted</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#84_4">E_Connected</A>       =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#391_4">Eti_Connected</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#85_4">E_Bad_State</A>       =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#392_4">Eti_Bad_State</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#86_4">E_No_Room</A>         =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#393_4">Eti_No_Room</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#87_4">E_Not_Posted</A>      =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#394_4">Eti_Not_Posted</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#88_4">E_Unknown_Command</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#395_4">Eti_Unknown_Command</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#89_4">E_No_Match</A>        =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#396_4">Eti_No_Match</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#90_4">E_Not_Selectable</A>  =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#397_4">Eti_Not_Selectable</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#91_4">E_Not_Connected</A>   =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#398_4">Eti_Not_Connected</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#92_4">E_Request_Denied</A>  =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#399_4">Eti_Request_Denied</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#93_4">E_Invalid_Field</A>   =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#400_4">Eti_Invalid_Field</A>;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#94_4">E_Current</A>         =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#401_4">Eti_Current</A>;
       <b>end</b> <b>case</b>;
-   <b>end</b> Eti_Exception;
+   <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A><A HREF="terminal_interface-curses-aux__ads.htm#96_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Aux;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A><A HREF="terminal_interface-curses-aux__ads.htm#50_35">;</A>
+</PRE></BODY></HTML>
index ab7112157b47b54a85f4bf75a5228a9168655a2e..02c03d6cf40d881df974e920537c79df37712144 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.14 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.15 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <FONT COLOR=green><EM>--  curses binding.</EM></FONT>
 
    <b>use</b> <b>type</b> Interfaces.C.int;
 
-   <b>subtype</b> <FONT COLOR=red><A NAME="57_12">C_Int</A></FONT>      <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
-   <b>subtype</b> <FONT COLOR=red><A NAME="58_12">C_Short</A></FONT>    <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.short;
-   <b>subtype</b> <FONT COLOR=red><A NAME="59_12">C_Long_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.long;
-   <b>subtype</b> <FONT COLOR=red><A NAME="60_12">C_Size_T</A></FONT>   <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.size_t;
-   <b>subtype</b> <FONT COLOR=red><A NAME="61_12">C_UInt</A></FONT>     <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.unsigned;
-   <b>subtype</b> <FONT COLOR=red><A NAME="62_12">C_ULong</A></FONT>    <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.unsigned_long;
-   <b>subtype</b> <FONT COLOR=red><A NAME="63_12">C_Char_Ptr</A></FONT> <b>is</b> Interfaces.C.Strings.chars_ptr;
-   <b>type</b>    <FONT COLOR=red><A NAME="64_12">C_Void_Ptr</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#61_12">System</A>.Address;
-   <b>type</b>    <FONT COLOR=red><A NAME="65_12">C_Chtype</A></FONT>   <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#61_12">C_ULong</A>;
+   <b>subtype</b> <FONT COLOR=red><A NAME="56_12">C_Int</A></FONT>      <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
+   <b>subtype</b> <FONT COLOR=red><A NAME="57_12">C_Short</A></FONT>    <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.short;
+   <b>subtype</b> <FONT COLOR=red><A NAME="58_12">C_Long_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.long;
+   <b>subtype</b> <FONT COLOR=red><A NAME="59_12">C_Size_T</A></FONT>   <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.size_t;
+   <b>subtype</b> <FONT COLOR=red><A NAME="60_12">C_UInt</A></FONT>     <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.unsigned;
+   <b>subtype</b> <FONT COLOR=red><A NAME="61_12">C_ULong</A></FONT>    <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.unsigned_long;
+   <b>subtype</b> C_Char_Ptr <b>is</b> Interfaces.C.Strings.chars_ptr;
+   <b>type</b>    C_Void_Ptr <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#60_12">System</A>.Address;
+   <b>type</b>    C_Chtype   <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#60_12">C_ULong</A>;
    <b>type</b>    C_AttrType <b>is</b> <b>new</b> C_ULong;
 
    <FONT COLOR=green><EM>--  This is how those constants are defined in ncurses. I see them also</EM></FONT>
    <FONT COLOR=green><EM>--  could be that this is quite general, but please check with your curses.</EM></FONT>
    <FONT COLOR=green><EM>--  This is critical, because curses sometime mixes boolean returns with</EM></FONT>
    <FONT COLOR=green><EM>--  returning an error status.</EM></FONT>
-   <FONT COLOR=red><A NAME="73_4">Curses_Ok</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := 0;
+   <FONT COLOR=red><A NAME="72_4">Curses_Ok</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := 0;
    Curses_Err   : <b>constant</b> C_Int := -1;
 
-   <FONT COLOR=red><A NAME="76_4">Curses_True</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := 1;
+   <FONT COLOR=red><A NAME="75_4">Curses_True</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := 1;
    Curses_False : <b>constant</b> C_Int := 0;
 
    <FONT COLOR=green><EM>--  Eti_Error: type for error codes returned by the menu and form subsystem</EM></FONT>
    <b>subtype</b> Eti_Error <b>is</b> C_Int <b>range</b> -14 .. 0;
 
-   <FONT COLOR=red><A NAME="82_4">E_Ok</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := 0;
-   <FONT COLOR=red><A NAME="83_4">E_System_Error</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -1;
-   <FONT COLOR=red><A NAME="84_4">E_Bad_Argument</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -2;
-   <FONT COLOR=red><A NAME="85_4">E_Posted</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -3;
-   <FONT COLOR=red><A NAME="86_4">E_Connected</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -4;
-   <FONT COLOR=red><A NAME="87_4">E_Bad_State</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -5;
-   <FONT COLOR=red><A NAME="88_4">E_No_Room</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -6;
-   <FONT COLOR=red><A NAME="89_4">E_Not_Posted</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -7;
-   <FONT COLOR=red><A NAME="90_4">E_Unknown_Command</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -8;
-   <FONT COLOR=red><A NAME="91_4">E_No_Match</A></FONT>         : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -9;
-   <FONT COLOR=red><A NAME="92_4">E_Not_Selectable</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -10;
-   <FONT COLOR=red><A NAME="93_4">E_Not_Connected</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -11;
-   <FONT COLOR=red><A NAME="94_4">E_Request_Denied</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -12;
-   <FONT COLOR=red><A NAME="95_4">E_Invalid_Field</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := -13;
+   <FONT COLOR=red><A NAME="81_4">E_Ok</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := 0;
+   <FONT COLOR=red><A NAME="82_4">E_System_Error</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -1;
+   <FONT COLOR=red><A NAME="83_4">E_Bad_Argument</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -2;
+   <FONT COLOR=red><A NAME="84_4">E_Posted</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -3;
+   <FONT COLOR=red><A NAME="85_4">E_Connected</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -4;
+   <FONT COLOR=red><A NAME="86_4">E_Bad_State</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -5;
+   <FONT COLOR=red><A NAME="87_4">E_No_Room</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -6;
+   <FONT COLOR=red><A NAME="88_4">E_Not_Posted</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -7;
+   <FONT COLOR=red><A NAME="89_4">E_Unknown_Command</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -8;
+   <FONT COLOR=red><A NAME="90_4">E_No_Match</A></FONT>         : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -9;
+   <FONT COLOR=red><A NAME="91_4">E_Not_Selectable</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -10;
+   <FONT COLOR=red><A NAME="92_4">E_Not_Connected</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -11;
+   <FONT COLOR=red><A NAME="93_4">E_Request_Denied</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -12;
+   <FONT COLOR=red><A NAME="94_4">E_Invalid_Field</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := -13;
    E_Current          : <b>constant</b> Eti_Error := -14;
 
    <b>procedure</b> Eti_Exception (Code : Eti_Error);
    <FONT COLOR=green><EM>--</EM></FONT>
    <FONT COLOR=green><EM>--  Some helpers</EM></FONT>
    <b>function</b> Chtype_To_AttrChar <b>is</b> <b>new</b>
-     Unchecked_Conversion (Source =&gt; <A HREF="terminal_interface-curses__ads.htm#352_9">C_Chtype</A>,
-            <FONT COLOR=red><A NAME="105_13"> </A></FONT>              Target =&gt; Attributed_Character);
+     Unchecked_Conversion (Source =&gt; <A HREF="terminal_interface-curses__ads.htm#351_9">C_Chtype</A>,
+            <FONT COLOR=red><A NAME="104_13"> </A></FONT>              Target =&gt; Attributed_Character);
    <b>function</b> AttrChar_To_Chtype <b>is</b> <b>new</b>
-     Unchecked_Conversion (Source =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#64_12">Attributed_Character</A>,
+     Unchecked_Conversion (Source =&gt; Attributed_Character,
                            Target =&gt; C_Chtype);
 
    <b>function</b> AttrChar_To_AttrType <b>is</b> <b>new</b>
-     Unchecked_Conversion (Source =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#65_12">Attributed_Character</A>,
+     Unchecked_Conversion (Source =&gt; Attributed_Character,
                            Target =&gt; C_AttrType);
 
    <b>function</b> AttrType_To_AttrChar <b>is</b> <b>new</b>
-     Unchecked_Conversion (Source =&gt; <A HREF="terminal_interface-curses__ads.htm#352_9">C_AttrType</A>,
+     Unchecked_Conversion (Source =&gt; <A HREF="terminal_interface-curses__ads.htm#351_9">C_AttrType</A>,
                            Target =&gt; Attributed_Character);
 
-   <b>procedure</b> Fill_String (<FONT COLOR=red><A NAME="118_27">Cp</A></FONT>  : <b>in</b>  chars_ptr;
+   <b>procedure</b> Fill_String (<FONT COLOR=red><A NAME="117_27">Cp</A></FONT>  : <b>in</b>  chars_ptr;
                           Str : <b>out</b> String);
    <FONT COLOR=green><EM>--  Fill the Str parameter with the string denoted by the chars_ptr</EM></FONT>
    <FONT COLOR=green><EM>--  C-Style string.</EM></FONT>
    <FONT COLOR=green><EM>--  Same but as function.</EM></FONT>
 
 <b>end</b> Terminal_Interface.Curses.Aux;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index a43d75190b44bd04a397fa2990c5e1a8db11a447..9a4063be218837a3276008ebc1a42b5641e17f16 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.7 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.8 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#42_53">Alpha</A><FONT COLOR=red><A NAME="45_58"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#41_53">Alpha</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#50_14">Set_Field_Type</A><FONT COLOR=red><A NAME="49_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#50_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#51_30">Typ</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#45_9">Alpha_Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#49_14">Set_Field_Type</A><FONT COLOR=red><A NAME="48_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#49_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#50_30">Typ</A> : <b>in</b> Alpha_Field)
    <b>is</b>
-      <FONT COLOR=red><A NAME="52_7">C_Alpha_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#52_7">C_Alpha_Field_Type</A>, "TYPE_ALPHA");
+      <FONT COLOR=red><A NAME="51_7">C_Alpha_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#51_7">C_Alpha_Field_Type</A>, "TYPE_ALPHA");
 
-      <b>function</b> <FONT COLOR=red><A NAME="55_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="55_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#50_30">Fld</A>;
-                             <FONT COLOR=red><A NAME="56_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#52_7">C_Alpha_Field_Type</A>;
-                             <FONT COLOR=red><A NAME="57_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#55_16">Set_Fld_Type</A>, "set_field_type");
+      <b>function</b> <FONT COLOR=red><A NAME="54_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="54_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#49_30">Fld</A>;
+                             <FONT COLOR=red><A NAME="55_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#51_7">C_Alpha_Field_Type</A>;
+                             <FONT COLOR=red><A NAME="56_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#54_16">Set_Fld_Type</A>, "set_field_type");
 
-      <FONT COLOR=red><A NAME="60_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="59_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#60_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#55_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#57_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#51_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#47_9">Minimum_Field_Width</A>));
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#60_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#60_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#59_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#54_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#56_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#50_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#46_9">Minimum_Field_Width</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#59_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#59_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#50_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#51_30">Typ</A>);
-   <b>end</b> Set_Field_Type;
+      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#49_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#50_30">Typ</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#49_14">Set_Field_Type</A><A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#49_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.Alpha;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#41_53">Alpha</A><A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index 521c5fd208a0400d6afd0350d15e8116740ef3d2..4f6c7ffde5cfa15401f1a588ad314e73356e8e70 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#45_58">Alpha</A><FONT COLOR=red><A NAME="42_53"></A></FONT> <b>is</b>
-   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#42_53">Alpha</A>);
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<FONT COLOR=red><A NAME="41_53">Alpha</A></FONT> <b>is</b>
+   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#41_53">Alpha</A>);
 
-   <b>type</b> <FONT COLOR=red><A NAME="45_9">Alpha_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A>
+   <b>type</b> Alpha_Field <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A>
      <b>with</b> <b>record</b>
-        <FONT COLOR=red><A NAME="47_9">Minimum_Field_Width</A></FONT> : Natural := 0;
+        <FONT COLOR=red><A NAME="46_9">Minimum_Field_Width</A></FONT> : Natural := 0;
      <b>end</b> <b>record</b>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#49_14">Set_Field_Type</A><FONT COLOR=red><A NAME="50_14"></A></FONT> (<FONT COLOR=red><A NAME="50_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="51_30">Typ</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#45_9">Alpha_Field</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#48_14">Set_Field_Type</A><FONT COLOR=red><A NAME="49_14"></A></FONT> (<FONT COLOR=red><A NAME="49_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="50_30">Typ</A></FONT> : <b>in</b> Alpha_Field);
    <b>pragma</b> Inline (Set_Field_Type);
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.Alpha;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#41_53">Alpha</A><A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index 727d1eec18820768ef8c578b1eeb0521a09c3f9e..8fd67a628d5cdacbd5b5663a7fcc39a9b672f6fd 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.7 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.8 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#42_53">AlphaNumeric</A><FONT COLOR=red><A NAME="45_58"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#41_53">AlphaNumeric</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#51_14">Set_Field_Type</A><FONT COLOR=red><A NAME="49_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#51_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#52_30">Typ</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#46_9">AlphaNumeric_Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#50_14">Set_Field_Type</A><FONT COLOR=red><A NAME="48_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#50_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#51_30">Typ</A> : <b>in</b> AlphaNumeric_Field)
    <b>is</b>
-      <FONT COLOR=red><A NAME="52_7">C_AlphaNumeric_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#52_7">C_AlphaNumeric_Field_Type</A>, "TYPE_ALNUM");
+      <FONT COLOR=red><A NAME="51_7">C_AlphaNumeric_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#51_7">C_AlphaNumeric_Field_Type</A>, "TYPE_ALNUM");
 
-      <b>function</b> <FONT COLOR=red><A NAME="55_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="55_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#51_30">Fld</A>;
-                             <FONT COLOR=red><A NAME="56_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#52_7">C_AlphaNumeric_Field_Type</A>;
-                             <FONT COLOR=red><A NAME="57_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#55_16">Set_Fld_Type</A>, "set_field_type");
+      <b>function</b> <FONT COLOR=red><A NAME="54_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="54_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#50_30">Fld</A>;
+                             <FONT COLOR=red><A NAME="55_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#51_7">C_AlphaNumeric_Field_Type</A>;
+                             <FONT COLOR=red><A NAME="56_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#54_16">Set_Fld_Type</A>, "set_field_type");
 
-      <FONT COLOR=red><A NAME="60_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="59_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#60_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#55_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#57_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#48_9">Minimum_Field_Width</A>));
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#60_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#60_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#59_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#54_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#56_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#51_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#47_9">Minimum_Field_Width</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#59_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#59_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#52_30">Typ</A>);
-   <b>end</b> Set_Field_Type;
+      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#50_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#51_30">Typ</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#50_14">Set_Field_Type</A><A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#50_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#41_53">AlphaNumeric</A><A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index 98ce0d67883aa66d01600f128a9937d211888183..42fe480aa3edd54dd7b61a06b7cfe1403e438726 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#45_58">AlphaNumeric</A><FONT COLOR=red><A NAME="42_53"></A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<FONT COLOR=red><A NAME="41_53">AlphaNumeric</A></FONT> <b>is</b>
    <b>pragma</b> Preelaborate
-     (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#42_53">AlphaNumeric</A>);
+     (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#41_53">AlphaNumeric</A>);
 
-   <b>type</b> <FONT COLOR=red><A NAME="46_9">AlphaNumeric_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A>
+   <b>type</b> AlphaNumeric_Field <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A>
      <b>with</b> <b>record</b>
-        <FONT COLOR=red><A NAME="48_9">Minimum_Field_Width</A></FONT> : Natural := 0;
+        <FONT COLOR=red><A NAME="47_9">Minimum_Field_Width</A></FONT> : Natural := 0;
      <b>end</b> <b>record</b>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#49_14">Set_Field_Type</A><FONT COLOR=red><A NAME="51_14"></A></FONT> (<FONT COLOR=red><A NAME="51_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="52_30">Typ</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#46_9">AlphaNumeric_Field</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#48_14">Set_Field_Type</A><FONT COLOR=red><A NAME="50_14"></A></FONT> (<FONT COLOR=red><A NAME="50_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="51_30">Typ</A></FONT> : <b>in</b> AlphaNumeric_Field);
    <b>pragma</b> Inline (Set_Field_Type);
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#41_53">AlphaNumeric</A><A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index d65b81d33ebfc927cc7b8edd595608d5eb781da5..dcc4909cad5247a4d7e59ab1b76b18ba8ab8d61a 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.6 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.7 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Characters.Handling; <b>use</b> Ada.Characters.Handling;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#44_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#45_65">Ada</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#44_65">Ada</A> <b>is</b>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#49_13">Create</A><FONT COLOR=red><A NAME="46_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#49_21">Set</A>            : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#51_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#51_46">Mixed_Case</A>;
-                    <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#50_21">Case_Sensitive</A> : Boolean  := False;
-                    <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#51_21">Must_Be_Unique</A> : Boolean  := False)
-                    <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#48_13">Create</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#48_21">Set</A>            : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#50_46">Mixed_Case</A>;
+                    <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#49_21">Case_Sensitive</A> : Boolean  := False;
+                    <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#50_21">Must_Be_Unique</A> : Boolean  := False)
+                    <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#62_9">Enumeration_Field</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="51_7">I</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#56_9">Enumeration_Info</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A>'Last) - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A>'First) + 1);
-      <FONT COLOR=red><A NAME="52_7">J</A></FONT> : Positive := 1;
+      <FONT COLOR=red><A NAME="50_7">I</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#55_9">Enumeration_Info</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A>'Last) - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A>'First) + 1);
+      <FONT COLOR=red><A NAME="51_7">J</A></FONT> : Positive := 1;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">Case_Sensitive</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#50_21">Case_Sensitive</A>;
-      <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">Match_Must_Be_Unique</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#51_21">Must_Be_Unique</A>;
+      <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>.Case_Sensitive := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#49_21">Case_Sensitive</A>;
+      <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>.Match_Must_Be_Unique := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#50_21">Must_Be_Unique</A>;
 
-      <b>for</b> <FONT COLOR=red><A NAME="57_11">E</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A>'<b>Range</b> <b>loop</b>
-         <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#52_7">J</A>) := <b>new</b> String'(<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A>'Image (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#57_11">E</A>)));
+      <b>for</b> <FONT COLOR=red><A NAME="56_11">E</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A>'<b>Range</b> <b>loop</b>
+         <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">J</A>) := <b>new</b> String'(<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A>'Image (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#56_11">E</A>)));
          <FONT COLOR=green><EM>--  The Image attribute defaults to upper case, so we have to handle</EM></FONT>
          <FONT COLOR=green><EM>--  only the other ones...</EM></FONT>
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#49_21">Set</A> /= <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#51_34">Upper_Case</A> <b>then</b>
-            <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#52_7">J</A>).<b>all</b> := To_Lower (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#52_7">J</A>).<b>all</b>);
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#49_21">Set</A> = <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#51_46">Mixed_Case</A> <b>then</b>
-               <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#52_7">J</A>)(<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#52_7">J</A>).<b>all</b>'First) :=
-                 To_Upper (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#52_7">J</A>)(<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#52_7">J</A>).<b>all</b>'First));
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#48_21">Set</A> /= <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#50_34">Upper_Case</A> <b>then</b>
+            <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">J</A>).<b>all</b> := To_Lower (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">J</A>).<b>all</b>);
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#48_21">Set</A> = <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#50_46">Mixed_Case</A> <b>then</b>
+               <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">J</A>)(<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">J</A>).<b>all</b>'First) :=
+                 To_Upper (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">J</A>)(<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>.Names (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">J</A>).<b>all</b>'First));
             <b>end</b> <b>if</b>;
          <b>end</b> <b>if</b>;
-         <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#52_7">J</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#52_7">J</A> + 1;
+         <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">J</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">J</A> + 1;
       <b>end</b> <b>loop</b>;
 
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_13">Create</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#51_7">I</A>, True);
-   <b>end</b> Create;
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_13">Create</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#50_7">I</A>, True);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#48_13">Create</A><A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#48_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#54_13">Value</A><FONT COLOR=red><A NAME="74_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#54_20">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                   <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#55_20">Buf</A> : <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#53_13">Value</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#53_20">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                   <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#54_20">Buf</A> : <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A>'Value (<A HREF="terminal_interface-curses-forms__ads.htm#371_13">Get_Buffer</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#54_20">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#55_20">Buf</A>));
-   <b>end</b> Value;
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A>'Value (<A HREF="terminal_interface-curses-forms__ads.htm#370_13">Get_Buffer</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#53_20">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#54_20">Buf</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#53_13">Value</A><A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#53_13">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#44_65">Ada</A><A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#44_65">;</A>
+</PRE></BODY></HTML>
index c1028268b33bc30ea0a6bebce937c71d7dd240a9..73b8ec10a12f3a2681a0255939466c92c990d2aa 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="43_9">T</A></FONT> <b>is</b> (&lt;&gt;);
+   <b>type</b> <FONT COLOR=red><A NAME="42_9">T</A></FONT> <b>is</b> (&lt;&gt;);
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#44_53">Enumeration</A>.<FONT COLOR=red><A NAME="45_65">Ada</A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">Enumeration</A>.<FONT COLOR=red><A NAME="44_65">Ada</A></FONT> <b>is</b>
    <b>pragma</b> Preelaborate
-     (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#44_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#45_65">Ada</A>);
+     (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#44_65">Ada</A>);
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#46_13">Create</A><FONT COLOR=red><A NAME="49_13"></A></FONT> (<FONT COLOR=red><A NAME="49_21">Set</A></FONT>            : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#51_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#51_46">Mixed_Case</A>;
-                    <FONT COLOR=red><A NAME="50_21">Case_Sensitive</A></FONT> : Boolean  := False;
-                    <FONT COLOR=red><A NAME="51_21">Must_Be_Unique</A></FONT> : Boolean  := False)
-                    <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="48_13">Create</A></FONT> (<FONT COLOR=red><A NAME="48_21">Set</A></FONT>            : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#50_46">Mixed_Case</A>;
+                    <FONT COLOR=red><A NAME="49_21">Case_Sensitive</A></FONT> : Boolean  := False;
+                    <FONT COLOR=red><A NAME="50_21">Must_Be_Unique</A></FONT> : Boolean  := False)
+                    <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#62_9">Enumeration_Field</A>;
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#74_13">Value</A><FONT COLOR=red><A NAME="54_13"></A></FONT> (<FONT COLOR=red><A NAME="54_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                   <FONT COLOR=red><A NAME="55_20">Buf</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#43_9">T</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="53_13">Value</A></FONT> (<FONT COLOR=red><A NAME="53_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                   <FONT COLOR=red><A NAME="54_20">Buf</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#42_9">T</A>;
    <FONT COLOR=green><EM>--  Translate the content of the fields buffer - indicated by the</EM></FONT>
    <FONT COLOR=green><EM>--  buffer number - into an enumeration value. If the buffer is empty</EM></FONT>
    <FONT COLOR=green><EM>--  or the content is invalid, a Constraint_Error is raises.</EM></FONT>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#44_65">Ada</A><A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#44_65">;</A>
+</PRE></BODY></HTML>
index c737619532e9388fb2db6291c2703fa3a0c3fbc7..41d7ee74f9aff0cf7f7a8248add3d6a5adb45879 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.6 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.7 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Unchecked_Deallocation;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#44_53">Enumeration</A><FONT COLOR=red><A NAME="47_58"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">Enumeration</A> <b>is</b>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_13">Create</A><FONT COLOR=red><A NAME="49_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_21">Info</A>               : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#56_9">Enumeration_Info</A>;
-                    <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#66_21">Auto_Release_Names</A> : Boolean := False)
-                    <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_13">Create</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_21">Info</A>               : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#55_9">Enumeration_Info</A>;
+                    <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_21">Auto_Release_Names</A> : Boolean := False)
+                    <b>return</b> Enumeration_Field
    <b>is</b>
-      <b>procedure</b> <FONT COLOR=red><A NAME="53_17">Release_String</A></FONT> <b>is</b>
+      <b>procedure</b> <FONT COLOR=red><A NAME="52_17">Release_String</A></FONT> <b>is</b>
         <b>new</b> Ada.Unchecked_Deallocation (String,
-                                        <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#48_9">String_Access</A>);
-      <FONT COLOR=red><A NAME="56_7">E</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A>;
-      <FONT COLOR=red><A NAME="57_7">L</A></FONT> : <b>constant</b> size_t := 1 + size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#56_27">C</A>);
-      <FONT COLOR=red><A NAME="58_7">S</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#48_9">String_Access</A>;
+                                        <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#47_9">String_Access</A>);
+      <FONT COLOR=red><A NAME="55_7">E</A></FONT> : Enumeration_Field;
+      <FONT COLOR=red><A NAME="56_7">L</A></FONT> : <b>constant</b> size_t := 1 + size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#55_27">C</A>);
+      <FONT COLOR=red><A NAME="57_7">S</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#47_9">String_Access</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">Case_Sensitive</A>       := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#59_10">Case_Sensitive</A>;
-      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">Match_Must_Be_Unique</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#60_10">Match_Must_Be_Unique</A>;
-      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">Arr</A> := <b>new</b> chars_ptr_array (size_t (1) .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#57_7">L</A>);
-      <b>for</b> <FONT COLOR=red><A NAME="63_11">I</A></FONT> <b>in</b> 1 .. Positive (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#57_7">L</A> - 1) <b>loop</b>
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#58_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#63_11">I</A>) = <b>null</b> <b>then</b>
-            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#93_10">Case_Sensitive</A>       := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#58_10">Case_Sensitive</A>;
+      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#94_10">Match_Must_Be_Unique</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#59_10">Match_Must_Be_Unique</A>;
+      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#95_10">Arr</A> := <b>new</b> chars_ptr_array (size_t (1) .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">L</A>);
+      <b>for</b> <FONT COLOR=red><A NAME="62_11">I</A></FONT> <b>in</b> 1 .. Positive (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">L</A> - 1) <b>loop</b>
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#62_11">I</A>) = <b>null</b> <b>then</b>
+            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
          <b>end</b> <b>if</b>;
-         <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#96_10">Arr</A> (size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#63_11">I</A>)) := New_String (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#58_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#63_11">I</A>).<b>all</b>);
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#66_21">Auto_Release_Names</A> <b>then</b>
-            <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#58_7">S</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#58_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#63_11">I</A>);
-            <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#53_17">Release_String</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#58_7">S</A>);
+         <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#95_10">Arr</A> (size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#62_11">I</A>)) := New_String (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#62_11">I</A>).<b>all</b>);
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_21">Auto_Release_Names</A> <b>then</b>
+            <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#57_7">S</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#62_11">I</A>);
+            <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#52_17">Release_String</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#57_7">S</A>);
          <b>end</b> <b>if</b>;
       <b>end</b> <b>loop</b>;
-      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#96_10">Arr</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#57_7">L</A>) := Null_Ptr;
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">E</A>;
-   <b>end</b> Create;
+      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#95_10">Arr</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#56_7">L</A>) := Null_Ptr;
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#55_7">E</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_13">Create</A><A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#78_14">Release</A><FONT COLOR=red><A NAME="77_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#78_23">Enum</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#77_14">Release</A><FONT COLOR=red><A NAME="76_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#77_23">Enum</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#59_10">Enumeration_Field</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="79_7">I</A></FONT> : size_t := 0;
-      <FONT COLOR=red><A NAME="80_7">P</A></FONT> : chars_ptr;
+      <FONT COLOR=red><A NAME="78_7">I</A></FONT> : size_t := 0;
+      <FONT COLOR=red><A NAME="79_7">P</A></FONT> : chars_ptr;
    <b>begin</b>
       <b>loop</b>
-         <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#80_7">P</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#78_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#96_10">Arr</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#79_7">I</A>);
-         <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#80_7">P</A> = Null_Ptr;
-         Free (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#80_7">P</A>);
-         <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#78_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#96_10">Arr</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#79_7">I</A>) := Null_Ptr;
-         <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#79_7">I</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#79_7">I</A> + 1;
+         <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#79_7">P</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#77_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#95_10">Arr</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#78_7">I</A>);
+         <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#79_7">P</A> = Null_Ptr;
+         Free (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#79_7">P</A>);
+         <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#77_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#95_10">Arr</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#78_7">I</A>) := Null_Ptr;
+         <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#78_7">I</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#78_7">I</A> + 1;
       <b>end</b> <b>loop</b>;
-      <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#78_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#96_10">Arr</A> := <b>null</b>;
-   <b>end</b> Release;
+      <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#77_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#95_10">Arr</A> := <b>null</b>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#77_14">Release</A><A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#77_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_14">Set_Field_Type</A><FONT COLOR=red><A NAME="92_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#86_30">Typ</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#84_14">Set_Field_Type</A><FONT COLOR=red><A NAME="91_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#84_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_30">Typ</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#59_10">Enumeration_Field</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="95_7">C_Enum_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#95_7">C_Enum_Type</A>, "TYPE_ENUM");
+      <FONT COLOR=red><A NAME="94_7">C_Enum_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#94_7">C_Enum_Type</A>, "TYPE_ENUM");
 
-      <b>function</b> <FONT COLOR=red><A NAME="98_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="98_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_30">Fld</A>;
-                             <FONT COLOR=red><A NAME="99_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#95_7">C_Enum_Type</A>;
-                             <FONT COLOR=red><A NAME="100_30">Arg1</A></FONT> : chars_ptr_array;
-                             <FONT COLOR=red><A NAME="101_30">Arg2</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-                             <FONT COLOR=red><A NAME="102_30">Arg3</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#98_16">Set_Fld_Type</A>, "set_field_type");
+      <b>function</b> <FONT COLOR=red><A NAME="97_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="97_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#84_30">Fld</A>;
+                             <FONT COLOR=red><A NAME="98_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#94_7">C_Enum_Type</A>;
+                             <FONT COLOR=red><A NAME="99_30">Arg1</A></FONT> : chars_ptr_array;
+                             <FONT COLOR=red><A NAME="100_30">Arg2</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+                             <FONT COLOR=red><A NAME="101_30">Arg3</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#97_16">Set_Fld_Type</A>, "set_field_type");
 
-      <FONT COLOR=red><A NAME="105_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="104_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#86_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#96_10">Arr</A> = <b>null</b> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#95_10">Arr</A> = <b>null</b> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#105_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#98_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#100_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#86_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#96_10">Arr</A>.<b>all</b>,
-                           <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#101_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#86_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#94_10">Case_Sensitive</A>)),
-                           <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#102_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A> (Boolean'Pos
-                                          (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#86_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#95_10">Match_Must_Be_Unique</A>)));
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#105_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#105_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#104_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#97_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#99_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#95_10">Arr</A>.<b>all</b>,
+                           <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#100_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#93_10">Case_Sensitive</A>)),
+                           <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#101_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A> (Boolean'Pos
+                                          (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#94_10">Match_Must_Be_Unique</A>)));
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#104_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#104_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#86_30">Typ</A>, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#150_13">C_Choice_Router</A>);
-   <b>end</b> Set_Field_Type;
+      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#84_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#85_30">Typ</A>, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#149_13">C_Choice_Router</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#84_14">Set_Field_Type</A><A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#84_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.Enumeration;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">Enumeration</A><A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">;</A>
+</PRE></BODY></HTML>
index c7d2901c151688d58ce0a1775522183aa89cf0ac..1c8eae3e6b864c49669435baac5921e10b3ac64c 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#47_58">Enumeration</A><FONT COLOR=red><A NAME="44_53"></A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<FONT COLOR=red><A NAME="43_53">Enumeration</A></FONT> <b>is</b>
    <b>pragma</b> Preelaborate
-     (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#44_53">Enumeration</A>);
+     (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">Enumeration</A>);
 
-   <b>type</b> <FONT COLOR=red><A NAME="48_9">String_Access</A></FONT> <b>is</b> <b>access</b> String;
+   <b>type</b> <FONT COLOR=red><A NAME="47_9">String_Access</A></FONT> <b>is</b> <b>access</b> String;
 
    <FONT COLOR=green><EM>--  Type_Set is used by the child package Ada</EM></FONT>
-   <b>type</b> <FONT COLOR=red><A NAME="51_9">Type_Set</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="51_22">Lower_Case</A></FONT>, <FONT COLOR=red><A NAME="51_34">Upper_Case</A></FONT>, <FONT COLOR=red><A NAME="51_46">Mixed_Case</A></FONT>);
+   <b>type</b> <FONT COLOR=red><A NAME="50_9">Type_Set</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="50_22">Lower_Case</A></FONT>, <FONT COLOR=red><A NAME="50_34">Upper_Case</A></FONT>, <FONT COLOR=red><A NAME="50_46">Mixed_Case</A></FONT>);
 
-   <b>type</b> <FONT COLOR=red><A NAME="53_9">Enum_Array</A></FONT> <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;)
-     <b>of</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#48_9">String_Access</A>;
+   <b>type</b> <FONT COLOR=red><A NAME="52_9">Enum_Array</A></FONT> <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;)
+     <b>of</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#47_9">String_Access</A>;
 
-   <b>type</b> <FONT COLOR=red><A NAME="56_9">Enumeration_Info</A></FONT> (<FONT COLOR=red><A NAME="56_27">C</A></FONT> : Positive) <b>is</b>
+   <b>type</b> <FONT COLOR=red><A NAME="55_9">Enumeration_Info</A></FONT> (<FONT COLOR=red><A NAME="55_27">C</A></FONT> : Positive) <b>is</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="58_10">Names</A></FONT>                : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#53_9">Enum_Array</A> (1 .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#56_27">C</A>);
-         <FONT COLOR=red><A NAME="59_10">Case_Sensitive</A></FONT>       : Boolean := False;
-         <FONT COLOR=red><A NAME="60_10">Match_Must_Be_Unique</A></FONT> : Boolean := False;
-      <b>end</b> <b>record</b>;
+         <FONT COLOR=red><A NAME="57_10">Names</A></FONT>                : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#52_9">Enum_Array</A> (1 .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#55_27">C</A>);
+         <FONT COLOR=red><A NAME="58_10">Case_Sensitive</A></FONT>       : Boolean := False;
+         <FONT COLOR=red><A NAME="59_10">Match_Must_Be_Unique</A></FONT> : Boolean := False;
+      <b>end</b> <b>record</b><A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#55_9">;</A>
 
-   <b>type</b> <FONT COLOR=red><A NAME="63_9">Enumeration_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A> <b>with</b> <b>private</b>;
+   <b>type</b> Enumeration_Field <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A> <b>with</b> <b>private</b>;
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#49_13">Create</A><FONT COLOR=red><A NAME="65_13"></A></FONT> (<FONT COLOR=red><A NAME="65_21">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#56_9">Enumeration_Info</A>;
-                    <FONT COLOR=red><A NAME="66_21">Auto_Release_Names</A></FONT> : Boolean := False)
-                    <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="64_13">Create</A></FONT> (<FONT COLOR=red><A NAME="64_21">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#55_9">Enumeration_Info</A>;
+                    <FONT COLOR=red><A NAME="65_21">Auto_Release_Names</A></FONT> : Boolean := False)
+                    <b>return</b> Enumeration_Field;
    <FONT COLOR=green><EM>--  Make an fieldtype from the info. Enumerations are special, because</EM></FONT>
    <FONT COLOR=green><EM>--  they normally don't copy the enum values into a private store, so</EM></FONT>
    <FONT COLOR=green><EM>--  we have to care for the lifetime of the info we provide.</EM></FONT>
    <FONT COLOR=green><EM>--  The Auto_Release_Names flag may be used to automatically releases</EM></FONT>
    <FONT COLOR=green><EM>--  the strings in the Names array of the Enumeration_Info.</EM></FONT>
 
-   <b>function</b> <FONT COLOR=red><A NAME="74_13">Make_Enumeration_Type</A></FONT> (<FONT COLOR=red><A NAME="74_36">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#56_9">Enumeration_Info</A>;
-                                   <FONT COLOR=red><A NAME="75_36">Auto_Release_Names</A></FONT> : Boolean := False)
-                                   <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A> <b>renames</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#65_13">Create</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="73_13">Make_Enumeration_Type</A></FONT> (<FONT COLOR=red><A NAME="73_36">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#55_9">Enumeration_Info</A>;
+                                   <FONT COLOR=red><A NAME="74_36">Auto_Release_Names</A></FONT> : Boolean := False)
+                                   <b>return</b> Enumeration_Field <b>renames</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#64_13">Create</A>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#77_14">Release</A><FONT COLOR=red><A NAME="78_14"></A></FONT> (<FONT COLOR=red><A NAME="78_23">Enum</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#76_14">Release</A><FONT COLOR=red><A NAME="77_14"></A></FONT> (<FONT COLOR=red><A NAME="77_23">Enum</A></FONT> : <b>in</b> <b>out</b> Enumeration_Field);
    <FONT COLOR=green><EM>--  But we may want to release the field to release the memory allocated</EM></FONT>
    <FONT COLOR=green><EM>--  by it internally. After that the Enumeration field is no longer usable.</EM></FONT>
 
    <FONT COLOR=green><EM>--  The next type defintions are all ncurses extensions. They are typically</EM></FONT>
    <FONT COLOR=green><EM>--  not available in other curses implementations.</EM></FONT>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#92_14">Set_Field_Type</A><FONT COLOR=red><A NAME="85_14"></A></FONT> (<FONT COLOR=red><A NAME="85_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="86_30">Typ</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#91_14">Set_Field_Type</A><FONT COLOR=red><A NAME="84_14"></A></FONT> (<FONT COLOR=red><A NAME="84_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="85_30">Typ</A></FONT> : <b>in</b> Enumeration_Field);
    <b>pragma</b> Inline (Set_Field_Type);
 
 <b>private</b>
-   <b>type</b> <FONT COLOR=red><A NAME="90_9">CPA_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings.chars_ptr_array;
+   <b>type</b> <FONT COLOR=red><A NAME="89_9">CPA_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings.chars_ptr_array;
 
-   <b>type</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#63_9">Enumeration_Field</A> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A> <b>with</b>
+   <b>type</b> Enumeration_Field <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A> <b>with</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="94_10">Case_Sensitive</A></FONT>       : Boolean := False;
-         <FONT COLOR=red><A NAME="95_10">Match_Must_Be_Unique</A></FONT> : Boolean := False;
-         <FONT COLOR=red><A NAME="96_10">Arr</A></FONT>                  : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#90_9">CPA_Access</A> := <b>null</b>;
+         <FONT COLOR=red><A NAME="93_10">Case_Sensitive</A></FONT>       : Boolean := False;
+         <FONT COLOR=red><A NAME="94_10">Match_Must_Be_Unique</A></FONT> : Boolean := False;
+         <FONT COLOR=red><A NAME="95_10">Arr</A></FONT>                  : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#89_9">CPA_Access</A> := <b>null</b>;
       <b>end</b> <b>record</b>;
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.Enumeration;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">Enumeration</A><A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#43_53">;</A>
+</PRE></BODY></HTML>
index 19df103ad8e87cbce39122f2b62672f8b85b9bed..89814d5f3886d7f3b564f8efd639e98dffc76444 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.7 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.8 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#42_53">IntField</A><FONT COLOR=red><A NAME="45_58"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#41_53">IntField</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#52_14">Set_Field_Type</A><FONT COLOR=red><A NAME="49_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#52_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#53_30">Typ</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#45_9">Integer_Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#51_14">Set_Field_Type</A><FONT COLOR=red><A NAME="48_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#51_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#52_30">Typ</A> : <b>in</b> Integer_Field)
    <b>is</b>
-      <FONT COLOR=red><A NAME="52_7">C_Integer_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#52_7">C_Integer_Field_Type</A>, "TYPE_INTEGER");
+      <FONT COLOR=red><A NAME="51_7">C_Integer_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#51_7">C_Integer_Field_Type</A>, "TYPE_INTEGER");
 
-      <b>function</b> <FONT COLOR=red><A NAME="55_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="55_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#52_30">Fld</A>;
-                             <FONT COLOR=red><A NAME="56_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#52_7">C_Integer_Field_Type</A>;
-                             <FONT COLOR=red><A NAME="57_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-                             <FONT COLOR=red><A NAME="58_30">Arg2</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#58_12">C_Long_Int</A>;
-                             <FONT COLOR=red><A NAME="59_30">Arg3</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#58_12">C_Long_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#55_16">Set_Fld_Type</A>, "set_field_type");
+      <b>function</b> <FONT COLOR=red><A NAME="54_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="54_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#51_30">Fld</A>;
+                             <FONT COLOR=red><A NAME="55_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#51_7">C_Integer_Field_Type</A>;
+                             <FONT COLOR=red><A NAME="56_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+                             <FONT COLOR=red><A NAME="57_30">Arg2</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Long_Int</A>;
+                             <FONT COLOR=red><A NAME="58_30">Arg3</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Long_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#54_16">Set_Fld_Type</A>, "set_field_type");
 
-      <FONT COLOR=red><A NAME="62_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="61_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#62_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#55_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#57_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#53_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#47_10">Precision</A>),
-                           <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#58_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#58_12">C_Long_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#53_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#48_10">Lower_Limit</A>),
-                           <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#59_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#58_12">C_Long_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#53_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#49_10">Upper_Limit</A>));
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#62_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#62_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#61_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#54_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#56_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#46_10">Precision</A>),
+                           <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#57_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Long_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#47_10">Lower_Limit</A>),
+                           <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#58_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Long_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#48_10">Upper_Limit</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#61_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#61_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#52_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#53_30">Typ</A>);
-   <b>end</b> Set_Field_Type;
+      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#52_30">Typ</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#51_14">Set_Field_Type</A><A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#51_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.IntField;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#41_53">IntField</A><A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index fa224d7e5f0e2071aa3e67b3f914ac179d7be15d..b3a8bd5d54f310d3322d58f96533dc5a9f3cfc0f 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#45_58">IntField</A><FONT COLOR=red><A NAME="42_53"></A></FONT> <b>is</b>
-   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#42_53">IntField</A>);
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<FONT COLOR=red><A NAME="41_53">IntField</A></FONT> <b>is</b>
+   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#41_53">IntField</A>);
 
-   <b>type</b> <FONT COLOR=red><A NAME="45_9">Integer_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A> <b>with</b>
+   <b>type</b> Integer_Field <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A> <b>with</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="47_10">Precision</A></FONT>   : Natural;
-         <FONT COLOR=red><A NAME="48_10">Lower_Limit</A></FONT> : Integer;
-         <FONT COLOR=red><A NAME="49_10">Upper_Limit</A></FONT> : Integer;
+         <FONT COLOR=red><A NAME="46_10">Precision</A></FONT>   : Natural;
+         <FONT COLOR=red><A NAME="47_10">Lower_Limit</A></FONT> : Integer;
+         <FONT COLOR=red><A NAME="48_10">Upper_Limit</A></FONT> : Integer;
       <b>end</b> <b>record</b>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#49_14">Set_Field_Type</A><FONT COLOR=red><A NAME="52_14"></A></FONT> (<FONT COLOR=red><A NAME="52_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="53_30">Typ</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#45_9">Integer_Field</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#48_14">Set_Field_Type</A><FONT COLOR=red><A NAME="51_14"></A></FONT> (<FONT COLOR=red><A NAME="51_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="52_30">Typ</A></FONT> : <b>in</b> Integer_Field);
    <b>pragma</b> Inline (Set_Field_Type);
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.IntField;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#41_53">IntField</A><A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index aa09c515c4cca973c215958a5f27b410d683da26..775005dfaf2bb48aff928c180208d475d66d6b3e 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.7 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.8 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#42_53">IPV4_Address</A><FONT COLOR=red><A NAME="45_58"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#41_53">IPV4_Address</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#48_14">Set_Field_Type</A><FONT COLOR=red><A NAME="49_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#48_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#49_30">Typ</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#46_9">Internet_V4_Address_Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#47_14">Set_Field_Type</A><FONT COLOR=red><A NAME="48_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#47_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#48_30">Typ</A> : <b>in</b> Internet_V4_Address_Field)
    <b>is</b>
-      <FONT COLOR=red><A NAME="52_7">C_IPV4_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#52_7">C_IPV4_Field_Type</A>, "TYPE_IPV4");
+      <FONT COLOR=red><A NAME="51_7">C_IPV4_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#51_7">C_IPV4_Field_Type</A>, "TYPE_IPV4");
 
-      <b>function</b> <FONT COLOR=red><A NAME="55_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="55_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#48_30">Fld</A>;
-                             <FONT COLOR=red><A NAME="56_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#52_7">C_IPV4_Field_Type</A>)
-                             <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#55_16">Set_Fld_Type</A>, "set_field_type");
+      <b>function</b> <FONT COLOR=red><A NAME="54_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="54_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#47_30">Fld</A>;
+                             <FONT COLOR=red><A NAME="55_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#51_7">C_IPV4_Field_Type</A>)
+                             <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#54_16">Set_Fld_Type</A>, "set_field_type");
 
-      <FONT COLOR=red><A NAME="60_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="59_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#60_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#55_16">Set_Fld_Type</A>;
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#60_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#60_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#59_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#54_16">Set_Fld_Type</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#59_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#59_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#48_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#49_30">Typ</A>);
-   <b>end</b> Set_Field_Type;
+      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#47_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#48_30">Typ</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#47_14">Set_Field_Type</A><A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#47_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#41_53">IPV4_Address</A><A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index 04f89d70ba5a03389ac46067c30bbff6c2cac226..2e826d5d0b96df3da4fee15cf409fafa57fd5e6f 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#45_58">IPV4_Address</A><FONT COLOR=red><A NAME="42_53"></A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<FONT COLOR=red><A NAME="41_53">IPV4_Address</A></FONT> <b>is</b>
    <b>pragma</b> Preelaborate
-     (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#42_53">IPV4_Address</A>);
+     (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#41_53">IPV4_Address</A>);
 
-   <b>type</b> <FONT COLOR=red><A NAME="46_9">Internet_V4_Address_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
+   <b>type</b> Internet_V4_Address_Field <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#49_14">Set_Field_Type</A><FONT COLOR=red><A NAME="48_14"></A></FONT> (<FONT COLOR=red><A NAME="48_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="49_30">Typ</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#46_9">Internet_V4_Address_Field</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#48_14">Set_Field_Type</A><FONT COLOR=red><A NAME="47_14"></A></FONT> (<FONT COLOR=red><A NAME="47_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="48_30">Typ</A></FONT> : <b>in</b> Internet_V4_Address_Field);
    <b>pragma</b> Inline (Set_Field_Type);
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#41_53">IPV4_Address</A><A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index d3671e5f8d41f1706457fb9b5957fdb5c8bab1b2..96f96f2c24c9fbd5ce8e112d7925fa99658705b5 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.8 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#42_53">Numeric</A><FONT COLOR=red><A NAME="45_58"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#41_53">Numeric</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#52_14">Set_Field_Type</A><FONT COLOR=red><A NAME="49_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#52_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#53_30">Typ</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#45_9">Numeric_Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#51_14">Set_Field_Type</A><FONT COLOR=red><A NAME="48_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#51_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#52_30">Typ</A> : <b>in</b> Numeric_Field)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="52_12">Double</A></FONT> <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.double;
+      <b>type</b> Double <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.double;
 
-      <FONT COLOR=red><A NAME="54_7">C_Numeric_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#54_7">C_Numeric_Field_Type</A>, "TYPE_NUMERIC");
+      <FONT COLOR=red><A NAME="53_7">C_Numeric_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#53_7">C_Numeric_Field_Type</A>, "TYPE_NUMERIC");
 
-      <b>function</b> <FONT COLOR=red><A NAME="57_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="57_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#52_30">Fld</A>;
-                             <FONT COLOR=red><A NAME="58_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#54_7">C_Numeric_Field_Type</A>;
-                             <FONT COLOR=red><A NAME="59_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-                             <FONT COLOR=red><A NAME="60_30">Arg2</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#52_12">Double</A>;
-                             <FONT COLOR=red><A NAME="61_30">Arg3</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#52_12">Double</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#57_16">Set_Fld_Type</A>, "set_field_type");
+      <b>function</b> <FONT COLOR=red><A NAME="56_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="56_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#51_30">Fld</A>;
+                             <FONT COLOR=red><A NAME="57_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#53_7">C_Numeric_Field_Type</A>;
+                             <FONT COLOR=red><A NAME="58_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+                             <FONT COLOR=red><A NAME="59_30">Arg2</A></FONT> : Double;
+                             <FONT COLOR=red><A NAME="60_30">Arg3</A></FONT> : Double) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#56_16">Set_Fld_Type</A>, "set_field_type");
 
-      <FONT COLOR=red><A NAME="64_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="63_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#64_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#57_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#59_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#53_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#47_10">Precision</A>),
-                           <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#60_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#52_12">Double</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#53_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#48_10">Lower_Limit</A>),
-                           <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#61_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#52_12">Double</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#53_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#49_10">Upper_Limit</A>));
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#64_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#64_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#63_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#56_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#58_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#46_10">Precision</A>),
+                           <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#59_30">Arg2</A> =&gt; Double (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#47_10">Lower_Limit</A>),
+                           <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#60_30">Arg3</A> =&gt; Double (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#48_10">Upper_Limit</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#63_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#63_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#52_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#53_30">Typ</A>);
-   <b>end</b> Set_Field_Type;
+      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#52_30">Typ</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#51_14">Set_Field_Type</A><A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#51_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.Numeric;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#41_53">Numeric</A><A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index f44d8c70c030167ac74074a7f66af013ac203b82..00749b489355da34bfda423c5a45b8c7fdf65015 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#45_58">Numeric</A><FONT COLOR=red><A NAME="42_53"></A></FONT> <b>is</b>
-   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#42_53">Numeric</A>);
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<FONT COLOR=red><A NAME="41_53">Numeric</A></FONT> <b>is</b>
+   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#41_53">Numeric</A>);
 
-   <b>type</b> <FONT COLOR=red><A NAME="45_9">Numeric_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A> <b>with</b>
+   <b>type</b> Numeric_Field <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A> <b>with</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="47_10">Precision</A></FONT>   : Natural;
-         <FONT COLOR=red><A NAME="48_10">Lower_Limit</A></FONT> : Float;
-         <FONT COLOR=red><A NAME="49_10">Upper_Limit</A></FONT> : Float;
+         <FONT COLOR=red><A NAME="46_10">Precision</A></FONT>   : Natural;
+         <FONT COLOR=red><A NAME="47_10">Lower_Limit</A></FONT> : Float;
+         <FONT COLOR=red><A NAME="48_10">Upper_Limit</A></FONT> : Float;
       <b>end</b> <b>record</b>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#49_14">Set_Field_Type</A><FONT COLOR=red><A NAME="52_14"></A></FONT> (<FONT COLOR=red><A NAME="52_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="53_30">Typ</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#45_9">Numeric_Field</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#48_14">Set_Field_Type</A><FONT COLOR=red><A NAME="51_14"></A></FONT> (<FONT COLOR=red><A NAME="51_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="52_30">Typ</A></FONT> : <b>in</b> Numeric_Field);
    <b>pragma</b> Inline (Set_Field_Type);
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.Numeric;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#41_53">Numeric</A><A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index 2f39185f63913ca065834fda36c01702270c2481..9c1d534f703f3873d16fc1e662a2ad342473783a 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.7 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.8 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#42_53">RegExp</A><FONT COLOR=red><A NAME="45_58"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#41_53">RegExp</A> <b>is</b>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#52_14">Set_Field_Type</A><FONT COLOR=red><A NAME="47_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#52_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#53_30">Typ</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#47_9">Regular_Expression_Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#51_14">Set_Field_Type</A><FONT COLOR=red><A NAME="46_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#51_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#52_30">Typ</A> : <b>in</b> Regular_Expression_Field)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="50_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
+      <b>type</b> <FONT COLOR=red><A NAME="49_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
 
-      <FONT COLOR=red><A NAME="52_7">C_Regexp_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#52_7">C_Regexp_Field_Type</A>, "TYPE_REGEXP");
+      <FONT COLOR=red><A NAME="51_7">C_Regexp_Field_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#51_7">C_Regexp_Field_Type</A>, "TYPE_REGEXP");
 
-      <b>function</b> <FONT COLOR=red><A NAME="55_16">Set_Ftyp</A></FONT> (<FONT COLOR=red><A NAME="55_26">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#52_30">Fld</A>;
-                         <FONT COLOR=red><A NAME="56_26">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#52_7">C_Regexp_Field_Type</A>;
-                         <FONT COLOR=red><A NAME="57_26">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#50_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#55_16">Set_Ftyp</A>, "set_field_type");
+      <b>function</b> <FONT COLOR=red><A NAME="54_16">Set_Ftyp</A></FONT> (<FONT COLOR=red><A NAME="54_26">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#51_30">Fld</A>;
+                         <FONT COLOR=red><A NAME="55_26">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#51_7">C_Regexp_Field_Type</A>;
+                         <FONT COLOR=red><A NAME="56_26">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#49_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#54_16">Set_Ftyp</A>, "set_field_type");
 
-      <FONT COLOR=red><A NAME="60_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#53_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#49_10">Regular_Expression</A>.<b>all</b>'Length);
-      <FONT COLOR=red><A NAME="61_7">Len</A></FONT> : size_t;
-      <FONT COLOR=red><A NAME="62_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="59_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#48_10">Regular_Expression</A>.<b>all</b>'Length);
+      <FONT COLOR=red><A NAME="60_7">Len</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="61_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#53_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#49_10">Regular_Expression</A>.<b>all</b>, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#60_7">Txt</A>, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#61_7">Len</A>);
-      <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#62_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#55_16">Set_Ftyp</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#57_26">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#60_7">Txt</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#60_7">Txt</A>'First)'<b>Access</b>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#62_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#62_7">Res</A>);
+      To_C (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#48_10">Regular_Expression</A>.<b>all</b>, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#59_7">Txt</A>, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#60_7">Len</A>);
+      <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#61_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#54_16">Set_Ftyp</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#56_26">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#59_7">Txt</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#59_7">Txt</A>'First)'<b>Access</b>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#61_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#61_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#52_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#53_30">Typ</A>);
-   <b>end</b> Set_Field_Type;
+      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#52_30">Typ</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#51_14">Set_Field_Type</A><A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#51_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.RegExp;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#41_53">RegExp</A><A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index 41829d94f29ca44fbc3844f0a735f93979438eb0..e52f0400590efe2792768d523e38660a585c1351 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#45_58">RegExp</A><FONT COLOR=red><A NAME="42_53"></A></FONT> <b>is</b>
-   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#42_53">RegExp</A>);
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<FONT COLOR=red><A NAME="41_53">RegExp</A></FONT> <b>is</b>
+   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#41_53">RegExp</A>);
 
-   <b>type</b> <FONT COLOR=red><A NAME="45_9">String_Access</A></FONT> <b>is</b> <b>access</b> String;
+   <b>type</b> <FONT COLOR=red><A NAME="44_9">String_Access</A></FONT> <b>is</b> <b>access</b> String;
 
-   <b>type</b> <FONT COLOR=red><A NAME="47_9">Regular_Expression_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A> <b>with</b>
+   <b>type</b> Regular_Expression_Field <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A> <b>with</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="49_10">Regular_Expression</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#45_9">String_Access</A>;
+         <FONT COLOR=red><A NAME="48_10">Regular_Expression</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#44_9">String_Access</A>;
       <b>end</b> <b>record</b>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#47_14">Set_Field_Type</A><FONT COLOR=red><A NAME="52_14"></A></FONT> (<FONT COLOR=red><A NAME="52_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="53_30">Typ</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#47_9">Regular_Expression_Field</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#46_14">Set_Field_Type</A><FONT COLOR=red><A NAME="51_14"></A></FONT> (<FONT COLOR=red><A NAME="51_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="52_30">Typ</A></FONT> : <b>in</b> Regular_Expression_Field);
    <b>pragma</b> Inline (Set_Field_Type);
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.RegExp;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#41_53">RegExp</A><A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#41_53">;</A>
+</PRE></BODY></HTML>
index 7b00744796a5ef6b0dc0d8f5bde57f03995d0021..e9123b004f83387d7e98d80bfef5edb87c020cf6 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Unchecked_Conversion;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#44_58">Choice</A><FONT COLOR=red><A NAME="46_63"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#43_58">Choice</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>function</b> <FONT COLOR=red><A NAME="50_13">To_Argument_Access</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion
-     (System.Address, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="49_13">To_Argument_Access</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion
+     (System.Address, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>);
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#83_13">Generic_Next</A><FONT COLOR=red><A NAME="53_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#83_27">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                          <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#84_27">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#49_12">C_Int</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#82_13">Generic_Next</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#82_27">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                          <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#83_27">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#48_12">C_Int</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="56_7">Result</A></FONT> : Boolean;
-      <FONT COLOR=red><A NAME="57_7">Udf</A></FONT>    : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#58_9">User_Defined_Field_Type_With_Choice_Access</A> :=
-        <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#58_9">User_Defined_Field_Type_With_Choice_Access</A>
-        (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#50_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#84_27">Usr</A>).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A>);
+      <FONT COLOR=red><A NAME="55_7">Result</A></FONT> : Boolean;
+      <FONT COLOR=red><A NAME="56_7">Udf</A></FONT>    : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#57_9">User_Defined_Field_Type_With_Choice_Access</A> :=
+        <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#57_9">User_Defined_Field_Type_With_Choice_Access</A>
+        (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#49_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#83_27">Usr</A>).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A>);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#56_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#61_13">Next</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#83_27">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#57_7">Udf</A>.<b>all</b>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#49_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#56_7">Result</A>));
-   <b>end</b> Generic_Next;
+      <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#55_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#60_13">Next</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#82_27">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#56_7">Udf</A>.<b>all</b>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#48_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#55_7">Result</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#82_13">Generic_Next</A><A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#82_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#90_13">Generic_Prev</A><FONT COLOR=red><A NAME="65_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#90_27">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                          <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#91_27">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#49_12">C_Int</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#89_13">Generic_Prev</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#89_27">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                          <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#90_27">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#48_12">C_Int</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="68_7">Result</A></FONT> : Boolean;
-      <FONT COLOR=red><A NAME="69_7">Udf</A></FONT>    : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#58_9">User_Defined_Field_Type_With_Choice_Access</A> :=
-        <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#58_9">User_Defined_Field_Type_With_Choice_Access</A>
-        (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#50_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#91_27">Usr</A>).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A>);
+      <FONT COLOR=red><A NAME="67_7">Result</A></FONT> : Boolean;
+      <FONT COLOR=red><A NAME="68_7">Udf</A></FONT>    : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#57_9">User_Defined_Field_Type_With_Choice_Access</A> :=
+        <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#57_9">User_Defined_Field_Type_With_Choice_Access</A>
+        (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#49_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#90_27">Usr</A>).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A>);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#68_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#68_13">Previous</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#90_27">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#69_7">Udf</A>.<b>all</b>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#49_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#68_7">Result</A>));
-   <b>end</b> Generic_Prev;
+      <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#67_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#67_13">Previous</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#89_27">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#68_7">Udf</A>.<b>all</b>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#48_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#67_7">Result</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#89_13">Generic_Prev</A><A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#89_13">;</A>
 
    <FONT COLOR=green><EM>--  -----------------------------------------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>--</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#81_13">C_Generic_Choice</A><FONT COLOR=red><A NAME="79_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#80_13">C_Generic_Choice</A> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="81_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-      <FONT COLOR=red><A NAME="82_7">T</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
+      <FONT COLOR=red><A NAME="80_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="81_7">T</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Generic_Choice</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A> <b>then</b>
-         <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#82_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#223_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#84_13">Generic_Field_Check</A>'<b>Access</b>,
-                             <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#91_13">Generic_Char_Check</A>'<b>Access</b>);
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#82_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A> <b>then</b>
-            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Choice</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A> <b>then</b>
+         <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#83_13">Generic_Field_Check</A>'<b>Access</b>,
+                             <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#90_13">Generic_Char_Check</A>'<b>Access</b>);
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A> <b>then</b>
+            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
          <b>else</b>
-            <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#228_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#82_7">T</A>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#163_13">Make_Arg</A>'<b>Access</b>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#168_13">Copy_Arg</A>'<b>Access</b>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#173_14">Free_Arg</A>'<b>Access</b>);
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-               <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">Res</A>);
+            <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#80_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">T</A>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#162_13">Make_Arg</A>'<b>Access</b>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_13">Copy_Arg</A>'<b>Access</b>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_14">Free_Arg</A>'<b>Access</b>);
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#80_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+               <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#80_7">Res</A>);
             <b>end</b> <b>if</b>;
 
-            <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#235_13">Set_Fieldtype_Choice</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#82_7">T</A>,
-                                         <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#83_13">Generic_Next</A>'<b>Access</b>,
-                                         <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#90_13">Generic_Prev</A>'<b>Access</b>);
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-               <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">Res</A>);
+            <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#80_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#234_13">Set_Fieldtype_Choice</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">T</A>,
+                                         <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#82_13">Generic_Next</A>'<b>Access</b>,
+                                         <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#89_13">Generic_Prev</A>'<b>Access</b>);
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#80_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+               <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#80_7">Res</A>);
             <b>end</b> <b>if</b>;
          <b>end</b> <b>if</b>;
-         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Generic_Choice</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#82_7">T</A>;
+         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Choice</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#81_7">T</A>;
       <b>end</b> <b>if</b>;
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Generic_Choice</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Generic_Choice</A>;
-   <b>end</b> C_Generic_Choice;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Choice</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Choice</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#80_13">C_Generic_Choice</A><A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#80_13">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.User.Choice;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#43_58">Choice</A><A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#43_58">;</A>
+</PRE></BODY></HTML>
index 081d8c6ea92f1680bdfbe977d3f715dabfa19d86..d9405fa6d2d3c1ac5d7ec7a8767a5f55dda4f4b3 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#46_63">Choice</A><FONT COLOR=red><A NAME="44_58"></A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">User</A>.<FONT COLOR=red><A NAME="43_58">Choice</A></FONT> <b>is</b>
    <b>pragma</b> Preelaborate
-     (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#44_58">Choice</A>);
+     (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#43_58">Choice</A>);
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
-   <b>subtype</b> <FONT COLOR=red><A NAME="49_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
+   <b>subtype</b> <FONT COLOR=red><A NAME="48_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>type</b> <FONT COLOR=red><A NAME="51_9">User_Defined_Field_Type_With_Choice</A></FONT> <b>is</b> <b>abstract</b> <b>new</b>
-     <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#49_9">User_Defined_Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
+   <b>type</b> User_Defined_Field_Type_With_Choice <b>is</b> <b>abstract</b> <b>new</b>
+     <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#48_9">User_Defined_Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
    <FONT COLOR=green><EM>--  This is the root of the mechanism we use to create field types in</EM></FONT>
    <FONT COLOR=green><EM>--  Ada95 that allow the prev/next mechanism. You should your own type</EM></FONT>
    <FONT COLOR=green><EM>--  derive from this one and implement the Field_Check, Character_Check</EM></FONT>
    <FONT COLOR=green><EM>--  Next and Previous functions for your own type.</EM></FONT>
 
-   <b>type</b> <FONT COLOR=red><A NAME="58_9">User_Defined_Field_Type_With_Choice_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b>
-     <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#51_9">User_Defined_Field_Type_With_Choice</A>'Class;
+   <b>type</b> <FONT COLOR=red><A NAME="57_9">User_Defined_Field_Type_With_Choice_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b>
+     User_Defined_Field_Type_With_Choice'Class;
 
-   <b>function</b> <FONT COLOR=red><A NAME="61_13">Next</A></FONT>
-     (<FONT COLOR=red><A NAME="62_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <FONT COLOR=red><A NAME="63_7">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#51_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean
+   <b>function</b> <FONT COLOR=red><A NAME="60_13">Next</A></FONT>
+     (<FONT COLOR=red><A NAME="61_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <FONT COLOR=red><A NAME="62_7">Typ</A></FONT> : User_Defined_Field_Type_With_Choice) <b>return</b> Boolean
       <b>is</b> <b>abstract</b>;
    <FONT COLOR=green><EM>--  If True is returned, the function successfully generated a next</EM></FONT>
    <FONT COLOR=green><EM>--  value into the fields buffer.</EM></FONT>
 
-   <b>function</b> <FONT COLOR=red><A NAME="68_13">Previous</A></FONT>
-     (<FONT COLOR=red><A NAME="69_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <FONT COLOR=red><A NAME="70_7">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#51_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean
+   <b>function</b> <FONT COLOR=red><A NAME="67_13">Previous</A></FONT>
+     (<FONT COLOR=red><A NAME="68_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <FONT COLOR=red><A NAME="69_7">Typ</A></FONT> : User_Defined_Field_Type_With_Choice) <b>return</b> Boolean
       <b>is</b> <b>abstract</b>;
    <FONT COLOR=green><EM>--  If True is returned, the function successfully generated a previous</EM></FONT>
    <FONT COLOR=green><EM>--  value into the fields buffer.</EM></FONT>
 <b>private</b>
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#79_13">C_Generic_Choice</A><FONT COLOR=red><A NAME="81_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="80_13">C_Generic_Choice</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#53_13">Generic_Next</A><FONT COLOR=red><A NAME="83_13"></A></FONT> (<FONT COLOR=red><A NAME="83_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                          <FONT COLOR=red><A NAME="84_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#49_12">C_Int</A>;
-   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#83_13">Generic_Next</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="82_13">Generic_Next</A></FONT> (<FONT COLOR=red><A NAME="82_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                          <FONT COLOR=red><A NAME="83_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#48_12">C_Int</A>;
+   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#82_13">Generic_Next</A>);
    <FONT COLOR=green><EM>--  This is the generic next Choice_Function for the low-level fieldtype</EM></FONT>
    <FONT COLOR=green><EM>--  representing all the User_Defined_Field_Type derivates. It routes</EM></FONT>
    <FONT COLOR=green><EM>--  the call to the Next implementation for the type.</EM></FONT>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#65_13">Generic_Prev</A><FONT COLOR=red><A NAME="90_13"></A></FONT> (<FONT COLOR=red><A NAME="90_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                          <FONT COLOR=red><A NAME="91_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#49_12">C_Int</A>;
-   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#90_13">Generic_Prev</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="89_13">Generic_Prev</A></FONT> (<FONT COLOR=red><A NAME="89_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                          <FONT COLOR=red><A NAME="90_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#48_12">C_Int</A>;
+   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#89_13">Generic_Prev</A>);
    <FONT COLOR=green><EM>--  This is the generic prev Choice_Function for the low-level fieldtype</EM></FONT>
    <FONT COLOR=green><EM>--  representing all the User_Defined_Field_Type derivates. It routes</EM></FONT>
    <FONT COLOR=green><EM>--  the call to the Previous implementation for the type.</EM></FONT>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.User.Choice;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#43_58">Choice</A><A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#43_58">;</A>
+</PRE></BODY></HTML>
index bbc6e1f896d741eb549a79594262f8a03156c6d0..3e9f1c71e24e62a8dacb32e34dfce5322789f770 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Unchecked_Conversion;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#44_53">User</A><FONT COLOR=red><A NAME="46_58"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">User</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#71_14">Set_Field_Type</A><FONT COLOR=red><A NAME="50_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#71_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#72_30">Typ</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#49_9">User_Defined_Field_Type</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#70_14">Set_Field_Type</A><FONT COLOR=red><A NAME="49_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#70_30">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#71_30">Typ</A> : <b>in</b> User_Defined_Field_Type)
    <b>is</b>
-      <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#64_16">Allocate_Arg</A><FONT COLOR=red><A NAME="53_16"></A></FONT> (<FONT COLOR=red><A NAME="53_30">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#49_9">User_Defined_Field_Type</A>'Class)
-                             <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="52_16">Allocate_Arg</A></FONT> (T : User_Defined_Field_Type'Class)
+                             <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>;
 
-      <b>function</b> <FONT COLOR=red><A NAME="56_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="56_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#71_30">Fld</A>;
-                             <FONT COLOR=red><A NAME="57_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#82_13">C_Generic_Type</A>;
-                             <FONT COLOR=red><A NAME="58_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>)
-                             <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#47_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#56_16">Set_Fld_Type</A>, "set_field_type");
+      <b>function</b> <FONT COLOR=red><A NAME="55_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="55_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#70_30">Fld</A>;
+                             <FONT COLOR=red><A NAME="56_30">Cft</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#81_13">C_Generic_Type</A>;
+                             <FONT COLOR=red><A NAME="57_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>)
+                             <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#55_16">Set_Fld_Type</A>, "set_field_type");
 
-      <FONT COLOR=red><A NAME="62_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="61_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
 
-      <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#53_16">Allocate_Arg</A><FONT COLOR=red><A NAME="64_16"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#53_30">T</A> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#49_9">User_Defined_Field_Type</A>'Class)
-                             <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>
+      <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#52_16">Allocate_Arg</A> (T : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">User_Defined_Field_Type</A>'Class)
+                             <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>
       <b>is</b>
-         <FONT COLOR=red><A NAME="67_10">Ptr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#64_9">Field_Type_Access</A> := <b>new</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#49_9">User_Defined_Field_Type</A>'Class'(<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#53_30">T</A>);
+         <FONT COLOR=red><A NAME="66_10">Ptr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#63_9">Field_Type_Access</A> := <b>new</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">User_Defined_Field_Type</A>'Class'(T);
       <b>begin</b>
-         <b>return</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_9">Argument</A>'(Usr =&gt; System.Null_Address,
-                              Typ =&gt; <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#67_10">Ptr</A>,
-                              Cft =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>);
-      <b>end</b> Allocate_Arg;
+         <b>return</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#211_9">Argument</A>'(Usr =&gt; System.Null_Address,
+                              Typ =&gt; <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#66_10">Ptr</A>,
+                              Cft =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>);
+      <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#52_16">Allocate_Arg</A><A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#52_16">;</A>
 
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#62_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#56_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#58_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#53_16">Allocate_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#72_30">Typ</A>));
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#62_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#62_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#61_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#55_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#57_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#52_16">Allocate_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#71_30">Typ</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#61_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#61_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Field_Type;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#70_14">Set_Field_Type</A><A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#70_14">;</A>
 
-   <b>function</b> <FONT COLOR=red><A NAME="81_13">To_Argument_Access</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion
-     (System.Address, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="80_13">To_Argument_Access</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion
+     (System.Address, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>);
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#84_13">Generic_Field_Check</A><FONT COLOR=red><A NAME="84_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#84_34">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                                 <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#85_34">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#47_12">C_Int</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#83_13">Generic_Field_Check</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#83_34">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                                 <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#84_34">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">C_Int</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="87_7">Result</A></FONT> : Boolean;
-      <FONT COLOR=red><A NAME="88_7">Udf</A></FONT>    : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#54_9">User_Defined_Field_Type_Access</A> :=
-        <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#54_9">User_Defined_Field_Type_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#81_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#85_34">Usr</A>).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A>);
+      <FONT COLOR=red><A NAME="86_7">Result</A></FONT> : Boolean;
+      <FONT COLOR=red><A NAME="87_7">Udf</A></FONT>    : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#53_9">User_Defined_Field_Type_Access</A> :=
+        <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#53_9">User_Defined_Field_Type_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#80_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#84_34">Usr</A>).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A>);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#87_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#57_13">Field_Check</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#84_34">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#88_7">Udf</A>.<b>all</b>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#47_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#87_7">Result</A>));
-   <b>end</b> Generic_Field_Check;
+      <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#86_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#56_13">Field_Check</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#83_34">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#87_7">Udf</A>.<b>all</b>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#86_7">Result</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#83_13">Generic_Field_Check</A><A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#83_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#91_13">Generic_Char_Check</A><FONT COLOR=red><A NAME="95_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#91_33">Ch</A>  : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#47_12">C_Int</A>;
-                                <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#92_33">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#47_12">C_Int</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#90_13">Generic_Char_Check</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#90_33">Ch</A>  : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">C_Int</A>;
+                                <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#91_33">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">C_Int</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="98_7">Result</A></FONT> : Boolean;
-      <FONT COLOR=red><A NAME="99_7">Udf</A></FONT>    : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#54_9">User_Defined_Field_Type_Access</A> :=
-        <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#54_9">User_Defined_Field_Type_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#81_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#92_33">Usr</A>).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A>);
+      <FONT COLOR=red><A NAME="97_7">Result</A></FONT> : Boolean;
+      <FONT COLOR=red><A NAME="98_7">Udf</A></FONT>    : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#53_9">User_Defined_Field_Type_Access</A> :=
+        <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#53_9">User_Defined_Field_Type_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#80_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#91_33">Usr</A>).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A>);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#98_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#64_13">Character_Check</A> (Character'Val (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#91_33">Ch</A>), <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#99_7">Udf</A>.<b>all</b>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#47_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#98_7">Result</A>));
-   <b>end</b> Generic_Char_Check;
+      <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#97_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#63_13">Character_Check</A> (Character'Val (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#90_33">Ch</A>), <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#98_7">Udf</A>.<b>all</b>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#97_7">Result</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#90_13">Generic_Char_Check</A><A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#90_13">;</A>
 
    <FONT COLOR=green><EM>--  -----------------------------------------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>--</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#82_13">C_Generic_Type</A><FONT COLOR=red><A NAME="108_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#81_13">C_Generic_Type</A> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="110_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-      <FONT COLOR=red><A NAME="111_7">T</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
+      <FONT COLOR=red><A NAME="109_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="110_7">T</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Type</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A> <b>then</b>
-         <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#111_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#223_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#84_13">Generic_Field_Check</A>'<b>Access</b>,
-                             <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#91_13">Generic_Char_Check</A>'<b>Access</b>);
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#111_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A> <b>then</b>
-            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#141_4">M_Generic_Type</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A> <b>then</b>
+         <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#110_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#83_13">Generic_Field_Check</A>'<b>Access</b>,
+                             <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#90_13">Generic_Char_Check</A>'<b>Access</b>);
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#110_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A> <b>then</b>
+            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
          <b>else</b>
-            <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#110_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#228_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#111_7">T</A>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#163_13">Make_Arg</A>'<b>Access</b>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#168_13">Copy_Arg</A>'<b>Access</b>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#173_14">Free_Arg</A>'<b>Access</b>);
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#110_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-               <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#110_7">Res</A>);
+            <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#109_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#110_7">T</A>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#162_13">Make_Arg</A>'<b>Access</b>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_13">Copy_Arg</A>'<b>Access</b>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_14">Free_Arg</A>'<b>Access</b>);
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#109_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+               <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#109_7">Res</A>);
             <b>end</b> <b>if</b>;
          <b>end</b> <b>if</b>;
-         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#111_7">T</A>;
+         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#141_4">M_Generic_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#110_7">T</A>;
       <b>end</b> <b>if</b>;
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Type</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Type</A>;
-   <b>end</b> C_Generic_Type;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#141_4">M_Generic_Type</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#141_4">M_Generic_Type</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#81_13">C_Generic_Type</A><A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#81_13">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.User;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">User</A><A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">;</A>
+</PRE></BODY></HTML>
index 2cb7d858e6302636379751e8a2f2d9a5c8a3b07b..2beaef3b10ffaa98247fada96a78b60ee5103027 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#46_58">User</A><FONT COLOR=red><A NAME="44_53"></A></FONT> <b>is</b>
-   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#44_53">User</A>);
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<FONT COLOR=red><A NAME="43_53">User</A></FONT> <b>is</b>
+   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">User</A>);
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
-   <b>subtype</b> <FONT COLOR=red><A NAME="47_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
+   <b>subtype</b> <FONT COLOR=red><A NAME="46_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>type</b> <FONT COLOR=red><A NAME="49_9">User_Defined_Field_Type</A></FONT> <b>is</b> <b>abstract</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
+   <b>type</b> User_Defined_Field_Type <b>is</b> <b>abstract</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
    <FONT COLOR=green><EM>--  This is the root of the mechanism we use to create field types in</EM></FONT>
    <FONT COLOR=green><EM>--  Ada95. You should your own type derive from this one and implement</EM></FONT>
    <FONT COLOR=green><EM>--  the Field_Check and Character_Check functions for your own type.</EM></FONT>
 
-   <b>type</b> <FONT COLOR=red><A NAME="54_9">User_Defined_Field_Type_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b>
-     <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#49_9">User_Defined_Field_Type</A>'Class;
+   <b>type</b> <FONT COLOR=red><A NAME="53_9">User_Defined_Field_Type_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b>
+     User_Defined_Field_Type'Class;
 
-   <b>function</b> <FONT COLOR=red><A NAME="57_13">Field_Check</A></FONT>
-     (<FONT COLOR=red><A NAME="58_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <FONT COLOR=red><A NAME="59_7">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#49_9">User_Defined_Field_Type</A>) <b>return</b> Boolean
+   <b>function</b> <FONT COLOR=red><A NAME="56_13">Field_Check</A></FONT>
+     (<FONT COLOR=red><A NAME="57_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <FONT COLOR=red><A NAME="58_7">Typ</A></FONT> : User_Defined_Field_Type) <b>return</b> Boolean
       <b>is</b> <b>abstract</b>;
    <FONT COLOR=green><EM>--  If True is returned, the field is considered valid, otherwise it is</EM></FONT>
    <FONT COLOR=green><EM>--  invalid.</EM></FONT>
 
-   <b>function</b> <FONT COLOR=red><A NAME="64_13">Character_Check</A></FONT>
-     (<FONT COLOR=red><A NAME="65_7">Ch</A></FONT>  : Character;
-      <FONT COLOR=red><A NAME="66_7">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#49_9">User_Defined_Field_Type</A>) <b>return</b> Boolean
+   <b>function</b> <FONT COLOR=red><A NAME="63_13">Character_Check</A></FONT>
+     (<FONT COLOR=red><A NAME="64_7">Ch</A></FONT>  : Character;
+      <FONT COLOR=red><A NAME="65_7">Typ</A></FONT> : User_Defined_Field_Type) <b>return</b> Boolean
       <b>is</b> <b>abstract</b>;
    <FONT COLOR=green><EM>--  If True is returned, the character is considered as valid for the</EM></FONT>
    <FONT COLOR=green><EM>--  field, otherwise as invalid.</EM></FONT>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#50_14">Set_Field_Type</A><FONT COLOR=red><A NAME="71_14"></A></FONT> (<FONT COLOR=red><A NAME="71_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="72_30">Typ</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#49_9">User_Defined_Field_Type</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#49_14">Set_Field_Type</A><FONT COLOR=red><A NAME="70_14"></A></FONT> (<FONT COLOR=red><A NAME="70_30">Fld</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="71_30">Typ</A></FONT> : <b>in</b> User_Defined_Field_Type);
    <FONT COLOR=green><EM>--  This should work for all types derived from User_Defined_Field_Type.</EM></FONT>
    <FONT COLOR=green><EM>--  No need to reimplement it for your derived type.</EM></FONT>
 
 <b>private</b>
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#108_13">C_Generic_Type</A><FONT COLOR=red><A NAME="82_13"></A></FONT>   <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="81_13">C_Generic_Type</A></FONT>   <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#84_13">Generic_Field_Check</A><FONT COLOR=red><A NAME="84_13"></A></FONT> (<FONT COLOR=red><A NAME="84_34">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                                 <FONT COLOR=red><A NAME="85_34">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#47_12">C_Int</A>;
-   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#84_13">Generic_Field_Check</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="83_13">Generic_Field_Check</A></FONT> (<FONT COLOR=red><A NAME="83_34">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                                 <FONT COLOR=red><A NAME="84_34">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">C_Int</A>;
+   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#83_13">Generic_Field_Check</A>);
    <FONT COLOR=green><EM>--  This is the generic Field_Check_Function for the low-level fieldtype</EM></FONT>
    <FONT COLOR=green><EM>--  representing all the User_Defined_Field_Type derivates. It routes</EM></FONT>
    <FONT COLOR=green><EM>--  the call to the Field_Check implementation for the type.</EM></FONT>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#95_13">Generic_Char_Check</A><FONT COLOR=red><A NAME="91_13"></A></FONT> (<FONT COLOR=red><A NAME="91_33">Ch</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#47_12">C_Int</A>;
-                                <FONT COLOR=red><A NAME="92_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#47_12">C_Int</A>;
-   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#91_13">Generic_Char_Check</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="90_13">Generic_Char_Check</A></FONT> (<FONT COLOR=red><A NAME="90_33">Ch</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">C_Int</A>;
+                                <FONT COLOR=red><A NAME="91_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#46_12">C_Int</A>;
+   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#90_13">Generic_Char_Check</A>);
    <FONT COLOR=green><EM>--  This is the generic Char_Check_Function for the low-level fieldtype</EM></FONT>
    <FONT COLOR=green><EM>--  representing all the User_Defined_Field_Type derivates. It routes</EM></FONT>
    <FONT COLOR=green><EM>--  the call to the Character_Check implementation for the type.</EM></FONT>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types.User;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">User</A><A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#43_53">;</A>
+</PRE></BODY></HTML>
index d258ff293a720987827befbfdb1a3d5cbd20cbbe..aa32d20554cacad811d5511799c93f667024d0c9 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.13 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.14 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 <b>with</b> Ada.Unchecked_Deallocation;
 <b>with</b> Ada.Unchecked_Conversion;
 <FONT COLOR=green><EM>--  |</EM></FONT>
 <FONT COLOR=green><EM>--  | man page form_fieldtype.3x</EM></FONT>
 <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 <FONT COLOR=green><EM>--  |</EM></FONT>
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#44_41">Field_Types</A><FONT COLOR=red><A NAME="51_46"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
    <b>use</b> <b>type</b> System.Address;
 
-   <b>function</b> <FONT COLOR=red><A NAME="56_13">To_Argument_Access</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion
-     (System.Address, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="55_13">To_Argument_Access</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion
+     (System.Address, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>);
 
-   <b>function</b> <FONT COLOR=red><A NAME="59_13">Get_Fieldtype</A></FONT> (<FONT COLOR=red><A NAME="59_28">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
-   <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#59_13">Get_Fieldtype</A>, "field_type");
+   <b>function</b> <FONT COLOR=red><A NAME="58_13">Get_Fieldtype</A></FONT> (<FONT COLOR=red><A NAME="58_28">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
+   <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#58_13">Get_Fieldtype</A>, "field_type");
 
-   <b>function</b> <FONT COLOR=red><A NAME="62_13">Get_Arg</A></FONT> (<FONT COLOR=red><A NAME="62_22">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> System.Address;
-   <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#62_13">Get_Arg</A>, "field_arg");
+   <b>function</b> <FONT COLOR=red><A NAME="61_13">Get_Arg</A></FONT> (<FONT COLOR=red><A NAME="61_22">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> System.Address;
+   <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#61_13">Get_Arg</A>, "field_arg");
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_field_validation.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#80_13">Get_Type</A><FONT COLOR=red><A NAME="71_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#80_23">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#64_9">Field_Type_Access</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#79_13">Get_Type</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#79_23">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#63_9">Field_Type_Access</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="73_7">Low_Level</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#59_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#80_23">Fld</A>);
-      <FONT COLOR=red><A NAME="74_7">Arg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>;
+      <FONT COLOR=red><A NAME="72_7">Low_Level</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#79_23">Fld</A>);
+      <FONT COLOR=red><A NAME="73_7">Arg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#73_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A> <b>then</b>
          <b>return</b> <b>null</b>;
       <b>else</b>
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#73_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Builtin_Router</A> <b>or</b> <b>else</b>
-           <A HREF="terminal_interface-curses-forms-field_types__adb.htm#73_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Type</A> <b>or</b> <b>else</b>
-           <A HREF="terminal_interface-curses-forms-field_types__adb.htm#73_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#145_4">M_Choice_Router</A> <b>or</b> <b>else</b>
-           <A HREF="terminal_interface-curses-forms-field_types__adb.htm#73_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Generic_Choice</A> <b>then</b>
-            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#74_7">Arg</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#56_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#62_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#80_23">Fld</A>));
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#74_7">Arg</A> = <b>null</b> <b>then</b>
-               <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Builtin_Router</A> <b>or</b> <b>else</b>
+           <A HREF="terminal_interface-curses-forms-field_types__adb.htm#72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#141_4">M_Generic_Type</A> <b>or</b> <b>else</b>
+           <A HREF="terminal_interface-curses-forms-field_types__adb.htm#72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Choice_Router</A> <b>or</b> <b>else</b>
+           <A HREF="terminal_interface-curses-forms-field_types__adb.htm#72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#142_4">M_Generic_Choice</A> <b>then</b>
+            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#73_7">Arg</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#55_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#61_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#79_23">Fld</A>));
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#73_7">Arg</A> = <b>null</b> <b>then</b>
+               <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
             <b>else</b>
-               <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#74_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A>;
+               <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#73_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A>;
             <b>end</b> <b>if</b>;
          <b>else</b>
-            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
          <b>end</b> <b>if</b>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Type;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#79_13">Get_Type</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#79_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#163_13">Make_Arg</A><FONT COLOR=red><A NAME="95_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#163_23">Args</A> : System.Address) <b>return</b> System.Address
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#162_13">Make_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#162_23">Args</A> : System.Address) <b>return</b> System.Address
    <b>is</b>
       <FONT COLOR=green><EM>--  Actually args is a double indirected pointer to the arguments</EM></FONT>
       <FONT COLOR=green><EM>--  of a C variable argument list. In theory it is now quite</EM></FONT>
       <FONT COLOR=green><EM>--  we know its size and for the first arg we don't care about</EM></FONT>
       <FONT COLOR=green><EM>--  into which stack direction we have to proceed. We simply</EM></FONT>
       <FONT COLOR=green><EM>--  resolve the double indirection and thats it.</EM></FONT>
-      <b>type</b> <FONT COLOR=red><A NAME="106_12">V</A></FONT> <b>is</b> <b>access</b> <b>all</b> System.Address;
-      <b>function</b> <FONT COLOR=red><A NAME="107_16">To_Access</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion (System.Address,
-                                                          <A HREF="terminal_interface-curses-forms-field_types__adb.htm#106_12">V</A>);
+      <b>type</b> <FONT COLOR=red><A NAME="105_12">V</A></FONT> <b>is</b> <b>access</b> <b>all</b> System.Address;
+      <b>function</b> <FONT COLOR=red><A NAME="106_16">To_Access</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion (System.Address,
+                                                          <A HREF="terminal_interface-curses-forms-field_types__adb.htm#105_12">V</A>);
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#107_16">To_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#107_16">To_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#163_23">Args</A>).<b>all</b>).<b>all</b>;
-   <b>end</b> Make_Arg;
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#106_16">To_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#106_16">To_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#162_23">Args</A>).<b>all</b>).<b>all</b>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#162_13">Make_Arg</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#162_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#168_13">Copy_Arg</A><FONT COLOR=red><A NAME="113_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#168_23">Usr</A> : System.Address) <b>return</b> System.Address
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_13">Copy_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_23">Usr</A> : System.Address) <b>return</b> System.Address
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#168_23">Usr</A>;
-   <b>end</b> Copy_Arg;
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_23">Usr</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_13">Copy_Arg</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#173_14">Free_Arg</A><FONT COLOR=red><A NAME="119_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#173_24">Usr</A> : <b>in</b> System.Address)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_14">Free_Arg</A><FONT COLOR=red><A NAME="118_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_24">Usr</A> : <b>in</b> System.Address)
    <b>is</b>
-      <b>procedure</b> <FONT COLOR=red><A NAME="121_17">Free_Type</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
-        (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A>'Class, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#64_9">Field_Type_Access</A>);
-      <b>procedure</b> <FONT COLOR=red><A NAME="123_17">Freeargs</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
-        (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_9">Argument</A>, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>);
+      <b>procedure</b> <FONT COLOR=red><A NAME="120_17">Free_Type</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
+        (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A>'Class, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#63_9">Field_Type_Access</A>);
+      <b>procedure</b> <FONT COLOR=red><A NAME="122_17">Freeargs</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
+        (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#211_9">Argument</A>, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>);
 
-      <FONT COLOR=red><A NAME="126_7">To_Be_Free</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#56_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#173_24">Usr</A>);
-      <FONT COLOR=red><A NAME="127_7">Low_Level</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
+      <FONT COLOR=red><A NAME="125_7">To_Be_Free</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#55_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_24">Usr</A>);
+      <FONT COLOR=red><A NAME="126_7">Low_Level</A></FONT>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">To_Be_Free</A> /= <b>null</b> <b>then</b>
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Usr</A> /= System.Null_Address <b>then</b>
-            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#127_7">Low_Level</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A>;
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#127_7">Low_Level</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#127_10">Freearg</A> /= <b>null</b> <b>then</b>
-               <A HREF="terminal_interface-curses-forms-field_types__adb.htm#127_7">Low_Level</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#127_10">Freearg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Usr</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#125_7">To_Be_Free</A> /= <b>null</b> <b>then</b>
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#125_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Usr</A> /= System.Null_Address <b>then</b>
+            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">Low_Level</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#125_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A>;
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">Low_Level</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#126_10">Freearg</A> /= <b>null</b> <b>then</b>
+               <A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">Low_Level</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#126_10">Freearg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#125_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Usr</A>);
             <b>end</b> <b>if</b>;
          <b>end</b> <b>if</b>;
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A> /= <b>null</b> <b>then</b>
-            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#121_17">Free_Type</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">Typ</A>);
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#125_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A> /= <b>null</b> <b>then</b>
+            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#120_17">Free_Type</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#125_7">To_Be_Free</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A>);
          <b>end</b> <b>if</b>;
-         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#123_17">Freeargs</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#126_7">To_Be_Free</A>);
+         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#122_17">Freeargs</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#125_7">To_Be_Free</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Free_Arg;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_14">Free_Arg</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_14">;</A>
 
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_14">Wrap_Builtin</A><FONT COLOR=red><A NAME="144_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_28">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                           <A HREF="terminal_interface-curses-forms-field_types__ads.htm#153_28">Typ</A> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A>'Class;
-                           <A HREF="terminal_interface-curses-forms-field_types__ads.htm#154_28">Cft</A> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#149_13">C_Builtin_Router</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">Wrap_Builtin</A><FONT COLOR=red><A NAME="143_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_28">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                           Typ : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A>'Class;
+                           <A HREF="terminal_interface-curses-forms-field_types__ads.htm#153_28">Cft</A> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#148_13">C_Builtin_Router</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="148_7">Usr_Arg</A></FONT>   : System.Address := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#62_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_28">Fld</A>);
-      <FONT COLOR=red><A NAME="149_7">Low_Level</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#59_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_28">Fld</A>);
-      <FONT COLOR=red><A NAME="150_7">Arg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>;
-      <FONT COLOR=red><A NAME="151_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="152_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="152_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_28">Fld</A>;
-                             <FONT COLOR=red><A NAME="153_30">Cf</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#154_28">Cft</A>;
-                             <FONT COLOR=red><A NAME="154_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#152_16">Set_Fld_Type</A>, "set_field_type");
+      <FONT COLOR=red><A NAME="147_7">Usr_Arg</A></FONT>   : System.Address := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#61_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_28">Fld</A>);
+      <FONT COLOR=red><A NAME="148_7">Low_Level</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_28">Fld</A>);
+      <FONT COLOR=red><A NAME="149_7">Arg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>;
+      <FONT COLOR=red><A NAME="150_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="151_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="151_30">F</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_28">Fld</A>;
+                             <FONT COLOR=red><A NAME="152_30">Cf</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#153_28">Cft</A>;
+                             <FONT COLOR=red><A NAME="153_30">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#151_16">Set_Fld_Type</A>, "set_field_type");
 
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#149_7">Low_Level</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#154_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#149_13">C_Builtin_Router</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#154_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#150_13">C_Choice_Router</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#148_7">Low_Level</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#153_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#148_13">C_Builtin_Router</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#153_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#149_13">C_Choice_Router</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#150_7">Arg</A> := <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_9">Argument</A>'(Usr =&gt; System.Null_Address,
-                              Typ =&gt; <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field_Type</A>'Class'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#153_28">Typ</A>),
-                              Cft =&gt; <A HREF="terminal_interface-curses-forms-field_types__adb.htm#59_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#152_28">Fld</A>));
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#148_7">Usr_Arg</A> /= System.Null_Address <b>then</b>
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#149_7">Low_Level</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#126_10">Copyarg</A> /= <b>null</b> <b>then</b>
-               <A HREF="terminal_interface-curses-forms-field_types__adb.htm#150_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__adb.htm#150_7">Usr</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#149_7">Low_Level</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#126_10">Copyarg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#148_7">Usr_Arg</A>);
+         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#149_7">Arg</A> := <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#211_9">Argument</A>'(Usr =&gt; System.Null_Address,
+                              Typ =&gt; <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field_Type</A>'Class'(Typ),
+                              Cft =&gt; <A HREF="terminal_interface-curses-forms-field_types__adb.htm#58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_28">Fld</A>));
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#147_7">Usr_Arg</A> /= System.Null_Address <b>then</b>
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#148_7">Low_Level</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#125_10">Copyarg</A> /= <b>null</b> <b>then</b>
+               <A HREF="terminal_interface-curses-forms-field_types__adb.htm#149_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Usr</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#148_7">Low_Level</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#125_10">Copyarg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#147_7">Usr_Arg</A>);
             <b>else</b>
-               <A HREF="terminal_interface-curses-forms-field_types__adb.htm#150_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__adb.htm#150_7">Usr</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#148_7">Usr_Arg</A>;
+               <A HREF="terminal_interface-curses-forms-field_types__adb.htm#149_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Usr</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#147_7">Usr_Arg</A>;
             <b>end</b> <b>if</b>;
          <b>end</b> <b>if</b>;
 
-         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#151_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#152_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#154_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__adb.htm#150_7">Arg</A>);
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#151_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-            <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#151_7">Res</A>);
+         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#150_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#151_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#153_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__adb.htm#149_7">Arg</A>);
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#150_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+            <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#150_7">Res</A>);
          <b>end</b> <b>if</b>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Wrap_Builtin;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">Wrap_Builtin</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#151_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#178_13">Field_Check_Router</A><FONT COLOR=red><A NAME="180_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#178_33">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                                <A HREF="terminal_interface-curses-forms-field_types__ads.htm#179_33">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#177_13">Field_Check_Router</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#177_33">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                                <A HREF="terminal_interface-curses-forms-field_types__ads.htm#178_33">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="183_7">Arg</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#56_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#179_33">Usr</A>);
+      <FONT COLOR=red><A NAME="182_7">Arg</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#55_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#178_33">Usr</A>);
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#183_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#183_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>
-                     <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#183_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A> /= <b>null</b>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#183_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#128_10">Fcheck</A> /= <b>null</b> <b>then</b>
-         <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#183_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#128_10">Fcheck</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#178_33">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#183_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Usr</A>);
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#182_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#182_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>
+                     <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#182_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A> /= <b>null</b>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#182_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#127_10">Fcheck</A> /= <b>null</b> <b>then</b>
+         <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#182_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#127_10">Fcheck</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#177_33">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#182_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Usr</A>);
       <b>else</b>
          <b>return</b> 1;
       <b>end</b> <b>if</b>;
-   <b>end</b> Field_Check_Router;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#177_13">Field_Check_Router</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#177_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#186_13">Char_Check_Router</A><FONT COLOR=red><A NAME="194_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#186_32">Ch</A>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>;
-                               <A HREF="terminal_interface-curses-forms-field_types__ads.htm#187_32">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#185_13">Char_Check_Router</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#185_32">Ch</A>  : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>;
+                               <A HREF="terminal_interface-curses-forms-field_types__ads.htm#186_32">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="197_7">Arg</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#56_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#187_32">Usr</A>);
+      <FONT COLOR=red><A NAME="196_7">Arg</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#55_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#186_32">Usr</A>);
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#197_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#197_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>
-                     <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#197_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A> /= <b>null</b>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#197_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#129_10">Ccheck</A> /= <b>null</b> <b>then</b>
-         <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#197_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#129_10">Ccheck</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#186_32">Ch</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#197_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Usr</A>);
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#196_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#196_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>
+                     <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#196_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A> /= <b>null</b>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#196_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#128_10">Ccheck</A> /= <b>null</b> <b>then</b>
+         <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#196_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#128_10">Ccheck</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#185_32">Ch</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#196_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Usr</A>);
       <b>else</b>
          <b>return</b> 1;
       <b>end</b> <b>if</b>;
-   <b>end</b> Char_Check_Router;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#185_13">Char_Check_Router</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#185_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#194_13">Next_Router</A><FONT COLOR=red><A NAME="208_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#194_26">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#195_26">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#193_13">Next_Router</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#193_26">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#194_26">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="211_7">Arg</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#56_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#195_26">Usr</A>);
+      <FONT COLOR=red><A NAME="210_7">Arg</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#55_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#194_26">Usr</A>);
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#211_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#211_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>
-                     <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#211_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A> /= <b>null</b>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#211_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#130_10">Next</A> /= <b>null</b> <b>then</b>
-         <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#211_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#130_10">Next</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#194_26">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#211_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Usr</A>);
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#210_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#210_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>
+                     <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#210_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A> /= <b>null</b>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#210_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#129_10">Next</A> /= <b>null</b> <b>then</b>
+         <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#210_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#129_10">Next</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#193_26">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#210_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Usr</A>);
       <b>else</b>
          <b>return</b> 1;
       <b>end</b> <b>if</b>;
-   <b>end</b> Next_Router;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#193_13">Next_Router</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#193_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#202_13">Prev_Router</A><FONT COLOR=red><A NAME="222_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#202_26">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#203_26">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12">C_Int</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#201_13">Prev_Router</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#201_26">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#202_26">Usr</A> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12">C_Int</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="225_7">Arg</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#217_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#56_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#203_26">Usr</A>);
+      <FONT COLOR=red><A NAME="224_7">Arg</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#216_9">Argument_Access</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#55_13">To_Argument_Access</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#202_26">Usr</A>);
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#225_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#225_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>
-                     <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#225_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Typ</A> /= <b>null</b>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#225_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#130_16">Prev</A> /= <b>null</b> <b>then</b>
-         <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#225_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#215_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#130_16">Prev</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#202_26">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#225_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Usr</A>);
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#224_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#224_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>
+                     <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#224_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#212_7">Typ</A> /= <b>null</b>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#224_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#129_16">Prev</A> /= <b>null</b> <b>then</b>
+         <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#224_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#214_7">Cft</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#129_16">Prev</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#201_26">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#224_7">Arg</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#213_7">Usr</A>);
       <b>else</b>
          <b>return</b> 1;
       <b>end</b> <b>if</b>;
-   <b>end</b> Prev_Router;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#201_13">Prev_Router</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#201_13">;</A>
 
    <FONT COLOR=green><EM>--  -----------------------------------------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>--</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#149_13">C_Builtin_Router</A><FONT COLOR=red><A NAME="238_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#148_13">C_Builtin_Router</A> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="240_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-      <FONT COLOR=red><A NAME="241_7">T</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
+      <FONT COLOR=red><A NAME="239_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="240_7">T</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Builtin_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A> <b>then</b>
-         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#241_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#223_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#178_13">Field_Check_Router</A>'<b>Access</b>,
-                             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#186_13">Char_Check_Router</A>'<b>Access</b>);
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#241_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A> <b>then</b>
-            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Builtin_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A> <b>then</b>
+         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#240_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#177_13">Field_Check_Router</A>'<b>Access</b>,
+                             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#185_13">Char_Check_Router</A>'<b>Access</b>);
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#240_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A> <b>then</b>
+            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
          <b>else</b>
-            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#240_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#228_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#241_7">T</A>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#163_13">Make_Arg</A>'<b>Access</b>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#168_13">Copy_Arg</A>'<b>Access</b>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#173_14">Free_Arg</A>'<b>Access</b>);
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#240_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-               <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#240_7">Res</A>);
+            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#239_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#240_7">T</A>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#162_13">Make_Arg</A>'<b>Access</b>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_13">Copy_Arg</A>'<b>Access</b>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_14">Free_Arg</A>'<b>Access</b>);
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#239_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+               <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#239_7">Res</A>);
             <b>end</b> <b>if</b>;
          <b>end</b> <b>if</b>;
-         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Builtin_Router</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#241_7">T</A>;
+         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Builtin_Router</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#240_7">T</A>;
       <b>end</b> <b>if</b>;
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Builtin_Router</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Builtin_Router</A>;
-   <b>end</b> C_Builtin_Router;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Builtin_Router</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#143_4">M_Builtin_Router</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#148_13">C_Builtin_Router</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#148_13">;</A>
 
    <FONT COLOR=green><EM>--  -----------------------------------------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>--</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#150_13">C_Choice_Router</A><FONT COLOR=red><A NAME="265_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#149_13">C_Choice_Router</A> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="267_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-      <FONT COLOR=red><A NAME="268_7">T</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
+      <FONT COLOR=red><A NAME="266_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="267_7">T</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#145_4">M_Choice_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A> <b>then</b>
-         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#268_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#223_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#178_13">Field_Check_Router</A>'<b>Access</b>,
-                             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#186_13">Char_Check_Router</A>'<b>Access</b>);
-         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#268_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A> <b>then</b>
-            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Choice_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A> <b>then</b>
+         <A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#177_13">Field_Check_Router</A>'<b>Access</b>,
+                             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#185_13">Char_Check_Router</A>'<b>Access</b>);
+         <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A> <b>then</b>
+            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
          <b>else</b>
-            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#228_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#268_7">T</A>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#163_13">Make_Arg</A>'<b>Access</b>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#168_13">Copy_Arg</A>'<b>Access</b>,
-                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#173_14">Free_Arg</A>'<b>Access</b>);
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-               <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">Res</A>);
+            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#266_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">T</A>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#162_13">Make_Arg</A>'<b>Access</b>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_13">Copy_Arg</A>'<b>Access</b>,
+                                      <A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_14">Free_Arg</A>'<b>Access</b>);
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#266_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+               <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#266_7">Res</A>);
             <b>end</b> <b>if</b>;
 
-            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#235_13">Set_Fieldtype_Choice</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#268_7">T</A>,
-                                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#194_13">Next_Router</A>'<b>Access</b>,
-                                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#202_13">Prev_Router</A>'<b>Access</b>);
-            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-               <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">Res</A>);
+            <A HREF="terminal_interface-curses-forms-field_types__adb.htm#266_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#234_13">Set_Fieldtype_Choice</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">T</A>,
+                                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#193_13">Next_Router</A>'<b>Access</b>,
+                                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#201_13">Prev_Router</A>'<b>Access</b>);
+            <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#266_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+               <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#266_7">Res</A>);
             <b>end</b> <b>if</b>;
          <b>end</b> <b>if</b>;
-         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#145_4">M_Choice_Router</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#268_7">T</A>;
+         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Choice_Router</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#267_7">T</A>;
       <b>end</b> <b>if</b>;
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#145_4">M_Choice_Router</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#135_4">Null_Field_Type</A>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#145_4">M_Choice_Router</A>;
-   <b>end</b> C_Choice_Router;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Choice_Router</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#134_4">Null_Field_Type</A>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#144_4">M_Choice_Router</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#149_13">C_Choice_Router</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#149_13">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_Types;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">Field_Types</A><A HREF="terminal_interface-curses-forms-field_types__ads.htm#43_41">;</A>
+</PRE></BODY></HTML>
index a835f274b631ea0b618226d21eecf49819502600..b0388f1d1767ec3113c8c2e2def8c2f28654897f 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.13 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.14 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Interfaces.C;
 
 <b>package</b> Terminal_Interface.Curses.Forms.Field_Types <b>is</b>
    <b>pragma</b> Preelaborate (Terminal_Interface.Curses.Forms.Field_Types);
-   <b>use</b> <b>type</b><FONT COLOR=red><A NAME="47_12"> </A></FONT>Interfaces.C.int;
+   <b>use</b> <b>type</b><FONT COLOR=red><A NAME="46_12"> </A></FONT>Interfaces.C.int;
    <b>subtype</b> C_Int <b>is</b> Interfaces.C.int;
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
@@ -69,7 +68,7 @@
    <b>type</b> Field_Type_Access <b>is</b> <b>access</b> <b>all</b> Field_Type'Class;
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_1"#2|</EM></FONT>
-   <b>procedure</b> Set_Field_Type (<FONT COLOR=red><A NAME="68_30">Fld</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field</A>;
+   <b>procedure</b> Set_Field_Type (<FONT COLOR=red><A NAME="67_30">Fld</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field</A>;
                              Fld_Type : <b>in</b> Field_Type) <b>is</b> <b>abstract</b>;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_fieldtype.3x.html">set_field_type()</A></EM></FONT>
    <FONT COLOR=green><EM>--  But: we hide the vararg mechanism of the C interface. You always</EM></FONT>
      <b>procedure</b> (Usr : System.Address);
    <b>pragma</b> Convention (C, Freearg_Function);
 
-   <b>type</b> Field_Check_Function<FONT COLOR=red><A NAME="106_29"> </A></FONT><b>is</b> <b>access</b>
+   <b>type</b> Field_Check_Function<FONT COLOR=red><A NAME="105_29"> </A></FONT><b>is</b> <b>access</b>
      <b>function</b> (Fld : Field; Usr : System.Address) <b>return</b> C_Int;
    <b>pragma</b> Convention (C, Field_Check_Function);
 
-   <b>type</b> Char_Check_Function<FONT COLOR=red><A NAME="110_28"> </A></FONT><b>is</b> <b>access</b>
-     <b>function</b> (Ch : C_Int<A HREF="terminal_interface-curses-forms-field_types__ads.htm#109_9">;</A> Usr : System.Address) <b>return</b> C_Int;
+   <b>type</b> Char_Check_Function<FONT COLOR=red><A NAME="109_28"> </A></FONT><b>is</b> <b>access</b>
+     <b>function</b> (Ch : C_Int<A HREF="terminal_interface-curses-forms-field_types__ads.htm#108_9">;</A> Usr : System.Address) <b>return</b> C_Int;
    <b>pragma</b> Convention (C, Char_Check_Function);
 
    <b>type</b> Choice_Function <b>is</b> <b>access</b>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <b>type</b> Low_Level_Field_Type <b>is</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="123_10">Status</A></FONT> :              <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.short;
-         <FONT COLOR=red><A NAME="124_10">Ref_Count</A></FONT> :           Interfaces.C.long;
-         <FONT COLOR=red><A NAME="125_10">Left</A></FONT>, Right :         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#93_9">System</A>.Address;
-         <FONT COLOR=red><A NAME="126_10">Makearg</A></FONT> :             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#97_9">Makearg_Function</A>;
-         <FONT COLOR=red><A NAME="127_10">Copyarg</A></FONT> :             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#101_9">Copyarg_Function</A>;
-         <FONT COLOR=red><A NAME="128_10">Freearg</A></FONT> :             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#105_9">Freearg_Function</A>;
-         <FONT COLOR=red><A NAME="129_10">Fcheck</A></FONT> :              <A HREF="terminal_interface-curses-forms-field_types__ads.htm#109_9">Field_Check_Function</A>;
-         <FONT COLOR=red><A NAME="130_10">Ccheck</A></FONT><FONT COLOR=red><A NAME="130_16"> </A></FONT>:              <A HREF="terminal_interface-curses-forms-field_types__ads.htm#113_9">Char_Check_Function</A>;
+         <FONT COLOR=red><A NAME="122_10">Status</A></FONT> :              <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.short;
+         <FONT COLOR=red><A NAME="123_10">Ref_Count</A></FONT> :           Interfaces.C.long;
+         <FONT COLOR=red><A NAME="124_10">Left</A></FONT>, Right :         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#92_9">System</A>.Address;
+         <FONT COLOR=red><A NAME="125_10">Makearg</A></FONT> :             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#96_9">Makearg_Function</A>;
+         <FONT COLOR=red><A NAME="126_10">Copyarg</A></FONT> :             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#100_9">Copyarg_Function</A>;
+         <FONT COLOR=red><A NAME="127_10">Freearg</A></FONT> :             <A HREF="terminal_interface-curses-forms-field_types__ads.htm#104_9">Freearg_Function</A>;
+         <FONT COLOR=red><A NAME="128_10">Fcheck</A></FONT> :              <A HREF="terminal_interface-curses-forms-field_types__ads.htm#108_9">Field_Check_Function</A>;
+         <FONT COLOR=red><A NAME="129_10">Ccheck</A></FONT><FONT COLOR=red><A NAME="129_16"> </A></FONT>:              <A HREF="terminal_interface-curses-forms-field_types__ads.htm#112_9">Char_Check_Function</A>;
          Next, Prev :          Choice_Function;
       <b>end</b> <b>record</b>;
    <b>pragma</b> Convention (C, Low_Level_Field_Type);
    <FONT COLOR=green><EM>--  | fieldtypes handled by this binding. Any other low-level fieldtype</EM></FONT>
    <FONT COLOR=green><EM>--  | will result in a Form_Exception is function Get_Type.</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <FONT COLOR=red><A NAME="143_4">M_Generic_Type</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <b>null</b>;
-   <FONT COLOR=red><A NAME="144_4">M_Generic_Choice</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <b>null</b>;
-   <FONT COLOR=red><A NAME="145_4">M_Builtin_Router</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A> := <b>null</b>;
+   <FONT COLOR=red><A NAME="142_4">M_Generic_Type</A></FONT>   : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <b>null</b>;
+   <FONT COLOR=red><A NAME="143_4">M_Generic_Choice</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <b>null</b>;
+   <FONT COLOR=red><A NAME="144_4">M_Builtin_Router</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A> := <b>null</b>;
    M_Choice_Router  : C_Field_Type := <b>null</b>;
 
    <FONT COLOR=green><EM>--  Two wrapper functions to access those low-level fieldtypes defined</EM></FONT>
    <FONT COLOR=green><EM>--  in this package.</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#265_13">C_Builtin_Router</A><FONT COLOR=red><A NAME="150_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">C_Field_Type</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="149_13">C_Builtin_Router</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">C_Field_Type</A>;
    <b>function</b> C_Choice_Router  <b>return</b> C_Field_Type;
 
-   <b>procedure</b> Wrap_Builtin (<FONT COLOR=red><A NAME="153_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#53_9">Field</A>;
-                           <FONT COLOR=red><A NAME="154_28">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">Field_Type</A>'Class<A HREF="terminal_interface-curses-forms-field_types__ads.htm#149_13">;</A>
+   <b>procedure</b> Wrap_Builtin (Fld : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#52_9">Field</A>;
+                           <FONT COLOR=red><A NAME="153_28">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">Field_Type</A>'Class<A HREF="terminal_interface-curses-forms-field_types__ads.htm#148_13">;</A>
                            Cft : C_Field_Type := C_Builtin_Router);
    <FONT COLOR=green><EM>--  This procedure has to be called by the Set_Field_Type implementation</EM></FONT>
    <FONT COLOR=green><EM>--  for builtin low-level fieldtypes to replace it by an Ada95</EM></FONT>
    <FONT COLOR=green><EM>--  This is the Makearg_Function for the internal low-level types</EM></FONT>
    <FONT COLOR=green><EM>--  introduced by this binding.</EM></FONT>
 
-   <b>function</b> Copy_Arg (Usr<A HREF="terminal_interface-curses-forms-field_types__ads.htm#168_13"> </A>: System.Address) <b>return</b> System.Address;
+   <b>function</b> Copy_Arg (Usr<A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_13"> </A>: System.Address) <b>return</b> System.Address;
    <b>pragma</b> Convention (C, Copy_Arg);
    <FONT COLOR=green><EM>--  This is the Copyarg_Function for the internal low-level types</EM></FONT>
    <FONT COLOR=green><EM>--  introduced by this binding.</EM></FONT>
    <FONT COLOR=green><EM>--  This is the Freearg_Function for the internal low-level types</EM></FONT>
    <FONT COLOR=green><EM>--  introduced by this binding.</EM></FONT>
 
-   <b>function</b> Field_Check_Router (<FONT COLOR=red><A NAME="179_33">Fld</A></FONT> : Field;
-                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#178_13"> </A>      Usr : System.Address) <b>return</b> C_Int;
+   <b>function</b> Field_Check_Router (<FONT COLOR=red><A NAME="178_33">Fld</A></FONT> : Field;
+                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#177_13"> </A>      Usr : System.Address) <b>return</b> C_Int;
    <b>pragma</b> Convention (C, Field_Check_Router);
    <FONT COLOR=green><EM>--  This is the Field_Check_Function for the internal low-level types</EM></FONT>
    <FONT COLOR=green><EM>--  introduced to wrap the low-level types by a Field_Type derived</EM></FONT>
    <FONT COLOR=green><EM>--  type. It routes the call to the corresponding low-level validation</EM></FONT>
    <FONT COLOR=green><EM>--  function.</EM></FONT>
 
-   <b>function</b> Char_Check_Router (<FONT COLOR=red><A NAME="187_32">Ch</A></FONT> : C_Int;
-                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#186_13"> </A>     Usr : System.Address) <b>return</b> C_Int;
+   <b>function</b> Char_Check_Router (<FONT COLOR=red><A NAME="186_32">Ch</A></FONT> : C_Int;
+                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#185_13"> </A>     Usr : System.Address) <b>return</b> C_Int;
    <b>pragma</b> Convention (C, Char_Check_Router);
    <FONT COLOR=green><EM>--  This is the Char_Check_Function for the internal low-level types</EM></FONT>
    <FONT COLOR=green><EM>--  introduced to wrap the low-level types by a Field_Type derived</EM></FONT>
    <FONT COLOR=green><EM>--  type. It routes the call to the corresponding low-level validation</EM></FONT>
    <FONT COLOR=green><EM>--  function.</EM></FONT>
 
-   <b>function</b> Next_Router (<FONT COLOR=red><A NAME="195_26">Fld</A></FONT> : Field;
-                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#194_13">Usr</A> : System.Address) <b>return</b> C_Int;
+   <b>function</b> Next_Router (<FONT COLOR=red><A NAME="194_26">Fld</A></FONT> : Field;
+                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#193_13">Usr</A> : System.Address) <b>return</b> C_Int;
    <b>pragma</b> Convention (C, Next_Router);
    <FONT COLOR=green><EM>--  This is the Choice_Function for the internal low-level types</EM></FONT>
    <FONT COLOR=green><EM>--  introduced to wrap the low-level types by a Field_Type derived</EM></FONT>
    <FONT COLOR=green><EM>--  type. It routes the call to the corresponding low-level next_choice</EM></FONT>
    <FONT COLOR=green><EM>--  function.</EM></FONT>
 
-   <b>function</b> Prev_Router (<FONT COLOR=red><A NAME="203_26">Fld</A></FONT> : Field;
-                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#202_13">Usr</A> : System.Address) <b>return</b> C_Int;
+   <b>function</b> Prev_Router (<FONT COLOR=red><A NAME="202_26">Fld</A></FONT> : Field;
+                         <A HREF="terminal_interface-curses-forms-field_types__ads.htm#201_13">Usr</A> : System.Address) <b>return</b> C_Int;
    <b>pragma</b> Convention (C, Prev_Router);
    <FONT COLOR=green><EM>--  This is the Choice_Function for the internal low-level types</EM></FONT>
    <FONT COLOR=green><EM>--  introduced to wrap the low-level types by a Field_Type derived</EM></FONT>
    <FONT COLOR=green><EM>--  This is the Argument structure maintained by all low-level field types</EM></FONT>
    <FONT COLOR=green><EM>--  introduced by this binding.</EM></FONT>
    <b>type</b> Argument <b>is</b> <b>record</b>
-      <FONT COLOR=red><A NAME="214_7">Typ</A></FONT> : Field_Type_Access;   <FONT COLOR=green><EM>--  the Field_Type creating this record</EM></FONT>
-      <FONT COLOR=red><A NAME="215_7">Usr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9">System</A>.Address;      <FONT COLOR=green><EM>--  original arg for builtin low-level types</EM></FONT>
+      <FONT COLOR=red><A NAME="213_7">Typ</A></FONT> : Field_Type_Access;   <FONT COLOR=green><EM>--  the Field_Type creating this record</EM></FONT>
+      <FONT COLOR=red><A NAME="214_7">Usr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9">System</A>.Address;      <FONT COLOR=green><EM>--  original arg for builtin low-level types</EM></FONT>
       Cft : C_Field_Type;        <FONT COLOR=green><EM>--  the original low-level type</EM></FONT>
    <b>end</b> <b>record</b>;
    <b>type</b> Argument_Access <b>is</b> <b>access</b> <b>all</b> Argument;
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  | Some Imports of libform routines to deal with low-level fieldtypes.</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> New_Fieldtype (<FONT COLOR=red><A NAME="224_28">Fcheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#109_9">Field_Check_Function</A>;
-            <A HREF="terminal_interface-curses-forms-field_types__ads.htm#133_9"> </A>              Ccheck : Char_Check_Function)
+   <b>function</b> New_Fieldtype (<FONT COLOR=red><A NAME="223_28">Fcheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#108_9">Field_Check_Function</A>;
+            <A HREF="terminal_interface-curses-forms-field_types__ads.htm#132_9"> </A>              Ccheck : Char_Check_Function)
      <b>return</b> C_Field_Type;
    <b>pragma</b> Import (C, New_Fieldtype, "new_fieldtype");
 
-   <b>function</b> Set_Fieldtype_Arg (<FONT COLOR=red><A NAME="229_32">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#93_9">C_Field_Type</A>;
-                               <FONT COLOR=red><A NAME="230_32">Mak</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#97_9">Makearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#168_13">Make_Arg</A>'<b>Access</b>;
-                               <FONT COLOR=red><A NAME="231_32">Cop</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#101_9">Copyarg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#173_14">Copy_Arg</A>'<b>Access</b>;
-            <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12"> </A>                  Fre : Freearg_Function := Free_Arg'<b>Access</b>)
+   <b>function</b> Set_Fieldtype_Arg (<FONT COLOR=red><A NAME="228_32">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#92_9">C_Field_Type</A>;
+                               <FONT COLOR=red><A NAME="229_32">Mak</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#96_9">Makearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#167_13">Make_Arg</A>'<b>Access</b>;
+                               <FONT COLOR=red><A NAME="230_32">Cop</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#100_9">Copyarg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#172_14">Copy_Arg</A>'<b>Access</b>;
+            <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12"> </A>                  Fre : Freearg_Function := Free_Arg'<b>Access</b>)
      <b>return</b> C_Int;
    <b>pragma</b> Import (C, Set_Fieldtype_Arg, "set_fieldtype_arg");
 
-   <b>function</b> Set_Fieldtype_Choice (<FONT COLOR=red><A NAME="236_35">Cft</A></FONT> : <FONT COLOR=red><A NAME="236_41">C_Field_Type</A></FONT>;
-            <A HREF="terminal_interface-curses-forms-field_types__ads.htm#47_12"> </A>                     Next, Prev : Choice_Function)
+   <b>function</b> Set_Fieldtype_Choice (<FONT COLOR=red><A NAME="235_35">Cft</A></FONT> : <FONT COLOR=red><A NAME="235_41">C_Field_Type</A></FONT>;
+            <A HREF="terminal_interface-curses-forms-field_types__ads.htm#46_12"> </A>                     Next, Prev : Choice_Function)
      <b>return</b> C_Int;
    <b>pragma</b> Import (C, Set_Fieldtype_Choice, "set_fieldtype_choice");
 
 <b>end</b> Terminal_Interface.Curses.Forms.Field_Types;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index a281121b76941c870aebfd87d149421a291bb3ae..34a3b2fdba56a00ff2ddedbcc3a82fda9395cccf 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.12 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b>  <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b>  <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
 <FONT COLOR=green><EM>--  |</EM></FONT>
 <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 <FONT COLOR=green><EM>--  | man page form_field_userptr.3x</EM></FONT>
 <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 <FONT COLOR=green><EM>--  |</EM></FONT>
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#46_41">Field_User_Data</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_41">Field_User_Data</A> <b>is</b>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#54_14">Set_User_Data</A><FONT COLOR=red><A NAME="55_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#54_29">Fld</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                            <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#55_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#53_14">Set_User_Data</A><FONT COLOR=red><A NAME="54_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#53_29">Fld</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                            <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#54_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="58_16">Set_Field_Userptr</A></FONT> (<FONT COLOR=red><A NAME="58_35">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                                  <FONT COLOR=red><A NAME="59_35">Usr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#58_16">Set_Field_Userptr</A>, "set_field_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="57_16">Set_Field_Userptr</A></FONT> (<FONT COLOR=red><A NAME="57_35">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                                  <FONT COLOR=red><A NAME="58_35">Usr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#57_16">Set_Field_Userptr</A>, "set_field_userptr");
 
-      <FONT COLOR=red><A NAME="62_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#58_16">Set_Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#54_29">Fld</A>, <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#55_29">Data</A>);
+      <FONT COLOR=red><A NAME="61_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#57_16">Set_Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#53_29">Fld</A>, <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#54_29">Data</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#62_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#62_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#61_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#61_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_User_Data;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#53_14">Set_User_Data</A><A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#53_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#65_13">Get_User_Data</A><FONT COLOR=red><A NAME="71_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#65_28">Fld</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_9">User_Access</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#64_28">Fld</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#44_9">User_Access</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="73_16">Field_Userptr</A></FONT> (<FONT COLOR=red><A NAME="73_31">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_9">User_Access</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#73_16">Field_Userptr</A>, "field_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="72_16">Field_Userptr</A></FONT> (<FONT COLOR=red><A NAME="72_31">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#44_9">User_Access</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#72_16">Field_Userptr</A>, "field_userptr");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#73_16">Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#65_28">Fld</A>);
-   <b>end</b> Get_User_Data;
+      <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#72_16">Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#64_28">Fld</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#64_13">Get_User_Data</A><A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#64_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#60_14">Get_User_Data</A><FONT COLOR=red><A NAME="79_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#60_29">Fld</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                            <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#61_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#59_14">Get_User_Data</A><FONT COLOR=red><A NAME="78_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#59_29">Fld</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                            <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#60_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#61_29">Data</A> := <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#65_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#60_29">Fld</A>);
-   <b>end</b> Get_User_Data;
+      <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#60_29">Data</A> := <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#59_29">Fld</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#59_14">Get_User_Data</A><A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#59_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Field_User_Data;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_41">Field_User_Data</A><A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_41">;</A>
+</PRE></BODY></HTML>
index 3cfc919f9068f88b1a99482d8b8ae063337561bb..de086738b84434ebc9dc94c6617b7c5454aac14f 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.14 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.15 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="45_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-   <b>type</b> <A HREF="terminal_interface__ads.htm#42_9">User_Access</A> <b>is</b> <b>access</b> User<A HREF="terminal_interface-curses-forms__ads.htm#49_35">;</A>
+   <b>type</b> <FONT COLOR=red><A NAME="44_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
+   <b>type</b> <A HREF="terminal_interface__ads.htm#41_9">User_Access</A> <b>is</b> <b>access</b> User<A HREF="terminal_interface-curses-forms__ads.htm#48_35">;</A>
 <b>package</b> Terminal_Interface.Curses.Forms.Field_User_Data <b>is</b>
    <b>pragma</b> Preelaborate (Terminal_Interface.Curses.Forms.Field_User_Data);
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_1"#2|</EM></FONT>
-   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="55_29">Fld</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_9">Field</A>;
+   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="54_29">Fld</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#44_9">Field</A>;
                             Data : <b>in</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_userptr.3x.html">set_field_userptr</A></EM></FONT>
    <b>pragma</b> Inline (Set_User_Data);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_2"#2|</EM></FONT>
-   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="61_29">Fld</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#45_9">Field</A>;
+   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="60_29">Fld</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#44_9">Field</A>;
                             Data : <b>out</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_userptr.3x.html">field_userptr</A></EM></FONT>
 
@@ -73,4 +72,4 @@
    <b>pragma</b> Inline (Get_User_Data);
 
 <b>end</b> Terminal_Interface.Curses.Forms.Field_User_Data;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index ec9dc995cfb7397716c9afcb327296d35e1a1b95..c1208aaf78815e620102fe1e746af4a4befdacfc 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.12 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <FONT COLOR=green><EM>--  |</EM></FONT>
 <FONT COLOR=green><EM>--  | man page form__userptr.3x</EM></FONT>
 <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 <FONT COLOR=green><EM>--  |</EM></FONT>
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#46_41">Form_User_Data</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_41">Form_User_Data</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#54_14">Set_User_Data</A><FONT COLOR=red><A NAME="56_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#54_29">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                            <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#55_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#53_14">Set_User_Data</A><FONT COLOR=red><A NAME="55_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#53_29">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                            <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#54_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="59_16">Set_Form_Userptr</A></FONT> (<FONT COLOR=red><A NAME="59_34">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                                 <FONT COLOR=red><A NAME="60_34">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_9">User_Access</A>)  <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#59_16">Set_Form_Userptr</A>, "set_form_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="58_16">Set_Form_Userptr</A></FONT> (<FONT COLOR=red><A NAME="58_34">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                                 <FONT COLOR=red><A NAME="59_34">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#44_9">User_Access</A>)  <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#58_16">Set_Form_Userptr</A>, "set_form_userptr");
 
-      <FONT COLOR=red><A NAME="63_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#59_16">Set_Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#54_29">Frm</A>, <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#55_29">Data</A>);
+      <FONT COLOR=red><A NAME="62_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#58_16">Set_Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#53_29">Frm</A>, <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#54_29">Data</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#63_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#63_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#62_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#62_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_User_Data;
+   <b>end</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#53_14">Set_User_Data</A><A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#53_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#65_13">Get_User_Data</A><FONT COLOR=red><A NAME="72_13"></A></FONT> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#65_28">Frm</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_9">User_Access</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#64_28">Frm</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#44_9">User_Access</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="74_16">Form_Userptr</A></FONT> (<FONT COLOR=red><A NAME="74_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_9">User_Access</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#74_16">Form_Userptr</A>, "form_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="73_16">Form_Userptr</A></FONT> (<FONT COLOR=red><A NAME="73_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#44_9">User_Access</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#73_16">Form_Userptr</A>, "form_userptr");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#74_16">Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#65_28">Frm</A>);
-   <b>end</b> Get_User_Data;
+      <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#73_16">Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#64_28">Frm</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#64_13">Get_User_Data</A><A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#64_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#60_14">Get_User_Data</A><FONT COLOR=red><A NAME="80_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#60_29">Frm</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                            <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#61_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#59_14">Get_User_Data</A><FONT COLOR=red><A NAME="79_14"></A></FONT> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#59_29">Frm</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                            <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#60_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#61_29">Data</A> := <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#65_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#60_29">Frm</A>);
-   <b>end</b> Get_User_Data;
+      <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#60_29">Data</A> := <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#59_29">Frm</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#59_14">Get_User_Data</A><A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#59_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms.Form_User_Data;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_41">Form_User_Data</A><A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_41">;</A>
+</PRE></BODY></HTML>
index 8f7485293c7e477c897dcb7383405a17aa6d6cc0..510451766a29586dcd31d65704cf75ccf9c4e7e4 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.13 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.14 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="45_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-   <b>type</b> <A HREF="terminal_interface__ads.htm#42_9">User_Access</A> <b>is</b> <b>access</b> User<A HREF="terminal_interface-curses-forms__ads.htm#49_35">;</A>
+   <b>type</b> <FONT COLOR=red><A NAME="44_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
+   <b>type</b> <A HREF="terminal_interface__ads.htm#41_9">User_Access</A> <b>is</b> <b>access</b> User<A HREF="terminal_interface-curses-forms__ads.htm#48_35">;</A>
 <b>package</b> Terminal_Interface.Curses.Forms.Form_User_Data <b>is</b>
    <b>pragma</b> Preelaborate (Terminal_Interface.Curses.Forms.Form_User_Data);
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_1"#2|</EM></FONT>
-   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="55_29">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_9">Form</A>;
+   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="54_29">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#44_9">Form</A>;
                             Data : <b>in</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_userptr.3x.html">set_form_userptr</A></EM></FONT>
    <b>pragma</b> Inline (Set_User_Data);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_2"#2|</EM></FONT>
-   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="61_29">Frm</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#45_9">Form</A>;
+   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="60_29">Frm</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#44_9">Form</A>;
                             Data : <b>out</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_userptr.3x.html">form_userptr</A></EM></FONT>
 
@@ -73,4 +72,4 @@
    <b>pragma</b> Inline (Get_User_Data);
 
 <b>end</b> Terminal_Interface.Curses.Forms.Form_User_Data;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index 345432293186d240a8a44ccfc3b6b3916de25fef..eb24f811f373e64c2d334ef2647f2a69d777117a 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.21 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.22 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Unchecked_Deallocation;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Pointers;
 
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#49_35">Forms</A><FONT COLOR=red><A NAME="51_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A> <b>is</b>
 
-   <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+   <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-   <b>type</b> <FONT COLOR=red><A NAME="55_9">C_Field_Array</A></FONT> <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-   <b>package</b> <FONT COLOR=red><A NAME="56_12">F_Array</A></FONT> <b>is</b> <b>new</b>
-     <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>, <A HREF="terminal_interface-curses-forms__adb.htm#55_9">C_Field_Array</A>, <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A>);
+   <b>type</b> <FONT COLOR=red><A NAME="54_9">C_Field_Array</A></FONT> <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+   <b>package</b> <FONT COLOR=red><A NAME="55_12">F_Array</A></FONT> <b>is</b> <b>new</b>
+     <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>, <A HREF="terminal_interface-curses-forms__adb.htm#54_9">C_Field_Array</A>, <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A>);
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  subtype chars_ptr is Interfaces.C.Strings.chars_ptr;</EM></FONT>
 
-   <b>function</b> <FONT COLOR=red><A NAME="65_13">FOS_2_CInt</A></FONT> <b>is</b> <b>new</b>
-     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field_Option_Set</A>,
-                               <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="64_13">FOS_2_CInt</A></FONT> <b>is</b> <b>new</b>
+     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field_Option_Set</A>,
+                               <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>);
 
-   <b>function</b> <FONT COLOR=red><A NAME="69_13">CInt_2_FOS</A></FONT> <b>is</b> <b>new</b>
-     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>,
-                               <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field_Option_Set</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="68_13">CInt_2_FOS</A></FONT> <b>is</b> <b>new</b>
+     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>,
+                               <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field_Option_Set</A>);
 
-   <b>function</b> <FONT COLOR=red><A NAME="73_13">FrmOS_2_CInt</A></FONT> <b>is</b> <b>new</b>
-     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form_Option_Set</A>,
-                               <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="72_13">FrmOS_2_CInt</A></FONT> <b>is</b> <b>new</b>
+     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form_Option_Set</A>,
+                               <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>);
 
-   <b>function</b> <FONT COLOR=red><A NAME="77_13">CInt_2_FrmOS</A></FONT> <b>is</b> <b>new</b>
-     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>,
-                               <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form_Option_Set</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="76_13">CInt_2_FrmOS</A></FONT> <b>is</b> <b>new</b>
+     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>,
+                               <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form_Option_Set</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#279_14">Request_Name</A><FONT COLOR=red><A NAME="81_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#279_28">Key</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A>;
-                                <A HREF="terminal_interface-curses-forms__ads.htm#280_28">Name</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#278_14">Request_Name</A><FONT COLOR=red><A NAME="80_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#278_28">Key</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A>;
+                                <A HREF="terminal_interface-curses-forms__ads.htm#279_28">Name</A> : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="84_16">Form_Request_Name</A></FONT> (<FONT COLOR=red><A NAME="84_35">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#84_16">Form_Request_Name</A>, "form_request_name");
+      <b>function</b> <FONT COLOR=red><A NAME="83_16">Form_Request_Name</A></FONT> (<FONT COLOR=red><A NAME="83_35">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#83_16">Form_Request_Name</A>, "form_request_name");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#84_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#279_28">Key</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#280_28">Name</A>);
-   <b>end</b> Request_Name;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#83_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#278_28">Key</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#279_28">Name</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#278_14">Request_Name</A><A HREF="terminal_interface-curses-forms__ads.htm#278_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#282_14">Request_Name</A><FONT COLOR=red><A NAME="90_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#282_28">Key</A> : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A>) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#281_14">Request_Name</A> (<A HREF="terminal_interface-curses-forms__ads.htm#281_28">Key</A> : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A>) <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="92_16">Form_Request_Name</A></FONT> (<FONT COLOR=red><A NAME="92_35">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#92_16">Form_Request_Name</A>, "form_request_name");
+      <b>function</b> <FONT COLOR=red><A NAME="91_16">Form_Request_Name</A></FONT> (<FONT COLOR=red><A NAME="91_35">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#91_16">Form_Request_Name</A>, "form_request_name");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#92_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#282_28">Key</A>)));
-   <b>end</b> Request_Name;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#91_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#281_28">Key</A>)));
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#281_14">Request_Name</A><A HREF="terminal_interface-curses-forms__ads.htm#281_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#296_13">Create</A><FONT COLOR=red><A NAME="108_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#296_21">Height</A>       : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                    <A HREF="terminal_interface-curses-forms__ads.htm#297_21">Width</A>        : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
-                    <A HREF="terminal_interface-curses-forms__ads.htm#298_21">Top</A>          : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                    <A HREF="terminal_interface-curses-forms__ads.htm#299_21">Left</A>         : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-                    <A HREF="terminal_interface-curses-forms__ads.htm#300_21">Off_Screen</A>   : Natural := 0;
-                    <A HREF="terminal_interface-curses-forms__ads.htm#301_21">More_Buffers</A> : <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A>'First)
-                    <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#295_13">Create</A> (<A HREF="terminal_interface-curses-forms__ads.htm#295_21">Height</A>       : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                    <A HREF="terminal_interface-curses-forms__ads.htm#296_21">Width</A>        : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
+                    <A HREF="terminal_interface-curses-forms__ads.htm#297_21">Top</A>          : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                    <A HREF="terminal_interface-curses-forms__ads.htm#298_21">Left</A>         : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+                    <A HREF="terminal_interface-curses-forms__ads.htm#299_21">Off_Screen</A>   : Natural := 0;
+                    <A HREF="terminal_interface-curses-forms__ads.htm#300_21">More_Buffers</A> : <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A>'First)
+                    <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="116_16">Newfield</A></FONT> (<FONT COLOR=red><A NAME="116_26">H</A></FONT>, <FONT COLOR=red><A NAME="116_29">W</A></FONT>, <FONT COLOR=red><A NAME="116_32">T</A></FONT>, <FONT COLOR=red><A NAME="116_35">L</A></FONT>, <FONT COLOR=red><A NAME="116_38">O</A></FONT>, <FONT COLOR=red><A NAME="116_41">M</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#116_16">Newfield</A>, "new_field");
-      <FONT COLOR=red><A NAME="118_7">Fld</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#116_16">Newfield</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#296_21">Height</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#297_21">Width</A>),
-                                        <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#298_21">Top</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#299_21">Left</A>),
-                                        <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#300_21">Off_Screen</A>),
-                                        <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#301_21">More_Buffers</A>));
+      <b>function</b> <FONT COLOR=red><A NAME="115_16">Newfield</A></FONT> (<FONT COLOR=red><A NAME="115_26">H</A></FONT>, <FONT COLOR=red><A NAME="115_29">W</A></FONT>, <FONT COLOR=red><A NAME="115_32">T</A></FONT>, <FONT COLOR=red><A NAME="115_35">L</A></FONT>, <FONT COLOR=red><A NAME="115_38">O</A></FONT>, <FONT COLOR=red><A NAME="115_41">M</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#115_16">Newfield</A>, "new_field");
+      <FONT COLOR=red><A NAME="117_7">Fld</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#115_16">Newfield</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#295_21">Height</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#296_21">Width</A>),
+                                        <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#297_21">Top</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#298_21">Left</A>),
+                                        <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#299_21">Off_Screen</A>),
+                                        <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#300_21">More_Buffers</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#118_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#117_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#118_7">Fld</A>;
-   <b>end</b> Create;
+      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#117_7">Fld</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#295_13">Create</A><A HREF="terminal_interface-curses-forms__ads.htm#295_13">;</A>
 <FONT COLOR=green><EM>--  |</EM></FONT>
 <FONT COLOR=green><EM>--  |</EM></FONT>
 <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#318_14">Delete</A><FONT COLOR=red><A NAME="131_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#318_22">Fld</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#317_14">Delete</A><FONT COLOR=red><A NAME="130_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#317_22">Fld</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="133_16">Free_Field</A></FONT> (<FONT COLOR=red><A NAME="133_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#133_16">Free_Field</A>, "free_field");
+      <b>function</b> <FONT COLOR=red><A NAME="132_16">Free_Field</A></FONT> (<FONT COLOR=red><A NAME="132_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#132_16">Free_Field</A>, "free_field");
 
-      <FONT COLOR=red><A NAME="136_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="135_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__adb.htm#136_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#133_16">Free_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#318_22">Fld</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#136_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#136_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms__adb.htm#135_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#132_16">Free_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#317_22">Fld</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#135_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#135_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#318_22">Fld</A> := <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A>;
-   <b>end</b> Delete;
+      <A HREF="terminal_interface-curses-forms__ads.htm#317_22">Fld</A> := <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#317_14">Delete</A><A HREF="terminal_interface-curses-forms__ads.htm#317_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#324_13">Duplicate</A><FONT COLOR=red><A NAME="147_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#324_24">Fld</A>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                       <A HREF="terminal_interface-curses-forms__ads.htm#325_24">Top</A>  : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                       <A HREF="terminal_interface-curses-forms__ads.htm#326_24">Left</A> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#323_13">Duplicate</A> (<A HREF="terminal_interface-curses-forms__ads.htm#323_24">Fld</A>  : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                       <A HREF="terminal_interface-curses-forms__ads.htm#324_24">Top</A>  : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                       <A HREF="terminal_interface-curses-forms__ads.htm#325_24">Left</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="151_16">Dup_Field</A></FONT> (<FONT COLOR=red><A NAME="151_27">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                          <FONT COLOR=red><A NAME="152_27">Top</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                          <FONT COLOR=red><A NAME="153_27">Left</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#151_16">Dup_Field</A>, "dup_field");
-
-      <FONT COLOR=red><A NAME="156_7">F</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#151_16">Dup_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#324_24">Fld</A>,
-                                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#325_24">Top</A>),
-                                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#326_24">Left</A>));
+      <b>function</b> <FONT COLOR=red><A NAME="150_16">Dup_Field</A></FONT> (<FONT COLOR=red><A NAME="150_27">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                          <FONT COLOR=red><A NAME="151_27">Top</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                          <FONT COLOR=red><A NAME="152_27">Left</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#150_16">Dup_Field</A>, "dup_field");
+
+      <FONT COLOR=red><A NAME="155_7">F</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#150_16">Dup_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#323_24">Fld</A>,
+                                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#324_24">Top</A>),
+                                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#325_24">Left</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#156_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#155_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#156_7">F</A>;
-   <b>end</b> Duplicate;
+      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#155_7">F</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#323_13">Duplicate</A><A HREF="terminal_interface-curses-forms__ads.htm#323_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#331_13">Link</A><FONT COLOR=red><A NAME="168_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#331_19">Fld</A>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                  <A HREF="terminal_interface-curses-forms__ads.htm#332_19">Top</A>  : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                  <A HREF="terminal_interface-curses-forms__ads.htm#333_19">Left</A> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#330_13">Link</A> (<A HREF="terminal_interface-curses-forms__ads.htm#330_19">Fld</A>  : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                  <A HREF="terminal_interface-curses-forms__ads.htm#331_19">Top</A>  : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                  <A HREF="terminal_interface-curses-forms__ads.htm#332_19">Left</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="172_16">Lnk_Field</A></FONT> (<FONT COLOR=red><A NAME="172_27">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                          <FONT COLOR=red><A NAME="173_27">Top</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                          <FONT COLOR=red><A NAME="174_27">Left</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#172_16">Lnk_Field</A>, "link_field");
-
-      <FONT COLOR=red><A NAME="177_7">F</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#172_16">Lnk_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#331_19">Fld</A>,
-                                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#332_19">Top</A>),
-                                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#333_19">Left</A>));
+      <b>function</b> <FONT COLOR=red><A NAME="171_16">Lnk_Field</A></FONT> (<FONT COLOR=red><A NAME="171_27">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                          <FONT COLOR=red><A NAME="172_27">Top</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                          <FONT COLOR=red><A NAME="173_27">Left</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#171_16">Lnk_Field</A>, "link_field");
+
+      <FONT COLOR=red><A NAME="176_7">F</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#171_16">Lnk_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#330_19">Fld</A>,
+                                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#331_19">Top</A>),
+                                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#332_19">Left</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#177_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#176_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#177_7">F</A>;
-   <b>end</b> Link;
+      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#176_7">F</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#330_13">Link</A><A HREF="terminal_interface-curses-forms__ads.htm#330_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_field_just.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#342_14">Set_Justification</A><FONT COLOR=red><A NAME="193_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#342_33">Fld</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                                <A HREF="terminal_interface-curses-forms__ads.htm#343_33">Just</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#62_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#62_33">None</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#341_14">Set_Justification</A><FONT COLOR=red><A NAME="192_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#341_33">Fld</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                                <A HREF="terminal_interface-curses-forms__ads.htm#342_33">Just</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#61_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#61_33">None</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="196_16">Set_Field_Just</A></FONT> (<FONT COLOR=red><A NAME="196_32">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                               <FONT COLOR=red><A NAME="197_32">Just</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#196_16">Set_Field_Just</A>, "set_field_just");
+      <b>function</b> <FONT COLOR=red><A NAME="195_16">Set_Field_Just</A></FONT> (<FONT COLOR=red><A NAME="195_32">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                               <FONT COLOR=red><A NAME="196_32">Just</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#195_16">Set_Field_Just</A>, "set_field_just");
 
-      <FONT COLOR=red><A NAME="200_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> :=
-        <A HREF="terminal_interface-curses-forms__adb.htm#196_16">Set_Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#342_33">Fld</A>,
-                        <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#62_9">Field_Justification</A>'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#343_33">Just</A>)));
+      <FONT COLOR=red><A NAME="199_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> :=
+        <A HREF="terminal_interface-curses-forms__adb.htm#195_16">Set_Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#341_33">Fld</A>,
+                        <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#61_9">Field_Justification</A>'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#342_33">Just</A>)));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#200_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#200_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#199_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#199_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Justification;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#341_14">Set_Justification</A><A HREF="terminal_interface-curses-forms__ads.htm#341_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#348_13">Get_Justification</A><FONT COLOR=red><A NAME="211_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#348_32">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#62_9">Field_Justification</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#347_13">Get_Justification</A> (<A HREF="terminal_interface-curses-forms__ads.htm#347_32">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#61_9">Field_Justification</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="213_16">Field_Just</A></FONT> (<FONT COLOR=red><A NAME="213_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#213_16">Field_Just</A>, "field_just");
+      <b>function</b> <FONT COLOR=red><A NAME="212_16">Field_Just</A></FONT> (<FONT COLOR=red><A NAME="212_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#212_16">Field_Just</A>, "field_just");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#62_9">Field_Justification</A>'Val (<A HREF="terminal_interface-curses-forms__adb.htm#213_16">Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#348_32">Fld</A>));
-   <b>end</b> Get_Justification;
+      <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#61_9">Field_Justification</A>'Val (<A HREF="terminal_interface-curses-forms__adb.htm#212_16">Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#347_32">Fld</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#347_13">Get_Justification</A><A HREF="terminal_interface-curses-forms__ads.htm#347_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_field_buffer.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#357_14">Set_Buffer</A><FONT COLOR=red><A NAME="225_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-forms__ads.htm#358_7">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#359_7">Buffer</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A>'First;
-      <A HREF="terminal_interface-curses-forms__ads.htm#360_7">Str</A>    : <b>in</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#356_14">Set_Buffer</A><FONT COLOR=red><A NAME="224_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-forms__ads.htm#357_7">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <A HREF="terminal_interface-curses-forms__ads.htm#358_7">Buffer</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A>'First;
+      <A HREF="terminal_interface-curses-forms__ads.htm#359_7">Str</A>    : <b>in</b> String)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="230_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
-      <b>function</b> <FONT COLOR=red><A NAME="231_16">Set_Fld_Buffer</A></FONT> (<FONT COLOR=red><A NAME="231_32">Fld</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                                 <FONT COLOR=red><A NAME="232_34">Bufnum</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                                 <FONT COLOR=red><A NAME="233_34">S</A></FONT>      : <A HREF="terminal_interface-curses-forms__adb.htm#230_12">Char_Ptr</A>)
-        <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#231_16">Set_Fld_Buffer</A>, "set_field_buffer");
-
-      <FONT COLOR=red><A NAME="237_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-forms__ads.htm#360_7">Str</A>'Length);
-      <FONT COLOR=red><A NAME="238_7">Len</A></FONT> : size_t;
-      <FONT COLOR=red><A NAME="239_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <b>type</b> <FONT COLOR=red><A NAME="229_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
+      <b>function</b> <FONT COLOR=red><A NAME="230_16">Set_Fld_Buffer</A></FONT> (<FONT COLOR=red><A NAME="230_32">Fld</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                                 <FONT COLOR=red><A NAME="231_34">Bufnum</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                                 <FONT COLOR=red><A NAME="232_34">S</A></FONT>      : <A HREF="terminal_interface-curses-forms__adb.htm#229_12">Char_Ptr</A>)
+        <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#230_16">Set_Fld_Buffer</A>, "set_field_buffer");
+
+      <FONT COLOR=red><A NAME="236_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-forms__ads.htm#359_7">Str</A>'Length);
+      <FONT COLOR=red><A NAME="237_7">Len</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="238_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-forms__ads.htm#360_7">Str</A>, <A HREF="terminal_interface-curses-forms__adb.htm#237_7">Txt</A>, <A HREF="terminal_interface-curses-forms__adb.htm#238_7">Len</A>);
-      <A HREF="terminal_interface-curses-forms__adb.htm#239_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#231_16">Set_Fld_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#358_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#359_7">Buffer</A>), <A HREF="terminal_interface-curses-forms__adb.htm#237_7">Txt</A> (<A HREF="terminal_interface-curses-forms__adb.htm#237_7">Txt</A>'First)'<b>Access</b>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#239_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#239_7">Res</A>);
+      To_C (<A HREF="terminal_interface-curses-forms__ads.htm#359_7">Str</A>, <A HREF="terminal_interface-curses-forms__adb.htm#236_7">Txt</A>, <A HREF="terminal_interface-curses-forms__adb.htm#237_7">Len</A>);
+      <A HREF="terminal_interface-curses-forms__adb.htm#238_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#230_16">Set_Fld_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#357_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#358_7">Buffer</A>), <A HREF="terminal_interface-curses-forms__adb.htm#236_7">Txt</A> (<A HREF="terminal_interface-curses-forms__adb.htm#236_7">Txt</A>'First)'<b>Access</b>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#238_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#238_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Buffer;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#356_14">Set_Buffer</A><A HREF="terminal_interface-curses-forms__ads.htm#356_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#365_14">Get_Buffer</A><FONT COLOR=red><A NAME="250_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-forms__ads.htm#366_7">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#367_7">Buffer</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A>'First;
-      <A HREF="terminal_interface-curses-forms__ads.htm#368_7">Str</A>    : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#364_14">Get_Buffer</A><FONT COLOR=red><A NAME="249_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-forms__ads.htm#365_7">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <A HREF="terminal_interface-curses-forms__ads.htm#366_7">Buffer</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A>'First;
+      <A HREF="terminal_interface-curses-forms__ads.htm#367_7">Str</A>    : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="255_16">Field_Buffer</A></FONT> (<FONT COLOR=red><A NAME="255_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="256_30">B</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#255_16">Field_Buffer</A>, "field_buffer");
+      <b>function</b> <FONT COLOR=red><A NAME="254_16">Field_Buffer</A></FONT> (<FONT COLOR=red><A NAME="254_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="255_30">B</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#254_16">Field_Buffer</A>, "field_buffer");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#255_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#366_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#367_7">Buffer</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#368_7">Str</A>);
-   <b>end</b> Get_Buffer;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#254_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#365_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#366_7">Buffer</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#367_7">Str</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#364_14">Get_Buffer</A><A HREF="terminal_interface-curses-forms__ads.htm#364_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#371_13">Get_Buffer</A><FONT COLOR=red><A NAME="262_13"></A></FONT>
-     (<A HREF="terminal_interface-curses-forms__ads.htm#372_7">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#373_7">Buffer</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A>'First) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#370_13">Get_Buffer</A>
+     (<A HREF="terminal_interface-curses-forms__ads.htm#371_7">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <A HREF="terminal_interface-curses-forms__ads.htm#372_7">Buffer</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A>'First) <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="266_16">Field_Buffer</A></FONT> (<FONT COLOR=red><A NAME="266_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <FONT COLOR=red><A NAME="267_30">B</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#266_16">Field_Buffer</A>, "field_buffer");
+      <b>function</b> <FONT COLOR=red><A NAME="265_16">Field_Buffer</A></FONT> (<FONT COLOR=red><A NAME="265_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <FONT COLOR=red><A NAME="266_30">B</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#265_16">Field_Buffer</A>, "field_buffer");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#266_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#372_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#373_7">Buffer</A>)));
-   <b>end</b> Get_Buffer;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#265_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#371_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#372_7">Buffer</A>)));
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#370_13">Get_Buffer</A><A HREF="terminal_interface-curses-forms__ads.htm#370_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#379_14">Set_Status</A><FONT COLOR=red><A NAME="275_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#379_26">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                         <A HREF="terminal_interface-curses-forms__ads.htm#380_26">Status</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#378_14">Set_Status</A><FONT COLOR=red><A NAME="274_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#378_26">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                         <A HREF="terminal_interface-curses-forms__ads.htm#379_26">Status</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="278_16">Set_Fld_Status</A></FONT> (<FONT COLOR=red><A NAME="278_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                               <FONT COLOR=red><A NAME="279_32">St</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#278_16">Set_Fld_Status</A>, "set_field_status");
+      <b>function</b> <FONT COLOR=red><A NAME="277_16">Set_Fld_Status</A></FONT> (<FONT COLOR=red><A NAME="277_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                               <FONT COLOR=red><A NAME="278_32">St</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#277_16">Set_Fld_Status</A>, "set_field_status");
 
-      <FONT COLOR=red><A NAME="282_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#278_16">Set_Fld_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#379_26">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#380_26">Status</A>));
+      <FONT COLOR=red><A NAME="281_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#277_16">Set_Fld_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#378_26">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#379_26">Status</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#282_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#281_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Status;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#378_14">Set_Status</A><A HREF="terminal_interface-curses-forms__ads.htm#378_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#385_13">Changed</A><FONT COLOR=red><A NAME="291_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#385_22">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#384_13">Changed</A> (<A HREF="terminal_interface-curses-forms__ads.htm#384_22">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="293_16">Field_Status</A></FONT> (<FONT COLOR=red><A NAME="293_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#293_16">Field_Status</A>, "field_status");
+      <b>function</b> <FONT COLOR=red><A NAME="292_16">Field_Status</A></FONT> (<FONT COLOR=red><A NAME="292_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#292_16">Field_Status</A>, "field_status");
 
-      <FONT COLOR=red><A NAME="296_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#293_16">Field_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#385_22">Fld</A>);
+      <FONT COLOR=red><A NAME="295_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#292_16">Field_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#384_22">Fld</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#296_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#76_4">Curses_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#295_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Changed;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#384_13">Changed</A><A HREF="terminal_interface-curses-forms__ads.htm#384_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#390_14">Set_Maximum_Size</A><FONT COLOR=red><A NAME="307_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#390_32">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                               <A HREF="terminal_interface-curses-forms__ads.htm#391_32">Max</A> : <b>in</b> Natural := 0)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#389_14">Set_Maximum_Size</A><FONT COLOR=red><A NAME="306_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#389_32">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                               <A HREF="terminal_interface-curses-forms__ads.htm#390_32">Max</A> : <b>in</b> Natural := 0)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="310_16">Set_Field_Max</A></FONT> (<FONT COLOR=red><A NAME="310_31">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                              <FONT COLOR=red><A NAME="311_31">M</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#310_16">Set_Field_Max</A>, "set_max_field");
+      <b>function</b> <FONT COLOR=red><A NAME="309_16">Set_Field_Max</A></FONT> (<FONT COLOR=red><A NAME="309_31">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                              <FONT COLOR=red><A NAME="310_31">M</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#309_16">Set_Field_Max</A>, "set_max_field");
 
-      <FONT COLOR=red><A NAME="314_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#310_16">Set_Field_Max</A> (<A HREF="terminal_interface-curses-forms__ads.htm#390_32">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#391_32">Max</A>));
+      <FONT COLOR=red><A NAME="313_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#309_16">Set_Field_Max</A> (<A HREF="terminal_interface-curses-forms__ads.htm#389_32">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#390_32">Max</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#314_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#314_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#313_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#313_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Maximum_Size;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#389_14">Set_Maximum_Size</A><A HREF="terminal_interface-curses-forms__ads.htm#389_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_field_opts.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#400_14">Set_Options</A><FONT COLOR=red><A NAME="327_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#400_27">Fld</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                          <A HREF="terminal_interface-curses-forms__ads.htm#401_27">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field_Option_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#399_14">Set_Options</A><FONT COLOR=red><A NAME="326_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#399_27">Fld</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                          <A HREF="terminal_interface-curses-forms__ads.htm#400_27">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field_Option_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="330_16">Set_Field_Opts</A></FONT> (<FONT COLOR=red><A NAME="330_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                               <FONT COLOR=red><A NAME="331_32">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#330_16">Set_Field_Opts</A>, "set_field_opts");
+      <b>function</b> <FONT COLOR=red><A NAME="329_16">Set_Field_Opts</A></FONT> (<FONT COLOR=red><A NAME="329_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                               <FONT COLOR=red><A NAME="330_32">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#329_16">Set_Field_Opts</A>, "set_field_opts");
 
-      <FONT COLOR=red><A NAME="334_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#65_13">FOS_2_CInt</A> (<A HREF="terminal_interface-curses-forms__ads.htm#401_27">Options</A>);
-      <FONT COLOR=red><A NAME="335_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="333_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#64_13">FOS_2_CInt</A> (<A HREF="terminal_interface-curses-forms__ads.htm#400_27">Options</A>);
+      <FONT COLOR=red><A NAME="334_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__adb.htm#335_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#330_16">Set_Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#400_27">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#334_7">Opt</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#335_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#335_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms__adb.htm#334_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#329_16">Set_Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#399_27">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#333_7">Opt</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#334_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#334_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Options;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#399_14">Set_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#399_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#406_14">Switch_Options</A><FONT COLOR=red><A NAME="345_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#406_30">Fld</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                             <A HREF="terminal_interface-curses-forms__ads.htm#407_30">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field_Option_Set</A>;
-                             <A HREF="terminal_interface-curses-forms__ads.htm#408_30">On</A>      : Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#405_14">Switch_Options</A><FONT COLOR=red><A NAME="344_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#405_30">Fld</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                             <A HREF="terminal_interface-curses-forms__ads.htm#406_30">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field_Option_Set</A>;
+                             <A HREF="terminal_interface-curses-forms__ads.htm#407_30">On</A>      : Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="349_16">Field_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="349_31">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                              <FONT COLOR=red><A NAME="350_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#349_16">Field_Opts_On</A>, "field_opts_on");
-      <b>function</b> <FONT COLOR=red><A NAME="352_16">Field_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="352_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                               <FONT COLOR=red><A NAME="353_32">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#352_16">Field_Opts_Off</A>, "field_opts_off");
-
-      <FONT COLOR=red><A NAME="356_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-      <FONT COLOR=red><A NAME="357_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#65_13">FOS_2_CInt</A> (<A HREF="terminal_interface-curses-forms__ads.htm#407_30">Options</A>);
+      <b>function</b> <FONT COLOR=red><A NAME="348_16">Field_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="348_31">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                              <FONT COLOR=red><A NAME="349_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#348_16">Field_Opts_On</A>, "field_opts_on");
+      <b>function</b> <FONT COLOR=red><A NAME="351_16">Field_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="351_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                               <FONT COLOR=red><A NAME="352_32">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#351_16">Field_Opts_Off</A>, "field_opts_off");
+
+      <FONT COLOR=red><A NAME="355_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="356_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#64_13">FOS_2_CInt</A> (<A HREF="terminal_interface-curses-forms__ads.htm#406_30">Options</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#408_30">On</A> <b>then</b>
-         <A HREF="terminal_interface-curses-forms__adb.htm#356_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#349_16">Field_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#406_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#357_7">Opt</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#407_30">On</A> <b>then</b>
+         <A HREF="terminal_interface-curses-forms__adb.htm#355_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#348_16">Field_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#405_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#356_7">Opt</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-forms__adb.htm#356_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#352_16">Field_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#406_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#357_7">Opt</A>);
+         <A HREF="terminal_interface-curses-forms__adb.htm#355_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#351_16">Field_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#405_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#356_7">Opt</A>);
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#356_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#356_7">Err</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#355_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#355_7">Err</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Switch_Options;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#405_14">Switch_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#405_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#414_14">Get_Options</A><FONT COLOR=red><A NAME="371_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#414_27">Fld</A>     : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                          <A HREF="terminal_interface-curses-forms__ads.htm#415_27">Options</A> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field_Option_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#413_14">Get_Options</A><FONT COLOR=red><A NAME="370_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#413_27">Fld</A>     : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                          <A HREF="terminal_interface-curses-forms__ads.htm#414_27">Options</A> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field_Option_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="374_16">Field_Opts</A></FONT> (<FONT COLOR=red><A NAME="374_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#374_16">Field_Opts</A>, "field_opts");
+      <b>function</b> <FONT COLOR=red><A NAME="373_16">Field_Opts</A></FONT> (<FONT COLOR=red><A NAME="373_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#373_16">Field_Opts</A>, "field_opts");
 
-      <FONT COLOR=red><A NAME="377_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#374_16">Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#414_27">Fld</A>);
+      <FONT COLOR=red><A NAME="376_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#373_16">Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#413_27">Fld</A>);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__ads.htm#415_27">Options</A> := <A HREF="terminal_interface-curses-forms__adb.htm#69_13">CInt_2_FOS</A> (<A HREF="terminal_interface-curses-forms__adb.htm#377_7">Res</A>);
-   <b>end</b> Get_Options;
+      <A HREF="terminal_interface-curses-forms__ads.htm#414_27">Options</A> := <A HREF="terminal_interface-curses-forms__adb.htm#68_13">CInt_2_FOS</A> (<A HREF="terminal_interface-curses-forms__adb.htm#376_7">Res</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#413_14">Get_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#413_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#419_13">Get_Options</A><FONT COLOR=red><A NAME="384_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#419_26">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A>)
-                         <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field_Option_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#418_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#418_26">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A>)
+                         <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field_Option_Set</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="387_7">Fos</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field_Option_Set</A>;
+      <FONT COLOR=red><A NAME="386_7">Fos</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field_Option_Set</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__ads.htm#414_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#419_26">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#387_7">Fos</A>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#387_7">Fos</A>;
-   <b>end</b> Get_Options;
+      <A HREF="terminal_interface-curses-forms__ads.htm#413_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#418_26">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#386_7">Fos</A>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#386_7">Fos</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#418_13">Get_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#418_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_field_attributes.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#429_14">Set_Foreground</A><FONT COLOR=red><A NAME="399_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-forms__ads.htm#430_7">Fld</A>   : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#431_7">Fore</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#432_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#428_14">Set_Foreground</A><FONT COLOR=red><A NAME="398_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-forms__ads.htm#429_7">Fld</A>   : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <A HREF="terminal_interface-curses-forms__ads.htm#430_7">Fore</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+      <A HREF="terminal_interface-curses-forms__ads.htm#431_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="404_16">Set_Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="404_32">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                               <FONT COLOR=red><A NAME="405_32">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#404_16">Set_Field_Fore</A>, "set_field_fore");
-
-      <FONT COLOR=red><A NAME="408_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
-                                             Color =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#432_7">Color</A>,
-                                             Attr  =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#431_7">Fore</A>);
-      <FONT COLOR=red><A NAME="411_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> :=
-        <A HREF="terminal_interface-curses-forms__adb.htm#404_16">Set_Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#430_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-forms__adb.htm#408_7">Ch</A>));
+      <b>function</b> <FONT COLOR=red><A NAME="403_16">Set_Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="403_32">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                               <FONT COLOR=red><A NAME="404_32">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#403_16">Set_Field_Fore</A>, "set_field_fore");
+
+      <FONT COLOR=red><A NAME="407_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
+                                             Color =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#431_7">Color</A>,
+                                             Attr  =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#430_7">Fore</A>);
+      <FONT COLOR=red><A NAME="410_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> :=
+        <A HREF="terminal_interface-curses-forms__adb.htm#403_16">Set_Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#429_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-forms__adb.htm#407_7">Ch</A>));
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#411_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#411_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#410_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#410_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Foreground;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#428_14">Set_Foreground</A><A HREF="terminal_interface-curses-forms__ads.htm#428_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#437_14">Foreground</A><FONT COLOR=red><A NAME="421_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#437_26">Fld</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                         <A HREF="terminal_interface-curses-forms__ads.htm#438_26">Fore</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#436_14">Foreground</A><FONT COLOR=red><A NAME="420_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#436_26">Fld</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                         <A HREF="terminal_interface-curses-forms__ads.htm#437_26">Fore</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="424_16">Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="424_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#424_16">Field_Fore</A>, "field_fore");
+      <b>function</b> <FONT COLOR=red><A NAME="423_16">Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="423_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#423_16">Field_Fore</A>, "field_fore");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__ads.htm#438_26">Fore</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#424_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#437_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-   <b>end</b> Foreground;
+      <A HREF="terminal_interface-curses-forms__ads.htm#437_26">Fore</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#423_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#436_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#436_14">Foreground</A><A HREF="terminal_interface-curses-forms__ads.htm#436_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#442_14">Foreground</A><FONT COLOR=red><A NAME="430_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#442_26">Fld</A>   : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                         <A HREF="terminal_interface-curses-forms__ads.htm#443_26">Fore</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>;
-                         <A HREF="terminal_interface-curses-forms__ads.htm#444_26">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#441_14">Foreground</A><FONT COLOR=red><A NAME="429_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#441_26">Fld</A>   : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                         <A HREF="terminal_interface-curses-forms__ads.htm#442_26">Fore</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>;
+                         <A HREF="terminal_interface-curses-forms__ads.htm#443_26">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="434_16">Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="434_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#434_16">Field_Fore</A>, "field_fore");
+      <b>function</b> <FONT COLOR=red><A NAME="433_16">Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="433_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#433_16">Field_Fore</A>, "field_fore");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__ads.htm#443_26">Fore</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#434_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#442_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#444_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#434_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#442_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#355_10">Color</A>;
-   <b>end</b> Foreground;
+      <A HREF="terminal_interface-curses-forms__ads.htm#442_26">Fore</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#433_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#441_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+      <A HREF="terminal_interface-curses-forms__ads.htm#443_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#433_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#441_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Color</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#441_14">Foreground</A><A HREF="terminal_interface-curses-forms__ads.htm#441_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#449_14">Set_Background</A><FONT COLOR=red><A NAME="443_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-forms__ads.htm#450_7">Fld</A>   : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#451_7">Back</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#452_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#448_14">Set_Background</A><FONT COLOR=red><A NAME="442_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-forms__ads.htm#449_7">Fld</A>   : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <A HREF="terminal_interface-curses-forms__ads.htm#450_7">Back</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+      <A HREF="terminal_interface-curses-forms__ads.htm#451_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="448_16">Set_Field_Back</A></FONT> (<FONT COLOR=red><A NAME="448_32">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                               <FONT COLOR=red><A NAME="449_32">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#448_16">Set_Field_Back</A>, "set_field_back");
-
-      <FONT COLOR=red><A NAME="452_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
-                                             Color =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#452_7">Color</A>,
-                                             Attr  =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#451_7">Back</A>);
-      <FONT COLOR=red><A NAME="455_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> :=
-        <A HREF="terminal_interface-curses-forms__adb.htm#448_16">Set_Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#450_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-forms__adb.htm#452_7">Ch</A>));
+      <b>function</b> <FONT COLOR=red><A NAME="447_16">Set_Field_Back</A></FONT> (<FONT COLOR=red><A NAME="447_32">Fld</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                               <FONT COLOR=red><A NAME="448_32">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#447_16">Set_Field_Back</A>, "set_field_back");
+
+      <FONT COLOR=red><A NAME="451_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
+                                             Color =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#451_7">Color</A>,
+                                             Attr  =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#450_7">Back</A>);
+      <FONT COLOR=red><A NAME="454_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> :=
+        <A HREF="terminal_interface-curses-forms__adb.htm#447_16">Set_Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#449_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-forms__adb.htm#451_7">Ch</A>));
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#455_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#455_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#454_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#454_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Background;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#448_14">Set_Background</A><A HREF="terminal_interface-curses-forms__ads.htm#448_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#457_14">Background</A><FONT COLOR=red><A NAME="465_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#457_26">Fld</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                         <A HREF="terminal_interface-curses-forms__ads.htm#458_26">Back</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#456_14">Background</A><FONT COLOR=red><A NAME="464_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#456_26">Fld</A>  : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                         <A HREF="terminal_interface-curses-forms__ads.htm#457_26">Back</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="468_16">Field_Back</A></FONT> (<FONT COLOR=red><A NAME="468_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#468_16">Field_Back</A>, "field_back");
+      <b>function</b> <FONT COLOR=red><A NAME="467_16">Field_Back</A></FONT> (<FONT COLOR=red><A NAME="467_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#467_16">Field_Back</A>, "field_back");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__ads.htm#458_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#468_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#457_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-   <b>end</b> Background;
+      <A HREF="terminal_interface-curses-forms__ads.htm#457_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#467_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#456_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#456_14">Background</A><A HREF="terminal_interface-curses-forms__ads.htm#456_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#462_14">Background</A><FONT COLOR=red><A NAME="474_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#462_26">Fld</A>   : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                         <A HREF="terminal_interface-curses-forms__ads.htm#463_26">Back</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>;
-                         <A HREF="terminal_interface-curses-forms__ads.htm#464_26">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#461_14">Background</A><FONT COLOR=red><A NAME="473_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#461_26">Fld</A>   : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                         <A HREF="terminal_interface-curses-forms__ads.htm#462_26">Back</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>;
+                         <A HREF="terminal_interface-curses-forms__ads.htm#463_26">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="478_16">Field_Back</A></FONT> (<FONT COLOR=red><A NAME="478_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#478_16">Field_Back</A>, "field_back");
+      <b>function</b> <FONT COLOR=red><A NAME="477_16">Field_Back</A></FONT> (<FONT COLOR=red><A NAME="477_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#477_16">Field_Back</A>, "field_back");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__ads.htm#463_26">Back</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#478_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#462_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#464_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#478_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#462_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#355_10">Color</A>;
-   <b>end</b> Background;
+      <A HREF="terminal_interface-curses-forms__ads.htm#462_26">Back</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#477_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#461_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+      <A HREF="terminal_interface-curses-forms__ads.htm#463_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#477_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#461_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Color</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#461_14">Background</A><A HREF="terminal_interface-curses-forms__ads.htm#461_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#469_14">Set_Pad_Character</A><FONT COLOR=red><A NAME="487_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#469_33">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                                <A HREF="terminal_interface-curses-forms__ads.htm#470_33">Pad</A> : <b>in</b> Character := <A HREF="terminal_interface-curses-forms__ads.htm#54_4">Space</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#468_14">Set_Pad_Character</A><FONT COLOR=red><A NAME="486_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#468_33">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                                <A HREF="terminal_interface-curses-forms__ads.htm#469_33">Pad</A> : <b>in</b> Character := <A HREF="terminal_interface-curses-forms__ads.htm#53_4">Space</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="490_16">Set_Field_Pad</A></FONT> (<FONT COLOR=red><A NAME="490_31">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                              <FONT COLOR=red><A NAME="491_31">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#490_16">Set_Field_Pad</A>, "set_field_pad");
+      <b>function</b> <FONT COLOR=red><A NAME="489_16">Set_Field_Pad</A></FONT> (<FONT COLOR=red><A NAME="489_31">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                              <FONT COLOR=red><A NAME="490_31">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#489_16">Set_Field_Pad</A>, "set_field_pad");
 
-      <FONT COLOR=red><A NAME="494_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#490_16">Set_Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#469_33">Fld</A>,
-                                                 <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#470_33">Pad</A>)));
+      <FONT COLOR=red><A NAME="493_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#489_16">Set_Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#468_33">Fld</A>,
+                                                 <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#469_33">Pad</A>)));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#494_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#494_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#493_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#493_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Pad_Character;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#468_14">Set_Pad_Character</A><A HREF="terminal_interface-curses-forms__ads.htm#468_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#475_14">Pad_Character</A><FONT COLOR=red><A NAME="504_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#475_29">Fld</A> : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                            <A HREF="terminal_interface-curses-forms__ads.htm#476_29">Pad</A> : <b>out</b> Character)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#474_14">Pad_Character</A><FONT COLOR=red><A NAME="503_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#474_29">Fld</A> : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                            <A HREF="terminal_interface-curses-forms__ads.htm#475_29">Pad</A> : <b>out</b> Character)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="507_16">Field_Pad</A></FONT> (<FONT COLOR=red><A NAME="507_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#507_16">Field_Pad</A>, "field_pad");
+      <b>function</b> <FONT COLOR=red><A NAME="506_16">Field_Pad</A></FONT> (<FONT COLOR=red><A NAME="506_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#506_16">Field_Pad</A>, "field_pad");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__ads.htm#476_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-forms__adb.htm#507_16">Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#475_29">Fld</A>));
-   <b>end</b> Pad_Character;
+      <A HREF="terminal_interface-curses-forms__ads.htm#475_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-forms__adb.htm#506_16">Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#474_29">Fld</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#474_14">Pad_Character</A><A HREF="terminal_interface-curses-forms__ads.htm#474_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_field_info.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#485_14">Info</A><FONT COLOR=red><A NAME="519_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#485_20">Fld</A>                : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#486_20">Lines</A>              : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#487_20">Columns</A>            : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#488_20">First_Row</A>          : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#489_20">First_Column</A>       : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#490_20">Off_Screen</A>         : <b>out</b> Natural;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#491_20">Additional_Buffers</A> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#484_14">Info</A><FONT COLOR=red><A NAME="518_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#484_20">Fld</A>                : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#485_20">Lines</A>              : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#486_20">Columns</A>            : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#487_20">First_Row</A>          : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#488_20">First_Column</A>       : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#489_20">Off_Screen</A>         : <b>out</b> Natural;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#490_20">Additional_Buffers</A> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A>)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="527_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="528_16">Fld_Info</A></FONT> (<FONT COLOR=red><A NAME="528_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                         <FONT COLOR=red><A NAME="529_26">L</A></FONT>, <FONT COLOR=red><A NAME="529_29">C</A></FONT>, <FONT COLOR=red><A NAME="529_32">Fr</A></FONT>, <FONT COLOR=red><A NAME="529_36">Fc</A></FONT>, <FONT COLOR=red><A NAME="529_40">Os</A></FONT>, <FONT COLOR=red><A NAME="529_44">Ab</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#527_12">C_Int_Access</A>)
-                         <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#528_16">Fld_Info</A>, "field_info");
-
-      <FONT COLOR=red><A NAME="533_7">L</A></FONT>, <FONT COLOR=red><A NAME="533_10">C</A></FONT>, <FONT COLOR=red><A NAME="533_13">Fr</A></FONT>, <FONT COLOR=red><A NAME="533_17">Fc</A></FONT>, <FONT COLOR=red><A NAME="533_21">Os</A></FONT>, <FONT COLOR=red><A NAME="533_25">Ab</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <FONT COLOR=red><A NAME="534_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#528_16">Fld_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#485_20">Fld</A>,
-                                            <A HREF="terminal_interface-curses-forms__adb.htm#533_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#533_10">C</A>'<b>Access</b>,
-                                            <A HREF="terminal_interface-curses-forms__adb.htm#533_13">Fr</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#533_17">Fc</A>'<b>Access</b>,
-                                            <A HREF="terminal_interface-curses-forms__adb.htm#533_21">Os</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#533_25">Ab</A>'<b>Access</b>);
+      <b>type</b> <FONT COLOR=red><A NAME="526_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="527_16">Fld_Info</A></FONT> (<FONT COLOR=red><A NAME="527_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                         <FONT COLOR=red><A NAME="528_26">L</A></FONT>, <FONT COLOR=red><A NAME="528_29">C</A></FONT>, <FONT COLOR=red><A NAME="528_32">Fr</A></FONT>, <FONT COLOR=red><A NAME="528_36">Fc</A></FONT>, <FONT COLOR=red><A NAME="528_40">Os</A></FONT>, <FONT COLOR=red><A NAME="528_44">Ab</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#526_12">C_Int_Access</A>)
+                         <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#527_16">Fld_Info</A>, "field_info");
+
+      <FONT COLOR=red><A NAME="532_7">L</A></FONT>, <FONT COLOR=red><A NAME="532_10">C</A></FONT>, <FONT COLOR=red><A NAME="532_13">Fr</A></FONT>, <FONT COLOR=red><A NAME="532_17">Fc</A></FONT>, <FONT COLOR=red><A NAME="532_21">Os</A></FONT>, <FONT COLOR=red><A NAME="532_25">Ab</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="533_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#527_16">Fld_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#484_20">Fld</A>,
+                                            <A HREF="terminal_interface-curses-forms__adb.htm#532_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#532_10">C</A>'<b>Access</b>,
+                                            <A HREF="terminal_interface-curses-forms__adb.htm#532_13">Fr</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#532_17">Fc</A>'<b>Access</b>,
+                                            <A HREF="terminal_interface-curses-forms__adb.htm#532_21">Os</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#532_25">Ab</A>'<b>Access</b>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#534_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#534_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#533_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#533_7">Res</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-forms__ads.htm#486_20">Lines</A>              := <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#533_7">L</A>);
-         <A HREF="terminal_interface-curses-forms__ads.htm#487_20">Columns</A>            := <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#533_10">C</A>);
-         <A HREF="terminal_interface-curses-forms__ads.htm#488_20">First_Row</A>          := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#533_13">Fr</A>);
-         <A HREF="terminal_interface-curses-forms__ads.htm#489_20">First_Column</A>       := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#533_17">Fc</A>);
-         <A HREF="terminal_interface-curses-forms__ads.htm#490_20">Off_Screen</A>         := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#533_21">Os</A>);
-         <A HREF="terminal_interface-curses-forms__ads.htm#491_20">Additional_Buffers</A> := <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Buffer_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#533_25">Ab</A>);
+         <A HREF="terminal_interface-curses-forms__ads.htm#485_20">Lines</A>              := <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#532_7">L</A>);
+         <A HREF="terminal_interface-curses-forms__ads.htm#486_20">Columns</A>            := <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#532_10">C</A>);
+         <A HREF="terminal_interface-curses-forms__ads.htm#487_20">First_Row</A>          := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#532_13">Fr</A>);
+         <A HREF="terminal_interface-curses-forms__ads.htm#488_20">First_Column</A>       := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#532_17">Fc</A>);
+         <A HREF="terminal_interface-curses-forms__ads.htm#489_20">Off_Screen</A>         := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#532_21">Os</A>);
+         <A HREF="terminal_interface-curses-forms__ads.htm#490_20">Additional_Buffers</A> := <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Buffer_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#532_25">Ab</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Info;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#484_14">Info</A><A HREF="terminal_interface-curses-forms__ads.htm#484_14">;</A>
 <FONT COLOR=green><EM>--  |</EM></FONT>
 <FONT COLOR=green><EM>--  |</EM></FONT>
 <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#496_14">Dynamic_Info</A><FONT COLOR=red><A NAME="553_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#496_28">Fld</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                           <A HREF="terminal_interface-curses-forms__ads.htm#497_28">Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                           <A HREF="terminal_interface-curses-forms__ads.htm#498_28">Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
-                           <A HREF="terminal_interface-curses-forms__ads.htm#499_28">Max</A>     : <b>out</b> Natural)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#495_14">Dynamic_Info</A><FONT COLOR=red><A NAME="552_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#495_28">Fld</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                           <A HREF="terminal_interface-curses-forms__ads.htm#496_28">Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                           <A HREF="terminal_interface-curses-forms__ads.htm#497_28">Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
+                           <A HREF="terminal_interface-curses-forms__ads.htm#498_28">Max</A>     : <b>out</b> Natural)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="558_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="559_16">Dyn_Info</A></FONT> (<FONT COLOR=red><A NAME="559_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>; <FONT COLOR=red><A NAME="559_39">L</A></FONT>, <FONT COLOR=red><A NAME="559_42">C</A></FONT>, <FONT COLOR=red><A NAME="559_45">M</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#558_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#559_16">Dyn_Info</A>, "dynamic_field_info");
-
-      <FONT COLOR=red><A NAME="562_7">L</A></FONT>, <FONT COLOR=red><A NAME="562_10">C</A></FONT>, <FONT COLOR=red><A NAME="562_13">M</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <FONT COLOR=red><A NAME="563_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#559_16">Dyn_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#496_28">Fld</A>,
-                                            <A HREF="terminal_interface-curses-forms__adb.htm#562_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#562_10">C</A>'<b>Access</b>,
-                                            <A HREF="terminal_interface-curses-forms__adb.htm#562_13">M</A>'<b>Access</b>);
+      <b>type</b> <FONT COLOR=red><A NAME="557_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="558_16">Dyn_Info</A></FONT> (<FONT COLOR=red><A NAME="558_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>; <FONT COLOR=red><A NAME="558_39">L</A></FONT>, <FONT COLOR=red><A NAME="558_42">C</A></FONT>, <FONT COLOR=red><A NAME="558_45">M</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#557_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#558_16">Dyn_Info</A>, "dynamic_field_info");
+
+      <FONT COLOR=red><A NAME="561_7">L</A></FONT>, <FONT COLOR=red><A NAME="561_10">C</A></FONT>, <FONT COLOR=red><A NAME="561_13">M</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="562_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#558_16">Dyn_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#495_28">Fld</A>,
+                                            <A HREF="terminal_interface-curses-forms__adb.htm#561_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#561_10">C</A>'<b>Access</b>,
+                                            <A HREF="terminal_interface-curses-forms__adb.htm#561_13">M</A>'<b>Access</b>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#563_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#563_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#562_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#562_7">Res</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-forms__ads.htm#497_28">Lines</A>   := <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#562_7">L</A>);
-         <A HREF="terminal_interface-curses-forms__ads.htm#498_28">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#562_10">C</A>);
-         <A HREF="terminal_interface-curses-forms__ads.htm#499_28">Max</A>     := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#562_13">M</A>);
+         <A HREF="terminal_interface-curses-forms__ads.htm#496_28">Lines</A>   := <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#561_7">L</A>);
+         <A HREF="terminal_interface-curses-forms__ads.htm#497_28">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#561_10">C</A>);
+         <A HREF="terminal_interface-curses-forms__ads.htm#498_28">Max</A>     := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#561_13">M</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Dynamic_Info;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#495_14">Dynamic_Info</A><A HREF="terminal_interface-curses-forms__ads.htm#495_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_win.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#508_14">Set_Window</A><FONT COLOR=red><A NAME="582_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#508_26">Frm</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                         <A HREF="terminal_interface-curses-forms__ads.htm#509_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#507_14">Set_Window</A><FONT COLOR=red><A NAME="581_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#507_26">Frm</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                         <A HREF="terminal_interface-curses-forms__ads.htm#508_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="585_16">Set_Form_Win</A></FONT> (<FONT COLOR=red><A NAME="585_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                             <FONT COLOR=red><A NAME="586_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#585_16">Set_Form_Win</A>, "set_form_win");
+      <b>function</b> <FONT COLOR=red><A NAME="584_16">Set_Form_Win</A></FONT> (<FONT COLOR=red><A NAME="584_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                             <FONT COLOR=red><A NAME="585_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#584_16">Set_Form_Win</A>, "set_form_win");
 
-      <FONT COLOR=red><A NAME="589_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#585_16">Set_Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#508_26">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#509_26">Win</A>);
+      <FONT COLOR=red><A NAME="588_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#584_16">Set_Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#507_26">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#508_26">Win</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#589_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#589_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#588_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#588_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Window;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#507_14">Set_Window</A><A HREF="terminal_interface-curses-forms__ads.htm#507_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#514_13">Get_Window</A><FONT COLOR=red><A NAME="598_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#514_25">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#513_13">Get_Window</A> (<A HREF="terminal_interface-curses-forms__ads.htm#513_25">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="600_16">Form_Win</A></FONT> (<FONT COLOR=red><A NAME="600_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#600_16">Form_Win</A>, "form_win");
+      <b>function</b> <FONT COLOR=red><A NAME="599_16">Form_Win</A></FONT> (<FONT COLOR=red><A NAME="599_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#599_16">Form_Win</A>, "form_win");
 
-      <FONT COLOR=red><A NAME="603_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#600_16">Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#514_25">Frm</A>);
+      <FONT COLOR=red><A NAME="602_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#599_16">Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#513_25">Frm</A>);
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#603_7">W</A>;
-   <b>end</b> Get_Window;
+      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#602_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#513_13">Get_Window</A><A HREF="terminal_interface-curses-forms__ads.htm#513_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#519_14">Set_Sub_Window</A><FONT COLOR=red><A NAME="610_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#519_30">Frm</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                             <A HREF="terminal_interface-curses-forms__ads.htm#520_30">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#518_14">Set_Sub_Window</A><FONT COLOR=red><A NAME="609_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#518_30">Frm</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                             <A HREF="terminal_interface-curses-forms__ads.htm#519_30">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="613_16">Set_Form_Sub</A></FONT> (<FONT COLOR=red><A NAME="613_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                             <FONT COLOR=red><A NAME="614_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#613_16">Set_Form_Sub</A>, "set_form_sub");
+      <b>function</b> <FONT COLOR=red><A NAME="612_16">Set_Form_Sub</A></FONT> (<FONT COLOR=red><A NAME="612_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                             <FONT COLOR=red><A NAME="613_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#612_16">Set_Form_Sub</A>, "set_form_sub");
 
-      <FONT COLOR=red><A NAME="617_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#613_16">Set_Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#519_30">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#520_30">Win</A>);
+      <FONT COLOR=red><A NAME="616_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#612_16">Set_Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#518_30">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#519_30">Win</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#617_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#617_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#616_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#616_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Sub_Window;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#518_14">Set_Sub_Window</A><A HREF="terminal_interface-curses-forms__ads.htm#518_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#525_13">Get_Sub_Window</A><FONT COLOR=red><A NAME="626_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#525_29">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#524_13">Get_Sub_Window</A> (<A HREF="terminal_interface-curses-forms__ads.htm#524_29">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="628_16">Form_Sub</A></FONT> (<FONT COLOR=red><A NAME="628_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#628_16">Form_Sub</A>, "form_sub");
+      <b>function</b> <FONT COLOR=red><A NAME="627_16">Form_Sub</A></FONT> (<FONT COLOR=red><A NAME="627_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#627_16">Form_Sub</A>, "form_sub");
 
-      <FONT COLOR=red><A NAME="631_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#628_16">Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#525_29">Frm</A>);
+      <FONT COLOR=red><A NAME="630_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#627_16">Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#524_29">Frm</A>);
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#631_7">W</A>;
-   <b>end</b> Get_Sub_Window;
+      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#630_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#524_13">Get_Sub_Window</A><A HREF="terminal_interface-curses-forms__ads.htm#524_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#530_14">Scale</A><FONT COLOR=red><A NAME="638_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#530_21">Frm</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                    <A HREF="terminal_interface-curses-forms__ads.htm#531_21">Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                    <A HREF="terminal_interface-curses-forms__ads.htm#532_21">Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#529_14">Scale</A><FONT COLOR=red><A NAME="637_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#529_21">Frm</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                    <A HREF="terminal_interface-curses-forms__ads.htm#530_21">Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                    <A HREF="terminal_interface-curses-forms__ads.htm#531_21">Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="642_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="643_16">M_Scale</A></FONT> (<FONT COLOR=red><A NAME="643_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>; <FONT COLOR=red><A NAME="643_37">Yp</A></FONT>, <FONT COLOR=red><A NAME="643_41">Xp</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#642_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#643_16">M_Scale</A>, "scale_form");
+      <b>type</b> <FONT COLOR=red><A NAME="641_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="642_16">M_Scale</A></FONT> (<FONT COLOR=red><A NAME="642_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>; <FONT COLOR=red><A NAME="642_37">Yp</A></FONT>, <FONT COLOR=red><A NAME="642_41">Xp</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#641_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#642_16">M_Scale</A>, "scale_form");
 
-      <FONT COLOR=red><A NAME="646_7">X</A></FONT>, <FONT COLOR=red><A NAME="646_10">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <FONT COLOR=red><A NAME="647_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#643_16">M_Scale</A> (<A HREF="terminal_interface-curses-forms__ads.htm#530_21">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#646_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#646_7">X</A>'<b>Access</b>);
+      <FONT COLOR=red><A NAME="645_7">X</A></FONT>, <FONT COLOR=red><A NAME="645_10">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="646_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#642_16">M_Scale</A> (<A HREF="terminal_interface-curses-forms__ads.htm#529_21">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#645_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#645_7">X</A>'<b>Access</b>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#647_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#647_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#646_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#646_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#531_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#646_10">Y</A>);
-      <A HREF="terminal_interface-curses-forms__ads.htm#532_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#646_7">X</A>);
-   <b>end</b> Scale;
+      <A HREF="terminal_interface-curses-forms__ads.htm#530_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#645_10">Y</A>);
+      <A HREF="terminal_interface-curses-forms__ads.htm#531_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#645_7">X</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#529_14">Scale</A><A HREF="terminal_interface-curses-forms__ads.htm#529_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page menu_hook.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#544_14">Set_Field_Init_Hook</A><FONT COLOR=red><A NAME="662_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#544_35">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                                  <A HREF="terminal_interface-curses-forms__ads.htm#545_35">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form_Hook_Function</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#543_14">Set_Field_Init_Hook</A><FONT COLOR=red><A NAME="661_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#543_35">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                                  <A HREF="terminal_interface-curses-forms__ads.htm#544_35">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form_Hook_Function</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="665_16">Set_Field_Init</A></FONT> (<FONT COLOR=red><A NAME="665_32">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                               <FONT COLOR=red><A NAME="666_32">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#665_16">Set_Field_Init</A>, "set_field_init");
+      <b>function</b> <FONT COLOR=red><A NAME="664_16">Set_Field_Init</A></FONT> (<FONT COLOR=red><A NAME="664_32">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                               <FONT COLOR=red><A NAME="665_32">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#664_16">Set_Field_Init</A>, "set_field_init");
 
-      <FONT COLOR=red><A NAME="669_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#665_16">Set_Field_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#544_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#545_35">Proc</A>);
+      <FONT COLOR=red><A NAME="668_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#664_16">Set_Field_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#543_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#544_35">Proc</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#669_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#669_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#668_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#668_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Field_Init_Hook;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#543_14">Set_Field_Init_Hook</A><A HREF="terminal_interface-curses-forms__ads.htm#543_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#550_14">Set_Field_Term_Hook</A><FONT COLOR=red><A NAME="678_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#550_35">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                                  <A HREF="terminal_interface-curses-forms__ads.htm#551_35">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form_Hook_Function</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#549_14">Set_Field_Term_Hook</A><FONT COLOR=red><A NAME="677_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#549_35">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                                  <A HREF="terminal_interface-curses-forms__ads.htm#550_35">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form_Hook_Function</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="681_16">Set_Field_Term</A></FONT> (<FONT COLOR=red><A NAME="681_32">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                               <FONT COLOR=red><A NAME="682_32">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#681_16">Set_Field_Term</A>, "set_field_term");
+      <b>function</b> <FONT COLOR=red><A NAME="680_16">Set_Field_Term</A></FONT> (<FONT COLOR=red><A NAME="680_32">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                               <FONT COLOR=red><A NAME="681_32">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#680_16">Set_Field_Term</A>, "set_field_term");
 
-      <FONT COLOR=red><A NAME="685_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#681_16">Set_Field_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#550_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#551_35">Proc</A>);
+      <FONT COLOR=red><A NAME="684_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#680_16">Set_Field_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#549_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#550_35">Proc</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#685_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#685_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#684_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#684_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Field_Term_Hook;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#549_14">Set_Field_Term_Hook</A><A HREF="terminal_interface-curses-forms__ads.htm#549_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#556_14">Set_Form_Init_Hook</A><FONT COLOR=red><A NAME="694_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#556_34">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                                 <A HREF="terminal_interface-curses-forms__ads.htm#557_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form_Hook_Function</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#555_14">Set_Form_Init_Hook</A><FONT COLOR=red><A NAME="693_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#555_34">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                                 <A HREF="terminal_interface-curses-forms__ads.htm#556_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form_Hook_Function</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="697_16">Set_Form_Init</A></FONT> (<FONT COLOR=red><A NAME="697_31">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                              <FONT COLOR=red><A NAME="698_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#697_16">Set_Form_Init</A>, "set_form_init");
+      <b>function</b> <FONT COLOR=red><A NAME="696_16">Set_Form_Init</A></FONT> (<FONT COLOR=red><A NAME="696_31">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                              <FONT COLOR=red><A NAME="697_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#696_16">Set_Form_Init</A>, "set_form_init");
 
-      <FONT COLOR=red><A NAME="701_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#697_16">Set_Form_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#556_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#557_34">Proc</A>);
+      <FONT COLOR=red><A NAME="700_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#696_16">Set_Form_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#555_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#556_34">Proc</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#701_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#701_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#700_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#700_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Form_Init_Hook;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#555_14">Set_Form_Init_Hook</A><A HREF="terminal_interface-curses-forms__ads.htm#555_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#562_14">Set_Form_Term_Hook</A><FONT COLOR=red><A NAME="710_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#562_34">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                                 <A HREF="terminal_interface-curses-forms__ads.htm#563_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form_Hook_Function</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#561_14">Set_Form_Term_Hook</A><FONT COLOR=red><A NAME="709_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#561_34">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                                 <A HREF="terminal_interface-curses-forms__ads.htm#562_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form_Hook_Function</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="713_16">Set_Form_Term</A></FONT> (<FONT COLOR=red><A NAME="713_31">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                              <FONT COLOR=red><A NAME="714_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#713_16">Set_Form_Term</A>, "set_form_term");
+      <b>function</b> <FONT COLOR=red><A NAME="712_16">Set_Form_Term</A></FONT> (<FONT COLOR=red><A NAME="712_31">Frm</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                              <FONT COLOR=red><A NAME="713_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#712_16">Set_Form_Term</A>, "set_form_term");
 
-      <FONT COLOR=red><A NAME="717_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#713_16">Set_Form_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#562_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#563_34">Proc</A>);
+      <FONT COLOR=red><A NAME="716_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#712_16">Set_Form_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#561_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#562_34">Proc</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#717_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#717_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#716_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#716_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Form_Term_Hook;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#561_14">Set_Form_Term_Hook</A><A HREF="terminal_interface-curses-forms__ads.htm#561_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_fields.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#592_14">Redefine</A><FONT COLOR=red><A NAME="730_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#592_24">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                       <A HREF="terminal_interface-curses-forms__ads.htm#593_24">Flds</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#136_9">Field_Array_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#591_14">Redefine</A><FONT COLOR=red><A NAME="729_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#591_24">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                       <A HREF="terminal_interface-curses-forms__ads.htm#592_24">Flds</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#135_9">Field_Array_Access</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="733_16">Set_Frm_Fields</A></FONT> (<FONT COLOR=red><A NAME="733_32">Frm</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                               <FONT COLOR=red><A NAME="734_32">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#733_16">Set_Frm_Fields</A>, "set_form_fields");
+      <b>function</b> <FONT COLOR=red><A NAME="732_16">Set_Frm_Fields</A></FONT> (<FONT COLOR=red><A NAME="732_32">Frm</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                               <FONT COLOR=red><A NAME="733_32">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#732_16">Set_Frm_Fields</A>, "set_form_fields");
 
-      <FONT COLOR=red><A NAME="737_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="736_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#593_24">Flds</A> (<A HREF="terminal_interface-curses-forms__ads.htm#593_24">Flds</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#593_24">Flds</A> (<A HREF="terminal_interface-curses-forms__ads.htm#593_24">Flds</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#592_24">Flds</A> (<A HREF="terminal_interface-curses-forms__ads.htm#592_24">Flds</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#592_24">Flds</A> (<A HREF="terminal_interface-curses-forms__ads.htm#592_24">Flds</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-forms__adb.htm#737_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#733_16">Set_Frm_Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#592_24">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#593_24">Flds</A> (<A HREF="terminal_interface-curses-forms__ads.htm#593_24">Flds</A>'First)'Address);
-         <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#737_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-            <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#737_7">Res</A>);
+         <A HREF="terminal_interface-curses-forms__adb.htm#736_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#732_16">Set_Frm_Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#591_24">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#592_24">Flds</A> (<A HREF="terminal_interface-curses-forms__ads.htm#592_24">Flds</A>'First)'Address);
+         <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#736_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+            <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#736_7">Res</A>);
          <b>end</b> <b>if</b>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Redefine;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#591_14">Redefine</A><A HREF="terminal_interface-curses-forms__ads.htm#591_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#604_13">Fields</A><FONT COLOR=red><A NAME="752_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#604_21">Frm</A>   : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                    <A HREF="terminal_interface-curses-forms__ads.htm#605_21">Index</A> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#603_13">Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#603_21">Frm</A>   : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                    <A HREF="terminal_interface-curses-forms__ads.htm#604_21">Index</A> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>
    <b>is</b>
-      <b>use</b> <A HREF="terminal_interface-curses-forms__adb.htm#56_12">F_Array</A>;
+      <b>use</b> <A HREF="terminal_interface-curses-forms__adb.htm#55_12">F_Array</A>;
 
-      <b>function</b> <FONT COLOR=red><A NAME="757_16">C_Fields</A></FONT> (<FONT COLOR=red><A NAME="757_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> Pointer;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#757_16">C_Fields</A>, "form_fields");
+      <b>function</b> <FONT COLOR=red><A NAME="756_16">C_Fields</A></FONT> (<FONT COLOR=red><A NAME="756_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> Pointer;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#756_16">C_Fields</A>, "form_fields");
 
-      <FONT COLOR=red><A NAME="760_7">P</A></FONT> : Pointer := <A HREF="terminal_interface-curses-forms__adb.htm#757_16">C_Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#604_21">Frm</A>);
+      <FONT COLOR=red><A NAME="759_7">P</A></FONT> : Pointer := <A HREF="terminal_interface-curses-forms__adb.htm#756_16">C_Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#603_21">Frm</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#760_7">P</A> = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-forms__ads.htm#605_21">Index</A> <b>not</b> <b>in</b> 1 .. <A HREF="terminal_interface-curses-forms__ads.htm#610_13">Field_Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#604_21">Frm</A>) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#759_7">P</A> = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-forms__ads.htm#604_21">Index</A> <b>not</b> <b>in</b> 1 .. <A HREF="terminal_interface-curses-forms__ads.htm#609_13">Field_Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#603_21">Frm</A>) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-forms__adb.htm#760_7">P</A> := <A HREF="terminal_interface-curses-forms__adb.htm#760_7">P</A> + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#605_21">Index</A>) - 1);
-         <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#760_7">P</A>.<b>all</b>;
+         <A HREF="terminal_interface-curses-forms__adb.htm#759_7">P</A> := <A HREF="terminal_interface-curses-forms__adb.htm#759_7">P</A> + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#604_21">Index</A>) - 1);
+         <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#759_7">P</A>.<b>all</b>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Fields;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#603_13">Fields</A><A HREF="terminal_interface-curses-forms__ads.htm#603_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#610_13">Field_Count</A><FONT COLOR=red><A NAME="772_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#610_26">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> Natural
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#609_13">Field_Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#609_26">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> Natural
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="774_16">Count</A></FONT> (<FONT COLOR=red><A NAME="774_23">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#774_16">Count</A>, "field_count");
+      <b>function</b> <FONT COLOR=red><A NAME="773_16">Count</A></FONT> (<FONT COLOR=red><A NAME="773_23">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#773_16">Count</A>, "field_count");
    <b>begin</b>
-      <b>return</b> Natural (<A HREF="terminal_interface-curses-forms__adb.htm#774_16">Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#610_26">Frm</A>));
-   <b>end</b> Field_Count;
+      <b>return</b> Natural (<A HREF="terminal_interface-curses-forms__adb.htm#773_16">Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#609_26">Frm</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#609_13">Field_Count</A><A HREF="terminal_interface-curses-forms__ads.htm#609_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#615_14">Move</A><FONT COLOR=red><A NAME="782_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#615_20">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#616_20">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#617_20">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#614_14">Move</A><FONT COLOR=red><A NAME="781_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#614_20">Fld</A>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#615_20">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#616_20">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="786_16">Move</A></FONT> (<FONT COLOR=red><A NAME="786_22">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>; <FONT COLOR=red><A NAME="786_35">L</A></FONT>, <FONT COLOR=red><A NAME="786_38">C</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#786_16">Move</A>, "move_field");
+      <b>function</b> <FONT COLOR=red><A NAME="785_16">Move</A></FONT> (<FONT COLOR=red><A NAME="785_22">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>; <FONT COLOR=red><A NAME="785_35">L</A></FONT>, <FONT COLOR=red><A NAME="785_38">C</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#785_16">Move</A>, "move_field");
 
-      <FONT COLOR=red><A NAME="789_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#786_16">Move</A> (<A HREF="terminal_interface-curses-forms__ads.htm#615_20">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#616_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#617_20">Column</A>));
+      <FONT COLOR=red><A NAME="788_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#785_16">Move</A> (<A HREF="terminal_interface-curses-forms__ads.htm#614_20">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#615_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#616_20">Column</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#789_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#789_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#788_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#788_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Move;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#614_14">Move</A><A HREF="terminal_interface-curses-forms__ads.htm#614_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_new.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#626_13">Create</A><FONT COLOR=red><A NAME="802_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#626_21">Fields</A> : <A HREF="terminal_interface-curses-forms__ads.htm#136_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#625_13">Create</A> (<A HREF="terminal_interface-curses-forms__ads.htm#625_21">Fields</A> : <A HREF="terminal_interface-curses-forms__ads.htm#135_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="804_16">NewForm</A></FONT> (<FONT COLOR=red><A NAME="804_25">Fields</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#804_16">NewForm</A>, "new_form");
+      <b>function</b> <FONT COLOR=red><A NAME="803_16">NewForm</A></FONT> (<FONT COLOR=red><A NAME="803_25">Fields</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#803_16">NewForm</A>, "new_form");
 
-      <FONT COLOR=red><A NAME="807_7">M</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
+      <FONT COLOR=red><A NAME="806_7">M</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#626_21">Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#626_21">Fields</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#626_21">Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#626_21">Fields</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#625_21">Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#625_21">Fields</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#625_21">Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#625_21">Fields</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-forms__adb.htm#807_7">M</A> := <A HREF="terminal_interface-curses-forms__adb.htm#804_16">NewForm</A> (<A HREF="terminal_interface-curses-forms__ads.htm#626_21">Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#626_21">Fields</A>'First)'Address);
-         <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#807_7">M</A> = <A HREF="terminal_interface-curses-forms__ads.htm#60_4">Null_Form</A> <b>then</b>
-            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+         <A HREF="terminal_interface-curses-forms__adb.htm#806_7">M</A> := <A HREF="terminal_interface-curses-forms__adb.htm#803_16">NewForm</A> (<A HREF="terminal_interface-curses-forms__ads.htm#625_21">Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#625_21">Fields</A>'First)'Address);
+         <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#806_7">M</A> = <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Form</A> <b>then</b>
+            <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
          <b>end</b> <b>if</b>;
-         <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#807_7">M</A>;
+         <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#806_7">M</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Create;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#625_13">Create</A><A HREF="terminal_interface-curses-forms__ads.htm#625_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#637_14">Delete</A><FONT COLOR=red><A NAME="823_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#637_22">Frm</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#636_14">Delete</A><FONT COLOR=red><A NAME="822_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#636_22">Frm</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="825_16">Free</A></FONT> (<FONT COLOR=red><A NAME="825_22">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#825_16">Free</A>, "free_form");
+      <b>function</b> <FONT COLOR=red><A NAME="824_16">Free</A></FONT> (<FONT COLOR=red><A NAME="824_22">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#824_16">Free</A>, "free_form");
 
-      <FONT COLOR=red><A NAME="828_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#825_16">Free</A> (<A HREF="terminal_interface-curses-forms__ads.htm#637_22">Frm</A>);
+      <FONT COLOR=red><A NAME="827_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#824_16">Free</A> (<A HREF="terminal_interface-curses-forms__ads.htm#636_22">Frm</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#828_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#828_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#827_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#827_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms__ads.htm#637_22">Frm</A> := <A HREF="terminal_interface-curses-forms__ads.htm#60_4">Null_Form</A>;
-   <b>end</b> Delete;
+      <A HREF="terminal_interface-curses-forms__ads.htm#636_22">Frm</A> := <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Form</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#636_14">Delete</A><A HREF="terminal_interface-curses-forms__ads.htm#636_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_opts.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#647_14">Set_Options</A><FONT COLOR=red><A NAME="842_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#647_27">Frm</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                          <A HREF="terminal_interface-curses-forms__ads.htm#648_27">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form_Option_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#646_14">Set_Options</A><FONT COLOR=red><A NAME="841_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#646_27">Frm</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                          <A HREF="terminal_interface-curses-forms__ads.htm#647_27">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form_Option_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="845_16">Set_Form_Opts</A></FONT> (<FONT COLOR=red><A NAME="845_31">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                              <FONT COLOR=red><A NAME="846_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#845_16">Set_Form_Opts</A>, "set_form_opts");
+      <b>function</b> <FONT COLOR=red><A NAME="844_16">Set_Form_Opts</A></FONT> (<FONT COLOR=red><A NAME="844_31">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                              <FONT COLOR=red><A NAME="845_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#844_16">Set_Form_Opts</A>, "set_form_opts");
 
-      <FONT COLOR=red><A NAME="849_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#73_13">FrmOS_2_CInt</A> (<A HREF="terminal_interface-curses-forms__ads.htm#648_27">Options</A>);
-      <FONT COLOR=red><A NAME="850_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="848_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#72_13">FrmOS_2_CInt</A> (<A HREF="terminal_interface-curses-forms__ads.htm#647_27">Options</A>);
+      <FONT COLOR=red><A NAME="849_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__adb.htm#850_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#845_16">Set_Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#647_27">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#849_7">Opt</A>);
-      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#850_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#850_7">Res</A>);
+      <A HREF="terminal_interface-curses-forms__adb.htm#849_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#844_16">Set_Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#646_27">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#848_7">Opt</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#849_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#849_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Options;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#646_14">Set_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#646_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#653_14">Switch_Options</A><FONT COLOR=red><A NAME="860_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#653_30">Frm</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                             <A HREF="terminal_interface-curses-forms__ads.htm#654_30">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form_Option_Set</A>;
-                             <A HREF="terminal_interface-curses-forms__ads.htm#655_30">On</A>      : Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#652_14">Switch_Options</A><FONT COLOR=red><A NAME="859_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#652_30">Frm</A>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                             <A HREF="terminal_interface-curses-forms__ads.htm#653_30">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form_Option_Set</A>;
+                             <A HREF="terminal_interface-curses-forms__ads.htm#654_30">On</A>      : Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="864_16">Form_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="864_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                             <FONT COLOR=red><A NAME="865_30">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#864_16">Form_Opts_On</A>, "form_opts_on");
-      <b>function</b> <FONT COLOR=red><A NAME="867_16">Form_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="867_31">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                              <FONT COLOR=red><A NAME="868_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#867_16">Form_Opts_Off</A>, "form_opts_off");
-
-      <FONT COLOR=red><A NAME="871_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-      <FONT COLOR=red><A NAME="872_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#73_13">FrmOS_2_CInt</A> (<A HREF="terminal_interface-curses-forms__ads.htm#654_30">Options</A>);
+      <b>function</b> <FONT COLOR=red><A NAME="863_16">Form_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="863_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                             <FONT COLOR=red><A NAME="864_30">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#863_16">Form_Opts_On</A>, "form_opts_on");
+      <b>function</b> <FONT COLOR=red><A NAME="866_16">Form_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="866_31">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                              <FONT COLOR=red><A NAME="867_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#866_16">Form_Opts_Off</A>, "form_opts_off");
+
+      <FONT COLOR=red><A NAME="870_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="871_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#72_13">FrmOS_2_CInt</A> (<A HREF="terminal_interface-curses-forms__ads.htm#653_30">Options</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#655_30">On</A> <b>then</b>
-         <A HREF="terminal_interface-curses-forms__adb.htm#871_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#864_16">Form_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#653_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#872_7">Opt</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#654_30">On</A> <b>then</b>
+         <A HREF="terminal_interface-curses-forms__adb.htm#870_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#863_16">Form_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#652_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#871_7">Opt</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-forms__adb.htm#871_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#867_16">Form_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#653_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#872_7">Opt</A>);
+         <A HREF="terminal_interface-curses-forms__adb.htm#870_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#866_16">Form_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#652_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#871_7">Opt</A>);
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#871_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#871_7">Err</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#870_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#870_7">Err</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Switch_Options;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#652_14">Switch_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#652_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#661_14">Get_Options</A><FONT COLOR=red><A NAME="886_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#661_27">Frm</A>     : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                          <A HREF="terminal_interface-curses-forms__ads.htm#662_27">Options</A> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form_Option_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#660_14">Get_Options</A><FONT COLOR=red><A NAME="885_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#660_27">Frm</A>     : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                          <A HREF="terminal_interface-curses-forms__ads.htm#661_27">Options</A> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form_Option_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="889_16">Form_Opts</A></FONT> (<FONT COLOR=red><A NAME="889_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#889_16">Form_Opts</A>, "form_opts");
+      <b>function</b> <FONT COLOR=red><A NAME="888_16">Form_Opts</A></FONT> (<FONT COLOR=red><A NAME="888_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#888_16">Form_Opts</A>, "form_opts");
 
-      <FONT COLOR=red><A NAME="892_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#889_16">Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#661_27">Frm</A>);
+      <FONT COLOR=red><A NAME="891_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#888_16">Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#660_27">Frm</A>);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__ads.htm#662_27">Options</A> := <A HREF="terminal_interface-curses-forms__adb.htm#77_13">CInt_2_FrmOS</A> (<A HREF="terminal_interface-curses-forms__adb.htm#892_7">Res</A>);
-   <b>end</b> Get_Options;
+      <A HREF="terminal_interface-curses-forms__ads.htm#661_27">Options</A> := <A HREF="terminal_interface-curses-forms__adb.htm#76_13">CInt_2_FrmOS</A> (<A HREF="terminal_interface-curses-forms__adb.htm#891_7">Res</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#660_14">Get_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#660_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#666_13">Get_Options</A><FONT COLOR=red><A NAME="899_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#666_26">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#60_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form_Option_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#665_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#665_26">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form_Option_Set</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="901_7">Fos</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form_Option_Set</A>;
+      <FONT COLOR=red><A NAME="900_7">Fos</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form_Option_Set</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-forms__ads.htm#661_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#666_26">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#901_7">Fos</A>);
-      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#901_7">Fos</A>;
-   <b>end</b> Get_Options;
+      <A HREF="terminal_interface-curses-forms__ads.htm#660_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#665_26">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#900_7">Fos</A>);
+      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#900_7">Fos</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#665_13">Get_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#665_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_post.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#675_14">Post</A><FONT COLOR=red><A NAME="913_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#675_20">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#676_20">Post</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#674_14">Post</A><FONT COLOR=red><A NAME="912_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#674_20">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#675_20">Post</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="916_16">M_Post</A></FONT> (<FONT COLOR=red><A NAME="916_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#916_16">M_Post</A>, "post_form");
-      <b>function</b> <FONT COLOR=red><A NAME="918_16">M_Unpost</A></FONT> (<FONT COLOR=red><A NAME="918_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#918_16">M_Unpost</A>, "unpost_form");
+      <b>function</b> <FONT COLOR=red><A NAME="915_16">M_Post</A></FONT> (<FONT COLOR=red><A NAME="915_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#915_16">M_Post</A>, "post_form");
+      <b>function</b> <FONT COLOR=red><A NAME="917_16">M_Unpost</A></FONT> (<FONT COLOR=red><A NAME="917_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#917_16">M_Unpost</A>, "unpost_form");
 
-      <FONT COLOR=red><A NAME="921_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="920_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#676_20">Post</A> <b>then</b>
-         <A HREF="terminal_interface-curses-forms__adb.htm#921_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#916_16">M_Post</A> (<A HREF="terminal_interface-curses-forms__ads.htm#675_20">Frm</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#675_20">Post</A> <b>then</b>
+         <A HREF="terminal_interface-curses-forms__adb.htm#920_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#915_16">M_Post</A> (<A HREF="terminal_interface-curses-forms__ads.htm#674_20">Frm</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-forms__adb.htm#921_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#918_16">M_Unpost</A> (<A HREF="terminal_interface-curses-forms__ads.htm#675_20">Frm</A>);
+         <A HREF="terminal_interface-curses-forms__adb.htm#920_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#917_16">M_Unpost</A> (<A HREF="terminal_interface-curses-forms__ads.htm#674_20">Frm</A>);
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#921_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#921_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#920_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#920_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Post;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#674_14">Post</A><A HREF="terminal_interface-curses-forms__ads.htm#674_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_cursor.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#686_14">Position_Cursor</A><FONT COLOR=red><A NAME="939_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#686_31">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#685_14">Position_Cursor</A><FONT COLOR=red><A NAME="938_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#685_31">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="941_16">Pos_Form_Cursor</A></FONT> (<FONT COLOR=red><A NAME="941_33">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#941_16">Pos_Form_Cursor</A>, "pos_form_cursor");
+      <b>function</b> <FONT COLOR=red><A NAME="940_16">Pos_Form_Cursor</A></FONT> (<FONT COLOR=red><A NAME="940_33">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#940_16">Pos_Form_Cursor</A>, "pos_form_cursor");
 
-      <FONT COLOR=red><A NAME="944_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#941_16">Pos_Form_Cursor</A> (<A HREF="terminal_interface-curses-forms__ads.htm#686_31">Frm</A>);
+      <FONT COLOR=red><A NAME="943_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#940_16">Pos_Form_Cursor</A> (<A HREF="terminal_interface-curses-forms__ads.htm#685_31">Frm</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#944_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#944_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-forms__adb.htm#943_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#943_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Position_Cursor;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#685_14">Position_Cursor</A><A HREF="terminal_interface-curses-forms__ads.htm#685_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_data.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#695_13">Data_Ahead</A><FONT COLOR=red><A NAME="957_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#695_25">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#694_13">Data_Ahead</A> (<A HREF="terminal_interface-curses-forms__ads.htm#694_25">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="959_16">Ahead</A></FONT> (<FONT COLOR=red><A NAME="959_23">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#959_16">Ahead</A>, "data_ahead");
+      <b>function</b> <FONT COLOR=red><A NAME="958_16">Ahead</A></FONT> (<FONT COLOR=red><A NAME="958_23">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#958_16">Ahead</A>, "data_ahead");
 
-      <FONT COLOR=red><A NAME="962_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#959_16">Ahead</A> (<A HREF="terminal_interface-curses-forms__ads.htm#695_25">Frm</A>);
+      <FONT COLOR=red><A NAME="961_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#958_16">Ahead</A> (<A HREF="terminal_interface-curses-forms__ads.htm#694_25">Frm</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#962_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#76_4">Curses_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#961_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Data_Ahead;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#694_13">Data_Ahead</A><A HREF="terminal_interface-curses-forms__ads.htm#694_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#700_13">Data_Behind</A><FONT COLOR=red><A NAME="973_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#700_26">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#699_13">Data_Behind</A> (<A HREF="terminal_interface-curses-forms__ads.htm#699_26">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="975_16">Behind</A></FONT> (<FONT COLOR=red><A NAME="975_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#975_16">Behind</A>, "data_behind");
+      <b>function</b> <FONT COLOR=red><A NAME="974_16">Behind</A></FONT> (<FONT COLOR=red><A NAME="974_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#974_16">Behind</A>, "data_behind");
 
-      <FONT COLOR=red><A NAME="978_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#975_16">Behind</A> (<A HREF="terminal_interface-curses-forms__ads.htm#700_26">Frm</A>);
+      <FONT COLOR=red><A NAME="977_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#974_16">Behind</A> (<A HREF="terminal_interface-curses-forms__ads.htm#699_26">Frm</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#978_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#76_4">Curses_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#977_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Data_Behind;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#699_13">Data_Behind</A><A HREF="terminal_interface-curses-forms__ads.htm#699_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_driver.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#714_13">Driver</A><FONT COLOR=red><A NAME="993_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#714_21">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                    <A HREF="terminal_interface-curses-forms__ads.htm#715_21">Key</A> : <A HREF="terminal_interface-curses__ads.htm#68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#708_9">Driver_Result</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#713_13">Driver</A> (<A HREF="terminal_interface-curses-forms__ads.htm#713_21">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                    <A HREF="terminal_interface-curses-forms__ads.htm#714_21">Key</A> : <A HREF="terminal_interface-curses__ads.htm#67_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#707_9">Driver_Result</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="996_16">Frm_Driver</A></FONT> (<FONT COLOR=red><A NAME="996_28">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>; <FONT COLOR=red><A NAME="996_40">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#996_16">Frm_Driver</A>, "form_driver");
+      <b>function</b> <FONT COLOR=red><A NAME="995_16">Frm_Driver</A></FONT> (<FONT COLOR=red><A NAME="995_28">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>; <FONT COLOR=red><A NAME="995_40">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#995_16">Frm_Driver</A>, "form_driver");
 
-      <FONT COLOR=red><A NAME="999_7">R</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#996_16">Frm_Driver</A> (<A HREF="terminal_interface-curses-forms__ads.htm#714_21">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#715_21">Key</A>));
+      <FONT COLOR=red><A NAME="998_7">R</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#995_16">Frm_Driver</A> (<A HREF="terminal_interface-curses-forms__ads.htm#713_21">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#714_21">Key</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#999_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#999_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#89_4">E_Unknown_Command</A> <b>then</b>
-            <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#710_27">Unknown_Request</A>;
-         <b>elsif</b> <A HREF="terminal_interface-curses-forms__adb.htm#999_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#94_4">E_Invalid_Field</A> <b>then</b>
-            <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#711_27">Invalid_Field</A>;
-         <b>elsif</b> <A HREF="terminal_interface-curses-forms__adb.htm#999_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#93_4">E_Request_Denied</A> <b>then</b>
-            <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#709_27">Request_Denied</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#998_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#998_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#88_4">E_Unknown_Command</A> <b>then</b>
+            <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#709_27">Unknown_Request</A>;
+         <b>elsif</b> <A HREF="terminal_interface-curses-forms__adb.htm#998_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#93_4">E_Invalid_Field</A> <b>then</b>
+            <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#710_27">Invalid_Field</A>;
+         <b>elsif</b> <A HREF="terminal_interface-curses-forms__adb.htm#998_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#92_4">E_Request_Denied</A> <b>then</b>
+            <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#708_27">Request_Denied</A>;
          <b>else</b>
-            <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#999_7">R</A>);
-            <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#708_27">Form_Ok</A>;
+            <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#998_7">R</A>);
+            <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#707_27">Form_Ok</A>;
          <b>end</b> <b>if</b>;
       <b>else</b>
-         <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#708_27">Form_Ok</A>;
+         <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#707_27">Form_Ok</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Driver;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#713_13">Driver</A><A HREF="terminal_interface-curses-forms__ads.htm#713_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | man page form_page.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#726_14">Set_Current</A><FONT COLOR=red><A NAME="1023_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#726_27">Frm</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                          <A HREF="terminal_interface-curses-forms__ads.htm#727_27">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#725_14">Set_Current</A><FONT COLOR=red><A NAME="1022_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#725_27">Frm</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                          <A HREF="terminal_interface-curses-forms__ads.htm#726_27">Fld</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1026_16">Set_Current_Fld</A></FONT> (<FONT COLOR=red><A NAME="1026_33">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>; <FONT COLOR=red><A NAME="1026_45">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1026_16">Set_Current_Fld</A>, "set_current_field");
+      <b>function</b> <FONT COLOR=red><A NAME="1025_16">Set_Current_Fld</A></FONT> (<FONT COLOR=red><A NAME="1025_33">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>; <FONT COLOR=red><A NAME="1025_45">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1025_16">Set_Current_Fld</A>, "set_current_field");
 
-      <FONT COLOR=red><A NAME="1029_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1026_16">Set_Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#726_27">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#727_27">Fld</A>);
+      <FONT COLOR=red><A NAME="1028_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1025_16">Set_Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#725_27">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#726_27">Fld</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1029_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1029_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1028_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1028_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Current;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#725_14">Set_Current</A><A HREF="terminal_interface-curses-forms__ads.htm#725_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#732_13">Current</A><FONT COLOR=red><A NAME="1038_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#732_22">Frm</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#731_13">Current</A> (<A HREF="terminal_interface-curses-forms__ads.htm#731_22">Frm</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1040_16">Current_Fld</A></FONT> (<FONT COLOR=red><A NAME="1040_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1040_16">Current_Fld</A>, "current_field");
+      <b>function</b> <FONT COLOR=red><A NAME="1039_16">Current_Fld</A></FONT> (<FONT COLOR=red><A NAME="1039_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1039_16">Current_Fld</A>, "current_field");
 
-      <FONT COLOR=red><A NAME="1043_7">Fld</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1040_16">Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#732_22">Frm</A>);
+      <FONT COLOR=red><A NAME="1042_7">Fld</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1039_16">Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#731_22">Frm</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1043_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1042_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#1043_7">Fld</A>;
-   <b>end</b> Current;
+      <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#1042_7">Fld</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#731_13">Current</A><A HREF="terminal_interface-curses-forms__ads.htm#731_13">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#737_14">Set_Page</A><FONT COLOR=red><A NAME="1053_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#737_24">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>;
-                       <A HREF="terminal_interface-curses-forms__ads.htm#738_24">Page</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#723_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#723_9">Page_Number</A>'First)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#736_14">Set_Page</A><FONT COLOR=red><A NAME="1052_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#736_24">Frm</A>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+                       <A HREF="terminal_interface-curses-forms__ads.htm#737_24">Page</A> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#722_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#722_9">Page_Number</A>'First)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1056_16">Set_Frm_Page</A></FONT> (<FONT COLOR=red><A NAME="1056_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>; <FONT COLOR=red><A NAME="1056_42">Pg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1056_16">Set_Frm_Page</A>, "set_form_page");
+      <b>function</b> <FONT COLOR=red><A NAME="1055_16">Set_Frm_Page</A></FONT> (<FONT COLOR=red><A NAME="1055_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>; <FONT COLOR=red><A NAME="1055_42">Pg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1055_16">Set_Frm_Page</A>, "set_form_page");
 
-      <FONT COLOR=red><A NAME="1059_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1056_16">Set_Frm_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#737_24">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#738_24">Page</A>));
+      <FONT COLOR=red><A NAME="1058_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1055_16">Set_Frm_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#736_24">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#737_24">Page</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1059_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1059_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1058_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1058_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Page;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#736_14">Set_Page</A><A HREF="terminal_interface-curses-forms__ads.htm#736_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#743_13">Page</A><FONT COLOR=red><A NAME="1068_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#743_19">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#723_9">Page_Number</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#742_13">Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#742_19">Frm</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#722_9">Page_Number</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1070_16">Get_Page</A></FONT> (<FONT COLOR=red><A NAME="1070_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1070_16">Get_Page</A>, "form_page");
+      <b>function</b> <FONT COLOR=red><A NAME="1069_16">Get_Page</A></FONT> (<FONT COLOR=red><A NAME="1069_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1069_16">Get_Page</A>, "form_page");
 
-      <FONT COLOR=red><A NAME="1073_7">P</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1070_16">Get_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#743_19">Frm</A>);
+      <FONT COLOR=red><A NAME="1072_7">P</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1069_16">Get_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#742_19">Frm</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1073_7">P</A> &lt; 0 <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1072_7">P</A> &lt; 0 <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>else</b>
-         <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#723_9">Page_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1073_7">P</A>);
+         <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#722_9">Page_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1072_7">P</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Page;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#742_13">Page</A><A HREF="terminal_interface-curses-forms__ads.htm#742_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#748_13">Get_Index</A><FONT COLOR=red><A NAME="1082_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#748_24">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> Positive
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#747_13">Get_Index</A> (<A HREF="terminal_interface-curses-forms__ads.htm#747_24">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> Positive
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1084_16">Get_Fieldindex</A></FONT> (<FONT COLOR=red><A NAME="1084_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1084_16">Get_Fieldindex</A>, "field_index");
+      <b>function</b> <FONT COLOR=red><A NAME="1083_16">Get_Fieldindex</A></FONT> (<FONT COLOR=red><A NAME="1083_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1083_16">Get_Fieldindex</A>, "field_index");
 
-      <FONT COLOR=red><A NAME="1087_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1084_16">Get_Fieldindex</A> (<A HREF="terminal_interface-curses-forms__ads.htm#748_24">Fld</A>);
+      <FONT COLOR=red><A NAME="1086_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1083_16">Get_Fieldindex</A> (<A HREF="terminal_interface-curses-forms__ads.htm#747_24">Fld</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1087_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#289_4">Form_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1086_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#288_4">Form_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-forms__adb.htm#1087_7">Res</A>) + Positive'First);
-   <b>end</b> Get_Index;
+      <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-forms__adb.htm#1086_7">Res</A>) + Positive'First);
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#747_13">Get_Index</A><A HREF="terminal_interface-curses-forms__ads.htm#747_13">;</A>
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#760_14">Set_New_Page</A><FONT COLOR=red><A NAME="1102_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#760_28">Fld</A>      : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
-                           <A HREF="terminal_interface-curses-forms__ads.htm#761_28">New_Page</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#759_14">Set_New_Page</A><FONT COLOR=red><A NAME="1101_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#759_28">Fld</A>      : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>;
+                           <A HREF="terminal_interface-curses-forms__ads.htm#760_28">New_Page</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1105_16">Set_Page</A></FONT> (<FONT COLOR=red><A NAME="1105_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>; <FONT COLOR=red><A NAME="1105_39">Flg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1105_16">Set_Page</A>, "set_new_page");
+      <b>function</b> <FONT COLOR=red><A NAME="1104_16">Set_Page</A></FONT> (<FONT COLOR=red><A NAME="1104_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>; <FONT COLOR=red><A NAME="1104_39">Flg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1104_16">Set_Page</A>, "set_new_page");
 
-      <FONT COLOR=red><A NAME="1108_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1105_16">Set_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#760_28">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#761_28">New_Page</A>));
+      <FONT COLOR=red><A NAME="1107_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1104_16">Set_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#759_28">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#760_28">New_Page</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1108_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1108_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1107_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1107_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_New_Page;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#759_14">Set_New_Page</A><A HREF="terminal_interface-curses-forms__ads.htm#759_14">;</A>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#766_13">Is_New_Page</A><FONT COLOR=red><A NAME="1117_13"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#766_26">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#765_13">Is_New_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#765_26">Fld</A> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1119_16">Is_New</A></FONT> (<FONT COLOR=red><A NAME="1119_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1119_16">Is_New</A>, "new_page");
+      <b>function</b> <FONT COLOR=red><A NAME="1118_16">Is_New</A></FONT> (<FONT COLOR=red><A NAME="1118_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-forms__adb.htm#1118_16">Is_New</A>, "new_page");
 
-      <FONT COLOR=red><A NAME="1122_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1119_16">Is_New</A> (<A HREF="terminal_interface-curses-forms__ads.htm#766_26">Fld</A>);
+      <FONT COLOR=red><A NAME="1121_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#1118_16">Is_New</A> (<A HREF="terminal_interface-curses-forms__ads.htm#765_26">Fld</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1122_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#76_4">Curses_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#1121_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Is_New_Page;
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#765_13">Is_New_Page</A><A HREF="terminal_interface-curses-forms__ads.htm#765_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#138_14">Free</A><FONT COLOR=red><A NAME="1131_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#138_20">FA</A>          : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#136_9">Field_Array_Access</A>;
-                   <A HREF="terminal_interface-curses-forms__ads.htm#139_20">Free_Fields</A> : <b>in</b> Boolean := False)
+   <b>procedure</b> <A HREF="terminal_interface-curses-forms__ads.htm#137_14">Free</A><FONT COLOR=red><A NAME="1130_14"></A></FONT> (<A HREF="terminal_interface-curses-forms__ads.htm#137_20">FA</A>          : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#135_9">Field_Array_Access</A>;
+                   <A HREF="terminal_interface-curses-forms__ads.htm#138_20">Free_Fields</A> : <b>in</b> Boolean := False)
    <b>is</b>
-      <b>procedure</b> <FONT COLOR=red><A NAME="1134_17">Release</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
-        (<A HREF="terminal_interface-curses-forms__ads.htm#133_9">Field_Array</A>, <A HREF="terminal_interface-curses-forms__ads.htm#136_9">Field_Array_Access</A>);
+      <b>procedure</b> <FONT COLOR=red><A NAME="1133_17">Release</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
+        (<A HREF="terminal_interface-curses-forms__ads.htm#132_9">Field_Array</A>, <A HREF="terminal_interface-curses-forms__ads.htm#135_9">Field_Array_Access</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#138_20">FA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms__ads.htm#139_20">Free_Fields</A> <b>then</b>
-         <b>for</b> <FONT COLOR=red><A NAME="1138_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#138_20">FA</A>'First .. (<A HREF="terminal_interface-curses-forms__ads.htm#138_20">FA</A>'Last - 1) <b>loop</b>
-            <b>if</b> (<A HREF="terminal_interface-curses-forms__ads.htm#138_20">FA</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1138_14">I</A>) /= <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A>) <b>then</b>
-               <A HREF="terminal_interface-curses-forms__ads.htm#318_14">Delete</A> (<A HREF="terminal_interface-curses-forms__ads.htm#138_20">FA</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1138_14">I</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#137_20">FA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms__ads.htm#138_20">Free_Fields</A> <b>then</b>
+         <b>for</b> <FONT COLOR=red><A NAME="1137_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#137_20">FA</A>'First .. (<A HREF="terminal_interface-curses-forms__ads.htm#137_20">FA</A>'Last - 1) <b>loop</b>
+            <b>if</b> (<A HREF="terminal_interface-curses-forms__ads.htm#137_20">FA</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1137_14">I</A>) /= <A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A>) <b>then</b>
+               <A HREF="terminal_interface-curses-forms__ads.htm#317_14">Delete</A> (<A HREF="terminal_interface-curses-forms__ads.htm#137_20">FA</A> (<A HREF="terminal_interface-curses-forms__adb.htm#1137_14">I</A>));
             <b>end</b> <b>if</b>;
          <b>end</b> <b>loop</b>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-forms__adb.htm#1134_17">Release</A> (<A HREF="terminal_interface-curses-forms__ads.htm#138_20">FA</A>);
-   <b>end</b> Free;
+      <A HREF="terminal_interface-curses-forms__adb.htm#1133_17">Release</A> (<A HREF="terminal_interface-curses-forms__ads.htm#137_20">FA</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#137_14">Free</A><A HREF="terminal_interface-curses-forms__ads.htm#137_14">;</A>
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#103_13">Default_Field_Options</A><FONT COLOR=red><A NAME="1149_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field_Option_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#102_13">Default_Field_Options</A> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field_Option_Set</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#419_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A>);
-   <b>end</b> Default_Field_Options;
+      <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#418_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#58_4">Null_Field</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#102_13">Default_Field_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#102_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#127_13">Default_Form_Options</A><FONT COLOR=red><A NAME="1155_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form_Option_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses-forms__ads.htm#126_13">Default_Form_Options</A> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form_Option_Set</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#666_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#60_4">Null_Form</A>);
-   <b>end</b> Default_Form_Options;
+      <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#665_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Form</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#126_13">Default_Form_Options</A><A HREF="terminal_interface-curses-forms__ads.htm#126_13">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Forms;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#48_35">Forms</A><A HREF="terminal_interface-curses-forms__ads.htm#48_35">;</A>
+</PRE></BODY></HTML>
index b3e25ece74629c96f2f895f5ad1e6b675a9760f1..9bb9772fa009c018ca9167d082d6c74a39b11279 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.26 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.27 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <FONT COLOR=green><EM>--  form binding.</EM></FONT>
 
    Space : Character <b>renames</b> Ada.Characters.Latin_1.Space;
 
-   <b>type</b> <FONT COLOR=red><A NAME="57_9">Field</A></FONT>        <b>is</b> <b>private</b>;
+   <b>type</b> <FONT COLOR=red><A NAME="56_9">Field</A></FONT>        <b>is</b> <b>private</b>;
    <b>type</b> Form         <b>is</b> <b>private</b>;
 
-   <FONT COLOR=red><A NAME="60_4">Null_Field</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Field</A>;
+   <FONT COLOR=red><A NAME="59_4">Null_Field</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A>;
    Null_Form         : <b>constant</b> Form;
 
-   <b>type</b> Field_Justification <b>is</b> (<FONT COLOR=red><A NAME="63_33">None</A></FONT>,
-                                <FONT COLOR=red><A NAME="64_33">Left</A></FONT>,
-                                <FONT COLOR=red><A NAME="65_33">Center</A></FONT>,
+   <b>type</b> Field_Justification <b>is</b> (<FONT COLOR=red><A NAME="62_33">None</A></FONT>,
+                                <FONT COLOR=red><A NAME="63_33">Left</A></FONT>,
+                                <FONT COLOR=red><A NAME="64_33">Center</A></FONT>,
                                 Right);
 
    <b>pragma</b> Warnings (Off);
    <b>type</b> Field_Option_Set <b>is</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="71_10">Visible</A></FONT>     : Boolean;
-         <FONT COLOR=red><A NAME="72_10">Active</A></FONT>      : Boolean;
-         <FONT COLOR=red><A NAME="73_10">Public</A></FONT>      : Boolean;
-         <FONT COLOR=red><A NAME="74_10">Edit</A></FONT>        : Boolean;
-         <FONT COLOR=red><A NAME="75_10">Wrap</A></FONT>        : Boolean;
-         <FONT COLOR=red><A NAME="76_10">Blank</A></FONT>       : Boolean;
-         <FONT COLOR=red><A NAME="77_10">Auto_Skip</A></FONT>   : Boolean;
-         <FONT COLOR=red><A NAME="78_10">Null_Ok</A></FONT>     : Boolean;
-         <FONT COLOR=red><A NAME="79_10">Pass_Ok</A></FONT>     : Boolean;
-         Static      : Boolean;
-      <b>end</b> <b>record</b><A HREF="terminal_interface-curses-forms__ads.htm#68_9">;</A>
+         <FONT COLOR=red><A NAME="70_10">Visible</A></FONT>     : Boolean;
+         <FONT COLOR=red><A NAME="71_10">Active</A></FONT>      : Boolean;
+         <FONT COLOR=red><A NAME="72_10">Public</A></FONT>      : Boolean;
+         <FONT COLOR=red><A NAME="73_10">Edit</A></FONT>        : Boolean;
+         <FONT COLOR=red><A NAME="74_10">Wrap</A></FONT>        : Boolean;
+         <FONT COLOR=red><A NAME="75_10">Blank</A></FONT>       : Boolean;
+         <FONT COLOR=red><A NAME="76_10">Auto_Skip</A></FONT>   : Boolean;
+         <FONT COLOR=red><A NAME="77_10">Null_Ok</A></FONT>     : Boolean;
+         <FONT COLOR=red><A NAME="78_10">Pass_Ok</A></FONT>     : Boolean;
+         Static <A HREF="terminal_interface-curses-forms__ads.htm#67_9"> </A>    : Boolean;
+      <b>end</b> <b>record</b><A HREF="terminal_interface-curses-forms__ads.htm#67_9">;</A>
    <b>pragma</b> Pack (Field_Option_Set);
    <b>pragma</b> Convention (C, Field_Option_Set);
 
    <b>pragma</b> Warnings (Off);
    <b>type</b> Form_Option_Set <b>is</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="111_10">NL_Overload</A></FONT> : Boolean;
+         <FONT COLOR=red><A NAME="110_10">NL_Overload</A></FONT> : Boolean;
          BS_Overload : Boolean;
-      <b>end</b> <b>record</b><A HREF="terminal_interface-curses-forms__ads.htm#108_9">;</A>
+      <b>end</b> <b>record</b><A HREF="terminal_interface-curses-forms__ads.htm#107_9">;</A>
    <b>pragma</b> Pack (Form_Option_Set);
    <b>pragma</b> Convention (C, Form_Option_Set);
 
 
    <b>type</b> Field_Array_Access <b>is</b> <b>access</b> Field_Array;
 
-   <b>procedure</b> Free (<FONT COLOR=red><A NAME="139_20">FA</A></FONT>          : <b>in</b> <b>out</b> Field_Array_Access;
+   <b>procedure</b> Free (<FONT COLOR=red><A NAME="138_20">FA</A></FONT>          : <b>in</b> <b>out</b> Field_Array_Access;
                    Free_Fields : <b>in</b> Boolean := False);
    <FONT COLOR=green><EM>--  Release the memory for an allocated field array</EM></FONT>
    <FONT COLOR=green><EM>--  If Free_Fields is True, call Delete() for all the fields in</EM></FONT>
    <b>subtype</b> Form_Request_Code <b>is</b> Key_Code <b>range</b> (Key_Max + 1) .. (Key_Max + 57);
 
    <FONT COLOR=green><EM>--  The prefix F_ stands for "Form Request"</EM></FONT>
-   <FONT COLOR=red><A NAME="148_4">F_Next_Page</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 1;
-   <FONT COLOR=red><A NAME="149_4">F_Previous_Page</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 2;
-   <FONT COLOR=red><A NAME="150_4">F_First_Page</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 3;
+   <FONT COLOR=red><A NAME="147_4">F_Next_Page</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 1;
+   <FONT COLOR=red><A NAME="148_4">F_Previous_Page</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 2;
+   <FONT COLOR=red><A NAME="149_4">F_First_Page</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 3;
    F_Last_Page                : <b>constant</b> Form_Request_Code := Key_Max + 4;
 
-   <FONT COLOR=red><A NAME="153_4">F_Next_Field</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 5;
-   <FONT COLOR=red><A NAME="154_4">F_Previous_Field</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 6;
-   <FONT COLOR=red><A NAME="155_4">F_First_Field</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 7;
-   <FONT COLOR=red><A NAME="156_4">F_Last_Field</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 8;
-   <FONT COLOR=red><A NAME="157_4">F_Sorted_Next_Field</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 9;
-   <FONT COLOR=red><A NAME="158_4">F_Sorted_Previous_Field</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 10;
-   <FONT COLOR=red><A NAME="159_4">F_Sorted_First_Field</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 11;
-   <FONT COLOR=red><A NAME="160_4">F_Sorted_Last_Field</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 12;
-   <FONT COLOR=red><A NAME="161_4">F_Left_Field</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 13;
-   <FONT COLOR=red><A NAME="162_4">F_Right_Field</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 14;
-   <FONT COLOR=red><A NAME="163_4">F_Up_Field</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 15;
+   <FONT COLOR=red><A NAME="152_4">F_Next_Field</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 5;
+   <FONT COLOR=red><A NAME="153_4">F_Previous_Field</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 6;
+   <FONT COLOR=red><A NAME="154_4">F_First_Field</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 7;
+   <FONT COLOR=red><A NAME="155_4">F_Last_Field</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 8;
+   <FONT COLOR=red><A NAME="156_4">F_Sorted_Next_Field</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 9;
+   <FONT COLOR=red><A NAME="157_4">F_Sorted_Previous_Field</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 10;
+   <FONT COLOR=red><A NAME="158_4">F_Sorted_First_Field</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 11;
+   <FONT COLOR=red><A NAME="159_4">F_Sorted_Last_Field</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 12;
+   <FONT COLOR=red><A NAME="160_4">F_Left_Field</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 13;
+   <FONT COLOR=red><A NAME="161_4">F_Right_Field</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 14;
+   <FONT COLOR=red><A NAME="162_4">F_Up_Field</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 15;
    F_Down_Field               : <b>constant</b> Form_Request_Code := Key_Max + 16;
 
-   <FONT COLOR=red><A NAME="166_4">F_Next_Char</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 17;
-   <FONT COLOR=red><A NAME="167_4">F_Previous_Char</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 18;
-   <FONT COLOR=red><A NAME="168_4">F_Next_Line</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 19;
-   <FONT COLOR=red><A NAME="169_4">F_Previous_Line</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 20;
-   <FONT COLOR=red><A NAME="170_4">F_Next_Word</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 21;
-   <FONT COLOR=red><A NAME="171_4">F_Previous_Word</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 22;
-   <FONT COLOR=red><A NAME="172_4">F_Begin_Field</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 23;
-   <FONT COLOR=red><A NAME="173_4">F_End_Field</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 24;
-   <FONT COLOR=red><A NAME="174_4">F_Begin_Line</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 25;
-   <FONT COLOR=red><A NAME="175_4">F_End_Line</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 26;
-   <FONT COLOR=red><A NAME="176_4">F_Left_Char</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 27;
-   <FONT COLOR=red><A NAME="177_4">F_Right_Char</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 28;
-   <FONT COLOR=red><A NAME="178_4">F_Up_Char</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 29;
+   <FONT COLOR=red><A NAME="165_4">F_Next_Char</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 17;
+   <FONT COLOR=red><A NAME="166_4">F_Previous_Char</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 18;
+   <FONT COLOR=red><A NAME="167_4">F_Next_Line</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 19;
+   <FONT COLOR=red><A NAME="168_4">F_Previous_Line</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 20;
+   <FONT COLOR=red><A NAME="169_4">F_Next_Word</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 21;
+   <FONT COLOR=red><A NAME="170_4">F_Previous_Word</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 22;
+   <FONT COLOR=red><A NAME="171_4">F_Begin_Field</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 23;
+   <FONT COLOR=red><A NAME="172_4">F_End_Field</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 24;
+   <FONT COLOR=red><A NAME="173_4">F_Begin_Line</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 25;
+   <FONT COLOR=red><A NAME="174_4">F_End_Line</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 26;
+   <FONT COLOR=red><A NAME="175_4">F_Left_Char</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 27;
+   <FONT COLOR=red><A NAME="176_4">F_Right_Char</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 28;
+   <FONT COLOR=red><A NAME="177_4">F_Up_Char</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 29;
    F_Down_Char                : <b>constant</b> Form_Request_Code := Key_Max + 30;
 
-   <FONT COLOR=red><A NAME="181_4">F_New_Line</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 31;
-   <FONT COLOR=red><A NAME="182_4">F_Insert_Char</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 32;
-   <FONT COLOR=red><A NAME="183_4">F_Insert_Line</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 33;
-   <FONT COLOR=red><A NAME="184_4">F_Delete_Char</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 34;
-   <FONT COLOR=red><A NAME="185_4">F_Delete_Previous</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 35;
-   <FONT COLOR=red><A NAME="186_4">F_Delete_Line</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 36;
-   <FONT COLOR=red><A NAME="187_4">F_Delete_Word</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 37;
-   <FONT COLOR=red><A NAME="188_4">F_Clear_EOL</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 38;
-   <FONT COLOR=red><A NAME="189_4">F_Clear_EOF</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 39;
-   <FONT COLOR=red><A NAME="190_4">F_Clear_Field</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 40;
-   <FONT COLOR=red><A NAME="191_4">F_Overlay_Mode</A></FONT>             : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 41;
+   <FONT COLOR=red><A NAME="180_4">F_New_Line</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 31;
+   <FONT COLOR=red><A NAME="181_4">F_Insert_Char</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 32;
+   <FONT COLOR=red><A NAME="182_4">F_Insert_Line</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 33;
+   <FONT COLOR=red><A NAME="183_4">F_Delete_Char</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 34;
+   <FONT COLOR=red><A NAME="184_4">F_Delete_Previous</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 35;
+   <FONT COLOR=red><A NAME="185_4">F_Delete_Line</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 36;
+   <FONT COLOR=red><A NAME="186_4">F_Delete_Word</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 37;
+   <FONT COLOR=red><A NAME="187_4">F_Clear_EOL</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 38;
+   <FONT COLOR=red><A NAME="188_4">F_Clear_EOF</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 39;
+   <FONT COLOR=red><A NAME="189_4">F_Clear_Field</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 40;
+   <FONT COLOR=red><A NAME="190_4">F_Overlay_Mode</A></FONT>             : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 41;
    F_Insert_Mode              : <b>constant</b> Form_Request_Code := Key_Max + 42;
 
    <FONT COLOR=green><EM>--  Vertical Scrolling</EM></FONT>
-   <FONT COLOR=red><A NAME="195_4">F_ScrollForward_Line</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 43;
-   <FONT COLOR=red><A NAME="196_4">F_ScrollBackward_Line</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 44;
-   <FONT COLOR=red><A NAME="197_4">F_ScrollForward_Page</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 45;
-   <FONT COLOR=red><A NAME="198_4">F_ScrollBackward_Page</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 46;
-   <FONT COLOR=red><A NAME="199_4">F_ScrollForward_HalfPage</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 47;
+   <FONT COLOR=red><A NAME="194_4">F_ScrollForward_Line</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 43;
+   <FONT COLOR=red><A NAME="195_4">F_ScrollBackward_Line</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 44;
+   <FONT COLOR=red><A NAME="196_4">F_ScrollForward_Page</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 45;
+   <FONT COLOR=red><A NAME="197_4">F_ScrollBackward_Page</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 46;
+   <FONT COLOR=red><A NAME="198_4">F_ScrollForward_HalfPage</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 47;
    F_ScrollBackward_HalfPage  : <b>constant</b> Form_Request_Code := Key_Max + 48;
 
    <FONT COLOR=green><EM>--  Horizontal Scrolling</EM></FONT>
-   <FONT COLOR=red><A NAME="203_4">F_HScrollForward_Char</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 49;
-   <FONT COLOR=red><A NAME="204_4">F_HScrollBackward_Char</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 50;
-   <FONT COLOR=red><A NAME="205_4">F_HScrollForward_Line</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 51;
-   <FONT COLOR=red><A NAME="206_4">F_HScrollBackward_Line</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 52;
-   <FONT COLOR=red><A NAME="207_4">F_HScrollForward_HalfLine</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 53;
+   <FONT COLOR=red><A NAME="202_4">F_HScrollForward_Char</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 49;
+   <FONT COLOR=red><A NAME="203_4">F_HScrollBackward_Char</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 50;
+   <FONT COLOR=red><A NAME="204_4">F_HScrollForward_Line</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 51;
+   <FONT COLOR=red><A NAME="205_4">F_HScrollBackward_Line</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 52;
+   <FONT COLOR=red><A NAME="206_4">F_HScrollForward_HalfLine</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 53;
    F_HScrollBackward_HalfLine : <b>constant</b> Form_Request_Code := Key_Max + 54;
 
-   <FONT COLOR=red><A NAME="210_4">F_Validate_Field</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 55;
-   <FONT COLOR=red><A NAME="211_4">F_Next_Choice</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 56;
+   <FONT COLOR=red><A NAME="209_4">F_Validate_Field</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 55;
+   <FONT COLOR=red><A NAME="210_4">F_Next_Choice</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 56;
    F_Previous_Choice          : <b>constant</b> Form_Request_Code := Key_Max + 57;
 
    <FONT COLOR=green><EM>--  For those who like the old 'C' style request names</EM></FONT>
-   <FONT COLOR=red><A NAME="215_4">REQ_NEXT_PAGE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#148_4">F_Next_Page</A>;
-   <FONT COLOR=red><A NAME="216_4">REQ_PREV_PAGE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#149_4">F_Previous_Page</A>;
-   <FONT COLOR=red><A NAME="217_4">REQ_FIRST_PAGE</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#150_4">F_First_Page</A>;
+   <FONT COLOR=red><A NAME="214_4">REQ_NEXT_PAGE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#147_4">F_Next_Page</A>;
+   <FONT COLOR=red><A NAME="215_4">REQ_PREV_PAGE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#148_4">F_Previous_Page</A>;
+   <FONT COLOR=red><A NAME="216_4">REQ_FIRST_PAGE</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#149_4">F_First_Page</A>;
    REQ_LAST_PAGE    : Form_Request_Code <b>renames</b> F_Last_Page;
 
-   <FONT COLOR=red><A NAME="220_4">REQ_NEXT_FIELD</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#153_4">F_Next_Field</A>;
-   <FONT COLOR=red><A NAME="221_4">REQ_PREV_FIELD</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#154_4">F_Previous_Field</A>;
-   <FONT COLOR=red><A NAME="222_4">REQ_FIRST_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#155_4">F_First_Field</A>;
-   <FONT COLOR=red><A NAME="223_4">REQ_LAST_FIELD</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#156_4">F_Last_Field</A>;
-   <FONT COLOR=red><A NAME="224_4">REQ_SNEXT_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#157_4">F_Sorted_Next_Field</A>;
-   <FONT COLOR=red><A NAME="225_4">REQ_SPREV_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#158_4">F_Sorted_Previous_Field</A>;
-   <FONT COLOR=red><A NAME="226_4">REQ_SFIRST_FIELD</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#159_4">F_Sorted_First_Field</A>;
-   <FONT COLOR=red><A NAME="227_4">REQ_SLAST_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#160_4">F_Sorted_Last_Field</A>;
-   <FONT COLOR=red><A NAME="228_4">REQ_LEFT_FIELD</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#161_4">F_Left_Field</A>;
-   <FONT COLOR=red><A NAME="229_4">REQ_RIGHT_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#162_4">F_Right_Field</A>;
-   <FONT COLOR=red><A NAME="230_4">REQ_UP_FIELD</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#163_4">F_Up_Field</A>;
+   <FONT COLOR=red><A NAME="219_4">REQ_NEXT_FIELD</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#152_4">F_Next_Field</A>;
+   <FONT COLOR=red><A NAME="220_4">REQ_PREV_FIELD</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#153_4">F_Previous_Field</A>;
+   <FONT COLOR=red><A NAME="221_4">REQ_FIRST_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#154_4">F_First_Field</A>;
+   <FONT COLOR=red><A NAME="222_4">REQ_LAST_FIELD</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#155_4">F_Last_Field</A>;
+   <FONT COLOR=red><A NAME="223_4">REQ_SNEXT_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#156_4">F_Sorted_Next_Field</A>;
+   <FONT COLOR=red><A NAME="224_4">REQ_SPREV_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#157_4">F_Sorted_Previous_Field</A>;
+   <FONT COLOR=red><A NAME="225_4">REQ_SFIRST_FIELD</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#158_4">F_Sorted_First_Field</A>;
+   <FONT COLOR=red><A NAME="226_4">REQ_SLAST_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#159_4">F_Sorted_Last_Field</A>;
+   <FONT COLOR=red><A NAME="227_4">REQ_LEFT_FIELD</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#160_4">F_Left_Field</A>;
+   <FONT COLOR=red><A NAME="228_4">REQ_RIGHT_FIELD</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#161_4">F_Right_Field</A>;
+   <FONT COLOR=red><A NAME="229_4">REQ_UP_FIELD</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#162_4">F_Up_Field</A>;
    REQ_DOWN_FIELD   : Form_Request_Code <b>renames</b> F_Down_Field;
 
-   <FONT COLOR=red><A NAME="233_4">REQ_NEXT_CHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#166_4">F_Next_Char</A>;
-   <FONT COLOR=red><A NAME="234_4">REQ_PREV_CHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#167_4">F_Previous_Char</A>;
-   <FONT COLOR=red><A NAME="235_4">REQ_NEXT_LINE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#168_4">F_Next_Line</A>;
-   <FONT COLOR=red><A NAME="236_4">REQ_PREV_LINE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#169_4">F_Previous_Line</A>;
-   <FONT COLOR=red><A NAME="237_4">REQ_NEXT_WORD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#170_4">F_Next_Word</A>;
-   <FONT COLOR=red><A NAME="238_4">REQ_PREV_WORD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#171_4">F_Previous_Word</A>;
-   <FONT COLOR=red><A NAME="239_4">REQ_BEG_FIELD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#172_4">F_Begin_Field</A>;
-   <FONT COLOR=red><A NAME="240_4">REQ_END_FIELD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#173_4">F_End_Field</A>;
-   <FONT COLOR=red><A NAME="241_4">REQ_BEG_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#174_4">F_Begin_Line</A>;
-   <FONT COLOR=red><A NAME="242_4">REQ_END_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#175_4">F_End_Line</A>;
-   <FONT COLOR=red><A NAME="243_4">REQ_LEFT_CHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#176_4">F_Left_Char</A>;
-   <FONT COLOR=red><A NAME="244_4">REQ_RIGHT_CHAR</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#177_4">F_Right_Char</A>;
-   <FONT COLOR=red><A NAME="245_4">REQ_UP_CHAR</A></FONT>      : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#178_4">F_Up_Char</A>;
+   <FONT COLOR=red><A NAME="232_4">REQ_NEXT_CHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#165_4">F_Next_Char</A>;
+   <FONT COLOR=red><A NAME="233_4">REQ_PREV_CHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#166_4">F_Previous_Char</A>;
+   <FONT COLOR=red><A NAME="234_4">REQ_NEXT_LINE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#167_4">F_Next_Line</A>;
+   <FONT COLOR=red><A NAME="235_4">REQ_PREV_LINE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#168_4">F_Previous_Line</A>;
+   <FONT COLOR=red><A NAME="236_4">REQ_NEXT_WORD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#169_4">F_Next_Word</A>;
+   <FONT COLOR=red><A NAME="237_4">REQ_PREV_WORD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#170_4">F_Previous_Word</A>;
+   <FONT COLOR=red><A NAME="238_4">REQ_BEG_FIELD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#171_4">F_Begin_Field</A>;
+   <FONT COLOR=red><A NAME="239_4">REQ_END_FIELD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#172_4">F_End_Field</A>;
+   <FONT COLOR=red><A NAME="240_4">REQ_BEG_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#173_4">F_Begin_Line</A>;
+   <FONT COLOR=red><A NAME="241_4">REQ_END_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#174_4">F_End_Line</A>;
+   <FONT COLOR=red><A NAME="242_4">REQ_LEFT_CHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#175_4">F_Left_Char</A>;
+   <FONT COLOR=red><A NAME="243_4">REQ_RIGHT_CHAR</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#176_4">F_Right_Char</A>;
+   <FONT COLOR=red><A NAME="244_4">REQ_UP_CHAR</A></FONT>      : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#177_4">F_Up_Char</A>;
    REQ_DOWN_CHAR    : Form_Request_Code <b>renames</b> F_Down_Char;
 
-   <FONT COLOR=red><A NAME="248_4">REQ_NEW_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#181_4">F_New_Line</A>;
-   <FONT COLOR=red><A NAME="249_4">REQ_INS_CHAR</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#182_4">F_Insert_Char</A>;
-   <FONT COLOR=red><A NAME="250_4">REQ_INS_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#183_4">F_Insert_Line</A>;
-   <FONT COLOR=red><A NAME="251_4">REQ_DEL_CHAR</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#184_4">F_Delete_Char</A>;
-   <FONT COLOR=red><A NAME="252_4">REQ_DEL_PREV</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#185_4">F_Delete_Previous</A>;
-   <FONT COLOR=red><A NAME="253_4">REQ_DEL_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#186_4">F_Delete_Line</A>;
-   <FONT COLOR=red><A NAME="254_4">REQ_DEL_WORD</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#187_4">F_Delete_Word</A>;
-   <FONT COLOR=red><A NAME="255_4">REQ_CLR_EOL</A></FONT>      : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#188_4">F_Clear_EOL</A>;
-   <FONT COLOR=red><A NAME="256_4">REQ_CLR_EOF</A></FONT>      : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#189_4">F_Clear_EOF</A>;
-   <FONT COLOR=red><A NAME="257_4">REQ_CLR_FIELD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#190_4">F_Clear_Field</A>;
-   <FONT COLOR=red><A NAME="258_4">REQ_OVL_MODE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#191_4">F_Overlay_Mode</A>;
+   <FONT COLOR=red><A NAME="247_4">REQ_NEW_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#180_4">F_New_Line</A>;
+   <FONT COLOR=red><A NAME="248_4">REQ_INS_CHAR</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#181_4">F_Insert_Char</A>;
+   <FONT COLOR=red><A NAME="249_4">REQ_INS_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#182_4">F_Insert_Line</A>;
+   <FONT COLOR=red><A NAME="250_4">REQ_DEL_CHAR</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#183_4">F_Delete_Char</A>;
+   <FONT COLOR=red><A NAME="251_4">REQ_DEL_PREV</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#184_4">F_Delete_Previous</A>;
+   <FONT COLOR=red><A NAME="252_4">REQ_DEL_LINE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#185_4">F_Delete_Line</A>;
+   <FONT COLOR=red><A NAME="253_4">REQ_DEL_WORD</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#186_4">F_Delete_Word</A>;
+   <FONT COLOR=red><A NAME="254_4">REQ_CLR_EOL</A></FONT>      : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#187_4">F_Clear_EOL</A>;
+   <FONT COLOR=red><A NAME="255_4">REQ_CLR_EOF</A></FONT>      : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#188_4">F_Clear_EOF</A>;
+   <FONT COLOR=red><A NAME="256_4">REQ_CLR_FIELD</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#189_4">F_Clear_Field</A>;
+   <FONT COLOR=red><A NAME="257_4">REQ_OVL_MODE</A></FONT>     : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#190_4">F_Overlay_Mode</A>;
    REQ_INS_MODE     : Form_Request_Code <b>renames</b> F_Insert_Mode;
 
-   <FONT COLOR=red><A NAME="261_4">REQ_SCR_FLINE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#195_4">F_ScrollForward_Line</A>;
-   <FONT COLOR=red><A NAME="262_4">REQ_SCR_BLINE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#196_4">F_ScrollBackward_Line</A>;
-   <FONT COLOR=red><A NAME="263_4">REQ_SCR_FPAGE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#197_4">F_ScrollForward_Page</A>;
-   <FONT COLOR=red><A NAME="264_4">REQ_SCR_BPAGE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#198_4">F_ScrollBackward_Page</A>;
-   <FONT COLOR=red><A NAME="265_4">REQ_SCR_FHPAGE</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#199_4">F_ScrollForward_HalfPage</A>;
+   <FONT COLOR=red><A NAME="260_4">REQ_SCR_FLINE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#194_4">F_ScrollForward_Line</A>;
+   <FONT COLOR=red><A NAME="261_4">REQ_SCR_BLINE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#195_4">F_ScrollBackward_Line</A>;
+   <FONT COLOR=red><A NAME="262_4">REQ_SCR_FPAGE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#196_4">F_ScrollForward_Page</A>;
+   <FONT COLOR=red><A NAME="263_4">REQ_SCR_BPAGE</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#197_4">F_ScrollBackward_Page</A>;
+   <FONT COLOR=red><A NAME="264_4">REQ_SCR_FHPAGE</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#198_4">F_ScrollForward_HalfPage</A>;
    REQ_SCR_BHPAGE   : Form_Request_Code <b>renames</b> F_ScrollBackward_HalfPage;
 
-   <FONT COLOR=red><A NAME="268_4">REQ_SCR_FCHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#203_4">F_HScrollForward_Char</A>;
-   <FONT COLOR=red><A NAME="269_4">REQ_SCR_BCHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#204_4">F_HScrollBackward_Char</A>;
-   <FONT COLOR=red><A NAME="270_4">REQ_SCR_HFLINE</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#205_4">F_HScrollForward_Line</A>;
-   <FONT COLOR=red><A NAME="271_4">REQ_SCR_HBLINE</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#206_4">F_HScrollBackward_Line</A>;
-   <FONT COLOR=red><A NAME="272_4">REQ_SCR_HFHALF</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#207_4">F_HScrollForward_HalfLine</A>;
+   <FONT COLOR=red><A NAME="267_4">REQ_SCR_FCHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#202_4">F_HScrollForward_Char</A>;
+   <FONT COLOR=red><A NAME="268_4">REQ_SCR_BCHAR</A></FONT>    : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#203_4">F_HScrollBackward_Char</A>;
+   <FONT COLOR=red><A NAME="269_4">REQ_SCR_HFLINE</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#204_4">F_HScrollForward_Line</A>;
+   <FONT COLOR=red><A NAME="270_4">REQ_SCR_HBLINE</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#205_4">F_HScrollBackward_Line</A>;
+   <FONT COLOR=red><A NAME="271_4">REQ_SCR_HFHALF</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#206_4">F_HScrollForward_HalfLine</A>;
    REQ_SCR_HBHALF   : Form_Request_Code <b>renames</b> F_HScrollBackward_HalfLine;
 
-   <FONT COLOR=red><A NAME="275_4">REQ_VALIDATION</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#210_4">F_Validate_Field</A>;
-   <FONT COLOR=red><A NAME="276_4">REQ_NEXT_CHOICE</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#211_4">F_Next_Choice</A>;
+   <FONT COLOR=red><A NAME="274_4">REQ_VALIDATION</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#209_4">F_Validate_Field</A>;
+   <FONT COLOR=red><A NAME="275_4">REQ_NEXT_CHOICE</A></FONT>  : <A HREF="terminal_interface-curses-forms__ads.htm#143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#210_4">F_Next_Choice</A>;
    REQ_PREV_CHOICE  : Form_Request_Code <b>renames</b> F_Previous_Choice;
 
 
-   <b>procedure</b> Request_Name (<FONT COLOR=red><A NAME="280_28">Key</A></FONT>  : <b>in</b> Form_Request_Code;
+   <b>procedure</b> Request_Name (<FONT COLOR=red><A NAME="279_28">Key</A></FONT>  : <b>in</b> Form_Request_Code;
                            Name : <b>out</b> String);
 
    <b>function</b>  Request_Name (Key : Form_Request_Code) <b>return</b> String;
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_1"#2|</EM></FONT>
-   <b>function</b> Create (<FONT COLOR=red><A NAME="297_21">Height</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
-                    <FONT COLOR=red><A NAME="298_21">Width</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Count</A>;
-                    <FONT COLOR=red><A NAME="299_21">Top</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                    <FONT COLOR=red><A NAME="300_21">Left</A></FONT>         : Column_Position;
-                    <FONT COLOR=red><A NAME="301_21">Off_Screen</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Natural</A> := 0;
+   <b>function</b> Create (<FONT COLOR=red><A NAME="296_21">Height</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
+                    <FONT COLOR=red><A NAME="297_21">Width</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Count</A>;
+                    <FONT COLOR=red><A NAME="298_21">Top</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                    <FONT COLOR=red><A NAME="299_21">Left</A></FONT>         : Column_Position;
+                    <FONT COLOR=red><A NAME="300_21">Off_Screen</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Natural</A> := 0;
                     More_Buffers : Buffer_Number := Buffer_Number'First)
                     <b>return</b> Field;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></FONT>
    <FONT COLOR=green><EM>--  An overloaded Create is defined later. Pragma Inline appears there.</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_2"#2|</EM></FONT>
-   <b>function</b> New_Field (<FONT COLOR=red><A NAME="308_24">Height</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
-                       <FONT COLOR=red><A NAME="309_24">Width</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Count</A>;
-                       <FONT COLOR=red><A NAME="310_24">Top</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                       <FONT COLOR=red><A NAME="311_24">Left</A></FONT>         : Column_Position;
-                       <FONT COLOR=red><A NAME="312_24">Off_Screen</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Natural</A> := 0;
+   <b>function</b> New_Field (<FONT COLOR=red><A NAME="307_24">Height</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
+                       <FONT COLOR=red><A NAME="308_24">Width</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Count</A>;
+                       <FONT COLOR=red><A NAME="309_24">Top</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                       <FONT COLOR=red><A NAME="310_24">Left</A></FONT>         : Column_Position;
+                       <FONT COLOR=red><A NAME="311_24">Off_Screen</A></FONT>   : <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Natural</A> := 0;
                        More_Buffers : Buffer_Number := Buffer_Number'First)
                        <b>return</b> Field <b>renames</b> Create;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></FONT>
    <FONT COLOR=green><EM>--  An overloaded Delete is defined later. Pragma Inline appears there.</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_4"#2|</EM></FONT>
-   <b>function</b> Duplicate (<FONT COLOR=red><A NAME="325_24">Fld</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#60_9">Field</A>;
-                       <FONT COLOR=red><A NAME="326_24">Top</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+   <b>function</b> Duplicate (<FONT COLOR=red><A NAME="324_24">Fld</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#59_9">Field</A>;
+                       <FONT COLOR=red><A NAME="325_24">Top</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
                        Left : Column_Position) <b>return</b> Field;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_new.3x.html">dup_field()</A></EM></FONT>
    <b>pragma</b> Inline (Duplicate);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_5"#2|</EM></FONT>
-   <b>function</b> Link (<FONT COLOR=red><A NAME="332_19">Fld</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#60_9">Field</A>;
-                  <FONT COLOR=red><A NAME="333_19">Top</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+   <b>function</b> Link (<FONT COLOR=red><A NAME="331_19">Fld</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#59_9">Field</A>;
+                  <FONT COLOR=red><A NAME="332_19">Top</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
                   Left : Column_Position) <b>return</b> Field;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_new.3x.html">link_field()</A></EM></FONT>
    <b>pragma</b> Inline (Link);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_6"#2|</EM></FONT>
-   <b>procedure</b> Set_Justification (<FONT COLOR=red><A NAME="343_33">Fld</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#62_9">Field</A>;
+   <b>procedure</b> Set_Justification (<FONT COLOR=red><A NAME="342_33">Fld</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#61_9">Field</A>;
                                 Just : <b>in</b> Field_Justification := None);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_just.3x.html">set_field_just()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Justification);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_8"#2|</EM></FONT>
    <b>procedure</b> Set_Buffer
-     (<FONT COLOR=red><A NAME="359_7">Fld</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Field</A>;
-      <FONT COLOR=red><A NAME="360_7">Buffer</A></FONT> : <b>in</b> Buffer_Number := Buffer_Number'First;
+     (<FONT COLOR=red><A NAME="358_7">Fld</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Field</A>;
+      <FONT COLOR=red><A NAME="359_7">Buffer</A></FONT> : <b>in</b> Buffer_Number := Buffer_Number'First;
       Str    : <b>in</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_buffer()</A></EM></FONT>
    <FONT COLOR=green><EM>--  Not inlined</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_9"#2|</EM></FONT>
    <b>procedure</b> Get_Buffer
-     (<FONT COLOR=red><A NAME="367_7">Fld</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Field</A>;
-      <FONT COLOR=red><A NAME="368_7">Buffer</A></FONT> : <b>in</b> Buffer_Number := Buffer_Number'First;
+     (<FONT COLOR=red><A NAME="366_7">Fld</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Field</A>;
+      <FONT COLOR=red><A NAME="367_7">Buffer</A></FONT> : <b>in</b> Buffer_Number := Buffer_Number'First;
       Str    : <b>out</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></FONT>
 
    <b>function</b> Get_Buffer
-     (<FONT COLOR=red><A NAME="373_7">Fld</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Field</A>;
+     (<FONT COLOR=red><A NAME="372_7">Fld</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Field</A>;
       Buffer : <b>in</b> Buffer_Number := Buffer_Number'First) <b>return</b> String;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></FONT>
    <FONT COLOR=green><EM>--  Same but as function</EM></FONT>
    <b>pragma</b> Inline (Get_Buffer);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_10"#2|</EM></FONT>
-   <b>procedure</b> Set_Status (<FONT COLOR=red><A NAME="380_26">Fld</A></FONT>    : <b>in</b> Field;
+   <b>procedure</b> Set_Status (<FONT COLOR=red><A NAME="379_26">Fld</A></FONT>    : <b>in</b> Field;
                          Status : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_status()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Status);
    <b>pragma</b> Inline (Changed);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_12"#2|</EM></FONT>
-   <b>procedure</b> Set_Maximum_Size (<FONT COLOR=red><A NAME="391_32">Fld</A></FONT> : <b>in</b> Field;
+   <b>procedure</b> Set_Maximum_Size (<FONT COLOR=red><A NAME="390_32">Fld</A></FONT> : <b>in</b> Field;
                                Max : <b>in</b> Natural := 0);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_max()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Maximum_Size);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_13"#2|</EM></FONT>
-   <b>procedure</b> Set_Options (<FONT COLOR=red><A NAME="401_27">Fld</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field</A>;
+   <b>procedure</b> Set_Options (<FONT COLOR=red><A NAME="400_27">Fld</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field</A>;
                           Options : <b>in</b> Field_Option_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_opts.3x.html">set_field_opts()</A></EM></FONT>
    <FONT COLOR=green><EM>--  An overloaded version is defined later. Pragma Inline appears there</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_14"#2|</EM></FONT>
-   <b>procedure</b> Switch_Options (<FONT COLOR=red><A NAME="407_30">Fld</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field</A>;
-                             <FONT COLOR=red><A NAME="408_30">Options</A></FONT> : <b>in</b> Field_Option_Set;
+   <b>procedure</b> Switch_Options (<FONT COLOR=red><A NAME="406_30">Fld</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field</A>;
+                             <FONT COLOR=red><A NAME="407_30">Options</A></FONT> : <b>in</b> Field_Option_Set;
                              On      : Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_opts.3x.html">field_opts_on()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: field_opts_off()</EM></FONT>
    <FONT COLOR=green><EM>--  An overloaded version is defined later. Pragma Inline appears there</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_15"#2|</EM></FONT>
-   <b>procedure</b> Get_Options (<FONT COLOR=red><A NAME="415_27">Fld</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#68_9">Field</A>;
+   <b>procedure</b> Get_Options (<FONT COLOR=red><A NAME="414_27">Fld</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#67_9">Field</A>;
                           Options : <b>out</b> Field_Option_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_opts.3x.html">field_opts()</A></EM></FONT>
 
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_17"#2|</EM></FONT>
    <b>procedure</b> Set_Foreground
-     (<FONT COLOR=red><A NAME="431_7">Fld</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Field</A>;
-      <FONT COLOR=red><A NAME="432_7">Fore</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A> := Normal_Video;
+     (<FONT COLOR=red><A NAME="430_7">Fld</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Field</A>;
+      <FONT COLOR=red><A NAME="431_7">Fore</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A> := Normal_Video;
       Color : <b>in</b> Color_Pair := Color_Pair'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_fore()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Foreground);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_18"#2|</EM></FONT>
-   <b>procedure</b> Foreground (<FONT COLOR=red><A NAME="438_26">Fld</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Field</A>;
+   <b>procedure</b> Foreground (<FONT COLOR=red><A NAME="437_26">Fld</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Field</A>;
                          Fore : <b>out</b> Character_Attribute_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_19"#2|</EM></FONT>
-   <b>procedure</b> Foreground (<FONT COLOR=red><A NAME="443_26">Fld</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Field</A>;
-                         <FONT COLOR=red><A NAME="444_26">Fore</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A>;
+   <b>procedure</b> Foreground (<FONT COLOR=red><A NAME="442_26">Fld</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Field</A>;
+                         <FONT COLOR=red><A NAME="443_26">Fore</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A>;
                          Color : <b>out</b> Color_Pair);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></FONT>
    <b>pragma</b> Inline (Foreground);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_20"#2|</EM></FONT>
    <b>procedure</b> Set_Background
-     (<FONT COLOR=red><A NAME="451_7">Fld</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Field</A>;
-      <FONT COLOR=red><A NAME="452_7">Back</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A> := Normal_Video;
+     (<FONT COLOR=red><A NAME="450_7">Fld</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Field</A>;
+      <FONT COLOR=red><A NAME="451_7">Back</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A> := Normal_Video;
       Color : <b>in</b> Color_Pair := Color_Pair'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_back()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Background);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_21"#2|</EM></FONT>
-   <b>procedure</b> Background (<FONT COLOR=red><A NAME="458_26">Fld</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Field</A>;
+   <b>procedure</b> Background (<FONT COLOR=red><A NAME="457_26">Fld</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Field</A>;
                          Back : <b>out</b> Character_Attribute_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_22"#2|</EM></FONT>
-   <b>procedure</b> Background (<FONT COLOR=red><A NAME="463_26">Fld</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Field</A>;
-                         <FONT COLOR=red><A NAME="464_26">Back</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A>;
+   <b>procedure</b> Background (<FONT COLOR=red><A NAME="462_26">Fld</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Field</A>;
+                         <FONT COLOR=red><A NAME="463_26">Back</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A>;
                          Color : <b>out</b> Color_Pair);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></FONT>
    <b>pragma</b> Inline (Background);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_23"#2|</EM></FONT>
-   <b>procedure</b> Set_Pad_Character (<FONT COLOR=red><A NAME="470_33">Fld</A></FONT> : <b>in</b> Field;
+   <b>procedure</b> Set_Pad_Character (<FONT COLOR=red><A NAME="469_33">Fld</A></FONT> : <b>in</b> Field;
                                 Pad : <b>in</b> Character := Space);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_pad()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Pad_Character);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_24"#2|</EM></FONT>
-   <b>procedure</b> Pad_Character (<FONT COLOR=red><A NAME="476_29">Fld</A></FONT> : <b>in</b>  Field;
+   <b>procedure</b> Pad_Character (<FONT COLOR=red><A NAME="475_29">Fld</A></FONT> : <b>in</b>  Field;
                             Pad : <b>out</b> Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_attributes.3x.html">field_pad()</A></EM></FONT>
    <b>pragma</b> Inline (Pad_Character);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_25"#2|</EM></FONT>
-   <b>procedure</b> Info (<FONT COLOR=red><A NAME="486_20">Fld</A></FONT>                : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#63_12">Field</A>;
-                   <FONT COLOR=red><A NAME="487_20">Lines</A></FONT>              : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
-                   <FONT COLOR=red><A NAME="488_20">Columns</A></FONT>            : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Count</A>;
-                   <FONT COLOR=red><A NAME="489_20">First_Row</A></FONT>          : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                   <FONT COLOR=red><A NAME="490_20">First_Column</A></FONT>       : <b>out</b> Column_Position;
-                   <FONT COLOR=red><A NAME="491_20">Off_Screen</A></FONT>         : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#131_9">Natural</A>;
+   <b>procedure</b> Info (<FONT COLOR=red><A NAME="485_20">Fld</A></FONT>                : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#62_12">Field</A>;
+                   <FONT COLOR=red><A NAME="486_20">Lines</A></FONT>              : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
+                   <FONT COLOR=red><A NAME="487_20">Columns</A></FONT>            : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Count</A>;
+                   <FONT COLOR=red><A NAME="488_20">First_Row</A></FONT>          : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                   <FONT COLOR=red><A NAME="489_20">First_Column</A></FONT>       : <b>out</b> Column_Position;
+                   <FONT COLOR=red><A NAME="490_20">Off_Screen</A></FONT>         : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#130_9">Natural</A>;
                    Additional_Buffers : <b>out</b> Buffer_Number);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_info.3x.html">field_info()</A></EM></FONT>
    <b>pragma</b> Inline (Info);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_26"#2|</EM></FONT>
-   <b>procedure</b> Dynamic_Info (<FONT COLOR=red><A NAME="497_28">Fld</A></FONT>     : <b>in</b> Field;
-                           <FONT COLOR=red><A NAME="498_28">Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
-                           <FONT COLOR=red><A NAME="499_28">Columns</A></FONT> : <b>out</b> Column_Count;
+   <b>procedure</b> Dynamic_Info (<FONT COLOR=red><A NAME="496_28">Fld</A></FONT>     : <b>in</b> Field;
+                           <FONT COLOR=red><A NAME="497_28">Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
+                           <FONT COLOR=red><A NAME="498_28">Columns</A></FONT> : <b>out</b> Column_Count;
                            Max     : <b>out</b> Natural);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field_info.3x.html">dynamic_field_info()</A></EM></FONT>
    <b>pragma</b> Inline (Dynamic_Info);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_27"#2|</EM></FONT>
-   <b>procedure</b> Set_Window (<FONT COLOR=red><A NAME="509_26">Frm</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Form</A>;
+   <b>procedure</b> Set_Window (<FONT COLOR=red><A NAME="508_26">Frm</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Form</A>;
                          Win : <b>in</b> Window);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_win.3x.html">set_form_win()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Window);
    <b>pragma</b> Inline (Get_Window);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_29"#2|</EM></FONT>
-   <b>procedure</b> Set_Sub_Window (<FONT COLOR=red><A NAME="520_30">Frm</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Form</A>;
+   <b>procedure</b> Set_Sub_Window (<FONT COLOR=red><A NAME="519_30">Frm</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Form</A>;
                              Win : <b>in</b> Window);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_win.3x.html">set_form_sub()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Sub_Window);
    <b>pragma</b> Inline (Get_Sub_Window);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_31"#2|</EM></FONT>
-   <b>procedure</b> Scale (<FONT COLOR=red><A NAME="531_21">Frm</A></FONT>     : <b>in</b> Form;
-                    <FONT COLOR=red><A NAME="532_21">Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
+   <b>procedure</b> Scale (<FONT COLOR=red><A NAME="530_21">Frm</A></FONT>     : <b>in</b> Form;
+                    <FONT COLOR=red><A NAME="531_21">Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
                     Columns : <b>out</b> Column_Count);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_win.3x.html">scale_form()</A></EM></FONT>
    <b>pragma</b> Inline (Scale);
    <b>pragma</b> Convention (C, Form_Hook_Function);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_32"#2|</EM></FONT>
-   <b>procedure</b> Set_Field_Init_Hook (<FONT COLOR=red><A NAME="545_35">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form</A>;
+   <b>procedure</b> Set_Field_Init_Hook (<FONT COLOR=red><A NAME="544_35">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form</A>;
                                   Proc : <b>in</b> Form_Hook_Function);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_hook.3x.html">set_field_init()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Field_Init_Hook);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_33"#2|</EM></FONT>
-   <b>procedure</b> Set_Field_Term_Hook (<FONT COLOR=red><A NAME="551_35">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form</A>;
+   <b>procedure</b> Set_Field_Term_Hook (<FONT COLOR=red><A NAME="550_35">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form</A>;
                                   Proc : <b>in</b> Form_Hook_Function);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_hook.3x.html">set_field_term()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Field_Term_Hook);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_34"#2|</EM></FONT>
-   <b>procedure</b> Set_Form_Init_Hook (<FONT COLOR=red><A NAME="557_34">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form</A>;
+   <b>procedure</b> Set_Form_Init_Hook (<FONT COLOR=red><A NAME="556_34">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form</A>;
                                  Proc : <b>in</b> Form_Hook_Function);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_hook.3x.html">set_form_init()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Form_Init_Hook);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_35"#2|</EM></FONT>
-   <b>procedure</b> Set_Form_Term_Hook (<FONT COLOR=red><A NAME="563_34">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#540_9">Form</A>;
+   <b>procedure</b> Set_Form_Term_Hook (<FONT COLOR=red><A NAME="562_34">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#539_9">Form</A>;
                                  Proc : <b>in</b> Form_Hook_Function);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_hook.3x.html">set_form_term()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Form_Term_Hook);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_40"#2|</EM></FONT>
-   <b>procedure</b> Redefine (<FONT COLOR=red><A NAME="593_24">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#136_9">Form</A>;
+   <b>procedure</b> Redefine (<FONT COLOR=red><A NAME="592_24">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#135_9">Form</A>;
                        Flds : <b>in</b> Field_Array_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></FONT>
    <b>pragma</b> Inline (Redefine);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_41"#2|</EM></FONT>
-   <b>procedure</b> Set_Fields (<FONT COLOR=red><A NAME="599_26">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#136_9">Form</A>;
+   <b>procedure</b> Set_Fields (<FONT COLOR=red><A NAME="598_26">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#135_9">Form</A>;
                          Flds : <b>in</b> Field_Array_Access) <b>renames</b> Redefine;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Fields);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_42"#2|</EM></FONT>
-   <b>function</b> Fields (<FONT COLOR=red><A NAME="605_21">Frm</A></FONT>   : Form;
+   <b>function</b> Fields (<FONT COLOR=red><A NAME="604_21">Frm</A></FONT>   : Form;
                     Index : Positive) <b>return</b> Field;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field.3x.html">form_fields()</A></EM></FONT>
    <b>pragma</b> Inline (Fields);
    <b>pragma</b> Inline (Field_Count);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_44"#2|</EM></FONT>
-   <b>procedure</b> Move (<FONT COLOR=red><A NAME="616_20">Fld</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Field</A>;
-                   <FONT COLOR=red><A NAME="617_20">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+   <b>procedure</b> Move (<FONT COLOR=red><A NAME="615_20">Fld</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Field</A>;
+                   <FONT COLOR=red><A NAME="616_20">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
                    Column : <b>in</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_field.3x.html">move_field()</A></EM></FONT>
    <b>pragma</b> Inline (Move);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_48"#2|</EM></FONT>
-   <b>procedure</b> Set_Options (<FONT COLOR=red><A NAME="648_27">Frm</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form</A>;
+   <b>procedure</b> Set_Options (<FONT COLOR=red><A NAME="647_27">Frm</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form</A>;
                           Options : <b>in</b> Form_Option_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_opts.3x.html">set_form_opts()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Options);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_49"#2|</EM></FONT>
-   <b>procedure</b> Switch_Options (<FONT COLOR=red><A NAME="654_30">Frm</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form</A>;
-                             <FONT COLOR=red><A NAME="655_30">Options</A></FONT> : <b>in</b> Form_Option_Set;
+   <b>procedure</b> Switch_Options (<FONT COLOR=red><A NAME="653_30">Frm</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form</A>;
+                             <FONT COLOR=red><A NAME="654_30">Options</A></FONT> : <b>in</b> Form_Option_Set;
                              On      : Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_opts.3x.html">form_opts_on()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: form_opts_off()</EM></FONT>
    <b>pragma</b> Inline (Switch_Options);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_50"#2|</EM></FONT>
-   <b>procedure</b> Get_Options (<FONT COLOR=red><A NAME="662_27">Frm</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#108_9">Form</A>;
+   <b>procedure</b> Get_Options (<FONT COLOR=red><A NAME="661_27">Frm</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses-forms__ads.htm#107_9">Form</A>;
                           Options : <b>out</b> Form_Option_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_opts.3x.html">form_opts()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_52"#2|</EM></FONT>
-   <b>procedure</b> Post (<FONT COLOR=red><A NAME="676_20">Frm</A></FONT>  : <b>in</b> Form;
+   <b>procedure</b> Post (<FONT COLOR=red><A NAME="675_20">Frm</A></FONT>  : <b>in</b> Form;
                    Post : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_post.3x.html">post_form()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: unpost_form()</EM></FONT>
    <FONT COLOR=green><EM>--  | Man page <A HREF="../man/form_driver.3x.html">form_driver.3x</A></EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
-   <b>type</b> Driver_Result <b>is</b> (<FONT COLOR=red><A NAME="709_27">Form_Ok</A></FONT>,
-                          <FONT COLOR=red><A NAME="710_27">Request_Denied</A></FONT>,
-                          <FONT COLOR=red><A NAME="711_27">Unknown_Request</A></FONT>,
+   <b>type</b> Driver_Result <b>is</b> (<FONT COLOR=red><A NAME="708_27">Form_Ok</A></FONT>,
+                          <FONT COLOR=red><A NAME="709_27">Request_Denied</A></FONT>,
+                          <FONT COLOR=red><A NAME="710_27">Unknown_Request</A></FONT>,
                           Invalid_Field);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_56"#2|</EM></FONT>
-   <b>function</b> Driver (<FONT COLOR=red><A NAME="715_21">Frm</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#68_9">Form</A>;
+   <b>function</b> Driver (<FONT COLOR=red><A NAME="714_21">Frm</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#67_9">Form</A>;
                     Key : Key_Code) <b>return</b> Driver_Result;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_driver.3x.html">form_driver()</A></EM></FONT>
    <FONT COLOR=green><EM>--  Driver not inlined</EM></FONT>
    <b>type</b> Page_Number <b>is</b> <b>new</b> Natural;
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_57"#2|</EM></FONT>
-   <b>procedure</b> Set_Current (<FONT COLOR=red><A NAME="727_27">Frm</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Form</A>;
+   <b>procedure</b> Set_Current (<FONT COLOR=red><A NAME="726_27">Frm</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#55_9">Form</A>;
                           Fld : <b>in</b> Field);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_page.3x.html">set_current_field()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Current);
    <b>pragma</b> Inline (Current);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_59"#2|</EM></FONT>
-   <b>procedure</b> Set_Page (<FONT COLOR=red><A NAME="738_24">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#723_9">Form</A>;
+   <b>procedure</b> Set_Page (<FONT COLOR=red><A NAME="737_24">Frm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#722_9">Form</A>;
                        Page : <b>in</b> Page_Number := Page_Number'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_page.3x.html">set_form_page()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Page);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_62"#2|</EM></FONT>
-   <b>procedure</b> Set_New_Page (<FONT COLOR=red><A NAME="761_28">Fld</A></FONT>      : <b>in</b> Field;
+   <b>procedure</b> Set_New_Page (<FONT COLOR=red><A NAME="760_28">Fld</A></FONT>      : <b>in</b> Field;
                            New_Page : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/form_new_page.3x.html">set_new_page()</A></EM></FONT>
    <b>pragma</b> Inline (Set_New_Page);
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>private</b>
-   <b>type</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Field</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
+   <b>type</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
    <b>type</b> Form  <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
 
-   <A HREF="terminal_interface-curses-forms__ads.htm#60_4">Null_Field</A> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#57_9">Field</A> := 0;
+   <A HREF="terminal_interface-curses-forms__ads.htm#59_4">Null_Field</A> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#56_9">Field</A> := 0;
    Null_Form  : <b>constant</b> Form  := 0;
 
 <b>end</b> Terminal_Interface.Curses.Forms;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index 3dbd6248bbc048db2ca188edcb448569e4e07e8c..e2e694cfb5305cb4e7654c5c532681658bd79bf3 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#46_41">Item_User_Data</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#48_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_41">Item_User_Data</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#58_14">Set_User_Data</A><FONT COLOR=red><A NAME="49_14"></A></FONT> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#58_29">Itm</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                            <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#59_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#57_14">Set_User_Data</A><FONT COLOR=red><A NAME="48_14"></A></FONT> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#57_29">Itm</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                            <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#58_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="52_16">Set_Item_Userptr</A></FONT> (<FONT COLOR=red><A NAME="52_34">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                                 <FONT COLOR=red><A NAME="53_34">Addr</A></FONT> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_9">User_Access</A>)  <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#52_16">Set_Item_Userptr</A>, "set_item_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="51_16">Set_Item_Userptr</A></FONT> (<FONT COLOR=red><A NAME="51_34">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                                 <FONT COLOR=red><A NAME="52_34">Addr</A></FONT> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#44_9">User_Access</A>)  <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#51_16">Set_Item_Userptr</A>, "set_item_userptr");
 
-      <FONT COLOR=red><A NAME="56_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#52_16">Set_Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#58_29">Itm</A>, <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#59_29">Data</A>);
+      <FONT COLOR=red><A NAME="55_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#51_16">Set_Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#57_29">Itm</A>, <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#58_29">Data</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#56_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#56_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#55_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#55_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_User_Data;
+   <b>end</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#57_14">Set_User_Data</A><A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#57_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#69_13">Get_User_Data</A><FONT COLOR=red><A NAME="63_13"></A></FONT> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#69_28">Itm</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_9">User_Access</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#68_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#68_28">Itm</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#44_9">User_Access</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="65_16">Item_Userptr</A></FONT> (<FONT COLOR=red><A NAME="65_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_9">User_Access</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#65_16">Item_Userptr</A>, "item_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="64_16">Item_Userptr</A></FONT> (<FONT COLOR=red><A NAME="64_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#44_9">User_Access</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#64_16">Item_Userptr</A>, "item_userptr");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#65_16">Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#69_28">Itm</A>);
-   <b>end</b> Get_User_Data;
+      <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#64_16">Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#68_28">Itm</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#68_13">Get_User_Data</A><A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#68_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#64_14">Get_User_Data</A><FONT COLOR=red><A NAME="71_14"></A></FONT> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#64_29">Itm</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                            <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#65_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#63_14">Get_User_Data</A><FONT COLOR=red><A NAME="70_14"></A></FONT> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#63_29">Itm</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                            <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#64_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#65_29">Data</A> := <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#69_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#64_29">Itm</A>);
-   <b>end</b> Get_User_Data;
+      <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#64_29">Data</A> := <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#68_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#63_29">Itm</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#63_14">Get_User_Data</A><A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#63_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Menus.Item_User_Data;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#48_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_41">Item_User_Data</A><A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_41">;</A>
+</PRE></BODY></HTML>
index df6d8d0786425c2abfe6085131b9e58aa790e700..38a06f20d64b4b7b7dd618befef478134d5bd000 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.13 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.14 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="45_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-   <b>type</b> <A HREF="terminal_interface__ads.htm#42_9">User_Access</A> <b>is</b> <b>access</b> User<A HREF="terminal_interface-curses-menus__ads.htm#49_35">;</A>
+   <b>type</b> <FONT COLOR=red><A NAME="44_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
+   <b>type</b> <A HREF="terminal_interface__ads.htm#41_9">User_Access</A> <b>is</b> <b>access</b> User<A HREF="terminal_interface-curses-menus__ads.htm#48_35">;</A>
 <b>package</b> Terminal_Interface.Curses.Menus.Item_User_Data <b>is</b>
    <b>pragma</b> Preelaborate (Terminal_Interface.Curses.Menus.Item_User_Data);
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_1"#2|</EM></FONT>
-   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="59_29">Itm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_9">Item</A>;
+   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="58_29">Itm</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#44_9">Item</A>;
                             Data : <b>in</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_userptr.3x.html">set_item_userptr</A></EM></FONT>
    <b>pragma</b> Inline (Set_User_Data);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_2"#2|</EM></FONT>
-   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="65_29">Itm</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#45_9">Item</A>;
+   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="64_29">Itm</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#44_9">Item</A>;
                             Data : <b>out</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_userptr.3x.html">item_userptr</A></EM></FONT>
 
@@ -78,4 +77,4 @@
 
 <b>end</b> Terminal_Interface.Curses.Menus.Item_User_Data;
 
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index ad50af7ae8fc15c1f7bd5b8463005270a4a85499..be1246127c0ed4d2ea8c597461ad752b0e6ba5d6 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.12 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#46_41">Menu_User_Data</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#48_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_41">Menu_User_Data</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#54_14">Set_User_Data</A><FONT COLOR=red><A NAME="48_14"></A></FONT> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#54_29">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                            <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#55_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#53_14">Set_User_Data</A><FONT COLOR=red><A NAME="47_14"></A></FONT> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#53_29">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                            <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#54_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="51_16">Set_Menu_Userptr</A></FONT> (<FONT COLOR=red><A NAME="51_34">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                                 <FONT COLOR=red><A NAME="52_34">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_9">User_Access</A>)  <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#51_16">Set_Menu_Userptr</A>, "set_menu_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="50_16">Set_Menu_Userptr</A></FONT> (<FONT COLOR=red><A NAME="50_34">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                                 <FONT COLOR=red><A NAME="51_34">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#44_9">User_Access</A>)  <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#50_16">Set_Menu_Userptr</A>, "set_menu_userptr");
 
-      <FONT COLOR=red><A NAME="55_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#51_16">Set_Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#54_29">Men</A>, <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#55_29">Data</A>);
+      <FONT COLOR=red><A NAME="54_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#50_16">Set_Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#53_29">Men</A>, <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#54_29">Data</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#55_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#55_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#54_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#54_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_User_Data;
+   <b>end</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#53_14">Set_User_Data</A><A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#53_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#65_13">Get_User_Data</A><FONT COLOR=red><A NAME="62_13"></A></FONT> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#65_28">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_9">User_Access</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#64_28">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#44_9">User_Access</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="64_16">Menu_Userptr</A></FONT> (<FONT COLOR=red><A NAME="64_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_9">User_Access</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#64_16">Menu_Userptr</A>, "menu_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="63_16">Menu_Userptr</A></FONT> (<FONT COLOR=red><A NAME="63_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#44_9">User_Access</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#63_16">Menu_Userptr</A>, "menu_userptr");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#64_16">Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#65_28">Men</A>);
-   <b>end</b> Get_User_Data;
+      <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#63_16">Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#64_28">Men</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#64_13">Get_User_Data</A><A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#64_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#60_14">Get_User_Data</A><FONT COLOR=red><A NAME="70_14"></A></FONT> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#60_29">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                            <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#61_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#59_14">Get_User_Data</A><FONT COLOR=red><A NAME="69_14"></A></FONT> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#59_29">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                            <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#60_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#61_29">Data</A> := <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#65_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#60_29">Men</A>);
-   <b>end</b> Get_User_Data;
+      <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#60_29">Data</A> := <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#59_29">Men</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#59_14">Get_User_Data</A><A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#59_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Menus.Menu_User_Data;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#48_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_41">Menu_User_Data</A><A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_41">;</A>
+</PRE></BODY></HTML>
index 988b44e55dcec0c0d0a62cf4e041614575d81ff8..5a4bab9d3f2344d98a1ed8fd8c20583628eedade 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.13 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.14 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="45_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-   <b>type</b> <A HREF="terminal_interface__ads.htm#42_9">User_Access</A> <b>is</b> <b>access</b> User<A HREF="terminal_interface-curses-menus__ads.htm#49_35">;</A>
+   <b>type</b> <FONT COLOR=red><A NAME="44_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
+   <b>type</b> <A HREF="terminal_interface__ads.htm#41_9">User_Access</A> <b>is</b> <b>access</b> User<A HREF="terminal_interface-curses-menus__ads.htm#48_35">;</A>
 <b>package</b> Terminal_Interface.Curses.Menus.Menu_User_Data <b>is</b>
    <b>pragma</b> Preelaborate (Terminal_Interface.Curses.Menus.Menu_User_Data);
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_1"#2|</EM></FONT>
-   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="55_29">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_9">Menu</A>;
+   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="54_29">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#44_9">Menu</A>;
                             Data : <b>in</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_userptr.3x.html">set_menu_userptr</A></EM></FONT>
    <b>pragma</b> Inline (Set_User_Data);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_2"#2|</EM></FONT>
-   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="61_29">Men</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#45_9">Menu</A>;
+   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="60_29">Men</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#44_9">Menu</A>;
                             Data : <b>out</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_userptr.3x.html">menu_userptr</A></EM></FONT>
 
@@ -73,4 +72,4 @@
    <b>pragma</b> Inline (Get_User_Data);
 
 <b>end</b> Terminal_Interface.Curses.Menus.Menu_User_Data;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index f1338438f3b02e1c8fe4613819067ffd4672218e..376052a45d13c1b1031bd10c17869331c48180fe 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.21 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.22 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Unchecked_Deallocation;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings;
 
 <b>with</b> Ada.Unchecked_Conversion;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#49_35">Menus</A><FONT COLOR=red><A NAME="51_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#48_35">Menus</A> <b>is</b>
 
-   <b>type</b> <FONT COLOR=red><A NAME="53_9">C_Item_Array</A></FONT> <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-   <b>package</b> <FONT COLOR=red><A NAME="54_12">I_Array</A></FONT> <b>is</b> <b>new</b>
-     <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>, <A HREF="terminal_interface-curses-menus__adb.htm#53_9">C_Item_Array</A>, <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A>);
+   <b>type</b> <FONT COLOR=red><A NAME="52_9">C_Item_Array</A></FONT> <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+   <b>package</b> <FONT COLOR=red><A NAME="53_12">I_Array</A></FONT> <b>is</b> <b>new</b>
+     <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>, <A HREF="terminal_interface-curses-menus__adb.htm#52_9">C_Item_Array</A>, <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A>);
 
    <b>use</b> <b>type</b> System.Bit_Order;
-   <b>subtype</b> <FONT COLOR=red><A NAME="58_12">chars_ptr</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings.chars_ptr;
+   <b>subtype</b> <FONT COLOR=red><A NAME="57_12">chars_ptr</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings.chars_ptr;
 
-   <b>function</b> <FONT COLOR=red><A NAME="60_13">MOS_2_CInt</A></FONT> <b>is</b> <b>new</b>
-     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu_Option_Set</A>,
-                               <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="59_13">MOS_2_CInt</A></FONT> <b>is</b> <b>new</b>
+     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu_Option_Set</A>,
+                               <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>);
 
-   <b>function</b> <FONT COLOR=red><A NAME="64_13">CInt_2_MOS</A></FONT> <b>is</b> <b>new</b>
-     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>,
-                               <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu_Option_Set</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="63_13">CInt_2_MOS</A></FONT> <b>is</b> <b>new</b>
+     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>,
+                               <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu_Option_Set</A>);
 
-   <b>function</b> <FONT COLOR=red><A NAME="68_13">IOS_2_CInt</A></FONT> <b>is</b> <b>new</b>
-     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item_Option_Set</A>,
-                               <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="67_13">IOS_2_CInt</A></FONT> <b>is</b> <b>new</b>
+     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item_Option_Set</A>,
+                               <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>);
 
-   <b>function</b> <FONT COLOR=red><A NAME="72_13">CInt_2_IOS</A></FONT> <b>is</b> <b>new</b>
-     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>,
-                               <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item_Option_Set</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="71_13">CInt_2_IOS</A></FONT> <b>is</b> <b>new</b>
+     Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>,
+                               <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item_Option_Set</A>);
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#106_14">Request_Name</A><FONT COLOR=red><A NAME="77_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#106_28">Key</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A>;
-                           <A HREF="terminal_interface-curses-menus__ads.htm#107_28">Name</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#105_14">Request_Name</A><FONT COLOR=red><A NAME="76_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#105_28">Key</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A>;
+                           <A HREF="terminal_interface-curses-menus__ads.htm#106_28">Name</A> : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="80_16">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="80_30">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#80_16">Request_Name</A>, "menu_request_name");
+      <b>function</b> <FONT COLOR=red><A NAME="79_16">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="79_30">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#79_16">Request_Name</A>, "menu_request_name");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#80_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#106_28">Key</A>)), <A HREF="terminal_interface-curses-menus__ads.htm#107_28">Name</A>);
-   <b>end</b> Request_Name;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#79_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#105_28">Key</A>)), <A HREF="terminal_interface-curses-menus__ads.htm#106_28">Name</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#105_14">Request_Name</A><A HREF="terminal_interface-curses-menus__ads.htm#105_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#109_14">Request_Name</A><FONT COLOR=red><A NAME="86_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#109_28">Key</A> : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A>) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#108_14">Request_Name</A> (<A HREF="terminal_interface-curses-menus__ads.htm#108_28">Key</A> : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A>) <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="88_16">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="88_30">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#88_16">Request_Name</A>, "menu_request_name");
+      <b>function</b> <FONT COLOR=red><A NAME="87_16">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="87_30">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#87_16">Request_Name</A>, "menu_request_name");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#88_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#109_28">Key</A>)));
-   <b>end</b> Request_Name;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#87_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#108_28">Key</A>)));
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#108_14">Request_Name</A><A HREF="terminal_interface-curses-menus__ads.htm#108_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#193_13">Create</A><FONT COLOR=red><A NAME="94_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#193_21">Name</A>        : String;
-                    <A HREF="terminal_interface-curses-menus__ads.htm#194_21">Description</A> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#192_13">Create</A> (<A HREF="terminal_interface-curses-menus__ads.htm#192_21">Name</A>        : String;
+                    <A HREF="terminal_interface-curses-menus__ads.htm#193_21">Description</A> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="97_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
-      <b>function</b> <FONT COLOR=red><A NAME="98_16">Newitem</A></FONT> (<FONT COLOR=red><A NAME="98_25">Name</A></FONT>, <FONT COLOR=red><A NAME="98_31">Desc</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#97_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#98_16">Newitem</A>, "new_item");
+      <b>type</b> <FONT COLOR=red><A NAME="96_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
+      <b>function</b> <FONT COLOR=red><A NAME="97_16">Newitem</A></FONT> (<FONT COLOR=red><A NAME="97_25">Name</A></FONT>, <FONT COLOR=red><A NAME="97_31">Desc</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#96_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#97_16">Newitem</A>, "new_item");
 
-      <b>type</b> <FONT COLOR=red><A NAME="101_12">Name_String</A></FONT> <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#193_21">Name</A>'Length);
-      <b>type</b> <FONT COLOR=red><A NAME="102_12">Name_String_Ptr</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus__adb.htm#101_12">Name_String</A>;
-      <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#102_12">Name_String_Ptr</A>);
+      <b>type</b> Name_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#192_21">Name</A>'Length);
+      <b>type</b> <FONT COLOR=red><A NAME="101_12">Name_String_Ptr</A></FONT> <b>is</b> <b>access</b> Name_String;
+      <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#101_12">Name_String_Ptr</A>);
 
-      <b>type</b> <FONT COLOR=red><A NAME="105_12">Desc_String</A></FONT> <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#194_21">Description</A>'Length);
-      <b>type</b> <FONT COLOR=red><A NAME="106_12">Desc_String_Ptr</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus__adb.htm#105_12">Desc_String</A>;
-      <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#106_12">Desc_String_Ptr</A>);
+      <b>type</b> Desc_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#193_21">Description</A>'Length);
+      <b>type</b> <FONT COLOR=red><A NAME="105_12">Desc_String_Ptr</A></FONT> <b>is</b> <b>access</b> Desc_String;
+      <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#105_12">Desc_String_Ptr</A>);
 
-      <FONT COLOR=red><A NAME="109_7">Name_Str</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#102_12">Name_String_Ptr</A> := <b>new</b> <A HREF="terminal_interface-curses-menus__adb.htm#101_12">Name_String</A>;
-      <FONT COLOR=red><A NAME="110_7">Desc_Str</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#106_12">Desc_String_Ptr</A> := <b>new</b> <A HREF="terminal_interface-curses-menus__adb.htm#105_12">Desc_String</A>;
-      <FONT COLOR=red><A NAME="111_7">Name_Len</A></FONT>, <FONT COLOR=red><A NAME="111_17">Desc_Len</A></FONT> : size_t;
-      <FONT COLOR=red><A NAME="112_7">Result</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
+      <FONT COLOR=red><A NAME="108_7">Name_Str</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#101_12">Name_String_Ptr</A> := <b>new</b> Name_String;
+      <FONT COLOR=red><A NAME="109_7">Desc_Str</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#105_12">Desc_String_Ptr</A> := <b>new</b> Desc_String;
+      <FONT COLOR=red><A NAME="110_7">Name_Len</A></FONT>, <FONT COLOR=red><A NAME="110_17">Desc_Len</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="111_7">Result</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-menus__ads.htm#193_21">Name</A>, <A HREF="terminal_interface-curses-menus__adb.htm#109_7">Name_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#111_7">Name_Len</A>);
-      To_C (<A HREF="terminal_interface-curses-menus__ads.htm#194_21">Description</A>, <A HREF="terminal_interface-curses-menus__adb.htm#110_7">Desc_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#111_17">Desc_Len</A>);
-      <A HREF="terminal_interface-curses-menus__adb.htm#112_7">Result</A> := <A HREF="terminal_interface-curses-menus__adb.htm#98_16">Newitem</A> (<A HREF="terminal_interface-curses-menus__adb.htm#109_7">Name_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#109_7">Name_Str</A>.<b>all</b>'First)'<b>Access</b>,
-                         <A HREF="terminal_interface-curses-menus__adb.htm#110_7">Desc_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#110_7">Desc_Str</A>.<b>all</b>'First)'<b>Access</b>);
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#112_7">Result</A> = <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#389_4">Eti_System_Error</A>;
+      To_C (<A HREF="terminal_interface-curses-menus__ads.htm#192_21">Name</A>, <A HREF="terminal_interface-curses-menus__adb.htm#108_7">Name_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#110_7">Name_Len</A>);
+      To_C (<A HREF="terminal_interface-curses-menus__ads.htm#193_21">Description</A>, <A HREF="terminal_interface-curses-menus__adb.htm#109_7">Desc_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#110_17">Desc_Len</A>);
+      <A HREF="terminal_interface-curses-menus__adb.htm#111_7">Result</A> := <A HREF="terminal_interface-curses-menus__adb.htm#97_16">Newitem</A> (<A HREF="terminal_interface-curses-menus__adb.htm#108_7">Name_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#108_7">Name_Str</A>.<b>all</b>'First)'<b>Access</b>,
+                         <A HREF="terminal_interface-curses-menus__adb.htm#109_7">Desc_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#109_7">Desc_Str</A>.<b>all</b>'First)'<b>Access</b>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#111_7">Result</A> = <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#388_4">Eti_System_Error</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#112_7">Result</A>;
-   <b>end</b> Create;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#111_7">Result</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#192_13">Create</A><A HREF="terminal_interface-curses-menus__ads.htm#192_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#205_14">Delete</A><FONT COLOR=red><A NAME="124_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#205_22">Itm</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#204_14">Delete</A><FONT COLOR=red><A NAME="123_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#204_22">Itm</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="126_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="126_26">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#126_16">Descname</A>, "item_description");
-      <b>function</b> <FONT COLOR=red><A NAME="128_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="128_26">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#128_16">Itemname</A>, "item_name");
+      <b>function</b> <FONT COLOR=red><A NAME="125_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="125_26">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#125_16">Descname</A>, "item_description");
+      <b>function</b> <FONT COLOR=red><A NAME="127_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="127_26">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#127_16">Itemname</A>, "item_name");
 
-      <b>function</b> <FONT COLOR=red><A NAME="131_16">Freeitem</A></FONT> (<FONT COLOR=red><A NAME="131_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#131_16">Freeitem</A>, "free_item");
+      <b>function</b> <FONT COLOR=red><A NAME="130_16">Freeitem</A></FONT> (<FONT COLOR=red><A NAME="130_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#130_16">Freeitem</A>, "free_item");
 
-      <FONT COLOR=red><A NAME="134_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-      <FONT COLOR=red><A NAME="135_7">Ptr</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
+      <FONT COLOR=red><A NAME="133_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="134_7">Ptr</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__adb.htm#135_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#126_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#205_22">Itm</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#135_7">Ptr</A> /= Null_Ptr <b>then</b>
-         <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#135_7">Ptr</A>);
+      <A HREF="terminal_interface-curses-menus__adb.htm#134_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#125_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#204_22">Itm</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#134_7">Ptr</A> /= Null_Ptr <b>then</b>
+         <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#134_7">Ptr</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-menus__adb.htm#135_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#128_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#205_22">Itm</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#135_7">Ptr</A> /= Null_Ptr <b>then</b>
-         <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#135_7">Ptr</A>);
+      <A HREF="terminal_interface-curses-menus__adb.htm#134_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#127_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#204_22">Itm</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#134_7">Ptr</A> /= Null_Ptr <b>then</b>
+         <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#134_7">Ptr</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-menus__adb.htm#134_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#131_16">Freeitem</A> (<A HREF="terminal_interface-curses-menus__ads.htm#205_22">Itm</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#134_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#134_7">Res</A>);
+      <A HREF="terminal_interface-curses-menus__adb.htm#133_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#130_16">Freeitem</A> (<A HREF="terminal_interface-curses-menus__ads.htm#204_22">Itm</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#133_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#133_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#205_22">Itm</A> := <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A>;
-   <b>end</b> Delete;
+      <A HREF="terminal_interface-curses-menus__ads.htm#204_22">Itm</A> := <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#204_14">Delete</A><A HREF="terminal_interface-curses-menus__ads.htm#204_14">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#214_14">Set_Value</A><FONT COLOR=red><A NAME="152_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#214_25">Itm</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                        <A HREF="terminal_interface-curses-menus__ads.htm#215_25">Value</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#213_14">Set_Value</A><FONT COLOR=red><A NAME="151_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#213_25">Itm</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                        <A HREF="terminal_interface-curses-menus__ads.htm#214_25">Value</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="155_16">Set_Item_Val</A></FONT> (<FONT COLOR=red><A NAME="155_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                             <FONT COLOR=red><A NAME="156_30">Val</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#155_16">Set_Item_Val</A>, "set_item_value");
+      <b>function</b> <FONT COLOR=red><A NAME="154_16">Set_Item_Val</A></FONT> (<FONT COLOR=red><A NAME="154_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                             <FONT COLOR=red><A NAME="155_30">Val</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#154_16">Set_Item_Val</A>, "set_item_value");
 
-      <FONT COLOR=red><A NAME="159_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#155_16">Set_Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#214_25">Itm</A>, Boolean'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#215_25">Value</A>));
+      <FONT COLOR=red><A NAME="158_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#154_16">Set_Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#213_25">Itm</A>, Boolean'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#214_25">Value</A>));
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#159_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#159_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#158_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#158_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Value;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#213_14">Set_Value</A><A HREF="terminal_interface-curses-menus__ads.htm#213_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#220_13">Value</A><FONT COLOR=red><A NAME="166_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#220_20">Itm</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#219_13">Value</A> (<A HREF="terminal_interface-curses-menus__ads.htm#219_20">Itm</A> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="168_16">Item_Val</A></FONT> (<FONT COLOR=red><A NAME="168_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#168_16">Item_Val</A>, "item_value");
+      <b>function</b> <FONT COLOR=red><A NAME="167_16">Item_Val</A></FONT> (<FONT COLOR=red><A NAME="167_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#167_16">Item_Val</A>, "item_value");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#168_16">Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#220_20">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#76_4">Curses_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#167_16">Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#219_20">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Value;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#219_13">Value</A><A HREF="terminal_interface-curses-menus__ads.htm#219_13">;</A>
 
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#229_13">Visible</A><FONT COLOR=red><A NAME="179_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#229_22">Itm</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#228_13">Visible</A> (<A HREF="terminal_interface-curses-menus__ads.htm#228_22">Itm</A> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="181_16">Item_Vis</A></FONT> (<FONT COLOR=red><A NAME="181_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#181_16">Item_Vis</A>, "item_visible");
+      <b>function</b> <FONT COLOR=red><A NAME="180_16">Item_Vis</A></FONT> (<FONT COLOR=red><A NAME="180_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#180_16">Item_Vis</A>, "item_visible");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#181_16">Item_Vis</A> (<A HREF="terminal_interface-curses-menus__ads.htm#229_22">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#76_4">Curses_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#180_16">Item_Vis</A> (<A HREF="terminal_interface-curses-menus__ads.htm#228_22">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Visible;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#228_13">Visible</A><A HREF="terminal_interface-curses-menus__ads.htm#228_13">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#238_14">Set_Options</A><FONT COLOR=red><A NAME="191_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#238_27">Itm</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                          <A HREF="terminal_interface-curses-menus__ads.htm#239_27">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item_Option_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#237_14">Set_Options</A><FONT COLOR=red><A NAME="190_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#237_27">Itm</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                          <A HREF="terminal_interface-curses-menus__ads.htm#238_27">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item_Option_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="194_16">Set_Item_Opts</A></FONT> (<FONT COLOR=red><A NAME="194_31">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                              <FONT COLOR=red><A NAME="195_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#194_16">Set_Item_Opts</A>, "set_item_opts");
+      <b>function</b> <FONT COLOR=red><A NAME="193_16">Set_Item_Opts</A></FONT> (<FONT COLOR=red><A NAME="193_31">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                              <FONT COLOR=red><A NAME="194_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#193_16">Set_Item_Opts</A>, "set_item_opts");
 
-      <FONT COLOR=red><A NAME="198_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#68_13">IOS_2_CInt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#239_27">Options</A>);
-      <FONT COLOR=red><A NAME="199_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="197_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#67_13">IOS_2_CInt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#238_27">Options</A>);
+      <FONT COLOR=red><A NAME="198_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__adb.htm#199_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#194_16">Set_Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#238_27">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#198_7">Opt</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#199_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#199_7">Res</A>);
+      <A HREF="terminal_interface-curses-menus__adb.htm#198_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#193_16">Set_Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#237_27">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#197_7">Opt</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#198_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#198_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Options;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#237_14">Set_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#237_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#244_14">Switch_Options</A><FONT COLOR=red><A NAME="207_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#244_30">Itm</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                             <A HREF="terminal_interface-curses-menus__ads.htm#245_30">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item_Option_Set</A>;
-                             <A HREF="terminal_interface-curses-menus__ads.htm#246_30">On</A>      : Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#243_14">Switch_Options</A><FONT COLOR=red><A NAME="206_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#243_30">Itm</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                             <A HREF="terminal_interface-curses-menus__ads.htm#244_30">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item_Option_Set</A>;
+                             <A HREF="terminal_interface-curses-menus__ads.htm#245_30">On</A>      : Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="211_16">Item_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="211_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                             <FONT COLOR=red><A NAME="212_30">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#211_16">Item_Opts_On</A>, "item_opts_on");
-      <b>function</b> <FONT COLOR=red><A NAME="214_16">Item_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="214_31">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                              <FONT COLOR=red><A NAME="215_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#214_16">Item_Opts_Off</A>, "item_opts_off");
+      <b>function</b> <FONT COLOR=red><A NAME="210_16">Item_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="210_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                             <FONT COLOR=red><A NAME="211_30">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#210_16">Item_Opts_On</A>, "item_opts_on");
+      <b>function</b> <FONT COLOR=red><A NAME="213_16">Item_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="213_31">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                              <FONT COLOR=red><A NAME="214_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#213_16">Item_Opts_Off</A>, "item_opts_off");
 
-      <FONT COLOR=red><A NAME="218_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#68_13">IOS_2_CInt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#245_30">Options</A>);
-      <FONT COLOR=red><A NAME="219_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="217_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#67_13">IOS_2_CInt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#244_30">Options</A>);
+      <FONT COLOR=red><A NAME="218_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#246_30">On</A> <b>then</b>
-         <A HREF="terminal_interface-curses-menus__adb.htm#219_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#211_16">Item_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#244_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#218_7">Opt</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#245_30">On</A> <b>then</b>
+         <A HREF="terminal_interface-curses-menus__adb.htm#218_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#210_16">Item_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#243_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#217_7">Opt</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-menus__adb.htm#219_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#214_16">Item_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#244_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#218_7">Opt</A>);
+         <A HREF="terminal_interface-curses-menus__adb.htm#218_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#213_16">Item_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#243_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#217_7">Opt</A>);
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#219_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#219_7">Err</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#218_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#218_7">Err</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Switch_Options;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#243_14">Switch_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#243_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#253_14">Get_Options</A><FONT COLOR=red><A NAME="231_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#253_27">Itm</A>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                          <A HREF="terminal_interface-curses-menus__ads.htm#254_27">Options</A> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item_Option_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#252_14">Get_Options</A><FONT COLOR=red><A NAME="230_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#252_27">Itm</A>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                          <A HREF="terminal_interface-curses-menus__ads.htm#253_27">Options</A> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item_Option_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="234_16">Item_Opts</A></FONT> (<FONT COLOR=red><A NAME="234_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#234_16">Item_Opts</A>, "item_opts");
+      <b>function</b> <FONT COLOR=red><A NAME="233_16">Item_Opts</A></FONT> (<FONT COLOR=red><A NAME="233_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#233_16">Item_Opts</A>, "item_opts");
 
-      <FONT COLOR=red><A NAME="237_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#234_16">Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#253_27">Itm</A>);
+      <FONT COLOR=red><A NAME="236_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#233_16">Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#252_27">Itm</A>);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#254_27">Options</A> := <A HREF="terminal_interface-curses-menus__adb.htm#72_13">CInt_2_IOS</A> (<A HREF="terminal_interface-curses-menus__adb.htm#237_7">Res</A>);
-   <b>end</b> Get_Options;
+      <A HREF="terminal_interface-curses-menus__ads.htm#253_27">Options</A> := <A HREF="terminal_interface-curses-menus__adb.htm#71_13">CInt_2_IOS</A> (<A HREF="terminal_interface-curses-menus__adb.htm#236_7">Res</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#252_14">Get_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#252_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#258_13">Get_Options</A><FONT COLOR=red><A NAME="242_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#258_26">Itm</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item_Option_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#257_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#257_26">Itm</A> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item_Option_Set</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="244_7">Ios</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item_Option_Set</A>;
+      <FONT COLOR=red><A NAME="243_7">Ios</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item_Option_Set</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#253_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#258_26">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#244_7">Ios</A>);
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#244_7">Ios</A>;
-   <b>end</b> Get_Options;
+      <A HREF="terminal_interface-curses-menus__ads.htm#252_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#257_26">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#243_7">Ios</A>);
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#243_7">Ios</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#257_13">Get_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#257_13">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#267_14">Name</A><FONT COLOR=red><A NAME="250_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#267_20">Itm</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                   <A HREF="terminal_interface-curses-menus__ads.htm#268_20">Name</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#266_14">Name</A><FONT COLOR=red><A NAME="249_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#266_20">Itm</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                   <A HREF="terminal_interface-curses-menus__ads.htm#267_20">Name</A> : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="253_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="253_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#253_16">Itemname</A>, "item_name");
+      <b>function</b> <FONT COLOR=red><A NAME="252_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="252_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#252_16">Itemname</A>, "item_name");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#253_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#267_20">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#268_20">Name</A>);
-   <b>end</b> Name;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#252_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#266_20">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#267_20">Name</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#266_14">Name</A><A HREF="terminal_interface-curses-menus__ads.htm#266_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#270_14">Name</A><FONT COLOR=red><A NAME="259_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#270_20">Itm</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#269_14">Name</A> (<A HREF="terminal_interface-curses-menus__ads.htm#269_20">Itm</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="261_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="261_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#261_16">Itemname</A>, "item_name");
+      <b>function</b> <FONT COLOR=red><A NAME="260_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="260_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#260_16">Itemname</A>, "item_name");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#261_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#270_20">Itm</A>));
-   <b>end</b> Name;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#260_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#269_20">Itm</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#269_14">Name</A><A HREF="terminal_interface-curses-menus__ads.htm#269_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#276_14">Description</A><FONT COLOR=red><A NAME="267_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#276_27">Itm</A>         : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-                          <A HREF="terminal_interface-curses-menus__ads.htm#277_27">Description</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#275_14">Description</A><FONT COLOR=red><A NAME="266_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#275_27">Itm</A>         : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+                          <A HREF="terminal_interface-curses-menus__ads.htm#276_27">Description</A> : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="270_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="270_26">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#270_16">Descname</A>, "item_description");
+      <b>function</b> <FONT COLOR=red><A NAME="269_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="269_26">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#269_16">Descname</A>, "item_description");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#270_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#276_27">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#277_27">Description</A>);
-   <b>end</b> Description;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#269_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#275_27">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#276_27">Description</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#275_14">Description</A><A HREF="terminal_interface-curses-menus__ads.htm#275_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#280_14">Description</A><FONT COLOR=red><A NAME="276_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#280_27">Itm</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#279_14">Description</A> (<A HREF="terminal_interface-curses-menus__ads.htm#279_27">Itm</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="278_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="278_26">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#278_16">Descname</A>, "item_description");
+      <b>function</b> <FONT COLOR=red><A NAME="277_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="277_26">Itm</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#277_16">Descname</A>, "item_description");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#278_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#280_27">Itm</A>));
-   <b>end</b> Description;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#277_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#279_27">Itm</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#279_14">Description</A><A HREF="terminal_interface-curses-menus__ads.htm#279_14">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#290_14">Set_Current</A><FONT COLOR=red><A NAME="284_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#290_27">Men</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                          <A HREF="terminal_interface-curses-menus__ads.htm#291_27">Itm</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#289_14">Set_Current</A><FONT COLOR=red><A NAME="283_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#289_27">Men</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                          <A HREF="terminal_interface-curses-menus__ads.htm#290_27">Itm</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="287_16">Set_Curr_Item</A></FONT> (<FONT COLOR=red><A NAME="287_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="288_31">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#287_16">Set_Curr_Item</A>, "set_current_item");
+      <b>function</b> <FONT COLOR=red><A NAME="286_16">Set_Curr_Item</A></FONT> (<FONT COLOR=red><A NAME="286_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="287_31">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#286_16">Set_Curr_Item</A>, "set_current_item");
 
-      <FONT COLOR=red><A NAME="291_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#287_16">Set_Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#290_27">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#291_27">Itm</A>);
+      <FONT COLOR=red><A NAME="290_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#286_16">Set_Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#289_27">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#290_27">Itm</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#291_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#291_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#290_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#290_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Current;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#289_14">Set_Current</A><A HREF="terminal_interface-curses-menus__ads.htm#289_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#296_13">Current</A><FONT COLOR=red><A NAME="298_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#296_22">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#295_13">Current</A> (<A HREF="terminal_interface-curses-menus__ads.htm#295_22">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="300_16">Curr_Item</A></FONT> (<FONT COLOR=red><A NAME="300_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#300_16">Curr_Item</A>, "current_item");
+      <b>function</b> <FONT COLOR=red><A NAME="299_16">Curr_Item</A></FONT> (<FONT COLOR=red><A NAME="299_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#299_16">Curr_Item</A>, "current_item");
 
-      <FONT COLOR=red><A NAME="303_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A> := <A HREF="terminal_interface-curses-menus__adb.htm#300_16">Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#296_22">Men</A>);
+      <FONT COLOR=red><A NAME="302_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A> := <A HREF="terminal_interface-curses-menus__adb.htm#299_16">Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#295_22">Men</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#303_7">Res</A> = <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#116_4">Menu_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#302_7">Res</A> = <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#115_4">Menu_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#303_7">Res</A>;
-   <b>end</b> Current;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#302_7">Res</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#295_13">Current</A><A HREF="terminal_interface-curses-menus__ads.htm#295_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#301_14">Set_Top_Row</A><FONT COLOR=red><A NAME="311_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#301_27">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                          <A HREF="terminal_interface-curses-menus__ads.htm#302_27">Line</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#300_14">Set_Top_Row</A><FONT COLOR=red><A NAME="310_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#300_27">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                          <A HREF="terminal_interface-curses-menus__ads.htm#301_27">Line</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="314_16">Set_Toprow</A></FONT> (<FONT COLOR=red><A NAME="314_28">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                           <FONT COLOR=red><A NAME="315_28">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#314_16">Set_Toprow</A>, "set_top_row");
+      <b>function</b> <FONT COLOR=red><A NAME="313_16">Set_Toprow</A></FONT> (<FONT COLOR=red><A NAME="313_28">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                           <FONT COLOR=red><A NAME="314_28">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#313_16">Set_Toprow</A>, "set_top_row");
 
-      <FONT COLOR=red><A NAME="318_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#314_16">Set_Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#301_27">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#302_27">Line</A>));
+      <FONT COLOR=red><A NAME="317_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#313_16">Set_Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#300_27">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#301_27">Line</A>));
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#318_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#318_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#317_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#317_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Top_Row;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#300_14">Set_Top_Row</A><A HREF="terminal_interface-curses-menus__ads.htm#300_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#307_13">Top_Row</A><FONT COLOR=red><A NAME="325_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#307_22">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#306_13">Top_Row</A> (<A HREF="terminal_interface-curses-menus__ads.htm#306_22">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="327_16">Toprow</A></FONT> (<FONT COLOR=red><A NAME="327_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#327_16">Toprow</A>, "top_row");
+      <b>function</b> <FONT COLOR=red><A NAME="326_16">Toprow</A></FONT> (<FONT COLOR=red><A NAME="326_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#326_16">Toprow</A>, "top_row");
 
-      <FONT COLOR=red><A NAME="330_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#327_16">Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#307_22">Men</A>);
+      <FONT COLOR=red><A NAME="329_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#326_16">Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#306_22">Men</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#330_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#116_4">Menu_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#329_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#115_4">Menu_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#330_7">Res</A>);
-   <b>end</b> Top_Row;
+      <b>return</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#329_7">Res</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#306_13">Top_Row</A><A HREF="terminal_interface-curses-menus__ads.htm#306_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#312_13">Get_Index</A><FONT COLOR=red><A NAME="338_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#312_24">Itm</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> Positive
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#311_13">Get_Index</A> (<A HREF="terminal_interface-curses-menus__ads.htm#311_24">Itm</A> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> Positive
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="340_16">Get_Itemindex</A></FONT> (<FONT COLOR=red><A NAME="340_31">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#340_16">Get_Itemindex</A>, "item_index");
+      <b>function</b> <FONT COLOR=red><A NAME="339_16">Get_Itemindex</A></FONT> (<FONT COLOR=red><A NAME="339_31">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#339_16">Get_Itemindex</A>, "item_index");
 
-      <FONT COLOR=red><A NAME="343_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#340_16">Get_Itemindex</A> (<A HREF="terminal_interface-curses-menus__ads.htm#312_24">Itm</A>);
+      <FONT COLOR=red><A NAME="342_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#339_16">Get_Itemindex</A> (<A HREF="terminal_interface-curses-menus__ads.htm#311_24">Itm</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#343_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#116_4">Menu_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#342_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#115_4">Menu_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-menus__adb.htm#343_7">Res</A>) + Positive'First);
-   <b>end</b> Get_Index;
+      <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-menus__adb.htm#342_7">Res</A>) + Positive'First);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#311_13">Get_Index</A><A HREF="terminal_interface-curses-menus__ads.htm#311_13">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#324_14">Post</A><FONT COLOR=red><A NAME="351_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#324_20">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                   <A HREF="terminal_interface-curses-menus__ads.htm#325_20">Post</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#323_14">Post</A><FONT COLOR=red><A NAME="350_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#323_20">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                   <A HREF="terminal_interface-curses-menus__ads.htm#324_20">Post</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="354_16">M_Post</A></FONT> (<FONT COLOR=red><A NAME="354_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#354_16">M_Post</A>, "post_menu");
-      <b>function</b> <FONT COLOR=red><A NAME="356_16">M_Unpost</A></FONT> (<FONT COLOR=red><A NAME="356_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#356_16">M_Unpost</A>, "unpost_menu");
+      <b>function</b> <FONT COLOR=red><A NAME="353_16">M_Post</A></FONT> (<FONT COLOR=red><A NAME="353_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#353_16">M_Post</A>, "post_menu");
+      <b>function</b> <FONT COLOR=red><A NAME="355_16">M_Unpost</A></FONT> (<FONT COLOR=red><A NAME="355_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#355_16">M_Unpost</A>, "unpost_menu");
 
-      <FONT COLOR=red><A NAME="359_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="358_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#325_20">Post</A> <b>then</b>
-         <A HREF="terminal_interface-curses-menus__adb.htm#359_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#354_16">M_Post</A> (<A HREF="terminal_interface-curses-menus__ads.htm#324_20">Men</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#324_20">Post</A> <b>then</b>
+         <A HREF="terminal_interface-curses-menus__adb.htm#358_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#353_16">M_Post</A> (<A HREF="terminal_interface-curses-menus__ads.htm#323_20">Men</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-menus__adb.htm#359_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#356_16">M_Unpost</A> (<A HREF="terminal_interface-curses-menus__ads.htm#324_20">Men</A>);
+         <A HREF="terminal_interface-curses-menus__adb.htm#358_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#355_16">M_Unpost</A> (<A HREF="terminal_interface-curses-menus__ads.htm#323_20">Men</A>);
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#359_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#359_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#358_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#358_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Post;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#323_14">Post</A><A HREF="terminal_interface-curses-menus__ads.htm#323_14">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#335_14">Set_Options</A><FONT COLOR=red><A NAME="371_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#335_27">Men</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                          <A HREF="terminal_interface-curses-menus__ads.htm#336_27">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu_Option_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#334_14">Set_Options</A><FONT COLOR=red><A NAME="370_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#334_27">Men</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                          <A HREF="terminal_interface-curses-menus__ads.htm#335_27">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu_Option_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="374_16">Set_Menu_Opts</A></FONT> (<FONT COLOR=red><A NAME="374_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="375_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#374_16">Set_Menu_Opts</A>, "set_menu_opts");
+      <b>function</b> <FONT COLOR=red><A NAME="373_16">Set_Menu_Opts</A></FONT> (<FONT COLOR=red><A NAME="373_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="374_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#373_16">Set_Menu_Opts</A>, "set_menu_opts");
 
-      <FONT COLOR=red><A NAME="378_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#60_13">MOS_2_CInt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#336_27">Options</A>);
-      <FONT COLOR=red><A NAME="379_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="377_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#59_13">MOS_2_CInt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#335_27">Options</A>);
+      <FONT COLOR=red><A NAME="378_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__adb.htm#379_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#374_16">Set_Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#335_27">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#378_7">Opt</A>);
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#379_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#379_7">Res</A>);
+      <A HREF="terminal_interface-curses-menus__adb.htm#378_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#373_16">Set_Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#334_27">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#377_7">Opt</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#378_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#378_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Options;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#334_14">Set_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#334_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#341_14">Switch_Options</A><FONT COLOR=red><A NAME="387_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#341_30">Men</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                             <A HREF="terminal_interface-curses-menus__ads.htm#342_30">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu_Option_Set</A>;
-                             <A HREF="terminal_interface-curses-menus__ads.htm#343_30">On</A>      : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#340_14">Switch_Options</A><FONT COLOR=red><A NAME="386_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#340_30">Men</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                             <A HREF="terminal_interface-curses-menus__ads.htm#341_30">Options</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu_Option_Set</A>;
+                             <A HREF="terminal_interface-curses-menus__ads.htm#342_30">On</A>      : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="391_16">Menu_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="391_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                             <FONT COLOR=red><A NAME="392_30">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#391_16">Menu_Opts_On</A>, "menu_opts_on");
-      <b>function</b> <FONT COLOR=red><A NAME="394_16">Menu_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="394_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="395_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#394_16">Menu_Opts_Off</A>, "menu_opts_off");
+      <b>function</b> <FONT COLOR=red><A NAME="390_16">Menu_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="390_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                             <FONT COLOR=red><A NAME="391_30">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#390_16">Menu_Opts_On</A>, "menu_opts_on");
+      <b>function</b> <FONT COLOR=red><A NAME="393_16">Menu_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="393_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="394_31">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#393_16">Menu_Opts_Off</A>, "menu_opts_off");
 
-      <FONT COLOR=red><A NAME="398_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#60_13">MOS_2_CInt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#342_30">Options</A>);
-      <FONT COLOR=red><A NAME="399_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="397_7">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#59_13">MOS_2_CInt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#341_30">Options</A>);
+      <FONT COLOR=red><A NAME="398_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#343_30">On</A> <b>then</b>
-         <A HREF="terminal_interface-curses-menus__adb.htm#399_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#391_16">Menu_Opts_On</A>  (<A HREF="terminal_interface-curses-menus__ads.htm#341_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#398_7">Opt</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#342_30">On</A> <b>then</b>
+         <A HREF="terminal_interface-curses-menus__adb.htm#398_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#390_16">Menu_Opts_On</A>  (<A HREF="terminal_interface-curses-menus__ads.htm#340_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#397_7">Opt</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-menus__adb.htm#399_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#394_16">Menu_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#341_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#398_7">Opt</A>);
+         <A HREF="terminal_interface-curses-menus__adb.htm#398_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#393_16">Menu_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#340_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#397_7">Opt</A>);
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#399_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#399_7">Err</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#398_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#398_7">Err</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Switch_Options;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#340_14">Switch_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#340_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#349_14">Get_Options</A><FONT COLOR=red><A NAME="411_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#349_27">Men</A>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                               <A HREF="terminal_interface-curses-menus__ads.htm#350_27">Options</A> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu_Option_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#348_14">Get_Options</A><FONT COLOR=red><A NAME="410_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#348_27">Men</A>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                               <A HREF="terminal_interface-curses-menus__ads.htm#349_27">Options</A> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu_Option_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="414_16">Menu_Opts</A></FONT> (<FONT COLOR=red><A NAME="414_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#414_16">Menu_Opts</A>, "menu_opts");
+      <b>function</b> <FONT COLOR=red><A NAME="413_16">Menu_Opts</A></FONT> (<FONT COLOR=red><A NAME="413_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#413_16">Menu_Opts</A>, "menu_opts");
 
-      <FONT COLOR=red><A NAME="417_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#414_16">Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#349_27">Men</A>);
+      <FONT COLOR=red><A NAME="416_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#413_16">Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#348_27">Men</A>);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#350_27">Options</A> := <A HREF="terminal_interface-curses-menus__adb.htm#64_13">CInt_2_MOS</A> (<A HREF="terminal_interface-curses-menus__adb.htm#417_7">Res</A>);
-   <b>end</b> Get_Options;
+      <A HREF="terminal_interface-curses-menus__ads.htm#349_27">Options</A> := <A HREF="terminal_interface-curses-menus__adb.htm#63_13">CInt_2_MOS</A> (<A HREF="terminal_interface-curses-menus__adb.htm#416_7">Res</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#348_14">Get_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#348_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#354_13">Get_Options</A><FONT COLOR=red><A NAME="422_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#354_26">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#63_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu_Option_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#353_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#353_26">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu_Option_Set</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="424_7">Mos</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu_Option_Set</A>;
+      <FONT COLOR=red><A NAME="423_7">Mos</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu_Option_Set</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#349_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#354_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#424_7">Mos</A>);
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#424_7">Mos</A>;
-   <b>end</b> Get_Options;
+      <A HREF="terminal_interface-curses-menus__ads.htm#348_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#353_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#423_7">Mos</A>);
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#423_7">Mos</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#353_13">Get_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#353_13">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#363_14">Set_Window</A><FONT COLOR=red><A NAME="430_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#363_26">Men</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#364_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#362_14">Set_Window</A><FONT COLOR=red><A NAME="429_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#362_26">Men</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#363_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="433_16">Set_Menu_Win</A></FONT> (<FONT COLOR=red><A NAME="433_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                             <FONT COLOR=red><A NAME="434_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#433_16">Set_Menu_Win</A>, "set_menu_win");
+      <b>function</b> <FONT COLOR=red><A NAME="432_16">Set_Menu_Win</A></FONT> (<FONT COLOR=red><A NAME="432_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                             <FONT COLOR=red><A NAME="433_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#432_16">Set_Menu_Win</A>, "set_menu_win");
 
-      <FONT COLOR=red><A NAME="437_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#433_16">Set_Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#363_26">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#364_26">Win</A>);
+      <FONT COLOR=red><A NAME="436_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#432_16">Set_Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#362_26">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#363_26">Win</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#437_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#437_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#436_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#436_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Window;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#362_14">Set_Window</A><A HREF="terminal_interface-curses-menus__ads.htm#362_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#369_13">Get_Window</A><FONT COLOR=red><A NAME="444_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#369_25">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#368_13">Get_Window</A> (<A HREF="terminal_interface-curses-menus__ads.htm#368_25">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="446_16">Menu_Win</A></FONT> (<FONT COLOR=red><A NAME="446_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#446_16">Menu_Win</A>, "menu_win");
+      <b>function</b> <FONT COLOR=red><A NAME="445_16">Menu_Win</A></FONT> (<FONT COLOR=red><A NAME="445_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#445_16">Menu_Win</A>, "menu_win");
 
-      <FONT COLOR=red><A NAME="449_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#446_16">Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#369_25">Men</A>);
+      <FONT COLOR=red><A NAME="448_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#445_16">Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#368_25">Men</A>);
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#449_7">W</A>;
-   <b>end</b> Get_Window;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#448_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#368_13">Get_Window</A><A HREF="terminal_interface-curses-menus__ads.htm#368_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#374_14">Set_Sub_Window</A><FONT COLOR=red><A NAME="454_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#374_30">Men</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                             <A HREF="terminal_interface-curses-menus__ads.htm#375_30">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#373_14">Set_Sub_Window</A><FONT COLOR=red><A NAME="453_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#373_30">Men</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                             <A HREF="terminal_interface-curses-menus__ads.htm#374_30">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="457_16">Set_Menu_Sub</A></FONT> (<FONT COLOR=red><A NAME="457_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                             <FONT COLOR=red><A NAME="458_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#457_16">Set_Menu_Sub</A>, "set_menu_sub");
+      <b>function</b> <FONT COLOR=red><A NAME="456_16">Set_Menu_Sub</A></FONT> (<FONT COLOR=red><A NAME="456_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                             <FONT COLOR=red><A NAME="457_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#456_16">Set_Menu_Sub</A>, "set_menu_sub");
 
-      <FONT COLOR=red><A NAME="461_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#457_16">Set_Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#374_30">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#375_30">Win</A>);
+      <FONT COLOR=red><A NAME="460_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#456_16">Set_Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#373_30">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#374_30">Win</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#461_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#461_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#460_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#460_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Sub_Window;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#373_14">Set_Sub_Window</A><A HREF="terminal_interface-curses-menus__ads.htm#373_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#380_13">Get_Sub_Window</A><FONT COLOR=red><A NAME="468_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#380_29">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#379_13">Get_Sub_Window</A> (<A HREF="terminal_interface-curses-menus__ads.htm#379_29">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="470_16">Menu_Sub</A></FONT> (<FONT COLOR=red><A NAME="470_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#470_16">Menu_Sub</A>, "menu_sub");
+      <b>function</b> <FONT COLOR=red><A NAME="469_16">Menu_Sub</A></FONT> (<FONT COLOR=red><A NAME="469_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#469_16">Menu_Sub</A>, "menu_sub");
 
-      <FONT COLOR=red><A NAME="473_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#470_16">Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#380_29">Men</A>);
+      <FONT COLOR=red><A NAME="472_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#469_16">Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#379_29">Men</A>);
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#473_7">W</A>;
-   <b>end</b> Get_Sub_Window;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#472_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#379_13">Get_Sub_Window</A><A HREF="terminal_interface-curses-menus__ads.htm#379_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#385_14">Scale</A><FONT COLOR=red><A NAME="478_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#385_21">Men</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                    <A HREF="terminal_interface-curses-menus__ads.htm#386_21">Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                    <A HREF="terminal_interface-curses-menus__ads.htm#387_21">Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#384_14">Scale</A><FONT COLOR=red><A NAME="477_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#384_21">Men</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                    <A HREF="terminal_interface-curses-menus__ads.htm#385_21">Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                    <A HREF="terminal_interface-curses-menus__ads.htm#386_21">Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="482_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="483_16">M_Scale</A></FONT> (<FONT COLOR=red><A NAME="483_25">Men</A></FONT>    : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                        <FONT COLOR=red><A NAME="484_25">Yp</A></FONT>, <FONT COLOR=red><A NAME="484_29">Xp</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#482_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#483_16">M_Scale</A>, "scale_menu");
+      <b>type</b> <FONT COLOR=red><A NAME="481_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="482_16">M_Scale</A></FONT> (<FONT COLOR=red><A NAME="482_25">Men</A></FONT>    : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                        <FONT COLOR=red><A NAME="483_25">Yp</A></FONT>, <FONT COLOR=red><A NAME="483_29">Xp</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#481_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#482_16">M_Scale</A>, "scale_menu");
 
-      <FONT COLOR=red><A NAME="487_7">X</A></FONT>, <FONT COLOR=red><A NAME="487_10">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <FONT COLOR=red><A NAME="488_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#483_16">M_Scale</A> (<A HREF="terminal_interface-curses-menus__ads.htm#385_21">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#487_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#487_7">X</A>'<b>Access</b>);
+      <FONT COLOR=red><A NAME="486_7">X</A></FONT>, <FONT COLOR=red><A NAME="486_10">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="487_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#482_16">M_Scale</A> (<A HREF="terminal_interface-curses-menus__ads.htm#384_21">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#486_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#486_7">X</A>'<b>Access</b>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#488_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#488_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#487_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#487_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#386_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#487_10">Y</A>);
-      <A HREF="terminal_interface-curses-menus__ads.htm#387_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#487_7">X</A>);
-   <b>end</b> Scale;
+      <A HREF="terminal_interface-curses-menus__ads.htm#385_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#486_10">Y</A>);
+      <A HREF="terminal_interface-curses-menus__ads.htm#386_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#486_7">X</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#384_14">Scale</A><A HREF="terminal_interface-curses-menus__ads.htm#384_14">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#396_14">Position_Cursor</A><FONT COLOR=red><A NAME="497_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#396_31">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#395_14">Position_Cursor</A><FONT COLOR=red><A NAME="496_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#395_31">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="499_16">Pos_Menu_Cursor</A></FONT> (<FONT COLOR=red><A NAME="499_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#499_16">Pos_Menu_Cursor</A>, "pos_menu_cursor");
+      <b>function</b> <FONT COLOR=red><A NAME="498_16">Pos_Menu_Cursor</A></FONT> (<FONT COLOR=red><A NAME="498_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#498_16">Pos_Menu_Cursor</A>, "pos_menu_cursor");
 
-      <FONT COLOR=red><A NAME="502_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#499_16">Pos_Menu_Cursor</A> (<A HREF="terminal_interface-curses-menus__ads.htm#396_31">Men</A>);
+      <FONT COLOR=red><A NAME="501_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#498_16">Pos_Menu_Cursor</A> (<A HREF="terminal_interface-curses-menus__ads.htm#395_31">Men</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#502_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#502_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#501_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#501_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Position_Cursor;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#395_14">Position_Cursor</A><A HREF="terminal_interface-curses-menus__ads.htm#395_14">;</A>
 
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#405_14">Set_Mark</A><FONT COLOR=red><A NAME="510_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#405_24">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                       <A HREF="terminal_interface-curses-menus__ads.htm#406_24">Mark</A> : <b>in</b> String)
-   <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="513_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
-      <b>function</b> <FONT COLOR=red><A NAME="514_16">Set_Mark</A></FONT> (<FONT COLOR=red><A NAME="514_26">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                         <FONT COLOR=red><A NAME="515_26">Mark</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#513_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#514_16">Set_Mark</A>, "set_menu_mark");
-
-      <FONT COLOR=red><A NAME="518_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#406_24">Mark</A>'Length);
-      <FONT COLOR=red><A NAME="519_7">Len</A></FONT> : size_t;
-      <FONT COLOR=red><A NAME="520_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-   <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-menus__ads.htm#406_24">Mark</A>, <A HREF="terminal_interface-curses-menus__adb.htm#518_7">Txt</A>, <A HREF="terminal_interface-curses-menus__adb.htm#519_7">Len</A>);
-      <A HREF="terminal_interface-curses-menus__adb.htm#520_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#514_16">Set_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#405_24">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#518_7">Txt</A> (<A HREF="terminal_interface-curses-menus__adb.htm#518_7">Txt</A>'First)'<b>Access</b>);
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#520_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#520_7">Res</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#404_14">Set_Mark</A><FONT COLOR=red><A NAME="509_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#404_24">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                       <A HREF="terminal_interface-curses-menus__ads.htm#405_24">Mark</A> : <b>in</b> String)
+   <b>is</b>
+      <b>type</b> <FONT COLOR=red><A NAME="512_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
+      <b>function</b> <FONT COLOR=red><A NAME="513_16">Set_Mark</A></FONT> (<FONT COLOR=red><A NAME="513_26">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                         <FONT COLOR=red><A NAME="514_26">Mark</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#512_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#513_16">Set_Mark</A>, "set_menu_mark");
+
+      <FONT COLOR=red><A NAME="517_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#405_24">Mark</A>'Length);
+      <FONT COLOR=red><A NAME="518_7">Len</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="519_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+   <b>begin</b>
+      To_C (<A HREF="terminal_interface-curses-menus__ads.htm#405_24">Mark</A>, <A HREF="terminal_interface-curses-menus__adb.htm#517_7">Txt</A>, <A HREF="terminal_interface-curses-menus__adb.htm#518_7">Len</A>);
+      <A HREF="terminal_interface-curses-menus__adb.htm#519_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#513_16">Set_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#404_24">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#517_7">Txt</A> (<A HREF="terminal_interface-curses-menus__adb.htm#517_7">Txt</A>'First)'<b>Access</b>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#519_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#519_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Mark;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#404_14">Set_Mark</A><A HREF="terminal_interface-curses-menus__ads.htm#404_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#411_14">Mark</A><FONT COLOR=red><A NAME="529_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#411_20">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                   <A HREF="terminal_interface-curses-menus__ads.htm#412_20">Mark</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#410_14">Mark</A><FONT COLOR=red><A NAME="528_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#410_20">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                   <A HREF="terminal_interface-curses-menus__ads.htm#411_20">Mark</A> : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="532_16">Get_Menu_Mark</A></FONT> (<FONT COLOR=red><A NAME="532_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#532_16">Get_Menu_Mark</A>, "menu_mark");
+      <b>function</b> <FONT COLOR=red><A NAME="531_16">Get_Menu_Mark</A></FONT> (<FONT COLOR=red><A NAME="531_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#531_16">Get_Menu_Mark</A>, "menu_mark");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#532_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#411_20">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#412_20">Mark</A>);
-   <b>end</b> Mark;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#531_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#410_20">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#411_20">Mark</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#410_14">Mark</A><A HREF="terminal_interface-curses-menus__ads.htm#410_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#415_14">Mark</A><FONT COLOR=red><A NAME="538_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#415_20">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#414_14">Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#414_20">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="540_16">Get_Menu_Mark</A></FONT> (<FONT COLOR=red><A NAME="540_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#540_16">Get_Menu_Mark</A>, "menu_mark");
+      <b>function</b> <FONT COLOR=red><A NAME="539_16">Get_Menu_Mark</A></FONT> (<FONT COLOR=red><A NAME="539_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#539_16">Get_Menu_Mark</A>, "menu_mark");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#540_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#415_20">Men</A>));
-   <b>end</b> Mark;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#539_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#414_20">Men</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#414_14">Mark</A><A HREF="terminal_interface-curses-menus__ads.htm#414_14">;</A>
 
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#425_14">Set_Foreground</A><FONT COLOR=red><A NAME="547_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-menus__ads.htm#426_7">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#427_7">Fore</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#428_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="552_16">Set_Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="552_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="553_31">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#552_16">Set_Menu_Fore</A>, "set_menu_fore");
-
-      <FONT COLOR=red><A NAME="556_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
-                                             Color =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#428_7">Color</A>,
-                                             Attr  =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#427_7">Fore</A>);
-      <FONT COLOR=red><A NAME="559_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#552_16">Set_Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#426_7">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-menus__adb.htm#556_7">Ch</A>));
-   <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#559_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#559_7">Res</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#424_14">Set_Foreground</A><FONT COLOR=red><A NAME="546_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-menus__ads.htm#425_7">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+      <A HREF="terminal_interface-curses-menus__ads.htm#426_7">Fore</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+      <A HREF="terminal_interface-curses-menus__ads.htm#427_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="551_16">Set_Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="551_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="552_31">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#551_16">Set_Menu_Fore</A>, "set_menu_fore");
+
+      <FONT COLOR=red><A NAME="555_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
+                                             Color =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#427_7">Color</A>,
+                                             Attr  =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#426_7">Fore</A>);
+      <FONT COLOR=red><A NAME="558_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#551_16">Set_Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#425_7">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-menus__adb.htm#555_7">Ch</A>));
+   <b>begin</b>
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#558_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#558_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Foreground;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#424_14">Set_Foreground</A><A HREF="terminal_interface-curses-menus__ads.htm#424_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#433_14">Foreground</A><FONT COLOR=red><A NAME="566_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#433_26">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#434_26">Fore</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#432_14">Foreground</A><FONT COLOR=red><A NAME="565_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#432_26">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#433_26">Fore</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="569_16">Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="569_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#569_16">Menu_Fore</A>, "menu_fore");
+      <b>function</b> <FONT COLOR=red><A NAME="568_16">Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="568_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#568_16">Menu_Fore</A>, "menu_fore");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#434_26">Fore</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#569_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#433_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-   <b>end</b> Foreground;
+      <A HREF="terminal_interface-curses-menus__ads.htm#433_26">Fore</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#568_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#432_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#432_14">Foreground</A><A HREF="terminal_interface-curses-menus__ads.htm#432_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#438_14">Foreground</A><FONT COLOR=red><A NAME="575_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#438_26">Men</A>   : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#439_26">Fore</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#440_26">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#437_14">Foreground</A><FONT COLOR=red><A NAME="574_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#437_26">Men</A>   : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#438_26">Fore</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#439_26">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="579_16">Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="579_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#579_16">Menu_Fore</A>, "menu_fore");
+      <b>function</b> <FONT COLOR=red><A NAME="578_16">Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="578_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#578_16">Menu_Fore</A>, "menu_fore");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#439_26">Fore</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#579_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#438_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#440_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#579_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#438_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#355_10">Color</A>;
-   <b>end</b> Foreground;
+      <A HREF="terminal_interface-curses-menus__ads.htm#438_26">Fore</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#578_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#437_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+      <A HREF="terminal_interface-curses-menus__ads.htm#439_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#578_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#437_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Color</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#437_14">Foreground</A><A HREF="terminal_interface-curses-menus__ads.htm#437_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#445_14">Set_Background</A><FONT COLOR=red><A NAME="586_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-menus__ads.htm#446_7">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#447_7">Back</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#448_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#444_14">Set_Background</A><FONT COLOR=red><A NAME="585_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-menus__ads.htm#445_7">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+      <A HREF="terminal_interface-curses-menus__ads.htm#446_7">Back</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+      <A HREF="terminal_interface-curses-menus__ads.htm#447_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="591_16">Set_Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="591_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="592_31">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#591_16">Set_Menu_Back</A>, "set_menu_back");
+      <b>function</b> <FONT COLOR=red><A NAME="590_16">Set_Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="590_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="591_31">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#590_16">Set_Menu_Back</A>, "set_menu_back");
 
-      <FONT COLOR=red><A NAME="595_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
-                                             Color =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#448_7">Color</A>,
-                                             Attr  =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#447_7">Back</A>);
-      <FONT COLOR=red><A NAME="598_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#591_16">Set_Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#446_7">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-menus__adb.htm#595_7">Ch</A>));
+      <FONT COLOR=red><A NAME="594_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
+                                             Color =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#447_7">Color</A>,
+                                             Attr  =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#446_7">Back</A>);
+      <FONT COLOR=red><A NAME="597_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#590_16">Set_Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#445_7">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-menus__adb.htm#594_7">Ch</A>));
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#598_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#598_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#597_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#597_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Background;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#444_14">Set_Background</A><A HREF="terminal_interface-curses-menus__ads.htm#444_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#453_14">Background</A><FONT COLOR=red><A NAME="605_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#453_26">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#454_26">Back</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#452_14">Background</A><FONT COLOR=red><A NAME="604_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#452_26">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#453_26">Back</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="608_16">Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="608_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#608_16">Menu_Back</A>, "menu_back");
+      <b>function</b> <FONT COLOR=red><A NAME="607_16">Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="607_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#607_16">Menu_Back</A>, "menu_back");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#454_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#608_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#453_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-   <b>end</b> Background;
+      <A HREF="terminal_interface-curses-menus__ads.htm#453_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#607_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#452_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#452_14">Background</A><A HREF="terminal_interface-curses-menus__ads.htm#452_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#458_14">Background</A><FONT COLOR=red><A NAME="614_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#458_26">Men</A>   : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#459_26">Back</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#460_26">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#457_14">Background</A><FONT COLOR=red><A NAME="613_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#457_26">Men</A>   : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#458_26">Back</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#459_26">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="618_16">Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="618_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#618_16">Menu_Back</A>, "menu_back");
+      <b>function</b> <FONT COLOR=red><A NAME="617_16">Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="617_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#617_16">Menu_Back</A>, "menu_back");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#459_26">Back</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#618_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#458_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#460_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#618_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#458_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#355_10">Color</A>;
-   <b>end</b> Background;
+      <A HREF="terminal_interface-curses-menus__ads.htm#458_26">Back</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#617_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#457_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+      <A HREF="terminal_interface-curses-menus__ads.htm#459_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#617_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#457_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Color</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#457_14">Background</A><A HREF="terminal_interface-curses-menus__ads.htm#457_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#465_14">Set_Grey</A><FONT COLOR=red><A NAME="625_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#466_7">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                       <A HREF="terminal_interface-curses-menus__ads.htm#467_7">Grey</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-                       <A HREF="terminal_interface-curses-menus__ads.htm#468_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#464_14">Set_Grey</A><FONT COLOR=red><A NAME="624_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#465_7">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                       <A HREF="terminal_interface-curses-menus__ads.htm#466_7">Grey</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+                       <A HREF="terminal_interface-curses-menus__ads.htm#467_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="629_16">Set_Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="629_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="630_31">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#629_16">Set_Menu_Grey</A>, "set_menu_grey");
+      <b>function</b> <FONT COLOR=red><A NAME="628_16">Set_Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="628_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="629_31">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#628_16">Set_Menu_Grey</A>, "set_menu_grey");
 
-      <FONT COLOR=red><A NAME="633_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
-                                             Color =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#468_7">Color</A>,
-                                             Attr  =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#467_7">Grey</A>);
+      <FONT COLOR=red><A NAME="632_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
+                                             Color =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#467_7">Color</A>,
+                                             Attr  =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#466_7">Grey</A>);
 
-      <FONT COLOR=red><A NAME="637_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#629_16">Set_Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#466_7">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-menus__adb.htm#633_7">Ch</A>));
+      <FONT COLOR=red><A NAME="636_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#628_16">Set_Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#465_7">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses-menus__adb.htm#632_7">Ch</A>));
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#637_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#637_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#636_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#636_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Grey;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#464_14">Set_Grey</A><A HREF="terminal_interface-curses-menus__ads.htm#464_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#473_14">Grey</A><FONT COLOR=red><A NAME="644_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#473_20">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                   <A HREF="terminal_interface-curses-menus__ads.htm#474_20">Grey</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#472_14">Grey</A><FONT COLOR=red><A NAME="643_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#472_20">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                   <A HREF="terminal_interface-curses-menus__ads.htm#473_20">Grey</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="647_16">Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="647_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#647_16">Menu_Grey</A>, "menu_grey");
+      <b>function</b> <FONT COLOR=red><A NAME="646_16">Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="646_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#646_16">Menu_Grey</A>, "menu_grey");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#474_20">Grey</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#647_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#473_20">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-   <b>end</b> Grey;
+      <A HREF="terminal_interface-curses-menus__ads.htm#473_20">Grey</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#646_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#472_20">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#472_14">Grey</A><A HREF="terminal_interface-curses-menus__ads.htm#472_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#478_14">Grey</A><FONT COLOR=red><A NAME="653_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#479_7">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                   <A HREF="terminal_interface-curses-menus__ads.htm#480_7">Grey</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>;
-                   <A HREF="terminal_interface-curses-menus__ads.htm#481_7">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#477_14">Grey</A><FONT COLOR=red><A NAME="652_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#478_7">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                   <A HREF="terminal_interface-curses-menus__ads.htm#479_7">Grey</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>;
+                   <A HREF="terminal_interface-curses-menus__ads.htm#480_7">Color</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="657_16">Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="657_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#657_16">Menu_Grey</A>, "menu_grey");
+      <b>function</b> <FONT COLOR=red><A NAME="656_16">Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="656_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#656_16">Menu_Grey</A>, "menu_grey");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#480_7">Grey</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#657_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#479_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#481_7">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#657_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#479_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#355_10">Color</A>;
-   <b>end</b> Grey;
+      <A HREF="terminal_interface-curses-menus__ads.htm#479_7">Grey</A>  := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#656_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#478_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+      <A HREF="terminal_interface-curses-menus__ads.htm#480_7">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#656_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#478_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#354_10">Color</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#477_14">Grey</A><A HREF="terminal_interface-curses-menus__ads.htm#477_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#486_14">Set_Pad_Character</A><FONT COLOR=red><A NAME="664_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#486_33">Men</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                                <A HREF="terminal_interface-curses-menus__ads.htm#487_33">Pad</A> : <b>in</b> Character := <A HREF="terminal_interface-curses-menus__ads.htm#54_4">Space</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#485_14">Set_Pad_Character</A><FONT COLOR=red><A NAME="663_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#485_33">Men</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                                <A HREF="terminal_interface-curses-menus__ads.htm#486_33">Pad</A> : <b>in</b> Character := <A HREF="terminal_interface-curses-menus__ads.htm#53_4">Space</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="667_16">Set_Menu_Pad</A></FONT> (<FONT COLOR=red><A NAME="667_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                             <FONT COLOR=red><A NAME="668_30">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#667_16">Set_Menu_Pad</A>, "set_menu_pad");
+      <b>function</b> <FONT COLOR=red><A NAME="666_16">Set_Menu_Pad</A></FONT> (<FONT COLOR=red><A NAME="666_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                             <FONT COLOR=red><A NAME="667_30">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#666_16">Set_Menu_Pad</A>, "set_menu_pad");
 
-      <FONT COLOR=red><A NAME="671_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#667_16">Set_Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#486_33">Men</A>,
-                                                <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#487_33">Pad</A>)));
+      <FONT COLOR=red><A NAME="670_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#666_16">Set_Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#485_33">Men</A>,
+                                                <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#486_33">Pad</A>)));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#671_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#671_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#670_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#670_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Pad_Character;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#485_14">Set_Pad_Character</A><A HREF="terminal_interface-curses-menus__ads.htm#485_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#492_14">Pad_Character</A><FONT COLOR=red><A NAME="679_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#492_29">Men</A> : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                            <A HREF="terminal_interface-curses-menus__ads.htm#493_29">Pad</A> : <b>out</b> Character)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#491_14">Pad_Character</A><FONT COLOR=red><A NAME="678_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#491_29">Men</A> : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                            <A HREF="terminal_interface-curses-menus__ads.htm#492_29">Pad</A> : <b>out</b> Character)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="682_16">Menu_Pad</A></FONT> (<FONT COLOR=red><A NAME="682_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#682_16">Menu_Pad</A>, "menu_pad");
+      <b>function</b> <FONT COLOR=red><A NAME="681_16">Menu_Pad</A></FONT> (<FONT COLOR=red><A NAME="681_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#681_16">Menu_Pad</A>, "menu_pad");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-menus__ads.htm#493_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-menus__adb.htm#682_16">Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#492_29">Men</A>));
-   <b>end</b> Pad_Character;
+      <A HREF="terminal_interface-curses-menus__ads.htm#492_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-menus__adb.htm#681_16">Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#491_29">Men</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#491_14">Pad_Character</A><A HREF="terminal_interface-curses-menus__ads.htm#491_14">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#502_14">Set_Spacing</A><FONT COLOR=red><A NAME="688_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#502_27">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                          <A HREF="terminal_interface-curses-menus__ads.htm#503_27">Descr</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> := 0;
-                          <A HREF="terminal_interface-curses-menus__ads.htm#504_27">Row</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>   := 0;
-                          <A HREF="terminal_interface-curses-menus__ads.htm#505_27">Col</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> := 0)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="693_16">Set_Spacing</A></FONT> (<FONT COLOR=red><A NAME="693_29">Men</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                            <FONT COLOR=red><A NAME="694_29">D</A></FONT>, <FONT COLOR=red><A NAME="694_32">R</A></FONT>, <FONT COLOR=red><A NAME="694_35">C</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#693_16">Set_Spacing</A>, "set_menu_spacing");
-
-      <FONT COLOR=red><A NAME="697_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#693_16">Set_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#502_27">Men</A>,
-                                               <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#503_27">Descr</A>),
-                                               <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#504_27">Row</A>),
-                                               <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#505_27">Col</A>));
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#697_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#697_7">Res</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#501_14">Set_Spacing</A><FONT COLOR=red><A NAME="687_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#501_27">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                          <A HREF="terminal_interface-curses-menus__ads.htm#502_27">Descr</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> := 0;
+                          <A HREF="terminal_interface-curses-menus__ads.htm#503_27">Row</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>   := 0;
+                          <A HREF="terminal_interface-curses-menus__ads.htm#504_27">Col</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> := 0)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="692_16">Set_Spacing</A></FONT> (<FONT COLOR=red><A NAME="692_29">Men</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                            <FONT COLOR=red><A NAME="693_29">D</A></FONT>, <FONT COLOR=red><A NAME="693_32">R</A></FONT>, <FONT COLOR=red><A NAME="693_35">C</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#692_16">Set_Spacing</A>, "set_menu_spacing");
+
+      <FONT COLOR=red><A NAME="696_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#692_16">Set_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#501_27">Men</A>,
+                                               <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#502_27">Descr</A>),
+                                               <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#503_27">Row</A>),
+                                               <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#504_27">Col</A>));
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#696_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#696_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Spacing;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#510_14">Spacing</A><FONT COLOR=red><A NAME="707_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#510_23">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                      <A HREF="terminal_interface-curses-menus__ads.htm#511_23">Descr</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-                      <A HREF="terminal_interface-curses-menus__ads.htm#512_23">Row</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                      <A HREF="terminal_interface-curses-menus__ads.htm#513_23">Col</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
-   <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="712_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="713_16">Get_Spacing</A></FONT> (<FONT COLOR=red><A NAME="713_29">Men</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                            <FONT COLOR=red><A NAME="714_29">D</A></FONT>, <FONT COLOR=red><A NAME="714_32">R</A></FONT>, <FONT COLOR=red><A NAME="714_35">C</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#712_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#713_16">Get_Spacing</A>, "menu_spacing");
-
-      <FONT COLOR=red><A NAME="717_7">D</A></FONT>, <FONT COLOR=red><A NAME="717_10">R</A></FONT>, <FONT COLOR=red><A NAME="717_13">C</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <FONT COLOR=red><A NAME="718_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#713_16">Get_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#510_23">Men</A>,
-                                               <A HREF="terminal_interface-curses-menus__adb.htm#717_7">D</A>'<b>Access</b>,
-                                               <A HREF="terminal_interface-curses-menus__adb.htm#717_10">R</A>'<b>Access</b>,
-                                               <A HREF="terminal_interface-curses-menus__adb.htm#717_13">C</A>'<b>Access</b>);
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#718_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#718_7">Res</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#501_14">Set_Spacing</A><A HREF="terminal_interface-curses-menus__ads.htm#501_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#509_14">Spacing</A><FONT COLOR=red><A NAME="706_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#509_23">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                      <A HREF="terminal_interface-curses-menus__ads.htm#510_23">Descr</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+                      <A HREF="terminal_interface-curses-menus__ads.htm#511_23">Row</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                      <A HREF="terminal_interface-curses-menus__ads.htm#512_23">Col</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
+   <b>is</b>
+      <b>type</b> <FONT COLOR=red><A NAME="711_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="712_16">Get_Spacing</A></FONT> (<FONT COLOR=red><A NAME="712_29">Men</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                            <FONT COLOR=red><A NAME="713_29">D</A></FONT>, <FONT COLOR=red><A NAME="713_32">R</A></FONT>, <FONT COLOR=red><A NAME="713_35">C</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#711_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#712_16">Get_Spacing</A>, "menu_spacing");
+
+      <FONT COLOR=red><A NAME="716_7">D</A></FONT>, <FONT COLOR=red><A NAME="716_10">R</A></FONT>, <FONT COLOR=red><A NAME="716_13">C</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="717_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#712_16">Get_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#509_23">Men</A>,
+                                               <A HREF="terminal_interface-curses-menus__adb.htm#716_7">D</A>'<b>Access</b>,
+                                               <A HREF="terminal_interface-curses-menus__adb.htm#716_10">R</A>'<b>Access</b>,
+                                               <A HREF="terminal_interface-curses-menus__adb.htm#716_13">C</A>'<b>Access</b>);
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#717_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#717_7">Res</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-menus__ads.htm#511_23">Descr</A> := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#717_7">D</A>);
-         <A HREF="terminal_interface-curses-menus__ads.htm#512_23">Row</A>   := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#717_10">R</A>);
-         <A HREF="terminal_interface-curses-menus__ads.htm#513_23">Col</A>   := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#717_13">C</A>);
+         <A HREF="terminal_interface-curses-menus__ads.htm#510_23">Descr</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#716_7">D</A>);
+         <A HREF="terminal_interface-curses-menus__ads.htm#511_23">Row</A>   := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#716_10">R</A>);
+         <A HREF="terminal_interface-curses-menus__ads.htm#512_23">Col</A>   := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#716_13">C</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Spacing;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#509_14">Spacing</A><A HREF="terminal_interface-curses-menus__ads.htm#509_14">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#522_13">Set_Pattern</A><FONT COLOR=red><A NAME="732_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#522_26">Men</A>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#523_26">Text</A> : String) <b>return</b> Boolean
-   <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="735_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
-      <b>function</b> <FONT COLOR=red><A NAME="736_16">Set_Pattern</A></FONT> (<FONT COLOR=red><A NAME="736_29">Men</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                            <FONT COLOR=red><A NAME="737_29">Pattern</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#735_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#736_16">Set_Pattern</A>, "set_menu_pattern");
-
-      <FONT COLOR=red><A NAME="740_7">S</A></FONT>   : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#523_26">Text</A>'Length);
-      <FONT COLOR=red><A NAME="741_7">L</A></FONT>   : size_t;
-      <FONT COLOR=red><A NAME="742_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
-   <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-menus__ads.htm#523_26">Text</A>, <A HREF="terminal_interface-curses-menus__adb.htm#740_7">S</A>, <A HREF="terminal_interface-curses-menus__adb.htm#741_7">L</A>);
-      <A HREF="terminal_interface-curses-menus__adb.htm#742_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#736_16">Set_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#522_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#740_7">S</A> (<A HREF="terminal_interface-curses-menus__adb.htm#740_7">S</A>'First)'<b>Access</b>);
-      <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#742_7">Res</A> <b>is</b>
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#90_4">E_No_Match</A> =&gt; <b>return</b> False;
-         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A>       =&gt; <b>return</b> True;
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#521_13">Set_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#521_26">Men</A>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#522_26">Text</A> : String) <b>return</b> Boolean
+   <b>is</b>
+      <b>type</b> <FONT COLOR=red><A NAME="734_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char;
+      <b>function</b> <FONT COLOR=red><A NAME="735_16">Set_Pattern</A></FONT> (<FONT COLOR=red><A NAME="735_29">Men</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                            <FONT COLOR=red><A NAME="736_29">Pattern</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#734_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#735_16">Set_Pattern</A>, "set_menu_pattern");
+
+      <FONT COLOR=red><A NAME="739_7">S</A></FONT>   : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#522_26">Text</A>'Length);
+      <FONT COLOR=red><A NAME="740_7">L</A></FONT>   : size_t;
+      <FONT COLOR=red><A NAME="741_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
+   <b>begin</b>
+      To_C (<A HREF="terminal_interface-curses-menus__ads.htm#522_26">Text</A>, <A HREF="terminal_interface-curses-menus__adb.htm#739_7">S</A>, <A HREF="terminal_interface-curses-menus__adb.htm#740_7">L</A>);
+      <A HREF="terminal_interface-curses-menus__adb.htm#741_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#735_16">Set_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#521_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#739_7">S</A> (<A HREF="terminal_interface-curses-menus__adb.htm#739_7">S</A>'First)'<b>Access</b>);
+      <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#741_7">Res</A> <b>is</b>
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#89_4">E_No_Match</A> =&gt; <b>return</b> False;
+         <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A>       =&gt; <b>return</b> True;
          <b>when</b> <b>others</b> =&gt;
-            <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#742_7">Res</A>);
+            <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#741_7">Res</A>);
             <b>return</b> False;
       <b>end</b> <b>case</b>;
-   <b>end</b> Set_Pattern;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#521_13">Set_Pattern</A><A HREF="terminal_interface-curses-menus__ads.htm#521_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#529_14">Pattern</A><FONT COLOR=red><A NAME="755_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#529_23">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                      <A HREF="terminal_interface-curses-menus__ads.htm#530_23">Text</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#528_14">Pattern</A><FONT COLOR=red><A NAME="754_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#528_23">Men</A>  : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                      <A HREF="terminal_interface-curses-menus__ads.htm#529_23">Text</A> : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="758_16">Get_Pattern</A></FONT> (<FONT COLOR=red><A NAME="758_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#58_12">chars_ptr</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#758_16">Get_Pattern</A>, "menu_pattern");
+      <b>function</b> <FONT COLOR=red><A NAME="757_16">Get_Pattern</A></FONT> (<FONT COLOR=red><A NAME="757_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#57_12">chars_ptr</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#757_16">Get_Pattern</A>, "menu_pattern");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#758_16">Get_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#529_23">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#530_23">Text</A>);
-   <b>end</b> Pattern;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#757_16">Get_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#528_23">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#529_23">Text</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#528_14">Pattern</A><A HREF="terminal_interface-curses-menus__ads.htm#528_14">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#539_14">Set_Format</A><FONT COLOR=red><A NAME="764_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#539_26">Men</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#540_26">Lines</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                         <A HREF="terminal_interface-curses-menus__ads.htm#541_26">Columns</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#538_14">Set_Format</A><FONT COLOR=red><A NAME="763_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#538_26">Men</A>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#539_26">Lines</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                         <A HREF="terminal_interface-curses-menus__ads.htm#540_26">Columns</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="768_16">Set_Menu_Fmt</A></FONT> (<FONT COLOR=red><A NAME="768_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                             <FONT COLOR=red><A NAME="769_30">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                             <FONT COLOR=red><A NAME="770_30">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#768_16">Set_Menu_Fmt</A>, "set_menu_format");
+      <b>function</b> <FONT COLOR=red><A NAME="767_16">Set_Menu_Fmt</A></FONT> (<FONT COLOR=red><A NAME="767_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                             <FONT COLOR=red><A NAME="768_30">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                             <FONT COLOR=red><A NAME="769_30">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#767_16">Set_Menu_Fmt</A>, "set_menu_format");
 
-      <FONT COLOR=red><A NAME="773_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#768_16">Set_Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#539_26">Men</A>,
-                                                <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#540_26">Lines</A>),
-                                                <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#541_26">Columns</A>));
+      <FONT COLOR=red><A NAME="772_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#767_16">Set_Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#538_26">Men</A>,
+                                                <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#539_26">Lines</A>),
+                                                <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#540_26">Columns</A>));
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#773_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#773_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#772_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#772_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Format;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#538_14">Set_Format</A><A HREF="terminal_interface-curses-menus__ads.htm#538_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#553_14">Format</A><FONT COLOR=red><A NAME="782_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#553_22">Men</A>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                     <A HREF="terminal_interface-curses-menus__ads.htm#554_22">Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                     <A HREF="terminal_interface-curses-menus__ads.htm#555_22">Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#552_14">Format</A><FONT COLOR=red><A NAME="781_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#552_22">Men</A>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                     <A HREF="terminal_interface-curses-menus__ads.htm#553_22">Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                     <A HREF="terminal_interface-curses-menus__ads.htm#554_22">Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="786_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="787_16">Menu_Fmt</A></FONT> (<FONT COLOR=red><A NAME="787_26">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                         <FONT COLOR=red><A NAME="788_26">Y</A></FONT>, <FONT COLOR=red><A NAME="788_29">X</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#786_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#787_16">Menu_Fmt</A>, "menu_format");
+      <b>type</b> <FONT COLOR=red><A NAME="785_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="786_16">Menu_Fmt</A></FONT> (<FONT COLOR=red><A NAME="786_26">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                         <FONT COLOR=red><A NAME="787_26">Y</A></FONT>, <FONT COLOR=red><A NAME="787_29">X</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#785_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#786_16">Menu_Fmt</A>, "menu_format");
 
-      <FONT COLOR=red><A NAME="791_7">L</A></FONT>, <FONT COLOR=red><A NAME="791_10">C</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <FONT COLOR=red><A NAME="792_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#787_16">Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#553_22">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#791_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#791_10">C</A>'<b>Access</b>);
+      <FONT COLOR=red><A NAME="790_7">L</A></FONT>, <FONT COLOR=red><A NAME="790_10">C</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="791_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#786_16">Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#552_22">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#790_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#790_10">C</A>'<b>Access</b>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#792_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#792_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#791_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#791_7">Res</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-menus__ads.htm#554_22">Lines</A>   := <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#791_7">L</A>);
-         <A HREF="terminal_interface-curses-menus__ads.htm#555_22">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#791_10">C</A>);
+         <A HREF="terminal_interface-curses-menus__ads.htm#553_22">Lines</A>   := <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#790_7">L</A>);
+         <A HREF="terminal_interface-curses-menus__ads.htm#554_22">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#790_10">C</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Format;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#552_14">Format</A><A HREF="terminal_interface-curses-menus__ads.htm#552_14">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#567_14">Set_Item_Init_Hook</A><FONT COLOR=red><A NAME="802_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#567_34">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                                 <A HREF="terminal_interface-curses-menus__ads.htm#568_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#566_14">Set_Item_Init_Hook</A><FONT COLOR=red><A NAME="801_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#566_34">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                                 <A HREF="terminal_interface-curses-menus__ads.htm#567_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="805_16">Set_Item_Init</A></FONT> (<FONT COLOR=red><A NAME="805_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="806_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#805_16">Set_Item_Init</A>, "set_item_init");
+      <b>function</b> <FONT COLOR=red><A NAME="804_16">Set_Item_Init</A></FONT> (<FONT COLOR=red><A NAME="804_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="805_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#804_16">Set_Item_Init</A>, "set_item_init");
 
-      <FONT COLOR=red><A NAME="809_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#805_16">Set_Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#567_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#568_34">Proc</A>);
+      <FONT COLOR=red><A NAME="808_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#804_16">Set_Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#566_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#567_34">Proc</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#809_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#809_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#808_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#808_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Item_Init_Hook;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#566_14">Set_Item_Init_Hook</A><A HREF="terminal_interface-curses-menus__ads.htm#566_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#573_14">Set_Item_Term_Hook</A><FONT COLOR=red><A NAME="816_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#573_34">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                                 <A HREF="terminal_interface-curses-menus__ads.htm#574_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#572_14">Set_Item_Term_Hook</A><FONT COLOR=red><A NAME="815_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#572_34">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                                 <A HREF="terminal_interface-curses-menus__ads.htm#573_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="819_16">Set_Item_Term</A></FONT> (<FONT COLOR=red><A NAME="819_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="820_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#819_16">Set_Item_Term</A>, "set_item_term");
+      <b>function</b> <FONT COLOR=red><A NAME="818_16">Set_Item_Term</A></FONT> (<FONT COLOR=red><A NAME="818_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="819_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#818_16">Set_Item_Term</A>, "set_item_term");
 
-      <FONT COLOR=red><A NAME="823_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#819_16">Set_Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#573_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#574_34">Proc</A>);
+      <FONT COLOR=red><A NAME="822_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#818_16">Set_Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#572_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#573_34">Proc</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#823_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#823_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#822_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#822_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Item_Term_Hook;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#572_14">Set_Item_Term_Hook</A><A HREF="terminal_interface-curses-menus__ads.htm#572_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#579_14">Set_Menu_Init_Hook</A><FONT COLOR=red><A NAME="830_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#579_34">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                                 <A HREF="terminal_interface-curses-menus__ads.htm#580_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#578_14">Set_Menu_Init_Hook</A><FONT COLOR=red><A NAME="829_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#578_34">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                                 <A HREF="terminal_interface-curses-menus__ads.htm#579_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="833_16">Set_Menu_Init</A></FONT> (<FONT COLOR=red><A NAME="833_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="834_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#833_16">Set_Menu_Init</A>, "set_menu_init");
+      <b>function</b> <FONT COLOR=red><A NAME="832_16">Set_Menu_Init</A></FONT> (<FONT COLOR=red><A NAME="832_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="833_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#832_16">Set_Menu_Init</A>, "set_menu_init");
 
-      <FONT COLOR=red><A NAME="837_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#833_16">Set_Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#579_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#580_34">Proc</A>);
+      <FONT COLOR=red><A NAME="836_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#832_16">Set_Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#578_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#579_34">Proc</A>);
    <b>begin</b>
-      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#837_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#837_7">Res</A>);
+      <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#836_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#836_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Menu_Init_Hook;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#578_14">Set_Menu_Init_Hook</A><A HREF="terminal_interface-curses-menus__ads.htm#578_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#585_14">Set_Menu_Term_Hook</A><FONT COLOR=red><A NAME="844_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#585_34">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                                 <A HREF="terminal_interface-curses-menus__ads.htm#586_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#584_14">Set_Menu_Term_Hook</A><FONT COLOR=red><A NAME="843_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#584_34">Men</A>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                                 <A HREF="terminal_interface-curses-menus__ads.htm#585_34">Proc</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="847_16">Set_Menu_Term</A></FONT> (<FONT COLOR=red><A NAME="847_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                              <FONT COLOR=red><A NAME="848_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#847_16">Set_Menu_Term</A>, "set_menu_term");
+      <b>function</b> <FONT COLOR=red><A NAME="846_16">Set_Menu_Term</A></FONT> (<FONT COLOR=red><A NAME="846_31">Men</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                              <FONT COLOR=red><A NAME="847_31">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#846_16">Set_Menu_Term</A>, "set_menu_term");
 
-      <FONT COLOR=red><A NAME="851_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#847_16">Set_Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#585_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#586_34">Proc</A>);
+      <FONT COLOR=red><A NAME="850_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#846_16">Set_Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#584_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#585_34">Proc</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#851_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#851_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#850_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#850_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Menu_Term_Hook;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#584_14">Set_Menu_Term_Hook</A><A HREF="terminal_interface-curses-menus__ads.htm#584_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#591_13">Get_Item_Init_Hook</A><FONT COLOR=red><A NAME="858_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#591_33">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#590_13">Get_Item_Init_Hook</A> (<A HREF="terminal_interface-curses-menus__ads.htm#590_33">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="860_16">Item_Init</A></FONT> (<FONT COLOR=red><A NAME="860_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#860_16">Item_Init</A>, "item_init");
+      <b>function</b> <FONT COLOR=red><A NAME="859_16">Item_Init</A></FONT> (<FONT COLOR=red><A NAME="859_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#859_16">Item_Init</A>, "item_init");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#860_16">Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#591_33">Men</A>);
-   <b>end</b> Get_Item_Init_Hook;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#859_16">Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#590_33">Men</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#590_13">Get_Item_Init_Hook</A><A HREF="terminal_interface-curses-menus__ads.htm#590_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#596_13">Get_Item_Term_Hook</A><FONT COLOR=red><A NAME="866_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#596_33">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#595_13">Get_Item_Term_Hook</A> (<A HREF="terminal_interface-curses-menus__ads.htm#595_33">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="868_16">Item_Term</A></FONT> (<FONT COLOR=red><A NAME="868_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#868_16">Item_Term</A>, "item_term");
+      <b>function</b> <FONT COLOR=red><A NAME="867_16">Item_Term</A></FONT> (<FONT COLOR=red><A NAME="867_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#867_16">Item_Term</A>, "item_term");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#868_16">Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#596_33">Men</A>);
-   <b>end</b> Get_Item_Term_Hook;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#867_16">Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#595_33">Men</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#595_13">Get_Item_Term_Hook</A><A HREF="terminal_interface-curses-menus__ads.htm#595_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#601_13">Get_Menu_Init_Hook</A><FONT COLOR=red><A NAME="874_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#601_33">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#600_13">Get_Menu_Init_Hook</A> (<A HREF="terminal_interface-curses-menus__ads.htm#600_33">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="876_16">Menu_Init</A></FONT> (<FONT COLOR=red><A NAME="876_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#876_16">Menu_Init</A>, "menu_init");
+      <b>function</b> <FONT COLOR=red><A NAME="875_16">Menu_Init</A></FONT> (<FONT COLOR=red><A NAME="875_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#875_16">Menu_Init</A>, "menu_init");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#876_16">Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#601_33">Men</A>);
-   <b>end</b> Get_Menu_Init_Hook;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#875_16">Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#600_33">Men</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#600_13">Get_Menu_Init_Hook</A><A HREF="terminal_interface-curses-menus__ads.htm#600_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#606_13">Get_Menu_Term_Hook</A><FONT COLOR=red><A NAME="882_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#606_33">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#605_13">Get_Menu_Term_Hook</A> (<A HREF="terminal_interface-curses-menus__ads.htm#605_33">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="884_16">Menu_Term</A></FONT> (<FONT COLOR=red><A NAME="884_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu_Hook_Function</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#884_16">Menu_Term</A>, "menu_term");
+      <b>function</b> <FONT COLOR=red><A NAME="883_16">Menu_Term</A></FONT> (<FONT COLOR=red><A NAME="883_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu_Hook_Function</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#883_16">Menu_Term</A>, "menu_term");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#884_16">Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#606_33">Men</A>);
-   <b>end</b> Get_Menu_Term_Hook;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#883_16">Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#605_33">Men</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#605_13">Get_Menu_Term_Hook</A><A HREF="terminal_interface-curses-menus__ads.htm#605_13">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#615_14">Redefine</A><FONT COLOR=red><A NAME="890_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#615_24">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                       <A HREF="terminal_interface-curses-menus__ads.htm#616_24">Items</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#180_9">Item_Array_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#614_14">Redefine</A><FONT COLOR=red><A NAME="889_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#614_24">Men</A>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                       <A HREF="terminal_interface-curses-menus__ads.htm#615_24">Items</A> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#179_9">Item_Array_Access</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="893_16">Set_Items</A></FONT> (<FONT COLOR=red><A NAME="893_27">Men</A></FONT>   : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                          <FONT COLOR=red><A NAME="894_27">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#893_16">Set_Items</A>, "set_menu_items");
+      <b>function</b> <FONT COLOR=red><A NAME="892_16">Set_Items</A></FONT> (<FONT COLOR=red><A NAME="892_27">Men</A></FONT>   : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                          <FONT COLOR=red><A NAME="893_27">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#892_16">Set_Items</A>, "set_menu_items");
 
-      <FONT COLOR=red><A NAME="897_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A>;
+      <FONT COLOR=red><A NAME="896_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A>;
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#616_24">Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#616_24">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#616_24">Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#616_24">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#116_4">Menu_Exception</A>;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#615_24">Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#615_24">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#615_24">Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#615_24">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#115_4">Menu_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-menus__adb.htm#897_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#893_16">Set_Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#615_24">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#616_24">Items</A>.<b>all</b>'Address);
-         <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#897_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-            <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#897_7">Res</A>);
+         <A HREF="terminal_interface-curses-menus__adb.htm#896_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#892_16">Set_Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#614_24">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#615_24">Items</A>.<b>all</b>'Address);
+         <b>if</b>  <A HREF="terminal_interface-curses-menus__adb.htm#896_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+            <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#896_7">Res</A>);
          <b>end</b> <b>if</b>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Redefine;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#614_14">Redefine</A><A HREF="terminal_interface-curses-menus__ads.htm#614_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#631_13">Item_Count</A><FONT COLOR=red><A NAME="910_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#631_25">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> Natural
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#630_13">Item_Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#630_25">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> Natural
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="912_16">Count</A></FONT> (<FONT COLOR=red><A NAME="912_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#912_16">Count</A>, "item_count");
+      <b>function</b> <FONT COLOR=red><A NAME="911_16">Count</A></FONT> (<FONT COLOR=red><A NAME="911_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#911_16">Count</A>, "item_count");
    <b>begin</b>
-      <b>return</b> Natural (<A HREF="terminal_interface-curses-menus__adb.htm#912_16">Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#631_25">Men</A>));
-   <b>end</b> Item_Count;
+      <b>return</b> Natural (<A HREF="terminal_interface-curses-menus__adb.htm#911_16">Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#630_25">Men</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#630_13">Item_Count</A><A HREF="terminal_interface-curses-menus__ads.htm#630_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#625_13">Items</A><FONT COLOR=red><A NAME="918_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#625_20">Men</A>   : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                   <A HREF="terminal_interface-curses-menus__ads.htm#626_20">Index</A> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#624_13">Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#624_20">Men</A>   : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                   <A HREF="terminal_interface-curses-menus__ads.htm#625_20">Index</A> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Item</A>
    <b>is</b>
-      <b>use</b> <A HREF="terminal_interface-curses-menus__adb.htm#54_12">I_Array</A>;
+      <b>use</b> <A HREF="terminal_interface-curses-menus__adb.htm#53_12">I_Array</A>;
 
-      <b>function</b> <FONT COLOR=red><A NAME="923_16">C_Mitems</A></FONT> (<FONT COLOR=red><A NAME="923_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> Pointer;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#923_16">C_Mitems</A>, "menu_items");
+      <b>function</b> <FONT COLOR=red><A NAME="922_16">C_Mitems</A></FONT> (<FONT COLOR=red><A NAME="922_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> Pointer;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#922_16">C_Mitems</A>, "menu_items");
 
-      <FONT COLOR=red><A NAME="926_7">P</A></FONT> : Pointer := <A HREF="terminal_interface-curses-menus__adb.htm#923_16">C_Mitems</A> (<A HREF="terminal_interface-curses-menus__ads.htm#625_20">Men</A>);
+      <FONT COLOR=red><A NAME="925_7">P</A></FONT> : Pointer := <A HREF="terminal_interface-curses-menus__adb.htm#922_16">C_Mitems</A> (<A HREF="terminal_interface-curses-menus__ads.htm#624_20">Men</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#926_7">P</A> = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-menus__ads.htm#626_20">Index</A> <b>not</b> <b>in</b> 1 .. <A HREF="terminal_interface-curses-menus__ads.htm#631_13">Item_Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#625_20">Men</A>) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#116_4">Menu_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#925_7">P</A> = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-menus__ads.htm#625_20">Index</A> <b>not</b> <b>in</b> 1 .. <A HREF="terminal_interface-curses-menus__ads.htm#630_13">Item_Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#624_20">Men</A>) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#115_4">Menu_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-menus__adb.htm#926_7">P</A> := <A HREF="terminal_interface-curses-menus__adb.htm#926_7">P</A> + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#626_20">Index</A>) - 1);
-         <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#926_7">P</A>.<b>all</b>;
+         <A HREF="terminal_interface-curses-menus__adb.htm#925_7">P</A> := <A HREF="terminal_interface-curses-menus__adb.htm#925_7">P</A> + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#625_20">Index</A>) - 1);
+         <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#925_7">P</A>.<b>all</b>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Items;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#624_13">Items</A><A HREF="terminal_interface-curses-menus__ads.htm#624_13">;</A>
 
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#640_13">Create</A><FONT COLOR=red><A NAME="937_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#640_21">Items</A> : <A HREF="terminal_interface-curses-menus__ads.htm#180_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#639_13">Create</A> (<A HREF="terminal_interface-curses-menus__ads.htm#639_21">Items</A> : <A HREF="terminal_interface-curses-menus__ads.htm#179_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="939_16">Newmenu</A></FONT> (<FONT COLOR=red><A NAME="939_25">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#939_16">Newmenu</A>, "new_menu");
+      <b>function</b> <FONT COLOR=red><A NAME="938_16">Newmenu</A></FONT> (<FONT COLOR=red><A NAME="938_25">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#938_16">Newmenu</A>, "new_menu");
 
-      <FONT COLOR=red><A NAME="942_7">M</A></FONT>   : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
+      <FONT COLOR=red><A NAME="941_7">M</A></FONT>   : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#640_21">Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#640_21">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#640_21">Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#640_21">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#116_4">Menu_Exception</A>;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#639_21">Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#639_21">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#639_21">Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#639_21">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#115_4">Menu_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-menus__adb.htm#942_7">M</A> := <A HREF="terminal_interface-curses-menus__adb.htm#939_16">Newmenu</A> (<A HREF="terminal_interface-curses-menus__ads.htm#640_21">Items</A>.<b>all</b>'Address);
-         <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#942_7">M</A> = <A HREF="terminal_interface-curses-menus__ads.htm#63_4">Null_Menu</A> <b>then</b>
-            <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#116_4">Menu_Exception</A>;
+         <A HREF="terminal_interface-curses-menus__adb.htm#941_7">M</A> := <A HREF="terminal_interface-curses-menus__adb.htm#938_16">Newmenu</A> (<A HREF="terminal_interface-curses-menus__ads.htm#639_21">Items</A>.<b>all</b>'Address);
+         <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#941_7">M</A> = <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Menu</A> <b>then</b>
+            <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#115_4">Menu_Exception</A>;
          <b>end</b> <b>if</b>;
-         <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#942_7">M</A>;
+         <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#941_7">M</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Create;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#639_13">Create</A><A HREF="terminal_interface-curses-menus__ads.htm#639_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#647_14">Delete</A><FONT COLOR=red><A NAME="956_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#647_22">Men</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#646_14">Delete</A><FONT COLOR=red><A NAME="955_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#646_22">Men</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="958_16">Free</A></FONT> (<FONT COLOR=red><A NAME="958_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#958_16">Free</A>, "free_menu");
+      <b>function</b> <FONT COLOR=red><A NAME="957_16">Free</A></FONT> (<FONT COLOR=red><A NAME="957_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#957_16">Free</A>, "free_menu");
 
-      <FONT COLOR=red><A NAME="961_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#958_16">Free</A> (<A HREF="terminal_interface-curses-menus__ads.htm#647_22">Men</A>);
+      <FONT COLOR=red><A NAME="960_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#957_16">Free</A> (<A HREF="terminal_interface-curses-menus__ads.htm#646_22">Men</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#961_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#961_7">Res</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#960_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#960_7">Res</A>);
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-menus__ads.htm#647_22">Men</A> := <A HREF="terminal_interface-curses-menus__ads.htm#63_4">Null_Menu</A>;
-   <b>end</b> Delete;
+      <A HREF="terminal_interface-curses-menus__ads.htm#646_22">Men</A> := <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Menu</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#646_14">Delete</A><A HREF="terminal_interface-curses-menus__ads.htm#646_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#662_13">Driver</A><FONT COLOR=red><A NAME="970_13"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#662_21">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                    <A HREF="terminal_interface-curses-menus__ads.htm#663_21">Key</A> : <A HREF="terminal_interface-curses__ads.htm#68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#656_9">Driver_Result</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#661_13">Driver</A> (<A HREF="terminal_interface-curses-menus__ads.htm#661_21">Men</A> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                    <A HREF="terminal_interface-curses-menus__ads.htm#662_21">Key</A> : <A HREF="terminal_interface-curses__ads.htm#67_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#655_9">Driver_Result</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="973_16">Driver</A></FONT> (<FONT COLOR=red><A NAME="973_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Menu</A>;
-                       <FONT COLOR=red><A NAME="974_24">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#973_16">Driver</A>, "menu_driver");
+      <b>function</b> <FONT COLOR=red><A NAME="972_16">Driver</A></FONT> (<FONT COLOR=red><A NAME="972_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+                       <FONT COLOR=red><A NAME="973_24">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-menus__adb.htm#972_16">Driver</A>, "menu_driver");
 
-      <FONT COLOR=red><A NAME="977_7">R</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#79_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#973_16">Driver</A> (<A HREF="terminal_interface-curses-menus__ads.htm#662_21">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#663_21">Key</A>));
+      <FONT COLOR=red><A NAME="976_7">R</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#972_16">Driver</A> (<A HREF="terminal_interface-curses-menus__ads.htm#661_21">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#662_21">Key</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#977_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#81_4">E_Ok</A> <b>then</b>
-         <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#977_7">R</A> <b>is</b>
-            <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#89_4">E_Unknown_Command</A>  =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#658_27">Unknown_Request</A>;
-            <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#90_4">E_No_Match</A>         =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#659_27">No_Match</A>;
-            <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#93_4">E_Request_Denied</A> |
-                 <A HREF="terminal_interface-curses-aux__ads.htm#91_4">E_Not_Selectable</A>   =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#657_27">Request_Denied</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#976_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#80_4">E_Ok</A> <b>then</b>
+         <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#976_7">R</A> <b>is</b>
+            <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#88_4">E_Unknown_Command</A>  =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#657_27">Unknown_Request</A>;
+            <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#89_4">E_No_Match</A>         =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#658_27">No_Match</A>;
+            <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#92_4">E_Request_Denied</A> |
+                 <A HREF="terminal_interface-curses-aux__ads.htm#90_4">E_Not_Selectable</A>   =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#656_27">Request_Denied</A>;
             <b>when</b> <b>others</b> =&gt;
-               <A HREF="terminal_interface-curses-aux__ads.htm#97_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#977_7">R</A>);
+               <A HREF="terminal_interface-curses-aux__ads.htm#96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#976_7">R</A>);
          <b>end</b> <b>case</b>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#656_27">Menu_Ok</A>;
-   <b>end</b> Driver;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#655_27">Menu_Ok</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#661_13">Driver</A><A HREF="terminal_interface-curses-menus__ads.htm#661_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#182_14">Free</A><FONT COLOR=red><A NAME="992_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#182_20">IA</A>         : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#180_9">Item_Array_Access</A>;
-                   <A HREF="terminal_interface-curses-menus__ads.htm#183_20">Free_Items</A> : <b>in</b> Boolean := False)
+   <b>procedure</b> <A HREF="terminal_interface-curses-menus__ads.htm#181_14">Free</A><FONT COLOR=red><A NAME="991_14"></A></FONT> (<A HREF="terminal_interface-curses-menus__ads.htm#181_20">IA</A>         : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#179_9">Item_Array_Access</A>;
+                   <A HREF="terminal_interface-curses-menus__ads.htm#182_20">Free_Items</A> : <b>in</b> Boolean := False)
    <b>is</b>
-      <b>procedure</b> <FONT COLOR=red><A NAME="995_17">Release</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
-        (<A HREF="terminal_interface-curses-menus__ads.htm#177_9">Item_Array</A>, <A HREF="terminal_interface-curses-menus__ads.htm#180_9">Item_Array_Access</A>);
+      <b>procedure</b> <FONT COLOR=red><A NAME="994_17">Release</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
+        (<A HREF="terminal_interface-curses-menus__ads.htm#176_9">Item_Array</A>, <A HREF="terminal_interface-curses-menus__ads.htm#179_9">Item_Array_Access</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#182_20">IA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-menus__ads.htm#183_20">Free_Items</A> <b>then</b>
-         <b>for</b> <FONT COLOR=red><A NAME="999_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#182_20">IA</A>'First .. (<A HREF="terminal_interface-curses-menus__ads.htm#182_20">IA</A>'Last - 1) <b>loop</b>
-            <b>if</b> (<A HREF="terminal_interface-curses-menus__ads.htm#182_20">IA</A> (<A HREF="terminal_interface-curses-menus__adb.htm#999_14">I</A>) /= <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A>) <b>then</b>
-               <A HREF="terminal_interface-curses-menus__ads.htm#205_14">Delete</A> (<A HREF="terminal_interface-curses-menus__ads.htm#182_20">IA</A> (<A HREF="terminal_interface-curses-menus__adb.htm#999_14">I</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#181_20">IA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-menus__ads.htm#182_20">Free_Items</A> <b>then</b>
+         <b>for</b> <FONT COLOR=red><A NAME="998_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#181_20">IA</A>'First .. (<A HREF="terminal_interface-curses-menus__ads.htm#181_20">IA</A>'Last - 1) <b>loop</b>
+            <b>if</b> (<A HREF="terminal_interface-curses-menus__ads.htm#181_20">IA</A> (<A HREF="terminal_interface-curses-menus__adb.htm#998_14">I</A>) /= <A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A>) <b>then</b>
+               <A HREF="terminal_interface-curses-menus__ads.htm#204_14">Delete</A> (<A HREF="terminal_interface-curses-menus__ads.htm#181_20">IA</A> (<A HREF="terminal_interface-curses-menus__adb.htm#998_14">I</A>));
             <b>end</b> <b>if</b>;
          <b>end</b> <b>loop</b>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-menus__adb.htm#995_17">Release</A> (<A HREF="terminal_interface-curses-menus__ads.htm#182_20">IA</A>);
-   <b>end</b> Free;
+      <A HREF="terminal_interface-curses-menus__adb.htm#994_17">Release</A> (<A HREF="terminal_interface-curses-menus__ads.htm#181_20">IA</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#181_14">Free</A><A HREF="terminal_interface-curses-menus__ads.htm#181_14">;</A>
 
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#147_13">Default_Menu_Options</A><FONT COLOR=red><A NAME="1009_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu_Option_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#146_13">Default_Menu_Options</A> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu_Option_Set</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#354_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#63_4">Null_Menu</A>);
-   <b>end</b> Default_Menu_Options;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#353_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Menu</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#146_13">Default_Menu_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#146_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#170_13">Default_Item_Options</A><FONT COLOR=red><A NAME="1015_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item_Option_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses-menus__ads.htm#169_13">Default_Item_Options</A> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item_Option_Set</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#258_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A>);
-   <b>end</b> Default_Item_Options;
+      <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#257_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#61_4">Null_Item</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#169_13">Default_Item_Options</A><A HREF="terminal_interface-curses-menus__ads.htm#169_13">;</A>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
 
-<b>end</b> Terminal_Interface.Curses.Menus;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#48_35">Menus</A><A HREF="terminal_interface-curses-menus__ads.htm#48_35">;</A>
+</PRE></BODY></HTML>
index b34529bebe39df15625981fdc22ebc4a9a154cba..4d5f290afaef667360359e922db2ff615511d41e 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.23 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.24 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <FONT COLOR=green><EM>--  menu binding.</EM></FONT>
 
    Space : Character <b>renames</b> Ada.Characters.Latin_1.Space;
 
-   <b>type</b> <FONT COLOR=red><A NAME="57_9">Item</A></FONT> <b>is</b> <b>private</b>;
+   <b>type</b> <FONT COLOR=red><A NAME="56_9">Item</A></FONT> <b>is</b> <b>private</b>;
    <b>type</b> Menu <b>is</b> <b>private</b>;
 
    <FONT COLOR=green><EM>---------------------------</EM></FONT>
    <FONT COLOR=green><EM>--  Interface constants  --</EM></FONT>
    <FONT COLOR=green><EM>---------------------------</EM></FONT>
-   <FONT COLOR=red><A NAME="63_4">Null_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Item</A>;
+   <FONT COLOR=red><A NAME="62_4">Null_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>;
    Null_Menu : <b>constant</b> Menu;
 
    <b>subtype</b> Menu_Request_Code <b>is</b> Key_Code
      <b>range</b> (Key_Max + 1) .. (Key_Max + 17);
 
    <FONT COLOR=green><EM>--  The prefix M_ stands for "Menu Request"</EM></FONT>
-   <FONT COLOR=red><A NAME="70_4">M_Left_Item</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 1;
-   <FONT COLOR=red><A NAME="71_4">M_Right_Item</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 2;
-   <FONT COLOR=red><A NAME="72_4">M_Up_Item</A></FONT>         : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 3;
-   <FONT COLOR=red><A NAME="73_4">M_Down_Item</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 4;
-   <FONT COLOR=red><A NAME="74_4">M_ScrollUp_Line</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 5;
-   <FONT COLOR=red><A NAME="75_4">M_ScrollDown_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 6;
-   <FONT COLOR=red><A NAME="76_4">M_ScrollDown_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 7;
-   <FONT COLOR=red><A NAME="77_4">M_ScrollUp_Page</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 8;
-   <FONT COLOR=red><A NAME="78_4">M_First_Item</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 9;
-   <FONT COLOR=red><A NAME="79_4">M_Last_Item</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 10;
-   <FONT COLOR=red><A NAME="80_4">M_Next_Item</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 11;
-   <FONT COLOR=red><A NAME="81_4">M_Previous_Item</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 12;
-   <FONT COLOR=red><A NAME="82_4">M_Toggle_Item</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 13;
-   <FONT COLOR=red><A NAME="83_4">M_Clear_Pattern</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 14;
-   <FONT COLOR=red><A NAME="84_4">M_Back_Pattern</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 15;
-   <FONT COLOR=red><A NAME="85_4">M_Next_Match</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#206_4">Key_Max</A> + 16;
+   <FONT COLOR=red><A NAME="69_4">M_Left_Item</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 1;
+   <FONT COLOR=red><A NAME="70_4">M_Right_Item</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 2;
+   <FONT COLOR=red><A NAME="71_4">M_Up_Item</A></FONT>         : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 3;
+   <FONT COLOR=red><A NAME="72_4">M_Down_Item</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 4;
+   <FONT COLOR=red><A NAME="73_4">M_ScrollUp_Line</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 5;
+   <FONT COLOR=red><A NAME="74_4">M_ScrollDown_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 6;
+   <FONT COLOR=red><A NAME="75_4">M_ScrollDown_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 7;
+   <FONT COLOR=red><A NAME="76_4">M_ScrollUp_Page</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 8;
+   <FONT COLOR=red><A NAME="77_4">M_First_Item</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 9;
+   <FONT COLOR=red><A NAME="78_4">M_Last_Item</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 10;
+   <FONT COLOR=red><A NAME="79_4">M_Next_Item</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 11;
+   <FONT COLOR=red><A NAME="80_4">M_Previous_Item</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 12;
+   <FONT COLOR=red><A NAME="81_4">M_Toggle_Item</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 13;
+   <FONT COLOR=red><A NAME="82_4">M_Clear_Pattern</A></FONT>   : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 14;
+   <FONT COLOR=red><A NAME="83_4">M_Back_Pattern</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 15;
+   <FONT COLOR=red><A NAME="84_4">M_Next_Match</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#205_4">Key_Max</A> + 16;
    M_Previous_Match  : <b>constant</b> Menu_Request_Code := Key_Max + 17;
 
    <FONT COLOR=green><EM>--  For those who like the old 'C' names for the request codes</EM></FONT>
-   <FONT COLOR=red><A NAME="89_4">REQ_LEFT_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#70_4">M_Left_Item</A>;
-   <FONT COLOR=red><A NAME="90_4">REQ_RIGHT_ITEM</A></FONT>    : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#71_4">M_Right_Item</A>;
-   <FONT COLOR=red><A NAME="91_4">REQ_UP_ITEM</A></FONT>       : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#72_4">M_Up_Item</A>;
-   <FONT COLOR=red><A NAME="92_4">REQ_DOWN_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#73_4">M_Down_Item</A>;
-   <FONT COLOR=red><A NAME="93_4">REQ_SCR_ULINE</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#74_4">M_ScrollUp_Line</A>;
-   <FONT COLOR=red><A NAME="94_4">REQ_SCR_DLINE</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#75_4">M_ScrollDown_Line</A>;
-   <FONT COLOR=red><A NAME="95_4">REQ_SCR_DPAGE</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#76_4">M_ScrollDown_Page</A>;
-   <FONT COLOR=red><A NAME="96_4">REQ_SCR_UPAGE</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#77_4">M_ScrollUp_Page</A>;
-   <FONT COLOR=red><A NAME="97_4">REQ_FIRST_ITEM</A></FONT>    : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#78_4">M_First_Item</A>;
-   <FONT COLOR=red><A NAME="98_4">REQ_LAST_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#79_4">M_Last_Item</A>;
-   <FONT COLOR=red><A NAME="99_4">REQ_NEXT_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#80_4">M_Next_Item</A>;
-   <FONT COLOR=red><A NAME="100_4">REQ_PREV_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#81_4">M_Previous_Item</A>;
-   <FONT COLOR=red><A NAME="101_4">REQ_TOGGLE_ITEM</A></FONT>   : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#82_4">M_Toggle_Item</A>;
-   <FONT COLOR=red><A NAME="102_4">REQ_CLEAR_PATTERN</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#83_4">M_Clear_Pattern</A>;
-   <FONT COLOR=red><A NAME="103_4">REQ_BACK_PATTERN</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#84_4">M_Back_Pattern</A>;
-   <FONT COLOR=red><A NAME="104_4">REQ_NEXT_MATCH</A></FONT>    : <A HREF="terminal_interface-curses-menus__ads.htm#65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#85_4">M_Next_Match</A>;
+   <FONT COLOR=red><A NAME="88_4">REQ_LEFT_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#69_4">M_Left_Item</A>;
+   <FONT COLOR=red><A NAME="89_4">REQ_RIGHT_ITEM</A></FONT>    : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#70_4">M_Right_Item</A>;
+   <FONT COLOR=red><A NAME="90_4">REQ_UP_ITEM</A></FONT>       : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#71_4">M_Up_Item</A>;
+   <FONT COLOR=red><A NAME="91_4">REQ_DOWN_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#72_4">M_Down_Item</A>;
+   <FONT COLOR=red><A NAME="92_4">REQ_SCR_ULINE</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#73_4">M_ScrollUp_Line</A>;
+   <FONT COLOR=red><A NAME="93_4">REQ_SCR_DLINE</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#74_4">M_ScrollDown_Line</A>;
+   <FONT COLOR=red><A NAME="94_4">REQ_SCR_DPAGE</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#75_4">M_ScrollDown_Page</A>;
+   <FONT COLOR=red><A NAME="95_4">REQ_SCR_UPAGE</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#76_4">M_ScrollUp_Page</A>;
+   <FONT COLOR=red><A NAME="96_4">REQ_FIRST_ITEM</A></FONT>    : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#77_4">M_First_Item</A>;
+   <FONT COLOR=red><A NAME="97_4">REQ_LAST_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#78_4">M_Last_Item</A>;
+   <FONT COLOR=red><A NAME="98_4">REQ_NEXT_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#79_4">M_Next_Item</A>;
+   <FONT COLOR=red><A NAME="99_4">REQ_PREV_ITEM</A></FONT>     : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#80_4">M_Previous_Item</A>;
+   <FONT COLOR=red><A NAME="100_4">REQ_TOGGLE_ITEM</A></FONT>   : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#81_4">M_Toggle_Item</A>;
+   <FONT COLOR=red><A NAME="101_4">REQ_CLEAR_PATTERN</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#82_4">M_Clear_Pattern</A>;
+   <FONT COLOR=red><A NAME="102_4">REQ_BACK_PATTERN</A></FONT>  : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#83_4">M_Back_Pattern</A>;
+   <FONT COLOR=red><A NAME="103_4">REQ_NEXT_MATCH</A></FONT>    : <A HREF="terminal_interface-curses-menus__ads.htm#64_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#84_4">M_Next_Match</A>;
    REQ_PREV_MATCH    : Menu_Request_Code <b>renames</b> M_Previous_Match;
 
-   <b>procedure</b> Request_Name (<FONT COLOR=red><A NAME="107_28">Key</A></FONT>  : <b>in</b> Menu_Request_Code;
+   <b>procedure</b> Request_Name (<FONT COLOR=red><A NAME="106_28">Key</A></FONT>  : <b>in</b> Menu_Request_Code;
                            Name : <b>out</b> String);
 
    <b>function</b>  Request_Name (Key : Menu_Request_Code) <b>return</b> String;
    <b>pragma</b> Warnings (Off);
    <b>type</b> Menu_Option_Set <b>is</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="124_10">One_Valued</A></FONT>        : Boolean;
-         <FONT COLOR=red><A NAME="125_10">Show_Descriptions</A></FONT> : Boolean;
-         <FONT COLOR=red><A NAME="126_10">Row_Major_Order</A></FONT>   : Boolean;
-         <FONT COLOR=red><A NAME="127_10">Ignore_Case</A></FONT>       : Boolean;
-         <FONT COLOR=red><A NAME="128_10">Show_Matches</A></FONT>      : Boolean;
+         <FONT COLOR=red><A NAME="123_10">One_Valued</A></FONT>        : Boolean;
+         <FONT COLOR=red><A NAME="124_10">Show_Descriptions</A></FONT> : Boolean;
+         <FONT COLOR=red><A NAME="125_10">Row_Major_Order</A></FONT>   : Boolean;
+         <FONT COLOR=red><A NAME="126_10">Ignore_Case</A></FONT>       : Boolean;
+         <FONT COLOR=red><A NAME="127_10">Show_Matches</A></FONT>      : Boolean;
          Non_Cyclic        : Boolean;
-      <b>end</b> <b>record</b><A HREF="terminal_interface-curses-menus__ads.htm#121_9">;</A>
+      <b>end</b> <b>record</b><A HREF="terminal_interface-curses-menus__ads.htm#120_9">;</A>
    <b>pragma</b> Pack (Menu_Option_Set);
    <b>pragma</b> Convention (C, Menu_Option_Set);
 
    <b>type</b> Item_Option_Set <b>is</b>
       <b>record</b>
          Selectable  : Boolean;
-      <b>end</b> <b>record</b><A HREF="terminal_interface-curses-menus__ads.htm#154_9">;</A>
+      <b>end</b> <b>record</b><A HREF="terminal_interface-curses-menus__ads.htm#153_9">;</A>
    <b>pragma</b> Pack (Item_Option_Set);
    <b>pragma</b> Convention (C, Item_Option_Set);
 
 
    <b>type</b> Item_Array_Access <b>is</b> <b>access</b> Item_Array;
 
-   <b>procedure</b> Free (<FONT COLOR=red><A NAME="183_20">IA</A></FONT>         : <b>in</b> <b>out</b> Item_Array_Access;
+   <b>procedure</b> Free (<FONT COLOR=red><A NAME="182_20">IA</A></FONT>         : <b>in</b> <b>out</b> Item_Array_Access;
                    Free_Items : Boolean := False);
    <FONT COLOR=green><EM>--  Release the memory for an allocated item array</EM></FONT>
    <FONT COLOR=green><EM>--  If Free_Items is True, call Delete() for all the items in</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_1"#2|</EM></FONT>
-   <b>function</b> Create (<FONT COLOR=red><A NAME="194_21">Name</A></FONT>        : String;
+   <b>function</b> Create (<FONT COLOR=red><A NAME="193_21">Name</A></FONT>        : String;
                     Description : String := "") <b>return</b> Item;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></FONT>
    <FONT COLOR=green><EM>--  Not inlined.</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_2"#2|</EM></FONT>
-   <b>function</b> New_Item (<FONT COLOR=red><A NAME="200_23">Name</A></FONT>        : String;
-             <A HREF="terminal_interface-curses-menus__ads.htm#193_13"> </A>        Description : String := "") <b>return</b> Item
+   <b>function</b> New_Item (<FONT COLOR=red><A NAME="199_23">Name</A></FONT>        : String;
+             <A HREF="terminal_interface-curses-menus__ads.htm#192_13"> </A>        Description : String := "") <b>return</b> Item
      <b>renames</b> Create;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_4"#2|</EM></FONT>
-   <b>procedure</b> Set_Value (<FONT COLOR=red><A NAME="215_25">Itm</A></FONT>   : <b>in</b> Item;
+   <b>procedure</b> Set_Value (<FONT COLOR=red><A NAME="214_25">Itm</A></FONT>   : <b>in</b> Item;
                         Value : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_value.3x.html">set_item_value()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Value);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_7"#2|</EM></FONT>
-   <b>procedure</b> Set_Options (<FONT COLOR=red><A NAME="239_27">Itm</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item</A>;
+   <b>procedure</b> Set_Options (<FONT COLOR=red><A NAME="238_27">Itm</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item</A>;
                           Options : <b>in</b> Item_Option_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_opts.3x.html">set_item_opts()</A></EM></FONT>
    <FONT COLOR=green><EM>--  An overloaded Set_Options is defined later. Pragma Inline appears there</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_8"#2|</EM></FONT>
-   <b>procedure</b> Switch_Options (<FONT COLOR=red><A NAME="245_30">Itm</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item</A>;
-                             <FONT COLOR=red><A NAME="246_30">Options</A></FONT> : <b>in</b> Item_Option_Set;
+   <b>procedure</b> Switch_Options (<FONT COLOR=red><A NAME="244_30">Itm</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item</A>;
+                             <FONT COLOR=red><A NAME="245_30">Options</A></FONT> : <b>in</b> Item_Option_Set;
                              On      : Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_opts.3x.html">item_opts_on()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: item_opts_off()</EM></FONT>
    <FONT COLOR=green><EM>--  Pragma Inline appears there</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_9"#2|</EM></FONT>
-   <b>procedure</b> Get_Options (<FONT COLOR=red><A NAME="254_27">Itm</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#154_9">Item</A>;
+   <b>procedure</b> Get_Options (<FONT COLOR=red><A NAME="253_27">Itm</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#153_9">Item</A>;
                           Options : <b>out</b> Item_Option_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_11"#2|</EM></FONT>
-   <b>procedure</b> Name (<FONT COLOR=red><A NAME="268_20">Itm</A></FONT>  : <b>in</b> Item;
+   <b>procedure</b> Name (<FONT COLOR=red><A NAME="267_20">Itm</A></FONT>  : <b>in</b> Item;
                    Name : <b>out</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></EM></FONT>
    <b>function</b>  Name (Itm : Item) <b>return</b> String;
    <b>pragma</b> Inline (Name);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_12"#2|</EM></FONT>
-   <b>procedure</b> Description (<FONT COLOR=red><A NAME="277_27">Itm</A></FONT>         : <b>in</b> Item;
+   <b>procedure</b> Description (<FONT COLOR=red><A NAME="276_27">Itm</A></FONT>         : <b>in</b> Item;
                           Description : <b>out</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_13"#2|</EM></FONT>
-   <b>procedure</b> Set_Current (<FONT COLOR=red><A NAME="291_27">Men</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Menu</A>;
+   <b>procedure</b> Set_Current (<FONT COLOR=red><A NAME="290_27">Men</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#55_9">Menu</A>;
                           Itm : <b>in</b> Item);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_current.3x.html">set_current_item()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Current);
    <b>pragma</b> Inline (Current);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_15"#2|</EM></FONT>
-   <b>procedure</b> Set_Top_Row (<FONT COLOR=red><A NAME="302_27">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Menu</A>;
+   <b>procedure</b> Set_Top_Row (<FONT COLOR=red><A NAME="301_27">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Menu</A>;
                           Line : <b>in</b> Line_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/mitem_current.3x.html">set_top_row()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Top_Row);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_18"#2|</EM></FONT>
-   <b>procedure</b> Post (<FONT COLOR=red><A NAME="325_20">Men</A></FONT>  : <b>in</b> Menu;
+   <b>procedure</b> Post (<FONT COLOR=red><A NAME="324_20">Men</A></FONT>  : <b>in</b> Menu;
                    Post : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_post.3x.html">post_menu()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: unpost_menu()</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_19"#2|</EM></FONT>
-   <b>procedure</b> Set_Options (<FONT COLOR=red><A NAME="336_27">Men</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu</A>;
+   <b>procedure</b> Set_Options (<FONT COLOR=red><A NAME="335_27">Men</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu</A>;
                           Options : <b>in</b> Menu_Option_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_opts.3x.html">set_menu_opts()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Options);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_20"#2|</EM></FONT>
-   <b>procedure</b> Switch_Options (<FONT COLOR=red><A NAME="342_30">Men</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu</A>;
-                             <FONT COLOR=red><A NAME="343_30">Options</A></FONT> : <b>in</b> Menu_Option_Set;
+   <b>procedure</b> Switch_Options (<FONT COLOR=red><A NAME="341_30">Men</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu</A>;
+                             <FONT COLOR=red><A NAME="342_30">Options</A></FONT> : <b>in</b> Menu_Option_Set;
                              On      : Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_opts.3x.html">menu_opts_on()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: menu_opts_off()</EM></FONT>
    <b>pragma</b> Inline (Switch_Options);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_21"#2|</EM></FONT>
-   <b>procedure</b> Get_Options (<FONT COLOR=red><A NAME="350_27">Men</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#121_9">Menu</A>;
+   <b>procedure</b> Get_Options (<FONT COLOR=red><A NAME="349_27">Men</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses-menus__ads.htm#120_9">Menu</A>;
                           Options : <b>out</b> Menu_Option_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_23"#2|</EM></FONT>
-   <b>procedure</b> Set_Window (<FONT COLOR=red><A NAME="364_26">Men</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Menu</A>;
+   <b>procedure</b> Set_Window (<FONT COLOR=red><A NAME="363_26">Men</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Menu</A>;
                          Win : <b>in</b> Window);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_win.3x.html">set_menu_win()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Window);
    <b>pragma</b> Inline (Get_Window);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_25"#2|</EM></FONT>
-   <b>procedure</b> Set_Sub_Window (<FONT COLOR=red><A NAME="375_30">Men</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Menu</A>;
+   <b>procedure</b> Set_Sub_Window (<FONT COLOR=red><A NAME="374_30">Men</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Menu</A>;
                              Win : <b>in</b> Window);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_win.3x.html">set_menu_sub()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Sub_Window);
    <b>pragma</b> Inline (Get_Sub_Window);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_27"#2|</EM></FONT>
-   <b>procedure</b> Scale (<FONT COLOR=red><A NAME="386_21">Men</A></FONT>     : <b>in</b> Menu;
-                    <FONT COLOR=red><A NAME="387_21">Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
+   <b>procedure</b> Scale (<FONT COLOR=red><A NAME="385_21">Men</A></FONT>     : <b>in</b> Menu;
+                    <FONT COLOR=red><A NAME="386_21">Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
                     Columns : <b>out</b> Column_Count);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_win.3x.html">scale_menu()</A></EM></FONT>
    <b>pragma</b> Inline (Scale);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_29"#2|</EM></FONT>
-   <b>procedure</b> Set_Mark (<FONT COLOR=red><A NAME="406_24">Men</A></FONT>  : <b>in</b> Menu;
+   <b>procedure</b> Set_Mark (<FONT COLOR=red><A NAME="405_24">Men</A></FONT>  : <b>in</b> Menu;
                        Mark : <b>in</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_mark.3x.html">set_menu_mark()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Mark);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_30"#2|</EM></FONT>
-   <b>procedure</b> Mark (<FONT COLOR=red><A NAME="412_20">Men</A></FONT>  : <b>in</b>  Menu;
+   <b>procedure</b> Mark (<FONT COLOR=red><A NAME="411_20">Men</A></FONT>  : <b>in</b>  Menu;
                    Mark : <b>out</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></EM></FONT>
 
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_31"#2|</EM></FONT>
    <b>procedure</b> Set_Foreground
-     (<FONT COLOR=red><A NAME="427_7">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Menu</A>;
-      <FONT COLOR=red><A NAME="428_7">Fore</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A> := Normal_Video;
+     (<FONT COLOR=red><A NAME="426_7">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Menu</A>;
+      <FONT COLOR=red><A NAME="427_7">Fore</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A> := Normal_Video;
       Color : <b>in</b> Color_Pair := Color_Pair'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">set_menu_fore()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Foreground);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_32"#2|</EM></FONT>
-   <b>procedure</b> Foreground (<FONT COLOR=red><A NAME="434_26">Men</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Menu</A>;
+   <b>procedure</b> Foreground (<FONT COLOR=red><A NAME="433_26">Men</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Menu</A>;
                          Fore  : <b>out</b> Character_Attribute_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">menu_fore()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_33"#2|</EM></FONT>
-   <b>procedure</b> Foreground (<FONT COLOR=red><A NAME="439_26">Men</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Menu</A>;
-                         <FONT COLOR=red><A NAME="440_26">Fore</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A>;
+   <b>procedure</b> Foreground (<FONT COLOR=red><A NAME="438_26">Men</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Menu</A>;
+                         <FONT COLOR=red><A NAME="439_26">Fore</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A>;
                          Color : <b>out</b> Color_Pair);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">menu_fore()</A></EM></FONT>
    <b>pragma</b> Inline (Foreground);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_34"#2|</EM></FONT>
    <b>procedure</b> Set_Background
-     (<FONT COLOR=red><A NAME="447_7">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Menu</A>;
-      <FONT COLOR=red><A NAME="448_7">Back</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A> := Normal_Video;
+     (<FONT COLOR=red><A NAME="446_7">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Menu</A>;
+      <FONT COLOR=red><A NAME="447_7">Back</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A> := Normal_Video;
       Color : <b>in</b> Color_Pair := Color_Pair'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">set_menu_back()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Background);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_35"#2|</EM></FONT>
-   <b>procedure</b> Background (<FONT COLOR=red><A NAME="454_26">Men</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Menu</A>;
+   <b>procedure</b> Background (<FONT COLOR=red><A NAME="453_26">Men</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Menu</A>;
                          Back : <b>out</b> Character_Attribute_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">menu_back()</A></EM></FONT>
    <FONT COLOR=green><EM>--  #1A NAME="AFU_36"#2|</EM></FONT>
 
-   <b>procedure</b> Background (<FONT COLOR=red><A NAME="459_26">Men</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Menu</A>;
-                         <FONT COLOR=red><A NAME="460_26">Back</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A>;
+   <b>procedure</b> Background (<FONT COLOR=red><A NAME="458_26">Men</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Menu</A>;
+                         <FONT COLOR=red><A NAME="459_26">Back</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A>;
                          Color : <b>out</b> Color_Pair);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">menu_back()</A></EM></FONT>
    <b>pragma</b> Inline (Background);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_37"#2|</EM></FONT>
    <b>procedure</b> Set_Grey
-     (<FONT COLOR=red><A NAME="467_7">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Menu</A>;
-      <FONT COLOR=red><A NAME="468_7">Grey</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A> := Normal_Video;
+     (<FONT COLOR=red><A NAME="466_7">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Menu</A>;
+      <FONT COLOR=red><A NAME="467_7">Grey</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A> := Normal_Video;
       Color : <b>in</b> Color_Pair := Color_Pair'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">set_menu_grey()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Grey);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_38"#2|</EM></FONT>
-   <b>procedure</b> Grey (<FONT COLOR=red><A NAME="474_20">Men</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Menu</A>;
+   <b>procedure</b> Grey (<FONT COLOR=red><A NAME="473_20">Men</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Menu</A>;
                    Grey : <b>out</b> Character_Attribute_Set);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">menu_grey()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_39"#2|</EM></FONT>
    <b>procedure</b> Grey
-     (<FONT COLOR=red><A NAME="480_7">Men</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#306_9">Menu</A>;
-      <FONT COLOR=red><A NAME="481_7">Grey</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A>;
+     (<FONT COLOR=red><A NAME="479_7">Men</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#305_9">Menu</A>;
+      <FONT COLOR=red><A NAME="480_7">Grey</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A>;
       Color : <b>out</b> Color_Pair);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">menu_grey()</A></EM></FONT>
    <b>pragma</b> Inline (Grey);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_40"#2|</EM></FONT>
-   <b>procedure</b> Set_Pad_Character (<FONT COLOR=red><A NAME="487_33">Men</A></FONT> : <b>in</b> Menu;
+   <b>procedure</b> Set_Pad_Character (<FONT COLOR=red><A NAME="486_33">Men</A></FONT> : <b>in</b> Menu;
                                 Pad : <b>in</b> Character := Space);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">set_menu_pad()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Pad_Character);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_41"#2|</EM></FONT>
-   <b>procedure</b> Pad_Character (<FONT COLOR=red><A NAME="493_29">Men</A></FONT> : <b>in</b>  Menu;
+   <b>procedure</b> Pad_Character (<FONT COLOR=red><A NAME="492_29">Men</A></FONT> : <b>in</b>  Menu;
                             Pad : <b>out</b> Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_attribs.3x.html">menu_pad()</A></EM></FONT>
    <b>pragma</b> Inline (Pad_Character);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_42"#2|</EM></FONT>
-   <b>procedure</b> Set_Spacing (<FONT COLOR=red><A NAME="503_27">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Menu</A>;
-                          <FONT COLOR=red><A NAME="504_27">Descr</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> := 0;
-                          <FONT COLOR=red><A NAME="505_27">Row</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>   := 0;
+   <b>procedure</b> Set_Spacing (<FONT COLOR=red><A NAME="502_27">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Menu</A>;
+                          <FONT COLOR=red><A NAME="503_27">Descr</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Position</A> := 0;
+                          <FONT COLOR=red><A NAME="504_27">Row</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>   := 0;
                           Col   : <b>in</b> Column_Position := 0);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_spacing.3x.html">set_menu_spacing()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Spacing);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_43"#2|</EM></FONT>
-   <b>procedure</b> Spacing (<FONT COLOR=red><A NAME="511_23">Men</A></FONT>   : <b>in</b> Menu;
-                      <FONT COLOR=red><A NAME="512_23">Descr</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
-                      <FONT COLOR=red><A NAME="513_23">Row</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+   <b>procedure</b> Spacing (<FONT COLOR=red><A NAME="510_23">Men</A></FONT>   : <b>in</b> Menu;
+                      <FONT COLOR=red><A NAME="511_23">Descr</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Position</A>;
+                      <FONT COLOR=red><A NAME="512_23">Row</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
                       Col   : <b>out</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_spacing.3x.html">menu_spacing()</A></EM></FONT>
    <b>pragma</b> Inline (Spacing);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_44"#2|</EM></FONT>
-   <b>function</b> Set_Pattern (<FONT COLOR=red><A NAME="523_26">Men</A></FONT>  : Menu;
+   <b>function</b> Set_Pattern (<FONT COLOR=red><A NAME="522_26">Men</A></FONT>  : Menu;
                          Text : String) <b>return</b> Boolean;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_pattern.3x.html">set_menu_pattern()</A></EM></FONT>
    <FONT COLOR=green><EM>--  Return TRUE if the pattern matches, FALSE otherwise</EM></FONT>
    <b>pragma</b> Inline (Set_Pattern);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_45"#2|</EM></FONT>
-   <b>procedure</b> Pattern (<FONT COLOR=red><A NAME="530_23">Men</A></FONT>  : <b>in</b>  Menu;
+   <b>procedure</b> Pattern (<FONT COLOR=red><A NAME="529_23">Men</A></FONT>  : <b>in</b>  Menu;
                       Text : <b>out</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_pattern.3x.html">menu_pattern()</A></EM></FONT>
    <b>pragma</b> Inline (Pattern);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_46"#2|</EM></FONT>
-   <b>procedure</b> Set_Format (<FONT COLOR=red><A NAME="540_26">Men</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Menu</A>;
-                         <FONT COLOR=red><A NAME="541_26">Lines</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
+   <b>procedure</b> Set_Format (<FONT COLOR=red><A NAME="539_26">Men</A></FONT>     : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Menu</A>;
+                         <FONT COLOR=red><A NAME="540_26">Lines</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
                          Columns : <b>in</b> Column_Count);
    <FONT COLOR=green><EM>--  Not implemented: 0 argument for Lines or Columns;</EM></FONT>
    <FONT COLOR=green><EM>--  instead use Format to get the current sizes</EM></FONT>
    <b>pragma</b> Inline (Set_Format);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_47"#2|</EM></FONT>
-   <b>procedure</b> Format (<FONT COLOR=red><A NAME="554_22">Men</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#63_12">Menu</A>;
-                     <FONT COLOR=red><A NAME="555_22">Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
+   <b>procedure</b> Format (<FONT COLOR=red><A NAME="553_22">Men</A></FONT>     : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#62_12">Menu</A>;
+                     <FONT COLOR=red><A NAME="554_22">Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
                      Columns : <b>out</b> Column_Count);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_format.3x.html">menu_format()</A></EM></FONT>
    <b>pragma</b> Inline (Format);
    <b>pragma</b> Convention (C, Menu_Hook_Function);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_48"#2|</EM></FONT>
-   <b>procedure</b> Set_Item_Init_Hook (<FONT COLOR=red><A NAME="568_34">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu</A>;
+   <b>procedure</b> Set_Item_Init_Hook (<FONT COLOR=red><A NAME="567_34">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu</A>;
                                  Proc : <b>in</b> Menu_Hook_Function);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_hook.3x.html">set_item_init()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Item_Init_Hook);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_49"#2|</EM></FONT>
-   <b>procedure</b> Set_Item_Term_Hook (<FONT COLOR=red><A NAME="574_34">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu</A>;
+   <b>procedure</b> Set_Item_Term_Hook (<FONT COLOR=red><A NAME="573_34">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu</A>;
                                  Proc : <b>in</b> Menu_Hook_Function);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_hook.3x.html">set_item_term()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Item_Term_Hook);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_50"#2|</EM></FONT>
-   <b>procedure</b> Set_Menu_Init_Hook (<FONT COLOR=red><A NAME="580_34">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu</A>;
+   <b>procedure</b> Set_Menu_Init_Hook (<FONT COLOR=red><A NAME="579_34">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu</A>;
                                  Proc : <b>in</b> Menu_Hook_Function);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_hook.3x.html">set_menu_init()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Menu_Init_Hook);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_51"#2|</EM></FONT>
-   <b>procedure</b> Set_Menu_Term_Hook (<FONT COLOR=red><A NAME="586_34">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#563_9">Menu</A>;
+   <b>procedure</b> Set_Menu_Term_Hook (<FONT COLOR=red><A NAME="585_34">Men</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#562_9">Menu</A>;
                                  Proc : <b>in</b> Menu_Hook_Function);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_hook.3x.html">set_menu_term()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Menu_Term_Hook);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_56"#2|</EM></FONT>
-   <b>procedure</b> Redefine (<FONT COLOR=red><A NAME="616_24">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#180_9">Menu</A>;
+   <b>procedure</b> Redefine (<FONT COLOR=red><A NAME="615_24">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#179_9">Menu</A>;
                        Items : <b>in</b> Item_Array_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_items.3x.html">set_menu_items()</A></EM></FONT>
    <b>pragma</b> Inline (Redefine);
 
-   <b>procedure</b> Set_Items (<FONT COLOR=red><A NAME="621_25">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#180_9">Menu</A>;
-                  <A HREF="terminal_interface-curses-menus__ads.htm#620_14"> </A>     Items : <b>in</b> Item_Array_Access) <b>renames</b> Redefine;
+   <b>procedure</b> Set_Items (<FONT COLOR=red><A NAME="620_25">Men</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#179_9">Menu</A>;
+                  <A HREF="terminal_interface-curses-menus__ads.htm#619_14"> </A>     Items : <b>in</b> Item_Array_Access) <b>renames</b> Redefine;
    <b>pragma</b> Inline (Set_Items);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_57"#2|</EM></FONT>
-   <b>function</b> Items (<FONT COLOR=red><A NAME="626_20">Men</A></FONT>   : Menu;
+   <b>function</b> Items (<FONT COLOR=red><A NAME="625_20">Men</A></FONT>   : Menu;
                    Index : Positive) <b>return</b> Item;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_items.3x.html">menu_items()</A></EM></FONT>
    <b>pragma</b> Inline (Items);
    <FONT COLOR=green><EM>--  | Man page <A HREF="../man/menu_driver.3x.html">menu_driver.3x</A></EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
-   <b>type</b> Driver_Result <b>is</b> (<FONT COLOR=red><A NAME="657_27">Menu_Ok</A></FONT>,
-                          <FONT COLOR=red><A NAME="658_27">Request_Denied</A></FONT>,
-                          <FONT COLOR=red><A NAME="659_27">Unknown_Request</A></FONT>,
+   <b>type</b> Driver_Result <b>is</b> (<FONT COLOR=red><A NAME="656_27">Menu_Ok</A></FONT>,
+                          <FONT COLOR=red><A NAME="657_27">Request_Denied</A></FONT>,
+                          <FONT COLOR=red><A NAME="658_27">Unknown_Request</A></FONT>,
                           No_Match);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_61"#2|</EM></FONT>
-   <b>function</b> Driver (<FONT COLOR=red><A NAME="663_21">Men</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#68_9">Menu</A>;
+   <b>function</b> Driver (<FONT COLOR=red><A NAME="662_21">Men</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#67_9">Menu</A>;
                     Key : Key_Code) <b>return</b> Driver_Result;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/menu_driver.3x.html">menu_driver()</A></EM></FONT>
    <FONT COLOR=green><EM>--  Driver is not inlined</EM></FONT>
    <FONT COLOR=green><EM>--  Not Implemented: menu_request_name, menu_request_by_name</EM></FONT>
 <FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
 <b>private</b>
-   <b>type</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Item</A>   <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
+   <b>type</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A>   <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
    <b>type</b> Menu   <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
 
-   <A HREF="terminal_interface-curses-menus__ads.htm#63_4">Null_Item</A> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#57_9">Item</A> := 0;
+   <A HREF="terminal_interface-curses-menus__ads.htm#62_4">Null_Item</A> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#56_9">Item</A> := 0;
    Null_Menu : <b>constant</b> Menu := 0;
 
 <b>end</b> Terminal_Interface.Curses.Menus;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index a8137c43a80d141bc49d7672b6e05e1ff6606ffe..4312cbf1bc01b25a30f8ba8f6fe552678b92c723 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.17 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.18 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> System;
 
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#48_35">Mouse</A><FONT COLOR=red><A NAME="48_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#47_35">Mouse</A> <b>is</b>
 
    <b>use</b> <b>type</b> System.Bit_Order;
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#98_13">Has_Mouse</A><FONT COLOR=red><A NAME="53_13"></A></FONT> <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#97_13">Has_Mouse</A> <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="55_16">Mouse_Avail</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#55_16">Mouse_Avail</A>, "_nc_has_mouse");
+      <b>function</b> <FONT COLOR=red><A NAME="54_16">Mouse_Avail</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#54_16">Mouse_Avail</A>, "_nc_has_mouse");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#761_13">Has_Key</A> (<A HREF="terminal_interface-curses__ads.htm#203_4">Key_Mouse</A>) <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-mouse__adb.htm#55_16">Mouse_Avail</A> /= 0 <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#760_13">Has_Key</A> (<A HREF="terminal_interface-curses__ads.htm#202_4">Key_Mouse</A>) <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-mouse__adb.htm#54_16">Mouse_Avail</A> /= 0 <b>then</b>
          <b>return</b> True;
       <b>else</b>
          <b>return</b> False;
       <b>end</b> <b>if</b>;
-   <b>end</b> Has_Mouse;
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#97_13">Has_Mouse</A><A HREF="terminal_interface-curses-mouse__ads.htm#97_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#133_13">Get_Mouse</A><FONT COLOR=red><A NAME="65_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#92_9">Mouse_Event</A>
+   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#132_13">Get_Mouse</A> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#91_9">Mouse_Event</A>
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="67_12">Event_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-mouse__ads.htm#92_9">Mouse_Event</A>;
+      <b>type</b> <FONT COLOR=red><A NAME="66_12">Event_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-mouse__ads.htm#91_9">Mouse_Event</A>;
 
-      <b>function</b> <FONT COLOR=red><A NAME="69_16">Getmouse</A></FONT> (<FONT COLOR=red><A NAME="69_26">Ev</A></FONT> : <A HREF="terminal_interface-curses-mouse__adb.htm#67_12">Event_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#69_16">Getmouse</A>, "getmouse");
+      <b>function</b> <FONT COLOR=red><A NAME="68_16">Getmouse</A></FONT> (<FONT COLOR=red><A NAME="68_26">Ev</A></FONT> : <A HREF="terminal_interface-curses-mouse__adb.htm#66_12">Event_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#68_16">Getmouse</A>, "getmouse");
 
-      <FONT COLOR=red><A NAME="72_7">Event</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#92_9">Mouse_Event</A>;
+      <FONT COLOR=red><A NAME="71_7">Event</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#91_9">Mouse_Event</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#69_16">Getmouse</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#72_7">Event</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#68_16">Getmouse</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#71_7">Event</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-mouse__adb.htm#72_7">Event</A>;
-   <b>end</b> Get_Mouse;
+      <b>return</b> <A HREF="terminal_interface-curses-mouse__adb.htm#71_7">Event</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#132_13">Get_Mouse</A><A HREF="terminal_interface-curses-mouse__ads.htm#132_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#101_14">Register_Reportable_Event</A><FONT COLOR=red><A NAME="80_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#102_7">Button</A> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#68_9">Mouse_Button</A>;
-                                        <A HREF="terminal_interface-curses-mouse__ads.htm#103_7">State</A>  : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#79_9">Button_State</A>;
-                                        <A HREF="terminal_interface-curses-mouse__ads.htm#104_7">Mask</A>   : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#100_14">Register_Reportable_Event</A><FONT COLOR=red><A NAME="79_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#101_7">Button</A> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Mouse_Button</A>;
+                                        <A HREF="terminal_interface-curses-mouse__ads.htm#102_7">State</A>  : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#78_9">Button_State</A>;
+                                        <A HREF="terminal_interface-curses-mouse__ads.htm#103_7">Mask</A>   : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="84_7">Button_Nr</A></FONT> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#68_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#102_7">Button</A>);
-      <FONT COLOR=red><A NAME="85_7">State_Nr</A></FONT>  : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#79_9">Button_State</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#103_7">State</A>);
+      <FONT COLOR=red><A NAME="83_7">Button_Nr</A></FONT> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#101_7">Button</A>);
+      <FONT COLOR=red><A NAME="84_7">State_Nr</A></FONT>  : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#78_9">Button_State</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#102_7">State</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#102_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#77_12">Modifier_Keys</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-mouse__ads.htm#103_7">State</A> /= <A HREF="terminal_interface-curses-mouse__ads.htm#80_26">Pressed</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#101_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#76_12">Modifier_Keys</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-mouse__ads.htm#102_7">State</A> /= <A HREF="terminal_interface-curses-mouse__ads.htm#79_26">Pressed</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>else</b>
-         <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#102_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#76_12">Real_Buttons</A> <b>then</b>
-            <A HREF="terminal_interface-curses-mouse__ads.htm#104_7">Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#104_7">Mask</A> <b>or</b> ((2 ** (6 * <A HREF="terminal_interface-curses-mouse__adb.htm#84_7">Button_Nr</A>)) ** <A HREF="terminal_interface-curses-mouse__adb.htm#85_7">State_Nr</A>);
+         <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#101_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#75_12">Real_Buttons</A> <b>then</b>
+            <A HREF="terminal_interface-curses-mouse__ads.htm#103_7">Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#103_7">Mask</A> <b>or</b> ((2 ** (6 * <A HREF="terminal_interface-curses-mouse__adb.htm#83_7">Button_Nr</A>)) ** <A HREF="terminal_interface-curses-mouse__adb.htm#84_7">State_Nr</A>);
          <b>else</b>
-            <A HREF="terminal_interface-curses-mouse__ads.htm#104_7">Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#104_7">Mask</A> <b>or</b> (<A HREF="terminal_interface-curses-mouse__ads.htm#217_4">BUTTON_CTRL</A> ** (<A HREF="terminal_interface-curses-mouse__adb.htm#84_7">Button_Nr</A> - 4));
+            <A HREF="terminal_interface-curses-mouse__ads.htm#103_7">Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#103_7">Mask</A> <b>or</b> (<A HREF="terminal_interface-curses-mouse__ads.htm#216_4">BUTTON_CTRL</A> ** (<A HREF="terminal_interface-curses-mouse__adb.htm#83_7">Button_Nr</A> - 4));
          <b>end</b> <b>if</b>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Register_Reportable_Event;
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#100_14">Register_Reportable_Event</A><A HREF="terminal_interface-curses-mouse__ads.htm#100_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#110_14">Register_Reportable_Events</A><FONT COLOR=red><A NAME="98_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#111_7">Button</A> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#68_9">Mouse_Button</A>;
-                                         <A HREF="terminal_interface-curses-mouse__ads.htm#112_7">State</A>  : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#85_9">Button_States</A>;
-                                         <A HREF="terminal_interface-curses-mouse__ads.htm#113_7">Mask</A>   : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#109_14">Register_Reportable_Events</A><FONT COLOR=red><A NAME="97_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#110_7">Button</A> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Mouse_Button</A>;
+                                         <A HREF="terminal_interface-curses-mouse__ads.htm#111_7">State</A>  : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#84_9">Button_States</A>;
+                                         <A HREF="terminal_interface-curses-mouse__ads.htm#112_7">Mask</A>   : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>)
    <b>is</b>
    <b>begin</b>
-      <b>for</b> <FONT COLOR=red><A NAME="103_11">S</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#85_9">Button_States</A>'<b>Range</b> <b>loop</b>
-         <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#112_7">State</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#103_11">S</A>) <b>then</b>
-            <A HREF="terminal_interface-curses-mouse__ads.htm#101_14">Register_Reportable_Event</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#111_7">Button</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#103_11">S</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#113_7">Mask</A>);
+      <b>for</b> <FONT COLOR=red><A NAME="102_11">S</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#84_9">Button_States</A>'<b>Range</b> <b>loop</b>
+         <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#111_7">State</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#102_11">S</A>) <b>then</b>
+            <A HREF="terminal_interface-curses-mouse__ads.htm#100_14">Register_Reportable_Event</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#110_7">Button</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#102_11">S</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#112_7">Mask</A>);
          <b>end</b> <b>if</b>;
       <b>end</b> <b>loop</b>;
-   <b>end</b> Register_Reportable_Events;
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#109_14">Register_Reportable_Events</A><A HREF="terminal_interface-curses-mouse__ads.htm#109_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#123_13">Start_Mouse</A><FONT COLOR=red><A NAME="110_13"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#123_26">Mask</A> : <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#66_4">All_Events</A>)
-                         <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>
+   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#122_13">Start_Mouse</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#122_26">Mask</A> : <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#65_4">All_Events</A>)
+                         <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="113_16">MMask</A></FONT> (<FONT COLOR=red><A NAME="113_23">M</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>;
-                      <FONT COLOR=red><A NAME="114_23">O</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>) <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#113_16">MMask</A>, "mousemask");
-      <FONT COLOR=red><A NAME="116_7">R</A></FONT>   : <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>;
-      <FONT COLOR=red><A NAME="117_7">Old</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="112_16">MMask</A></FONT> (<FONT COLOR=red><A NAME="112_23">M</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>;
+                      <FONT COLOR=red><A NAME="113_23">O</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>) <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#112_16">MMask</A>, "mousemask");
+      <FONT COLOR=red><A NAME="115_7">R</A></FONT>   : <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>;
+      <FONT COLOR=red><A NAME="116_7">Old</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-mouse__adb.htm#116_7">R</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#113_16">MMask</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#123_26">Mask</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#117_7">Old</A>'<b>Access</b>);
-      <b>return</b> <A HREF="terminal_interface-curses-mouse__adb.htm#117_7">Old</A>;
-   <b>end</b> Start_Mouse;
+      <A HREF="terminal_interface-curses-mouse__adb.htm#115_7">R</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#112_16">MMask</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#122_26">Mask</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#116_7">Old</A>'<b>Access</b>);
+      <b>return</b> <A HREF="terminal_interface-curses-mouse__adb.htm#116_7">Old</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#122_13">Start_Mouse</A><A HREF="terminal_interface-curses-mouse__ads.htm#122_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#128_14">End_Mouse</A><FONT COLOR=red><A NAME="123_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#128_25">Mask</A> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#65_4">No_Events</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#127_14">End_Mouse</A><FONT COLOR=red><A NAME="122_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#127_25">Mask</A> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#64_4">No_Events</A>)
    <b>is</b>
    <b>begin</b>
       <b>null</b>;
-   <b>end</b> End_Mouse;
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#127_14">End_Mouse</A><A HREF="terminal_interface-curses-mouse__ads.htm#127_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__adb.htm#133_14">Dispatch_Event</A><FONT COLOR=red><A NAME="129_14"></A></FONT> (<FONT COLOR=red><A NAME="129_30">Mask</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>;
-                             <FONT COLOR=red><A NAME="130_30">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#68_9">Mouse_Button</A>;
-                             <FONT COLOR=red><A NAME="131_30">State</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#79_9">Button_State</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__adb.htm#132_14">Dispatch_Event</A><FONT COLOR=red><A NAME="128_14"></A></FONT> (<FONT COLOR=red><A NAME="128_30">Mask</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>;
+                             <FONT COLOR=red><A NAME="129_30">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Mouse_Button</A>;
+                             <FONT COLOR=red><A NAME="130_30">State</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#78_9">Button_State</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__adb.htm#129_14">Dispatch_Event</A><FONT COLOR=red><A NAME="133_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Mask</A>   : <b>in</b>  <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>;
-                             <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#68_9">Mouse_Button</A>;
-                             <A HREF="terminal_interface-curses-mouse__adb.htm#131_30">State</A>  : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#79_9">Button_State</A>) <b>is</b>
-      <FONT COLOR=red><A NAME="136_7">L</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>;
+   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__adb.htm#128_14">Dispatch_Event</A><FONT COLOR=red><A NAME="132_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__adb.htm#128_30">Mask</A>   : <b>in</b>  <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>;
+                             <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Mouse_Button</A>;
+                             <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">State</A>  : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#78_9">Button_State</A>) <b>is</b>
+      <FONT COLOR=red><A NAME="135_7">L</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#74_26">Alt</A>;  <FONT COLOR=green><EM>--  preset to non real button;</EM></FONT>
-      <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#222_4">BUTTON1_EVENTS</A>) /= 0 <b>then</b>
-         <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#68_26">Left</A>;
-      <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#223_4">BUTTON2_EVENTS</A>) /= 0 <b>then</b>
-         <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#69_26">Middle</A>;
-      <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#224_4">BUTTON3_EVENTS</A>) /= 0 <b>then</b>
-         <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#70_26">Right</A>;
-      <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#225_4">BUTTON4_EVENTS</A>) /= 0 <b>then</b>
-         <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#71_26">Button4</A>;
+      <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#73_26">Alt</A>;  <FONT COLOR=green><EM>--  preset to non real button;</EM></FONT>
+      <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#128_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#221_4">BUTTON1_EVENTS</A>) /= 0 <b>then</b>
+         <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#67_26">Left</A>;
+      <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#128_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#222_4">BUTTON2_EVENTS</A>) /= 0 <b>then</b>
+         <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#68_26">Middle</A>;
+      <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#128_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#223_4">BUTTON3_EVENTS</A>) /= 0 <b>then</b>
+         <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#69_26">Right</A>;
+      <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#128_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#224_4">BUTTON4_EVENTS</A>) /= 0 <b>then</b>
+         <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#70_26">Button4</A>;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#76_12">Real_Buttons</A> <b>then</b>
-         <A HREF="terminal_interface-curses-mouse__adb.htm#136_7">L</A> := 2 ** (6 * <A HREF="terminal_interface-curses-mouse__ads.htm#68_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A>));
-         <b>for</b> <FONT COLOR=red><A NAME="150_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#79_9">Button_State</A>'<b>Range</b> <b>loop</b>
-            <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__adb.htm#136_7">L</A>) /= 0 <b>then</b>
-               <A HREF="terminal_interface-curses-mouse__adb.htm#131_30">State</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#150_14">I</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#75_12">Real_Buttons</A> <b>then</b>
+         <A HREF="terminal_interface-curses-mouse__adb.htm#135_7">L</A> := 2 ** (6 * <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A>));
+         <b>for</b> <FONT COLOR=red><A NAME="149_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#78_9">Button_State</A>'<b>Range</b> <b>loop</b>
+            <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#128_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__adb.htm#135_7">L</A>) /= 0 <b>then</b>
+               <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">State</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#149_14">I</A>;
                <b>exit</b>;
             <b>end</b> <b>if</b>;
-            <A HREF="terminal_interface-curses-mouse__adb.htm#136_7">L</A> := 2 * <A HREF="terminal_interface-curses-mouse__adb.htm#136_7">L</A>;
+            <A HREF="terminal_interface-curses-mouse__adb.htm#135_7">L</A> := 2 * <A HREF="terminal_interface-curses-mouse__adb.htm#135_7">L</A>;
          <b>end</b> <b>loop</b>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-mouse__adb.htm#131_30">State</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#80_26">Pressed</A>;
-         <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#217_4">BUTTON_CTRL</A>) /= 0 <b>then</b>
-            <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#72_26">Control</A>;
-         <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#218_4">BUTTON_SHIFT</A>) /= 0 <b>then</b>
-            <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#73_26">Shift</A>;
-         <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#219_4">BUTTON_ALT</A>) /= 0 <b>then</b>
-            <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#74_26">Alt</A>;
+         <A HREF="terminal_interface-curses-mouse__adb.htm#130_30">State</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#79_26">Pressed</A>;
+         <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#128_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#216_4">BUTTON_CTRL</A>) /= 0 <b>then</b>
+            <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#71_26">Control</A>;
+         <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#128_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#217_4">BUTTON_SHIFT</A>) /= 0 <b>then</b>
+            <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#72_26">Shift</A>;
+         <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#128_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#218_4">BUTTON_ALT</A>) /= 0 <b>then</b>
+            <A HREF="terminal_interface-curses-mouse__adb.htm#129_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#73_26">Alt</A>;
          <b>end</b> <b>if</b>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Dispatch_Event;
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__adb.htm#128_14">Dispatch_Event</A><A HREF="terminal_interface-curses-mouse__adb.htm#128_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#137_14">Get_Event</A><FONT COLOR=red><A NAME="169_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#137_25">Event</A>  : <b>in</b>  <A HREF="terminal_interface-curses-mouse__ads.htm#92_9">Mouse_Event</A>;
-                        <A HREF="terminal_interface-curses-mouse__ads.htm#138_25">Y</A>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                        <A HREF="terminal_interface-curses-mouse__ads.htm#139_25">X</A>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-                        <A HREF="terminal_interface-curses-mouse__ads.htm#140_25">Button</A> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#68_9">Mouse_Button</A>;
-                        <A HREF="terminal_interface-curses-mouse__ads.htm#141_25">State</A>  : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#79_9">Button_State</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#136_14">Get_Event</A><FONT COLOR=red><A NAME="168_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#136_25">Event</A>  : <b>in</b>  <A HREF="terminal_interface-curses-mouse__ads.htm#91_9">Mouse_Event</A>;
+                        <A HREF="terminal_interface-curses-mouse__ads.htm#137_25">Y</A>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                        <A HREF="terminal_interface-curses-mouse__ads.htm#138_25">X</A>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+                        <A HREF="terminal_interface-curses-mouse__ads.htm#139_25">Button</A> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Mouse_Button</A>;
+                        <A HREF="terminal_interface-curses-mouse__ads.htm#140_25">State</A>  : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#78_9">Button_State</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="175_7">Mask</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#137_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#174_10">Bstate</A>;
+      <FONT COLOR=red><A NAME="174_7">Mask</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#136_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#173_10">Bstate</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-mouse__ads.htm#139_25">X</A> := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#137_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#172_10">X</A>);
-      <A HREF="terminal_interface-curses-mouse__ads.htm#138_25">Y</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>   (<A HREF="terminal_interface-curses-mouse__ads.htm#137_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#172_13">Y</A>);
-      <A HREF="terminal_interface-curses-mouse__adb.htm#129_14">Dispatch_Event</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#175_7">Mask</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#140_25">Button</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#141_25">State</A>);
-   <b>end</b> Get_Event;
+      <A HREF="terminal_interface-curses-mouse__ads.htm#138_25">X</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#136_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#171_10">X</A>);
+      <A HREF="terminal_interface-curses-mouse__ads.htm#137_25">Y</A> := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>   (<A HREF="terminal_interface-curses-mouse__ads.htm#136_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#171_13">Y</A>);
+      <A HREF="terminal_interface-curses-mouse__adb.htm#128_14">Dispatch_Event</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#174_7">Mask</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#139_25">Button</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#140_25">State</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#136_14">Get_Event</A><A HREF="terminal_interface-curses-mouse__ads.htm#136_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#149_14">Unget_Mouse</A><FONT COLOR=red><A NAME="182_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#149_27">Event</A> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#92_9">Mouse_Event</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-mouse__ads.htm#148_14">Unget_Mouse</A><FONT COLOR=red><A NAME="181_14"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#148_27">Event</A> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#91_9">Mouse_Event</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="184_16">Ungetmouse</A></FONT> (<FONT COLOR=red><A NAME="184_28">Ev</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#92_9">Mouse_Event</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#184_16">Ungetmouse</A>, "ungetmouse");
+      <b>function</b> <FONT COLOR=red><A NAME="183_16">Ungetmouse</A></FONT> (<FONT COLOR=red><A NAME="183_28">Ev</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#91_9">Mouse_Event</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#183_16">Ungetmouse</A>, "ungetmouse");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#184_16">Ungetmouse</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#149_27">Event</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#183_16">Ungetmouse</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#148_27">Event</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Unget_Mouse;
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#148_14">Unget_Mouse</A><A HREF="terminal_interface-curses-mouse__ads.htm#148_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#154_13">Enclosed_In_Window</A><FONT COLOR=red><A NAME="192_13"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#154_33">Win</A>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                                <A HREF="terminal_interface-curses-mouse__ads.htm#155_33">Event</A>  : <A HREF="terminal_interface-curses-mouse__ads.htm#92_9">Mouse_Event</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#153_13">Enclosed_In_Window</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#153_33">Win</A>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                                <A HREF="terminal_interface-curses-mouse__ads.htm#154_33">Event</A>  : <A HREF="terminal_interface-curses-mouse__ads.htm#91_9">Mouse_Event</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="195_16">Wenclose</A></FONT> (<FONT COLOR=red><A NAME="195_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="195_40">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>; <FONT COLOR=red><A NAME="195_51">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>)
-                         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#195_16">Wenclose</A>, "wenclose");
+      <b>function</b> <FONT COLOR=red><A NAME="194_16">Wenclose</A></FONT> (<FONT COLOR=red><A NAME="194_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="194_40">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>; <FONT COLOR=red><A NAME="194_51">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>)
+                         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#194_16">Wenclose</A>, "wenclose");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#195_16">Wenclose</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#154_33">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#155_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#172_13">Y</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#155_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#172_10">X</A>))
-        = <A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#194_16">Wenclose</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#153_33">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#154_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#171_13">Y</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#154_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#171_10">X</A>))
+        = <A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Enclosed_In_Window;
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#153_13">Enclosed_In_Window</A><A HREF="terminal_interface-curses-mouse__ads.htm#153_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#161_13">Mouse_Interval</A><FONT COLOR=red><A NAME="207_13"></A></FONT> (<A HREF="terminal_interface-curses-mouse__ads.htm#161_29">Msec</A> : Natural := 200) <b>return</b> Natural
+   <b>function</b> <A HREF="terminal_interface-curses-mouse__ads.htm#160_13">Mouse_Interval</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#160_29">Msec</A> : Natural := 200) <b>return</b> Natural
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="209_16">Mouseinterval</A></FONT> (<FONT COLOR=red><A NAME="209_31">Msec</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#209_16">Mouseinterval</A>, "mouseinterval");
+      <b>function</b> <FONT COLOR=red><A NAME="208_16">Mouseinterval</A></FONT> (<FONT COLOR=red><A NAME="208_31">Msec</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-mouse__adb.htm#208_16">Mouseinterval</A>, "mouseinterval");
    <b>begin</b>
-      <b>return</b> Natural (<A HREF="terminal_interface-curses-mouse__adb.htm#209_16">Mouseinterval</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#161_29">Msec</A>)));
-   <b>end</b> Mouse_Interval;
+      <b>return</b> Natural (<A HREF="terminal_interface-curses-mouse__adb.htm#208_16">Mouseinterval</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#160_29">Msec</A>)));
+   <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#160_13">Mouse_Interval</A><A HREF="terminal_interface-curses-mouse__ads.htm#160_13">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Mouse;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#47_35">Mouse</A><A HREF="terminal_interface-curses-mouse__ads.htm#47_35">;</A>
+</PRE></BODY></HTML>
index d562e906d289c93ce2ee3c042d8add5e8dbac00d..50edd934c1e1025aa22b5ca7936eadee4fbb1835 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.21 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.22 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <FONT COLOR=green><EM>--  mouse binding.</EM></FONT>
    <FONT COLOR=green><EM>--  REPORT_MOUSE_POSITION (i.e. as a parameter to Register_Reportable_Event</EM></FONT>
    <FONT COLOR=green><EM>--  or Start_Mouse)</EM></FONT>
    <b>type</b> Event_Mask <b>is</b> <b>private</b>;
-   <FONT COLOR=red><A NAME="66_4">No_Events</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A>;
+   <FONT COLOR=red><A NAME="65_4">No_Events</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A>;
    All_Events : <b>constant</b> Event_Mask;
 
-   <b>type</b> Mouse_Button <b>is</b> (<FONT COLOR=red><A NAME="69_26">Left</A></FONT>,     <FONT COLOR=green><EM>-- aka: Button 1</EM></FONT>
-                         <FONT COLOR=red><A NAME="70_26">Middle</A></FONT>,   <FONT COLOR=green><EM>-- aka: Button 2</EM></FONT>
-                         <FONT COLOR=red><A NAME="71_26">Right</A></FONT>,    <FONT COLOR=green><EM>-- aka: Button 3</EM></FONT>
-                         <FONT COLOR=red><A NAME="72_26">Button4</A></FONT>,  <FONT COLOR=green><EM>-- aka: Button 4</EM></FONT>
-                         <FONT COLOR=red><A NAME="73_26">Control</A></FONT>,  <FONT COLOR=green><EM>-- Control Key</EM></FONT>
-                         <FONT COLOR=red><A NAME="74_26">Shift</A></FONT>,    <FONT COLOR=green><EM>-- Shift Key</EM></FONT>
+   <b>type</b> Mouse_Button <b>is</b> (<FONT COLOR=red><A NAME="68_26">Left</A></FONT>,     <FONT COLOR=green><EM>-- aka: Button 1</EM></FONT>
+                         <FONT COLOR=red><A NAME="69_26">Middle</A></FONT>,   <FONT COLOR=green><EM>-- aka: Button 2</EM></FONT>
+                         <FONT COLOR=red><A NAME="70_26">Right</A></FONT>,    <FONT COLOR=green><EM>-- aka: Button 3</EM></FONT>
+                         <FONT COLOR=red><A NAME="71_26">Button4</A></FONT>,  <FONT COLOR=green><EM>-- aka: Button 4</EM></FONT>
+                         <FONT COLOR=red><A NAME="72_26">Control</A></FONT>,  <FONT COLOR=green><EM>-- Control Key</EM></FONT>
+                         <FONT COLOR=red><A NAME="73_26">Shift</A></FONT>,    <FONT COLOR=green><EM>-- Shift Key</EM></FONT>
                          Alt);     <FONT COLOR=green><EM>-- ALT Key</EM></FONT>
 
-   <b>subtype</b> <FONT COLOR=red><A NAME="77_12">Real_Buttons</A></FONT>  <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#68_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#72_26">Left</A> .. Button4;
+   <b>subtype</b> <FONT COLOR=red><A NAME="76_12">Real_Buttons</A></FONT>  <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#71_26">Left</A> .. Button4;
    <b>subtype</b> Modifier_Keys <b>is</b> Mouse_Button <b>range</b> Control .. Alt;
 
-   <b>type</b> Button_State <b>is</b> (<FONT COLOR=red><A NAME="80_26">Released</A></FONT>,
-                         <FONT COLOR=red><A NAME="81_26">Pressed</A></FONT>,
-                         <FONT COLOR=red><A NAME="82_26">Clicked</A></FONT>,
-                         <FONT COLOR=red><A NAME="83_26">Double_Clicked</A></FONT>,
+   <b>type</b> Button_State <b>is</b> (<FONT COLOR=red><A NAME="79_26">Released</A></FONT>,
+                         <FONT COLOR=red><A NAME="80_26">Pressed</A></FONT>,
+                         <FONT COLOR=red><A NAME="81_26">Clicked</A></FONT>,
+                         <FONT COLOR=red><A NAME="82_26">Double_Clicked</A></FONT>,
                          Triple_Clicked);
 
    <b>type</b> Button_States <b>is</b> <b>array</b> (Button_State) <b>of</b> Boolean;
    <b>pragma</b> Pack (Button_States);
 
    All_Clicks : <b>constant</b> Button_States := (Clicked .. Triple_Clicked =&gt; True,
-   <FONT COLOR=red><A NAME="90_4"> </A></FONT>                     <A HREF="terminal_interface-curses-mouse__ads.htm#85_9"> </A>                 <b>others</b> =&gt; False);
+   <FONT COLOR=red><A NAME="89_4"> </A></FONT>                     <A HREF="terminal_interface-curses-mouse__ads.htm#84_9"> </A>                 <b>others</b> =&gt; False);
    All_States : <b>constant</b> Button_States := (<b>others</b> =&gt; True);
 
    <b>type</b> Mouse_Event <b>is</b> <b>private</b>;
    <FONT COLOR=green><EM>--  Return true if a mouse device is supported, false otherwise.</EM></FONT>
 
    <b>procedure</b> Register_Reportable_Event
-     (<FONT COLOR=red><A NAME="103_7">Button</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#79_9">Mouse_Button</A>;
-      <FONT COLOR=red><A NAME="104_7">State</A></FONT>  : <b>in</b> Button_State;
+     (<FONT COLOR=red><A NAME="102_7">Button</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#78_9">Mouse_Button</A>;
+      <FONT COLOR=red><A NAME="103_7">State</A></FONT>  : <b>in</b> Button_State;
       Mask   : <b>in</b> <b>out</b> Event_Mask);
    <FONT COLOR=green><EM>--  Stores the event described by the button and the state in the mask.</EM></FONT>
    <FONT COLOR=green><EM>--  Before you call this the first time, you should init the mask</EM></FONT>
    <b>pragma</b> Inline (Register_Reportable_Event);
 
    <b>procedure</b> Register_Reportable_Events
-     (<FONT COLOR=red><A NAME="112_7">Button</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#85_9">Mouse_Button</A>;
-      <FONT COLOR=red><A NAME="113_7">State</A></FONT>  : <b>in</b> Button_States;
+     (<FONT COLOR=red><A NAME="111_7">Button</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#84_9">Mouse_Button</A>;
+      <FONT COLOR=red><A NAME="112_7">State</A></FONT>  : <b>in</b> Button_States;
       Mask   : <b>in</b> <b>out</b> Event_Mask);
    <FONT COLOR=green><EM>--  Register all events described by the Button and the State bitmap.</EM></FONT>
    <FONT COLOR=green><EM>--  Before you call this the first time, you should init the mask</EM></FONT>
    <FONT COLOR=green><EM>--  old mask, that means the event mask value before this call.</EM></FONT>
    <FONT COLOR=green><EM>--  Not Implemented: The library version</EM></FONT>
    <FONT COLOR=green><EM>--  returns a Mouse_Mask that tells which events are reported.</EM></FONT>
-   <b>function</b> Start_Mouse (Mask : <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := All_Events)
+   <b>function</b> Start_Mouse (Mask : <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := All_Events)
                          <b>return</b> Event_Mask;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_mouse.3x.html">mousemask()</A></EM></FONT>
    <b>pragma</b> Inline (Start_Mouse);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_mouse.3x.html">getmouse()</A></EM></FONT>
    <b>pragma</b> Inline (Get_Mouse);
 
-   <b>procedure</b> Get_Event (<FONT COLOR=red><A NAME="138_25">Event</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Mouse_Event</A>;
-                        <FONT COLOR=red><A NAME="139_25">Y</A></FONT>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                        <FONT COLOR=red><A NAME="140_25">X</A></FONT>      : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#68_9">Column_Position</A>;
-                        <FONT COLOR=red><A NAME="141_25">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#79_9">Mouse_Button</A>;
+   <b>procedure</b> Get_Event (<FONT COLOR=red><A NAME="137_25">Event</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#59_9">Mouse_Event</A>;
+                        <FONT COLOR=red><A NAME="138_25">Y</A></FONT>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                        <FONT COLOR=red><A NAME="139_25">X</A></FONT>      : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Column_Position</A>;
+                        <FONT COLOR=red><A NAME="140_25">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#78_9">Mouse_Button</A>;
                         State  : <b>out</b> Button_State);
    <FONT COLOR=green><EM>--  !!! Warning: X and Y are screen coordinates. Due to ripped of lines they</EM></FONT>
    <FONT COLOR=green><EM>--  may not be identical to window coordinates.</EM></FONT>
    <b>pragma</b> Inline (Unget_Mouse);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_4"#2|</EM></FONT>
-   <b>function</b> Enclosed_In_Window (<FONT COLOR=red><A NAME="155_33">Win</A></FONT>    : <A HREF="terminal_interface-curses-mouse__ads.htm#92_9">Window</A> := Standard_Window;
+   <b>function</b> Enclosed_In_Window (<FONT COLOR=red><A NAME="154_33">Win</A></FONT>    : <A HREF="terminal_interface-curses-mouse__ads.htm#91_9">Window</A> := Standard_Window;
                                 Event  : Mouse_Event) <b>return</b> Boolean;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_mouse.3x.html">wenclose()</A></EM></FONT>
    <FONT COLOR=green><EM>--  But : use event instead of screen coordinates.</EM></FONT>
    <b>type</b> Mouse_Event <b>is</b>
       <b>record</b>
          Id      : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.short'First) ..
-         <FONT COLOR=red><A NAME="172_10"> </A></FONT>  <FONT COLOR=red><A NAME="172_13"> </A></FONT>  <FONT COLOR=red><A NAME="172_16"> </A></FONT>                 Integer (<A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.short'Last);
+         <FONT COLOR=red><A NAME="171_10"> </A></FONT>  <FONT COLOR=red><A NAME="171_13"> </A></FONT>  <FONT COLOR=red><A NAME="171_16"> </A></FONT>                 Integer (<A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.short'Last);
          X, Y, Z : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int'First) ..
-         <FONT COLOR=red><A NAME="174_10"> </A></FONT>         <A HREF="terminal_interface-curses-mouse__ads.htm#64_9"> </A>             Integer (Interfaces.C.int'Last);
-         Bstate  : Event_Mask;
+         <FONT COLOR=red><A NAME="173_10"> </A></FONT>         <A HREF="terminal_interface-curses-mouse__ads.htm#63_9"> </A>             Integer (Interfaces.C.int'Last);
+         Bstate <A HREF="terminal_interface-curses-mouse__ads.htm#91_9"> </A>: Event_Mask;
       <b>end</b> <b>record</b>;
    <b>pragma</b> Convention (C, Mouse_Event);
    <b>pragma</b> Pack (Mouse_Event);
    Generation_Bit_Order : <b>constant</b> System.Bit_Order := System.Low_Order_First;
    <FONT COLOR=green><EM>--  This constant may be different on your system.</EM></FONT>
 
-   <FONT COLOR=red><A NAME="194_4">BUTTON1_RELEASED</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000001#;
-   <FONT COLOR=red><A NAME="195_4">BUTTON1_PRESSED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000002#;
-   <FONT COLOR=red><A NAME="196_4">BUTTON1_CLICKED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000004#;
-   <FONT COLOR=red><A NAME="197_4">BUTTON1_DOUBLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000010#;
-   <FONT COLOR=red><A NAME="198_4">BUTTON1_TRIPLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000020#;
-   <FONT COLOR=red><A NAME="199_4">BUTTON1_RESERVED_EVENT</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000040#;
-   <FONT COLOR=red><A NAME="200_4">BUTTON2_RELEASED</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000100#;
-   <FONT COLOR=red><A NAME="201_4">BUTTON2_PRESSED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000200#;
-   <FONT COLOR=red><A NAME="202_4">BUTTON2_CLICKED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000400#;
-   <FONT COLOR=red><A NAME="203_4">BUTTON2_DOUBLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000001000#;
-   <FONT COLOR=red><A NAME="204_4">BUTTON2_TRIPLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000002000#;
-   <FONT COLOR=red><A NAME="205_4">BUTTON2_RESERVED_EVENT</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000004000#;
-   <FONT COLOR=red><A NAME="206_4">BUTTON3_RELEASED</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000010000#;
-   <FONT COLOR=red><A NAME="207_4">BUTTON3_PRESSED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000020000#;
-   <FONT COLOR=red><A NAME="208_4">BUTTON3_CLICKED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000040000#;
-   <FONT COLOR=red><A NAME="209_4">BUTTON3_DOUBLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000100000#;
-   <FONT COLOR=red><A NAME="210_4">BUTTON3_TRIPLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000200000#;
-   <FONT COLOR=red><A NAME="211_4">BUTTON3_RESERVED_EVENT</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000400000#;
-   <FONT COLOR=red><A NAME="212_4">BUTTON4_RELEASED</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00001000000#;
-   <FONT COLOR=red><A NAME="213_4">BUTTON4_PRESSED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00002000000#;
-   <FONT COLOR=red><A NAME="214_4">BUTTON4_CLICKED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00004000000#;
-   <FONT COLOR=red><A NAME="215_4">BUTTON4_DOUBLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00010000000#;
-   <FONT COLOR=red><A NAME="216_4">BUTTON4_TRIPLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00020000000#;
-   <FONT COLOR=red><A NAME="217_4">BUTTON4_RESERVED_EVENT</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00040000000#;
-   <FONT COLOR=red><A NAME="218_4">BUTTON_CTRL</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00100000000#;
-   <FONT COLOR=red><A NAME="219_4">BUTTON_SHIFT</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00200000000#;
-   <FONT COLOR=red><A NAME="220_4">BUTTON_ALT</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00400000000#;
-   <FONT COLOR=red><A NAME="221_4">REPORT_MOUSE_POSITION</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#01000000000#;
-   <FONT COLOR=red><A NAME="222_4">ALL_MOUSE_EVENTS</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00777777777#;
-   <FONT COLOR=red><A NAME="223_4">BUTTON1_EVENTS</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000000077#;
-   <FONT COLOR=red><A NAME="224_4">BUTTON2_EVENTS</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000007700#;
-   <FONT COLOR=red><A NAME="225_4">BUTTON3_EVENTS</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := 8#00000770000#;
+   <FONT COLOR=red><A NAME="193_4">BUTTON1_RELEASED</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000001#;
+   <FONT COLOR=red><A NAME="194_4">BUTTON1_PRESSED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000002#;
+   <FONT COLOR=red><A NAME="195_4">BUTTON1_CLICKED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000004#;
+   <FONT COLOR=red><A NAME="196_4">BUTTON1_DOUBLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000010#;
+   <FONT COLOR=red><A NAME="197_4">BUTTON1_TRIPLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000020#;
+   <FONT COLOR=red><A NAME="198_4">BUTTON1_RESERVED_EVENT</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000040#;
+   <FONT COLOR=red><A NAME="199_4">BUTTON2_RELEASED</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000100#;
+   <FONT COLOR=red><A NAME="200_4">BUTTON2_PRESSED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000200#;
+   <FONT COLOR=red><A NAME="201_4">BUTTON2_CLICKED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000400#;
+   <FONT COLOR=red><A NAME="202_4">BUTTON2_DOUBLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000001000#;
+   <FONT COLOR=red><A NAME="203_4">BUTTON2_TRIPLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000002000#;
+   <FONT COLOR=red><A NAME="204_4">BUTTON2_RESERVED_EVENT</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000004000#;
+   <FONT COLOR=red><A NAME="205_4">BUTTON3_RELEASED</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000010000#;
+   <FONT COLOR=red><A NAME="206_4">BUTTON3_PRESSED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000020000#;
+   <FONT COLOR=red><A NAME="207_4">BUTTON3_CLICKED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000040000#;
+   <FONT COLOR=red><A NAME="208_4">BUTTON3_DOUBLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000100000#;
+   <FONT COLOR=red><A NAME="209_4">BUTTON3_TRIPLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000200000#;
+   <FONT COLOR=red><A NAME="210_4">BUTTON3_RESERVED_EVENT</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000400000#;
+   <FONT COLOR=red><A NAME="211_4">BUTTON4_RELEASED</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00001000000#;
+   <FONT COLOR=red><A NAME="212_4">BUTTON4_PRESSED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00002000000#;
+   <FONT COLOR=red><A NAME="213_4">BUTTON4_CLICKED</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00004000000#;
+   <FONT COLOR=red><A NAME="214_4">BUTTON4_DOUBLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00010000000#;
+   <FONT COLOR=red><A NAME="215_4">BUTTON4_TRIPLE_CLICKED</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00020000000#;
+   <FONT COLOR=red><A NAME="216_4">BUTTON4_RESERVED_EVENT</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00040000000#;
+   <FONT COLOR=red><A NAME="217_4">BUTTON_CTRL</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00100000000#;
+   <FONT COLOR=red><A NAME="218_4">BUTTON_SHIFT</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00200000000#;
+   <FONT COLOR=red><A NAME="219_4">BUTTON_ALT</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00400000000#;
+   <FONT COLOR=red><A NAME="220_4">REPORT_MOUSE_POSITION</A></FONT>     : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#01000000000#;
+   <FONT COLOR=red><A NAME="221_4">ALL_MOUSE_EVENTS</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00777777777#;
+   <FONT COLOR=red><A NAME="222_4">BUTTON1_EVENTS</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000077#;
+   <FONT COLOR=red><A NAME="223_4">BUTTON2_EVENTS</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000007700#;
+   <FONT COLOR=red><A NAME="224_4">BUTTON3_EVENTS</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000770000#;
    BUTTON4_EVENTS            : <b>constant</b> Event_Mask := 8#00077000000#;
 
 
-   <A HREF="terminal_interface-curses-mouse__ads.htm#66_4">No_Events</A>  : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#64_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#221_4">0</A>;
+   <A HREF="terminal_interface-curses-mouse__ads.htm#65_4">No_Events</A>  : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#220_4">0</A>;
    All_Events : <b>constant</b> Event_Mask := ALL_MOUSE_EVENTS;
 
 <b>end</b> Terminal_Interface.Curses.Mouse;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index dedbdb7f5a06f351b3dc5e4cde9231f65e264d53..7f9b1674983ad7a1cbccf8f39b1959d432f5e409 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
-<b>use</b>  <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#44_35">Panels</A>;
-<b>use</b>  <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#44_35">Panels</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
+<b>use</b>  <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#43_35">Panels</A>;
+<b>use</b>  <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#43_35">Panels</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#44_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#46_42">User_Data</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#43_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_42">User_Data</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#54_14">Set_User_Data</A><FONT COLOR=red><A NAME="52_14"></A></FONT> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#54_29">Pan</A>  : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>;
-                            <A HREF="terminal_interface-curses-panels-user_data__ads.htm#55_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#53_14">Set_User_Data</A><FONT COLOR=red><A NAME="51_14"></A></FONT> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#53_29">Pan</A>  : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>;
+                            <A HREF="terminal_interface-curses-panels-user_data__ads.htm#54_29">Data</A> : <b>in</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="55_16">Set_Panel_Userptr</A></FONT> (<FONT COLOR=red><A NAME="55_35">Pan</A></FONT>  : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>;
-                                  <FONT COLOR=red><A NAME="56_35">Addr</A></FONT> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels-user_data__adb.htm#55_16">Set_Panel_Userptr</A>, "set_panel_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="54_16">Set_Panel_Userptr</A></FONT> (<FONT COLOR=red><A NAME="54_35">Pan</A></FONT>  : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>;
+                                  <FONT COLOR=red><A NAME="55_35">Addr</A></FONT> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels-user_data__adb.htm#54_16">Set_Panel_Userptr</A>, "set_panel_userptr");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels-user_data__adb.htm#55_16">Set_Panel_Userptr</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#54_29">Pan</A>, <A HREF="terminal_interface-curses-panels-user_data__ads.htm#55_29">Data</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-panels-user_data__adb.htm#54_16">Set_Panel_Userptr</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#53_29">Pan</A>, <A HREF="terminal_interface-curses-panels-user_data__ads.htm#54_29">Data</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_User_Data;
+   <b>end</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#53_14">Set_User_Data</A><A HREF="terminal_interface-curses-panels-user_data__ads.htm#53_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#65_13">Get_User_Data</A><FONT COLOR=red><A NAME="64_13"></A></FONT> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#65_28">Pan</A>  : <b>in</b>  <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_9">User_Access</A>
+   <b>function</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#64_28">Pan</A>  : <b>in</b>  <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#44_9">User_Access</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="66_16">Panel_Userptr</A></FONT> (<FONT COLOR=red><A NAME="66_31">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_9">User_Access</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels-user_data__adb.htm#66_16">Panel_Userptr</A>, "panel_userptr");
+      <b>function</b> <FONT COLOR=red><A NAME="65_16">Panel_Userptr</A></FONT> (<FONT COLOR=red><A NAME="65_31">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#44_9">User_Access</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels-user_data__adb.htm#65_16">Panel_Userptr</A>, "panel_userptr");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__adb.htm#66_16">Panel_Userptr</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#65_28">Pan</A>);
-   <b>end</b> Get_User_Data;
+      <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__adb.htm#65_16">Panel_Userptr</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#64_28">Pan</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#64_13">Get_User_Data</A><A HREF="terminal_interface-curses-panels-user_data__ads.htm#64_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#60_14">Get_User_Data</A><FONT COLOR=red><A NAME="72_14"></A></FONT> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#60_29">Pan</A>  : <b>in</b>  <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>;
-                            <A HREF="terminal_interface-curses-panels-user_data__ads.htm#61_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_9">User_Access</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#59_14">Get_User_Data</A><FONT COLOR=red><A NAME="71_14"></A></FONT> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#59_29">Pan</A>  : <b>in</b>  <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>;
+                            <A HREF="terminal_interface-curses-panels-user_data__ads.htm#60_29">Data</A> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#44_9">User_Access</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-panels-user_data__ads.htm#61_29">Data</A> := <A HREF="terminal_interface-curses-panels-user_data__ads.htm#65_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#60_29">Pan</A>);
-   <b>end</b> Get_User_Data;
+      <A HREF="terminal_interface-curses-panels-user_data__ads.htm#60_29">Data</A> := <A HREF="terminal_interface-curses-panels-user_data__ads.htm#64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#59_29">Pan</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#59_14">Get_User_Data</A><A HREF="terminal_interface-curses-panels-user_data__ads.htm#59_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Panels.User_Data;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#43_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_42">User_Data</A><A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_42">;</A>
+</PRE></BODY></HTML>
index 90810b6857dc705c885db74a0d19b024c8bc6850..1aa8d9144682ed71922a0b328c5ab0f037f0cce0 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.13 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.14 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="45_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-   <b>type</b> <A HREF="terminal_interface__ads.htm#42_9">User_Access</A> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-panels__ads.htm#44_35">User</A>;
-<b>package</b> Terminal_Interface.Curses.Panels.User_Data<A HREF="terminal_interface-curses-panels__ads.htm#44_35"> </A><b>is</b>
+   <b>type</b> <FONT COLOR=red><A NAME="44_9">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
+   <b>type</b> <A HREF="terminal_interface__ads.htm#41_9">User_Access</A> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-panels__ads.htm#43_35">User</A>;
+<b>package</b> Terminal_Interface.Curses.Panels.User_Data<A HREF="terminal_interface-curses-panels__ads.htm#43_35"> </A><b>is</b>
    <b>pragma</b> Preelaborate (Terminal_Interface.Curses.Panels.User_Data);
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_1"#2|</EM></FONT>
-   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="55_29">Pan</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_9">Panel</A>;
+   <b>procedure</b> Set_User_Data (<FONT COLOR=red><A NAME="54_29">Pan</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#44_9">Panel</A>;
                             Data : <b>in</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/panel.3x.html">set_panel_userptr</A></EM></FONT>
    <b>pragma</b> Inline (Set_User_Data);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_2"#2|</EM></FONT>
-   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="61_29">Pan</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-panels-user_data__ads.htm#45_9">Panel</A>;
+   <b>procedure</b> Get_User_Data (<FONT COLOR=red><A NAME="60_29">Pan</A></FONT>  : <b>in</b>  <A HREF="terminal_interface-curses-panels-user_data__ads.htm#44_9">Panel</A>;
                             Data : <b>out</b> User_Access);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/panel.3x.html">panel_userptr</A></EM></FONT>
 
@@ -73,4 +72,4 @@
    <b>pragma</b> Inline (Get_User_Data);
 
 <b>end</b> Terminal_Interface.Curses.Panels.User_Data;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index d7214638b7ad5197d3f5fa1abc94e0249904c67c..ba131bee228dca17e8d1674a384f1d8c8c67094f 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#44_35">Panels</A><FONT COLOR=red><A NAME="45_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#43_35">Panels</A> <b>is</b>
 
    <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
 
-   <b>function</b> <A HREF="terminal_interface-curses-panels__ads.htm#67_13">Create</A><FONT COLOR=red><A NAME="49_13"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#67_21">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>
+   <b>function</b> <A HREF="terminal_interface-curses-panels__ads.htm#66_13">Create</A> (<A HREF="terminal_interface-curses-panels__ads.htm#66_21">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="51_16">Newpanel</A></FONT> (<FONT COLOR=red><A NAME="51_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#51_16">Newpanel</A>, "new_panel");
+      <b>function</b> <FONT COLOR=red><A NAME="50_16">Newpanel</A></FONT> (<FONT COLOR=red><A NAME="50_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#50_16">Newpanel</A>, "new_panel");
 
-      <FONT COLOR=red><A NAME="54_7">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>;
+      <FONT COLOR=red><A NAME="53_7">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses-panels__adb.htm#54_7">Pan</A> := <A HREF="terminal_interface-curses-panels__adb.htm#51_16">Newpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#67_21">Win</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#54_7">Pan</A> = <A HREF="terminal_interface-curses-panels__ads.htm#54_4">Null_Panel</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <A HREF="terminal_interface-curses-panels__adb.htm#53_7">Pan</A> := <A HREF="terminal_interface-curses-panels__adb.htm#50_16">Newpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#66_21">Win</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#53_7">Pan</A> = <A HREF="terminal_interface-curses-panels__ads.htm#53_4">Null_Panel</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-panels__adb.htm#54_7">Pan</A>;
-   <b>end</b> Create;
+      <b>return</b> <A HREF="terminal_interface-curses-panels__adb.htm#53_7">Pan</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#66_13">Create</A><A HREF="terminal_interface-curses-panels__ads.htm#66_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#77_14">Bottom</A><FONT COLOR=red><A NAME="63_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#77_22">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#76_14">Bottom</A><FONT COLOR=red><A NAME="62_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#76_22">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="65_16">Bottompanel</A></FONT> (<FONT COLOR=red><A NAME="65_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#65_16">Bottompanel</A>, "bottom_panel");
+      <b>function</b> <FONT COLOR=red><A NAME="64_16">Bottompanel</A></FONT> (<FONT COLOR=red><A NAME="64_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#64_16">Bottompanel</A>, "bottom_panel");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#65_16">Bottompanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#77_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#64_16">Bottompanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#76_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Bottom;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#76_14">Bottom</A><A HREF="terminal_interface-curses-panels__ads.htm#76_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#82_14">Top</A><FONT COLOR=red><A NAME="73_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#82_19">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#81_14">Top</A><FONT COLOR=red><A NAME="72_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#81_19">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="75_16">Toppanel</A></FONT> (<FONT COLOR=red><A NAME="75_26">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#75_16">Toppanel</A>, "top_panel");
+      <b>function</b> <FONT COLOR=red><A NAME="74_16">Toppanel</A></FONT> (<FONT COLOR=red><A NAME="74_26">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#74_16">Toppanel</A>, "top_panel");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#75_16">Toppanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#82_19">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#74_16">Toppanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#81_19">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Top;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#81_14">Top</A><A HREF="terminal_interface-curses-panels__ads.htm#81_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#87_14">Show</A><FONT COLOR=red><A NAME="83_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#87_20">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#86_14">Show</A><FONT COLOR=red><A NAME="82_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#86_20">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="85_16">Showpanel</A></FONT> (<FONT COLOR=red><A NAME="85_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#85_16">Showpanel</A>, "show_panel");
+      <b>function</b> <FONT COLOR=red><A NAME="84_16">Showpanel</A></FONT> (<FONT COLOR=red><A NAME="84_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#84_16">Showpanel</A>, "show_panel");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#85_16">Showpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#87_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#84_16">Showpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#86_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Show;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#86_14">Show</A><A HREF="terminal_interface-curses-panels__ads.htm#86_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#97_14">Hide</A><FONT COLOR=red><A NAME="93_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#97_20">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#96_14">Hide</A><FONT COLOR=red><A NAME="92_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#96_20">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="95_16">Hidepanel</A></FONT> (<FONT COLOR=red><A NAME="95_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#95_16">Hidepanel</A>, "hide_panel");
+      <b>function</b> <FONT COLOR=red><A NAME="94_16">Hidepanel</A></FONT> (<FONT COLOR=red><A NAME="94_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#94_16">Hidepanel</A>, "hide_panel");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#95_16">Hidepanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#97_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#94_16">Hidepanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#96_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Hide;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#96_14">Hide</A><A HREF="terminal_interface-curses-panels__ads.htm#96_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-panels__ads.htm#102_13">Get_Window</A><FONT COLOR=red><A NAME="103_13"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#102_25">Pan</A> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses-panels__ads.htm#101_13">Get_Window</A> (<A HREF="terminal_interface-curses-panels__ads.htm#101_25">Pan</A> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="105_16">Panel_Win</A></FONT> (<FONT COLOR=red><A NAME="105_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#105_16">Panel_Win</A>, "panel_window");
+      <b>function</b> <FONT COLOR=red><A NAME="104_16">Panel_Win</A></FONT> (<FONT COLOR=red><A NAME="104_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#104_16">Panel_Win</A>, "panel_window");
 
-      <FONT COLOR=red><A NAME="108_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses-panels__adb.htm#105_16">Panel_Win</A> (<A HREF="terminal_interface-curses-panels__ads.htm#102_25">Pan</A>);
+      <FONT COLOR=red><A NAME="107_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses-panels__adb.htm#104_16">Panel_Win</A> (<A HREF="terminal_interface-curses-panels__ads.htm#101_25">Pan</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#108_7">Win</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#107_7">Win</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-panels__adb.htm#108_7">Win</A>;
-   <b>end</b> Get_Window;
+      <b>return</b> <A HREF="terminal_interface-curses-panels__adb.htm#107_7">Win</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#101_13">Get_Window</A><A HREF="terminal_interface-curses-panels__ads.htm#101_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#111_14">Replace</A><FONT COLOR=red><A NAME="116_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#111_23">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>;
-                      <A HREF="terminal_interface-curses-panels__ads.htm#112_23">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#110_14">Replace</A><FONT COLOR=red><A NAME="115_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#110_23">Pan</A> : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>;
+                      <A HREF="terminal_interface-curses-panels__ads.htm#111_23">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="119_16">Replace_Pan</A></FONT> (<FONT COLOR=red><A NAME="119_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>;
-                            <FONT COLOR=red><A NAME="120_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#119_16">Replace_Pan</A>, "replace_panel");
+      <b>function</b> <FONT COLOR=red><A NAME="118_16">Replace_Pan</A></FONT> (<FONT COLOR=red><A NAME="118_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>;
+                            <FONT COLOR=red><A NAME="119_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#118_16">Replace_Pan</A>, "replace_panel");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#119_16">Replace_Pan</A> (<A HREF="terminal_interface-curses-panels__ads.htm#111_23">Pan</A>, <A HREF="terminal_interface-curses-panels__ads.htm#112_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#118_16">Replace_Pan</A> (<A HREF="terminal_interface-curses-panels__ads.htm#110_23">Pan</A>, <A HREF="terminal_interface-curses-panels__ads.htm#111_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Replace;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#110_14">Replace</A><A HREF="terminal_interface-curses-panels__ads.htm#110_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#117_14">Move</A><FONT COLOR=red><A NAME="128_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#117_20">Pan</A>    : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>;
-                   <A HREF="terminal_interface-curses-panels__ads.htm#118_20">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                   <A HREF="terminal_interface-curses-panels__ads.htm#119_20">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#116_14">Move</A><FONT COLOR=red><A NAME="127_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#116_20">Pan</A>    : <b>in</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>;
+                   <A HREF="terminal_interface-curses-panels__ads.htm#117_20">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                   <A HREF="terminal_interface-curses-panels__ads.htm#118_20">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="132_16">Move</A></FONT> (<FONT COLOR=red><A NAME="132_22">Pan</A></FONT>    : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>;
-                     <FONT COLOR=red><A NAME="133_22">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                     <FONT COLOR=red><A NAME="134_22">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#132_16">Move</A>, "move_panel");
+      <b>function</b> <FONT COLOR=red><A NAME="131_16">Move</A></FONT> (<FONT COLOR=red><A NAME="131_22">Pan</A></FONT>    : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>;
+                     <FONT COLOR=red><A NAME="132_22">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                     <FONT COLOR=red><A NAME="133_22">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#131_16">Move</A>, "move_panel");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#132_16">Move</A> (<A HREF="terminal_interface-curses-panels__ads.htm#117_20">Pan</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#118_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#119_20">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#131_16">Move</A> (<A HREF="terminal_interface-curses-panels__ads.htm#116_20">Pan</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#117_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#118_20">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Move;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#116_14">Move</A><A HREF="terminal_interface-curses-panels__ads.htm#116_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-panels__ads.htm#124_13">Is_Hidden</A><FONT COLOR=red><A NAME="142_13"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#124_24">Pan</A> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-panels__ads.htm#123_13">Is_Hidden</A> (<A HREF="terminal_interface-curses-panels__ads.htm#123_24">Pan</A> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="144_16">Panel_Hidden</A></FONT> (<FONT COLOR=red><A NAME="144_30">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#144_16">Panel_Hidden</A>, "panel_hidden");
+      <b>function</b> <FONT COLOR=red><A NAME="143_16">Panel_Hidden</A></FONT> (<FONT COLOR=red><A NAME="143_30">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#143_16">Panel_Hidden</A>, "panel_hidden");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#144_16">Panel_Hidden</A> (<A HREF="terminal_interface-curses-panels__ads.htm#124_24">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#76_4">Curses_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#143_16">Panel_Hidden</A> (<A HREF="terminal_interface-curses-panels__ads.htm#123_24">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Is_Hidden;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#123_13">Is_Hidden</A><A HREF="terminal_interface-curses-panels__ads.htm#123_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#139_14">Delete</A><FONT COLOR=red><A NAME="154_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#139_22">Pan</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-panels__ads.htm#138_14">Delete</A><FONT COLOR=red><A NAME="153_14"></A></FONT> (<A HREF="terminal_interface-curses-panels__ads.htm#138_22">Pan</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="156_16">Del_Panel</A></FONT> (<FONT COLOR=red><A NAME="156_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#156_16">Del_Panel</A>, "del_panel");
+      <b>function</b> <FONT COLOR=red><A NAME="155_16">Del_Panel</A></FONT> (<FONT COLOR=red><A NAME="155_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-panels__adb.htm#155_16">Del_Panel</A>, "del_panel");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#156_16">Del_Panel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#139_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#60_4">Panel_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#155_16">Del_Panel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#138_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#59_4">Panel_Exception</A>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-panels__ads.htm#139_22">Pan</A> := <A HREF="terminal_interface-curses-panels__ads.htm#54_4">Null_Panel</A>;
-   <b>end</b> Delete;
+      <A HREF="terminal_interface-curses-panels__ads.htm#138_22">Pan</A> := <A HREF="terminal_interface-curses-panels__ads.htm#53_4">Null_Panel</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#138_14">Delete</A><A HREF="terminal_interface-curses-panels__ads.htm#138_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Panels;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#43_35">Panels</A><A HREF="terminal_interface-curses-panels__ads.htm#43_35">;</A>
+</PRE></BODY></HTML>
index c7790ae811625ae57d116014e69b5764a305e9a0..c16e58f667b592d6988d2f799c310494e078dbe7 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.16 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.17 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> System;
    <b>pragma</b> Inline (Panel_Window);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_10"#2|</EM></FONT>
-   <b>procedure</b> Replace (<FONT COLOR=red><A NAME="112_23">Pan</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Panel</A>;
+   <b>procedure</b> Replace (<FONT COLOR=red><A NAME="111_23">Pan</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Panel</A>;
                       Win : <b>in</b> Window);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/panel.3x.html">replace_panel()</A></EM></FONT>
    <b>pragma</b> Inline (Replace);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_11"#2|</EM></FONT>
-   <b>procedure</b> Move (<FONT COLOR=red><A NAME="118_20">Pan</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Panel</A>;
-                   <FONT COLOR=red><A NAME="119_20">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+   <b>procedure</b> Move (<FONT COLOR=red><A NAME="117_20">Pan</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Panel</A>;
+                   <FONT COLOR=red><A NAME="118_20">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
                    Column : <b>in</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/panel.3x.html">move_panel()</A></EM></FONT>
    <b>pragma</b> Inline (Move);
       Null_Panel : <b>constant</b> Panel := 0;
 
 <b>end</b> Terminal_Interface.Curses.Panels;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index 1e857b338fed92dca677eb1b5eee5185aa257069..57eeba1a058f12846e686a047941f7773b008c70 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.2 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.3 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 
 <b>with</b> Ada.Streams.Stream_IO.C_Streams;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C_Streams;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__ads.htm#44_35">PutWin</A><FONT COLOR=red><A NAME="46_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__ads.htm#43_35">PutWin</A> <b>is</b>
 
-   <b>package</b> <FONT COLOR=red><A NAME="48_12">ICS</A></FONT> <b>renames</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C_Streams;
-   <b>package</b> <FONT COLOR=red><A NAME="49_12">ACS</A></FONT> <b>renames</b> Ada.Streams.Stream_IO.C_Streams;
-   <b>use</b> <b>type</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+   <b>package</b> <FONT COLOR=red><A NAME="47_12">ICS</A></FONT> <b>renames</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C_Streams;
+   <b>package</b> <FONT COLOR=red><A NAME="48_12">ACS</A></FONT> <b>renames</b> Ada.Streams.Stream_IO.C_Streams;
+   <b>use</b> <b>type</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-putwin__ads.htm#46_14">Put_Window</A><FONT COLOR=red><A NAME="52_14"></A></FONT> (<A HREF="terminal_interface-curses-putwin__ads.htm#46_26">Win</A>  : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <A HREF="terminal_interface-curses-putwin__ads.htm#47_26">File</A> : Ada.Streams.Stream_IO.File_Type) <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="54_16">putwin</A></FONT> (<FONT COLOR=red><A NAME="54_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="54_38">f</A></FONT> : <A HREF="terminal_interface-curses-putwin__adb.htm#48_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-putwin__adb.htm#54_16">putwin</A>, "putwin");
+   <b>procedure</b> <A HREF="terminal_interface-curses-putwin__ads.htm#45_14">Put_Window</A><FONT COLOR=red><A NAME="51_14"></A></FONT> (<A HREF="terminal_interface-curses-putwin__ads.htm#45_26">Win</A>  : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <A HREF="terminal_interface-curses-putwin__ads.htm#46_26">File</A> : Ada.Streams.Stream_IO.File_Type) <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="53_16">putwin</A></FONT> (<FONT COLOR=red><A NAME="53_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="53_38">f</A></FONT> : <A HREF="terminal_interface-curses-putwin__adb.htm#47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-putwin__adb.htm#53_16">putwin</A>, "putwin");
 
-      <FONT COLOR=red><A NAME="57_7">R</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#54_16">putwin</A> (<A HREF="terminal_interface-curses-putwin__ads.htm#46_26">Win</A>, <A HREF="terminal_interface-curses-putwin__adb.htm#49_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#47_26">File</A>));
+      <FONT COLOR=red><A NAME="56_7">R</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#53_16">putwin</A> (<A HREF="terminal_interface-curses-putwin__ads.htm#45_26">Win</A>, <A HREF="terminal_interface-curses-putwin__adb.htm#48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#46_26">File</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#57_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Ok</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#56_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#71_4">Curses_Ok</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Put_Window;
+   <b>end</b> <A HREF="terminal_interface-curses-putwin__ads.htm#45_14">Put_Window</A><A HREF="terminal_interface-curses-putwin__ads.htm#45_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-putwin__ads.htm#49_13">Get_Window</A><FONT COLOR=red><A NAME="64_13"></A></FONT> (<A HREF="terminal_interface-curses-putwin__ads.htm#49_25">File</A> : Ada.Streams.Stream_IO.File_Type)
-                        <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="66_16">getwin</A></FONT> (<FONT COLOR=red><A NAME="66_24">f</A></FONT> : <A HREF="terminal_interface-curses-putwin__adb.htm#48_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-putwin__adb.htm#66_16">getwin</A>, "getwin");
+   <b>function</b> <A HREF="terminal_interface-curses-putwin__ads.htm#48_13">Get_Window</A> (<A HREF="terminal_interface-curses-putwin__ads.htm#48_25">File</A> : Ada.Streams.Stream_IO.File_Type)
+                        <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="65_16">getwin</A></FONT> (<FONT COLOR=red><A NAME="65_24">f</A></FONT> : <A HREF="terminal_interface-curses-putwin__adb.htm#47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-putwin__adb.htm#65_16">getwin</A>, "getwin");
 
-      <FONT COLOR=red><A NAME="69_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#66_16">getwin</A> (<A HREF="terminal_interface-curses-putwin__adb.htm#49_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#49_25">File</A>));
+      <FONT COLOR=red><A NAME="68_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#65_16">getwin</A> (<A HREF="terminal_interface-curses-putwin__adb.htm#48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#48_25">File</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#69_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#68_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>else</b>
-         <b>return</b> <A HREF="terminal_interface-curses-putwin__adb.htm#69_7">W</A>;
+         <b>return</b> <A HREF="terminal_interface-curses-putwin__adb.htm#68_7">W</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Window;
+   <b>end</b> <A HREF="terminal_interface-curses-putwin__ads.htm#48_13">Get_Window</A><A HREF="terminal_interface-curses-putwin__ads.htm#48_13">;</A>
 
-<b>end</b> Terminal_Interface.Curses.PutWin;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__ads.htm#43_35">PutWin</A><A HREF="terminal_interface-curses-putwin__ads.htm#43_35">;</A>
+</PRE></BODY></HTML>
index 8358e0ef409ca1ddcfb0e9c3607c93e06c889bc7..8f353d223d8d8625e5f71fe2e29df1a55f0db567 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.2 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.3 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 
 <b>with</b> Ada.Streams.Stream_IO;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__adb.htm#46_40">PutWin</A><FONT COLOR=red><A NAME="44_35"></A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<FONT COLOR=red><A NAME="43_35">PutWin</A></FONT> <b>is</b>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-putwin__adb.htm#52_14">Put_Window</A><FONT COLOR=red><A NAME="46_14"></A></FONT> (<FONT COLOR=red><A NAME="46_26">Win</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="47_26">File</A></FONT> : Ada.Streams.Stream_IO.File_Type);
+   <b>procedure</b> <A HREF="terminal_interface-curses-putwin__adb.htm#51_14">Put_Window</A><FONT COLOR=red><A NAME="45_14"></A></FONT> (<FONT COLOR=red><A NAME="45_26">Win</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="46_26">File</A></FONT> : Ada.Streams.Stream_IO.File_Type);
 
-   <b>function</b> <A HREF="terminal_interface-curses-putwin__adb.htm#64_13">Get_Window</A><FONT COLOR=red><A NAME="49_13"></A></FONT> (<FONT COLOR=red><A NAME="49_25">File</A></FONT>  : Ada.Streams.Stream_IO.File_Type) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="48_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="48_25">File</A></FONT>  : Ada.Streams.Stream_IO.File_Type) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
 
-<b>end</b> Terminal_Interface.Curses.PutWin;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__ads.htm#43_35">PutWin</A><A HREF="terminal_interface-curses-putwin__ads.htm#43_35">;</A>
+</PRE></BODY></HTML>
index 47ab7bdab40e9234fb0722125bf6e46df535e542..2756b4424406521ab3a87259653723afdded7991 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.4 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.5 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#43_35">Termcap</A><FONT COLOR=red><A NAME="47_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#42_35">Termcap</A> <b>is</b>
 
-   <b>function</b> <A HREF="terminal_interface-curses-termcap__ads.htm#60_13">Get_Entry</A><FONT COLOR=red><A NAME="49_13"></A></FONT> (<A HREF="terminal_interface-curses-termcap__ads.htm#60_24">Name</A> : String) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-termcap__ads.htm#59_13">Get_Entry</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#59_24">Name</A> : String) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="51_16">tgetent</A></FONT> (<FONT COLOR=red><A NAME="51_25">name</A></FONT> : char_array; <FONT COLOR=red><A NAME="51_44">val</A></FONT> : char_array)
-                        <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#51_16">tgetent</A>, "tgetent");
-      <FONT COLOR=red><A NAME="54_7">NameTxt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#60_24">Name</A>'Length);
-      <FONT COLOR=red><A NAME="55_7">Length</A></FONT>  : size_t;
-      <FONT COLOR=red><A NAME="56_7">ignored</A></FONT> : char_array (0 .. 0) := (0 =&gt; nul);
-      <FONT COLOR=red><A NAME="57_7">result</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="50_16">tgetent</A></FONT> (<FONT COLOR=red><A NAME="50_25">name</A></FONT> : char_array; <FONT COLOR=red><A NAME="50_44">val</A></FONT> : char_array)
+                        <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#50_16">tgetent</A>, "tgetent");
+      <FONT COLOR=red><A NAME="53_7">NameTxt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#59_24">Name</A>'Length);
+      <FONT COLOR=red><A NAME="54_7">Length</A></FONT>  : size_t;
+      <FONT COLOR=red><A NAME="55_7">ignored</A></FONT> : char_array (0 .. 0) := (0 =&gt; nul);
+      <FONT COLOR=red><A NAME="56_7">result</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#60_24">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#54_7">NameTxt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#55_7">Length</A>);
-      <A HREF="terminal_interface-curses-termcap__adb.htm#57_7">result</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#51_16">tgetent</A> (char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#56_7">ignored</A>), <A HREF="terminal_interface-curses-termcap__adb.htm#54_7">NameTxt</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#57_7">result</A> = -1 <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#59_24">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#53_7">NameTxt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#54_7">Length</A>);
+      <A HREF="terminal_interface-curses-termcap__adb.htm#56_7">result</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#50_16">tgetent</A> (char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#55_7">ignored</A>), <A HREF="terminal_interface-curses-termcap__adb.htm#53_7">NameTxt</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#56_7">result</A> = -1 <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>else</b>
-         <b>return</b> Boolean'Val (<A HREF="terminal_interface-curses-termcap__adb.htm#57_7">result</A>);
+         <b>return</b> Boolean'Val (<A HREF="terminal_interface-curses-termcap__adb.htm#56_7">result</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Entry;
+   <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#59_13">Get_Entry</A><A HREF="terminal_interface-curses-termcap__ads.htm#59_13">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-termcap__ads.htm#64_13">Get_Flag</A><FONT COLOR=red><A NAME="69_13"></A></FONT> (<A HREF="terminal_interface-curses-termcap__ads.htm#64_23">Name</A> : String) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-termcap__ads.htm#63_13">Get_Flag</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#63_23">Name</A> : String) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="71_16">tgetflag</A></FONT> (<FONT COLOR=red><A NAME="71_26">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#71_16">tgetflag</A>, "tgetflag");
-      <FONT COLOR=red><A NAME="73_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#64_23">Name</A>'Length);
-      <FONT COLOR=red><A NAME="74_7">Length</A></FONT> : size_t;
+      <b>function</b> <FONT COLOR=red><A NAME="70_16">tgetflag</A></FONT> (<FONT COLOR=red><A NAME="70_26">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#70_16">tgetflag</A>, "tgetflag");
+      <FONT COLOR=red><A NAME="72_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#63_23">Name</A>'Length);
+      <FONT COLOR=red><A NAME="73_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#64_23">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#73_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#74_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#71_16">tgetflag</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#73_7">Txt</A>) = 0 <b>then</b>
+      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#63_23">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#72_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#73_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#70_16">tgetflag</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#72_7">Txt</A>) = 0 <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Flag;
+   <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#63_13">Get_Flag</A><A HREF="terminal_interface-curses-termcap__ads.htm#63_13">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-termcap__ads.htm#68_14">Get_Number</A><FONT COLOR=red><A NAME="85_14"></A></FONT> (<A HREF="terminal_interface-curses-termcap__ads.htm#68_26">Name</A>   : <b>in</b>  String;
-                         <A HREF="terminal_interface-curses-termcap__ads.htm#69_26">Value</A>  : <b>out</b> Integer;
-                         <A HREF="terminal_interface-curses-termcap__ads.htm#70_26">Result</A> : <b>out</b> Boolean)
+   <b>procedure</b> <A HREF="terminal_interface-curses-termcap__ads.htm#67_14">Get_Number</A><FONT COLOR=red><A NAME="84_14"></A></FONT> (<A HREF="terminal_interface-curses-termcap__ads.htm#67_26">Name</A>   : <b>in</b>  String;
+                         <A HREF="terminal_interface-curses-termcap__ads.htm#68_26">Value</A>  : <b>out</b> Integer;
+                         <A HREF="terminal_interface-curses-termcap__ads.htm#69_26">Result</A> : <b>out</b> Boolean)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="89_16">tgetnum</A></FONT> (<FONT COLOR=red><A NAME="89_25">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#89_16">tgetnum</A>, "tgetnum");
-      <FONT COLOR=red><A NAME="91_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#68_26">Name</A>'Length);
-      <FONT COLOR=red><A NAME="92_7">Length</A></FONT> : size_t;
+      <b>function</b> <FONT COLOR=red><A NAME="88_16">tgetnum</A></FONT> (<FONT COLOR=red><A NAME="88_25">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#88_16">tgetnum</A>, "tgetnum");
+      <FONT COLOR=red><A NAME="90_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#67_26">Name</A>'Length);
+      <FONT COLOR=red><A NAME="91_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#68_26">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#91_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#92_7">Length</A>);
-      <A HREF="terminal_interface-curses-termcap__ads.htm#69_26">Value</A> := Integer (<A HREF="terminal_interface-curses-termcap__adb.htm#89_16">tgetnum</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#91_7">Txt</A>));
-      <b>if</b> <A HREF="terminal_interface-curses-termcap__ads.htm#69_26">Value</A> = -1 <b>then</b>
-         <A HREF="terminal_interface-curses-termcap__ads.htm#70_26">Result</A> := False;
+      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#67_26">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#90_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#91_7">Length</A>);
+      <A HREF="terminal_interface-curses-termcap__ads.htm#68_26">Value</A> := Integer (<A HREF="terminal_interface-curses-termcap__adb.htm#88_16">tgetnum</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#90_7">Txt</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-termcap__ads.htm#68_26">Value</A> = -1 <b>then</b>
+         <A HREF="terminal_interface-curses-termcap__ads.htm#69_26">Result</A> := False;
       <b>else</b>
-         <A HREF="terminal_interface-curses-termcap__ads.htm#70_26">Result</A> :=  True;
+         <A HREF="terminal_interface-curses-termcap__ads.htm#69_26">Result</A> :=  True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Number;
+   <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#67_14">Get_Number</A><A HREF="terminal_interface-curses-termcap__ads.htm#67_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-termcap__ads.htm#74_14">Get_String</A><FONT COLOR=red><A NAME="104_14"></A></FONT> (<A HREF="terminal_interface-curses-termcap__ads.htm#74_26">Name</A>   : String;
-                         <A HREF="terminal_interface-curses-termcap__ads.htm#75_26">Value</A>  : <b>out</b> String;
-                         <A HREF="terminal_interface-curses-termcap__ads.htm#76_26">Result</A> : <b>out</b> Boolean)
+   <b>procedure</b> <A HREF="terminal_interface-curses-termcap__ads.htm#73_14">Get_String</A><FONT COLOR=red><A NAME="103_14"></A></FONT> (<A HREF="terminal_interface-curses-termcap__ads.htm#73_26">Name</A>   : String;
+                         <A HREF="terminal_interface-curses-termcap__ads.htm#74_26">Value</A>  : <b>out</b> String;
+                         <A HREF="terminal_interface-curses-termcap__ads.htm#75_26">Result</A> : <b>out</b> Boolean)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="108_16">tgetstr</A></FONT> (<FONT COLOR=red><A NAME="108_25">id</A></FONT>  : char_array;
-                        <FONT COLOR=red><A NAME="109_25">buf</A></FONT> : char_array) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#108_16">tgetstr</A>, "tgetstr");
-      <FONT COLOR=red><A NAME="111_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#74_26">Name</A>'Length);
-      <FONT COLOR=red><A NAME="112_7">Length</A></FONT> : size_t;
-      <FONT COLOR=red><A NAME="113_7">Txt2</A></FONT>   : chars_ptr;
-      <b>type</b> <FONT COLOR=red><A NAME="114_12">t</A></FONT> <b>is</b> <b>new</b> char_array (0 .. 1024); <FONT COLOR=green><EM>--  does it need to be 1024?</EM></FONT>
-      <FONT COLOR=red><A NAME="115_7">Return_Buffer</A></FONT> : <A HREF="terminal_interface-curses-termcap__adb.htm#114_12">t</A> := (0 =&gt; nul);
+      <b>function</b> <FONT COLOR=red><A NAME="107_16">tgetstr</A></FONT> (<FONT COLOR=red><A NAME="107_25">id</A></FONT>  : char_array;
+                        <FONT COLOR=red><A NAME="108_25">buf</A></FONT> : char_array) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#107_16">tgetstr</A>, "tgetstr");
+      <FONT COLOR=red><A NAME="110_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#73_26">Name</A>'Length);
+      <FONT COLOR=red><A NAME="111_7">Length</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="112_7">Txt2</A></FONT>   : chars_ptr;
+      <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <FONT COLOR=green><EM>--  does it need to be 1024?</EM></FONT>
+      <FONT COLOR=red><A NAME="114_7">Return_Buffer</A></FONT> : t := (0 =&gt; nul);
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#74_26">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#111_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#112_7">Length</A>);
-      <A HREF="terminal_interface-curses-termcap__adb.htm#113_7">Txt2</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#108_16">tgetstr</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#111_7">Txt</A>, char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#115_7">Return_Buffer</A>));
-      <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#113_7">Txt2</A> = Null_Ptr <b>then</b>
-         <A HREF="terminal_interface-curses-termcap__ads.htm#76_26">Result</A> := False;
+      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#73_26">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#110_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#111_7">Length</A>);
+      <A HREF="terminal_interface-curses-termcap__adb.htm#112_7">Txt2</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#107_16">tgetstr</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#110_7">Txt</A>, char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#114_7">Return_Buffer</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#112_7">Txt2</A> = Null_Ptr <b>then</b>
+         <A HREF="terminal_interface-curses-termcap__ads.htm#75_26">Result</A> := False;
       <b>else</b>
-         <A HREF="terminal_interface-curses-termcap__ads.htm#75_26">Value</A> := <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#113_7">Txt2</A>);
-         <A HREF="terminal_interface-curses-termcap__ads.htm#76_26">Result</A> := True;
+         <A HREF="terminal_interface-curses-termcap__ads.htm#74_26">Value</A> := <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#112_7">Txt2</A>);
+         <A HREF="terminal_interface-curses-termcap__ads.htm#75_26">Result</A> := True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_String;
+   <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#73_14">Get_String</A><A HREF="terminal_interface-curses-termcap__ads.htm#73_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-termcap__ads.htm#77_13">Get_String</A><FONT COLOR=red><A NAME="127_13"></A></FONT> (<A HREF="terminal_interface-curses-termcap__ads.htm#77_25">Name</A> : String) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-termcap__ads.htm#76_13">Get_String</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#76_25">Name</A> : String) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="129_16">tgetstr</A></FONT> (<FONT COLOR=red><A NAME="129_25">Id</A></FONT>  : char_array;
-                        <FONT COLOR=red><A NAME="130_25">buf</A></FONT> : char_array) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#129_16">tgetstr</A>, "tgetstr");
-      <FONT COLOR=red><A NAME="132_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#77_25">Name</A>'Length);
-      <FONT COLOR=red><A NAME="133_7">Length</A></FONT> : size_t;
-      <FONT COLOR=red><A NAME="134_7">Txt2</A></FONT>   : chars_ptr;
-      <b>type</b> <FONT COLOR=red><A NAME="135_12">t</A></FONT> <b>is</b> <b>new</b> char_array (0 .. 1024); <FONT COLOR=green><EM>--  does it need to be 1024?</EM></FONT>
-      <FONT COLOR=red><A NAME="136_7">Phony_Txt</A></FONT> : <A HREF="terminal_interface-curses-termcap__adb.htm#135_12">t</A> := (0 =&gt; nul);
+      <b>function</b> <FONT COLOR=red><A NAME="128_16">tgetstr</A></FONT> (<FONT COLOR=red><A NAME="128_25">Id</A></FONT>  : char_array;
+                        <FONT COLOR=red><A NAME="129_25">buf</A></FONT> : char_array) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#128_16">tgetstr</A>, "tgetstr");
+      <FONT COLOR=red><A NAME="131_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#76_25">Name</A>'Length);
+      <FONT COLOR=red><A NAME="132_7">Length</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="133_7">Txt2</A></FONT>   : chars_ptr;
+      <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <FONT COLOR=green><EM>--  does it need to be 1024?</EM></FONT>
+      <FONT COLOR=red><A NAME="135_7">Phony_Txt</A></FONT> : t := (0 =&gt; nul);
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#77_25">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#132_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#133_7">Length</A>);
-      <A HREF="terminal_interface-curses-termcap__adb.htm#134_7">Txt2</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#129_16">tgetstr</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#132_7">Txt</A>, char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#136_7">Phony_Txt</A>));
-      <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#134_7">Txt2</A> = Null_Ptr <b>then</b>
+      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#76_25">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#131_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#132_7">Length</A>);
+      <A HREF="terminal_interface-curses-termcap__adb.htm#133_7">Txt2</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#128_16">tgetstr</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#131_7">Txt</A>, char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#135_7">Phony_Txt</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#133_7">Txt2</A> = Null_Ptr <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_String;
+   <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#76_13">Get_String</A><A HREF="terminal_interface-curses-termcap__ads.htm#76_13">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-termcap__ads.htm#54_13">TGoto</A><FONT COLOR=red><A NAME="148_13"></A></FONT> (<A HREF="terminal_interface-curses-termcap__ads.htm#54_20">Cap</A> : String;
-                   <A HREF="terminal_interface-curses-termcap__ads.htm#55_20">Col</A> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-                   <A HREF="terminal_interface-curses-termcap__ads.htm#56_20">Row</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-termcap__ads.htm#51_9">Termcap_String</A> <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="151_16">tgoto</A></FONT> (<FONT COLOR=red><A NAME="151_23">cap</A></FONT> : char_array;
-                      <FONT COLOR=red><A NAME="152_23">col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                      <FONT COLOR=red><A NAME="153_23">row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#151_16">tgoto</A>);
-      <FONT COLOR=red><A NAME="155_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#54_20">Cap</A>'Length);
-      <FONT COLOR=red><A NAME="156_7">Length</A></FONT> : size_t;
+   <b>function</b> <A HREF="terminal_interface-curses-termcap__ads.htm#53_13">TGoto</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#53_20">Cap</A> : String;
+                   <A HREF="terminal_interface-curses-termcap__ads.htm#54_20">Col</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+                   <A HREF="terminal_interface-curses-termcap__ads.htm#55_20">Row</A> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-termcap__ads.htm#50_9">Termcap_String</A> <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="150_16">tgoto</A></FONT> (<FONT COLOR=red><A NAME="150_23">cap</A></FONT> : char_array;
+                      <FONT COLOR=red><A NAME="151_23">col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                      <FONT COLOR=red><A NAME="152_23">row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-termcap__adb.htm#150_16">tgoto</A>);
+      <FONT COLOR=red><A NAME="154_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#53_20">Cap</A>'Length);
+      <FONT COLOR=red><A NAME="155_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#54_20">Cap</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#155_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#156_7">Length</A>);
-      <b>return</b> <A HREF="terminal_interface-curses-termcap__ads.htm#51_9">Termcap_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A>
-                             (<A HREF="terminal_interface-curses-termcap__adb.htm#151_16">tgoto</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#155_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#55_20">Col</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#56_20">Row</A>))));
-   <b>end</b> TGoto;
+      To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#53_20">Cap</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#154_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#155_7">Length</A>);
+      <b>return</b> <A HREF="terminal_interface-curses-termcap__ads.htm#50_9">Termcap_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A>
+                             (<A HREF="terminal_interface-curses-termcap__adb.htm#150_16">tgoto</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#154_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#54_20">Col</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#55_20">Row</A>))));
+   <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#53_13">TGoto</A><A HREF="terminal_interface-curses-termcap__ads.htm#53_13">;</A>
 
 
-<b>end</b> Terminal_Interface.Curses.Termcap;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#42_35">Termcap</A><A HREF="terminal_interface-curses-termcap__ads.htm#42_35">;</A>
+</PRE></BODY></HTML>
index a601a0f95ce9159ff279c8ca812257f963a7c965..4fd3ae6207ddeda5ca85daaa4e4d43b0429410eb 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.2 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.3 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__adb.htm#47_40">Termcap</A><FONT COLOR=red><A NAME="43_35"></A></FONT> <b>is</b>
-   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#43_35">Termcap</A>);
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<FONT COLOR=red><A NAME="42_35">Termcap</A></FONT> <b>is</b>
+   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#42_35">Termcap</A>);
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | Man page curs_termcap.3x</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  Not implemented:  tputs (see curs_terminfo)</EM></FONT>
 
-   <b>type</b> <FONT COLOR=red><A NAME="51_9">Termcap_String</A></FONT> <b>is</b> <b>new</b> String;
+   <b>type</b> <FONT COLOR=red><A NAME="50_9">Termcap_String</A></FONT> <b>is</b> <b>new</b> String;
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-termcap__adb.htm#148_13">TGoto</A><FONT COLOR=red><A NAME="54_13"></A></FONT> (<FONT COLOR=red><A NAME="54_20">Cap</A></FONT> : String;
-                   <FONT COLOR=red><A NAME="55_20">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-                   <FONT COLOR=red><A NAME="56_20">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-termcap__ads.htm#51_9">Termcap_String</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="53_13">TGoto</A></FONT> (<FONT COLOR=red><A NAME="53_20">Cap</A></FONT> : String;
+                   <FONT COLOR=red><A NAME="54_20">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+                   <FONT COLOR=red><A NAME="55_20">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-termcap__ads.htm#50_9">Termcap_String</A>;
    <FONT COLOR=green><EM>--  AKA: tgoto()</EM></FONT>
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-termcap__adb.htm#49_13">Get_Entry</A><FONT COLOR=red><A NAME="60_13"></A></FONT> (<FONT COLOR=red><A NAME="60_24">Name</A></FONT> : String) <b>return</b> Boolean;
+   <b>function</b> <FONT COLOR=red><A NAME="59_13">Get_Entry</A></FONT> (<FONT COLOR=red><A NAME="59_24">Name</A></FONT> : String) <b>return</b> Boolean;
    <FONT COLOR=green><EM>--  AKA: tgetent()</EM></FONT>
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-termcap__adb.htm#69_13">Get_Flag</A><FONT COLOR=red><A NAME="64_13"></A></FONT> (<FONT COLOR=red><A NAME="64_23">Name</A></FONT> : String) <b>return</b> Boolean;
+   <b>function</b> <FONT COLOR=red><A NAME="63_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="63_23">Name</A></FONT> : String) <b>return</b> Boolean;
    <FONT COLOR=green><EM>--  AKA: tgetflag()</EM></FONT>
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-termcap__adb.htm#85_14">Get_Number</A><FONT COLOR=red><A NAME="68_14"></A></FONT> (<FONT COLOR=red><A NAME="68_26">Name</A></FONT>   : String;
-                         <FONT COLOR=red><A NAME="69_26">Value</A></FONT>  : <b>out</b> Integer;
-                         <FONT COLOR=red><A NAME="70_26">Result</A></FONT> : <b>out</b> Boolean);
+   <b>procedure</b> <A HREF="terminal_interface-curses-termcap__adb.htm#84_14">Get_Number</A><FONT COLOR=red><A NAME="67_14"></A></FONT> (<FONT COLOR=red><A NAME="67_26">Name</A></FONT>   : String;
+                         <FONT COLOR=red><A NAME="68_26">Value</A></FONT>  : <b>out</b> Integer;
+                         <FONT COLOR=red><A NAME="69_26">Result</A></FONT> : <b>out</b> Boolean);
    <FONT COLOR=green><EM>--  AKA: tgetnum()</EM></FONT>
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-termcap__adb.htm#104_14">Get_String</A><FONT COLOR=red><A NAME="74_14"></A></FONT> (<FONT COLOR=red><A NAME="74_26">Name</A></FONT>   : String;
-                         <FONT COLOR=red><A NAME="75_26">Value</A></FONT>  : <b>out</b> String;
-                         <FONT COLOR=red><A NAME="76_26">Result</A></FONT> : <b>out</b> Boolean);
-   <b>function</b> <A HREF="terminal_interface-curses-termcap__adb.htm#127_13">Get_String</A><FONT COLOR=red><A NAME="77_13"></A></FONT> (<FONT COLOR=red><A NAME="77_25">Name</A></FONT> : String) <b>return</b> Boolean;
+   <b>procedure</b> <A HREF="terminal_interface-curses-termcap__adb.htm#103_14">Get_String</A><FONT COLOR=red><A NAME="73_14"></A></FONT> (<FONT COLOR=red><A NAME="73_26">Name</A></FONT>   : String;
+                         <FONT COLOR=red><A NAME="74_26">Value</A></FONT>  : <b>out</b> String;
+                         <FONT COLOR=red><A NAME="75_26">Result</A></FONT> : <b>out</b> Boolean);
+   <b>function</b> <FONT COLOR=red><A NAME="76_13">Get_String</A></FONT> (<FONT COLOR=red><A NAME="76_25">Name</A></FONT> : String) <b>return</b> Boolean;
    <FONT COLOR=green><EM>--  Returns True if the string is found.</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: tgetstr()</EM></FONT>
 
-<b>end</b> Terminal_Interface.Curses.Termcap;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#42_35">Termcap</A><A HREF="terminal_interface-curses-termcap__ads.htm#42_35">;</A>
+</PRE></BODY></HTML>
index 0e6979a5d45be1007a97f873ac470c44a208cffe..fdc68efd5593cdd341cd3d9397c85c223457c25b 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.2 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.3 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings;
 <b>with</b> Ada.Unchecked_Conversion;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#45_35">Terminfo</A><FONT COLOR=red><A NAME="48_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#44_35">Terminfo</A> <b>is</b>
 
 
-   <b>function</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#53_13">Is_MinusOne_Pointer</A><FONT COLOR=red><A NAME="51_13"></A></FONT> (<FONT COLOR=red><A NAME="51_34">P</A></FONT> : <b>in</b> chars_ptr) <b>return</b> Boolean;
+   <b>function</b> <FONT COLOR=red><A NAME="50_13">Is_MinusOne_Pointer</A></FONT> (<FONT COLOR=red><A NAME="50_34">P</A></FONT> : <b>in</b> chars_ptr) <b>return</b> Boolean;
 
-   <b>function</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#51_13">Is_MinusOne_Pointer</A><FONT COLOR=red><A NAME="53_13"></A></FONT> (<A HREF="terminal_interface-curses-terminfo__adb.htm#51_34">P</A> : <b>in</b> chars_ptr) <b>return</b> Boolean <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="54_12">Weird_Address</A></FONT> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-      <FONT COLOR=red><A NAME="55_7">Invalid_Pointer</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#54_12">Weird_Address</A> := -1;
-      <b>function</b> <FONT COLOR=red><A NAME="56_16">To_Weird</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion
-        (Source =&gt; chars_ptr, Target =&gt; <A HREF="terminal_interface-curses-terminfo__adb.htm#54_12">Weird_Address</A>);
+   <b>function</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#50_13">Is_MinusOne_Pointer</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#50_34">P</A> : <b>in</b> chars_ptr) <b>return</b> Boolean <b>is</b>
+      <b>type</b> Weird_Address <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
+      <FONT COLOR=red><A NAME="54_7">Invalid_Pointer</A></FONT> : <b>constant</b> Weird_Address := -1;
+      <b>function</b> <FONT COLOR=red><A NAME="55_16">To_Weird</A></FONT> <b>is</b> <b>new</b> Ada.Unchecked_Conversion
+        (Source =&gt; chars_ptr, Target =&gt; Weird_Address);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#56_16">To_Weird</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#51_34">P</A>) = <A HREF="terminal_interface-curses-terminfo__adb.htm#55_7">Invalid_Pointer</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#55_16">To_Weird</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#50_34">P</A>) = <A HREF="terminal_interface-curses-terminfo__adb.htm#54_7">Invalid_Pointer</A> <b>then</b>
          <b>return</b> True;
       <b>else</b>
          <b>return</b> False;
       <b>end</b> <b>if</b>;
-   <b>end</b> Is_MinusOne_Pointer;
-   <b>pragma</b> Inline (<A HREF="terminal_interface-curses-terminfo__adb.htm#51_13">Is_MinusOne_Pointer</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#50_13">Is_MinusOne_Pointer</A><A HREF="terminal_interface-curses-terminfo__adb.htm#50_13">;</A>
+   <b>pragma</b> Inline (<A HREF="terminal_interface-curses-terminfo__adb.htm#50_13">Is_MinusOne_Pointer</A>);
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#65_13">Get_Flag</A><FONT COLOR=red><A NAME="68_13"></A></FONT> (<A HREF="terminal_interface-curses-terminfo__ads.htm#65_23">Name</A> : String) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#64_13">Get_Flag</A> (<A HREF="terminal_interface-curses-terminfo__ads.htm#64_23">Name</A> : String) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="70_16">tigetflag</A></FONT> (<FONT COLOR=red><A NAME="70_27">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#70_16">tigetflag</A>);
-      <FONT COLOR=red><A NAME="72_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#65_23">Name</A>'Length);
-      <FONT COLOR=red><A NAME="73_7">Length</A></FONT> : size_t;
+      <b>function</b> <FONT COLOR=red><A NAME="69_16">tigetflag</A></FONT> (<FONT COLOR=red><A NAME="69_27">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#69_16">tigetflag</A>);
+      <FONT COLOR=red><A NAME="71_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#64_23">Name</A>'Length);
+      <FONT COLOR=red><A NAME="72_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#65_23">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#72_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#73_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#70_16">tigetflag</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#72_7">Txt</A>) = <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (<A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_True</A>) <b>then</b>
+      To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#64_23">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#71_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#72_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#69_16">tigetflag</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#71_7">Txt</A>) = <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (<A HREF="terminal_interface-curses-aux__ads.htm#74_4">Curses_True</A>) <b>then</b>
          <b>return</b> True;
       <b>else</b>
          <b>return</b> False;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Flag;
+   <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#64_13">Get_Flag</A><A HREF="terminal_interface-curses-terminfo__ads.htm#64_13">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#58_14">Get_String</A><FONT COLOR=red><A NAME="84_14"></A></FONT> (<A HREF="terminal_interface-curses-terminfo__ads.htm#58_26">Name</A>   : String;
-                         <A HREF="terminal_interface-curses-terminfo__ads.htm#59_26">Value</A>  : <b>out</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#55_9">Terminfo_String</A>;
-                         <A HREF="terminal_interface-curses-terminfo__ads.htm#60_26">Result</A> : <b>out</b> Boolean)
+   <b>procedure</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#57_14">Get_String</A><FONT COLOR=red><A NAME="83_14"></A></FONT> (<A HREF="terminal_interface-curses-terminfo__ads.htm#57_26">Name</A>   : String;
+                         <A HREF="terminal_interface-curses-terminfo__ads.htm#58_26">Value</A>  : <b>out</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#54_9">Terminfo_String</A>;
+                         <A HREF="terminal_interface-curses-terminfo__ads.htm#59_26">Result</A> : <b>out</b> Boolean)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="88_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="88_26">id</A></FONT> : char_array) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#88_16">tigetstr</A>, "tigetstr");
-      <FONT COLOR=red><A NAME="90_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#58_26">Name</A>'Length);
-      <FONT COLOR=red><A NAME="91_7">Length</A></FONT> : size_t;
-      <FONT COLOR=red><A NAME="92_7">Txt2</A></FONT> : chars_ptr;
+      <b>function</b> <FONT COLOR=red><A NAME="87_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="87_26">id</A></FONT> : char_array) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#87_16">tigetstr</A>, "tigetstr");
+      <FONT COLOR=red><A NAME="89_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#57_26">Name</A>'Length);
+      <FONT COLOR=red><A NAME="90_7">Length</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="91_7">Txt2</A></FONT> : chars_ptr;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#58_26">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#90_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#91_7">Length</A>);
-      <A HREF="terminal_interface-curses-terminfo__adb.htm#92_7">Txt2</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#88_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#90_7">Txt</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#92_7">Txt2</A> = Null_Ptr <b>then</b>
-         <A HREF="terminal_interface-curses-terminfo__ads.htm#60_26">Result</A> := False;
-      <b>elsif</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#51_13">Is_MinusOne_Pointer</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#92_7">Txt2</A>) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#57_26">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#89_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#90_7">Length</A>);
+      <A HREF="terminal_interface-curses-terminfo__adb.htm#91_7">Txt2</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#87_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#89_7">Txt</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#91_7">Txt2</A> = Null_Ptr <b>then</b>
+         <A HREF="terminal_interface-curses-terminfo__ads.htm#59_26">Result</A> := False;
+      <b>elsif</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#50_13">Is_MinusOne_Pointer</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#91_7">Txt2</A>) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses-terminfo__ads.htm#59_26">Value</A>  := <A HREF="terminal_interface-curses-terminfo__ads.htm#55_9">Terminfo_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#92_7">Txt2</A>));
-         <A HREF="terminal_interface-curses-terminfo__ads.htm#60_26">Result</A> := True;
+         <A HREF="terminal_interface-curses-terminfo__ads.htm#58_26">Value</A>  := <A HREF="terminal_interface-curses-terminfo__ads.htm#54_9">Terminfo_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#91_7">Txt2</A>));
+         <A HREF="terminal_interface-curses-terminfo__ads.htm#59_26">Result</A> := True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_String;
+   <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#57_14">Get_String</A><A HREF="terminal_interface-curses-terminfo__ads.htm#57_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#61_13">Has_String</A><FONT COLOR=red><A NAME="107_13"></A></FONT> (<A HREF="terminal_interface-curses-terminfo__ads.htm#61_25">Name</A> : String) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#60_13">Has_String</A> (<A HREF="terminal_interface-curses-terminfo__ads.htm#60_25">Name</A> : String) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="109_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="109_26">id</A></FONT> : char_array) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#109_16">tigetstr</A>, "tigetstr");
-      <FONT COLOR=red><A NAME="111_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#61_25">Name</A>'Length);
-      <FONT COLOR=red><A NAME="112_7">Length</A></FONT> : size_t;
-      <FONT COLOR=red><A NAME="113_7">Txt2</A></FONT> : chars_ptr;
+      <b>function</b> <FONT COLOR=red><A NAME="108_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="108_26">id</A></FONT> : char_array) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#108_16">tigetstr</A>, "tigetstr");
+      <FONT COLOR=red><A NAME="110_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#60_25">Name</A>'Length);
+      <FONT COLOR=red><A NAME="111_7">Length</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="112_7">Txt2</A></FONT> : chars_ptr;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#61_25">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#111_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#112_7">Length</A>);
-      <A HREF="terminal_interface-curses-terminfo__adb.htm#113_7">Txt2</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#109_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#111_7">Txt</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#113_7">Txt2</A> = Null_Ptr <b>then</b>
+      To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#60_25">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#110_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#111_7">Length</A>);
+      <A HREF="terminal_interface-curses-terminfo__adb.htm#112_7">Txt2</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#108_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#110_7">Txt</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#112_7">Txt2</A> = Null_Ptr <b>then</b>
          <b>return</b> False;
-      <b>elsif</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#51_13">Is_MinusOne_Pointer</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#113_7">Txt2</A>) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>elsif</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#50_13">Is_MinusOne_Pointer</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#112_7">Txt2</A>) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Has_String;
+   <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#60_13">Has_String</A><A HREF="terminal_interface-curses-terminfo__ads.htm#60_13">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#69_13">Get_Number</A><FONT COLOR=red><A NAME="127_13"></A></FONT> (<A HREF="terminal_interface-curses-terminfo__ads.htm#69_25">Name</A> : String) <b>return</b> Integer <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="128_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="128_26">s</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#128_16">tigetstr</A>);
-      <FONT COLOR=red><A NAME="130_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#69_25">Name</A>'Length);
-      <FONT COLOR=red><A NAME="131_7">Length</A></FONT> : size_t;
+   <b>function</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#68_13">Get_Number</A> (<A HREF="terminal_interface-curses-terminfo__ads.htm#68_25">Name</A> : String) <b>return</b> Integer <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="127_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="127_26">s</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#127_16">tigetstr</A>);
+      <FONT COLOR=red><A NAME="129_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#68_25">Name</A>'Length);
+      <FONT COLOR=red><A NAME="130_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#69_25">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#130_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#131_7">Length</A>);
-      <b>return</b> Integer (<A HREF="terminal_interface-curses-terminfo__adb.htm#128_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#130_7">Txt</A>));
-   <b>end</b> Get_Number;
+      To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#68_25">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#129_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#130_7">Length</A>);
+      <b>return</b> Integer (<A HREF="terminal_interface-curses-terminfo__adb.htm#127_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#129_7">Txt</A>));
+   <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#68_13">Get_Number</A><A HREF="terminal_interface-curses-terminfo__ads.htm#68_13">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#77_14">Put_String</A><FONT COLOR=red><A NAME="138_14"></A></FONT> (<A HREF="terminal_interface-curses-terminfo__ads.htm#77_26">Str</A>    : <A HREF="terminal_interface-curses-terminfo__ads.htm#55_9">Terminfo_String</A>;
-                         <A HREF="terminal_interface-curses-terminfo__ads.htm#78_26">affcnt</A> : Natural := 1;
-                         <A HREF="terminal_interface-curses-terminfo__ads.htm#79_26">putc</A>   : <A HREF="terminal_interface-curses-terminfo__ads.htm#72_9">putctype</A> := <b>null</b>) <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="141_16">tputs</A></FONT> (<FONT COLOR=red><A NAME="141_23">str</A></FONT>    : char_array;
-                      <FONT COLOR=red><A NAME="142_23">affcnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                      <FONT COLOR=red><A NAME="143_23">putc</A></FONT>   : <A HREF="terminal_interface-curses-terminfo__ads.htm#72_9">putctype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="144_16">putp</A></FONT> (<FONT COLOR=red><A NAME="144_22">str</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#141_16">tputs</A>);
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#144_16">putp</A>);
-      <FONT COLOR=red><A NAME="147_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#77_26">Str</A>'Length);
-      <FONT COLOR=red><A NAME="148_7">Length</A></FONT> : size_t;
-      <FONT COLOR=red><A NAME="149_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+   <b>procedure</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#76_14">Put_String</A><FONT COLOR=red><A NAME="137_14"></A></FONT> (<A HREF="terminal_interface-curses-terminfo__ads.htm#76_26">Str</A>    : <A HREF="terminal_interface-curses-terminfo__ads.htm#54_9">Terminfo_String</A>;
+                         <A HREF="terminal_interface-curses-terminfo__ads.htm#77_26">affcnt</A> : Natural := 1;
+                         <A HREF="terminal_interface-curses-terminfo__ads.htm#78_26">putc</A>   : <A HREF="terminal_interface-curses-terminfo__ads.htm#71_9">putctype</A> := <b>null</b>) <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="140_16">tputs</A></FONT> (<FONT COLOR=red><A NAME="140_23">str</A></FONT>    : char_array;
+                      <FONT COLOR=red><A NAME="141_23">affcnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                      <FONT COLOR=red><A NAME="142_23">putc</A></FONT>   : <A HREF="terminal_interface-curses-terminfo__ads.htm#71_9">putctype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="143_16">putp</A></FONT> (<FONT COLOR=red><A NAME="143_22">str</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#140_16">tputs</A>);
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-terminfo__adb.htm#143_16">putp</A>);
+      <FONT COLOR=red><A NAME="146_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#76_26">Str</A>'Length);
+      <FONT COLOR=red><A NAME="147_7">Length</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="148_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      To_C (String (<A HREF="terminal_interface-curses-terminfo__ads.htm#77_26">Str</A>), <A HREF="terminal_interface-curses-terminfo__adb.htm#147_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#148_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#79_26">putc</A> = <b>null</b> <b>then</b>
-         <A HREF="terminal_interface-curses-terminfo__adb.htm#149_7">Err</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#144_16">putp</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#147_7">Txt</A>);
+      To_C (String (<A HREF="terminal_interface-curses-terminfo__ads.htm#76_26">Str</A>), <A HREF="terminal_interface-curses-terminfo__adb.htm#146_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#147_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#78_26">putc</A> = <b>null</b> <b>then</b>
+         <A HREF="terminal_interface-curses-terminfo__adb.htm#148_7">Err</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#143_16">putp</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#146_7">Txt</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses-terminfo__adb.htm#149_7">Err</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#141_16">tputs</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#147_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses-terminfo__ads.htm#78_26">affcnt</A>), <A HREF="terminal_interface-curses-terminfo__ads.htm#79_26">putc</A>);
+         <A HREF="terminal_interface-curses-terminfo__adb.htm#148_7">Err</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#140_16">tputs</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#146_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses-terminfo__ads.htm#77_26">affcnt</A>), <A HREF="terminal_interface-curses-terminfo__ads.htm#78_26">putc</A>);
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#149_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#148_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Put_String;
+   <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#76_14">Put_String</A><A HREF="terminal_interface-curses-terminfo__ads.htm#76_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Terminfo;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#44_35">Terminfo</A><A HREF="terminal_interface-curses-terminfo__ads.htm#44_35">;</A>
+</PRE></BODY></HTML>
index b75149e6ab690aab8f2e4e163e254f2b09768d91..4cd242a7f1ac7de140b020b22a9a2f69e0962d01 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.2 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.3 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__adb.htm#48_40">Terminfo</A><FONT COLOR=red><A NAME="45_35"></A></FONT> <b>is</b>
-   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#45_35">Terminfo</A>);
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<FONT COLOR=red><A NAME="44_35">Terminfo</A></FONT> <b>is</b>
+   <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#44_35">Terminfo</A>);
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  | Man page curs_terminfo.3x</EM></FONT>
    <FONT COLOR=green><EM>--                    restartterm, tparm, putp, vidputs,  vidattr,</EM></FONT>
    <FONT COLOR=green><EM>--                    mvcur</EM></FONT>
 
-   <b>type</b> <FONT COLOR=red><A NAME="55_9">Terminfo_String</A></FONT> <b>is</b> <b>new</b> String;
+   <b>type</b> <FONT COLOR=red><A NAME="54_9">Terminfo_String</A></FONT> <b>is</b> <b>new</b> String;
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#84_14">Get_String</A><FONT COLOR=red><A NAME="58_14"></A></FONT> (<FONT COLOR=red><A NAME="58_26">Name</A></FONT>   : String;
-                         <FONT COLOR=red><A NAME="59_26">Value</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#55_9">Terminfo_String</A>;
-                         <FONT COLOR=red><A NAME="60_26">Result</A></FONT> : <b>out</b> Boolean);
-   <b>function</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#107_13">Has_String</A><FONT COLOR=red><A NAME="61_13"></A></FONT> (<FONT COLOR=red><A NAME="61_25">Name</A></FONT> : String) <b>return</b> Boolean;
+   <b>procedure</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#83_14">Get_String</A><FONT COLOR=red><A NAME="57_14"></A></FONT> (<FONT COLOR=red><A NAME="57_26">Name</A></FONT>   : String;
+                         <FONT COLOR=red><A NAME="58_26">Value</A></FONT>  : <b>out</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#54_9">Terminfo_String</A>;
+                         <FONT COLOR=red><A NAME="59_26">Result</A></FONT> : <b>out</b> Boolean);
+   <b>function</b> <FONT COLOR=red><A NAME="60_13">Has_String</A></FONT> (<FONT COLOR=red><A NAME="60_25">Name</A></FONT> : String) <b>return</b> Boolean;
    <FONT COLOR=green><EM>--  AKA: tigetstr()</EM></FONT>
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#68_13">Get_Flag</A><FONT COLOR=red><A NAME="65_13"></A></FONT> (<FONT COLOR=red><A NAME="65_23">Name</A></FONT> : String) <b>return</b> Boolean;
+   <b>function</b> <FONT COLOR=red><A NAME="64_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="64_23">Name</A></FONT> : String) <b>return</b> Boolean;
    <FONT COLOR=green><EM>--  AKA: tigetflag()</EM></FONT>
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#127_13">Get_Number</A><FONT COLOR=red><A NAME="69_13"></A></FONT> (<FONT COLOR=red><A NAME="69_25">Name</A></FONT> : String) <b>return</b> Integer;
+   <b>function</b> <FONT COLOR=red><A NAME="68_13">Get_Number</A></FONT> (<FONT COLOR=red><A NAME="68_25">Name</A></FONT> : String) <b>return</b> Integer;
    <FONT COLOR=green><EM>--  AKA: tigetnum()</EM></FONT>
 
-   <b>type</b> <FONT COLOR=red><A NAME="72_9">putctype</A></FONT> <b>is</b> <b>access</b> <b>function</b> (<FONT COLOR=red><A NAME="72_38">c</A></FONT> : <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int)
+   <b>type</b> <FONT COLOR=red><A NAME="71_9">putctype</A></FONT> <b>is</b> <b>access</b> <b>function</b> (<FONT COLOR=red><A NAME="71_38">c</A></FONT> : <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int)
                                     <b>return</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int;
-   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-terminfo__ads.htm#72_9">putctype</A>);
+   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-terminfo__ads.htm#71_9">putctype</A>);
 
    <FONT COLOR=green><EM>--  |</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#138_14">Put_String</A><FONT COLOR=red><A NAME="77_14"></A></FONT> (<FONT COLOR=red><A NAME="77_26">Str</A></FONT>    : <A HREF="terminal_interface-curses-terminfo__ads.htm#55_9">Terminfo_String</A>;
-                         <FONT COLOR=red><A NAME="78_26">affcnt</A></FONT> : Natural := 1;
-                         <FONT COLOR=red><A NAME="79_26">putc</A></FONT>   : <A HREF="terminal_interface-curses-terminfo__ads.htm#72_9">putctype</A> := <b>null</b>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#137_14">Put_String</A><FONT COLOR=red><A NAME="76_14"></A></FONT> (<FONT COLOR=red><A NAME="76_26">Str</A></FONT>    : <A HREF="terminal_interface-curses-terminfo__ads.htm#54_9">Terminfo_String</A>;
+                         <FONT COLOR=red><A NAME="77_26">affcnt</A></FONT> : Natural := 1;
+                         <FONT COLOR=red><A NAME="78_26">putc</A></FONT>   : <A HREF="terminal_interface-curses-terminfo__ads.htm#71_9">putctype</A> := <b>null</b>);
    <FONT COLOR=green><EM>--  AKA: tputs()</EM></FONT>
 
-<b>end</b> Terminal_Interface.Curses.Terminfo;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#44_35">Terminfo</A><A HREF="terminal_interface-curses-terminfo__ads.htm#44_35">;</A>
+</PRE></BODY></HTML>
index ac4415cdb27bc1f51c97e447d5683fbcb4111a97..09cbf10ad03a5e9445039e0fa4e3d043ae0b9332 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A><FONT COLOR=red><A NAME="42_48"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A> <b>is</b>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_14">Put_Buf</A><FONT COLOR=red><A NAME="44_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Buf</A>    : <b>in</b> String;
-      <A HREF="terminal_interface-curses-text_io-aux__ads.htm#51_7">Width</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>;
-      <A HREF="terminal_interface-curses-text_io-aux__ads.htm#52_7">Signal</A> : <b>in</b> Boolean := True;
-      <A HREF="terminal_interface-curses-text_io-aux__ads.htm#53_7">Ljust</A>  : <b>in</b> Boolean := False)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#47_14">Put_Buf</A><FONT COLOR=red><A NAME="43_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Buf</A>    : <b>in</b> String;
+      <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Width</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>;
+      <A HREF="terminal_interface-curses-text_io-aux__ads.htm#51_7">Signal</A> : <b>in</b> Boolean := True;
+      <A HREF="terminal_interface-curses-text_io-aux__ads.htm#52_7">Ljust</A>  : <b>in</b> Boolean := False)
    <b>is</b>
-      <FONT COLOR=red><A NAME="51_7">L</A></FONT>   : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>;
-      <FONT COLOR=red><A NAME="52_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>;
-      <FONT COLOR=red><A NAME="53_7">W</A></FONT>   : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#51_7">Width</A>;
-      <FONT COLOR=red><A NAME="54_7">LC</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="55_7">CC</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
-      <FONT COLOR=red><A NAME="56_7">Y</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="57_7">X</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="50_7">L</A></FONT>   : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>;
+      <FONT COLOR=red><A NAME="51_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>;
+      <FONT COLOR=red><A NAME="52_7">W</A></FONT>   : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Width</A>;
+      <FONT COLOR=red><A NAME="53_7">LC</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="54_7">CC</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
+      <FONT COLOR=red><A NAME="55_7">Y</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="56_7">X</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
 
-      <b>procedure</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#61_17">Output</A><FONT COLOR=red><A NAME="59_17"></A></FONT> (<FONT COLOR=red><A NAME="59_25">From</A></FONT>, <FONT COLOR=red><A NAME="59_31">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>);
+      <b>procedure</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#60_17">Output</A><FONT COLOR=red><A NAME="58_17"></A></FONT> (<FONT COLOR=red><A NAME="58_25">From</A></FONT>, <FONT COLOR=red><A NAME="58_31">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>);
 
-      <b>procedure</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#59_17">Output</A><FONT COLOR=red><A NAME="61_17"></A></FONT> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#59_25">From</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#59_31">To</A> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>)
+      <b>procedure</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#58_17">Output</A><FONT COLOR=red><A NAME="60_17"></A></FONT> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#58_25">From</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#58_31">To</A> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>)
       <b>is</b>
       <b>begin</b>
-         <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A> &gt; 0 <b>then</b>
-            <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">W</A> = 0 <b>then</b>
-               <A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">W</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A>;
+         <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A> &gt; 0 <b>then</b>
+            <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">W</A> = 0 <b>then</b>
+               <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">W</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A>;
             <b>end</b> <b>if</b>;
-            <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A> &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">W</A> <b>then</b>
+            <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A> &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">W</A> <b>then</b>
                <FONT COLOR=green><EM>--  LRM A10.6 (7) says this</EM></FONT>
-               <A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">W</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A>;
+               <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">W</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A>;
             <b>end</b> <b>if</b>;
 
-            <b>pragma</b> Assert (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A> &lt;= <A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">W</A>);
-            <A HREF="terminal_interface-curses__ads.htm#1222_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#54_7">LC</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#55_7">CC</A>);
-            <b>if</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A>) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#55_7">CC</A> <b>then</b>
-               <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#52_7">Signal</A> <b>then</b>
-                  <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#135_4">Layout_Error</A>;
+            <b>pragma</b> Assert (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A> &lt;= <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">W</A>);
+            <A HREF="terminal_interface-curses__ads.htm#1221_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">LC</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#54_7">CC</A>);
+            <b>if</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A>) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#54_7">CC</A> <b>then</b>
+               <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#51_7">Signal</A> <b>then</b>
+                  <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#134_4">Layout_Error</A>;
                <b>else</b>
                   <b>return</b>;
                <b>end</b> <b>if</b>;
             <b>else</b>
-               <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A> &lt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">W</A> <b>and</b> <b>then</b> <b>not</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#53_7">Ljust</A> <b>then</b>
+               <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A> &lt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">W</A> <b>and</b> <b>then</b> <b>not</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#52_7">Ljust</A> <b>then</b>
                   <b>declare</b>
-                     <FONT COLOR=red><A NAME="84_22">Filler</A></FONT> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A>))
+                     <FONT COLOR=red><A NAME="83_22">Filler</A></FONT> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A>))
                        := (<b>others</b> =&gt; ' ');
                   <b>begin</b>
-                     <A HREF="terminal_interface-curses-text_io__ads.htm#116_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#84_22">Filler</A>);
+                     <A HREF="terminal_interface-curses-text_io__ads.htm#115_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#83_22">Filler</A>);
                   <b>end</b>;
                <b>end</b> <b>if</b>;
-               <A HREF="terminal_interface-curses__ads.htm#1238_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#56_7">Y</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#57_7">X</A>);
-               <b>if</b> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#57_7">X</A> + <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A>)) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#55_7">CC</A> <b>then</b>
-                  <A HREF="terminal_interface-curses-text_io__ads.htm#87_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Win</A>);
+               <A HREF="terminal_interface-curses__ads.htm#1237_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#55_7">Y</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#56_7">X</A>);
+               <b>if</b> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#56_7">X</A> + <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A>)) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#54_7">CC</A> <b>then</b>
+                  <A HREF="terminal_interface-curses-text_io__ads.htm#86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_7">Win</A>);
                <b>end</b> <b>if</b>;
-               <A HREF="terminal_interface-curses-text_io__ads.htm#116_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#59_25">From</A> .. <A HREF="terminal_interface-curses-text_io-aux__adb.htm#59_31">To</A>));
-               <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A> &lt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">W</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#53_7">Ljust</A> <b>then</b>
+               <A HREF="terminal_interface-curses-text_io__ads.htm#115_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#58_25">From</A> .. <A HREF="terminal_interface-curses-text_io-aux__adb.htm#58_31">To</A>));
+               <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A> &lt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">W</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#52_7">Ljust</A> <b>then</b>
                   <b>declare</b>
-                     <FONT COLOR=red><A NAME="97_22">Filler</A></FONT> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A>))
+                     <FONT COLOR=red><A NAME="96_22">Filler</A></FONT> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A>))
                        := (<b>others</b> =&gt; ' ');
                   <b>begin</b>
-                     <A HREF="terminal_interface-curses-text_io__ads.htm#116_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#97_22">Filler</A>);
+                     <A HREF="terminal_interface-curses-text_io__ads.htm#115_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#96_22">Filler</A>);
                   <b>end</b>;
                <b>end</b> <b>if</b>;
             <b>end</b> <b>if</b>;
          <b>end</b> <b>if</b>;
-      <b>end</b> Output;
+      <b>end</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#58_17">Output</A><A HREF="terminal_interface-curses-text_io-aux__adb.htm#58_17">;</A>
 
    <b>begin</b>
-      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Win</A> /= <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#53_7">Ljust</A> <b>then</b>
-         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A> := 1;
-         <b>for</b> <FONT COLOR=red><A NAME="111_14">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Buf</A>'Length <b>loop</b>
-            <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A>) = ' ';
-            <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A> + 1;
+      <b>pragma</b> Assert (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_7">Win</A> /= <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#52_7">Ljust</A> <b>then</b>
+         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A> := 1;
+         <b>for</b> <FONT COLOR=red><A NAME="110_14">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Buf</A>'Length <b>loop</b>
+            <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A>) = ' ';
+            <A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A> + 1;
          <b>end</b> <b>loop</b>;
-         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A> - 1;
-         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#59_17">Output</A> (1, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A>);
+         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A> - 1;
+         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#58_17">Output</A> (1, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A>);
       <b>else</b>  <FONT COLOR=green><EM>-- input buffer is not left justified</EM></FONT>
-         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Buf</A>'Length;
-         <b>for</b> <FONT COLOR=red><A NAME="119_14">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Buf</A>'Length <b>loop</b>
-            <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A>) = ' ';
-            <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A> - 1;
+         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Buf</A>'Length;
+         <b>for</b> <FONT COLOR=red><A NAME="118_14">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Buf</A>'Length <b>loop</b>
+            <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A>) = ' ';
+            <A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A> - 1;
          <b>end</b> <b>loop</b>;
-         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#52_7">Len</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Buf</A>'Length - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A>;
-         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#59_17">Output</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">L</A> + 1, <A HREF="terminal_interface-curses-text_io-aux__ads.htm#50_7">Buf</A>'Length);
+         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#51_7">Len</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Buf</A>'Length - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A>;
+         <A HREF="terminal_interface-curses-text_io-aux__adb.htm#58_17">Output</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#50_7">L</A> + 1, <A HREF="terminal_interface-curses-text_io-aux__ads.htm#49_7">Buf</A>'Length);
       <b>end</b> <b>if</b>;
-   <b>end</b> Put_Buf;
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#47_14">Put_Buf</A><A HREF="terminal_interface-curses-text_io-aux__ads.htm#47_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Aux;
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A><A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">;</A>
 
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index 31b6806dbae782ded7563e1341497069d295a3a8..c64199ee15bbe94bdb51f7680d9d821ca75726aa 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.12 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>private</b> <b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__adb.htm#42_48">Aux</A><FONT COLOR=red><A NAME="42_51"></A></FONT> <b>is</b>
+<b>private</b> <b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<FONT COLOR=red><A NAME="41_51">Aux</A></FONT> <b>is</b>
    <FONT COLOR=green><EM>--  pragma Preelaborate (Aux);</EM></FONT>
 
    <FONT COLOR=green><EM>--  This routine is called from the Text_IO output routines for numeric</EM></FONT>
    <FONT COLOR=green><EM>--  and enumeration types.</EM></FONT>
    <FONT COLOR=green><EM>--</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#44_14">Put_Buf</A><FONT COLOR=red><A NAME="48_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="49_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;               <FONT COLOR=green><EM>-- The output window</EM></FONT>
-      <FONT COLOR=red><A NAME="50_7">Buf</A></FONT>    : <b>in</b> String;               <FONT COLOR=green><EM>-- The buffer containing the text</EM></FONT>
-      <FONT COLOR=red><A NAME="51_7">Width</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>;                <FONT COLOR=green><EM>-- The width of the output field</EM></FONT>
-      <FONT COLOR=red><A NAME="52_7">Signal</A></FONT> : <b>in</b> Boolean := True;      <FONT COLOR=green><EM>-- If true, we raise Layout_Error</EM></FONT>
-      <FONT COLOR=red><A NAME="53_7">Ljust</A></FONT>  : <b>in</b> Boolean := False);    <FONT COLOR=green><EM>-- The Buf is left justified</EM></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#43_14">Put_Buf</A><FONT COLOR=red><A NAME="47_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="48_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;               <FONT COLOR=green><EM>-- The output window</EM></FONT>
+      <FONT COLOR=red><A NAME="49_7">Buf</A></FONT>    : <b>in</b> String;               <FONT COLOR=green><EM>-- The buffer containing the text</EM></FONT>
+      <FONT COLOR=red><A NAME="50_7">Width</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>;                <FONT COLOR=green><EM>-- The width of the output field</EM></FONT>
+      <FONT COLOR=red><A NAME="51_7">Signal</A></FONT> : <b>in</b> Boolean := True;      <FONT COLOR=green><EM>-- If true, we raise Layout_Error</EM></FONT>
+      <FONT COLOR=red><A NAME="52_7">Ljust</A></FONT>  : <b>in</b> Boolean := False);    <FONT COLOR=green><EM>-- The Buf is left justified</EM></FONT>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Aux;
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A><A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">;</A>
 
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index 8aed31a15aa069bf4fd3dba763455631e56d1071..d746d072b2455206b060e19356b8e90b948133ce 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#45_43">Float_IO</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#44_43">Float_IO</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#47_43">Complex_IO</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#46_43">Complex_IO</A> <b>is</b>
 
-   <b>package</b> <FONT COLOR=red><A NAME="46_12">FIO</A></FONT> <b>is</b> <b>new</b>
-     <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#45_43">Float_IO</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#45_17">Complex_Types</A>.Real'Base);
+   <b>package</b> <FONT COLOR=red><A NAME="45_12">FIO</A></FONT> <b>is</b> <b>new</b>
+     <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#44_43">Float_IO</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#44_17">Complex_Types</A>.Real'Base);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#55_14">Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#56_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#57_7">Item</A> : <b>in</b> Complex;
-      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#58_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#51_4">Default_Fore</A>;
-      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#59_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#52_4">Default_Aft</A>;
-      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#60_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#53_4">Default_Exp</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#54_14">Put</A><FONT COLOR=red><A NAME="48_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#55_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#56_7">Item</A> : <b>in</b> Complex;
+      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#57_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#50_4">Default_Fore</A>;
+      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#58_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#51_4">Default_Aft</A>;
+      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#59_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#52_4">Default_Exp</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#109_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#56_7">Win</A>, '(');
-      <A HREF="terminal_interface-curses-text_io-complex_io__adb.htm#46_12">FIO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#58_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#56_7">Win</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#57_7">Item</A>.Re, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#58_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#59_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#60_7">Exp</A>);
-      <A HREF="terminal_interface-curses-text_io__ads.htm#109_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#56_7">Win</A>, ',');
-      <A HREF="terminal_interface-curses-text_io-complex_io__adb.htm#46_12">FIO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#58_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#56_7">Win</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#57_7">Item</A>.Im, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#58_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#59_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#60_7">Exp</A>);
-      <A HREF="terminal_interface-curses-text_io__ads.htm#109_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#56_7">Win</A>, ')');
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#108_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#55_7">Win</A>, '(');
+      <A HREF="terminal_interface-curses-text_io-complex_io__adb.htm#45_12">FIO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#57_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#55_7">Win</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#56_7">Item</A>.Re, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#57_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#58_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#59_7">Exp</A>);
+      <A HREF="terminal_interface-curses-text_io__ads.htm#108_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#55_7">Win</A>, ',');
+      <A HREF="terminal_interface-curses-text_io-complex_io__adb.htm#45_12">FIO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#57_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#55_7">Win</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#56_7">Item</A>.Im, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#57_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#58_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#59_7">Exp</A>);
+      <A HREF="terminal_interface-curses-text_io__ads.htm#108_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#55_7">Win</A>, ')');
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#54_14">Put</A><A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#54_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#62_14">Put</A><FONT COLOR=red><A NAME="64_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#63_7">Item</A> : <b>in</b> Complex;
-      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#64_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#51_4">Default_Fore</A>;
-      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#65_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#52_4">Default_Aft</A>;
-      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#66_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#53_4">Default_Exp</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#61_14">Put</A><FONT COLOR=red><A NAME="63_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#62_7">Item</A> : <b>in</b> Complex;
+      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#63_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#50_4">Default_Fore</A>;
+      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#64_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#51_4">Default_Aft</A>;
+      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#65_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#52_4">Default_Exp</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#55_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#63_7">Item</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#64_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#65_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#66_7">Exp</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#54_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#62_7">Item</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#63_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#64_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#65_7">Exp</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#61_14">Put</A><A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#61_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Complex_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#46_43">Complex_IO</A><A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#46_43">;</A>
+</PRE></BODY></HTML>
index 2d9149e00d3112442088de9fabbe47975f1cd93c..fda930e8a0bbad8fe4cb493ceee3410a6e256560 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Numerics.Generic_Complex_Types;
 
 <b>generic</b>
-   <b>with</b> <b>package</b> <FONT COLOR=red><A NAME="45_17">Complex_Types</A></FONT> <b>is</b> <b>new</b> Ada.Numerics.Generic_Complex_Types (&lt;&gt;);
+   <b>with</b> <b>package</b> <FONT COLOR=red><A NAME="44_17">Complex_Types</A></FONT> <b>is</b> <b>new</b> Ada.Numerics.Generic_Complex_Types (&lt;&gt;);
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<FONT COLOR=red><A NAME="47_43">Complex_IO</A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<FONT COLOR=red><A NAME="46_43">Complex_IO</A></FONT> <b>is</b>
 
-   <b>use</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#45_17">Complex_Types</A>;
+   <b>use</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#44_17">Complex_Types</A>;
 
-   <FONT COLOR=red><A NAME="51_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := 2;
-   <FONT COLOR=red><A NAME="52_4">Default_Aft</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := Real'<b>Digits</b> - 1;
-   <FONT COLOR=red><A NAME="53_4">Default_Exp</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := 3;
+   <FONT COLOR=red><A NAME="50_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := 2;
+   <FONT COLOR=red><A NAME="51_4">Default_Aft</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := Real'<b>Digits</b> - 1;
+   <FONT COLOR=red><A NAME="52_4">Default_Exp</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := 3;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-complex_io__adb.htm#49_14">Put</A><FONT COLOR=red><A NAME="55_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="56_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <FONT COLOR=red><A NAME="57_7">Item</A></FONT> : <b>in</b> Complex;
-      <FONT COLOR=red><A NAME="58_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#51_4">Default_Fore</A>;
-      <FONT COLOR=red><A NAME="59_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#52_4">Default_Aft</A>;
-      <FONT COLOR=red><A NAME="60_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#53_4">Default_Exp</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-complex_io__adb.htm#48_14">Put</A><FONT COLOR=red><A NAME="54_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="55_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <FONT COLOR=red><A NAME="56_7">Item</A></FONT> : <b>in</b> Complex;
+      <FONT COLOR=red><A NAME="57_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#50_4">Default_Fore</A>;
+      <FONT COLOR=red><A NAME="58_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#51_4">Default_Aft</A>;
+      <FONT COLOR=red><A NAME="59_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#52_4">Default_Exp</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-complex_io__adb.htm#64_14">Put</A><FONT COLOR=red><A NAME="62_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="63_7">Item</A></FONT> : <b>in</b> Complex;
-      <FONT COLOR=red><A NAME="64_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#51_4">Default_Fore</A>;
-      <FONT COLOR=red><A NAME="65_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#52_4">Default_Aft</A>;
-      <FONT COLOR=red><A NAME="66_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#53_4">Default_Exp</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-complex_io__adb.htm#63_14">Put</A><FONT COLOR=red><A NAME="61_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="62_7">Item</A></FONT> : <b>in</b> Complex;
+      <FONT COLOR=red><A NAME="63_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#50_4">Default_Fore</A>;
+      <FONT COLOR=red><A NAME="64_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#51_4">Default_Aft</A>;
+      <FONT COLOR=red><A NAME="65_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#52_4">Default_Exp</A>);
 
 <b>private</b>
    <b>pragma</b> Inline (Put);
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Complex_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#46_43">Complex_IO</A><A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#46_43">;</A>
+</PRE></BODY></HTML>
index 9cfb1ab3bf56d3442f7282973a206145985c7a79..c353ad599af4e78d8d8a2fd98c61cdfb0e13373e 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Text_IO;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#45_43">Decimal_IO</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#44_43">Decimal_IO</A> <b>is</b>
 
-   <b>package</b> <FONT COLOR=red><A NAME="47_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
-   <b>package</b> <FONT COLOR=red><A NAME="48_12">DIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Decimal_IO (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#43_9">Num</A>);
+   <b>package</b> <FONT COLOR=red><A NAME="46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
+   <b>package</b> <FONT COLOR=red><A NAME="47_12">DIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Decimal_IO (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#42_9">Num</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#51_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#52_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#53_7">Item</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#54_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#47_4">Default_Fore</A>;
-      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#55_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#48_4">Default_Aft</A>;
-      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#56_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#49_4">Default_Exp</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#50_14">Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#51_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#52_7">Item</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#53_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#46_4">Default_Fore</A>;
+      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#54_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#47_4">Default_Aft</A>;
+      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#55_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#48_4">Default_Exp</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="57_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>'Last);
-      <FONT COLOR=red><A NAME="58_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#54_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#55_7">Aft</A>;
+      <FONT COLOR=red><A NAME="56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>'Last);
+      <FONT COLOR=red><A NAME="57_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#54_7">Aft</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#56_7">Exp</A> &gt; 0 <b>then</b>
-         <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#58_7">Len</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#58_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#56_7">Exp</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#55_7">Exp</A> &gt; 0 <b>then</b>
+         <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#57_7">Len</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#57_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#55_7">Exp</A>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#48_12">DIO</A>.Put (<A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#57_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#53_7">Item</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#55_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#56_7">Exp</A>);
-      <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#47_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#52_7">Win</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#57_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#58_7">Len</A>, False);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#47_12">DIO</A>.Put (<A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#52_7">Item</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#54_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#55_7">Exp</A>);
+      <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#47_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#57_7">Len</A>, False);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#50_14">Put</A><A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#50_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#58_14">Put</A><FONT COLOR=red><A NAME="67_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#59_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#60_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#47_4">Default_Fore</A>;
-      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#61_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#48_4">Default_Aft</A>;
-      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#62_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#49_4">Default_Exp</A>) <b>is</b>
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#57_14">Put</A><FONT COLOR=red><A NAME="66_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#58_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#59_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#46_4">Default_Fore</A>;
+      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#60_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#47_4">Default_Aft</A>;
+      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#61_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#48_4">Default_Exp</A>) <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#51_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#59_7">Item</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#60_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#61_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#62_7">Exp</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#58_7">Item</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#59_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#60_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#61_7">Exp</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#57_14">Put</A><A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#57_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Decimal_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#44_43">Decimal_IO</A><A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index 53122850e4c26bfa92e6cb46819202e764d3c77d..3675631bc61afa916f1bc7dfcdf5a8fa8670d48f 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="43_9">Num</A></FONT> <b>is</b> <b>delta</b> &lt;&gt; <b>digits</b> &lt;&gt;;
+   <b>type</b> <FONT COLOR=red><A NAME="42_9">Num</A></FONT> <b>is</b> <b>delta</b> &lt;&gt; <b>digits</b> &lt;&gt;;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<FONT COLOR=red><A NAME="45_43">Decimal_IO</A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<FONT COLOR=red><A NAME="44_43">Decimal_IO</A></FONT> <b>is</b>
 
-   <FONT COLOR=red><A NAME="47_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#43_9">Num</A>'Fore;
-   <FONT COLOR=red><A NAME="48_4">Default_Aft</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#43_9">Num</A>'Aft;
-   <FONT COLOR=red><A NAME="49_4">Default_Exp</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := 0;
+   <FONT COLOR=red><A NAME="46_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#42_9">Num</A>'Fore;
+   <FONT COLOR=red><A NAME="47_4">Default_Aft</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#42_9">Num</A>'Aft;
+   <FONT COLOR=red><A NAME="48_4">Default_Exp</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := 0;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#50_14">Put</A><FONT COLOR=red><A NAME="51_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="52_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <FONT COLOR=red><A NAME="53_7">Item</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="54_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#47_4">Default_Fore</A>;
-      <FONT COLOR=red><A NAME="55_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#48_4">Default_Aft</A>;
-      <FONT COLOR=red><A NAME="56_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#49_4">Default_Exp</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#49_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="51_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <FONT COLOR=red><A NAME="52_7">Item</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="53_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#46_4">Default_Fore</A>;
+      <FONT COLOR=red><A NAME="54_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#47_4">Default_Aft</A>;
+      <FONT COLOR=red><A NAME="55_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#48_4">Default_Exp</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#67_14">Put</A><FONT COLOR=red><A NAME="58_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="59_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="60_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#47_4">Default_Fore</A>;
-      <FONT COLOR=red><A NAME="61_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#48_4">Default_Aft</A>;
-      <FONT COLOR=red><A NAME="62_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#49_4">Default_Exp</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#66_14">Put</A><FONT COLOR=red><A NAME="57_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="58_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="59_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#46_4">Default_Fore</A>;
+      <FONT COLOR=red><A NAME="60_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#47_4">Default_Aft</A>;
+      <FONT COLOR=red><A NAME="61_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#48_4">Default_Exp</A>);
 
 <b>private</b>
    <b>pragma</b> Inline (Put);
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Decimal_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#44_43">Decimal_IO</A><A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index 12fc55553f7e964f6286dc8f4d225379be860c35..3dea5ff963604f7091a7fabbf09210d4e522bc31 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Text_IO;
 <b>with</b> Ada.Characters.Handling; <b>use</b> Ada.Characters.Handling;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#45_43">Enumeration_IO</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#44_43">Enumeration_IO</A> <b>is</b>
 
-   <b>package</b> <FONT COLOR=red><A NAME="48_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
-   <b>package</b> <FONT COLOR=red><A NAME="49_12">EIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Enumeration_IO (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#43_9">Enum</A>);
+   <b>package</b> <FONT COLOR=red><A NAME="47_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
+   <b>package</b> <FONT COLOR=red><A NAME="48_12">EIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Enumeration_IO (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#42_9">Enum</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#50_14">Put</A><FONT COLOR=red><A NAME="51_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#51_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#52_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#43_9">Enum</A>;
-      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#53_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#47_4">Default_Width</A>;
-      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#54_7">Set</A>   : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#54_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#48_4">Default_Setting</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#49_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#50_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#51_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#42_9">Enum</A>;
+      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#52_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#46_4">Default_Width</A>;
+      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#53_7">Set</A>   : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#47_4">Default_Setting</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="57_7">Buf</A></FONT>  : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>'Last);
-      <FONT COLOR=red><A NAME="58_7">Tset</A></FONT> : Ada.Text_IO.Type_Set;
+      <FONT COLOR=red><A NAME="56_7">Buf</A></FONT>  : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>'Last);
+      <FONT COLOR=red><A NAME="57_7">Tset</A></FONT> : Ada.Text_IO.Type_Set;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#54_7">Set</A> /= <A HREF="terminal_interface-curses-text_io__ads.htm#54_46">Mixed_Case</A> <b>then</b>
-         <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#58_7">Tset</A> := Ada.Text_IO.Type_Set'Val (<A HREF="terminal_interface-curses-text_io__ads.htm#54_9">Type_Set</A>'Pos (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#54_7">Set</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#53_7">Set</A> /= <A HREF="terminal_interface-curses-text_io__ads.htm#53_46">Mixed_Case</A> <b>then</b>
+         <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#57_7">Tset</A> := Ada.Text_IO.Type_Set'Val (<A HREF="terminal_interface-curses-text_io__ads.htm#53_9">Type_Set</A>'Pos (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#53_7">Set</A>));
       <b>else</b>
-         <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#58_7">Tset</A> := Ada.Text_IO.Lower_Case;
+         <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#57_7">Tset</A> := Ada.Text_IO.Lower_Case;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#49_12">EIO</A>.Put (<A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#57_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#52_7">Item</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#58_7">Tset</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#54_7">Set</A> = <A HREF="terminal_interface-curses-text_io__ads.htm#54_46">Mixed_Case</A> <b>then</b>
-         <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#57_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#57_7">Buf</A>'First) := To_Upper (<A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#57_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#57_7">Buf</A>'First));
+      <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#48_12">EIO</A>.Put (<A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#51_7">Item</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#57_7">Tset</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#53_7">Set</A> = <A HREF="terminal_interface-curses-text_io__ads.htm#53_46">Mixed_Case</A> <b>then</b>
+         <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#56_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#56_7">Buf</A>'First) := To_Upper (<A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#56_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#56_7">Buf</A>'First));
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#48_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#57_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#53_7">Width</A>, True, True);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#47_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#47_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#50_7">Win</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#52_7">Width</A>, True, True);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#49_14">Put</A><A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#49_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#56_14">Put</A><FONT COLOR=red><A NAME="72_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#57_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#43_9">Enum</A>;
-      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#58_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#47_4">Default_Width</A>;
-      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#59_7">Set</A>   : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#54_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#48_4">Default_Setting</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#55_14">Put</A><FONT COLOR=red><A NAME="71_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#56_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#42_9">Enum</A>;
+      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#57_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#46_4">Default_Width</A>;
+      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#58_7">Set</A>   : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#47_4">Default_Setting</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#57_7">Item</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#58_7">Width</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#59_7">Set</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#49_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#56_7">Item</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#57_7">Width</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#58_7">Set</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#55_14">Put</A><A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#55_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Enumeration_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#44_43">Enumeration_IO</A><A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index 5b0bdaa0ea0c8b9a8a933c892a1eb82b51e17169..52f78f7d54c58bf0a15f44aa62b65cccdafc7e36 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="43_9">Enum</A></FONT> <b>is</b> (&lt;&gt;);
+   <b>type</b> <FONT COLOR=red><A NAME="42_9">Enum</A></FONT> <b>is</b> (&lt;&gt;);
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<FONT COLOR=red><A NAME="45_43">Enumeration_IO</A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<FONT COLOR=red><A NAME="44_43">Enumeration_IO</A></FONT> <b>is</b>
 
-   <FONT COLOR=red><A NAME="47_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := 0;
-   <FONT COLOR=red><A NAME="48_4">Default_Setting</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#54_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#54_46">Mixed_Case</A>;
+   <FONT COLOR=red><A NAME="46_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := 0;
+   <FONT COLOR=red><A NAME="47_4">Default_Setting</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#53_46">Mixed_Case</A>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#51_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="51_7">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <FONT COLOR=red><A NAME="52_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#43_9">Enum</A>;
-      <FONT COLOR=red><A NAME="53_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#47_4">Default_Width</A>;
-      <FONT COLOR=red><A NAME="54_7">Set</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#54_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#48_4">Default_Setting</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#50_14">Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="50_7">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <FONT COLOR=red><A NAME="51_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#42_9">Enum</A>;
+      <FONT COLOR=red><A NAME="52_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#46_4">Default_Width</A>;
+      <FONT COLOR=red><A NAME="53_7">Set</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#47_4">Default_Setting</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#72_14">Put</A><FONT COLOR=red><A NAME="56_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="57_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#43_9">Enum</A>;
-      <FONT COLOR=red><A NAME="58_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#47_4">Default_Width</A>;
-      <FONT COLOR=red><A NAME="59_7">Set</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#54_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#48_4">Default_Setting</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#71_14">Put</A><FONT COLOR=red><A NAME="55_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="56_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#42_9">Enum</A>;
+      <FONT COLOR=red><A NAME="57_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#46_4">Default_Width</A>;
+      <FONT COLOR=red><A NAME="58_7">Set</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#47_4">Default_Setting</A>);
 
 <b>private</b>
    <b>pragma</b> Inline (Put);
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Enumeration_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#44_43">Enumeration_IO</A><A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index 75efa9206657ba51d48a2dbe8f5319cfb897bbbb..d6023c16aed37acc6bd7c7936692e1b1473be5d4 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Text_IO;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#45_43">Fixed_IO</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#44_43">Fixed_IO</A> <b>is</b>
 
-   <b>package</b> <FONT COLOR=red><A NAME="47_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
-   <b>package</b> <FONT COLOR=red><A NAME="48_12">FIXIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Fixed_IO (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#43_9">Num</A>);
+   <b>package</b> <FONT COLOR=red><A NAME="46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
+   <b>package</b> <FONT COLOR=red><A NAME="47_12">FIXIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Fixed_IO (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#42_9">Num</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#51_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#52_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#53_7">Item</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#54_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#47_4">Default_Fore</A>;
-      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#55_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#48_4">Default_Aft</A>;
-      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#56_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#49_4">Default_Exp</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#50_14">Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#51_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#52_7">Item</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#53_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#46_4">Default_Fore</A>;
+      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#54_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#47_4">Default_Aft</A>;
+      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#55_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#48_4">Default_Exp</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="57_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>'Last);
-      <FONT COLOR=red><A NAME="58_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#54_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#55_7">Aft</A>;
+      <FONT COLOR=red><A NAME="56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>'Last);
+      <FONT COLOR=red><A NAME="57_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#54_7">Aft</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#56_7">Exp</A> &gt; 0 <b>then</b>
-         <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#58_7">Len</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#58_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#56_7">Exp</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#55_7">Exp</A> &gt; 0 <b>then</b>
+         <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#57_7">Len</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#57_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#55_7">Exp</A>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#48_12">FIXIO</A>.Put (<A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#57_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#53_7">Item</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#55_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#56_7">Exp</A>);
-      <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#47_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#52_7">Win</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#57_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#58_7">Len</A>, False);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#47_12">FIXIO</A>.Put (<A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#52_7">Item</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#54_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#55_7">Exp</A>);
+      <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#47_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#57_7">Len</A>, False);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#50_14">Put</A><A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#50_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#58_14">Put</A><FONT COLOR=red><A NAME="67_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#59_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#60_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#47_4">Default_Fore</A>;
-      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#61_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#48_4">Default_Aft</A>;
-      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#62_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#49_4">Default_Exp</A>) <b>is</b>
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#57_14">Put</A><FONT COLOR=red><A NAME="66_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#58_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#59_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#46_4">Default_Fore</A>;
+      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#60_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#47_4">Default_Aft</A>;
+      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#61_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#48_4">Default_Exp</A>) <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#51_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#59_7">Item</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#60_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#61_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#62_7">Exp</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#58_7">Item</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#59_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#60_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#61_7">Exp</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#57_14">Put</A><A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#57_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Fixed_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#44_43">Fixed_IO</A><A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index fd159a186e61fa2b19c1853afca48403b52ccbe1..812d80e7aab2d8048d0778acae77e966a97080de 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="43_9">Num</A></FONT> <b>is</b> <b>delta</b> &lt;&gt;;
+   <b>type</b> <FONT COLOR=red><A NAME="42_9">Num</A></FONT> <b>is</b> <b>delta</b> &lt;&gt;;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<FONT COLOR=red><A NAME="45_43">Fixed_IO</A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<FONT COLOR=red><A NAME="44_43">Fixed_IO</A></FONT> <b>is</b>
 
-   <FONT COLOR=red><A NAME="47_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#43_9">Num</A>'Fore;
-   <FONT COLOR=red><A NAME="48_4">Default_Aft</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#43_9">Num</A>'Aft;
-   <FONT COLOR=red><A NAME="49_4">Default_Exp</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := 0;
+   <FONT COLOR=red><A NAME="46_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#42_9">Num</A>'Fore;
+   <FONT COLOR=red><A NAME="47_4">Default_Aft</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#42_9">Num</A>'Aft;
+   <FONT COLOR=red><A NAME="48_4">Default_Exp</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := 0;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#50_14">Put</A><FONT COLOR=red><A NAME="51_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="52_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <FONT COLOR=red><A NAME="53_7">Item</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="54_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#47_4">Default_Fore</A>;
-      <FONT COLOR=red><A NAME="55_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#48_4">Default_Aft</A>;
-      <FONT COLOR=red><A NAME="56_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#49_4">Default_Exp</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#49_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="51_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <FONT COLOR=red><A NAME="52_7">Item</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="53_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#46_4">Default_Fore</A>;
+      <FONT COLOR=red><A NAME="54_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#47_4">Default_Aft</A>;
+      <FONT COLOR=red><A NAME="55_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#48_4">Default_Exp</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#67_14">Put</A><FONT COLOR=red><A NAME="58_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="59_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="60_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#47_4">Default_Fore</A>;
-      <FONT COLOR=red><A NAME="61_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#48_4">Default_Aft</A>;
-      <FONT COLOR=red><A NAME="62_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#49_4">Default_Exp</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#66_14">Put</A><FONT COLOR=red><A NAME="57_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="58_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="59_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#46_4">Default_Fore</A>;
+      <FONT COLOR=red><A NAME="60_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#47_4">Default_Aft</A>;
+      <FONT COLOR=red><A NAME="61_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#48_4">Default_Exp</A>);
 
 <b>private</b>
    <b>pragma</b> Inline (Put);
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Fixed_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#44_43">Fixed_IO</A><A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index 8e0b28b30f3901023401b467d89216f75d93a73d..75769aba5b2db6d651c82798412bebbc4ea9199f 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Text_IO;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#45_43">Float_IO</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#44_43">Float_IO</A> <b>is</b>
 
-   <b>package</b> <FONT COLOR=red><A NAME="47_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
-   <b>package</b> <FONT COLOR=red><A NAME="48_12">FIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Float_IO (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#43_9">Num</A>);
+   <b>package</b> <FONT COLOR=red><A NAME="46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
+   <b>package</b> <FONT COLOR=red><A NAME="47_12">FIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Float_IO (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#42_9">Num</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#51_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#52_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#53_7">Item</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#54_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#47_4">Default_Fore</A>;
-      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#55_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#48_4">Default_Aft</A>;
-      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#56_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#49_4">Default_Exp</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#50_14">Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#51_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#52_7">Item</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#53_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#46_4">Default_Fore</A>;
+      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#54_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#47_4">Default_Aft</A>;
+      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#55_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#48_4">Default_Exp</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="57_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>'Last);
-      <FONT COLOR=red><A NAME="58_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#54_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#55_7">Aft</A>;
+      <FONT COLOR=red><A NAME="56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>'Last);
+      <FONT COLOR=red><A NAME="57_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#54_7">Aft</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#56_7">Exp</A> &gt; 0 <b>then</b>
-         <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#58_7">Len</A> := <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#58_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#56_7">Exp</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#55_7">Exp</A> &gt; 0 <b>then</b>
+         <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#57_7">Len</A> := <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#57_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#55_7">Exp</A>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#48_12">FIO</A>.Put (<A HREF="terminal_interface-curses-text_io-float_io__adb.htm#57_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#53_7">Item</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#55_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#56_7">Exp</A>);
-      <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#47_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#52_7">Win</A>, <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#57_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#58_7">Len</A>, False);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#47_12">FIO</A>.Put (<A HREF="terminal_interface-curses-text_io-float_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#52_7">Item</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#54_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#55_7">Exp</A>);
+      <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#47_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#57_7">Len</A>, False);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#50_14">Put</A><A HREF="terminal_interface-curses-text_io-float_io__ads.htm#50_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#58_14">Put</A><FONT COLOR=red><A NAME="67_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#59_7">Item</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#60_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#47_4">Default_Fore</A>;
-      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#61_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#48_4">Default_Aft</A>;
-      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#62_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#49_4">Default_Exp</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#57_14">Put</A><FONT COLOR=red><A NAME="66_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#58_7">Item</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#59_7">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#46_4">Default_Fore</A>;
+      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#60_7">Aft</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#47_4">Default_Aft</A>;
+      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#61_7">Exp</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#48_4">Default_Exp</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#51_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#59_7">Item</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#60_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#61_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#62_7">Exp</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#58_7">Item</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#59_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#60_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#61_7">Exp</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#57_14">Put</A><A HREF="terminal_interface-curses-text_io-float_io__ads.htm#57_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Float_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#44_43">Float_IO</A><A HREF="terminal_interface-curses-text_io-float_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index 39d1358dfdd1ad57e646d88157f1c8f17f23da44..bb8abaf489f41e516eb782e2ca650a20c37255c3 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="43_9">Num</A></FONT> <b>is</b> <b>digits</b> &lt;&gt;;
+   <b>type</b> <FONT COLOR=red><A NAME="42_9">Num</A></FONT> <b>is</b> <b>digits</b> &lt;&gt;;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<FONT COLOR=red><A NAME="45_43">Float_IO</A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<FONT COLOR=red><A NAME="44_43">Float_IO</A></FONT> <b>is</b>
 
-   <FONT COLOR=red><A NAME="47_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := 2;
-   <FONT COLOR=red><A NAME="48_4">Default_Aft</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#43_9">Num</A>'<b>Digits</b> - 1;
-   <FONT COLOR=red><A NAME="49_4">Default_Exp</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := 3;
+   <FONT COLOR=red><A NAME="46_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := 2;
+   <FONT COLOR=red><A NAME="47_4">Default_Aft</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#42_9">Num</A>'<b>Digits</b> - 1;
+   <FONT COLOR=red><A NAME="48_4">Default_Exp</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := 3;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#50_14">Put</A><FONT COLOR=red><A NAME="51_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="52_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <FONT COLOR=red><A NAME="53_7">Item</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="54_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#47_4">Default_Fore</A>;
-      <FONT COLOR=red><A NAME="55_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#48_4">Default_Aft</A>;
-      <FONT COLOR=red><A NAME="56_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#49_4">Default_Exp</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#49_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="51_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <FONT COLOR=red><A NAME="52_7">Item</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="53_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#46_4">Default_Fore</A>;
+      <FONT COLOR=red><A NAME="54_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#47_4">Default_Aft</A>;
+      <FONT COLOR=red><A NAME="55_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#48_4">Default_Exp</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#67_14">Put</A><FONT COLOR=red><A NAME="58_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="59_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="60_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#47_4">Default_Fore</A>;
-      <FONT COLOR=red><A NAME="61_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#48_4">Default_Aft</A>;
-      <FONT COLOR=red><A NAME="62_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#49_4">Default_Exp</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#66_14">Put</A><FONT COLOR=red><A NAME="57_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="58_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="59_7">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#46_4">Default_Fore</A>;
+      <FONT COLOR=red><A NAME="60_7">Aft</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#47_4">Default_Aft</A>;
+      <FONT COLOR=red><A NAME="61_7">Exp</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#48_4">Default_Exp</A>);
 
 <b>private</b>
    <b>pragma</b> Inline (Put);
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Float_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#44_43">Float_IO</A><A HREF="terminal_interface-curses-text_io-float_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index 1ef1b4ba78056e718169ceb01f84a6a8043b7199..69c321570f8404534ce5bde71c788de821ba718c 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Text_IO;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#45_43">Integer_IO</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#44_43">Integer_IO</A> <b>is</b>
 
-   <b>package</b> <FONT COLOR=red><A NAME="47_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
-   <b>package</b> <FONT COLOR=red><A NAME="48_12">IIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Integer_IO (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#43_9">Num</A>);
+   <b>package</b> <FONT COLOR=red><A NAME="46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
+   <b>package</b> <FONT COLOR=red><A NAME="47_12">IIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Integer_IO (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#42_9">Num</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#50_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#51_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#52_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#53_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#47_4">Default_Width</A>;
-      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#54_7">Base</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#48_4">Default_Base</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#49_14">Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#50_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#51_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#52_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#46_4">Default_Width</A>;
+      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#53_7">Base</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#47_4">Default_Base</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>'Last);
+      <FONT COLOR=red><A NAME="55_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>'Last);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#48_12">IIO</A>.Put (<A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#52_7">Item</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#54_7">Base</A>);
-      <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#47_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#53_7">Width</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#47_12">IIO</A>.Put (<A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#51_7">Item</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#53_7">Base</A>);
+      <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#47_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#50_7">Win</A>, <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#52_7">Width</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#49_14">Put</A><A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#49_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#56_14">Put</A><FONT COLOR=red><A NAME="62_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#57_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#58_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#47_4">Default_Width</A>;
-      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#59_7">Base</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#48_4">Default_Base</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#55_14">Put</A><FONT COLOR=red><A NAME="61_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#56_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#57_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#46_4">Default_Width</A>;
+      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#58_7">Base</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#47_4">Default_Base</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#57_7">Item</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#58_7">Width</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#59_7">Base</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#49_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#56_7">Item</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#57_7">Width</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#58_7">Base</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#55_14">Put</A><A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#55_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Integer_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#44_43">Integer_IO</A><A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index fa07b6377e4105251ca919c8bbf1718257307c80..a06d5316494c0883a41618ecc79273e2481ab547 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="43_9">Num</A></FONT> <b>is</b> <b>range</b> &lt;&gt;;
+   <b>type</b> <FONT COLOR=red><A NAME="42_9">Num</A></FONT> <b>is</b> <b>range</b> &lt;&gt;;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<FONT COLOR=red><A NAME="45_43">Integer_IO</A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<FONT COLOR=red><A NAME="44_43">Integer_IO</A></FONT> <b>is</b>
 
-   <FONT COLOR=red><A NAME="47_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#43_9">Num</A>'Width;
-   <FONT COLOR=red><A NAME="48_4">Default_Base</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := 10;
+   <FONT COLOR=red><A NAME="46_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#42_9">Num</A>'Width;
+   <FONT COLOR=red><A NAME="47_4">Default_Base</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := 10;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#50_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="51_7">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <FONT COLOR=red><A NAME="52_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="53_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#47_4">Default_Width</A>;
-      <FONT COLOR=red><A NAME="54_7">Base</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#48_4">Default_Base</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#49_14">Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="50_7">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <FONT COLOR=red><A NAME="51_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="52_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#46_4">Default_Width</A>;
+      <FONT COLOR=red><A NAME="53_7">Base</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#47_4">Default_Base</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#62_14">Put</A><FONT COLOR=red><A NAME="56_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="57_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="58_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#47_4">Default_Width</A>;
-      <FONT COLOR=red><A NAME="59_7">Base</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#48_4">Default_Base</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#61_14">Put</A><FONT COLOR=red><A NAME="55_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="56_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="57_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#46_4">Default_Width</A>;
+      <FONT COLOR=red><A NAME="58_7">Base</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#47_4">Default_Base</A>);
 
 <b>private</b>
    <b>pragma</b> Inline (Put);
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Integer_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#44_43">Integer_IO</A><A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index e7a9085f3306f99fd7e2ae1df0c1d4c8369ccbd5..a960b2d03e28f3cd59e3639838af6df443e26bda 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.9 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Text_IO;
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#45_43">Modular_IO</A> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#44_43">Modular_IO</A> <b>is</b>
 
-   <b>package</b> <FONT COLOR=red><A NAME="47_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#42_51">Aux</A>;
-   <b>package</b> <FONT COLOR=red><A NAME="48_12">MIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Modular_IO (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#43_9">Num</A>);
+   <b>package</b> <FONT COLOR=red><A NAME="46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#41_51">Aux</A>;
+   <b>package</b> <FONT COLOR=red><A NAME="47_12">MIO</A></FONT> <b>is</b> <b>new</b> Ada.Text_IO.Modular_IO (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#42_9">Num</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#50_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#51_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#52_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#53_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#47_4">Default_Width</A>;
-      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#54_7">Base</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#48_4">Default_Base</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#49_14">Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#50_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#51_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#52_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#46_4">Default_Width</A>;
+      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#53_7">Base</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#47_4">Default_Base</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A>'Last);
+      <FONT COLOR=red><A NAME="55_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A>'Last);
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#48_12">MIO</A>.Put (<A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#52_7">Item</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#54_7">Base</A>);
-      <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#47_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#53_7">Width</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#47_12">MIO</A>.Put (<A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#51_7">Item</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#53_7">Base</A>);
+      <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#47_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#50_7">Win</A>, <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#52_7">Width</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#49_14">Put</A><A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#49_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#56_14">Put</A><FONT COLOR=red><A NAME="62_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#57_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#43_9">Num</A>;
-      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#58_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#47_4">Default_Width</A>;
-      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#59_7">Base</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#48_4">Default_Base</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#55_14">Put</A><FONT COLOR=red><A NAME="61_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#56_7">Item</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#42_9">Num</A>;
+      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#57_7">Width</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#46_4">Default_Width</A>;
+      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#58_7">Base</A>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#47_4">Default_Base</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#57_7">Item</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#58_7">Width</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#59_7">Base</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#49_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#56_7">Item</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#57_7">Width</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#58_7">Base</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#55_14">Put</A><A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#55_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Modular_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#44_43">Modular_IO</A><A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index f63b9bd509f63cda9542448a4999aee0f9166b8e..e5d6ef8af38cbc42e3699841f29af5ecf1960101 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.10 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>generic</b>
-   <b>type</b> <FONT COLOR=red><A NAME="43_9">Num</A></FONT> <b>is</b> <b>mod</b> &lt;&gt;;
+   <b>type</b> <FONT COLOR=red><A NAME="42_9">Num</A></FONT> <b>is</b> <b>mod</b> &lt;&gt;;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A>.<FONT COLOR=red><A NAME="45_43">Modular_IO</A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<FONT COLOR=red><A NAME="44_43">Modular_IO</A></FONT> <b>is</b>
 
-   <FONT COLOR=red><A NAME="47_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#43_9">Num</A>'Width;
-   <FONT COLOR=red><A NAME="48_4">Default_Base</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := 10;
+   <FONT COLOR=red><A NAME="46_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#42_9">Num</A>'Width;
+   <FONT COLOR=red><A NAME="47_4">Default_Base</A></FONT>  : <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := 10;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#50_14">Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="51_7">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <FONT COLOR=red><A NAME="52_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="53_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#47_4">Default_Width</A>;
-      <FONT COLOR=red><A NAME="54_7">Base</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#48_4">Default_Base</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#49_14">Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="50_7">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <FONT COLOR=red><A NAME="51_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="52_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#46_4">Default_Width</A>;
+      <FONT COLOR=red><A NAME="53_7">Base</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#47_4">Default_Base</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#62_14">Put</A><FONT COLOR=red><A NAME="56_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="57_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#43_9">Num</A>;
-      <FONT COLOR=red><A NAME="58_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#47_4">Default_Width</A>;
-      <FONT COLOR=red><A NAME="59_7">Base</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#52_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#48_4">Default_Base</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#61_14">Put</A><FONT COLOR=red><A NAME="55_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="56_7">Item</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#42_9">Num</A>;
+      <FONT COLOR=red><A NAME="57_7">Width</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#46_4">Default_Width</A>;
+      <FONT COLOR=red><A NAME="58_7">Base</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#47_4">Default_Base</A>);
 
 <b>private</b>
    <b>pragma</b> Inline (Put);
 
-<b>end</b> Terminal_Interface.Curses.Text_IO.Modular_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#44_43">Modular_IO</A><A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#44_43">;</A>
+</PRE></BODY></HTML>
index 0166ab4686d74dc9c3ede4f44ebd0a48182ed278..edf46182e1f8c79b227bada3c7feeb9bf0266b74 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.13 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.14 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#45_35">Text_IO</A><FONT COLOR=red><A NAME="42_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A> <b>is</b>
 
-   <FONT COLOR=red><A NAME="44_4">Default_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A>;
+   <FONT COLOR=red><A NAME="43_4">Default_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#60_14">Set_Window</A><FONT COLOR=red><A NAME="46_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#60_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#59_14">Set_Window</A><FONT COLOR=red><A NAME="45_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#59_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__adb.htm#44_4">Default_Window</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#60_26">Win</A>;
-   <b>end</b> Set_Window;
+      <A HREF="terminal_interface-curses-text_io__adb.htm#43_4">Default_Window</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#59_26">Win</A>;
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#59_14">Set_Window</A><A HREF="terminal_interface-curses-text_io__ads.htm#59_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A><FONT COLOR=red><A NAME="52_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#44_4">Default_Window</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#43_4">Default_Window</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
       <b>else</b>
-         <b>return</b> <A HREF="terminal_interface-curses-text_io__adb.htm#44_4">Default_Window</A>;
+         <b>return</b> <A HREF="terminal_interface-curses-text_io__adb.htm#43_4">Default_Window</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Window;
-   <b>pragma</b> Inline (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A><A HREF="terminal_interface-curses-text_io__ads.htm#62_13">;</A>
+   <b>pragma</b> Inline (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#66_14">Flush</A><FONT COLOR=red><A NAME="63_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#66_21">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#65_14">Flush</A><FONT COLOR=red><A NAME="62_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#65_21">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1039_14">Refresh</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#66_21">Win</A>);
-   <b>end</b> Flush;
+      <A HREF="terminal_interface-curses__ads.htm#1038_14">Refresh</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#65_21">Win</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#65_14">Flush</A><A HREF="terminal_interface-curses-text_io__ads.htm#65_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#67_14">Flush</A><FONT COLOR=red><A NAME="69_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#66_14">Flush</A><FONT COLOR=red><A NAME="68_14"></A></FONT>
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#66_14">Flush</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>);
-   <b>end</b> Flush;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#65_14">Flush</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#66_14">Flush</A><A HREF="terminal_interface-curses-text_io__ads.htm#66_14">;</A>
 
    <FONT COLOR=green><EM>--------------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>-- Specification of line and page lengths --</EM></FONT>
    <FONT COLOR=green><EM>--  A scroll-window is interpreted as an page with unbounded page length,</EM></FONT>
    <FONT COLOR=green><EM>--  i.e. it returns the conventional 0 as page length.</EM></FONT>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#78_13">Line_Length</A><FONT COLOR=red><A NAME="84_13"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#78_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#77_13">Line_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#77_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="86_7">N_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="87_7">N_Cols</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
+      <FONT COLOR=red><A NAME="85_7">N_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="86_7">N_Cols</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1222_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#78_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#86_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#87_7">N_Cols</A>);
-      <b>if</b> Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#87_7">N_Cols</A>) &gt; Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>'Last) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#135_4">Layout_Error</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1221_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#77_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#85_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#86_7">N_Cols</A>);
+      <b>if</b> Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#86_7">N_Cols</A>) &gt; Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>'Last) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#134_4">Layout_Error</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#87_7">N_Cols</A>);
-   <b>end</b> Line_Length;
+      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#86_7">N_Cols</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#77_13">Line_Length</A><A HREF="terminal_interface-curses-text_io__ads.htm#77_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#79_13">Line_Length</A><FONT COLOR=red><A NAME="96_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#78_13">Line_Length</A> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#78_13">Line_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>);
-   <b>end</b> Line_Length;
+      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#77_13">Line_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#78_13">Line_Length</A><A HREF="terminal_interface-curses-text_io__ads.htm#78_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#81_13">Page_Length</A><FONT COLOR=red><A NAME="102_13"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#81_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#80_26">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="104_7">N_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="105_7">N_Cols</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
+      <FONT COLOR=red><A NAME="103_7">N_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="104_7">N_Cols</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#1016_13">Scrolling_Allowed</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#81_26">Win</A>) <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#1015_13">Scrolling_Allowed</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#80_26">Win</A>) <b>then</b>
          <b>return</b> 0;
       <b>else</b>
-         <A HREF="terminal_interface-curses__ads.htm#1222_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#81_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#104_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#105_7">N_Cols</A>);
-         <b>if</b> Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#104_7">N_Lines</A>) &gt; Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>'Last) <b>then</b>
-            <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#135_4">Layout_Error</A>;
+         <A HREF="terminal_interface-curses__ads.htm#1221_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#80_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#103_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#104_7">N_Cols</A>);
+         <b>if</b> Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#103_7">N_Lines</A>) &gt; Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>'Last) <b>then</b>
+            <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#134_4">Layout_Error</A>;
          <b>end</b> <b>if</b>;
-         <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#104_7">N_Lines</A>);
+         <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#103_7">N_Lines</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Page_Length;
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#80_13">Page_Length</A><A HREF="terminal_interface-curses-text_io__ads.htm#80_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#82_13">Page_Length</A><FONT COLOR=red><A NAME="118_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#81_13">Page_Length</A> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#81_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>);
-   <b>end</b> Page_Length;
+      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#81_13">Page_Length</A><A HREF="terminal_interface-curses-text_io__ads.htm#81_13">;</A>
 
    <FONT COLOR=green><EM>------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>-- Column, Line, and Page Control --</EM></FONT>
    <FONT COLOR=green><EM>------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#87_14">New_Line</A><FONT COLOR=red><A NAME="127_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#87_24">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <A HREF="terminal_interface-curses-text_io__ads.htm#87_41">Spacing</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> := 1)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#86_14">New_Line</A><FONT COLOR=red><A NAME="126_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#86_24">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <A HREF="terminal_interface-curses-text_io__ads.htm#86_41">Spacing</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> := 1)
    <b>is</b>
-      <FONT COLOR=red><A NAME="129_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#81_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#87_24">Win</A>);
+      <FONT COLOR=red><A NAME="128_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#86_24">Win</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__ads.htm#87_41">Spacing</A> <b>not</b> <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__ads.htm#86_41">Spacing</A> <b>not</b> <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> <b>then</b>
          <b>raise</b> Constraint_Error;
       <b>end</b> <b>if</b>;
 
-      <b>for</b> <FONT COLOR=red><A NAME="135_11">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#87_41">Spacing</A> <b>loop</b>
-         <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#129_7">P_Size</A> &gt; 0 <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-text_io__ads.htm#102_13">Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#87_24">Win</A>) &gt;= <A HREF="terminal_interface-curses-text_io__adb.htm#129_7">P_Size</A> <b>then</b>
-            <A HREF="terminal_interface-curses-text_io__ads.htm#90_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#87_24">Win</A>);
+      <b>for</b> <FONT COLOR=red><A NAME="134_11">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#86_41">Spacing</A> <b>loop</b>
+         <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#128_7">P_Size</A> &gt; 0 <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-text_io__ads.htm#101_13">Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#86_24">Win</A>) &gt;= <A HREF="terminal_interface-curses-text_io__adb.htm#128_7">P_Size</A> <b>then</b>
+            <A HREF="terminal_interface-curses-text_io__ads.htm#89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#86_24">Win</A>);
          <b>else</b>
-            <A HREF="terminal_interface-curses__ads.htm#522_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#87_24">Win</A>, ASCII.LF);
+            <A HREF="terminal_interface-curses__ads.htm#521_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#86_24">Win</A>, ASCII.LF);
          <b>end</b> <b>if</b>;
       <b>end</b> <b>loop</b>;
-   <b>end</b> New_Line;
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#86_14">New_Line</A><A HREF="terminal_interface-curses-text_io__ads.htm#86_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#88_14">New_Line</A><FONT COLOR=red><A NAME="144_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#88_24">Spacing</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> := 1)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#87_14">New_Line</A><FONT COLOR=red><A NAME="143_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#87_24">Spacing</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> := 1)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#87_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#88_24">Spacing</A>);
-   <b>end</b> New_Line;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#87_24">Spacing</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#87_14">New_Line</A><A HREF="terminal_interface-curses-text_io__ads.htm#87_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#90_14">New_Page</A><FONT COLOR=red><A NAME="150_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#90_24">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#89_14">New_Page</A><FONT COLOR=red><A NAME="149_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#89_24">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1074_14">Clear</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#90_24">Win</A>);
-   <b>end</b> New_Page;
+      <A HREF="terminal_interface-curses__ads.htm#1073_14">Clear</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#89_24">Win</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#89_14">New_Page</A><A HREF="terminal_interface-curses-text_io__ads.htm#89_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#91_14">New_Page</A><FONT COLOR=red><A NAME="156_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#90_14">New_Page</A><FONT COLOR=red><A NAME="155_14"></A></FONT>
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#90_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>);
-   <b>end</b> New_Page;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#90_14">New_Page</A><A HREF="terminal_interface-curses-text_io__ads.htm#90_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#93_14">Set_Col</A><FONT COLOR=red><A NAME="162_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#93_23">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;  <A HREF="terminal_interface-curses-text_io__ads.htm#93_41">To</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#92_14">Set_Col</A><FONT COLOR=red><A NAME="161_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#92_23">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;  <A HREF="terminal_interface-curses-text_io__ads.htm#92_41">To</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="164_7">Y</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="165_7">X1</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="166_7">X2</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="167_7">N</A></FONT>  : Natural;
+      <FONT COLOR=red><A NAME="163_7">Y</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="164_7">X1</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="165_7">X2</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="166_7">N</A></FONT>  : Natural;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__ads.htm#93_41">To</A> <b>not</b> <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__ads.htm#92_41">To</A> <b>not</b> <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> <b>then</b>
          <b>raise</b> Constraint_Error;
       <b>end</b> <b>if</b>;
 
-      <A HREF="terminal_interface-curses__ads.htm#1238_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#93_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#164_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#165_7">X1</A>);
-      <A HREF="terminal_interface-curses-text_io__adb.htm#167_7">N</A>  := Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#93_41">To</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#167_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#167_7">N</A> - 1;
-      <A HREF="terminal_interface-curses-text_io__adb.htm#166_7">X2</A> := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#167_7">N</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#165_7">X1</A> &gt; <A HREF="terminal_interface-curses-text_io__adb.htm#166_7">X2</A> <b>then</b>
-         <A HREF="terminal_interface-curses-text_io__ads.htm#87_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#93_23">Win</A>, 1);
-         <A HREF="terminal_interface-curses-text_io__adb.htm#165_7">X1</A> := 0;
+      <A HREF="terminal_interface-curses__ads.htm#1237_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#92_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#163_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#164_7">X1</A>);
+      <A HREF="terminal_interface-curses-text_io__adb.htm#166_7">N</A>  := Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#92_41">To</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#166_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#166_7">N</A> - 1;
+      <A HREF="terminal_interface-curses-text_io__adb.htm#165_7">X2</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#166_7">N</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#164_7">X1</A> &gt; <A HREF="terminal_interface-curses-text_io__adb.htm#165_7">X2</A> <b>then</b>
+         <A HREF="terminal_interface-curses-text_io__ads.htm#86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#92_23">Win</A>, 1);
+         <A HREF="terminal_interface-curses-text_io__adb.htm#164_7">X1</A> := 0;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#165_7">X1</A> &lt; <A HREF="terminal_interface-curses-text_io__adb.htm#166_7">X2</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#164_7">X1</A> &lt; <A HREF="terminal_interface-curses-text_io__adb.htm#165_7">X2</A> <b>then</b>
          <b>declare</b>
-            <FONT COLOR=red><A NAME="182_13">Filler</A></FONT> : <b>constant</b> String (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#165_7">X1</A>) .. (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#166_7">X2</A>) - 1))
+            <FONT COLOR=red><A NAME="181_13">Filler</A></FONT> : <b>constant</b> String (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#164_7">X1</A>) .. (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#165_7">X2</A>) - 1))
               := (<b>others</b> =&gt; ' ');
          <b>begin</b>
-            <A HREF="terminal_interface-curses-text_io__ads.htm#116_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#93_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#182_13">Filler</A>);
+            <A HREF="terminal_interface-curses-text_io__ads.htm#115_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#92_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#181_13">Filler</A>);
          <b>end</b>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Col;
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#92_14">Set_Col</A><A HREF="terminal_interface-curses-text_io__ads.htm#92_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#94_14">Set_Col</A><FONT COLOR=red><A NAME="190_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#94_23">To</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#93_14">Set_Col</A><FONT COLOR=red><A NAME="189_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#93_23">To</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#93_14">Set_Col</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#94_23">To</A>);
-   <b>end</b> Set_Col;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#92_14">Set_Col</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#93_23">To</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#93_14">Set_Col</A><A HREF="terminal_interface-curses-text_io__ads.htm#93_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#96_14">Set_Line</A><FONT COLOR=red><A NAME="196_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#96_24">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <A HREF="terminal_interface-curses-text_io__ads.htm#96_41">To</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#95_14">Set_Line</A><FONT COLOR=red><A NAME="195_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#95_24">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <A HREF="terminal_interface-curses-text_io__ads.htm#95_41">To</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="198_7">Y1</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="199_7">Y2</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="200_7">X</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="201_7">N</A></FONT>  : Natural;
+      <FONT COLOR=red><A NAME="197_7">Y1</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="198_7">Y2</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="199_7">X</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="200_7">N</A></FONT>  : Natural;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__ads.htm#96_41">To</A> <b>not</b> <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__ads.htm#95_41">To</A> <b>not</b> <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> <b>then</b>
          <b>raise</b> Constraint_Error;
       <b>end</b> <b>if</b>;
 
-      <A HREF="terminal_interface-curses__ads.htm#1238_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#96_24">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#198_7">Y1</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#200_7">X</A>);
-      <A HREF="terminal_interface-curses-text_io__adb.htm#201_7">N</A>  := Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#96_41">To</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#201_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#201_7">N</A> - 1;
-      <A HREF="terminal_interface-curses-text_io__adb.htm#199_7">Y2</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#201_7">N</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#199_7">Y2</A> &lt; <A HREF="terminal_interface-curses-text_io__adb.htm#198_7">Y1</A> <b>then</b>
-         <A HREF="terminal_interface-curses-text_io__ads.htm#90_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#96_24">Win</A>);
-         <A HREF="terminal_interface-curses-text_io__adb.htm#198_7">Y1</A> := 0;
+      <A HREF="terminal_interface-curses__ads.htm#1237_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#95_24">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#197_7">Y1</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#199_7">X</A>);
+      <A HREF="terminal_interface-curses-text_io__adb.htm#200_7">N</A>  := Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#95_41">To</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#200_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#200_7">N</A> - 1;
+      <A HREF="terminal_interface-curses-text_io__adb.htm#198_7">Y2</A> := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#200_7">N</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#198_7">Y2</A> &lt; <A HREF="terminal_interface-curses-text_io__adb.htm#197_7">Y1</A> <b>then</b>
+         <A HREF="terminal_interface-curses-text_io__ads.htm#89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#95_24">Win</A>);
+         <A HREF="terminal_interface-curses-text_io__adb.htm#197_7">Y1</A> := 0;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#198_7">Y1</A> &lt; <A HREF="terminal_interface-curses-text_io__adb.htm#199_7">Y2</A> <b>then</b>
-         <A HREF="terminal_interface-curses-text_io__ads.htm#87_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#96_24">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#199_7">Y2</A> - <A HREF="terminal_interface-curses-text_io__adb.htm#198_7">Y1</A>));
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#197_7">Y1</A> &lt; <A HREF="terminal_interface-curses-text_io__adb.htm#198_7">Y2</A> <b>then</b>
+         <A HREF="terminal_interface-curses-text_io__ads.htm#86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#95_24">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#198_7">Y2</A> - <A HREF="terminal_interface-curses-text_io__adb.htm#197_7">Y1</A>));
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Line;
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#95_14">Set_Line</A><A HREF="terminal_interface-curses-text_io__ads.htm#95_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#97_14">Set_Line</A><FONT COLOR=red><A NAME="219_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#97_24">To</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#96_14">Set_Line</A><FONT COLOR=red><A NAME="218_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#96_24">To</A> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#96_14">Set_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#97_24">To</A>);
-   <b>end</b> Set_Line;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#95_14">Set_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#96_24">To</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#96_14">Set_Line</A><A HREF="terminal_interface-curses-text_io__ads.htm#96_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#99_13">Col</A><FONT COLOR=red><A NAME="225_13"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#99_18">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#98_13">Col</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#98_18">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="227_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="228_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="229_7">N</A></FONT> : Natural;
+      <FONT COLOR=red><A NAME="226_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="227_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="228_7">N</A></FONT> : Natural;
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1238_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#99_18">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#227_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#228_7">X</A>);
-      <A HREF="terminal_interface-curses-text_io__adb.htm#229_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#228_7">X</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#229_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#229_7">N</A> + 1;
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#229_7">N</A> &gt; Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>'Last) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#135_4">Layout_Error</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1237_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#98_18">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#226_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#227_7">X</A>);
+      <A HREF="terminal_interface-curses-text_io__adb.htm#228_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#227_7">X</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#228_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#228_7">N</A> + 1;
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#228_7">N</A> &gt; Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>'Last) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#134_4">Layout_Error</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#229_7">N</A>);
-   <b>end</b> Col;
+      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#228_7">N</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#98_13">Col</A><A HREF="terminal_interface-curses-text_io__ads.htm#98_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#100_13">Col</A><FONT COLOR=red><A NAME="239_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#99_13">Col</A> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#99_13">Col</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>);
-   <b>end</b> Col;
+      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#98_13">Col</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#99_13">Col</A><A HREF="terminal_interface-curses-text_io__ads.htm#99_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#102_13">Line</A><FONT COLOR=red><A NAME="245_13"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#102_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#101_13">Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#101_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="247_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="248_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="249_7">N</A></FONT> : Natural;
+      <FONT COLOR=red><A NAME="246_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="247_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="248_7">N</A></FONT> : Natural;
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1238_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#102_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#247_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#248_7">X</A>);
-      <A HREF="terminal_interface-curses-text_io__adb.htm#249_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#247_7">Y</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#249_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#249_7">N</A> + 1;
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#249_7">N</A> &gt; Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>'Last) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#135_4">Layout_Error</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1237_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#101_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#246_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#247_7">X</A>);
+      <A HREF="terminal_interface-curses-text_io__adb.htm#248_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#246_7">Y</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#248_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#248_7">N</A> + 1;
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#248_7">N</A> &gt; Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>'Last) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#134_4">Layout_Error</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#249_7">N</A>);
-   <b>end</b> Line;
+      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#248_7">N</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#101_13">Line</A><A HREF="terminal_interface-curses-text_io__ads.htm#101_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#103_13">Line</A><FONT COLOR=red><A NAME="259_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses-text_io__ads.htm#102_13">Line</A> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#102_13">Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>);
-   <b>end</b> Line;
+      <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#101_13">Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#102_13">Line</A><A HREF="terminal_interface-curses-text_io__ads.htm#102_13">;</A>
 
    <FONT COLOR=green><EM>-----------------------</EM></FONT>
    <FONT COLOR=green><EM>-- Characters Output --</EM></FONT>
    <FONT COLOR=green><EM>-----------------------</EM></FONT>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#109_14">Put</A><FONT COLOR=red><A NAME="269_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#109_19">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <A HREF="terminal_interface-curses-text_io__ads.htm#109_37">Item</A> : <b>in</b> Character)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#108_14">Put</A><FONT COLOR=red><A NAME="268_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#108_19">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <A HREF="terminal_interface-curses-text_io__ads.htm#108_37">Item</A> : <b>in</b> Character)
    <b>is</b>
-      <FONT COLOR=red><A NAME="271_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#81_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#109_19">Win</A>);
-      <FONT COLOR=red><A NAME="272_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="273_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="274_7">L</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="275_7">C</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
+      <FONT COLOR=red><A NAME="270_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#108_19">Win</A>);
+      <FONT COLOR=red><A NAME="271_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="272_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="273_7">L</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="274_7">C</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#271_7">P_Size</A> &gt; 0 <b>then</b>
-         <A HREF="terminal_interface-curses__ads.htm#1238_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#109_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#272_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#273_7">X</A>);
-         <A HREF="terminal_interface-curses__ads.htm#1222_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#109_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#274_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#275_7">C</A>);
-         <b>if</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#272_7">Y</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#274_7">L</A> <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#273_7">X</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#275_7">C</A> <b>then</b>
-            <A HREF="terminal_interface-curses-text_io__ads.htm#90_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#109_19">Win</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#270_7">P_Size</A> &gt; 0 <b>then</b>
+         <A HREF="terminal_interface-curses__ads.htm#1237_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#271_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#272_7">X</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1221_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#273_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#274_7">C</A>);
+         <b>if</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#271_7">Y</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#273_7">L</A> <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#272_7">X</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#274_7">C</A> <b>then</b>
+            <A HREF="terminal_interface-curses-text_io__ads.htm#89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#108_19">Win</A>);
          <b>end</b> <b>if</b>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses__ads.htm#522_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#109_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#109_37">Item</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses__ads.htm#521_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#108_37">Item</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#108_14">Put</A><A HREF="terminal_interface-curses-text_io__ads.htm#108_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#110_14">Put</A><FONT COLOR=red><A NAME="287_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#110_19">Item</A> : <b>in</b> Character)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#109_14">Put</A><FONT COLOR=red><A NAME="286_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#109_19">Item</A> : <b>in</b> Character)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#109_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#110_19">Item</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#108_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#109_19">Item</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#109_14">Put</A><A HREF="terminal_interface-curses-text_io__ads.htm#109_14">;</A>
 
    <FONT COLOR=green><EM>--------------------</EM></FONT>
    <FONT COLOR=green><EM>-- Strings-Output --</EM></FONT>
    <FONT COLOR=green><EM>--------------------</EM></FONT>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#116_14">Put</A><FONT COLOR=red><A NAME="297_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#116_19">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <A HREF="terminal_interface-curses-text_io__ads.htm#116_37">Item</A> : <b>in</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#115_14">Put</A><FONT COLOR=red><A NAME="296_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#115_19">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <A HREF="terminal_interface-curses-text_io__ads.htm#115_37">Item</A> : <b>in</b> String)
    <b>is</b>
-      <FONT COLOR=red><A NAME="299_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#81_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#116_19">Win</A>);
-      <FONT COLOR=red><A NAME="300_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="301_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="302_7">L</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="303_7">C</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
+      <FONT COLOR=red><A NAME="298_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#115_19">Win</A>);
+      <FONT COLOR=red><A NAME="299_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="300_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="301_7">L</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="302_7">C</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#299_7">P_Size</A> &gt; 0 <b>then</b>
-         <A HREF="terminal_interface-curses__ads.htm#1238_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#116_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#300_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#301_7">X</A>);
-         <A HREF="terminal_interface-curses__ads.htm#1222_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#116_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#302_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#303_7">C</A>);
-         <b>if</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#300_7">Y</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#302_7">L</A> <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#301_7">X</A> + 1 + <A HREF="terminal_interface-curses-text_io__ads.htm#116_37">Item</A>'Length) &gt;= <A HREF="terminal_interface-curses-text_io__adb.htm#303_7">C</A> <b>then</b>
-            <A HREF="terminal_interface-curses-text_io__ads.htm#90_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#116_19">Win</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#298_7">P_Size</A> &gt; 0 <b>then</b>
+         <A HREF="terminal_interface-curses__ads.htm#1237_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#299_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#300_7">X</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1221_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#301_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#302_7">C</A>);
+         <b>if</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#299_7">Y</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#301_7">L</A> <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#300_7">X</A> + 1 + <A HREF="terminal_interface-curses-text_io__ads.htm#115_37">Item</A>'Length) &gt;= <A HREF="terminal_interface-curses-text_io__adb.htm#302_7">C</A> <b>then</b>
+            <A HREF="terminal_interface-curses-text_io__ads.htm#89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#115_19">Win</A>);
          <b>end</b> <b>if</b>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses__ads.htm#647_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#116_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#116_37">Item</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses__ads.htm#646_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#115_37">Item</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#115_14">Put</A><A HREF="terminal_interface-curses-text_io__ads.htm#115_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#117_14">Put</A><FONT COLOR=red><A NAME="315_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#117_19">Item</A> : <b>in</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#116_14">Put</A><FONT COLOR=red><A NAME="314_14"></A></FONT> (<A HREF="terminal_interface-curses-text_io__ads.htm#116_19">Item</A> : <b>in</b> String)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#116_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#117_19">Item</A>);
-   <b>end</b> Put;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#115_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#116_19">Item</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#116_14">Put</A><A HREF="terminal_interface-curses-text_io__ads.htm#116_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#119_14">Put_Line</A><FONT COLOR=red><A NAME="321_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io__ads.htm#120_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses-text_io__ads.htm#121_7">Item</A> : <b>in</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#118_14">Put_Line</A><FONT COLOR=red><A NAME="320_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io__ads.htm#119_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#120_7">Item</A> : <b>in</b> String)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#116_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#120_7">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#121_7">Item</A>);
-      <A HREF="terminal_interface-curses-text_io__ads.htm#87_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#120_7">Win</A>, 1);
-   <b>end</b> Put_Line;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#115_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#119_7">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#120_7">Item</A>);
+      <A HREF="terminal_interface-curses-text_io__ads.htm#86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#119_7">Win</A>, 1);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#118_14">Put_Line</A><A HREF="terminal_interface-curses-text_io__ads.htm#118_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#123_14">Put_Line</A><FONT COLOR=red><A NAME="330_14"></A></FONT>
-     (<A HREF="terminal_interface-curses-text_io__ads.htm#124_7">Item</A> : <b>in</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__ads.htm#122_14">Put_Line</A><FONT COLOR=red><A NAME="329_14"></A></FONT>
+     (<A HREF="terminal_interface-curses-text_io__ads.htm#123_7">Item</A> : <b>in</b> String)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses-text_io__ads.htm#119_14">Put_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#63_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#124_7">Item</A>);
-   <b>end</b> Put_Line;
+      <A HREF="terminal_interface-curses-text_io__ads.htm#118_14">Put_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#123_7">Item</A>);
+   <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#122_14">Put_Line</A><A HREF="terminal_interface-curses-text_io__ads.htm#122_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Text_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A><A HREF="terminal_interface-curses-text_io__ads.htm#44_35">;</A>
+</PRE></BODY></HTML>
index 07797d8f8ba0df2d8fad854e4a58ad2741ead95a..c18a38043a4978ec67cfe44e51fc8e9963d1a5d8 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.12 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.13 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> Ada.Text_IO;
 <b>with</b> Ada.IO_Exceptions;
 
-<b>package</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__adb.htm#42_40">Text_IO</A><FONT COLOR=red><A NAME="45_35"></A></FONT> <b>is</b>
+<b>package</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<FONT COLOR=red><A NAME="44_35">Text_IO</A></FONT> <b>is</b>
 
    <b>use</b> <b>type</b> Ada.Text_IO.Count;
-   <b>subtype</b> <FONT COLOR=red><A NAME="48_12">Count</A></FONT> <b>is</b> Ada.Text_IO.Count;
-   <b>subtype</b> <FONT COLOR=red><A NAME="49_12">Positive_Count</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>'Last;
+   <b>subtype</b> <FONT COLOR=red><A NAME="47_12">Count</A></FONT> <b>is</b> Ada.Text_IO.Count;
+   <b>subtype</b> <FONT COLOR=red><A NAME="48_12">Positive_Count</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>'Last;
 
-   <b>subtype</b> <FONT COLOR=red><A NAME="51_12">Field</A></FONT> <b>is</b> Ada.Text_IO.Field;
-   <b>subtype</b> <FONT COLOR=red><A NAME="52_12">Number_Base</A></FONT> <b>is</b> Integer <b>range</b> 2 .. 16;
+   <b>subtype</b> <FONT COLOR=red><A NAME="50_12">Field</A></FONT> <b>is</b> Ada.Text_IO.Field;
+   <b>subtype</b> <FONT COLOR=red><A NAME="51_12">Number_Base</A></FONT> <b>is</b> Integer <b>range</b> 2 .. 16;
 
-   <b>type</b> <FONT COLOR=red><A NAME="54_9">Type_Set</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="54_22">Lower_Case</A></FONT>, <FONT COLOR=red><A NAME="54_34">Upper_Case</A></FONT>, <FONT COLOR=red><A NAME="54_46">Mixed_Case</A></FONT>);
+   <b>type</b> <FONT COLOR=red><A NAME="53_9">Type_Set</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="53_22">Lower_Case</A></FONT>, <FONT COLOR=red><A NAME="53_34">Upper_Case</A></FONT>, <FONT COLOR=red><A NAME="53_46">Mixed_Case</A></FONT>);
 
    <FONT COLOR=green><EM>--  For most of the routines you will see a version without a Window</EM></FONT>
    <FONT COLOR=green><EM>--  type parameter. They will operate on a default window, which can</EM></FONT>
    <FONT COLOR=green><EM>--  be set by the user. It is initially equal to Standard_Window.</EM></FONT>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#46_14">Set_Window</A><FONT COLOR=red><A NAME="60_14"></A></FONT> (<FONT COLOR=red><A NAME="60_26">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#45_14">Set_Window</A><FONT COLOR=red><A NAME="59_14"></A></FONT> (<FONT COLOR=red><A NAME="59_26">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>);
    <FONT COLOR=green><EM>--  Set Win as the default window</EM></FONT>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__adb.htm#52_13">Get_Window</A><FONT COLOR=red><A NAME="63_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="62_13">Get_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
    <FONT COLOR=green><EM>--  Get the current default window</EM></FONT>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#63_14">Flush</A><FONT COLOR=red><A NAME="66_14"></A></FONT> (<FONT COLOR=red><A NAME="66_21">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>);
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#69_14">Flush</A><FONT COLOR=red><A NAME="67_14"></A></FONT>;
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#62_14">Flush</A><FONT COLOR=red><A NAME="65_14"></A></FONT> (<FONT COLOR=red><A NAME="65_21">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#68_14">Flush</A><FONT COLOR=red><A NAME="66_14"></A></FONT>;
 
    <FONT COLOR=green><EM>--------------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>-- Specification of line and page lengths --</EM></FONT>
    <FONT COLOR=green><EM>--  A scroll-window is interpreted as an page with unbounded page length,</EM></FONT>
    <FONT COLOR=green><EM>--  i.e. it returns the conventional 0 as page length.</EM></FONT>
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__adb.htm#84_13">Line_Length</A><FONT COLOR=red><A NAME="78_13"></A></FONT> (<FONT COLOR=red><A NAME="78_26">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>;
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__adb.htm#96_13">Line_Length</A><FONT COLOR=red><A NAME="79_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="77_13">Line_Length</A></FONT> (<FONT COLOR=red><A NAME="77_26">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="78_13">Line_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>;
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__adb.htm#102_13">Page_Length</A><FONT COLOR=red><A NAME="81_13"></A></FONT> (<FONT COLOR=red><A NAME="81_26">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>;
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__adb.htm#118_13">Page_Length</A><FONT COLOR=red><A NAME="82_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Count</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="80_13">Page_Length</A></FONT> (<FONT COLOR=red><A NAME="80_26">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="81_13">Page_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#47_12">Count</A>;
 
    <FONT COLOR=green><EM>------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>-- Column, Line, and Page Control --</EM></FONT>
    <FONT COLOR=green><EM>------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#127_14">New_Line</A><FONT COLOR=red><A NAME="87_14"></A></FONT> (<FONT COLOR=red><A NAME="87_24">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="87_41">Spacing</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> := 1);
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#144_14">New_Line</A><FONT COLOR=red><A NAME="88_14"></A></FONT> (<FONT COLOR=red><A NAME="88_24">Spacing</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A> := 1);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#126_14">New_Line</A><FONT COLOR=red><A NAME="86_14"></A></FONT> (<FONT COLOR=red><A NAME="86_24">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="86_41">Spacing</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> := 1);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#143_14">New_Line</A><FONT COLOR=red><A NAME="87_14"></A></FONT> (<FONT COLOR=red><A NAME="87_24">Spacing</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A> := 1);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#150_14">New_Page</A><FONT COLOR=red><A NAME="90_14"></A></FONT> (<FONT COLOR=red><A NAME="90_24">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>);
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#156_14">New_Page</A><FONT COLOR=red><A NAME="91_14"></A></FONT>;
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#149_14">New_Page</A><FONT COLOR=red><A NAME="89_14"></A></FONT> (<FONT COLOR=red><A NAME="89_24">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#155_14">New_Page</A><FONT COLOR=red><A NAME="90_14"></A></FONT>;
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#162_14">Set_Col</A><FONT COLOR=red><A NAME="93_14"></A></FONT> (<FONT COLOR=red><A NAME="93_23">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;  <FONT COLOR=red><A NAME="93_41">To</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>);
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#190_14">Set_Col</A><FONT COLOR=red><A NAME="94_14"></A></FONT> (<FONT COLOR=red><A NAME="94_23">To</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#161_14">Set_Col</A><FONT COLOR=red><A NAME="92_14"></A></FONT> (<FONT COLOR=red><A NAME="92_23">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;  <FONT COLOR=red><A NAME="92_41">To</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#189_14">Set_Col</A><FONT COLOR=red><A NAME="93_14"></A></FONT> (<FONT COLOR=red><A NAME="93_23">To</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#196_14">Set_Line</A><FONT COLOR=red><A NAME="96_14"></A></FONT> (<FONT COLOR=red><A NAME="96_24">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="96_41">To</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>);
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#219_14">Set_Line</A><FONT COLOR=red><A NAME="97_14"></A></FONT> (<FONT COLOR=red><A NAME="97_24">To</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#195_14">Set_Line</A><FONT COLOR=red><A NAME="95_14"></A></FONT> (<FONT COLOR=red><A NAME="95_24">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="95_41">To</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#218_14">Set_Line</A><FONT COLOR=red><A NAME="96_14"></A></FONT> (<FONT COLOR=red><A NAME="96_24">To</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>);
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__adb.htm#225_13">Col</A><FONT COLOR=red><A NAME="99_13"></A></FONT> (<FONT COLOR=red><A NAME="99_18">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>;
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__adb.htm#239_13">Col</A><FONT COLOR=red><A NAME="100_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="98_13">Col</A></FONT> (<FONT COLOR=red><A NAME="98_18">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="99_13">Col</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>;
 
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__adb.htm#245_13">Line</A><FONT COLOR=red><A NAME="102_13"></A></FONT> (<FONT COLOR=red><A NAME="102_19">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>;
-   <b>function</b> <A HREF="terminal_interface-curses-text_io__adb.htm#259_13">Line</A><FONT COLOR=red><A NAME="103_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#49_12">Positive_Count</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="101_13">Line</A></FONT> (<FONT COLOR=red><A NAME="101_19">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>;
+   <b>function</b> <FONT COLOR=red><A NAME="102_13">Line</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#48_12">Positive_Count</A>;
 
    <FONT COLOR=green><EM>-----------------------</EM></FONT>
    <FONT COLOR=green><EM>-- Characters-Output --</EM></FONT>
    <FONT COLOR=green><EM>-----------------------</EM></FONT>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#269_14">Put</A><FONT COLOR=red><A NAME="109_14"></A></FONT> (<FONT COLOR=red><A NAME="109_19">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="109_37">Item</A></FONT> : <b>in</b> Character);
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#287_14">Put</A><FONT COLOR=red><A NAME="110_14"></A></FONT> (<FONT COLOR=red><A NAME="110_19">Item</A></FONT> : <b>in</b> Character);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#268_14">Put</A><FONT COLOR=red><A NAME="108_14"></A></FONT> (<FONT COLOR=red><A NAME="108_19">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="108_37">Item</A></FONT> : <b>in</b> Character);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#286_14">Put</A><FONT COLOR=red><A NAME="109_14"></A></FONT> (<FONT COLOR=red><A NAME="109_19">Item</A></FONT> : <b>in</b> Character);
 
    <FONT COLOR=green><EM>--------------------</EM></FONT>
    <FONT COLOR=green><EM>-- Strings-Output --</EM></FONT>
    <FONT COLOR=green><EM>--------------------</EM></FONT>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#297_14">Put</A><FONT COLOR=red><A NAME="116_14"></A></FONT> (<FONT COLOR=red><A NAME="116_19">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="116_37">Item</A></FONT> : <b>in</b> String);
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#315_14">Put</A><FONT COLOR=red><A NAME="117_14"></A></FONT> (<FONT COLOR=red><A NAME="117_19">Item</A></FONT> : <b>in</b> String);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#296_14">Put</A><FONT COLOR=red><A NAME="115_14"></A></FONT> (<FONT COLOR=red><A NAME="115_19">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="115_37">Item</A></FONT> : <b>in</b> String);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#314_14">Put</A><FONT COLOR=red><A NAME="116_14"></A></FONT> (<FONT COLOR=red><A NAME="116_19">Item</A></FONT> : <b>in</b> String);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#321_14">Put_Line</A><FONT COLOR=red><A NAME="119_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="120_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <FONT COLOR=red><A NAME="121_7">Item</A></FONT> : <b>in</b> String);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#320_14">Put_Line</A><FONT COLOR=red><A NAME="118_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="119_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <FONT COLOR=red><A NAME="120_7">Item</A></FONT> : <b>in</b> String);
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#330_14">Put_Line</A><FONT COLOR=red><A NAME="123_14"></A></FONT>
-     (<FONT COLOR=red><A NAME="124_7">Item</A></FONT> : <b>in</b> String);
+   <b>procedure</b> <A HREF="terminal_interface-curses-text_io__adb.htm#329_14">Put_Line</A><FONT COLOR=red><A NAME="122_14"></A></FONT>
+     (<FONT COLOR=red><A NAME="123_7">Item</A></FONT> : <b>in</b> String);
 
    <FONT COLOR=green><EM>--  Exceptions</EM></FONT>
 
-   <FONT COLOR=red><A NAME="128_4">Status_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Status_Error;
-   <FONT COLOR=red><A NAME="129_4">Mode_Error</A></FONT>   : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Mode_Error;
-   <FONT COLOR=red><A NAME="130_4">Name_Error</A></FONT>   : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Name_Error;
-   <FONT COLOR=red><A NAME="131_4">Use_Error</A></FONT>    : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Use_Error;
-   <FONT COLOR=red><A NAME="132_4">Device_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Device_Error;
-   <FONT COLOR=red><A NAME="133_4">End_Error</A></FONT>    : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.End_Error;
-   <FONT COLOR=red><A NAME="134_4">Data_Error</A></FONT>   : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Data_Error;
-   <FONT COLOR=red><A NAME="135_4">Layout_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Layout_Error;
-
-<b>end</b> Terminal_Interface.Curses.Text_IO;
-</PRE></BODY></HTML>
\ No newline at end of file
+   <FONT COLOR=red><A NAME="127_4">Status_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Status_Error;
+   <FONT COLOR=red><A NAME="128_4">Mode_Error</A></FONT>   : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Mode_Error;
+   <FONT COLOR=red><A NAME="129_4">Name_Error</A></FONT>   : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Name_Error;
+   <FONT COLOR=red><A NAME="130_4">Use_Error</A></FONT>    : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Use_Error;
+   <FONT COLOR=red><A NAME="131_4">Device_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Device_Error;
+   <FONT COLOR=red><A NAME="132_4">End_Error</A></FONT>    : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.End_Error;
+   <FONT COLOR=red><A NAME="133_4">Data_Error</A></FONT>   : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Data_Error;
+   <FONT COLOR=red><A NAME="134_4">Layout_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Layout_Error;
+
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#44_35">Text_IO</A><A HREF="terminal_interface-curses-text_io__ads.htm#44_35">;</A>
+</PRE></BODY></HTML>
index 6ff73fe84da63c4f1dc82e3ffd8c30d903c114ac..cbba24a0f31a5e8cd2f5804f0bbc00c877538ca6 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.3 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.4 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#42_35">Trace</A><FONT COLOR=red><A NAME="43_40"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#42_35">Trace</A> <b>is</b>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-trace__ads.htm#103_14">Trace_On</A><FONT COLOR=red><A NAME="45_14"></A></FONT> (<A HREF="terminal_interface-curses-trace__ads.htm#103_24">x</A> : <A HREF="terminal_interface-curses-trace__ads.htm#46_9">Trace_Attribute_Set</A>) <b>is</b>
+   <b>procedure</b> <A HREF="terminal_interface-curses-trace__ads.htm#103_14">Trace_On</A><FONT COLOR=red><A NAME="44_14"></A></FONT> (<A HREF="terminal_interface-curses-trace__ads.htm#103_24">x</A> : <A HREF="terminal_interface-curses-trace__ads.htm#46_9">Trace_Attribute_Set</A>) <b>is</b>
    <b>begin</b>
       <b>null</b>;
-   <b>end</b> Trace_On;
+   <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#103_14">Trace_On</A><A HREF="terminal_interface-curses-trace__ads.htm#103_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses-trace__ads.htm#107_14">Trace_Put</A><FONT COLOR=red><A NAME="50_14"></A></FONT> (<A HREF="terminal_interface-curses-trace__ads.htm#107_25">str</A> : String) <b>is</b>
+   <b>procedure</b> <A HREF="terminal_interface-curses-trace__ads.htm#107_14">Trace_Put</A><FONT COLOR=red><A NAME="49_14"></A></FONT> (<A HREF="terminal_interface-curses-trace__ads.htm#107_25">str</A> : String) <b>is</b>
    <b>begin</b>
       <b>null</b>;
-   <b>end</b> Trace_Put;
+   <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#107_14">Trace_Put</A><A HREF="terminal_interface-curses-trace__ads.htm#107_14">;</A>
 
-<b>end</b> Terminal_Interface.Curses.Trace;
-</PRE></BODY></HTML>
\ No newline at end of file
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#42_35">Trace</A><A HREF="terminal_interface-curses-trace__ads.htm#42_35">;</A>
+</PRE></BODY></HTML>
index 6d548853a0138d148934541aa9b335d07b99b1fd..c3080358c3d2ba38060ea21b086dd146849f740e 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author: <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author: Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.28 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.29 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <b>with</b> System;
 
-<b>with</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+<b>with</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;                  <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings;          <b>use</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Strings;
 <b>with</b> <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Pointers;
 <b>with</b> Ada.Strings.Fixed;
 <b>with</b> Ada.Unchecked_Conversion;
 
-<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#49_28">Curses</A><FONT COLOR=red><A NAME="52_33"></A></FONT> <b>is</b>
+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A> <b>is</b>
 
-   <b>use</b> <A HREF="terminal_interface-curses-aux__ads.htm#51_35">Aux</A>;
+   <b>use</b> <A HREF="terminal_interface-curses-aux__ads.htm#50_35">Aux</A>;
    <b>use</b> <b>type</b> System.Bit_Order;
 
-   <b>package</b> <FONT COLOR=red><A NAME="57_12">ASF</A></FONT> <b>renames</b> Ada.Strings.Fixed;
+   <b>package</b> <FONT COLOR=red><A NAME="56_12">ASF</A></FONT> <b>renames</b> Ada.Strings.Fixed;
 
-   <b>type</b> <FONT COLOR=red><A NAME="59_9">chtype_array</A></FONT> <b>is</b> <b>array</b> (size_t <b>range</b> &lt;&gt;)
-      <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>;
-   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__adb.htm#59_9">chtype_array</A>);
+   <b>type</b> <FONT COLOR=red><A NAME="58_9">chtype_array</A></FONT> <b>is</b> <b>array</b> (size_t <b>range</b> &lt;&gt;)
+      <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>;
+   <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__adb.htm#58_9">chtype_array</A>);
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
    <b>generic</b>
-      <b>type</b> <FONT COLOR=red><A NAME="65_12">Element</A></FONT> <b>is</b> (&lt;&gt;);
-   <b>function</b> <FONT COLOR=red><A NAME="66_13">W_Get_Element</A></FONT> (<FONT COLOR=red><A NAME="66_28">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                           <FONT COLOR=red><A NAME="67_28">Offset</A></FONT> : <b>in</b> Natural) <b>return</b> <A HREF="terminal_interface-curses__adb.htm#65_12">Element</A>;
+      <b>type</b> <FONT COLOR=red><A NAME="64_12">Element</A></FONT> <b>is</b> (&lt;&gt;);
+   <b>function</b> <FONT COLOR=red><A NAME="65_13">W_Get_Element</A></FONT> (<FONT COLOR=red><A NAME="65_28">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                           <FONT COLOR=red><A NAME="66_28">Offset</A></FONT> : <b>in</b> Natural) <b>return</b> <A HREF="terminal_interface-curses__adb.htm#64_12">Element</A>;
 
-   <b>function</b> <A HREF="terminal_interface-curses__adb.htm#66_13">W_Get_Element</A> (<FONT COLOR=red><A NAME="69_28">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                           <FONT COLOR=red><A NAME="70_28">Offset</A></FONT> : <b>in</b> Natural) <b>return</b> <A HREF="terminal_interface-curses__adb.htm#65_12">Element</A> <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="71_12">E_Array</A></FONT> <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses__adb.htm#65_12">Element</A>;
-      <b>package</b> <FONT COLOR=red><A NAME="72_15">C_E_Array</A></FONT> <b>is</b> <b>new</b>
-        <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses__adb.htm#65_12">Element</A>, <A HREF="terminal_interface-curses__adb.htm#71_12">E_Array</A>, <A HREF="terminal_interface-curses__adb.htm#65_12">Element</A>'Val (0));
-      <b>use</b> <A HREF="terminal_interface-curses__adb.htm#72_15">C_E_Array</A>;
+   <b>function</b> <A HREF="terminal_interface-curses__adb.htm#65_13">W_Get_Element</A> (<FONT COLOR=red><A NAME="68_28">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                           <FONT COLOR=red><A NAME="69_28">Offset</A></FONT> : <b>in</b> Natural) <b>return</b> <A HREF="terminal_interface-curses__adb.htm#64_12">Element</A> <b>is</b>
+      <b>type</b> <FONT COLOR=red><A NAME="70_12">E_Array</A></FONT> <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses__adb.htm#64_12">Element</A>;
+      <b>package</b> <FONT COLOR=red><A NAME="71_15">C_E_Array</A></FONT> <b>is</b> <b>new</b>
+        <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses__adb.htm#64_12">Element</A>, <A HREF="terminal_interface-curses__adb.htm#70_12">E_Array</A>, <A HREF="terminal_interface-curses__adb.htm#64_12">Element</A>'Val (0));
+      <b>use</b> <A HREF="terminal_interface-curses__adb.htm#71_15">C_E_Array</A>;
 
-      <b>function</b> <FONT COLOR=red><A NAME="76_16">To_Pointer</A></FONT> <b>is</b> <b>new</b>
-        Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>, Pointer);
+      <b>function</b> <FONT COLOR=red><A NAME="75_16">To_Pointer</A></FONT> <b>is</b> <b>new</b>
+        Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>, Pointer);
 
-      <FONT COLOR=red><A NAME="79_7">P</A></FONT> : Pointer := <A HREF="terminal_interface-curses__adb.htm#76_16">To_Pointer</A> (<A HREF="terminal_interface-curses__adb.htm#66_28">Win</A>);
+      <FONT COLOR=red><A NAME="78_7">P</A></FONT> : Pointer := <A HREF="terminal_interface-curses__adb.htm#75_16">To_Pointer</A> (<A HREF="terminal_interface-curses__adb.htm#65_28">Win</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#66_28">Win</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#65_28">Win</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses__adb.htm#79_7">P</A> := <A HREF="terminal_interface-curses__adb.htm#79_7">P</A> + ptrdiff_t (<A HREF="terminal_interface-curses__adb.htm#67_28">Offset</A>);
-         <b>return</b> <A HREF="terminal_interface-curses__adb.htm#79_7">P</A>.<b>all</b>;
+         <A HREF="terminal_interface-curses__adb.htm#78_7">P</A> := <A HREF="terminal_interface-curses__adb.htm#78_7">P</A> + ptrdiff_t (<A HREF="terminal_interface-curses__adb.htm#66_28">Offset</A>);
+         <b>return</b> <A HREF="terminal_interface-curses__adb.htm#78_7">P</A>.<b>all</b>;
       <b>end</b> <b>if</b>;
    <b>end</b> W_Get_Element;
 
-   <b>function</b> <FONT COLOR=red><A NAME="89_13">W_Get_Int</A></FONT>   <b>is</b> <b>new</b> <A HREF="terminal_interface-curses__adb.htm#66_13">W_Get_Element</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>);
-   <b>function</b> <FONT COLOR=red><A NAME="90_13">W_Get_Short</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses__adb.htm#66_13">W_Get_Element</A> (<A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>);
-   <b>function</b> <FONT COLOR=red><A NAME="91_13">W_Get_Byte</A></FONT>  <b>is</b> <b>new</b> <A HREF="terminal_interface-curses__adb.htm#66_13">W_Get_Element</A> (<A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.unsigned_char);
+   <b>function</b> <FONT COLOR=red><A NAME="88_13">W_Get_Int</A></FONT>   <b>is</b> <b>new</b> <A HREF="terminal_interface-curses__adb.htm#65_13">W_Get_Element</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="89_13">W_Get_Short</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses__adb.htm#65_13">W_Get_Element</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>);
+   <b>function</b> <FONT COLOR=red><A NAME="90_13">W_Get_Byte</A></FONT>  <b>is</b> <b>new</b> <A HREF="terminal_interface-curses__adb.htm#65_13">W_Get_Element</A> (<A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.unsigned_char);
 
-   <b>function</b> <A HREF="terminal_interface-curses__adb.htm#96_13">Get_Flag</A><FONT COLOR=red><A NAME="93_13"></A></FONT> (<FONT COLOR=red><A NAME="93_23">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                      <FONT COLOR=red><A NAME="94_23">Offset</A></FONT> : Natural) <b>return</b> Boolean;
+   <b>function</b> <FONT COLOR=red><A NAME="92_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="92_23">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                      <FONT COLOR=red><A NAME="93_23">Offset</A></FONT> : Natural) <b>return</b> Boolean;
 
-   <b>function</b> <A HREF="terminal_interface-curses__adb.htm#93_13">Get_Flag</A><FONT COLOR=red><A NAME="96_13"></A></FONT> (<A HREF="terminal_interface-curses__adb.htm#93_23">Win</A>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                      <A HREF="terminal_interface-curses__adb.htm#94_23">Offset</A> : Natural) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__adb.htm#92_13">Get_Flag</A> (<A HREF="terminal_interface-curses__adb.htm#92_23">Win</A>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                      <A HREF="terminal_interface-curses__adb.htm#93_23">Offset</A> : Natural) <b>return</b> Boolean
    <b>is</b>
-      <FONT COLOR=red><A NAME="99_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="98_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <b>case</b> <A HREF="terminal_interface-curses__ads.htm#1928_4">Sizeof_bool</A> <b>is</b>
-         <b>when</b> 1 =&gt; <A HREF="terminal_interface-curses__adb.htm#99_7">Res</A> := <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#91_13">W_Get_Byte</A>  (<A HREF="terminal_interface-curses__adb.htm#93_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#94_23">Offset</A>));
-         <b>when</b> 2 =&gt; <A HREF="terminal_interface-curses__adb.htm#99_7">Res</A> := <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#90_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__adb.htm#93_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#94_23">Offset</A>));
-         <b>when</b> 4 =&gt; <A HREF="terminal_interface-curses__adb.htm#99_7">Res</A> := <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Int</A>   (<A HREF="terminal_interface-curses__adb.htm#93_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#94_23">Offset</A>));
-         <b>when</b> <b>others</b> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>case</b> <A HREF="terminal_interface-curses__ads.htm#1927_4">Sizeof_bool</A> <b>is</b>
+         <b>when</b> 1 =&gt; <A HREF="terminal_interface-curses__adb.htm#98_7">Res</A> := <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#90_13">W_Get_Byte</A>  (<A HREF="terminal_interface-curses__adb.htm#92_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#93_23">Offset</A>));
+         <b>when</b> 2 =&gt; <A HREF="terminal_interface-curses__adb.htm#98_7">Res</A> := <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__adb.htm#92_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#93_23">Offset</A>));
+         <b>when</b> 4 =&gt; <A HREF="terminal_interface-curses__adb.htm#98_7">Res</A> := <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#88_13">W_Get_Int</A>   (<A HREF="terminal_interface-curses__adb.htm#92_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#93_23">Offset</A>));
+         <b>when</b> <b>others</b> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>case</b>;
 
-      <b>case</b> <A HREF="terminal_interface-curses__adb.htm#99_7">Res</A> <b>is</b>
+      <b>case</b> <A HREF="terminal_interface-curses__adb.htm#98_7">Res</A> <b>is</b>
          <b>when</b> 0       =&gt; <b>return</b> False;
          <b>when</b> <b>others</b>  =&gt; <b>return</b> True;
       <b>end</b> <b>case</b>;
-   <b>end</b> Get_Flag;
+   <b>end</b> <A HREF="terminal_interface-curses__adb.htm#92_13">Get_Flag</A><A HREF="terminal_interface-curses__adb.htm#92_13">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1610_13">Key_Name</A><FONT COLOR=red><A NAME="115_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1610_23">Key</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#72_12">Real_Key_Code</A>) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1609_13">Key_Name</A> (<A HREF="terminal_interface-curses__ads.htm#1609_23">Key</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#71_12">Real_Key_Code</A>) <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="117_16">Keyname</A></FONT> (<FONT COLOR=red><A NAME="117_25">K</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#117_16">Keyname</A>, "keyname");
+      <b>function</b> <FONT COLOR=red><A NAME="116_16">Keyname</A></FONT> (<FONT COLOR=red><A NAME="116_25">K</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#116_16">Keyname</A>, "keyname");
 
-      <FONT COLOR=red><A NAME="120_7">Ch</A></FONT> : Character;
+      <FONT COLOR=red><A NAME="119_7">Ch</A></FONT> : Character;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#1610_23">Key</A> &lt;= Character'Pos (Character'Last) <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#120_7">Ch</A> := Character'Val (<A HREF="terminal_interface-curses__ads.htm#1610_23">Key</A>);
-         <b>if</b> Is_Control (<A HREF="terminal_interface-curses__adb.htm#120_7">Ch</A>) <b>then</b>
-            <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1621_13">Un_Control</A> (<A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__adb.htm#120_7">Ch</A>,
-                                                     Color =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First,
-                                                     Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>));
-         <b>elsif</b> Is_Graphic (<A HREF="terminal_interface-curses__adb.htm#120_7">Ch</A>) <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#1609_23">Key</A> &lt;= Character'Pos (Character'Last) <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#119_7">Ch</A> := Character'Val (<A HREF="terminal_interface-curses__ads.htm#1609_23">Key</A>);
+         <b>if</b> Is_Control (<A HREF="terminal_interface-curses__adb.htm#119_7">Ch</A>) <b>then</b>
+            <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1620_13">Un_Control</A> (<A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__adb.htm#119_7">Ch</A>,
+                                                     Color =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First,
+                                                     Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>));
+         <b>elsif</b> Is_Graphic (<A HREF="terminal_interface-curses__adb.htm#119_7">Ch</A>) <b>then</b>
             <b>declare</b>
-               <FONT COLOR=red><A NAME="130_16">S</A></FONT> : String (1 .. 1);
+               <FONT COLOR=red><A NAME="129_16">S</A></FONT> : String (1 .. 1);
             <b>begin</b>
-               <A HREF="terminal_interface-curses__adb.htm#130_16">S</A> (1) := <A HREF="terminal_interface-curses__adb.htm#120_7">Ch</A>;
-               <b>return</b> <A HREF="terminal_interface-curses__adb.htm#130_16">S</A>;
+               <A HREF="terminal_interface-curses__adb.htm#129_16">S</A> (1) := <A HREF="terminal_interface-curses__adb.htm#119_7">Ch</A>;
+               <b>return</b> <A HREF="terminal_interface-curses__adb.htm#129_16">S</A>;
             <b>end</b>;
          <b>else</b>
             <b>return</b> "";
          <b>end</b> <b>if</b>;
       <b>else</b>
-         <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#117_16">Keyname</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1610_23">Key</A>)));
+         <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#116_16">Keyname</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1609_23">Key</A>)));
       <b>end</b> <b>if</b>;
-   <b>end</b> Key_Name;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1609_13">Key_Name</A><A HREF="terminal_interface-curses__ads.htm#1609_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1604_14">Key_Name</A><FONT COLOR=red><A NAME="143_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1604_24">Key</A>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#72_12">Real_Key_Code</A>;
-                       <A HREF="terminal_interface-curses__ads.htm#1605_24">Name</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1603_14">Key_Name</A><FONT COLOR=red><A NAME="142_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1603_24">Key</A>  : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#71_12">Real_Key_Code</A>;
+                       <A HREF="terminal_interface-curses__ads.htm#1604_24">Name</A> : <b>out</b> String)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__adb.htm#57_12">ASF</A>.Move (<A HREF="terminal_interface-curses__ads.htm#1610_13">Key_Name</A> (<A HREF="terminal_interface-curses__ads.htm#1604_24">Key</A>), <A HREF="terminal_interface-curses__ads.htm#1605_24">Name</A>);
-   <b>end</b> Key_Name;
+      <A HREF="terminal_interface-curses__adb.htm#56_12">ASF</A>.Move (<A HREF="terminal_interface-curses__ads.htm#1609_13">Key_Name</A> (<A HREF="terminal_interface-curses__ads.htm#1603_24">Key</A>), <A HREF="terminal_interface-curses__ads.htm#1604_24">Name</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1603_14">Key_Name</A><A HREF="terminal_interface-curses__ads.htm#1603_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#480_14">Init_Screen</A><FONT COLOR=red><A NAME="151_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#479_14">Init_Screen</A><FONT COLOR=red><A NAME="150_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="153_16">Initscr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#153_16">Initscr</A>, "initscr");
+      <b>function</b> <FONT COLOR=red><A NAME="152_16">Initscr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#152_16">Initscr</A>, "initscr");
 
-      <FONT COLOR=red><A NAME="156_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
+      <FONT COLOR=red><A NAME="155_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses__adb.htm#156_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#153_16">Initscr</A>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#156_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <A HREF="terminal_interface-curses__adb.htm#155_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#152_16">Initscr</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#155_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Init_Screen;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#479_14">Init_Screen</A><A HREF="terminal_interface-curses__ads.htm#479_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#489_14">End_Windows</A><FONT COLOR=red><A NAME="164_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#488_14">End_Windows</A><FONT COLOR=red><A NAME="163_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="166_16">Endwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#166_16">Endwin</A>, "endwin");
+      <b>function</b> <FONT COLOR=red><A NAME="165_16">Endwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#165_16">Endwin</A>, "endwin");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#166_16">Endwin</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#165_16">Endwin</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> End_Windows;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#488_14">End_Windows</A><A HREF="terminal_interface-curses__ads.htm#488_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#496_13">Is_End_Window</A><FONT COLOR=red><A NAME="174_13"></A></FONT> <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#495_13">Is_End_Window</A> <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="176_16">Isendwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#176_16">Isendwin</A>, "isendwin");
+      <b>function</b> <FONT COLOR=red><A NAME="175_16">Isendwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#175_16">Isendwin</A>, "isendwin");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#176_16">Isendwin</A> = <A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#175_16">Isendwin</A> = <A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Is_End_Window;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#495_13">Is_End_Window</A><A HREF="terminal_interface-curses__ads.htm#495_13">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#505_14">Move_Cursor</A><FONT COLOR=red><A NAME="186_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#505_27">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                          <A HREF="terminal_interface-curses__ads.htm#506_27">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                          <A HREF="terminal_interface-curses__ads.htm#507_27">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#504_14">Move_Cursor</A><FONT COLOR=red><A NAME="185_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#504_27">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                          <A HREF="terminal_interface-curses__ads.htm#505_27">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                          <A HREF="terminal_interface-curses__ads.htm#506_27">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="190_16">Wmove</A></FONT> (<FONT COLOR=red><A NAME="190_23">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                      <FONT COLOR=red><A NAME="191_23">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                      <FONT COLOR=red><A NAME="192_23">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>
-                     ) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#190_16">Wmove</A>, "wmove");
+      <b>function</b> <FONT COLOR=red><A NAME="189_16">Wmove</A></FONT> (<FONT COLOR=red><A NAME="189_23">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                      <FONT COLOR=red><A NAME="190_23">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                      <FONT COLOR=red><A NAME="191_23">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>
+                     ) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#189_16">Wmove</A>, "wmove");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#190_16">Wmove</A> (<A HREF="terminal_interface-curses__ads.htm#505_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#506_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#507_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#189_16">Wmove</A> (<A HREF="terminal_interface-curses__ads.htm#504_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#505_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#506_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Move_Cursor;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#504_14">Move_Cursor</A><A HREF="terminal_interface-curses__ads.htm#504_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#517_14">Add</A><FONT COLOR=red><A NAME="201_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#517_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                  <A HREF="terminal_interface-curses__ads.htm#518_19">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#516_14">Add</A><FONT COLOR=red><A NAME="200_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#516_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                  <A HREF="terminal_interface-curses__ads.htm#517_19">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="204_16">Waddch</A></FONT> (<FONT COLOR=red><A NAME="204_24">W</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                       <FONT COLOR=red><A NAME="205_24">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#204_16">Waddch</A>, "waddch");
+      <b>function</b> <FONT COLOR=red><A NAME="203_16">Waddch</A></FONT> (<FONT COLOR=red><A NAME="203_24">W</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                       <FONT COLOR=red><A NAME="204_24">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#203_16">Waddch</A>, "waddch");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#204_16">Waddch</A> (<A HREF="terminal_interface-curses__ads.htm#517_19">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#518_19">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#203_16">Waddch</A> (<A HREF="terminal_interface-curses__ads.htm#516_19">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#517_19">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Add;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#516_14">Add</A><A HREF="terminal_interface-curses__ads.htm#516_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#522_14">Add</A><FONT COLOR=red><A NAME="213_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#522_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                  <A HREF="terminal_interface-curses__ads.htm#523_19">Ch</A>  : <b>in</b> Character)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#521_14">Add</A><FONT COLOR=red><A NAME="212_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#521_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                  <A HREF="terminal_interface-curses__ads.htm#522_19">Ch</A>  : <b>in</b> Character)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#517_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#522_19">Win</A>,
-           <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#523_19">Ch</A>,
-                                 Color =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First,
-                                 Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>));
-   <b>end</b> Add;
+      <A HREF="terminal_interface-curses__ads.htm#516_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#521_19">Win</A>,
+           <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#522_19">Ch</A>,
+                                 Color =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First,
+                                 Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#521_14">Add</A><A HREF="terminal_interface-curses__ads.htm#521_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#528_14">Add</A><FONT COLOR=red><A NAME="223_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#529_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#530_7">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#531_7">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#532_7">Ch</A>     : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#527_14">Add</A><FONT COLOR=red><A NAME="222_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#528_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#529_7">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#530_7">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#531_7">Ch</A>     : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="229_16">mvwaddch</A></FONT> (<FONT COLOR=red><A NAME="229_26">W</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="230_26">Y</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                         <FONT COLOR=red><A NAME="231_26">X</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                         <FONT COLOR=red><A NAME="232_26">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#229_16">mvwaddch</A>, "mvwaddch");
+      <b>function</b> <FONT COLOR=red><A NAME="228_16">mvwaddch</A></FONT> (<FONT COLOR=red><A NAME="228_26">W</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="229_26">Y</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                         <FONT COLOR=red><A NAME="230_26">X</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                         <FONT COLOR=red><A NAME="231_26">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#228_16">mvwaddch</A>, "mvwaddch");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#229_16">mvwaddch</A> (<A HREF="terminal_interface-curses__ads.htm#529_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#530_7">Line</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#531_7">Column</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#532_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#228_16">mvwaddch</A> (<A HREF="terminal_interface-curses__ads.htm#528_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#529_7">Line</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#530_7">Column</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#531_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Add;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#527_14">Add</A><A HREF="terminal_interface-curses__ads.htm#527_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#536_14">Add</A><FONT COLOR=red><A NAME="242_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#537_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#538_7">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#539_7">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#540_7">Ch</A>     : <b>in</b> Character)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#535_14">Add</A><FONT COLOR=red><A NAME="241_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#536_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#537_7">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#538_7">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#539_7">Ch</A>     : <b>in</b> Character)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#528_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#537_7">Win</A>,
-           <A HREF="terminal_interface-curses__ads.htm#538_7">Line</A>,
-           <A HREF="terminal_interface-curses__ads.htm#539_7">Column</A>,
-           <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#540_7">Ch</A>,
-                                 Color =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First,
-                                 Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>));
-   <b>end</b> Add;
+      <A HREF="terminal_interface-curses__ads.htm#527_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#536_7">Win</A>,
+           <A HREF="terminal_interface-curses__ads.htm#537_7">Line</A>,
+           <A HREF="terminal_interface-curses__ads.htm#538_7">Column</A>,
+           <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#539_7">Ch</A>,
+                                 Color =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First,
+                                 Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#535_14">Add</A><A HREF="terminal_interface-curses__ads.htm#535_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#545_14">Add_With_Immediate_Echo</A><FONT COLOR=red><A NAME="257_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#546_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#547_7">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#544_14">Add_With_Immediate_Echo</A><FONT COLOR=red><A NAME="256_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#545_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#546_7">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="261_16">Wechochar</A></FONT> (<FONT COLOR=red><A NAME="261_27">W</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                          <FONT COLOR=red><A NAME="262_27">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#261_16">Wechochar</A>, "wechochar");
+      <b>function</b> <FONT COLOR=red><A NAME="260_16">Wechochar</A></FONT> (<FONT COLOR=red><A NAME="260_27">W</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                          <FONT COLOR=red><A NAME="261_27">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#260_16">Wechochar</A>, "wechochar");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#261_16">Wechochar</A> (<A HREF="terminal_interface-curses__ads.htm#546_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#547_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#260_16">Wechochar</A> (<A HREF="terminal_interface-curses__ads.htm#545_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#546_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Add_With_Immediate_Echo;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#544_14">Add_With_Immediate_Echo</A><A HREF="terminal_interface-curses__ads.htm#544_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#551_14">Add_With_Immediate_Echo</A><FONT COLOR=red><A NAME="270_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#552_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#553_7">Ch</A>  : <b>in</b> Character)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#550_14">Add_With_Immediate_Echo</A><FONT COLOR=red><A NAME="269_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#551_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#552_7">Ch</A>  : <b>in</b> Character)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#545_14">Add_With_Immediate_Echo</A>
-        (<A HREF="terminal_interface-curses__ads.htm#552_7">Win</A>,
-         <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#553_7">Ch</A>,
-                               Color =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First,
-                               Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>));
-   <b>end</b> Add_With_Immediate_Echo;
+      <A HREF="terminal_interface-curses__ads.htm#544_14">Add_With_Immediate_Echo</A>
+        (<A HREF="terminal_interface-curses__ads.htm#551_7">Win</A>,
+         <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#552_7">Ch</A>,
+                               Color =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First,
+                               Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#550_14">Add_With_Immediate_Echo</A><A HREF="terminal_interface-curses__ads.htm#550_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#563_13">Create</A><FONT COLOR=red><A NAME="282_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#564_7">Number_Of_Lines</A>       : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                    <A HREF="terminal_interface-curses__ads.htm#565_7">Number_Of_Columns</A>     : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
-                    <A HREF="terminal_interface-curses__ads.htm#566_7">First_Line_Position</A>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                    <A HREF="terminal_interface-curses__ads.htm#567_7">First_Column_Position</A> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="287_16">Newwin</A></FONT> (<FONT COLOR=red><A NAME="287_24">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                       <FONT COLOR=red><A NAME="288_24">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                       <FONT COLOR=red><A NAME="289_24">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                       <FONT COLOR=red><A NAME="290_24">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#287_16">Newwin</A>, "newwin");
-
-      <FONT COLOR=red><A NAME="293_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-   <b>begin</b>
-      <A HREF="terminal_interface-curses__adb.htm#293_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#287_16">Newwin</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#564_7">Number_Of_Lines</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#565_7">Number_Of_Columns</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#566_7">First_Line_Position</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#567_7">First_Column_Position</A>));
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#293_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#293_7">W</A>;
-   <b>end</b> Create;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#582_14">Delete</A><FONT COLOR=red><A NAME="305_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#582_22">Win</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="307_16">Wdelwin</A></FONT> (<FONT COLOR=red><A NAME="307_25">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#307_16">Wdelwin</A>, "delwin");
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#307_16">Wdelwin</A> (<A HREF="terminal_interface-curses__ads.htm#582_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#562_13">Create</A> (<A HREF="terminal_interface-curses__ads.htm#563_7">Number_Of_Lines</A>       : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                    <A HREF="terminal_interface-curses__ads.htm#564_7">Number_Of_Columns</A>     : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
+                    <A HREF="terminal_interface-curses__ads.htm#565_7">First_Line_Position</A>   : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                    <A HREF="terminal_interface-curses__ads.htm#566_7">First_Column_Position</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="286_16">Newwin</A></FONT> (<FONT COLOR=red><A NAME="286_24">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                       <FONT COLOR=red><A NAME="287_24">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                       <FONT COLOR=red><A NAME="288_24">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                       <FONT COLOR=red><A NAME="289_24">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#286_16">Newwin</A>, "newwin");
+
+      <FONT COLOR=red><A NAME="292_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+   <b>begin</b>
+      <A HREF="terminal_interface-curses__adb.htm#292_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#286_16">Newwin</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#563_7">Number_Of_Lines</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#564_7">Number_Of_Columns</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#565_7">First_Line_Position</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#566_7">First_Column_Position</A>));
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#292_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#292_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#562_13">Create</A><A HREF="terminal_interface-curses__ads.htm#562_13">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#581_14">Delete</A><FONT COLOR=red><A NAME="304_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#581_22">Win</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="306_16">Wdelwin</A></FONT> (<FONT COLOR=red><A NAME="306_25">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#306_16">Wdelwin</A>, "delwin");
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#306_16">Wdelwin</A> (<A HREF="terminal_interface-curses__ads.htm#581_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses__ads.htm#582_22">Win</A> := <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A>;
-   <b>end</b> Delete;
+      <A HREF="terminal_interface-curses__ads.htm#581_22">Win</A> := <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#581_14">Delete</A><A HREF="terminal_interface-curses__ads.htm#581_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#588_13">Sub_Window</A><FONT COLOR=red><A NAME="316_13"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#589_7">Win</A>                   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#590_7">Number_Of_Lines</A>       : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-      <A HREF="terminal_interface-curses__ads.htm#591_7">Number_Of_Columns</A>     : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
-      <A HREF="terminal_interface-curses__ads.htm#592_7">First_Line_Position</A>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#593_7">First_Column_Position</A> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#587_13">Sub_Window</A>
+     (<A HREF="terminal_interface-curses__ads.htm#588_7">Win</A>                   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#589_7">Number_Of_Lines</A>       : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+      <A HREF="terminal_interface-curses__ads.htm#590_7">Number_Of_Columns</A>     : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
+      <A HREF="terminal_interface-curses__ads.htm#591_7">First_Line_Position</A>   : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#592_7">First_Column_Position</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="323_16">Subwin</A></FONT>
-        (<FONT COLOR=red><A NAME="324_10">Win</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-         <FONT COLOR=red><A NAME="325_10">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="326_10">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="327_10">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="328_10">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#323_16">Subwin</A>, "subwin");
+      <b>function</b> <FONT COLOR=red><A NAME="322_16">Subwin</A></FONT>
+        (<FONT COLOR=red><A NAME="323_10">Win</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+         <FONT COLOR=red><A NAME="324_10">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="325_10">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="326_10">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="327_10">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#322_16">Subwin</A>, "subwin");
 
-      <FONT COLOR=red><A NAME="331_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
+      <FONT COLOR=red><A NAME="330_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses__adb.htm#331_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#323_16">Subwin</A> (<A HREF="terminal_interface-curses__ads.htm#589_7">Win</A>,
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#590_7">Number_Of_Lines</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#591_7">Number_Of_Columns</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#592_7">First_Line_Position</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#593_7">First_Column_Position</A>));
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#331_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <A HREF="terminal_interface-curses__adb.htm#330_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#322_16">Subwin</A> (<A HREF="terminal_interface-curses__ads.htm#588_7">Win</A>,
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#589_7">Number_Of_Lines</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#590_7">Number_Of_Columns</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#591_7">First_Line_Position</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#592_7">First_Column_Position</A>));
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#330_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#331_7">W</A>;
-   <b>end</b> Sub_Window;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#330_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#587_13">Sub_Window</A><A HREF="terminal_interface-curses__ads.htm#587_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#598_13">Derived_Window</A><FONT COLOR=red><A NAME="344_13"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#599_7">Win</A>                   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#600_7">Number_Of_Lines</A>       : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-      <A HREF="terminal_interface-curses__ads.htm#601_7">Number_Of_Columns</A>     : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
-      <A HREF="terminal_interface-curses__ads.htm#602_7">First_Line_Position</A>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#603_7">First_Column_Position</A> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#597_13">Derived_Window</A>
+     (<A HREF="terminal_interface-curses__ads.htm#598_7">Win</A>                   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#599_7">Number_Of_Lines</A>       : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+      <A HREF="terminal_interface-curses__ads.htm#600_7">Number_Of_Columns</A>     : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
+      <A HREF="terminal_interface-curses__ads.htm#601_7">First_Line_Position</A>   : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#602_7">First_Column_Position</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="351_16">Derwin</A></FONT>
-        (<FONT COLOR=red><A NAME="352_10">Win</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-         <FONT COLOR=red><A NAME="353_10">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="354_10">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="355_10">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="356_10">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#351_16">Derwin</A>, "derwin");
+      <b>function</b> <FONT COLOR=red><A NAME="350_16">Derwin</A></FONT>
+        (<FONT COLOR=red><A NAME="351_10">Win</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+         <FONT COLOR=red><A NAME="352_10">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="353_10">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="354_10">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="355_10">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#350_16">Derwin</A>, "derwin");
 
-      <FONT COLOR=red><A NAME="359_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
+      <FONT COLOR=red><A NAME="358_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses__adb.htm#359_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#351_16">Derwin</A> (<A HREF="terminal_interface-curses__ads.htm#599_7">Win</A>,
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#600_7">Number_Of_Lines</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#601_7">Number_Of_Columns</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#602_7">First_Line_Position</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#603_7">First_Column_Position</A>));
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#359_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <A HREF="terminal_interface-curses__adb.htm#358_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#350_16">Derwin</A> (<A HREF="terminal_interface-curses__ads.htm#598_7">Win</A>,
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#599_7">Number_Of_Lines</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#600_7">Number_Of_Columns</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#601_7">First_Line_Position</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#602_7">First_Column_Position</A>));
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#358_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#359_7">W</A>;
-   <b>end</b> Derived_Window;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#358_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#597_13">Derived_Window</A><A HREF="terminal_interface-curses__ads.htm#597_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#608_13">Duplicate</A><FONT COLOR=red><A NAME="372_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#608_24">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#607_13">Duplicate</A> (<A HREF="terminal_interface-curses__ads.htm#607_24">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="374_16">Dupwin</A></FONT> (<FONT COLOR=red><A NAME="374_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#374_16">Dupwin</A>, "dupwin");
+      <b>function</b> <FONT COLOR=red><A NAME="373_16">Dupwin</A></FONT> (<FONT COLOR=red><A NAME="373_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#373_16">Dupwin</A>, "dupwin");
 
-      <FONT COLOR=red><A NAME="377_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__adb.htm#374_16">Dupwin</A> (<A HREF="terminal_interface-curses__ads.htm#608_24">Win</A>);
+      <FONT COLOR=red><A NAME="376_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__adb.htm#373_16">Dupwin</A> (<A HREF="terminal_interface-curses__ads.htm#607_24">Win</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#377_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#376_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#377_7">W</A>;
-   <b>end</b> Duplicate;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#376_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#607_13">Duplicate</A><A HREF="terminal_interface-curses__ads.htm#607_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#613_14">Move_Window</A><FONT COLOR=red><A NAME="385_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#613_27">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                          <A HREF="terminal_interface-curses__ads.htm#614_27">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                          <A HREF="terminal_interface-curses__ads.htm#615_27">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#612_14">Move_Window</A><FONT COLOR=red><A NAME="384_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#612_27">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                          <A HREF="terminal_interface-curses__ads.htm#613_27">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                          <A HREF="terminal_interface-curses__ads.htm#614_27">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="389_16">Mvwin</A></FONT> (<FONT COLOR=red><A NAME="389_23">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                      <FONT COLOR=red><A NAME="390_23">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                      <FONT COLOR=red><A NAME="391_23">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#389_16">Mvwin</A>, "mvwin");
+      <b>function</b> <FONT COLOR=red><A NAME="388_16">Mvwin</A></FONT> (<FONT COLOR=red><A NAME="388_23">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                      <FONT COLOR=red><A NAME="389_23">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                      <FONT COLOR=red><A NAME="390_23">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#388_16">Mvwin</A>, "mvwin");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#389_16">Mvwin</A> (<A HREF="terminal_interface-curses__ads.htm#613_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#614_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#615_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#388_16">Mvwin</A> (<A HREF="terminal_interface-curses__ads.htm#612_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#613_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#614_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Move_Window;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#612_14">Move_Window</A><A HREF="terminal_interface-curses__ads.htm#612_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#620_14">Move_Derived_Window</A><FONT COLOR=red><A NAME="399_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#620_35">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                                  <A HREF="terminal_interface-curses__ads.htm#621_35">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                                  <A HREF="terminal_interface-curses__ads.htm#622_35">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#619_14">Move_Derived_Window</A><FONT COLOR=red><A NAME="398_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#619_35">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                                  <A HREF="terminal_interface-curses__ads.htm#620_35">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                                  <A HREF="terminal_interface-curses__ads.htm#621_35">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="403_16">Mvderwin</A></FONT> (<FONT COLOR=red><A NAME="403_26">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="404_26">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                         <FONT COLOR=red><A NAME="405_26">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#403_16">Mvderwin</A>, "mvderwin");
+      <b>function</b> <FONT COLOR=red><A NAME="402_16">Mvderwin</A></FONT> (<FONT COLOR=red><A NAME="402_26">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="403_26">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                         <FONT COLOR=red><A NAME="404_26">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#402_16">Mvderwin</A>, "mvderwin");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#403_16">Mvderwin</A> (<A HREF="terminal_interface-curses__ads.htm#620_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#621_35">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#622_35">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#402_16">Mvderwin</A> (<A HREF="terminal_interface-curses__ads.htm#619_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#620_35">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#621_35">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Move_Derived_Window;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#619_14">Move_Derived_Window</A><A HREF="terminal_interface-curses__ads.htm#619_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#637_14">Set_Synch_Mode</A><FONT COLOR=red><A NAME="413_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#637_30">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>  := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                             <A HREF="terminal_interface-curses__ads.htm#638_30">Mode</A> : <b>in</b> Boolean := False)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#636_14">Set_Synch_Mode</A><FONT COLOR=red><A NAME="412_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#636_30">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>  := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                             <A HREF="terminal_interface-curses__ads.htm#637_30">Mode</A> : <b>in</b> Boolean := False)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="416_16">Syncok</A></FONT> (<FONT COLOR=red><A NAME="416_24">Win</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                       <FONT COLOR=red><A NAME="417_24">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#416_16">Syncok</A>, "syncok");
+      <b>function</b> <FONT COLOR=red><A NAME="415_16">Syncok</A></FONT> (<FONT COLOR=red><A NAME="415_24">Win</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                       <FONT COLOR=red><A NAME="416_24">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#415_16">Syncok</A>, "syncok");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#416_16">Syncok</A> (<A HREF="terminal_interface-curses__ads.htm#637_30">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#638_30">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#415_16">Syncok</A> (<A HREF="terminal_interface-curses__ads.htm#636_30">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#637_30">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Synch_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#636_14">Set_Synch_Mode</A><A HREF="terminal_interface-curses__ads.htm#636_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#647_14">Add</A><FONT COLOR=red><A NAME="425_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#647_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                  <A HREF="terminal_interface-curses__ads.htm#648_19">Str</A> : <b>in</b> String;
-                  <A HREF="terminal_interface-curses__ads.htm#649_19">Len</A> : <b>in</b> Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#646_14">Add</A><FONT COLOR=red><A NAME="424_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#646_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                  <A HREF="terminal_interface-curses__ads.htm#647_19">Str</A> : <b>in</b> String;
+                  <A HREF="terminal_interface-curses__ads.htm#648_19">Len</A> : <b>in</b> Integer := -1)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="429_16">Waddnstr</A></FONT> (<FONT COLOR=red><A NAME="429_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="430_26">Str</A></FONT> : char_array;
-                         <FONT COLOR=red><A NAME="431_26">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#429_16">Waddnstr</A>, "waddnstr");
+      <b>function</b> <FONT COLOR=red><A NAME="428_16">Waddnstr</A></FONT> (<FONT COLOR=red><A NAME="428_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="429_26">Str</A></FONT> : char_array;
+                         <FONT COLOR=red><A NAME="430_26">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#428_16">Waddnstr</A>, "waddnstr");
 
-      <FONT COLOR=red><A NAME="434_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#648_19">Str</A>'Length);
-      <FONT COLOR=red><A NAME="435_7">Length</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="433_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#647_19">Str</A>'Length);
+      <FONT COLOR=red><A NAME="434_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses__ads.htm#648_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#434_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#435_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#429_16">Waddnstr</A> (<A HREF="terminal_interface-curses__ads.htm#647_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#434_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#649_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      To_C (<A HREF="terminal_interface-curses__ads.htm#647_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#433_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#434_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#428_16">Waddnstr</A> (<A HREF="terminal_interface-curses__ads.htm#646_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#433_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#648_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Add;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#646_14">Add</A><A HREF="terminal_interface-curses__ads.htm#646_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#656_14">Add</A><FONT COLOR=red><A NAME="443_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#656_19">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#657_19">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#658_19">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#659_19">Str</A>    : <b>in</b> String;
-      <A HREF="terminal_interface-curses__ads.htm#660_19">Len</A>    : <b>in</b> Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#655_14">Add</A><FONT COLOR=red><A NAME="442_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#655_19">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#656_19">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#657_19">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#658_19">Str</A>    : <b>in</b> String;
+      <A HREF="terminal_interface-curses__ads.htm#659_19">Len</A>    : <b>in</b> Integer := -1)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#505_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#656_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#657_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#658_19">Column</A>);
-      <A HREF="terminal_interface-curses__ads.htm#647_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#656_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#659_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#660_19">Len</A>);
-   <b>end</b> Add;
+      <A HREF="terminal_interface-curses__ads.htm#504_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#655_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#656_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#657_19">Column</A>);
+      <A HREF="terminal_interface-curses__ads.htm#646_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#655_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#658_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#659_19">Len</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#655_14">Add</A><A HREF="terminal_interface-curses__ads.htm#655_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#671_14">Add</A><FONT COLOR=red><A NAME="455_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#671_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#672_19">Str</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#376_9">Attributed_String</A>;
-      <A HREF="terminal_interface-curses__ads.htm#673_19">Len</A> : <b>in</b> Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#670_14">Add</A><FONT COLOR=red><A NAME="454_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#670_19">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#671_19">Str</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#375_9">Attributed_String</A>;
+      <A HREF="terminal_interface-curses__ads.htm#672_19">Len</A> : <b>in</b> Integer := -1)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="460_16">Waddchnstr</A></FONT> (<FONT COLOR=red><A NAME="460_28">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                           <FONT COLOR=red><A NAME="461_28">Str</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#59_9">chtype_array</A>;
-                           <FONT COLOR=red><A NAME="462_28">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#460_16">Waddchnstr</A>, "waddchnstr");
+      <b>function</b> <FONT COLOR=red><A NAME="459_16">Waddchnstr</A></FONT> (<FONT COLOR=red><A NAME="459_28">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                           <FONT COLOR=red><A NAME="460_28">Str</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#58_9">chtype_array</A>;
+                           <FONT COLOR=red><A NAME="461_28">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#459_16">Waddchnstr</A>, "waddchnstr");
 
-      <FONT COLOR=red><A NAME="465_7">Txt</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#59_9">chtype_array</A> (0 .. <A HREF="terminal_interface-curses__ads.htm#672_19">Str</A>'Length);
+      <FONT COLOR=red><A NAME="464_7">Txt</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#58_9">chtype_array</A> (0 .. <A HREF="terminal_interface-curses__ads.htm#671_19">Str</A>'Length);
    <b>begin</b>
-      <b>for</b> <FONT COLOR=red><A NAME="467_11">Length</A></FONT> <b>in</b> 1 .. size_t (<A HREF="terminal_interface-curses__ads.htm#672_19">Str</A>'Length) <b>loop</b>
-         <A HREF="terminal_interface-curses__adb.htm#465_7">Txt</A> (<A HREF="terminal_interface-curses__adb.htm#467_11">Length</A> - 1) := <A HREF="terminal_interface-curses__ads.htm#672_19">Str</A> (Natural (<A HREF="terminal_interface-curses__adb.htm#467_11">Length</A>));
+      <b>for</b> <FONT COLOR=red><A NAME="466_11">Length</A></FONT> <b>in</b> 1 .. size_t (<A HREF="terminal_interface-curses__ads.htm#671_19">Str</A>'Length) <b>loop</b>
+         <A HREF="terminal_interface-curses__adb.htm#464_7">Txt</A> (<A HREF="terminal_interface-curses__adb.htm#466_11">Length</A> - 1) := <A HREF="terminal_interface-curses__ads.htm#671_19">Str</A> (Natural (<A HREF="terminal_interface-curses__adb.htm#466_11">Length</A>));
       <b>end</b> <b>loop</b>;
-      <A HREF="terminal_interface-curses__adb.htm#465_7">Txt</A> (<A HREF="terminal_interface-curses__ads.htm#672_19">Str</A>'Length) := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#460_16">Waddchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#671_19">Win</A>,
-                     <A HREF="terminal_interface-curses__adb.htm#465_7">Txt</A>,
-                     <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#673_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <A HREF="terminal_interface-curses__adb.htm#464_7">Txt</A> (<A HREF="terminal_interface-curses__ads.htm#671_19">Str</A>'Length) := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#459_16">Waddchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#670_19">Win</A>,
+                     <A HREF="terminal_interface-curses__adb.htm#464_7">Txt</A>,
+                     <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#672_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Add;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#670_14">Add</A><A HREF="terminal_interface-curses__ads.htm#670_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#680_14">Add</A><FONT COLOR=red><A NAME="478_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#680_19">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#681_19">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#682_19">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#683_19">Str</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#376_9">Attributed_String</A>;
-      <A HREF="terminal_interface-curses__ads.htm#684_19">Len</A>    : <b>in</b> Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#679_14">Add</A><FONT COLOR=red><A NAME="477_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#679_19">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#680_19">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#681_19">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#682_19">Str</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#375_9">Attributed_String</A>;
+      <A HREF="terminal_interface-curses__ads.htm#683_19">Len</A>    : <b>in</b> Integer := -1)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#505_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#680_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#681_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#682_19">Column</A>);
-      <A HREF="terminal_interface-curses__ads.htm#671_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#680_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#683_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#684_19">Len</A>);
-   <b>end</b> Add;
+      <A HREF="terminal_interface-curses__ads.htm#504_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#679_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#680_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#681_19">Column</A>);
+      <A HREF="terminal_interface-curses__ads.htm#670_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#679_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#682_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#683_19">Len</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#679_14">Add</A><A HREF="terminal_interface-curses__ads.htm#679_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#698_14">Border</A><FONT COLOR=red><A NAME="490_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#699_7">Win</A>                       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#700_7">Left_Side_Symbol</A>          : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <A HREF="terminal_interface-curses__ads.htm#701_7">Right_Side_Symbol</A>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <A HREF="terminal_interface-curses__ads.htm#702_7">Top_Side_Symbol</A>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <A HREF="terminal_interface-curses__ads.htm#703_7">Bottom_Side_Symbol</A>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <A HREF="terminal_interface-curses__ads.htm#704_7">Upper_Left_Corner_Symbol</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <A HREF="terminal_interface-curses__ads.htm#705_7">Upper_Right_Corner_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <A HREF="terminal_interface-curses__ads.htm#706_7">Lower_Left_Corner_Symbol</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <A HREF="terminal_interface-curses__ads.htm#707_7">Lower_Right_Corner_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="501_16">Wborder</A></FONT> (<FONT COLOR=red><A NAME="501_25">W</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                        <FONT COLOR=red><A NAME="502_25">LS</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-                        <FONT COLOR=red><A NAME="503_25">RS</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-                        <FONT COLOR=red><A NAME="504_25">TS</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-                        <FONT COLOR=red><A NAME="505_25">BS</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-                        <FONT COLOR=red><A NAME="506_25">ULC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-                        <FONT COLOR=red><A NAME="507_25">URC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-                        <FONT COLOR=red><A NAME="508_25">LLC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-                        <FONT COLOR=red><A NAME="509_25">LRC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#501_16">Wborder</A>, "wborder");
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#501_16">Wborder</A> (<A HREF="terminal_interface-curses__ads.htm#699_7">Win</A>,
-                  <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#700_7">Left_Side_Symbol</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#701_7">Right_Side_Symbol</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#702_7">Top_Side_Symbol</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#703_7">Bottom_Side_Symbol</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#704_7">Upper_Left_Corner_Symbol</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#705_7">Upper_Right_Corner_Symbol</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#706_7">Lower_Left_Corner_Symbol</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#707_7">Lower_Right_Corner_Symbol</A>)
-                  ) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#697_14">Border</A><FONT COLOR=red><A NAME="489_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#698_7">Win</A>                       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#699_7">Left_Side_Symbol</A>          : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <A HREF="terminal_interface-curses__ads.htm#700_7">Right_Side_Symbol</A>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <A HREF="terminal_interface-curses__ads.htm#701_7">Top_Side_Symbol</A>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <A HREF="terminal_interface-curses__ads.htm#702_7">Bottom_Side_Symbol</A>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <A HREF="terminal_interface-curses__ads.htm#703_7">Upper_Left_Corner_Symbol</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <A HREF="terminal_interface-curses__ads.htm#704_7">Upper_Right_Corner_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <A HREF="terminal_interface-curses__ads.htm#705_7">Lower_Left_Corner_Symbol</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <A HREF="terminal_interface-curses__ads.htm#706_7">Lower_Right_Corner_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="500_16">Wborder</A></FONT> (<FONT COLOR=red><A NAME="500_25">W</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                        <FONT COLOR=red><A NAME="501_25">LS</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+                        <FONT COLOR=red><A NAME="502_25">RS</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+                        <FONT COLOR=red><A NAME="503_25">TS</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+                        <FONT COLOR=red><A NAME="504_25">BS</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+                        <FONT COLOR=red><A NAME="505_25">ULC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+                        <FONT COLOR=red><A NAME="506_25">URC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+                        <FONT COLOR=red><A NAME="507_25">LLC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+                        <FONT COLOR=red><A NAME="508_25">LRC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#500_16">Wborder</A>, "wborder");
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#500_16">Wborder</A> (<A HREF="terminal_interface-curses__ads.htm#698_7">Win</A>,
+                  <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#699_7">Left_Side_Symbol</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#700_7">Right_Side_Symbol</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#701_7">Top_Side_Symbol</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#702_7">Bottom_Side_Symbol</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#703_7">Upper_Left_Corner_Symbol</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#704_7">Upper_Right_Corner_Symbol</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#705_7">Lower_Left_Corner_Symbol</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#706_7">Lower_Right_Corner_Symbol</A>)
+                  ) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A>
       <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Border;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#697_14">Border</A><A HREF="terminal_interface-curses__ads.htm#697_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#714_14">Box</A><FONT COLOR=red><A NAME="527_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#715_7">Win</A>               : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#716_7">Vertical_Symbol</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <A HREF="terminal_interface-curses__ads.htm#717_7">Horizontal_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#713_14">Box</A><FONT COLOR=red><A NAME="526_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#714_7">Win</A>               : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#715_7">Vertical_Symbol</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <A HREF="terminal_interface-curses__ads.htm#716_7">Horizontal_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#698_14">Border</A> (<A HREF="terminal_interface-curses__ads.htm#715_7">Win</A>,
-              <A HREF="terminal_interface-curses__ads.htm#716_7">Vertical_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#716_7">Vertical_Symbol</A>,
-              <A HREF="terminal_interface-curses__ads.htm#717_7">Horizontal_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#717_7">Horizontal_Symbol</A>);
-   <b>end</b> Box;
+      <A HREF="terminal_interface-curses__ads.htm#697_14">Border</A> (<A HREF="terminal_interface-curses__ads.htm#714_7">Win</A>,
+              <A HREF="terminal_interface-curses__ads.htm#715_7">Vertical_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#715_7">Vertical_Symbol</A>,
+              <A HREF="terminal_interface-curses__ads.htm#716_7">Horizontal_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#716_7">Horizontal_Symbol</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#713_14">Box</A><A HREF="terminal_interface-curses__ads.htm#713_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#722_14">Horizontal_Line</A><FONT COLOR=red><A NAME="538_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#723_7">Win</A>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#724_7">Line_Size</A>   : <b>in</b> Natural;
-      <A HREF="terminal_interface-curses__ads.htm#725_7">Line_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#721_14">Horizontal_Line</A><FONT COLOR=red><A NAME="537_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#722_7">Win</A>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#723_7">Line_Size</A>   : <b>in</b> Natural;
+      <A HREF="terminal_interface-curses__ads.htm#724_7">Line_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="543_16">Whline</A></FONT> (<FONT COLOR=red><A NAME="543_24">W</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                       <FONT COLOR=red><A NAME="544_24">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-                       <FONT COLOR=red><A NAME="545_24">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#543_16">Whline</A>, "whline");
+      <b>function</b> <FONT COLOR=red><A NAME="542_16">Whline</A></FONT> (<FONT COLOR=red><A NAME="542_24">W</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                       <FONT COLOR=red><A NAME="543_24">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+                       <FONT COLOR=red><A NAME="544_24">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#542_16">Whline</A>, "whline");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#543_16">Whline</A> (<A HREF="terminal_interface-curses__ads.htm#723_7">Win</A>,
-                 <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#725_7">Line_Symbol</A>),
-                 <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#724_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#542_16">Whline</A> (<A HREF="terminal_interface-curses__ads.htm#722_7">Win</A>,
+                 <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#724_7">Line_Symbol</A>),
+                 <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#723_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Horizontal_Line;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#721_14">Horizontal_Line</A><A HREF="terminal_interface-curses__ads.htm#721_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#731_14">Vertical_Line</A><FONT COLOR=red><A NAME="555_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#732_7">Win</A>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#733_7">Line_Size</A>   : <b>in</b> Natural;
-      <A HREF="terminal_interface-curses__ads.htm#734_7">Line_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#730_14">Vertical_Line</A><FONT COLOR=red><A NAME="554_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#731_7">Win</A>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#732_7">Line_Size</A>   : <b>in</b> Natural;
+      <A HREF="terminal_interface-curses__ads.htm#733_7">Line_Symbol</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="560_16">Wvline</A></FONT> (<FONT COLOR=red><A NAME="560_24">W</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                       <FONT COLOR=red><A NAME="561_24">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-                       <FONT COLOR=red><A NAME="562_24">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#560_16">Wvline</A>, "wvline");
+      <b>function</b> <FONT COLOR=red><A NAME="559_16">Wvline</A></FONT> (<FONT COLOR=red><A NAME="559_24">W</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                       <FONT COLOR=red><A NAME="560_24">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+                       <FONT COLOR=red><A NAME="561_24">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#559_16">Wvline</A>, "wvline");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#560_16">Wvline</A> (<A HREF="terminal_interface-curses__ads.htm#732_7">Win</A>,
-                 <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#734_7">Line_Symbol</A>),
-                 <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#733_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#559_16">Wvline</A> (<A HREF="terminal_interface-curses__ads.htm#731_7">Win</A>,
+                 <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#733_7">Line_Symbol</A>),
+                 <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#732_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Vertical_Line;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#730_14">Vertical_Line</A><A HREF="terminal_interface-curses__ads.htm#730_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#745_13">Get_Keystroke</A><FONT COLOR=red><A NAME="573_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#745_28">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
-     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#72_12">Real_Key_Code</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#744_13">Get_Keystroke</A> (<A HREF="terminal_interface-curses__ads.htm#744_28">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
+     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#71_12">Real_Key_Code</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="576_16">Wgetch</A></FONT> (<FONT COLOR=red><A NAME="576_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#576_16">Wgetch</A>, "wgetch");
+      <b>function</b> <FONT COLOR=red><A NAME="575_16">Wgetch</A></FONT> (<FONT COLOR=red><A NAME="575_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#575_16">Wgetch</A>, "wgetch");
 
-      <FONT COLOR=red><A NAME="579_7">C</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#576_16">Wgetch</A> (<A HREF="terminal_interface-curses__ads.htm#745_28">Win</A>);
+      <FONT COLOR=red><A NAME="578_7">C</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#575_16">Wgetch</A> (<A HREF="terminal_interface-curses__ads.htm#744_28">Win</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#579_7">C</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#87_4">Key_None</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#578_7">C</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#86_4">Key_None</A>;
       <b>else</b>
-         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#72_12">Real_Key_Code</A> (<A HREF="terminal_interface-curses__adb.htm#579_7">C</A>);
+         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#71_12">Real_Key_Code</A> (<A HREF="terminal_interface-curses__adb.htm#578_7">C</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Keystroke;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#744_13">Get_Keystroke</A><A HREF="terminal_interface-curses__ads.htm#744_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#756_14">Undo_Keystroke</A><FONT COLOR=red><A NAME="588_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#756_30">Key</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#72_12">Real_Key_Code</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#755_14">Undo_Keystroke</A><FONT COLOR=red><A NAME="587_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#755_30">Key</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#71_12">Real_Key_Code</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="590_16">Ungetch</A></FONT> (<FONT COLOR=red><A NAME="590_25">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#590_16">Ungetch</A>, "ungetch");
+      <b>function</b> <FONT COLOR=red><A NAME="589_16">Ungetch</A></FONT> (<FONT COLOR=red><A NAME="589_25">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#589_16">Ungetch</A>, "ungetch");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#590_16">Ungetch</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#756_30">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#589_16">Ungetch</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#755_30">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Undo_Keystroke;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#755_14">Undo_Keystroke</A><A HREF="terminal_interface-curses__ads.htm#755_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#761_13">Has_Key</A><FONT COLOR=red><A NAME="598_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#761_22">Key</A> : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#760_13">Has_Key</A> (<A HREF="terminal_interface-curses__ads.htm#760_22">Key</A> : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="600_16">Haskey</A></FONT> (<FONT COLOR=red><A NAME="600_24">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#600_16">Haskey</A>, "has_key");
+      <b>function</b> <FONT COLOR=red><A NAME="599_16">Haskey</A></FONT> (<FONT COLOR=red><A NAME="599_24">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#599_16">Haskey</A>, "has_key");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#600_16">Haskey</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#761_22">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#76_4">Curses_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#599_16">Haskey</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#760_22">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Has_Key;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#760_13">Has_Key</A><A HREF="terminal_interface-curses__ads.htm#760_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#768_13">Is_Function_Key</A><FONT COLOR=red><A NAME="610_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#768_30">Key</A> : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#767_13">Is_Function_Key</A> (<A HREF="terminal_interface-curses__ads.htm#767_30">Key</A> : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A>) <b>return</b> Boolean
    <b>is</b>
-      <FONT COLOR=red><A NAME="612_7">L</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A>  := <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#97_4">Key_F0</A>) +
-        Natural (<A HREF="terminal_interface-curses__ads.htm#772_12">Function_Key_Number</A>'Last));
+      <FONT COLOR=red><A NAME="611_7">L</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A>  := <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#96_4">Key_F0</A>) +
+        Natural (<A HREF="terminal_interface-curses__ads.htm#771_12">Function_Key_Number</A>'Last));
    <b>begin</b>
-      <b>if</b> (<A HREF="terminal_interface-curses__ads.htm#768_30">Key</A> &gt;= <A HREF="terminal_interface-curses__ads.htm#97_4">Key_F0</A>) <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses__ads.htm#768_30">Key</A> &lt;= <A HREF="terminal_interface-curses__adb.htm#612_7">L</A>) <b>then</b>
+      <b>if</b> (<A HREF="terminal_interface-curses__ads.htm#767_30">Key</A> &gt;= <A HREF="terminal_interface-curses__ads.htm#96_4">Key_F0</A>) <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses__ads.htm#767_30">Key</A> &lt;= <A HREF="terminal_interface-curses__adb.htm#611_7">L</A>) <b>then</b>
          <b>return</b> True;
       <b>else</b>
          <b>return</b> False;
       <b>end</b> <b>if</b>;
-   <b>end</b> Is_Function_Key;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#767_13">Is_Function_Key</A><A HREF="terminal_interface-curses__ads.htm#767_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#775_13">Function_Key</A><FONT COLOR=red><A NAME="622_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#775_27">Key</A> : <A HREF="terminal_interface-curses__ads.htm#72_12">Real_Key_Code</A>)
-                          <b>return</b> <A HREF="terminal_interface-curses__ads.htm#772_12">Function_Key_Number</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#774_13">Function_Key</A> (<A HREF="terminal_interface-curses__ads.htm#774_27">Key</A> : <A HREF="terminal_interface-curses__ads.htm#71_12">Real_Key_Code</A>)
+                          <b>return</b> <A HREF="terminal_interface-curses__ads.htm#771_12">Function_Key_Number</A>
    <b>is</b>
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#768_13">Is_Function_Key</A> (<A HREF="terminal_interface-curses__ads.htm#775_27">Key</A>) <b>then</b>
-         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#772_12">Function_Key_Number</A> (<A HREF="terminal_interface-curses__ads.htm#775_27">Key</A> - <A HREF="terminal_interface-curses__ads.htm#97_4">Key_F0</A>);
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#767_13">Is_Function_Key</A> (<A HREF="terminal_interface-curses__ads.htm#774_27">Key</A>) <b>then</b>
+         <b>return</b> <A HREF="terminal_interface-curses__ads.htm#771_12">Function_Key_Number</A> (<A HREF="terminal_interface-curses__ads.htm#774_27">Key</A> - <A HREF="terminal_interface-curses__ads.htm#96_4">Key_F0</A>);
       <b>else</b>
          <b>raise</b> Constraint_Error;
       <b>end</b> <b>if</b>;
-   <b>end</b> Function_Key;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#774_13">Function_Key</A><A HREF="terminal_interface-curses__ads.htm#774_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#780_13">Function_Key_Code</A><FONT COLOR=red><A NAME="633_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#780_32">Key</A> : <A HREF="terminal_interface-curses__ads.htm#772_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#72_12">Real_Key_Code</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#779_13">Function_Key_Code</A> (<A HREF="terminal_interface-curses__ads.htm#779_32">Key</A> : <A HREF="terminal_interface-curses__ads.htm#771_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#71_12">Real_Key_Code</A>
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses__ads.htm#72_12">Real_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#97_4">Key_F0</A>) + Natural (<A HREF="terminal_interface-curses__ads.htm#780_32">Key</A>));
-   <b>end</b> Function_Key_Code;
+      <b>return</b> <A HREF="terminal_interface-curses__ads.htm#71_12">Real_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#96_4">Key_F0</A>) + Natural (<A HREF="terminal_interface-curses__ads.htm#779_32">Key</A>));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#779_13">Function_Key_Code</A><A HREF="terminal_interface-curses__ads.htm#779_13">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#794_14">Standout</A><FONT COLOR=red><A NAME="639_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#794_24">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>  := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                       <A HREF="terminal_interface-curses__ads.htm#795_24">On</A>  : Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#793_14">Standout</A><FONT COLOR=red><A NAME="638_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#793_24">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>  := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                       <A HREF="terminal_interface-curses__ads.htm#794_24">On</A>  : Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="642_16">wstandout</A></FONT> (<FONT COLOR=red><A NAME="642_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#642_16">wstandout</A>, "wstandout");
-      <b>function</b> <FONT COLOR=red><A NAME="644_16">wstandend</A></FONT> (<FONT COLOR=red><A NAME="644_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#644_16">wstandend</A>, "wstandend");
+      <b>function</b> <FONT COLOR=red><A NAME="641_16">wstandout</A></FONT> (<FONT COLOR=red><A NAME="641_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#641_16">wstandout</A>, "wstandout");
+      <b>function</b> <FONT COLOR=red><A NAME="643_16">wstandend</A></FONT> (<FONT COLOR=red><A NAME="643_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#643_16">wstandend</A>, "wstandend");
 
-      <FONT COLOR=red><A NAME="647_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="646_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#795_24">On</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#647_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#642_16">wstandout</A> (<A HREF="terminal_interface-curses__ads.htm#794_24">Win</A>);
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#794_24">On</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#646_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#641_16">wstandout</A> (<A HREF="terminal_interface-curses__ads.htm#793_24">Win</A>);
       <b>else</b>
-         <A HREF="terminal_interface-curses__adb.htm#647_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#644_16">wstandend</A> (<A HREF="terminal_interface-curses__ads.htm#794_24">Win</A>);
+         <A HREF="terminal_interface-curses__adb.htm#646_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#643_16">wstandend</A> (<A HREF="terminal_interface-curses__ads.htm#793_24">Win</A>);
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#647_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#646_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Standout;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#793_14">Standout</A><A HREF="terminal_interface-curses__ads.htm#793_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#800_14">Switch_Character_Attribute</A><FONT COLOR=red><A NAME="659_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#801_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#802_7">Attr</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-      <A HREF="terminal_interface-curses__ads.htm#803_7">On</A>   : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#799_14">Switch_Character_Attribute</A><FONT COLOR=red><A NAME="658_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#800_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#801_7">Attr</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+      <A HREF="terminal_interface-curses__ads.htm#802_7">On</A>   : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="664_16">Wattron</A></FONT> (<FONT COLOR=red><A NAME="664_25">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                        <FONT COLOR=red><A NAME="665_25">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#65_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#664_16">Wattron</A>, "wattr_on");
-      <b>function</b> <FONT COLOR=red><A NAME="667_16">Wattroff</A></FONT> (<FONT COLOR=red><A NAME="667_26">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="668_26">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#65_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#667_16">Wattroff</A>, "wattr_off");
+      <b>function</b> <FONT COLOR=red><A NAME="663_16">Wattron</A></FONT> (<FONT COLOR=red><A NAME="663_25">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                        <FONT COLOR=red><A NAME="664_25">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#663_16">Wattron</A>, "wattr_on");
+      <b>function</b> <FONT COLOR=red><A NAME="666_16">Wattroff</A></FONT> (<FONT COLOR=red><A NAME="666_26">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="667_26">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#666_16">Wattroff</A>, "wattr_off");
       <FONT COLOR=green><EM>--  In Ada we use the On Boolean to control whether or not we want to</EM></FONT>
       <FONT COLOR=green><EM>--  switch on or off the attributes in the set.</EM></FONT>
-      <FONT COLOR=red><A NAME="672_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <FONT COLOR=red><A NAME="673_7">AC</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
-                                              Color =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First,
-                                              Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#802_7">Attr</A>);
+      <FONT COLOR=red><A NAME="671_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="672_7">AC</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
+                                              Color =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First,
+                                              Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#801_7">Attr</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#803_7">On</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#672_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#664_16">Wattron</A>  (<A HREF="terminal_interface-curses__ads.htm#801_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#109_13">AttrChar_To_AttrType</A> (<A HREF="terminal_interface-curses__adb.htm#673_7">AC</A>));
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#802_7">On</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#671_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#663_16">Wattron</A>  (<A HREF="terminal_interface-curses__ads.htm#800_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#108_13">AttrChar_To_AttrType</A> (<A HREF="terminal_interface-curses__adb.htm#672_7">AC</A>));
       <b>else</b>
-         <A HREF="terminal_interface-curses__adb.htm#672_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#667_16">Wattroff</A> (<A HREF="terminal_interface-curses__ads.htm#801_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#109_13">AttrChar_To_AttrType</A> (<A HREF="terminal_interface-curses__adb.htm#673_7">AC</A>));
+         <A HREF="terminal_interface-curses__adb.htm#671_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#666_16">Wattroff</A> (<A HREF="terminal_interface-curses__ads.htm#800_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#108_13">AttrChar_To_AttrType</A> (<A HREF="terminal_interface-curses__adb.htm#672_7">AC</A>));
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#672_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#671_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Switch_Character_Attribute;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#799_14">Switch_Character_Attribute</A><A HREF="terminal_interface-curses__ads.htm#799_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#811_14">Set_Character_Attributes</A><FONT COLOR=red><A NAME="687_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#812_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#813_7">Attr</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-      <A HREF="terminal_interface-curses__ads.htm#814_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#810_14">Set_Character_Attributes</A><FONT COLOR=red><A NAME="686_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#811_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#812_7">Attr</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+      <A HREF="terminal_interface-curses__ads.htm#813_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="692_16">Wattrset</A></FONT> (<FONT COLOR=red><A NAME="692_26">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="693_26">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#65_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#692_16">Wattrset</A>, "wattrset"); <FONT COLOR=green><EM>-- ??? wattr_set</EM></FONT>
+      <b>function</b> <FONT COLOR=red><A NAME="691_16">Wattrset</A></FONT> (<FONT COLOR=red><A NAME="691_26">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="692_26">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#691_16">Wattrset</A>, "wattrset"); <FONT COLOR=green><EM>-- ??? wattr_set</EM></FONT>
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#692_16">Wattrset</A> (<A HREF="terminal_interface-curses__ads.htm#812_7">Win</A>,
-                   <A HREF="terminal_interface-curses-aux__ads.htm#109_13">AttrChar_To_AttrType</A> (<A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>'
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#691_16">Wattrset</A> (<A HREF="terminal_interface-curses__ads.htm#811_7">Win</A>,
+                   <A HREF="terminal_interface-curses-aux__ads.htm#108_13">AttrChar_To_AttrType</A> (<A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>'
                                          (Ch    =&gt; Character'First,
-                                          Color =&gt; <A HREF="terminal_interface-curses__ads.htm#814_7">Color</A>,
-                                          Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#813_7">Attr</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+                                          Color =&gt; <A HREF="terminal_interface-curses__ads.htm#813_7">Color</A>,
+                                          Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#812_7">Attr</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Character_Attributes;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#810_14">Set_Character_Attributes</A><A HREF="terminal_interface-curses__ads.htm#810_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#820_13">Get_Character_Attribute</A><FONT COLOR=red><A NAME="705_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#821_7">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
-                                     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#819_13">Get_Character_Attribute</A> (<A HREF="terminal_interface-curses__ads.htm#820_7">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
+                                     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="708_16">Wattrget</A></FONT> (<FONT COLOR=red><A NAME="708_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="709_26">Atr</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#65_12">C_AttrType</A>;
-                         <FONT COLOR=red><A NAME="710_26">Col</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                         <FONT COLOR=red><A NAME="711_26">Opt</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#708_16">Wattrget</A>, "wattr_get");
+      <b>function</b> <FONT COLOR=red><A NAME="707_16">Wattrget</A></FONT> (<FONT COLOR=red><A NAME="707_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="708_26">Atr</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_AttrType</A>;
+                         <FONT COLOR=red><A NAME="709_26">Col</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                         <FONT COLOR=red><A NAME="710_26">Opt</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#707_16">Wattrget</A>, "wattr_get");
 
-      <FONT COLOR=red><A NAME="714_7">Attr</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#65_12">C_AttrType</A>;
-      <FONT COLOR=red><A NAME="715_7">Col</A></FONT>  : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-      <FONT COLOR=red><A NAME="716_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#708_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#821_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#714_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#715_7">Col</A>'<b>Access</b>,
+      <FONT COLOR=red><A NAME="713_7">Attr</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_AttrType</A>;
+      <FONT COLOR=red><A NAME="714_7">Col</A></FONT>  : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+      <FONT COLOR=red><A NAME="715_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#707_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#820_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#713_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#714_7">Col</A>'<b>Access</b>,
                                          System.Null_Address);
-      <FONT COLOR=red><A NAME="718_7">Ch</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>;
+      <FONT COLOR=red><A NAME="717_7">Ch</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#716_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#718_7">Ch</A> := <A HREF="terminal_interface-curses-aux__ads.htm#113_13">AttrType_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#714_7">Attr</A>);
-         <b>return</b> <A HREF="terminal_interface-curses__adb.htm#718_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#715_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#71_4">Curses_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#717_7">Ch</A> := <A HREF="terminal_interface-curses-aux__ads.htm#112_13">AttrType_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#713_7">Attr</A>);
+         <b>return</b> <A HREF="terminal_interface-curses__adb.htm#717_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
       <b>else</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Character_Attribute;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#819_13">Get_Character_Attribute</A><A HREF="terminal_interface-curses__ads.htm#819_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#826_13">Get_Character_Attribute</A><FONT COLOR=red><A NAME="728_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#827_7">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
-                                     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#825_13">Get_Character_Attribute</A> (<A HREF="terminal_interface-curses__ads.htm#826_7">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
+                                     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="731_16">Wattrget</A></FONT> (<FONT COLOR=red><A NAME="731_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="732_26">Atr</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#65_12">C_AttrType</A>;
-                         <FONT COLOR=red><A NAME="733_26">Col</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                         <FONT COLOR=red><A NAME="734_26">Opt</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#731_16">Wattrget</A>, "wattr_get");
+      <b>function</b> <FONT COLOR=red><A NAME="730_16">Wattrget</A></FONT> (<FONT COLOR=red><A NAME="730_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="731_26">Atr</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_AttrType</A>;
+                         <FONT COLOR=red><A NAME="732_26">Col</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                         <FONT COLOR=red><A NAME="733_26">Opt</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#730_16">Wattrget</A>, "wattr_get");
 
-      <FONT COLOR=red><A NAME="737_7">Attr</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#65_12">C_AttrType</A>;
-      <FONT COLOR=red><A NAME="738_7">Col</A></FONT>  : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-      <FONT COLOR=red><A NAME="739_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#731_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#827_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#737_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#738_7">Col</A>'<b>Access</b>,
+      <FONT COLOR=red><A NAME="736_7">Attr</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_AttrType</A>;
+      <FONT COLOR=red><A NAME="737_7">Col</A></FONT>  : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+      <FONT COLOR=red><A NAME="738_7">Res</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#730_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#826_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#736_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#737_7">Col</A>'<b>Access</b>,
                                          System.Null_Address);
-      <FONT COLOR=red><A NAME="741_7">Ch</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>;
+      <FONT COLOR=red><A NAME="740_7">Ch</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#739_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Ok</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#741_7">Ch</A> := <A HREF="terminal_interface-curses-aux__ads.htm#113_13">AttrType_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#737_7">Attr</A>);
-         <b>return</b> <A HREF="terminal_interface-curses__adb.htm#741_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#355_10">Color</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#738_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#71_4">Curses_Ok</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#740_7">Ch</A> := <A HREF="terminal_interface-curses-aux__ads.htm#112_13">AttrType_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#736_7">Attr</A>);
+         <b>return</b> <A HREF="terminal_interface-curses__adb.htm#740_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#354_10">Color</A>;
       <b>else</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Character_Attribute;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#825_13">Get_Character_Attribute</A><A HREF="terminal_interface-curses__ads.htm#825_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#832_14">Set_Color</A><FONT COLOR=red><A NAME="751_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#832_25">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                        <A HREF="terminal_interface-curses__ads.htm#833_25">Pair</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#831_14">Set_Color</A><FONT COLOR=red><A NAME="750_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#831_25">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                        <A HREF="terminal_interface-curses__ads.htm#832_25">Pair</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="754_16">Wset_Color</A></FONT> (<FONT COLOR=red><A NAME="754_28">Win</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                           <FONT COLOR=red><A NAME="755_28">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                           <FONT COLOR=red><A NAME="756_28">Opts</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Void_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#754_16">Wset_Color</A>, "wcolor_set");
+      <b>function</b> <FONT COLOR=red><A NAME="753_16">Wset_Color</A></FONT> (<FONT COLOR=red><A NAME="753_28">Win</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                           <FONT COLOR=red><A NAME="754_28">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                           <FONT COLOR=red><A NAME="755_28">Opts</A></FONT>  : C_Void_Ptr) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#753_16">Wset_Color</A>, "wcolor_set");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#754_16">Wset_Color</A> (<A HREF="terminal_interface-curses__ads.htm#832_25">Win</A>,
-                     <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#833_25">Pair</A>),
-                     <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Void_Ptr</A> (System.Null_Address)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#753_16">Wset_Color</A> (<A HREF="terminal_interface-curses__ads.htm#831_25">Win</A>,
+                     <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#832_25">Pair</A>),
+                     C_Void_Ptr (System.Null_Address)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Color;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#831_14">Set_Color</A><A HREF="terminal_interface-curses__ads.htm#831_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#839_14">Change_Attributes</A><FONT COLOR=red><A NAME="766_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#840_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#841_7">Count</A> : <b>in</b> Integer := -1;
-      <A HREF="terminal_interface-curses__ads.htm#842_7">Attr</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-      <A HREF="terminal_interface-curses__ads.htm#843_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#838_14">Change_Attributes</A><FONT COLOR=red><A NAME="765_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#839_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#840_7">Count</A> : <b>in</b> Integer := -1;
+      <A HREF="terminal_interface-curses__ads.htm#841_7">Attr</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+      <A HREF="terminal_interface-curses__ads.htm#842_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="772_16">Wchgat</A></FONT> (<FONT COLOR=red><A NAME="772_24">Win</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                       <FONT COLOR=red><A NAME="773_24">Cnt</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                       <FONT COLOR=red><A NAME="774_24">Attr</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#65_12">C_AttrType</A>;
-                       <FONT COLOR=red><A NAME="775_24">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                       <FONT COLOR=red><A NAME="776_24">Opts</A></FONT>  : System.Address := System.Null_Address)
-                       <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#772_16">Wchgat</A>, "wchgat");
+      <b>function</b> <FONT COLOR=red><A NAME="771_16">Wchgat</A></FONT> (<FONT COLOR=red><A NAME="771_24">Win</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                       <FONT COLOR=red><A NAME="772_24">Cnt</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                       <FONT COLOR=red><A NAME="773_24">Attr</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_AttrType</A>;
+                       <FONT COLOR=red><A NAME="774_24">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                       <FONT COLOR=red><A NAME="775_24">Opts</A></FONT>  : System.Address := System.Null_Address)
+                       <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#771_16">Wchgat</A>, "wchgat");
 
-      <FONT COLOR=red><A NAME="780_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> :=
-        (Ch =&gt; Character'First, Color =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First, Attr =&gt; <A HREF="terminal_interface-curses__ads.htm#842_7">Attr</A>);
+      <FONT COLOR=red><A NAME="779_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> :=
+        (Ch =&gt; Character'First, Color =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First, Attr =&gt; <A HREF="terminal_interface-curses__ads.htm#841_7">Attr</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#772_16">Wchgat</A> (<A HREF="terminal_interface-curses__ads.htm#840_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#841_7">Count</A>), <A HREF="terminal_interface-curses-aux__ads.htm#109_13">AttrChar_To_AttrType</A> (<A HREF="terminal_interface-curses__adb.htm#780_7">Ch</A>),
-                 <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#843_7">Color</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#771_16">Wchgat</A> (<A HREF="terminal_interface-curses__ads.htm#839_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#840_7">Count</A>), <A HREF="terminal_interface-curses-aux__ads.htm#108_13">AttrChar_To_AttrType</A> (<A HREF="terminal_interface-curses__adb.htm#779_7">Ch</A>),
+                 <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#842_7">Color</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Change_Attributes;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#838_14">Change_Attributes</A><A HREF="terminal_interface-curses__ads.htm#838_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#848_14">Change_Attributes</A><FONT COLOR=red><A NAME="789_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#849_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#850_7">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>'First;
-      <A HREF="terminal_interface-curses__ads.htm#851_7">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>'First;
-      <A HREF="terminal_interface-curses__ads.htm#852_7">Count</A>  : <b>in</b> Integer := -1;
-      <A HREF="terminal_interface-curses__ads.htm#853_7">Attr</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-      <A HREF="terminal_interface-curses__ads.htm#854_7">Color</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#847_14">Change_Attributes</A><FONT COLOR=red><A NAME="788_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#848_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#849_7">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>'First;
+      <A HREF="terminal_interface-curses__ads.htm#850_7">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>'First;
+      <A HREF="terminal_interface-curses__ads.htm#851_7">Count</A>  : <b>in</b> Integer := -1;
+      <A HREF="terminal_interface-curses__ads.htm#852_7">Attr</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+      <A HREF="terminal_interface-curses__ads.htm#853_7">Color</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#505_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#849_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#850_7">Line</A>, <A HREF="terminal_interface-curses__ads.htm#851_7">Column</A>);
-      <A HREF="terminal_interface-curses__ads.htm#839_14">Change_Attributes</A> (<A HREF="terminal_interface-curses__ads.htm#849_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#852_7">Count</A>, <A HREF="terminal_interface-curses__ads.htm#853_7">Attr</A>, <A HREF="terminal_interface-curses__ads.htm#854_7">Color</A>);
-   <b>end</b> Change_Attributes;
+      <A HREF="terminal_interface-curses__ads.htm#504_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#848_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#849_7">Line</A>, <A HREF="terminal_interface-curses__ads.htm#850_7">Column</A>);
+      <A HREF="terminal_interface-curses__ads.htm#838_14">Change_Attributes</A> (<A HREF="terminal_interface-curses__ads.htm#848_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#851_7">Count</A>, <A HREF="terminal_interface-curses__ads.htm#852_7">Attr</A>, <A HREF="terminal_interface-curses__ads.htm#853_7">Color</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#847_14">Change_Attributes</A><A HREF="terminal_interface-curses__ads.htm#847_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#864_14">Beep</A><FONT COLOR=red><A NAME="802_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#863_14">Beep</A><FONT COLOR=red><A NAME="801_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="804_16">Beeper</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#804_16">Beeper</A>, "beep");
+      <b>function</b> <FONT COLOR=red><A NAME="803_16">Beeper</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#803_16">Beeper</A>, "beep");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#804_16">Beeper</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#803_16">Beeper</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Beep;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#863_14">Beep</A><A HREF="terminal_interface-curses__ads.htm#863_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#869_14">Flash_Screen</A><FONT COLOR=red><A NAME="812_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#868_14">Flash_Screen</A><FONT COLOR=red><A NAME="811_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="814_16">Flash</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#814_16">Flash</A>, "flash");
+      <b>function</b> <FONT COLOR=red><A NAME="813_16">Flash</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#813_16">Flash</A>, "flash");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#814_16">Flash</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#813_16">Flash</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Flash_Screen;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#868_14">Flash_Screen</A><A HREF="terminal_interface-curses__ads.htm#868_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#880_14">Set_Cbreak_Mode</A><FONT COLOR=red><A NAME="822_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#880_31">SwitchOn</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#879_14">Set_Cbreak_Mode</A><FONT COLOR=red><A NAME="821_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#879_31">SwitchOn</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="824_16">Cbreak</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#824_16">Cbreak</A>, "cbreak");
-      <b>function</b> <FONT COLOR=red><A NAME="826_16">NoCbreak</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#826_16">NoCbreak</A>, "nocbreak");
+      <b>function</b> <FONT COLOR=red><A NAME="823_16">Cbreak</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#823_16">Cbreak</A>, "cbreak");
+      <b>function</b> <FONT COLOR=red><A NAME="825_16">NoCbreak</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#825_16">NoCbreak</A>, "nocbreak");
 
-      <FONT COLOR=red><A NAME="829_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="828_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#880_31">SwitchOn</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#829_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#824_16">Cbreak</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#879_31">SwitchOn</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#828_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#823_16">Cbreak</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses__adb.htm#829_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#826_16">NoCbreak</A>;
+         <A HREF="terminal_interface-curses__adb.htm#828_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#825_16">NoCbreak</A>;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#829_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#828_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Cbreak_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#879_14">Set_Cbreak_Mode</A><A HREF="terminal_interface-curses__ads.htm#879_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#886_14">Set_Raw_Mode</A><FONT COLOR=red><A NAME="841_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#886_28">SwitchOn</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#885_14">Set_Raw_Mode</A><FONT COLOR=red><A NAME="840_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#885_28">SwitchOn</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="843_16">Raw</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#843_16">Raw</A>, "raw");
-      <b>function</b> <FONT COLOR=red><A NAME="845_16">NoRaw</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#845_16">NoRaw</A>, "noraw");
+      <b>function</b> <FONT COLOR=red><A NAME="842_16">Raw</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#842_16">Raw</A>, "raw");
+      <b>function</b> <FONT COLOR=red><A NAME="844_16">NoRaw</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#844_16">NoRaw</A>, "noraw");
 
-      <FONT COLOR=red><A NAME="848_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="847_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#886_28">SwitchOn</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#848_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#843_16">Raw</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#885_28">SwitchOn</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#847_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#842_16">Raw</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses__adb.htm#848_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#845_16">NoRaw</A>;
+         <A HREF="terminal_interface-curses__adb.htm#847_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#844_16">NoRaw</A>;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#848_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#847_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Raw_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#885_14">Set_Raw_Mode</A><A HREF="terminal_interface-curses__ads.htm#885_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#892_14">Set_Echo_Mode</A><FONT COLOR=red><A NAME="860_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#892_29">SwitchOn</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#891_14">Set_Echo_Mode</A><FONT COLOR=red><A NAME="859_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#891_29">SwitchOn</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="862_16">Echo</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#862_16">Echo</A>, "echo");
-      <b>function</b> <FONT COLOR=red><A NAME="864_16">NoEcho</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#864_16">NoEcho</A>, "noecho");
+      <b>function</b> <FONT COLOR=red><A NAME="861_16">Echo</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#861_16">Echo</A>, "echo");
+      <b>function</b> <FONT COLOR=red><A NAME="863_16">NoEcho</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#863_16">NoEcho</A>, "noecho");
 
-      <FONT COLOR=red><A NAME="867_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="866_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#892_29">SwitchOn</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#867_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#862_16">Echo</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#891_29">SwitchOn</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#866_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#861_16">Echo</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses__adb.htm#867_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#864_16">NoEcho</A>;
+         <A HREF="terminal_interface-curses__adb.htm#866_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#863_16">NoEcho</A>;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#867_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#866_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Echo_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#891_14">Set_Echo_Mode</A><A HREF="terminal_interface-curses__ads.htm#891_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#898_14">Set_Meta_Mode</A><FONT COLOR=red><A NAME="879_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#898_29">Win</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                            <A HREF="terminal_interface-curses__ads.htm#899_29">SwitchOn</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#897_14">Set_Meta_Mode</A><FONT COLOR=red><A NAME="878_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#897_29">Win</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                            <A HREF="terminal_interface-curses__ads.htm#898_29">SwitchOn</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="882_16">Meta</A></FONT> (<FONT COLOR=red><A NAME="882_22">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="882_34">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#882_16">Meta</A>, "meta");
+      <b>function</b> <FONT COLOR=red><A NAME="881_16">Meta</A></FONT> (<FONT COLOR=red><A NAME="881_22">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="881_34">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#881_16">Meta</A>, "meta");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#882_16">Meta</A> (<A HREF="terminal_interface-curses__ads.htm#898_29">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#899_29">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#881_16">Meta</A> (<A HREF="terminal_interface-curses__ads.htm#897_29">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#898_29">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Meta_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#897_14">Set_Meta_Mode</A><A HREF="terminal_interface-curses__ads.htm#897_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#904_14">Set_KeyPad_Mode</A><FONT COLOR=red><A NAME="890_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#904_31">Win</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                              <A HREF="terminal_interface-curses__ads.htm#905_31">SwitchOn</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#903_14">Set_KeyPad_Mode</A><FONT COLOR=red><A NAME="889_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#903_31">Win</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                              <A HREF="terminal_interface-curses__ads.htm#904_31">SwitchOn</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="893_16">Keypad</A></FONT> (<FONT COLOR=red><A NAME="893_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="893_36">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#893_16">Keypad</A>, "keypad");
+      <b>function</b> <FONT COLOR=red><A NAME="892_16">Keypad</A></FONT> (<FONT COLOR=red><A NAME="892_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="892_36">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#892_16">Keypad</A>, "keypad");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#893_16">Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#904_31">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#905_31">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#892_16">Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#903_31">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#904_31">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_KeyPad_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#903_14">Set_KeyPad_Mode</A><A HREF="terminal_interface-curses__ads.htm#903_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#909_13">Get_KeyPad_Mode</A><FONT COLOR=red><A NAME="901_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#909_30">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#908_13">Get_KeyPad_Mode</A> (<A HREF="terminal_interface-curses__ads.htm#908_30">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
                              <b>return</b> Boolean
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#93_13">Get_Flag</A> (<A HREF="terminal_interface-curses__ads.htm#909_30">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1927_4">Offset_use_keypad</A>);
-   <b>end</b> Get_KeyPad_Mode;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#92_13">Get_Flag</A> (<A HREF="terminal_interface-curses__ads.htm#908_30">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1926_4">Offset_use_keypad</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#908_13">Get_KeyPad_Mode</A><A HREF="terminal_interface-curses__ads.htm#908_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#917_14">Half_Delay</A><FONT COLOR=red><A NAME="908_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#917_26">Amount</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#914_9">Half_Delay_Amount</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#916_14">Half_Delay</A><FONT COLOR=red><A NAME="907_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#916_26">Amount</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#913_9">Half_Delay_Amount</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="910_16">Halfdelay</A></FONT> (<FONT COLOR=red><A NAME="910_27">Amount</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#910_16">Halfdelay</A>, "halfdelay");
+      <b>function</b> <FONT COLOR=red><A NAME="909_16">Halfdelay</A></FONT> (<FONT COLOR=red><A NAME="909_27">Amount</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#909_16">Halfdelay</A>, "halfdelay");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#910_16">Halfdelay</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#917_26">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#909_16">Halfdelay</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#916_26">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Half_Delay;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#916_14">Half_Delay</A><A HREF="terminal_interface-curses__ads.htm#916_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#922_14">Set_Flush_On_Interrupt_Mode</A><FONT COLOR=red><A NAME="918_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#923_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#924_7">Mode</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#921_14">Set_Flush_On_Interrupt_Mode</A><FONT COLOR=red><A NAME="917_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#922_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#923_7">Mode</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="922_16">Intrflush</A></FONT> (<FONT COLOR=red><A NAME="922_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="922_41">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#922_16">Intrflush</A>, "intrflush");
+      <b>function</b> <FONT COLOR=red><A NAME="921_16">Intrflush</A></FONT> (<FONT COLOR=red><A NAME="921_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="921_41">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#921_16">Intrflush</A>, "intrflush");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#922_16">Intrflush</A> (<A HREF="terminal_interface-curses__ads.htm#923_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#924_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#921_16">Intrflush</A> (<A HREF="terminal_interface-curses__ads.htm#922_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#923_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Flush_On_Interrupt_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#921_14">Set_Flush_On_Interrupt_Mode</A><A HREF="terminal_interface-curses__ads.htm#921_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#929_14">Set_Queue_Interrupt_Mode</A><FONT COLOR=red><A NAME="930_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#930_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#931_7">Flush</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#928_14">Set_Queue_Interrupt_Mode</A><FONT COLOR=red><A NAME="929_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#929_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#930_7">Flush</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>procedure</b> <FONT COLOR=red><A NAME="934_17">Qiflush</A></FONT>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#934_17">Qiflush</A>, "qiflush");
-      <b>procedure</b> <FONT COLOR=red><A NAME="936_17">No_Qiflush</A></FONT>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#936_17">No_Qiflush</A>, "noqiflush");
+      <b>procedure</b> <FONT COLOR=red><A NAME="933_17">Qiflush</A></FONT>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#933_17">Qiflush</A>, "qiflush");
+      <b>procedure</b> <FONT COLOR=red><A NAME="935_17">No_Qiflush</A></FONT>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#935_17">No_Qiflush</A>, "noqiflush");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#931_7">Flush</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#934_17">Qiflush</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#930_7">Flush</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#933_17">Qiflush</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses__adb.htm#936_17">No_Qiflush</A>;
+         <A HREF="terminal_interface-curses__adb.htm#935_17">No_Qiflush</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Queue_Interrupt_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#928_14">Set_Queue_Interrupt_Mode</A><A HREF="terminal_interface-curses__ads.htm#928_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#937_14">Set_NoDelay_Mode</A><FONT COLOR=red><A NAME="946_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#938_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#939_7">Mode</A> : <b>in</b> Boolean := False)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#936_14">Set_NoDelay_Mode</A><FONT COLOR=red><A NAME="945_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#937_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#938_7">Mode</A> : <b>in</b> Boolean := False)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="950_16">Nodelay</A></FONT> (<FONT COLOR=red><A NAME="950_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="950_39">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#950_16">Nodelay</A>, "nodelay");
+      <b>function</b> <FONT COLOR=red><A NAME="949_16">Nodelay</A></FONT> (<FONT COLOR=red><A NAME="949_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="949_39">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#949_16">Nodelay</A>, "nodelay");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#950_16">Nodelay</A> (<A HREF="terminal_interface-curses__ads.htm#938_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#939_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#949_16">Nodelay</A> (<A HREF="terminal_interface-curses__ads.htm#937_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#938_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_NoDelay_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#936_14">Set_NoDelay_Mode</A><A HREF="terminal_interface-curses__ads.htm#936_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#946_14">Set_Timeout_Mode</A><FONT COLOR=red><A NAME="958_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#946_32">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                               <A HREF="terminal_interface-curses__ads.htm#947_32">Mode</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#943_9">Timeout_Mode</A>;
-                               <A HREF="terminal_interface-curses__ads.htm#948_32">Amount</A> : <b>in</b> Natural)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#945_14">Set_Timeout_Mode</A><FONT COLOR=red><A NAME="957_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#945_32">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                               <A HREF="terminal_interface-curses__ads.htm#946_32">Mode</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#942_9">Timeout_Mode</A>;
+                               <A HREF="terminal_interface-curses__ads.htm#947_32">Amount</A> : <b>in</b> Natural)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="962_16">Wtimeout</A></FONT> (<FONT COLOR=red><A NAME="962_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="962_40">Amount</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#962_16">Wtimeout</A>, "wtimeout");
+      <b>function</b> <FONT COLOR=red><A NAME="961_16">Wtimeout</A></FONT> (<FONT COLOR=red><A NAME="961_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="961_40">Amount</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#961_16">Wtimeout</A>, "wtimeout");
 
-      <FONT COLOR=red><A NAME="965_7">Time</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="964_7">Time</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <b>case</b> <A HREF="terminal_interface-curses__ads.htm#947_32">Mode</A> <b>is</b>
-         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#943_26">Blocking</A>     =&gt; <A HREF="terminal_interface-curses__adb.htm#965_7">Time</A> := -1;
-         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#943_36">Non_Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#965_7">Time</A> := 0;
-         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#943_50">Delayed</A>      =&gt;
-            <b>if</b> <A HREF="terminal_interface-curses__ads.htm#948_32">Amount</A> = 0 <b>then</b>
+      <b>case</b> <A HREF="terminal_interface-curses__ads.htm#946_32">Mode</A> <b>is</b>
+         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#942_26">Blocking</A>     =&gt; <A HREF="terminal_interface-curses__adb.htm#964_7">Time</A> := -1;
+         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#942_36">Non_Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#964_7">Time</A> := 0;
+         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#942_50">Delayed</A>      =&gt;
+            <b>if</b> <A HREF="terminal_interface-curses__ads.htm#947_32">Amount</A> = 0 <b>then</b>
                <b>raise</b> Constraint_Error;
             <b>end</b> <b>if</b>;
-            <A HREF="terminal_interface-curses__adb.htm#965_7">Time</A> := <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#948_32">Amount</A>);
+            <A HREF="terminal_interface-curses__adb.htm#964_7">Time</A> := <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#947_32">Amount</A>);
       <b>end</b> <b>case</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#962_16">Wtimeout</A> (<A HREF="terminal_interface-curses__ads.htm#946_32">Win</A>, <A HREF="terminal_interface-curses__adb.htm#965_7">Time</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#961_16">Wtimeout</A> (<A HREF="terminal_interface-curses__ads.htm#945_32">Win</A>, <A HREF="terminal_interface-curses__adb.htm#964_7">Time</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Timeout_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#945_14">Set_Timeout_Mode</A><A HREF="terminal_interface-curses__ads.htm#945_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#958_14">Set_Escape_Timer_Mode</A><FONT COLOR=red><A NAME="981_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#959_7">Win</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#960_7">Timer_Off</A> : <b>in</b> Boolean := False)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#957_14">Set_Escape_Timer_Mode</A><FONT COLOR=red><A NAME="980_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#958_7">Win</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#959_7">Timer_Off</A> : <b>in</b> Boolean := False)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="985_16">Notimeout</A></FONT> (<FONT COLOR=red><A NAME="985_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="985_41">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#985_16">Notimeout</A>, "notimeout");
+      <b>function</b> <FONT COLOR=red><A NAME="984_16">Notimeout</A></FONT> (<FONT COLOR=red><A NAME="984_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="984_41">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#984_16">Notimeout</A>, "notimeout");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#985_16">Notimeout</A> (<A HREF="terminal_interface-curses__ads.htm#959_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#960_7">Timer_Off</A>)))
-        = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#984_16">Notimeout</A> (<A HREF="terminal_interface-curses__ads.htm#958_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#959_7">Timer_Off</A>)))
+        = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Escape_Timer_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#957_14">Set_Escape_Timer_Mode</A><A HREF="terminal_interface-curses__ads.htm#957_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#969_14">Set_NL_Mode</A><FONT COLOR=red><A NAME="995_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#969_27">SwitchOn</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#968_14">Set_NL_Mode</A><FONT COLOR=red><A NAME="994_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#968_27">SwitchOn</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="997_16">NL</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#997_16">NL</A>, "nl");
-      <b>function</b> <FONT COLOR=red><A NAME="999_16">NoNL</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#999_16">NoNL</A>, "nonl");
+      <b>function</b> <FONT COLOR=red><A NAME="996_16">NL</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#996_16">NL</A>, "nl");
+      <b>function</b> <FONT COLOR=red><A NAME="998_16">NoNL</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#998_16">NoNL</A>, "nonl");
 
-      <FONT COLOR=red><A NAME="1002_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="1001_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#969_27">SwitchOn</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#1002_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#997_16">NL</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#968_27">SwitchOn</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#1001_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#996_16">NL</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses__adb.htm#1002_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#999_16">NoNL</A>;
+         <A HREF="terminal_interface-curses__adb.htm#1001_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#998_16">NoNL</A>;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1002_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1001_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_NL_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#968_14">Set_NL_Mode</A><A HREF="terminal_interface-curses__ads.htm#968_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#975_14">Clear_On_Next_Update</A><FONT COLOR=red><A NAME="1014_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#976_7">Win</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#977_7">Do_Clear</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#974_14">Clear_On_Next_Update</A><FONT COLOR=red><A NAME="1013_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#975_7">Win</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#976_7">Do_Clear</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1018_16">Clear_Ok</A></FONT> (<FONT COLOR=red><A NAME="1018_26">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1018_38">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1018_16">Clear_Ok</A>, "clearok");
+      <b>function</b> <FONT COLOR=red><A NAME="1017_16">Clear_Ok</A></FONT> (<FONT COLOR=red><A NAME="1017_26">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1017_38">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1017_16">Clear_Ok</A>, "clearok");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1018_16">Clear_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#976_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#977_7">Do_Clear</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1017_16">Clear_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#975_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#976_7">Do_Clear</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Clear_On_Next_Update;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#974_14">Clear_On_Next_Update</A><A HREF="terminal_interface-curses__ads.htm#974_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#982_14">Use_Insert_Delete_Line</A><FONT COLOR=red><A NAME="1026_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#983_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#984_7">Do_Idl</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#981_14">Use_Insert_Delete_Line</A><FONT COLOR=red><A NAME="1025_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#982_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#983_7">Do_Idl</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1030_16">IDL_Ok</A></FONT> (<FONT COLOR=red><A NAME="1030_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1030_36">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1030_16">IDL_Ok</A>, "idlok");
+      <b>function</b> <FONT COLOR=red><A NAME="1029_16">IDL_Ok</A></FONT> (<FONT COLOR=red><A NAME="1029_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1029_36">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1029_16">IDL_Ok</A>, "idlok");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1030_16">IDL_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#983_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#984_7">Do_Idl</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1029_16">IDL_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#982_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#983_7">Do_Idl</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Use_Insert_Delete_Line;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#981_14">Use_Insert_Delete_Line</A><A HREF="terminal_interface-curses__ads.htm#981_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#989_14">Use_Insert_Delete_Character</A><FONT COLOR=red><A NAME="1038_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#990_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#991_7">Do_Idc</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#988_14">Use_Insert_Delete_Character</A><FONT COLOR=red><A NAME="1037_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#989_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#990_7">Do_Idc</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1042_16">IDC_Ok</A></FONT> (<FONT COLOR=red><A NAME="1042_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1042_36">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1042_16">IDC_Ok</A>, "idcok");
+      <b>function</b> <FONT COLOR=red><A NAME="1041_16">IDC_Ok</A></FONT> (<FONT COLOR=red><A NAME="1041_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1041_36">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1041_16">IDC_Ok</A>, "idcok");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1042_16">IDC_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#990_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#991_7">Do_Idc</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1041_16">IDC_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#989_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#990_7">Do_Idc</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Use_Insert_Delete_Character;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#988_14">Use_Insert_Delete_Character</A><A HREF="terminal_interface-curses__ads.htm#988_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#996_14">Leave_Cursor_After_Update</A><FONT COLOR=red><A NAME="1050_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#997_7">Win</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#998_7">Do_Leave</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#995_14">Leave_Cursor_After_Update</A><FONT COLOR=red><A NAME="1049_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#996_7">Win</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#997_7">Do_Leave</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1054_16">Leave_Ok</A></FONT> (<FONT COLOR=red><A NAME="1054_26">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1054_38">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1054_16">Leave_Ok</A>, "leaveok");
+      <b>function</b> <FONT COLOR=red><A NAME="1053_16">Leave_Ok</A></FONT> (<FONT COLOR=red><A NAME="1053_26">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1053_38">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1053_16">Leave_Ok</A>, "leaveok");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1054_16">Leave_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#997_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#998_7">Do_Leave</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1053_16">Leave_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#996_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#997_7">Do_Leave</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Leave_Cursor_After_Update;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#995_14">Leave_Cursor_After_Update</A><A HREF="terminal_interface-curses__ads.htm#995_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1003_14">Immediate_Update_Mode</A><FONT COLOR=red><A NAME="1062_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1004_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1005_7">Mode</A> : <b>in</b> Boolean := False)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1002_14">Immediate_Update_Mode</A><FONT COLOR=red><A NAME="1061_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1003_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1004_7">Mode</A> : <b>in</b> Boolean := False)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1066_16">Immedok</A></FONT> (<FONT COLOR=red><A NAME="1066_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1066_39">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1066_16">Immedok</A>, "immedok");
+      <b>function</b> <FONT COLOR=red><A NAME="1065_16">Immedok</A></FONT> (<FONT COLOR=red><A NAME="1065_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1065_39">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1065_16">Immedok</A>, "immedok");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1066_16">Immedok</A> (<A HREF="terminal_interface-curses__ads.htm#1004_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1005_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1065_16">Immedok</A> (<A HREF="terminal_interface-curses__ads.htm#1003_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1004_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Immediate_Update_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1002_14">Immediate_Update_Mode</A><A HREF="terminal_interface-curses__ads.htm#1002_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1010_14">Allow_Scrolling</A><FONT COLOR=red><A NAME="1074_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1011_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>  := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1012_7">Mode</A> : <b>in</b> Boolean := False)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1009_14">Allow_Scrolling</A><FONT COLOR=red><A NAME="1073_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1010_7">Win</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>  := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1011_7">Mode</A> : <b>in</b> Boolean := False)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1078_16">Scrollok</A></FONT> (<FONT COLOR=red><A NAME="1078_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1078_40">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1078_16">Scrollok</A>, "scrollok");
+      <b>function</b> <FONT COLOR=red><A NAME="1077_16">Scrollok</A></FONT> (<FONT COLOR=red><A NAME="1077_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1077_40">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1077_16">Scrollok</A>, "scrollok");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1078_16">Scrollok</A> (<A HREF="terminal_interface-curses__ads.htm#1011_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1012_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1077_16">Scrollok</A> (<A HREF="terminal_interface-curses__ads.htm#1010_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1011_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Allow_Scrolling;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1009_14">Allow_Scrolling</A><A HREF="terminal_interface-curses__ads.htm#1009_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1016_13">Scrolling_Allowed</A><FONT COLOR=red><A NAME="1086_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1016_32">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1015_13">Scrolling_Allowed</A> (<A HREF="terminal_interface-curses__ads.htm#1015_32">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
                                <b>return</b> Boolean
    <b>is</b>
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#93_13">Get_Flag</A> (<A HREF="terminal_interface-curses__ads.htm#1016_32">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1922_4">Offset_scroll</A>);
-   <b>end</b> Scrolling_Allowed;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#92_13">Get_Flag</A> (<A HREF="terminal_interface-curses__ads.htm#1015_32">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1921_4">Offset_scroll</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1015_13">Scrolling_Allowed</A><A HREF="terminal_interface-curses__ads.htm#1015_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1021_14">Set_Scroll_Region</A><FONT COLOR=red><A NAME="1093_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1022_7">Win</A>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1023_7">Top_Line</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1024_7">Bottom_Line</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1020_14">Set_Scroll_Region</A><FONT COLOR=red><A NAME="1092_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1021_7">Win</A>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1022_7">Top_Line</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1023_7">Bottom_Line</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1098_16">Wsetscrreg</A></FONT> (<FONT COLOR=red><A NAME="1098_28">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                           <FONT COLOR=red><A NAME="1099_28">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                           <FONT COLOR=red><A NAME="1100_28">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1098_16">Wsetscrreg</A>, "wsetscrreg");
+      <b>function</b> <FONT COLOR=red><A NAME="1097_16">Wsetscrreg</A></FONT> (<FONT COLOR=red><A NAME="1097_28">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                           <FONT COLOR=red><A NAME="1098_28">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                           <FONT COLOR=red><A NAME="1099_28">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1097_16">Wsetscrreg</A>, "wsetscrreg");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1098_16">Wsetscrreg</A> (<A HREF="terminal_interface-curses__ads.htm#1022_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1023_7">Top_Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1024_7">Bottom_Line</A>))
-        = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1097_16">Wsetscrreg</A> (<A HREF="terminal_interface-curses__ads.htm#1021_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1022_7">Top_Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1023_7">Bottom_Line</A>))
+        = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Scroll_Region;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1020_14">Set_Scroll_Region</A><A HREF="terminal_interface-curses__ads.htm#1020_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1034_14">Update_Screen</A><FONT COLOR=red><A NAME="1109_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1033_14">Update_Screen</A><FONT COLOR=red><A NAME="1108_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1111_16">Do_Update</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1111_16">Do_Update</A>, "doupdate");
+      <b>function</b> <FONT COLOR=red><A NAME="1110_16">Do_Update</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1110_16">Do_Update</A>, "doupdate");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1111_16">Do_Update</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1110_16">Do_Update</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Update_Screen;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1033_14">Update_Screen</A><A HREF="terminal_interface-curses__ads.htm#1033_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1039_14">Refresh</A><FONT COLOR=red><A NAME="1119_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1039_23">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1038_14">Refresh</A><FONT COLOR=red><A NAME="1118_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1038_23">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1121_16">Wrefresh</A></FONT> (<FONT COLOR=red><A NAME="1121_26">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1121_16">Wrefresh</A>, "wrefresh");
+      <b>function</b> <FONT COLOR=red><A NAME="1120_16">Wrefresh</A></FONT> (<FONT COLOR=red><A NAME="1120_26">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1120_16">Wrefresh</A>, "wrefresh");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1121_16">Wrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#1039_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1120_16">Wrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#1038_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Refresh;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1038_14">Refresh</A><A HREF="terminal_interface-curses__ads.htm#1038_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1046_14">Refresh_Without_Update</A><FONT COLOR=red><A NAME="1129_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1047_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1045_14">Refresh_Without_Update</A><FONT COLOR=red><A NAME="1128_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1046_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1132_16">Wnoutrefresh</A></FONT> (<FONT COLOR=red><A NAME="1132_30">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1132_16">Wnoutrefresh</A>, "wnoutrefresh");
+      <b>function</b> <FONT COLOR=red><A NAME="1131_16">Wnoutrefresh</A></FONT> (<FONT COLOR=red><A NAME="1131_30">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1131_16">Wnoutrefresh</A>, "wnoutrefresh");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1132_16">Wnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#1047_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1131_16">Wnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#1046_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Refresh_Without_Update;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1045_14">Refresh_Without_Update</A><A HREF="terminal_interface-curses__ads.htm#1045_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1053_14">Redraw</A><FONT COLOR=red><A NAME="1140_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1053_22">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1052_14">Redraw</A><FONT COLOR=red><A NAME="1139_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1052_22">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1142_16">Redrawwin</A></FONT> (<FONT COLOR=red><A NAME="1142_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1142_16">Redrawwin</A>, "redrawwin");
+      <b>function</b> <FONT COLOR=red><A NAME="1141_16">Redrawwin</A></FONT> (<FONT COLOR=red><A NAME="1141_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1141_16">Redrawwin</A>, "redrawwin");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1142_16">Redrawwin</A> (<A HREF="terminal_interface-curses__ads.htm#1053_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1141_16">Redrawwin</A> (<A HREF="terminal_interface-curses__ads.htm#1052_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Redraw;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1052_14">Redraw</A><A HREF="terminal_interface-curses__ads.htm#1052_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1057_14">Redraw</A><FONT COLOR=red><A NAME="1150_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1057_22">Win</A>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1058_22">Begin_Line</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1059_22">Line_Count</A> : <b>in</b> Positive)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1056_14">Redraw</A><FONT COLOR=red><A NAME="1149_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1056_22">Win</A>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1057_22">Begin_Line</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1058_22">Line_Count</A> : <b>in</b> Positive)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1155_16">Wredrawln</A></FONT> (<FONT COLOR=red><A NAME="1155_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1155_41">First</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>; <FONT COLOR=red><A NAME="1155_56">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>)
-                          <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1155_16">Wredrawln</A>, "wredrawln");
+      <b>function</b> <FONT COLOR=red><A NAME="1154_16">Wredrawln</A></FONT> (<FONT COLOR=red><A NAME="1154_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1154_41">First</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>; <FONT COLOR=red><A NAME="1154_56">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>)
+                          <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1154_16">Wredrawln</A>, "wredrawln");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1155_16">Wredrawln</A> (<A HREF="terminal_interface-curses__ads.htm#1057_22">Win</A>,
-                    <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1058_22">Begin_Line</A>),
-                    <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1059_22">Line_Count</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1154_16">Wredrawln</A> (<A HREF="terminal_interface-curses__ads.htm#1056_22">Win</A>,
+                    <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1057_22">Begin_Line</A>),
+                    <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1058_22">Line_Count</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Redraw;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1056_14">Redraw</A><A HREF="terminal_interface-curses__ads.htm#1056_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1068_14">Erase</A><FONT COLOR=red><A NAME="1167_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1068_21">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1067_14">Erase</A><FONT COLOR=red><A NAME="1166_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1067_21">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1169_16">Werase</A></FONT> (<FONT COLOR=red><A NAME="1169_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1169_16">Werase</A>, "werase");
+      <b>function</b> <FONT COLOR=red><A NAME="1168_16">Werase</A></FONT> (<FONT COLOR=red><A NAME="1168_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1168_16">Werase</A>, "werase");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1169_16">Werase</A> (<A HREF="terminal_interface-curses__ads.htm#1068_21">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1168_16">Werase</A> (<A HREF="terminal_interface-curses__ads.htm#1067_21">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Erase;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1067_14">Erase</A><A HREF="terminal_interface-curses__ads.htm#1067_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1074_14">Clear</A><FONT COLOR=red><A NAME="1177_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1075_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1073_14">Clear</A><FONT COLOR=red><A NAME="1176_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1074_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1179_16">Wclear</A></FONT> (<FONT COLOR=red><A NAME="1179_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1179_16">Wclear</A>, "wclear");
+      <b>function</b> <FONT COLOR=red><A NAME="1178_16">Wclear</A></FONT> (<FONT COLOR=red><A NAME="1178_24">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1178_16">Wclear</A>, "wclear");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1179_16">Wclear</A> (<A HREF="terminal_interface-curses__ads.htm#1075_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1178_16">Wclear</A> (<A HREF="terminal_interface-curses__ads.htm#1074_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Clear;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1073_14">Clear</A><A HREF="terminal_interface-curses__ads.htm#1073_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1081_14">Clear_To_End_Of_Screen</A><FONT COLOR=red><A NAME="1187_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1082_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1080_14">Clear_To_End_Of_Screen</A><FONT COLOR=red><A NAME="1186_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1081_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1189_16">Wclearbot</A></FONT> (<FONT COLOR=red><A NAME="1189_27">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1189_16">Wclearbot</A>, "wclrtobot");
+      <b>function</b> <FONT COLOR=red><A NAME="1188_16">Wclearbot</A></FONT> (<FONT COLOR=red><A NAME="1188_27">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1188_16">Wclearbot</A>, "wclrtobot");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1189_16">Wclearbot</A> (<A HREF="terminal_interface-curses__ads.htm#1082_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1188_16">Wclearbot</A> (<A HREF="terminal_interface-curses__ads.htm#1081_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Clear_To_End_Of_Screen;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1080_14">Clear_To_End_Of_Screen</A><A HREF="terminal_interface-curses__ads.htm#1080_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1088_14">Clear_To_End_Of_Line</A><FONT COLOR=red><A NAME="1197_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1089_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1087_14">Clear_To_End_Of_Line</A><FONT COLOR=red><A NAME="1196_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1088_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1199_16">Wcleareol</A></FONT> (<FONT COLOR=red><A NAME="1199_27">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1199_16">Wcleareol</A>, "wclrtoeol");
+      <b>function</b> <FONT COLOR=red><A NAME="1198_16">Wcleareol</A></FONT> (<FONT COLOR=red><A NAME="1198_27">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1198_16">Wcleareol</A>, "wclrtoeol");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1199_16">Wcleareol</A> (<A HREF="terminal_interface-curses__ads.htm#1089_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1198_16">Wcleareol</A> (<A HREF="terminal_interface-curses__ads.htm#1088_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Clear_To_End_Of_Line;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1087_14">Clear_To_End_Of_Line</A><A HREF="terminal_interface-curses__ads.htm#1087_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1102_14">Set_Background</A><FONT COLOR=red><A NAME="1207_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1103_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1104_7">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1101_14">Set_Background</A><FONT COLOR=red><A NAME="1206_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1102_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1103_7">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>)
    <b>is</b>
-      <b>procedure</b> <FONT COLOR=red><A NAME="1211_17">WBackground</A></FONT> (<FONT COLOR=red><A NAME="1211_30">W</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1211_45">Ch</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>);
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1211_17">WBackground</A>, "wbkgdset");
+      <b>procedure</b> <FONT COLOR=red><A NAME="1210_17">WBackground</A></FONT> (<FONT COLOR=red><A NAME="1210_30">W</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1210_45">Ch</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>);
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1210_17">WBackground</A>, "wbkgdset");
    <b>begin</b>
-      <A HREF="terminal_interface-curses__adb.htm#1211_17">WBackground</A> (<A HREF="terminal_interface-curses__ads.htm#1103_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1104_7">Ch</A>));
-   <b>end</b> Set_Background;
+      <A HREF="terminal_interface-curses__adb.htm#1210_17">WBackground</A> (<A HREF="terminal_interface-curses__ads.htm#1102_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1103_7">Ch</A>));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1101_14">Set_Background</A><A HREF="terminal_interface-curses__ads.htm#1101_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1110_14">Change_Background</A><FONT COLOR=red><A NAME="1217_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1111_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1112_7">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1109_14">Change_Background</A><FONT COLOR=red><A NAME="1216_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1110_7">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1111_7">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1221_16">WChangeBkgd</A></FONT> (<FONT COLOR=red><A NAME="1221_29">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1221_41">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1221_16">WChangeBkgd</A>, "wbkgd");
+      <b>function</b> <FONT COLOR=red><A NAME="1220_16">WChangeBkgd</A></FONT> (<FONT COLOR=red><A NAME="1220_29">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1220_41">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1220_16">WChangeBkgd</A>, "wbkgd");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1221_16">WChangeBkgd</A> (<A HREF="terminal_interface-curses__ads.htm#1111_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1112_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1220_16">WChangeBkgd</A> (<A HREF="terminal_interface-curses__ads.htm#1110_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1111_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Change_Background;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1109_14">Change_Background</A><A HREF="terminal_interface-curses__ads.htm#1109_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1119_13">Get_Background</A><FONT COLOR=red><A NAME="1229_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1119_29">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
-     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1118_13">Get_Background</A> (<A HREF="terminal_interface-curses__ads.htm#1118_29">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
+     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1232_16">Wgetbkgd</A></FONT> (<FONT COLOR=red><A NAME="1232_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1232_16">Wgetbkgd</A>, "getbkgd");
+      <b>function</b> <FONT COLOR=red><A NAME="1231_16">Wgetbkgd</A></FONT> (<FONT COLOR=red><A NAME="1231_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1231_16">Wgetbkgd</A>, "getbkgd");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1232_16">Wgetbkgd</A> (<A HREF="terminal_interface-curses__ads.htm#1119_29">Win</A>));
-   <b>end</b> Get_Background;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1231_16">Wgetbkgd</A> (<A HREF="terminal_interface-curses__ads.htm#1118_29">Win</A>));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1118_13">Get_Background</A><A HREF="terminal_interface-curses__ads.htm#1118_13">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1146_14">Change_Lines_Status</A><FONT COLOR=red><A NAME="1238_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1146_35">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                                  <A HREF="terminal_interface-curses__ads.htm#1147_35">Start</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                                  <A HREF="terminal_interface-curses__ads.htm#1148_35">Count</A> : <b>in</b> Positive;
-                                  <A HREF="terminal_interface-curses__ads.htm#1149_35">State</A> : <b>in</b> Boolean)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1145_14">Change_Lines_Status</A><FONT COLOR=red><A NAME="1237_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1145_35">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                                  <A HREF="terminal_interface-curses__ads.htm#1146_35">Start</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                                  <A HREF="terminal_interface-curses__ads.htm#1147_35">Count</A> : <b>in</b> Positive;
+                                  <A HREF="terminal_interface-curses__ads.htm#1148_35">State</A> : <b>in</b> Boolean)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1243_16">Wtouchln</A></FONT> (<FONT COLOR=red><A NAME="1243_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="1244_26">Sta</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                         <FONT COLOR=red><A NAME="1245_26">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                         <FONT COLOR=red><A NAME="1246_26">Chg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1243_16">Wtouchln</A>, "wtouchln");
+      <b>function</b> <FONT COLOR=red><A NAME="1242_16">Wtouchln</A></FONT> (<FONT COLOR=red><A NAME="1242_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="1243_26">Sta</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                         <FONT COLOR=red><A NAME="1244_26">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                         <FONT COLOR=red><A NAME="1245_26">Chg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1242_16">Wtouchln</A>, "wtouchln");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1243_16">Wtouchln</A> (<A HREF="terminal_interface-curses__ads.htm#1146_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1147_35">Start</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1148_35">Count</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1149_35">State</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1242_16">Wtouchln</A> (<A HREF="terminal_interface-curses__ads.htm#1145_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1146_35">Start</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1147_35">Count</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1148_35">State</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Change_Lines_Status;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1145_14">Change_Lines_Status</A><A HREF="terminal_interface-curses__ads.htm#1145_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1135_14">Touch</A><FONT COLOR=red><A NAME="1255_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1135_21">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1134_14">Touch</A><FONT COLOR=red><A NAME="1254_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1134_21">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="1257_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1258_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="1256_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1257_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1222_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#1135_21">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1257_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#1258_7">X</A>);
-      <A HREF="terminal_interface-curses__ads.htm#1146_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#1135_21">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#1257_7">Y</A>), True);
-   <b>end</b> Touch;
+      <A HREF="terminal_interface-curses__ads.htm#1221_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#1134_21">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1256_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#1257_7">X</A>);
+      <A HREF="terminal_interface-curses__ads.htm#1145_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#1134_21">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#1256_7">Y</A>), True);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1134_14">Touch</A><A HREF="terminal_interface-curses__ads.htm#1134_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1130_14">Untouch</A><FONT COLOR=red><A NAME="1264_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1130_23">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1129_14">Untouch</A><FONT COLOR=red><A NAME="1263_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1129_23">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <FONT COLOR=red><A NAME="1266_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1267_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="1265_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1266_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1222_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#1130_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1266_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#1267_7">X</A>);
-      <A HREF="terminal_interface-curses__ads.htm#1146_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#1130_23">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#1266_7">Y</A>), False);
-   <b>end</b> Untouch;
+      <A HREF="terminal_interface-curses__ads.htm#1221_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#1129_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1265_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#1266_7">X</A>);
+      <A HREF="terminal_interface-curses__ads.htm#1145_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#1129_23">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#1265_7">Y</A>), False);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1129_14">Untouch</A><A HREF="terminal_interface-curses__ads.htm#1129_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1139_14">Touch</A><FONT COLOR=red><A NAME="1273_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1139_21">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                    <A HREF="terminal_interface-curses__ads.htm#1140_21">Start</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-                    <A HREF="terminal_interface-curses__ads.htm#1141_21">Count</A> : <b>in</b> Positive)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1138_14">Touch</A><FONT COLOR=red><A NAME="1272_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1138_21">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                    <A HREF="terminal_interface-curses__ads.htm#1139_21">Start</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+                    <A HREF="terminal_interface-curses__ads.htm#1140_21">Count</A> : <b>in</b> Positive)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1146_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#1139_21">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1140_21">Start</A>, <A HREF="terminal_interface-curses__ads.htm#1141_21">Count</A>, True);
-   <b>end</b> Touch;
+      <A HREF="terminal_interface-curses__ads.htm#1145_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#1138_21">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1139_21">Start</A>, <A HREF="terminal_interface-curses__ads.htm#1140_21">Count</A>, True);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1138_14">Touch</A><A HREF="terminal_interface-curses__ads.htm#1138_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1154_13">Is_Touched</A><FONT COLOR=red><A NAME="1281_13"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1154_25">Win</A>  : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1155_25">Line</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1153_13">Is_Touched</A>
+     (<A HREF="terminal_interface-curses__ads.htm#1153_25">Win</A>  : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1154_25">Line</A> : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1285_16">WLineTouched</A></FONT> (<FONT COLOR=red><A NAME="1285_30">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1285_42">L</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1285_16">WLineTouched</A>, "is_linetouched");
+      <b>function</b> <FONT COLOR=red><A NAME="1284_16">WLineTouched</A></FONT> (<FONT COLOR=red><A NAME="1284_30">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1284_42">L</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1284_16">WLineTouched</A>, "is_linetouched");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1285_16">WLineTouched</A> (<A HREF="terminal_interface-curses__ads.htm#1154_25">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1155_25">Line</A>)) = <A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1284_16">WLineTouched</A> (<A HREF="terminal_interface-curses__ads.htm#1153_25">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1154_25">Line</A>)) = <A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Is_Touched;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1153_13">Is_Touched</A><A HREF="terminal_interface-curses__ads.htm#1153_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1159_13">Is_Touched</A><FONT COLOR=red><A NAME="1295_13"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1159_25">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1158_13">Is_Touched</A>
+     (<A HREF="terminal_interface-curses__ads.htm#1158_25">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1298_16">WWinTouched</A></FONT> (<FONT COLOR=red><A NAME="1298_29">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1298_16">WWinTouched</A>, "is_wintouched");
+      <b>function</b> <FONT COLOR=red><A NAME="1297_16">WWinTouched</A></FONT> (<FONT COLOR=red><A NAME="1297_29">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1297_16">WWinTouched</A>, "is_wintouched");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1298_16">WWinTouched</A> (<A HREF="terminal_interface-curses__ads.htm#1159_25">Win</A>) = <A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1297_16">WWinTouched</A> (<A HREF="terminal_interface-curses__ads.htm#1158_25">Win</A>) = <A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Is_Touched;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1158_13">Is_Touched</A><A HREF="terminal_interface-curses__ads.htm#1158_13">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1168_14">Copy</A><FONT COLOR=red><A NAME="1308_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1169_7">Source_Window</A>            : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1170_7">Destination_Window</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1171_7">Source_Top_Row</A>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1172_7">Source_Left_Column</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1173_7">Destination_Top_Row</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1174_7">Destination_Left_Column</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1175_7">Destination_Bottom_Row</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1176_7">Destination_Right_Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1177_7">Non_Destructive_Mode</A>     : <b>in</b> Boolean := True)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1319_16">Copywin</A></FONT> (<FONT COLOR=red><A NAME="1319_25">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                        <FONT COLOR=red><A NAME="1320_25">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                        <FONT COLOR=red><A NAME="1321_25">Str</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                        <FONT COLOR=red><A NAME="1322_25">Slc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                        <FONT COLOR=red><A NAME="1323_25">Dtr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                        <FONT COLOR=red><A NAME="1324_25">Dlc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                        <FONT COLOR=red><A NAME="1325_25">Dbr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                        <FONT COLOR=red><A NAME="1326_25">Drc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                        <FONT COLOR=red><A NAME="1327_25">Ndm</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1319_16">Copywin</A>, "copywin");
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1319_16">Copywin</A> (<A HREF="terminal_interface-curses__ads.htm#1169_7">Source_Window</A>,
-                  <A HREF="terminal_interface-curses__ads.htm#1170_7">Destination_Window</A>,
-                  <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1171_7">Source_Top_Row</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1172_7">Source_Left_Column</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1173_7">Destination_Top_Row</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1174_7">Destination_Left_Column</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1175_7">Destination_Bottom_Row</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1176_7">Destination_Right_Column</A>),
-                  Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1177_7">Non_Destructive_Mode</A>)
-                ) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-   <b>end</b> Copy;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1182_14">Overwrite</A><FONT COLOR=red><A NAME="1344_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1182_25">Source_Window</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1183_25">Destination_Window</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1348_16">Overwrite</A></FONT> (<FONT COLOR=red><A NAME="1348_27">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1348_41">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1348_16">Overwrite</A>, "overwrite");
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1348_16">Overwrite</A> (<A HREF="terminal_interface-curses__ads.htm#1182_25">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#1183_25">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-   <b>end</b> Overwrite;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1188_14">Overlay</A><FONT COLOR=red><A NAME="1356_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1188_23">Source_Window</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1189_23">Destination_Window</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1360_16">Overlay</A></FONT> (<FONT COLOR=red><A NAME="1360_25">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1360_39">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1360_16">Overlay</A>, "overlay");
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1360_16">Overlay</A> (<A HREF="terminal_interface-curses__ads.htm#1188_23">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#1189_23">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-   <b>end</b> Overlay;
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1167_14">Copy</A><FONT COLOR=red><A NAME="1307_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1168_7">Source_Window</A>            : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1169_7">Destination_Window</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1170_7">Source_Top_Row</A>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1171_7">Source_Left_Column</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1172_7">Destination_Top_Row</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1173_7">Destination_Left_Column</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1174_7">Destination_Bottom_Row</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1175_7">Destination_Right_Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1176_7">Non_Destructive_Mode</A>     : <b>in</b> Boolean := True)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1318_16">Copywin</A></FONT> (<FONT COLOR=red><A NAME="1318_25">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                        <FONT COLOR=red><A NAME="1319_25">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                        <FONT COLOR=red><A NAME="1320_25">Str</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                        <FONT COLOR=red><A NAME="1321_25">Slc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                        <FONT COLOR=red><A NAME="1322_25">Dtr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                        <FONT COLOR=red><A NAME="1323_25">Dlc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                        <FONT COLOR=red><A NAME="1324_25">Dbr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                        <FONT COLOR=red><A NAME="1325_25">Drc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                        <FONT COLOR=red><A NAME="1326_25">Ndm</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1318_16">Copywin</A>, "copywin");
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1318_16">Copywin</A> (<A HREF="terminal_interface-curses__ads.htm#1168_7">Source_Window</A>,
+                  <A HREF="terminal_interface-curses__ads.htm#1169_7">Destination_Window</A>,
+                  <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1170_7">Source_Top_Row</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1171_7">Source_Left_Column</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1172_7">Destination_Top_Row</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1173_7">Destination_Left_Column</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1174_7">Destination_Bottom_Row</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1175_7">Destination_Right_Column</A>),
+                  Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1176_7">Non_Destructive_Mode</A>)
+                ) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1167_14">Copy</A><A HREF="terminal_interface-curses__ads.htm#1167_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1181_14">Overwrite</A><FONT COLOR=red><A NAME="1343_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1181_25">Source_Window</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1182_25">Destination_Window</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1347_16">Overwrite</A></FONT> (<FONT COLOR=red><A NAME="1347_27">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1347_41">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1347_16">Overwrite</A>, "overwrite");
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1347_16">Overwrite</A> (<A HREF="terminal_interface-curses__ads.htm#1181_25">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#1182_25">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1181_14">Overwrite</A><A HREF="terminal_interface-curses__ads.htm#1181_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1187_14">Overlay</A><FONT COLOR=red><A NAME="1355_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1187_23">Source_Window</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1188_23">Destination_Window</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1359_16">Overlay</A></FONT> (<FONT COLOR=red><A NAME="1359_25">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1359_39">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1359_16">Overlay</A>, "overlay");
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1359_16">Overlay</A> (<A HREF="terminal_interface-curses__ads.htm#1187_23">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#1188_23">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1187_14">Overlay</A><A HREF="terminal_interface-curses__ads.htm#1187_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1198_14">Insert_Delete_Lines</A><FONT COLOR=red><A NAME="1369_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1199_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1200_7">Lines</A> : <b>in</b> Integer       := 1) <FONT COLOR=green><EM>-- default is to insert one line above</EM></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1197_14">Insert_Delete_Lines</A><FONT COLOR=red><A NAME="1368_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1198_7">Win</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1199_7">Lines</A> : <b>in</b> Integer       := 1) <FONT COLOR=green><EM>-- default is to insert one line above</EM></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1373_16">Winsdelln</A></FONT> (<FONT COLOR=red><A NAME="1373_27">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1373_39">N</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1373_16">Winsdelln</A>, "winsdelln");
+      <b>function</b> <FONT COLOR=red><A NAME="1372_16">Winsdelln</A></FONT> (<FONT COLOR=red><A NAME="1372_27">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1372_39">N</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1372_16">Winsdelln</A>, "winsdelln");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1373_16">Winsdelln</A> (<A HREF="terminal_interface-curses__ads.htm#1199_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1200_7">Lines</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1372_16">Winsdelln</A> (<A HREF="terminal_interface-curses__ads.htm#1198_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1199_7">Lines</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Insert_Delete_Lines;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1197_14">Insert_Delete_Lines</A><A HREF="terminal_interface-curses__ads.htm#1197_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1206_14">Delete_Line</A><FONT COLOR=red><A NAME="1381_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1206_27">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1205_14">Delete_Line</A><FONT COLOR=red><A NAME="1380_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1205_27">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1198_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#1206_27">Win</A>, -1);
-   <b>end</b> Delete_Line;
+      <A HREF="terminal_interface-curses__ads.htm#1197_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#1205_27">Win</A>, -1);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1205_14">Delete_Line</A><A HREF="terminal_interface-curses__ads.htm#1205_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1212_14">Insert_Line</A><FONT COLOR=red><A NAME="1387_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1212_27">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1211_14">Insert_Line</A><FONT COLOR=red><A NAME="1386_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1211_27">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1198_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#1212_27">Win</A>, 1);
-   <b>end</b> Insert_Line;
+      <A HREF="terminal_interface-curses__ads.htm#1197_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#1211_27">Win</A>, 1);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1211_14">Insert_Line</A><A HREF="terminal_interface-curses__ads.htm#1211_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1222_14">Get_Size</A><FONT COLOR=red><A NAME="1395_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1223_7">Win</A>               : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1224_7">Number_Of_Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1225_7">Number_Of_Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1221_14">Get_Size</A><FONT COLOR=red><A NAME="1394_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1222_7">Win</A>               : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1223_7">Number_Of_Lines</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1224_7">Number_Of_Columns</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>)
    <b>is</b>
       <FONT COLOR=green><EM>--  Please note: in ncurses they are one off.</EM></FONT>
       <FONT COLOR=green><EM>--  This might be different in other implementations of curses</EM></FONT>
-      <FONT COLOR=red><A NAME="1402_7">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#90_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1223_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1910_4">Offset_maxy</A>)) + <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1929_4">Offset_XY</A>);
-      <FONT COLOR=red><A NAME="1403_7">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#90_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1223_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1911_4">Offset_maxx</A>)) + <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1929_4">Offset_XY</A>);
-   <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1224_7">Number_Of_Lines</A>   := <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#1402_7">Y</A>);
-      <A HREF="terminal_interface-curses__ads.htm#1225_7">Number_Of_Columns</A> := <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#1403_7">X</A>);
-   <b>end</b> Get_Size;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1230_14">Get_Window_Position</A><FONT COLOR=red><A NAME="1409_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1231_7">Win</A>             : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1232_7">Top_Left_Line</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1233_7">Top_Left_Column</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
-   <b>is</b>
-      <FONT COLOR=red><A NAME="1414_7">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> := <A HREF="terminal_interface-curses__adb.htm#90_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1231_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1912_4">Offset_begy</A>);
-      <FONT COLOR=red><A NAME="1415_7">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> := <A HREF="terminal_interface-curses__adb.htm#90_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1231_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1913_4">Offset_begx</A>);
-   <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1232_7">Top_Left_Line</A>   := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1414_7">Y</A>);
-      <A HREF="terminal_interface-curses__ads.htm#1233_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1415_7">X</A>);
-   <b>end</b> Get_Window_Position;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1238_14">Get_Cursor_Position</A><FONT COLOR=red><A NAME="1421_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1239_7">Win</A>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1240_7">Line</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1241_7">Column</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
-   <b>is</b>
-      <FONT COLOR=red><A NAME="1426_7">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> := <A HREF="terminal_interface-curses__adb.htm#90_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1239_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1914_4">Offset_cury</A>);
-      <FONT COLOR=red><A NAME="1427_7">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> := <A HREF="terminal_interface-curses__adb.htm#90_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1239_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1915_4">Offset_curx</A>);
-   <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1240_7">Line</A>   := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1426_7">Y</A>);
-      <A HREF="terminal_interface-curses__ads.htm#1241_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1427_7">X</A>);
-   <b>end</b> Get_Cursor_Position;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1246_14">Get_Origin_Relative_To_Parent</A><FONT COLOR=red><A NAME="1433_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1247_7">Win</A>                : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1248_7">Top_Left_Line</A>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1249_7">Top_Left_Column</A>    : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1250_7">Is_Not_A_Subwindow</A> : <b>out</b> Boolean)
-   <b>is</b>
-      <FONT COLOR=red><A NAME="1439_7">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1247_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1917_4">Offset_pary</A>);
-      <FONT COLOR=red><A NAME="1440_7">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1247_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1918_4">Offset_parx</A>);
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1439_7">Y</A> = -1 <b>then</b>
-         <A HREF="terminal_interface-curses__ads.htm#1248_7">Top_Left_Line</A>   := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>'Last;
-         <A HREF="terminal_interface-curses__ads.htm#1249_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>'Last;
-         <A HREF="terminal_interface-curses__ads.htm#1250_7">Is_Not_A_Subwindow</A> := True;
+      <FONT COLOR=red><A NAME="1401_7">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1222_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1909_4">Offset_maxy</A>)) + <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1928_4">Offset_XY</A>);
+      <FONT COLOR=red><A NAME="1402_7">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1222_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1910_4">Offset_maxx</A>)) + <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1928_4">Offset_XY</A>);
+   <b>begin</b>
+      <A HREF="terminal_interface-curses__ads.htm#1223_7">Number_Of_Lines</A>   := <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#1401_7">Y</A>);
+      <A HREF="terminal_interface-curses__ads.htm#1224_7">Number_Of_Columns</A> := <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#1402_7">X</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1221_14">Get_Size</A><A HREF="terminal_interface-curses__ads.htm#1221_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1229_14">Get_Window_Position</A><FONT COLOR=red><A NAME="1408_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1230_7">Win</A>             : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1231_7">Top_Left_Line</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1232_7">Top_Left_Column</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
+   <b>is</b>
+      <FONT COLOR=red><A NAME="1413_7">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> := <A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1230_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1911_4">Offset_begy</A>);
+      <FONT COLOR=red><A NAME="1414_7">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> := <A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1230_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1912_4">Offset_begx</A>);
+   <b>begin</b>
+      <A HREF="terminal_interface-curses__ads.htm#1231_7">Top_Left_Line</A>   := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1413_7">Y</A>);
+      <A HREF="terminal_interface-curses__ads.htm#1232_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1414_7">X</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1229_14">Get_Window_Position</A><A HREF="terminal_interface-curses__ads.htm#1229_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1237_14">Get_Cursor_Position</A><FONT COLOR=red><A NAME="1420_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1238_7">Win</A>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1239_7">Line</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1240_7">Column</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
+   <b>is</b>
+      <FONT COLOR=red><A NAME="1425_7">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> := <A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1238_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1913_4">Offset_cury</A>);
+      <FONT COLOR=red><A NAME="1426_7">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> := <A HREF="terminal_interface-curses__adb.htm#89_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1238_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1914_4">Offset_curx</A>);
+   <b>begin</b>
+      <A HREF="terminal_interface-curses__ads.htm#1239_7">Line</A>   := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1425_7">Y</A>);
+      <A HREF="terminal_interface-curses__ads.htm#1240_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1426_7">X</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1237_14">Get_Cursor_Position</A><A HREF="terminal_interface-curses__ads.htm#1237_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1245_14">Get_Origin_Relative_To_Parent</A><FONT COLOR=red><A NAME="1432_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1246_7">Win</A>                : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1247_7">Top_Left_Line</A>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1248_7">Top_Left_Column</A>    : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1249_7">Is_Not_A_Subwindow</A> : <b>out</b> Boolean)
+   <b>is</b>
+      <FONT COLOR=red><A NAME="1438_7">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#88_13">W_Get_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1246_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1916_4">Offset_pary</A>);
+      <FONT COLOR=red><A NAME="1439_7">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#88_13">W_Get_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1246_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1917_4">Offset_parx</A>);
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1438_7">Y</A> = -1 <b>then</b>
+         <A HREF="terminal_interface-curses__ads.htm#1247_7">Top_Left_Line</A>   := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>'Last;
+         <A HREF="terminal_interface-curses__ads.htm#1248_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>'Last;
+         <A HREF="terminal_interface-curses__ads.htm#1249_7">Is_Not_A_Subwindow</A> := True;
       <b>else</b>
-         <A HREF="terminal_interface-curses__ads.htm#1248_7">Top_Left_Line</A>   := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1439_7">Y</A>);
-         <A HREF="terminal_interface-curses__ads.htm#1249_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1440_7">X</A>);
-         <A HREF="terminal_interface-curses__ads.htm#1250_7">Is_Not_A_Subwindow</A> := False;
+         <A HREF="terminal_interface-curses__ads.htm#1247_7">Top_Left_Line</A>   := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1438_7">Y</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1248_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#1439_7">X</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1249_7">Is_Not_A_Subwindow</A> := False;
       <b>end</b> <b>if</b>;
-   <b>end</b> Get_Origin_Relative_To_Parent;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1245_14">Get_Origin_Relative_To_Parent</A><A HREF="terminal_interface-curses__ads.htm#1245_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1261_13">New_Pad</A><FONT COLOR=red><A NAME="1453_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1261_22">Lines</A>   : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                     <A HREF="terminal_interface-curses__ads.htm#1262_22">Columns</A> : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1456_16">Newpad</A></FONT> (<FONT COLOR=red><A NAME="1456_24">Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>; <FONT COLOR=red><A NAME="1456_39">Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1456_16">Newpad</A>, "newpad");
-
-      <FONT COLOR=red><A NAME="1459_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-   <b>begin</b>
-      <A HREF="terminal_interface-curses__adb.htm#1459_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#1456_16">Newpad</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1261_22">Lines</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1262_22">Columns</A>));
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1459_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#1459_7">W</A>;
-   <b>end</b> New_Pad;
-
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1267_13">Sub_Pad</A><FONT COLOR=red><A NAME="1468_13"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1268_7">Pad</A>                   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1269_7">Number_Of_Lines</A>       : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1270_7">Number_Of_Columns</A>     : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1271_7">First_Line_Position</A>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1272_7">First_Column_Position</A> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1475_16">Subpad</A></FONT>
-        (<FONT COLOR=red><A NAME="1476_10">Pad</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-         <FONT COLOR=red><A NAME="1477_10">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1478_10">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1479_10">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1480_10">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1475_16">Subpad</A>, "subpad");
-
-      <FONT COLOR=red><A NAME="1483_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-   <b>begin</b>
-      <A HREF="terminal_interface-curses__adb.htm#1483_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#1475_16">Subpad</A> (<A HREF="terminal_interface-curses__ads.htm#1268_7">Pad</A>,
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1269_7">Number_Of_Lines</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1270_7">Number_Of_Columns</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1271_7">First_Line_Position</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1272_7">First_Column_Position</A>));
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1483_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#58_4">Null_Window</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#1483_7">W</A>;
-   <b>end</b> Sub_Pad;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1277_14">Refresh</A><FONT COLOR=red><A NAME="1496_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1278_7">Pad</A>                      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1279_7">Source_Top_Row</A>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1280_7">Source_Left_Column</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1281_7">Destination_Top_Row</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1282_7">Destination_Left_Column</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1283_7">Destination_Bottom_Row</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1284_7">Destination_Right_Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1505_16">Prefresh</A></FONT>
-        (<FONT COLOR=red><A NAME="1506_10">Pad</A></FONT>                      : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-         <FONT COLOR=red><A NAME="1507_10">Source_Top_Row</A></FONT>           : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1508_10">Source_Left_Column</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1509_10">Destination_Top_Row</A></FONT>      : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1510_10">Destination_Left_Column</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1511_10">Destination_Bottom_Row</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1512_10">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1505_16">Prefresh</A>, "prefresh");
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1505_16">Prefresh</A> (<A HREF="terminal_interface-curses__ads.htm#1278_7">Pad</A>,
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1279_7">Source_Top_Row</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1280_7">Source_Left_Column</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1281_7">Destination_Top_Row</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1282_7">Destination_Left_Column</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1283_7">Destination_Bottom_Row</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1284_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-   <b>end</b> Refresh;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1289_14">Refresh_Without_Update</A><FONT COLOR=red><A NAME="1526_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1290_7">Pad</A>                      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1291_7">Source_Top_Row</A>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1292_7">Source_Left_Column</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1293_7">Destination_Top_Row</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1294_7">Destination_Left_Column</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1295_7">Destination_Bottom_Row</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1296_7">Destination_Right_Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1535_16">Pnoutrefresh</A></FONT>
-        (<FONT COLOR=red><A NAME="1536_10">Pad</A></FONT>                      : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-         <FONT COLOR=red><A NAME="1537_10">Source_Top_Row</A></FONT>           : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1538_10">Source_Left_Column</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1539_10">Destination_Top_Row</A></FONT>      : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1540_10">Destination_Left_Column</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1541_10">Destination_Bottom_Row</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-         <FONT COLOR=red><A NAME="1542_10">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1535_16">Pnoutrefresh</A>, "pnoutrefresh");
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1535_16">Pnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#1290_7">Pad</A>,
-                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1291_7">Source_Top_Row</A>),
-                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1292_7">Source_Left_Column</A>),
-                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1293_7">Destination_Top_Row</A>),
-                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1294_7">Destination_Left_Column</A>),
-                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1295_7">Destination_Bottom_Row</A>),
-                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1296_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-   <b>end</b> Refresh_Without_Update;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1301_14">Add_Character_To_Pad_And_Echo_It</A><FONT COLOR=red><A NAME="1556_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1302_7">Pad</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1303_7">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1560_16">Pechochar</A></FONT> (<FONT COLOR=red><A NAME="1560_27">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1560_41">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>)
-                          <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1560_16">Pechochar</A>, "pechochar");
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1560_16">Pechochar</A> (<A HREF="terminal_interface-curses__ads.htm#1302_7">Pad</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1303_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-   <b>end</b> Add_Character_To_Pad_And_Echo_It;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1306_14">Add_Character_To_Pad_And_Echo_It</A><FONT COLOR=red><A NAME="1569_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1307_7">Pad</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1308_7">Ch</A>  : <b>in</b> Character)
-   <b>is</b>
-   <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#1301_14">Add_Character_To_Pad_And_Echo_It</A>
-        (<A HREF="terminal_interface-curses__ads.htm#1307_7">Pad</A>,
-         <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#1308_7">Ch</A>,
-                               Color =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First,
-                               Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>));
-   <b>end</b> Add_Character_To_Pad_And_Echo_It;
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1260_13">New_Pad</A> (<A HREF="terminal_interface-curses__ads.htm#1260_22">Lines</A>   : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                     <A HREF="terminal_interface-curses__ads.htm#1261_22">Columns</A> : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1455_16">Newpad</A></FONT> (<FONT COLOR=red><A NAME="1455_24">Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>; <FONT COLOR=red><A NAME="1455_39">Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1455_16">Newpad</A>, "newpad");
+
+      <FONT COLOR=red><A NAME="1458_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+   <b>begin</b>
+      <A HREF="terminal_interface-curses__adb.htm#1458_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#1455_16">Newpad</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1260_22">Lines</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1261_22">Columns</A>));
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1458_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#1458_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1260_13">New_Pad</A><A HREF="terminal_interface-curses__ads.htm#1260_13">;</A>
+
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1266_13">Sub_Pad</A>
+     (<A HREF="terminal_interface-curses__ads.htm#1267_7">Pad</A>                   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1268_7">Number_Of_Lines</A>       : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1269_7">Number_Of_Columns</A>     : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1270_7">First_Line_Position</A>   : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1271_7">First_Column_Position</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1474_16">Subpad</A></FONT>
+        (<FONT COLOR=red><A NAME="1475_10">Pad</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+         <FONT COLOR=red><A NAME="1476_10">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1477_10">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1478_10">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1479_10">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1474_16">Subpad</A>, "subpad");
+
+      <FONT COLOR=red><A NAME="1482_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+   <b>begin</b>
+      <A HREF="terminal_interface-curses__adb.htm#1482_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#1474_16">Subpad</A> (<A HREF="terminal_interface-curses__ads.htm#1267_7">Pad</A>,
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1268_7">Number_Of_Lines</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1269_7">Number_Of_Columns</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1270_7">First_Line_Position</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1271_7">First_Column_Position</A>));
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1482_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#57_4">Null_Window</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#1482_7">W</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1266_13">Sub_Pad</A><A HREF="terminal_interface-curses__ads.htm#1266_13">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1276_14">Refresh</A><FONT COLOR=red><A NAME="1495_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1277_7">Pad</A>                      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1278_7">Source_Top_Row</A>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1279_7">Source_Left_Column</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1280_7">Destination_Top_Row</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1281_7">Destination_Left_Column</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1282_7">Destination_Bottom_Row</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1283_7">Destination_Right_Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1504_16">Prefresh</A></FONT>
+        (<FONT COLOR=red><A NAME="1505_10">Pad</A></FONT>                      : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+         <FONT COLOR=red><A NAME="1506_10">Source_Top_Row</A></FONT>           : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1507_10">Source_Left_Column</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1508_10">Destination_Top_Row</A></FONT>      : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1509_10">Destination_Left_Column</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1510_10">Destination_Bottom_Row</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1511_10">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1504_16">Prefresh</A>, "prefresh");
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1504_16">Prefresh</A> (<A HREF="terminal_interface-curses__ads.htm#1277_7">Pad</A>,
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1278_7">Source_Top_Row</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1279_7">Source_Left_Column</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1280_7">Destination_Top_Row</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1281_7">Destination_Left_Column</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1282_7">Destination_Bottom_Row</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1283_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1276_14">Refresh</A><A HREF="terminal_interface-curses__ads.htm#1276_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1288_14">Refresh_Without_Update</A><FONT COLOR=red><A NAME="1525_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1289_7">Pad</A>                      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1290_7">Source_Top_Row</A>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1291_7">Source_Left_Column</A>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1292_7">Destination_Top_Row</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1293_7">Destination_Left_Column</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1294_7">Destination_Bottom_Row</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1295_7">Destination_Right_Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1534_16">Pnoutrefresh</A></FONT>
+        (<FONT COLOR=red><A NAME="1535_10">Pad</A></FONT>                      : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+         <FONT COLOR=red><A NAME="1536_10">Source_Top_Row</A></FONT>           : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1537_10">Source_Left_Column</A></FONT>       : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1538_10">Destination_Top_Row</A></FONT>      : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1539_10">Destination_Left_Column</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1540_10">Destination_Bottom_Row</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+         <FONT COLOR=red><A NAME="1541_10">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1534_16">Pnoutrefresh</A>, "pnoutrefresh");
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1534_16">Pnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#1289_7">Pad</A>,
+                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1290_7">Source_Top_Row</A>),
+                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1291_7">Source_Left_Column</A>),
+                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1292_7">Destination_Top_Row</A>),
+                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1293_7">Destination_Left_Column</A>),
+                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1294_7">Destination_Bottom_Row</A>),
+                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1295_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1288_14">Refresh_Without_Update</A><A HREF="terminal_interface-curses__ads.htm#1288_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1300_14">Add_Character_To_Pad_And_Echo_It</A><FONT COLOR=red><A NAME="1555_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1301_7">Pad</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1302_7">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1559_16">Pechochar</A></FONT> (<FONT COLOR=red><A NAME="1559_27">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1559_41">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>)
+                          <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1559_16">Pechochar</A>, "pechochar");
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1559_16">Pechochar</A> (<A HREF="terminal_interface-curses__ads.htm#1301_7">Pad</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1302_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1300_14">Add_Character_To_Pad_And_Echo_It</A><A HREF="terminal_interface-curses__ads.htm#1300_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1305_14">Add_Character_To_Pad_And_Echo_It</A><FONT COLOR=red><A NAME="1568_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1306_7">Pad</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1307_7">Ch</A>  : <b>in</b> Character)
+   <b>is</b>
+   <b>begin</b>
+      <A HREF="terminal_interface-curses__ads.htm#1300_14">Add_Character_To_Pad_And_Echo_It</A>
+        (<A HREF="terminal_interface-curses__ads.htm#1306_7">Pad</A>,
+         <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>'(Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#1307_7">Ch</A>,
+                               Color =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First,
+                               Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1305_14">Add_Character_To_Pad_And_Echo_It</A><A HREF="terminal_interface-curses__ads.htm#1305_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1316_14">Scroll</A><FONT COLOR=red><A NAME="1581_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1316_22">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                     <A HREF="terminal_interface-curses__ads.htm#1317_22">Amount</A> : <b>in</b> Integer := 1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1315_14">Scroll</A><FONT COLOR=red><A NAME="1580_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1315_22">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                     <A HREF="terminal_interface-curses__ads.htm#1316_22">Amount</A> : <b>in</b> Integer := 1)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1584_16">Wscrl</A></FONT> (<FONT COLOR=red><A NAME="1584_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1584_37">N</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1584_16">Wscrl</A>, "wscrl");
+      <b>function</b> <FONT COLOR=red><A NAME="1583_16">Wscrl</A></FONT> (<FONT COLOR=red><A NAME="1583_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1583_37">N</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1583_16">Wscrl</A>, "wscrl");
 
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1584_16">Wscrl</A> (<A HREF="terminal_interface-curses__ads.htm#1316_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1317_22">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1583_16">Wscrl</A> (<A HREF="terminal_interface-curses__ads.htm#1315_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1316_22">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Scroll;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1315_14">Scroll</A><A HREF="terminal_interface-curses__ads.htm#1315_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1328_14">Delete_Character</A><FONT COLOR=red><A NAME="1594_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1328_32">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1327_14">Delete_Character</A><FONT COLOR=red><A NAME="1593_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1327_32">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1596_16">Wdelch</A></FONT> (<FONT COLOR=red><A NAME="1596_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1596_16">Wdelch</A>, "wdelch");
+      <b>function</b> <FONT COLOR=red><A NAME="1595_16">Wdelch</A></FONT> (<FONT COLOR=red><A NAME="1595_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1595_16">Wdelch</A>, "wdelch");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1596_16">Wdelch</A> (<A HREF="terminal_interface-curses__ads.htm#1328_32">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1595_16">Wdelch</A> (<A HREF="terminal_interface-curses__ads.htm#1327_32">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Delete_Character;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1327_14">Delete_Character</A><A HREF="terminal_interface-curses__ads.htm#1327_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1333_14">Delete_Character</A><FONT COLOR=red><A NAME="1604_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1334_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1335_7">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1336_7">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1332_14">Delete_Character</A><FONT COLOR=red><A NAME="1603_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1333_7">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1334_7">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1335_7">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1609_16">Mvwdelch</A></FONT> (<FONT COLOR=red><A NAME="1609_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="1610_26">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                         <FONT COLOR=red><A NAME="1611_26">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1609_16">Mvwdelch</A>, "mvwdelch");
+      <b>function</b> <FONT COLOR=red><A NAME="1608_16">Mvwdelch</A></FONT> (<FONT COLOR=red><A NAME="1608_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="1609_26">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                         <FONT COLOR=red><A NAME="1610_26">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1608_16">Mvwdelch</A>, "mvwdelch");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1609_16">Mvwdelch</A> (<A HREF="terminal_interface-curses__ads.htm#1334_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1335_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1336_7">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1608_16">Mvwdelch</A> (<A HREF="terminal_interface-curses__ads.htm#1333_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1334_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1335_7">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Delete_Character;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1332_14">Delete_Character</A><A HREF="terminal_interface-curses__ads.htm#1332_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1346_13">Peek</A><FONT COLOR=red><A NAME="1619_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1346_19">Win</A> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>)
-     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1345_13">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#1345_19">Win</A> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>)
+     <b>return</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1622_16">Winch</A></FONT> (<FONT COLOR=red><A NAME="1622_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1622_16">Winch</A>, "winch");
+      <b>function</b> <FONT COLOR=red><A NAME="1621_16">Winch</A></FONT> (<FONT COLOR=red><A NAME="1621_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1621_16">Winch</A>, "winch");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1622_16">Winch</A> (<A HREF="terminal_interface-curses__ads.htm#1346_19">Win</A>));
-   <b>end</b> Peek;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1621_16">Winch</A> (<A HREF="terminal_interface-curses__ads.htm#1345_19">Win</A>));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1345_13">Peek</A><A HREF="terminal_interface-curses__ads.htm#1345_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1352_13">Peek</A><FONT COLOR=red><A NAME="1628_13"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1353_7">Win</A>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1354_7">Line</A>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1355_7">Column</A> : <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1351_13">Peek</A>
+     (<A HREF="terminal_interface-curses__ads.htm#1352_7">Win</A>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1353_7">Line</A>   : <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1354_7">Column</A> : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1633_16">Mvwinch</A></FONT> (<FONT COLOR=red><A NAME="1633_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                        <FONT COLOR=red><A NAME="1634_25">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                        <FONT COLOR=red><A NAME="1635_25">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1633_16">Mvwinch</A>, "mvwinch");
+      <b>function</b> <FONT COLOR=red><A NAME="1632_16">Mvwinch</A></FONT> (<FONT COLOR=red><A NAME="1632_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                        <FONT COLOR=red><A NAME="1633_25">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                        <FONT COLOR=red><A NAME="1634_25">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1632_16">Mvwinch</A>, "mvwinch");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1633_16">Mvwinch</A> (<A HREF="terminal_interface-curses__ads.htm#1353_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1354_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1355_7">Column</A>)));
-   <b>end</b> Peek;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1632_16">Mvwinch</A> (<A HREF="terminal_interface-curses__ads.htm#1352_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1353_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1354_7">Column</A>)));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1351_13">Peek</A><A HREF="terminal_interface-curses__ads.htm#1351_13">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1365_14">Insert</A><FONT COLOR=red><A NAME="1641_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1365_22">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                     <A HREF="terminal_interface-curses__ads.htm#1366_22">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1364_14">Insert</A><FONT COLOR=red><A NAME="1640_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1364_22">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                     <A HREF="terminal_interface-curses__ads.htm#1365_22">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1644_16">Winsch</A></FONT> (<FONT COLOR=red><A NAME="1644_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>; <FONT COLOR=red><A NAME="1644_38">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1644_16">Winsch</A>, "winsch");
+      <b>function</b> <FONT COLOR=red><A NAME="1643_16">Winsch</A></FONT> (<FONT COLOR=red><A NAME="1643_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>; <FONT COLOR=red><A NAME="1643_38">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1643_16">Winsch</A>, "winsch");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1644_16">Winsch</A> (<A HREF="terminal_interface-curses__ads.htm#1365_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1366_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1643_16">Winsch</A> (<A HREF="terminal_interface-curses__ads.htm#1364_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1365_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Insert;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1364_14">Insert</A><A HREF="terminal_interface-curses__ads.htm#1364_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1371_14">Insert</A><FONT COLOR=red><A NAME="1652_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1371_22">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1372_22">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1373_22">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1374_22">Ch</A>     : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1370_14">Insert</A><FONT COLOR=red><A NAME="1651_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1370_22">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1371_22">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1372_22">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1373_22">Ch</A>     : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1658_16">Mvwinsch</A></FONT> (<FONT COLOR=red><A NAME="1658_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="1659_26">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                         <FONT COLOR=red><A NAME="1660_26">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                         <FONT COLOR=red><A NAME="1661_26">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1658_16">Mvwinsch</A>, "mvwinsch");
+      <b>function</b> <FONT COLOR=red><A NAME="1657_16">Mvwinsch</A></FONT> (<FONT COLOR=red><A NAME="1657_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="1658_26">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                         <FONT COLOR=red><A NAME="1659_26">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                         <FONT COLOR=red><A NAME="1660_26">Ch</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1657_16">Mvwinsch</A>, "mvwinsch");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1658_16">Mvwinsch</A> (<A HREF="terminal_interface-curses__ads.htm#1371_22">Win</A>,
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1372_22">Line</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1373_22">Column</A>),
-                   <A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1374_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1657_16">Mvwinsch</A> (<A HREF="terminal_interface-curses__ads.htm#1370_22">Win</A>,
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1371_22">Line</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1372_22">Column</A>),
+                   <A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1373_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Insert;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1370_14">Insert</A><A HREF="terminal_interface-curses__ads.htm#1370_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1383_14">Insert</A><FONT COLOR=red><A NAME="1672_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1383_22">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                     <A HREF="terminal_interface-curses__ads.htm#1384_22">Str</A> : <b>in</b> String;
-                     <A HREF="terminal_interface-curses__ads.htm#1385_22">Len</A> : <b>in</b> Integer := -1)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1676_16">Winsnstr</A></FONT> (<FONT COLOR=red><A NAME="1676_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="1677_26">Str</A></FONT> : char_array;
-                         <FONT COLOR=red><A NAME="1678_26">Len</A></FONT> : Integer := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1676_16">Winsnstr</A>, "winsnstr");
-
-      <FONT COLOR=red><A NAME="1681_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1384_22">Str</A>'Length);
-      <FONT COLOR=red><A NAME="1682_7">Length</A></FONT> : size_t;
-   <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses__ads.htm#1384_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#1681_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#1682_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1676_16">Winsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1383_22">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1681_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#1385_22">Len</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-   <b>end</b> Insert;
-
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1392_14">Insert</A><FONT COLOR=red><A NAME="1690_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1392_22">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1393_22">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1394_22">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1395_22">Str</A>    : <b>in</b> String;
-      <A HREF="terminal_interface-curses__ads.htm#1396_22">Len</A>    : <b>in</b> Integer := -1)
-   <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1697_16">Mvwinsnstr</A></FONT> (<FONT COLOR=red><A NAME="1697_28">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                           <FONT COLOR=red><A NAME="1698_28">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                           <FONT COLOR=red><A NAME="1699_28">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                           <FONT COLOR=red><A NAME="1700_28">Str</A></FONT>    : char_array;
-                           <FONT COLOR=red><A NAME="1701_28">Len</A></FONT>    : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1697_16">Mvwinsnstr</A>, "mvwinsnstr");
-
-      <FONT COLOR=red><A NAME="1704_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1395_22">Str</A>'Length);
-      <FONT COLOR=red><A NAME="1705_7">Length</A></FONT> : size_t;
-   <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses__ads.htm#1395_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#1704_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#1705_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1697_16">Mvwinsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1392_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1393_22">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1394_22">Column</A>), <A HREF="terminal_interface-curses__adb.htm#1704_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1396_22">Len</A>))
-        = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-   <b>end</b> Insert;
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1382_14">Insert</A><FONT COLOR=red><A NAME="1671_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1382_22">Win</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                     <A HREF="terminal_interface-curses__ads.htm#1383_22">Str</A> : <b>in</b> String;
+                     <A HREF="terminal_interface-curses__ads.htm#1384_22">Len</A> : <b>in</b> Integer := -1)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1675_16">Winsnstr</A></FONT> (<FONT COLOR=red><A NAME="1675_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="1676_26">Str</A></FONT> : char_array;
+                         <FONT COLOR=red><A NAME="1677_26">Len</A></FONT> : Integer := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1675_16">Winsnstr</A>, "winsnstr");
+
+      <FONT COLOR=red><A NAME="1680_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1383_22">Str</A>'Length);
+      <FONT COLOR=red><A NAME="1681_7">Length</A></FONT> : size_t;
+   <b>begin</b>
+      To_C (<A HREF="terminal_interface-curses__ads.htm#1383_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#1680_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#1681_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1675_16">Winsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1382_22">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1680_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#1384_22">Len</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1382_14">Insert</A><A HREF="terminal_interface-curses__ads.htm#1382_14">;</A>
+
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1391_14">Insert</A><FONT COLOR=red><A NAME="1689_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1391_22">Win</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1392_22">Line</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1393_22">Column</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1394_22">Str</A>    : <b>in</b> String;
+      <A HREF="terminal_interface-curses__ads.htm#1395_22">Len</A>    : <b>in</b> Integer := -1)
+   <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="1696_16">Mvwinsnstr</A></FONT> (<FONT COLOR=red><A NAME="1696_28">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                           <FONT COLOR=red><A NAME="1697_28">Line</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                           <FONT COLOR=red><A NAME="1698_28">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                           <FONT COLOR=red><A NAME="1699_28">Str</A></FONT>    : char_array;
+                           <FONT COLOR=red><A NAME="1700_28">Len</A></FONT>    : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1696_16">Mvwinsnstr</A>, "mvwinsnstr");
+
+      <FONT COLOR=red><A NAME="1703_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1394_22">Str</A>'Length);
+      <FONT COLOR=red><A NAME="1704_7">Length</A></FONT> : size_t;
+   <b>begin</b>
+      To_C (<A HREF="terminal_interface-curses__ads.htm#1394_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#1703_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#1704_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1696_16">Mvwinsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1391_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1392_22">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1393_22">Column</A>), <A HREF="terminal_interface-curses__adb.htm#1703_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1395_22">Len</A>))
+        = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1391_14">Insert</A><A HREF="terminal_interface-curses__ads.htm#1391_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1408_14">Peek</A><FONT COLOR=red><A NAME="1714_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1408_20">Win</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                   <A HREF="terminal_interface-curses__ads.htm#1409_20">Str</A> : <b>out</b> String;
-                   <A HREF="terminal_interface-curses__ads.htm#1410_20">Len</A> : <b>in</b>  Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1407_14">Peek</A><FONT COLOR=red><A NAME="1713_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1407_20">Win</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                   <A HREF="terminal_interface-curses__ads.htm#1408_20">Str</A> : <b>out</b> String;
+                   <A HREF="terminal_interface-curses__ads.htm#1409_20">Len</A> : <b>in</b>  Integer := -1)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1718_16">Winnstr</A></FONT> (<FONT COLOR=red><A NAME="1718_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                        <FONT COLOR=red><A NAME="1719_25">Str</A></FONT> : char_array;
-                        <FONT COLOR=red><A NAME="1720_25">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1718_16">Winnstr</A>, "winnstr");
+      <b>function</b> <FONT COLOR=red><A NAME="1717_16">Winnstr</A></FONT> (<FONT COLOR=red><A NAME="1717_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                        <FONT COLOR=red><A NAME="1718_25">Str</A></FONT> : char_array;
+                        <FONT COLOR=red><A NAME="1719_25">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1717_16">Winnstr</A>, "winnstr");
 
-      <FONT COLOR=red><A NAME="1723_7">N</A></FONT>   : Integer := <A HREF="terminal_interface-curses__ads.htm#1410_20">Len</A>;
-      <FONT COLOR=red><A NAME="1724_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1409_20">Str</A>'Length);
-      <FONT COLOR=red><A NAME="1725_7">Cnt</A></FONT> : Natural;
+      <FONT COLOR=red><A NAME="1722_7">N</A></FONT>   : Integer := <A HREF="terminal_interface-curses__ads.htm#1409_20">Len</A>;
+      <FONT COLOR=red><A NAME="1723_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1408_20">Str</A>'Length);
+      <FONT COLOR=red><A NAME="1724_7">Cnt</A></FONT> : Natural;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1723_7">N</A> &lt; 0 <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#1723_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#1409_20">Str</A>'Length;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1722_7">N</A> &lt; 0 <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#1722_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#1408_20">Str</A>'Length;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1723_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#1409_20">Str</A>'Length <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1722_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#1408_20">Str</A>'Length <b>then</b>
          <b>raise</b> Constraint_Error;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses__adb.htm#1724_7">Txt</A> (0) := <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char'First;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1718_16">Winnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1408_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1724_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#1723_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <A HREF="terminal_interface-curses__adb.htm#1723_7">Txt</A> (0) := <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char'First;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1717_16">Winnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1407_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1723_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#1722_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-      To_Ada (<A HREF="terminal_interface-curses__adb.htm#1724_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#1409_20">Str</A>, <A HREF="terminal_interface-curses__adb.htm#1725_7">Cnt</A>, True);
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1725_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#1409_20">Str</A>'Length <b>then</b>
-         <A HREF="terminal_interface-curses__ads.htm#1409_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#1409_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#1725_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#1409_20">Str</A>'Last) := (<b>others</b> =&gt; ' ');
+      To_Ada (<A HREF="terminal_interface-curses__adb.htm#1723_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#1408_20">Str</A>, <A HREF="terminal_interface-curses__adb.htm#1724_7">Cnt</A>, True);
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1724_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#1408_20">Str</A>'Length <b>then</b>
+         <A HREF="terminal_interface-curses__ads.htm#1408_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#1408_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#1724_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#1408_20">Str</A>'Last) := (<b>others</b> =&gt; ' ');
       <b>end</b> <b>if</b>;
-   <b>end</b> Peek;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1407_14">Peek</A><A HREF="terminal_interface-curses__ads.htm#1407_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1417_14">Peek</A><FONT COLOR=red><A NAME="1743_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1417_20">Win</A>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1418_20">Line</A>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1419_20">Column</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1420_20">Str</A>    : <b>out</b> String;
-      <A HREF="terminal_interface-curses__ads.htm#1421_20">Len</A>    : <b>in</b>  Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1416_14">Peek</A><FONT COLOR=red><A NAME="1742_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1416_20">Win</A>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1417_20">Line</A>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1418_20">Column</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1419_20">Str</A>    : <b>out</b> String;
+      <A HREF="terminal_interface-curses__ads.htm#1420_20">Len</A>    : <b>in</b>  Integer := -1)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#505_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#1417_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1418_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#1419_20">Column</A>);
-      <A HREF="terminal_interface-curses__ads.htm#1408_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#1417_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1420_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#1421_20">Len</A>);
-   <b>end</b> Peek;
+      <A HREF="terminal_interface-curses__ads.htm#504_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#1416_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1417_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#1418_20">Column</A>);
+      <A HREF="terminal_interface-curses__ads.htm#1407_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#1416_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1419_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#1420_20">Len</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1416_14">Peek</A><A HREF="terminal_interface-curses__ads.htm#1416_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1432_14">Peek</A><FONT COLOR=red><A NAME="1755_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1432_20">Win</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#376_9">Attributed_String</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1434_20">Len</A> : <b>in</b>  Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1431_14">Peek</A><FONT COLOR=red><A NAME="1754_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1431_20">Win</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#375_9">Attributed_String</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1433_20">Len</A> : <b>in</b>  Integer := -1)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1760_16">Winchnstr</A></FONT> (<FONT COLOR=red><A NAME="1760_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                          <FONT COLOR=red><A NAME="1761_27">Str</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#59_9">chtype_array</A>;             <FONT COLOR=green><EM>-- out</EM></FONT>
-                          <FONT COLOR=red><A NAME="1762_27">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1760_16">Winchnstr</A>, "winchnstr");
+      <b>function</b> <FONT COLOR=red><A NAME="1759_16">Winchnstr</A></FONT> (<FONT COLOR=red><A NAME="1759_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                          <FONT COLOR=red><A NAME="1760_27">Str</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#58_9">chtype_array</A>;             <FONT COLOR=green><EM>-- out</EM></FONT>
+                          <FONT COLOR=red><A NAME="1761_27">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1759_16">Winchnstr</A>, "winchnstr");
 
-      <FONT COLOR=red><A NAME="1765_7">N</A></FONT>   : Integer := <A HREF="terminal_interface-curses__ads.htm#1434_20">Len</A>;
-      <FONT COLOR=red><A NAME="1766_7">Txt</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#59_9">chtype_array</A> (0 .. <A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A>'Length) := (0 =&gt; <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>);
-      <FONT COLOR=red><A NAME="1767_7">Cnt</A></FONT> : Natural := 0;
+      <FONT COLOR=red><A NAME="1764_7">N</A></FONT>   : Integer := <A HREF="terminal_interface-curses__ads.htm#1433_20">Len</A>;
+      <FONT COLOR=red><A NAME="1765_7">Txt</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#58_9">chtype_array</A> (0 .. <A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A>'Length) := (0 =&gt; <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>);
+      <FONT COLOR=red><A NAME="1766_7">Cnt</A></FONT> : Natural := 0;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1765_7">N</A> &lt; 0 <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#1765_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A>'Length;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1764_7">N</A> &lt; 0 <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#1764_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A>'Length;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1765_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A>'Length <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1764_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A>'Length <b>then</b>
          <b>raise</b> Constraint_Error;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1760_16">Winchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1432_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1766_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#1765_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1759_16">Winchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1431_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1765_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#1764_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-      <b>for</b> <FONT COLOR=red><A NAME="1778_11">To</A></FONT> <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A>'<b>Range</b> <b>loop</b>
-         <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses__adb.htm#1766_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#1767_7">Cnt</A>)) = <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-         <A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A> (<A HREF="terminal_interface-curses__adb.htm#1778_11">To</A>) := <A HREF="terminal_interface-curses__adb.htm#1766_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#1767_7">Cnt</A>));
-         <A HREF="terminal_interface-curses__adb.htm#1767_7">Cnt</A> := <A HREF="terminal_interface-curses__adb.htm#1767_7">Cnt</A> + 1;
+      <b>for</b> <FONT COLOR=red><A NAME="1777_11">To</A></FONT> <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A>'<b>Range</b> <b>loop</b>
+         <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses__adb.htm#1765_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#1766_7">Cnt</A>)) = <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+         <A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A> (<A HREF="terminal_interface-curses__adb.htm#1777_11">To</A>) := <A HREF="terminal_interface-curses__adb.htm#1765_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#1766_7">Cnt</A>));
+         <A HREF="terminal_interface-curses__adb.htm#1766_7">Cnt</A> := <A HREF="terminal_interface-curses__adb.htm#1766_7">Cnt</A> + 1;
       <b>end</b> <b>loop</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1767_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A>'Length <b>then</b>
-         <A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#1767_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#1433_20">Str</A>'Last) :=
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1766_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A>'Length <b>then</b>
+         <A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#1766_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#1432_20">Str</A>'Last) :=
            (<b>others</b> =&gt; (Ch =&gt; ' ',
-                       Color =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First,
-                       Attr =&gt; <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>));
+                       Color =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First,
+                       Attr =&gt; <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>));
       <b>end</b> <b>if</b>;
-   <b>end</b> Peek;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1431_14">Peek</A><A HREF="terminal_interface-curses__ads.htm#1431_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1441_14">Peek</A><FONT COLOR=red><A NAME="1791_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1441_20">Win</A>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1442_20">Line</A>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1443_20">Column</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1444_20">Str</A>    : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#376_9">Attributed_String</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1445_20">Len</A>    : <b>in</b> Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1440_14">Peek</A><FONT COLOR=red><A NAME="1790_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1440_20">Win</A>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1441_20">Line</A>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1442_20">Column</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1443_20">Str</A>    : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#375_9">Attributed_String</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1444_20">Len</A>    : <b>in</b> Integer := -1)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#505_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#1441_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1442_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#1443_20">Column</A>);
-      <A HREF="terminal_interface-curses__ads.htm#1432_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#1441_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1444_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#1445_20">Len</A>);
-   <b>end</b> Peek;
+      <A HREF="terminal_interface-curses__ads.htm#504_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#1440_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1441_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#1442_20">Column</A>);
+      <A HREF="terminal_interface-curses__ads.htm#1431_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#1440_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1443_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#1444_20">Len</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1440_14">Peek</A><A HREF="terminal_interface-curses__ads.htm#1440_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1457_14">Get</A><FONT COLOR=red><A NAME="1803_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1457_19">Win</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                  <A HREF="terminal_interface-curses__ads.htm#1458_19">Str</A> : <b>out</b> String;
-                  <A HREF="terminal_interface-curses__ads.htm#1459_19">Len</A> : <b>in</b>  Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1456_14">Get</A><FONT COLOR=red><A NAME="1802_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1456_19">Win</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                  <A HREF="terminal_interface-curses__ads.htm#1457_19">Str</A> : <b>out</b> String;
+                  <A HREF="terminal_interface-curses__ads.htm#1458_19">Len</A> : <b>in</b>  Integer := -1)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1807_16">Wgetnstr</A></FONT> (<FONT COLOR=red><A NAME="1807_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                         <FONT COLOR=red><A NAME="1808_26">Str</A></FONT> : char_array;
-                         <FONT COLOR=red><A NAME="1809_26">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1807_16">Wgetnstr</A>, "wgetnstr");
+      <b>function</b> <FONT COLOR=red><A NAME="1806_16">Wgetnstr</A></FONT> (<FONT COLOR=red><A NAME="1806_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                         <FONT COLOR=red><A NAME="1807_26">Str</A></FONT> : char_array;
+                         <FONT COLOR=red><A NAME="1808_26">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1806_16">Wgetnstr</A>, "wgetnstr");
 
-      <FONT COLOR=red><A NAME="1812_7">N</A></FONT>   : Integer := <A HREF="terminal_interface-curses__ads.htm#1459_19">Len</A>;
-      <FONT COLOR=red><A NAME="1813_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1458_19">Str</A>'Length);
-      <FONT COLOR=red><A NAME="1814_7">Cnt</A></FONT> : Natural;
+      <FONT COLOR=red><A NAME="1811_7">N</A></FONT>   : Integer := <A HREF="terminal_interface-curses__ads.htm#1458_19">Len</A>;
+      <FONT COLOR=red><A NAME="1812_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1457_19">Str</A>'Length);
+      <FONT COLOR=red><A NAME="1813_7">Cnt</A></FONT> : Natural;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1812_7">N</A> &lt; 0 <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#1812_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#1458_19">Str</A>'Length;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1811_7">N</A> &lt; 0 <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#1811_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#1457_19">Str</A>'Length;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1812_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#1458_19">Str</A>'Length <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1811_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#1457_19">Str</A>'Length <b>then</b>
          <b>raise</b> Constraint_Error;
       <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses__adb.htm#1813_7">Txt</A> (0) := <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char'First;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1807_16">Wgetnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1457_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1813_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#1812_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <A HREF="terminal_interface-curses__adb.htm#1812_7">Txt</A> (0) := <A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.char'First;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1806_16">Wgetnstr</A> (<A HREF="terminal_interface-curses__ads.htm#1456_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#1812_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#1811_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-      To_Ada (<A HREF="terminal_interface-curses__adb.htm#1813_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#1458_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#1814_7">Cnt</A>, True);
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1814_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#1458_19">Str</A>'Length <b>then</b>
-         <A HREF="terminal_interface-curses__ads.htm#1458_19">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#1458_19">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#1814_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#1458_19">Str</A>'Last) := (<b>others</b> =&gt; ' ');
+      To_Ada (<A HREF="terminal_interface-curses__adb.htm#1812_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#1457_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#1813_7">Cnt</A>, True);
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1813_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#1457_19">Str</A>'Length <b>then</b>
+         <A HREF="terminal_interface-curses__ads.htm#1457_19">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#1457_19">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#1813_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#1457_19">Str</A>'Last) := (<b>others</b> =&gt; ' ');
       <b>end</b> <b>if</b>;
-   <b>end</b> Get;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1456_14">Get</A><A HREF="terminal_interface-curses__ads.htm#1456_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1468_14">Get</A><FONT COLOR=red><A NAME="1832_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1468_19">Win</A>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1469_19">Line</A>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1470_19">Column</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1471_19">Str</A>    : <b>out</b> String;
-      <A HREF="terminal_interface-curses__ads.htm#1472_19">Len</A>    : <b>in</b>  Integer := -1)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1467_14">Get</A><FONT COLOR=red><A NAME="1831_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1467_19">Win</A>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1468_19">Line</A>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1469_19">Column</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1470_19">Str</A>    : <b>out</b> String;
+      <A HREF="terminal_interface-curses__ads.htm#1471_19">Len</A>    : <b>in</b>  Integer := -1)
    <b>is</b>
    <b>begin</b>
-      <A HREF="terminal_interface-curses__ads.htm#505_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#1468_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1469_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#1470_19">Column</A>);
-      <A HREF="terminal_interface-curses__ads.htm#1457_14">Get</A> (<A HREF="terminal_interface-curses__ads.htm#1468_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1471_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#1472_19">Len</A>);
-   <b>end</b> Get;
+      <A HREF="terminal_interface-curses__ads.htm#504_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#1467_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1468_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#1469_19">Column</A>);
+      <A HREF="terminal_interface-curses__ads.htm#1456_14">Get</A> (<A HREF="terminal_interface-curses__ads.htm#1467_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#1470_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#1471_19">Len</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1467_14">Get</A><A HREF="terminal_interface-curses__ads.htm#1467_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1493_14">Init_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1844_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1494_7">Format</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1485_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#1485_35">Three_Two_Three</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1492_14">Init_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1843_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1493_7">Format</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1484_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#1484_35">Three_Two_Three</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1847_16">Slk_Init</A></FONT> (<FONT COLOR=red><A NAME="1847_26">Fmt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1847_16">Slk_Init</A>, "slk_init");
+      <b>function</b> <FONT COLOR=red><A NAME="1846_16">Slk_Init</A></FONT> (<FONT COLOR=red><A NAME="1846_26">Fmt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1846_16">Slk_Init</A>, "slk_init");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1847_16">Slk_Init</A> (<A HREF="terminal_interface-curses__ads.htm#1485_9">Soft_Label_Key_Format</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#1494_7">Format</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1846_16">Slk_Init</A> (<A HREF="terminal_interface-curses__ads.htm#1484_9">Soft_Label_Key_Format</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#1493_7">Format</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Init_Soft_Label_Keys;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1492_14">Init_Soft_Label_Keys</A><A HREF="terminal_interface-curses__ads.htm#1492_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1499_14">Set_Soft_Label_Key</A><FONT COLOR=red><A NAME="1855_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1499_34">Label</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1489_9">Label_Number</A>;
-                                 <A HREF="terminal_interface-curses__ads.htm#1500_34">Text</A>  : <b>in</b> String;
-                                 <A HREF="terminal_interface-curses__ads.htm#1501_34">Fmt</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1490_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#1490_33">Left</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1498_14">Set_Soft_Label_Key</A><FONT COLOR=red><A NAME="1854_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1498_34">Label</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1488_9">Label_Number</A>;
+                                 <A HREF="terminal_interface-curses__ads.htm#1499_34">Text</A>  : <b>in</b> String;
+                                 <A HREF="terminal_interface-curses__ads.htm#1500_34">Fmt</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1489_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#1489_33">Left</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1859_16">Slk_Set</A></FONT> (<FONT COLOR=red><A NAME="1859_25">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                        <FONT COLOR=red><A NAME="1860_25">Txt</A></FONT>   : char_array;
-                        <FONT COLOR=red><A NAME="1861_25">Fmt</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1859_16">Slk_Set</A>, "slk_set");
+      <b>function</b> <FONT COLOR=red><A NAME="1858_16">Slk_Set</A></FONT> (<FONT COLOR=red><A NAME="1858_25">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                        <FONT COLOR=red><A NAME="1859_25">Txt</A></FONT>   : char_array;
+                        <FONT COLOR=red><A NAME="1860_25">Fmt</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1858_16">Slk_Set</A>, "slk_set");
 
-      <FONT COLOR=red><A NAME="1864_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1500_34">Text</A>'Length);
-      <FONT COLOR=red><A NAME="1865_7">Len</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="1863_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1499_34">Text</A>'Length);
+      <FONT COLOR=red><A NAME="1864_7">Len</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses__ads.htm#1500_34">Text</A>, <A HREF="terminal_interface-curses__adb.htm#1864_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#1865_7">Len</A>);
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1859_16">Slk_Set</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1499_34">Label</A>), <A HREF="terminal_interface-curses__adb.htm#1864_7">Txt</A>,
-                  <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1490_9">Label_Justification</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#1501_34">Fmt</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      To_C (<A HREF="terminal_interface-curses__ads.htm#1499_34">Text</A>, <A HREF="terminal_interface-curses__adb.htm#1863_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#1864_7">Len</A>);
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1858_16">Slk_Set</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1498_34">Label</A>), <A HREF="terminal_interface-curses__adb.htm#1863_7">Txt</A>,
+                  <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1489_9">Label_Justification</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#1500_34">Fmt</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Soft_Label_Key;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1498_14">Set_Soft_Label_Key</A><A HREF="terminal_interface-curses__ads.htm#1498_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1506_14">Refresh_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1874_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1505_14">Refresh_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1873_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1876_16">Slk_Refresh</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1876_16">Slk_Refresh</A>, "slk_refresh");
+      <b>function</b> <FONT COLOR=red><A NAME="1875_16">Slk_Refresh</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1875_16">Slk_Refresh</A>, "slk_refresh");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1876_16">Slk_Refresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1875_16">Slk_Refresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Refresh_Soft_Label_Keys;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1505_14">Refresh_Soft_Label_Keys</A><A HREF="terminal_interface-curses__ads.htm#1505_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1511_14">Refresh_Soft_Label_Keys_Without_Update</A><FONT COLOR=red><A NAME="1884_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1510_14">Refresh_Soft_Label_Keys_Without_Update</A><FONT COLOR=red><A NAME="1883_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1886_16">Slk_Noutrefresh</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1886_16">Slk_Noutrefresh</A>, "slk_noutrefresh");
+      <b>function</b> <FONT COLOR=red><A NAME="1885_16">Slk_Noutrefresh</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1885_16">Slk_Noutrefresh</A>, "slk_noutrefresh");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1886_16">Slk_Noutrefresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1885_16">Slk_Noutrefresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Refresh_Soft_Label_Keys_Without_Update;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1510_14">Refresh_Soft_Label_Keys_Without_Update</A><A HREF="terminal_interface-curses__ads.htm#1510_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1516_14">Get_Soft_Label_Key</A><FONT COLOR=red><A NAME="1894_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1516_34">Label</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1489_9">Label_Number</A>;
-                                 <A HREF="terminal_interface-curses__ads.htm#1517_34">Text</A>  : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1515_14">Get_Soft_Label_Key</A><FONT COLOR=red><A NAME="1893_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1515_34">Label</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1488_9">Label_Number</A>;
+                                 <A HREF="terminal_interface-curses__ads.htm#1516_34">Text</A>  : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1897_16">Slk_Label</A></FONT> (<FONT COLOR=red><A NAME="1897_27">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1897_16">Slk_Label</A>, "slk_label");
+      <b>function</b> <FONT COLOR=red><A NAME="1896_16">Slk_Label</A></FONT> (<FONT COLOR=red><A NAME="1896_27">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1896_16">Slk_Label</A>, "slk_label");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#1897_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1516_34">Label</A>)), <A HREF="terminal_interface-curses__ads.htm#1517_34">Text</A>);
-   <b>end</b> Get_Soft_Label_Key;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#1896_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1515_34">Label</A>)), <A HREF="terminal_interface-curses__ads.htm#1516_34">Text</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1515_14">Get_Soft_Label_Key</A><A HREF="terminal_interface-curses__ads.htm#1515_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1521_13">Get_Soft_Label_Key</A><FONT COLOR=red><A NAME="1903_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1521_33">Label</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1489_9">Label_Number</A>) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1520_13">Get_Soft_Label_Key</A> (<A HREF="terminal_interface-curses__ads.htm#1520_33">Label</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1488_9">Label_Number</A>) <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1905_16">Slk_Label</A></FONT> (<FONT COLOR=red><A NAME="1905_27">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1905_16">Slk_Label</A>, "slk_label");
+      <b>function</b> <FONT COLOR=red><A NAME="1904_16">Slk_Label</A></FONT> (<FONT COLOR=red><A NAME="1904_27">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1904_16">Slk_Label</A>, "slk_label");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#1905_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1521_33">Label</A>)));
-   <b>end</b> Get_Soft_Label_Key;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#1904_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1520_33">Label</A>)));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1520_13">Get_Soft_Label_Key</A><A HREF="terminal_interface-curses__ads.htm#1520_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1527_14">Clear_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1911_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1526_14">Clear_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1910_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1913_16">Slk_Clear</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1913_16">Slk_Clear</A>, "slk_clear");
+      <b>function</b> <FONT COLOR=red><A NAME="1912_16">Slk_Clear</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1912_16">Slk_Clear</A>, "slk_clear");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1913_16">Slk_Clear</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1912_16">Slk_Clear</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Clear_Soft_Label_Keys;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1526_14">Clear_Soft_Label_Keys</A><A HREF="terminal_interface-curses__ads.htm#1526_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1532_14">Restore_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1921_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1531_14">Restore_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1920_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1923_16">Slk_Restore</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1923_16">Slk_Restore</A>, "slk_restore");
+      <b>function</b> <FONT COLOR=red><A NAME="1922_16">Slk_Restore</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1922_16">Slk_Restore</A>, "slk_restore");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1923_16">Slk_Restore</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1922_16">Slk_Restore</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Restore_Soft_Label_Keys;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1531_14">Restore_Soft_Label_Keys</A><A HREF="terminal_interface-curses__ads.htm#1531_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1537_14">Touch_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1931_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1536_14">Touch_Soft_Label_Keys</A><FONT COLOR=red><A NAME="1930_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1933_16">Slk_Touch</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1933_16">Slk_Touch</A>, "slk_touch");
+      <b>function</b> <FONT COLOR=red><A NAME="1932_16">Slk_Touch</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1932_16">Slk_Touch</A>, "slk_touch");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1933_16">Slk_Touch</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1932_16">Slk_Touch</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Touch_Soft_Label_Keys;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1536_14">Touch_Soft_Label_Keys</A><A HREF="terminal_interface-curses__ads.htm#1536_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1542_14">Switch_Soft_Label_Key_Attributes</A><FONT COLOR=red><A NAME="1941_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1543_7">Attr</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1544_7">On</A>   : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1541_14">Switch_Soft_Label_Key_Attributes</A><FONT COLOR=red><A NAME="1940_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1542_7">Attr</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1543_7">On</A>   : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1945_16">Slk_Attron</A></FONT> (<FONT COLOR=red><A NAME="1945_28">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1945_16">Slk_Attron</A>, "slk_attron");
-      <b>function</b> <FONT COLOR=red><A NAME="1947_16">Slk_Attroff</A></FONT> (<FONT COLOR=red><A NAME="1947_29">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1947_16">Slk_Attroff</A>, "slk_attroff");
+      <b>function</b> <FONT COLOR=red><A NAME="1944_16">Slk_Attron</A></FONT> (<FONT COLOR=red><A NAME="1944_28">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1944_16">Slk_Attron</A>, "slk_attron");
+      <b>function</b> <FONT COLOR=red><A NAME="1946_16">Slk_Attroff</A></FONT> (<FONT COLOR=red><A NAME="1946_29">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1946_16">Slk_Attroff</A>, "slk_attroff");
 
-      <FONT COLOR=red><A NAME="1950_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <FONT COLOR=red><A NAME="1951_7">Ch</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
-                                              Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#1543_7">Attr</A>,
-                                              Color =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First);
+      <FONT COLOR=red><A NAME="1949_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="1950_7">Ch</A></FONT>  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
+                                              Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#1542_7">Attr</A>,
+                                              Color =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#1544_7">On</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#1950_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#1945_16">Slk_Attron</A>  (<A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#1951_7">Ch</A>));
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#1543_7">On</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#1949_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#1944_16">Slk_Attron</A>  (<A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#1950_7">Ch</A>));
       <b>else</b>
-         <A HREF="terminal_interface-curses__adb.htm#1950_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#1947_16">Slk_Attroff</A> (<A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#1951_7">Ch</A>));
+         <A HREF="terminal_interface-curses__adb.htm#1949_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#1946_16">Slk_Attroff</A> (<A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#1950_7">Ch</A>));
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1950_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1949_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Switch_Soft_Label_Key_Attributes;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1541_14">Switch_Soft_Label_Key_Attributes</A><A HREF="terminal_interface-curses__ads.htm#1541_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1550_14">Set_Soft_Label_Key_Attributes</A><FONT COLOR=red><A NAME="1965_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1551_7">Attr</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#350_4">Normal_Video</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1552_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>'First)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1549_14">Set_Soft_Label_Key_Attributes</A><FONT COLOR=red><A NAME="1964_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1550_7">Attr</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#349_4">Normal_Video</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1551_7">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>'First)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1969_16">Slk_Attrset</A></FONT> (<FONT COLOR=red><A NAME="1969_29">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1969_16">Slk_Attrset</A>, "slk_attrset");
+      <b>function</b> <FONT COLOR=red><A NAME="1968_16">Slk_Attrset</A></FONT> (<FONT COLOR=red><A NAME="1968_29">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1968_16">Slk_Attrset</A>, "slk_attrset");
 
-      <FONT COLOR=red><A NAME="1972_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
-                                             Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#1551_7">Attr</A>,
-                                             Color =&gt; <A HREF="terminal_interface-curses__ads.htm#1552_7">Color</A>);
+      <FONT COLOR=red><A NAME="1971_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := (Ch    =&gt; Character'First,
+                                             Attr  =&gt; <A HREF="terminal_interface-curses__ads.htm#1550_7">Attr</A>,
+                                             Color =&gt; <A HREF="terminal_interface-curses__ads.htm#1551_7">Color</A>);
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1969_16">Slk_Attrset</A> (<A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#1972_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#1968_16">Slk_Attrset</A> (<A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#1971_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Soft_Label_Key_Attributes;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1549_14">Set_Soft_Label_Key_Attributes</A><A HREF="terminal_interface-curses__ads.htm#1549_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1557_13">Get_Soft_Label_Key_Attributes</A><FONT COLOR=red><A NAME="1981_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1556_13">Get_Soft_Label_Key_Attributes</A> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1983_16">Slk_Attr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1983_16">Slk_Attr</A>, "slk_attr");
+      <b>function</b> <FONT COLOR=red><A NAME="1982_16">Slk_Attr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1982_16">Slk_Attr</A>, "slk_attr");
 
-      <FONT COLOR=red><A NAME="1986_7">Attr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#1983_16">Slk_Attr</A>;
+      <FONT COLOR=red><A NAME="1985_7">Attr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#1982_16">Slk_Attr</A>;
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1986_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-   <b>end</b> Get_Soft_Label_Key_Attributes;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1985_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1556_13">Get_Soft_Label_Key_Attributes</A><A HREF="terminal_interface-curses__ads.htm#1556_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1561_13">Get_Soft_Label_Key_Attributes</A><FONT COLOR=red><A NAME="1991_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1560_13">Get_Soft_Label_Key_Attributes</A> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="1993_16">Slk_Attr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1993_16">Slk_Attr</A>, "slk_attr");
+      <b>function</b> <FONT COLOR=red><A NAME="1992_16">Slk_Attr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#1992_16">Slk_Attr</A>, "slk_attr");
 
-      <FONT COLOR=red><A NAME="1996_7">Attr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#1993_16">Slk_Attr</A>;
+      <FONT COLOR=red><A NAME="1995_7">Attr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#1992_16">Slk_Attr</A>;
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1996_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#355_10">Color</A>;
-   <b>end</b> Get_Soft_Label_Key_Attributes;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#1995_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#354_10">Color</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1560_13">Get_Soft_Label_Key_Attributes</A><A HREF="terminal_interface-curses__ads.htm#1560_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1566_14">Set_Soft_Label_Key_Color</A><FONT COLOR=red><A NAME="2001_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1566_40">Pair</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1565_14">Set_Soft_Label_Key_Color</A><FONT COLOR=red><A NAME="2000_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1565_40">Pair</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2003_16">Slk_Color</A></FONT> (<FONT COLOR=red><A NAME="2003_27">Color</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2003_16">Slk_Color</A>, "slk_color");
+      <b>function</b> <FONT COLOR=red><A NAME="2002_16">Slk_Color</A></FONT> (<FONT COLOR=red><A NAME="2002_27">Color</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2002_16">Slk_Color</A>, "slk_color");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2003_16">Slk_Color</A> (<A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1566_40">Pair</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2002_16">Slk_Color</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1565_40">Pair</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Soft_Label_Key_Color;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1565_14">Set_Soft_Label_Key_Color</A><A HREF="terminal_interface-curses__ads.htm#1565_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1580_14">Enable_Key</A><FONT COLOR=red><A NAME="2012_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1580_26">Key</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A>;
-                         <A HREF="terminal_interface-curses__ads.htm#1581_26">Enable</A> : <b>in</b> Boolean := True)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1579_14">Enable_Key</A><FONT COLOR=red><A NAME="2011_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1579_26">Key</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A>;
+                         <A HREF="terminal_interface-curses__ads.htm#1580_26">Enable</A> : <b>in</b> Boolean := True)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2015_16">Keyok</A></FONT> (<FONT COLOR=red><A NAME="2015_23">Keycode</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                      <FONT COLOR=red><A NAME="2016_23">On_Off</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2015_16">Keyok</A>, "keyok");
+      <b>function</b> <FONT COLOR=red><A NAME="2014_16">Keyok</A></FONT> (<FONT COLOR=red><A NAME="2014_23">Keycode</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                      <FONT COLOR=red><A NAME="2015_23">On_Off</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2014_16">Keyok</A>, "keyok");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2015_16">Keyok</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1580_26">Key</A>), <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1581_26">Enable</A>)))
-        = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2014_16">Keyok</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1579_26">Key</A>), <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1580_26">Enable</A>)))
+        = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Enable_Key;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1579_14">Enable_Key</A><A HREF="terminal_interface-curses__ads.htm#1579_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1590_14">Define_Key</A><FONT COLOR=red><A NAME="2025_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1590_26">Definition</A> : <b>in</b> String;
-                         <A HREF="terminal_interface-curses__ads.htm#1591_26">Key</A>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1589_14">Define_Key</A><FONT COLOR=red><A NAME="2024_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1589_26">Definition</A> : <b>in</b> String;
+                         <A HREF="terminal_interface-curses__ads.htm#1590_26">Key</A>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2028_16">Defkey</A></FONT> (<FONT COLOR=red><A NAME="2028_24">Def</A></FONT> : char_array;
-                       <FONT COLOR=red><A NAME="2029_24">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2028_16">Defkey</A>, "define_key");
+      <b>function</b> <FONT COLOR=red><A NAME="2027_16">Defkey</A></FONT> (<FONT COLOR=red><A NAME="2027_24">Def</A></FONT> : char_array;
+                       <FONT COLOR=red><A NAME="2028_24">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2027_16">Defkey</A>, "define_key");
 
-      <FONT COLOR=red><A NAME="2032_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1590_26">Definition</A>'Length);
-      <FONT COLOR=red><A NAME="2033_7">Length</A></FONT> : size_t;
+      <FONT COLOR=red><A NAME="2031_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1589_26">Definition</A>'Length);
+      <FONT COLOR=red><A NAME="2032_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses__ads.htm#1590_26">Definition</A>, <A HREF="terminal_interface-curses__adb.htm#2032_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2033_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2028_16">Defkey</A> (<A HREF="terminal_interface-curses__adb.htm#2032_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1591_26">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      To_C (<A HREF="terminal_interface-curses__ads.htm#1589_26">Definition</A>, <A HREF="terminal_interface-curses__adb.htm#2031_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2032_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2027_16">Defkey</A> (<A HREF="terminal_interface-curses__adb.htm#2031_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1590_26">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Define_Key;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1589_14">Define_Key</A><A HREF="terminal_interface-curses__ads.htm#1589_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1616_14">Un_Control</A><FONT COLOR=red><A NAME="2041_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1616_26">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>;
-                         <A HREF="terminal_interface-curses__ads.htm#1617_26">Str</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1615_14">Un_Control</A><FONT COLOR=red><A NAME="2040_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1615_26">Ch</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>;
+                         <A HREF="terminal_interface-curses__ads.htm#1616_26">Str</A> : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2044_16">Unctrl</A></FONT> (<FONT COLOR=red><A NAME="2044_24">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2044_16">Unctrl</A>, "unctrl");
+      <b>function</b> <FONT COLOR=red><A NAME="2043_16">Unctrl</A></FONT> (<FONT COLOR=red><A NAME="2043_24">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2043_16">Unctrl</A>, "unctrl");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2044_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1616_26">Ch</A>)), <A HREF="terminal_interface-curses__ads.htm#1617_26">Str</A>);
-   <b>end</b> Un_Control;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2043_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1615_26">Ch</A>)), <A HREF="terminal_interface-curses__ads.htm#1616_26">Str</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1615_14">Un_Control</A><A HREF="terminal_interface-curses__ads.htm#1615_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1621_13">Un_Control</A><FONT COLOR=red><A NAME="2050_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1621_25">Ch</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A>) <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1620_13">Un_Control</A> (<A HREF="terminal_interface-curses__ads.htm#1620_25">Ch</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A>) <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2052_16">Unctrl</A></FONT> (<FONT COLOR=red><A NAME="2052_24">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>) <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2052_16">Unctrl</A>, "unctrl");
+      <b>function</b> <FONT COLOR=red><A NAME="2051_16">Unctrl</A></FONT> (<FONT COLOR=red><A NAME="2051_24">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>) <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2051_16">Unctrl</A>, "unctrl");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2052_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#105_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1621_25">Ch</A>)));
-   <b>end</b> Un_Control;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2051_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#104_13">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#1620_25">Ch</A>)));
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1620_13">Un_Control</A><A HREF="terminal_interface-curses__ads.htm#1620_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1627_14">Delay_Output</A><FONT COLOR=red><A NAME="2058_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1627_28">Msecs</A> : <b>in</b> Natural)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1626_14">Delay_Output</A><FONT COLOR=red><A NAME="2057_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1626_28">Msecs</A> : <b>in</b> Natural)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2060_16">Delayoutput</A></FONT> (<FONT COLOR=red><A NAME="2060_29">Msecs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2060_16">Delayoutput</A>, "delay_output");
+      <b>function</b> <FONT COLOR=red><A NAME="2059_16">Delayoutput</A></FONT> (<FONT COLOR=red><A NAME="2059_29">Msecs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2059_16">Delayoutput</A>, "delay_output");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2060_16">Delayoutput</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1627_28">Msecs</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2059_16">Delayoutput</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1626_28">Msecs</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Delay_Output;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1626_14">Delay_Output</A><A HREF="terminal_interface-curses__ads.htm#1626_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1632_14">Flush_Input</A><FONT COLOR=red><A NAME="2068_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1631_14">Flush_Input</A><FONT COLOR=red><A NAME="2067_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2070_16">Flushinp</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2070_16">Flushinp</A>, "flushinp");
+      <b>function</b> <FONT COLOR=red><A NAME="2069_16">Flushinp</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2069_16">Flushinp</A>, "flushinp");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2070_16">Flushinp</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>  <FONT COLOR=green><EM>-- docu says that never happens, but...</EM></FONT>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2069_16">Flushinp</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>  <FONT COLOR=green><EM>-- docu says that never happens, but...</EM></FONT>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Flush_Input;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1631_14">Flush_Input</A><A HREF="terminal_interface-curses__ads.htm#1631_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1641_13">Baudrate</A><FONT COLOR=red><A NAME="2078_13"></A></FONT> <b>return</b> Natural
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1640_13">Baudrate</A> <b>return</b> Natural
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2080_16">Baud</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2080_16">Baud</A>, "baudrate");
+      <b>function</b> <FONT COLOR=red><A NAME="2079_16">Baud</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2079_16">Baud</A>, "baudrate");
    <b>begin</b>
-      <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#2080_16">Baud</A>);
-   <b>end</b> Baudrate;
+      <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#2079_16">Baud</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1640_13">Baudrate</A><A HREF="terminal_interface-curses__ads.htm#1640_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1646_13">Erase_Character</A><FONT COLOR=red><A NAME="2086_13"></A></FONT> <b>return</b> Character
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1645_13">Erase_Character</A> <b>return</b> Character
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2088_16">Erasechar</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2088_16">Erasechar</A>, "erasechar");
+      <b>function</b> <FONT COLOR=red><A NAME="2087_16">Erasechar</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2087_16">Erasechar</A>, "erasechar");
    <b>begin</b>
-      <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#2088_16">Erasechar</A>);
-   <b>end</b> Erase_Character;
+      <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#2087_16">Erasechar</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1645_13">Erase_Character</A><A HREF="terminal_interface-curses__ads.htm#1645_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1651_13">Kill_Character</A><FONT COLOR=red><A NAME="2094_13"></A></FONT> <b>return</b> Character
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1650_13">Kill_Character</A> <b>return</b> Character
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2096_16">Killchar</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2096_16">Killchar</A>, "killchar");
+      <b>function</b> <FONT COLOR=red><A NAME="2095_16">Killchar</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2095_16">Killchar</A>, "killchar");
    <b>begin</b>
-      <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#2096_16">Killchar</A>);
-   <b>end</b> Kill_Character;
+      <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#2095_16">Killchar</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1650_13">Kill_Character</A><A HREF="terminal_interface-curses__ads.htm#1650_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1656_13">Has_Insert_Character</A><FONT COLOR=red><A NAME="2102_13"></A></FONT> <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1655_13">Has_Insert_Character</A> <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2104_16">Has_Ic</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2104_16">Has_Ic</A>, "has_ic");
+      <b>function</b> <FONT COLOR=red><A NAME="2103_16">Has_Ic</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2103_16">Has_Ic</A>, "has_ic");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2104_16">Has_Ic</A> = <A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2103_16">Has_Ic</A> = <A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Has_Insert_Character;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1655_13">Has_Insert_Character</A><A HREF="terminal_interface-curses__ads.htm#1655_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1661_13">Has_Insert_Line</A><FONT COLOR=red><A NAME="2114_13"></A></FONT> <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1660_13">Has_Insert_Line</A> <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2116_16">Has_Il</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2116_16">Has_Il</A>, "has_il");
+      <b>function</b> <FONT COLOR=red><A NAME="2115_16">Has_Il</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2115_16">Has_Il</A>, "has_il");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2116_16">Has_Il</A> = <A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2115_16">Has_Il</A> = <A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Has_Insert_Line;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1660_13">Has_Insert_Line</A><A HREF="terminal_interface-curses__ads.htm#1660_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1666_13">Supported_Attributes</A><FONT COLOR=red><A NAME="2126_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Character_Attribute_Set</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1665_13">Supported_Attributes</A> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Character_Attribute_Set</A>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2128_16">Termattrs</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#64_12">C_Chtype</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2128_16">Termattrs</A>, "termattrs");
+      <b>function</b> <FONT COLOR=red><A NAME="2127_16">Termattrs</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#63_12">C_Chtype</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2127_16">Termattrs</A>, "termattrs");
 
-      <FONT COLOR=red><A NAME="2131_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses-aux__ads.htm#102_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#2128_16">Termattrs</A>);
+      <FONT COLOR=red><A NAME="2130_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses-aux__ads.htm#101_13">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#2127_16">Termattrs</A>);
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#2131_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#354_10">Attr</A>;
-   <b>end</b> Supported_Attributes;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#2130_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#353_10">Attr</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1665_13">Supported_Attributes</A><A HREF="terminal_interface-curses__ads.htm#1665_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1671_14">Long_Name</A><FONT COLOR=red><A NAME="2136_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1671_25">Name</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1670_14">Long_Name</A><FONT COLOR=red><A NAME="2135_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1670_25">Name</A> : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2138_16">Longname</A></FONT> <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2138_16">Longname</A>, "longname");
+      <b>function</b> <FONT COLOR=red><A NAME="2137_16">Longname</A></FONT> <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2137_16">Longname</A>, "longname");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2138_16">Longname</A>, <A HREF="terminal_interface-curses__ads.htm#1671_25">Name</A>);
-   <b>end</b> Long_Name;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2137_16">Longname</A>, <A HREF="terminal_interface-curses__ads.htm#1670_25">Name</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1670_14">Long_Name</A><A HREF="terminal_interface-curses__ads.htm#1670_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1675_13">Long_Name</A><FONT COLOR=red><A NAME="2144_13"></A></FONT> <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1674_13">Long_Name</A> <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2146_16">Longname</A></FONT> <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2146_16">Longname</A>, "longname");
+      <b>function</b> <FONT COLOR=red><A NAME="2145_16">Longname</A></FONT> <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2145_16">Longname</A>, "longname");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2146_16">Longname</A>);
-   <b>end</b> Long_Name;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2145_16">Longname</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1674_13">Long_Name</A><A HREF="terminal_interface-curses__ads.htm#1674_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1681_14">Terminal_Name</A><FONT COLOR=red><A NAME="2152_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1681_29">Name</A> : <b>out</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1680_14">Terminal_Name</A><FONT COLOR=red><A NAME="2151_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1680_29">Name</A> : <b>out</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2154_16">Termname</A></FONT> <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2154_16">Termname</A>, "termname");
+      <b>function</b> <FONT COLOR=red><A NAME="2153_16">Termname</A></FONT> <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2153_16">Termname</A>, "termname");
    <b>begin</b>
-      <A HREF="terminal_interface-curses-aux__ads.htm#117_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2154_16">Termname</A>, <A HREF="terminal_interface-curses__ads.htm#1681_29">Name</A>);
-   <b>end</b> Terminal_Name;
+      <A HREF="terminal_interface-curses-aux__ads.htm#116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2153_16">Termname</A>, <A HREF="terminal_interface-curses__ads.htm#1680_29">Name</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1680_14">Terminal_Name</A><A HREF="terminal_interface-curses__ads.htm#1680_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1685_13">Terminal_Name</A><FONT COLOR=red><A NAME="2160_13"></A></FONT> <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1684_13">Terminal_Name</A> <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2162_16">Termname</A></FONT> <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2162_16">Termname</A>, "termname");
+      <b>function</b> <FONT COLOR=red><A NAME="2161_16">Termname</A></FONT> <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2161_16">Termname</A>, "termname");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2162_16">Termname</A>);
-   <b>end</b> Terminal_Name;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2161_16">Termname</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1684_13">Terminal_Name</A><A HREF="terminal_interface-curses__ads.htm#1684_13">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1706_14">Init_Pair</A><FONT COLOR=red><A NAME="2168_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1706_25">Pair</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#300_12">Redefinable_Color_Pair</A>;
-                        <A HREF="terminal_interface-curses__ads.htm#1707_25">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A>;
-                        <A HREF="terminal_interface-curses__ads.htm#1708_25">Back</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1705_14">Init_Pair</A><FONT COLOR=red><A NAME="2167_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1705_25">Pair</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#299_12">Redefinable_Color_Pair</A>;
+                        <A HREF="terminal_interface-curses__ads.htm#1706_25">Fore</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A>;
+                        <A HREF="terminal_interface-curses__ads.htm#1707_25">Back</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2172_16">Initpair</A></FONT> (<FONT COLOR=red><A NAME="2172_26">Pair</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                         <FONT COLOR=red><A NAME="2173_26">Fore</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                         <FONT COLOR=red><A NAME="2174_26">Back</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2172_16">Initpair</A>, "init_pair");
+      <b>function</b> <FONT COLOR=red><A NAME="2171_16">Initpair</A></FONT> (<FONT COLOR=red><A NAME="2171_26">Pair</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                         <FONT COLOR=red><A NAME="2172_26">Fore</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                         <FONT COLOR=red><A NAME="2173_26">Back</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2171_16">Initpair</A>, "init_pair");
    <b>begin</b>
-      <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#1706_25">Pair</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#424_13">Number_Of_Color_Pairs</A> <b>then</b>
+      <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#1705_25">Pair</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#423_13">Number_Of_Color_Pairs</A> <b>then</b>
          <b>raise</b> Constraint_Error;
       <b>end</b> <b>if</b>;
-      <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#1707_25">Fore</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#421_13">Number_Of_Colors</A> <b>or</b> <b>else</b>
-        Integer (<A HREF="terminal_interface-curses__ads.htm#1708_25">Back</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#421_13">Number_Of_Colors</A> <b>then</b> <b>raise</b> Constraint_Error;
+      <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#1706_25">Fore</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#420_13">Number_Of_Colors</A> <b>or</b> <b>else</b>
+        Integer (<A HREF="terminal_interface-curses__ads.htm#1707_25">Back</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#420_13">Number_Of_Colors</A> <b>then</b> <b>raise</b> Constraint_Error;
       <b>end</b> <b>if</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2172_16">Initpair</A> (<A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1706_25">Pair</A>), <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1707_25">Fore</A>), <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1708_25">Back</A>))
-        = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2171_16">Initpair</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1705_25">Pair</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1706_25">Fore</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1707_25">Back</A>))
+        = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Init_Pair;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1705_14">Init_Pair</A><A HREF="terminal_interface-curses__ads.htm#1705_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1713_14">Pair_Content</A><FONT COLOR=red><A NAME="2189_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1713_28">Pair</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Color_Pair</A>;
-                           <A HREF="terminal_interface-curses__ads.htm#1714_28">Fore</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A>;
-                           <A HREF="terminal_interface-curses__ads.htm#1715_28">Back</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1712_14">Pair_Content</A><FONT COLOR=red><A NAME="2188_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1712_28">Pair</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Color_Pair</A>;
+                           <A HREF="terminal_interface-curses__ads.htm#1713_28">Fore</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A>;
+                           <A HREF="terminal_interface-curses__ads.htm#1714_28">Back</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A>)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="2193_12">C_Short_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="2194_16">Paircontent</A></FONT> (<FONT COLOR=red><A NAME="2194_29">Pair</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                            <FONT COLOR=red><A NAME="2195_29">Fp</A></FONT>   : <A HREF="terminal_interface-curses__adb.htm#2193_12">C_Short_Access</A>;
-                            <FONT COLOR=red><A NAME="2196_29">Bp</A></FONT>   : <A HREF="terminal_interface-curses__adb.htm#2193_12">C_Short_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2194_16">Paircontent</A>, "pair_content");
+      <b>type</b> <FONT COLOR=red><A NAME="2192_12">C_Short_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="2193_16">Paircontent</A></FONT> (<FONT COLOR=red><A NAME="2193_29">Pair</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                            <FONT COLOR=red><A NAME="2194_29">Fp</A></FONT>   : <A HREF="terminal_interface-curses__adb.htm#2192_12">C_Short_Access</A>;
+                            <FONT COLOR=red><A NAME="2195_29">Bp</A></FONT>   : <A HREF="terminal_interface-curses__adb.htm#2192_12">C_Short_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2193_16">Paircontent</A>, "pair_content");
 
-      <FONT COLOR=red><A NAME="2199_7">F</A></FONT>, <FONT COLOR=red><A NAME="2199_10">B</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
+      <FONT COLOR=red><A NAME="2198_7">F</A></FONT>, <FONT COLOR=red><A NAME="2198_10">B</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2194_16">Paircontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1713_28">Pair</A>), <A HREF="terminal_interface-curses__adb.htm#2199_7">F</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2199_10">B</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2193_16">Paircontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1712_28">Pair</A>), <A HREF="terminal_interface-curses__adb.htm#2198_7">F</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2198_10">B</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses__ads.htm#1714_28">Fore</A> := <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#2199_7">F</A>);
-         <A HREF="terminal_interface-curses__ads.htm#1715_28">Back</A> := <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#2199_10">B</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1713_28">Fore</A> := <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#2198_7">F</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1714_28">Back</A> := <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#2198_10">B</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Pair_Content;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1712_14">Pair_Content</A><A HREF="terminal_interface-curses__ads.htm#1712_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1720_13">Has_Colors</A><FONT COLOR=red><A NAME="2209_13"></A></FONT> <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1719_13">Has_Colors</A> <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2211_16">Hascolors</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2211_16">Hascolors</A>, "has_colors");
+      <b>function</b> <FONT COLOR=red><A NAME="2210_16">Hascolors</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2210_16">Hascolors</A>, "has_colors");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2211_16">Hascolors</A> = <A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2210_16">Hascolors</A> = <A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Has_Colors;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1719_13">Has_Colors</A><A HREF="terminal_interface-curses__ads.htm#1719_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1725_14">Init_Color</A><FONT COLOR=red><A NAME="2221_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1725_26">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A>;
-                         <A HREF="terminal_interface-curses__ads.htm#1726_26">Red</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>;
-                         <A HREF="terminal_interface-curses__ads.htm#1727_26">Green</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>;
-                         <A HREF="terminal_interface-curses__ads.htm#1728_26">Blue</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1724_14">Init_Color</A><FONT COLOR=red><A NAME="2220_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1724_26">Color</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A>;
+                         <A HREF="terminal_interface-curses__ads.htm#1725_26">Red</A>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>;
+                         <A HREF="terminal_interface-curses__ads.htm#1726_26">Green</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>;
+                         <A HREF="terminal_interface-curses__ads.htm#1727_26">Blue</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2226_16">Initcolor</A></FONT> (<FONT COLOR=red><A NAME="2226_27">Col</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                          <FONT COLOR=red><A NAME="2227_27">Red</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                          <FONT COLOR=red><A NAME="2228_27">Green</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
-                          <FONT COLOR=red><A NAME="2229_27">Blue</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2226_16">Initcolor</A>, "init_color");
+      <b>function</b> <FONT COLOR=red><A NAME="2225_16">Initcolor</A></FONT> (<FONT COLOR=red><A NAME="2225_27">Col</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                          <FONT COLOR=red><A NAME="2226_27">Red</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                          <FONT COLOR=red><A NAME="2227_27">Green</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
+                          <FONT COLOR=red><A NAME="2228_27">Blue</A></FONT>  : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2225_16">Initcolor</A>, "init_color");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2226_16">Initcolor</A> (<A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1725_26">Color</A>), <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1726_26">Red</A>), <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1727_26">Green</A>),
-                    <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1728_26">Blue</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-            <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2225_16">Initcolor</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1724_26">Color</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1725_26">Red</A>), <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1726_26">Green</A>),
+                    <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1727_26">Blue</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+            <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Init_Color;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1724_14">Init_Color</A><A HREF="terminal_interface-curses__ads.htm#1724_14">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1733_13">Can_Change_Color</A><FONT COLOR=red><A NAME="2238_13"></A></FONT> <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1732_13">Can_Change_Color</A> <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2240_16">Canchangecolor</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2240_16">Canchangecolor</A>, "can_change_color");
+      <b>function</b> <FONT COLOR=red><A NAME="2239_16">Canchangecolor</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2239_16">Canchangecolor</A>, "can_change_color");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2240_16">Canchangecolor</A> = <A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A> <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2239_16">Canchangecolor</A> = <A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A> <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Can_Change_Color;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1732_13">Can_Change_Color</A><A HREF="terminal_interface-curses__ads.htm#1732_13">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1738_14">Color_Content</A><FONT COLOR=red><A NAME="2250_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1738_29">Color</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A>;
-                            <A HREF="terminal_interface-curses__ads.htm#1739_29">Red</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>;
-                            <A HREF="terminal_interface-curses__ads.htm#1740_29">Green</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>;
-                            <A HREF="terminal_interface-curses__ads.htm#1741_29">Blue</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1737_14">Color_Content</A><FONT COLOR=red><A NAME="2249_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1737_29">Color</A> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A>;
+                            <A HREF="terminal_interface-curses__ads.htm#1738_29">Red</A>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>;
+                            <A HREF="terminal_interface-curses__ads.htm#1739_29">Green</A> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>;
+                            <A HREF="terminal_interface-curses__ads.htm#1740_29">Blue</A>  : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>)
    <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="2255_12">C_Short_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
+      <b>type</b> <FONT COLOR=red><A NAME="2254_12">C_Short_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
 
-      <b>function</b> <FONT COLOR=red><A NAME="2257_16">Colorcontent</A></FONT> (<FONT COLOR=red><A NAME="2257_30">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>; <FONT COLOR=red><A NAME="2257_47">R</A></FONT>, <FONT COLOR=red><A NAME="2257_50">G</A></FONT>, <FONT COLOR=red><A NAME="2257_53">B</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#2255_12">C_Short_Access</A>)
-                             <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2257_16">Colorcontent</A>, "color_content");
+      <b>function</b> <FONT COLOR=red><A NAME="2256_16">Colorcontent</A></FONT> (<FONT COLOR=red><A NAME="2256_30">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>; <FONT COLOR=red><A NAME="2256_47">R</A></FONT>, <FONT COLOR=red><A NAME="2256_50">G</A></FONT>, <FONT COLOR=red><A NAME="2256_53">B</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#2254_12">C_Short_Access</A>)
+                             <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2256_16">Colorcontent</A>, "color_content");
 
-      <FONT COLOR=red><A NAME="2261_7">R</A></FONT>, <FONT COLOR=red><A NAME="2261_10">G</A></FONT>, <FONT COLOR=red><A NAME="2261_13">B</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A>;
+      <FONT COLOR=red><A NAME="2260_7">R</A></FONT>, <FONT COLOR=red><A NAME="2260_10">G</A></FONT>, <FONT COLOR=red><A NAME="2260_13">B</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2257_16">Colorcontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#57_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1738_29">Color</A>), <A HREF="terminal_interface-curses__adb.htm#2261_7">R</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2261_10">G</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2261_13">B</A>'<b>Access</b>) =
-        <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2256_16">Colorcontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#1737_29">Color</A>), <A HREF="terminal_interface-curses__adb.htm#2260_7">R</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2260_10">G</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2260_13">B</A>'<b>Access</b>) =
+        <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses__ads.htm#1739_29">Red</A>   := <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#2261_7">R</A>);
-         <A HREF="terminal_interface-curses__ads.htm#1740_29">Green</A> := <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#2261_10">G</A>);
-         <A HREF="terminal_interface-curses__ads.htm#1741_29">Blue</A>  := <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#2261_13">B</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1738_29">Red</A>   := <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#2260_7">R</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1739_29">Green</A> := <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#2260_10">G</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1740_29">Blue</A>  := <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#2260_13">B</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Color_Content;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1737_14">Color_Content</A><A HREF="terminal_interface-curses__ads.htm#1737_14">;</A>
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1753_14">Save_Curses_Mode</A><FONT COLOR=red><A NAME="2274_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1753_32">Mode</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1750_9">Curses_Mode</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1752_14">Save_Curses_Mode</A><FONT COLOR=red><A NAME="2273_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1752_32">Mode</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1749_9">Curses_Mode</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2276_16">Def_Prog_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2276_16">Def_Prog_Mode</A>, "def_prog_mode");
-      <b>function</b> <FONT COLOR=red><A NAME="2278_16">Def_Shell_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2278_16">Def_Shell_Mode</A>, "def_shell_mode");
+      <b>function</b> <FONT COLOR=red><A NAME="2275_16">Def_Prog_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2275_16">Def_Prog_Mode</A>, "def_prog_mode");
+      <b>function</b> <FONT COLOR=red><A NAME="2277_16">Def_Shell_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2277_16">Def_Shell_Mode</A>, "def_shell_mode");
 
-      <FONT COLOR=red><A NAME="2281_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="2280_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <b>case</b> <A HREF="terminal_interface-curses__ads.htm#1753_32">Mode</A> <b>is</b>
-         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#1750_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#2281_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#2276_16">Def_Prog_Mode</A>;
-         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#1750_33">Shell</A>  =&gt; <A HREF="terminal_interface-curses__adb.htm#2281_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#2278_16">Def_Shell_Mode</A>;
+      <b>case</b> <A HREF="terminal_interface-curses__ads.htm#1752_32">Mode</A> <b>is</b>
+         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#1749_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#2280_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#2275_16">Def_Prog_Mode</A>;
+         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#1749_33">Shell</A>  =&gt; <A HREF="terminal_interface-curses__adb.htm#2280_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#2277_16">Def_Shell_Mode</A>;
       <b>end</b> <b>case</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2281_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2280_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Save_Curses_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1752_14">Save_Curses_Mode</A><A HREF="terminal_interface-curses__ads.htm#1752_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1759_14">Reset_Curses_Mode</A><FONT COLOR=red><A NAME="2292_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1759_33">Mode</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1750_9">Curses_Mode</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1758_14">Reset_Curses_Mode</A><FONT COLOR=red><A NAME="2291_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1758_33">Mode</A> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1749_9">Curses_Mode</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2294_16">Reset_Prog_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2294_16">Reset_Prog_Mode</A>, "reset_prog_mode");
-      <b>function</b> <FONT COLOR=red><A NAME="2296_16">Reset_Shell_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2296_16">Reset_Shell_Mode</A>, "reset_shell_mode");
+      <b>function</b> <FONT COLOR=red><A NAME="2293_16">Reset_Prog_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2293_16">Reset_Prog_Mode</A>, "reset_prog_mode");
+      <b>function</b> <FONT COLOR=red><A NAME="2295_16">Reset_Shell_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2295_16">Reset_Shell_Mode</A>, "reset_shell_mode");
 
-      <FONT COLOR=red><A NAME="2299_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="2298_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <b>case</b> <A HREF="terminal_interface-curses__ads.htm#1759_33">Mode</A> <b>is</b>
-         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#1750_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#2299_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#2294_16">Reset_Prog_Mode</A>;
-         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#1750_33">Shell</A>  =&gt; <A HREF="terminal_interface-curses__adb.htm#2299_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#2296_16">Reset_Shell_Mode</A>;
+      <b>case</b> <A HREF="terminal_interface-curses__ads.htm#1758_33">Mode</A> <b>is</b>
+         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#1749_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#2298_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#2293_16">Reset_Prog_Mode</A>;
+         <b>when</b> <A HREF="terminal_interface-curses__ads.htm#1749_33">Shell</A>  =&gt; <A HREF="terminal_interface-curses__adb.htm#2298_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#2295_16">Reset_Shell_Mode</A>;
       <b>end</b> <b>case</b>;
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2299_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2298_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Reset_Curses_Mode;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1758_14">Reset_Curses_Mode</A><A HREF="terminal_interface-curses__ads.htm#1758_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1765_14">Save_Terminal_State</A><FONT COLOR=red><A NAME="2310_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1764_14">Save_Terminal_State</A><FONT COLOR=red><A NAME="2309_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2312_16">Savetty</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2312_16">Savetty</A>, "savetty");
+      <b>function</b> <FONT COLOR=red><A NAME="2311_16">Savetty</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2311_16">Savetty</A>, "savetty");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2312_16">Savetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2311_16">Savetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Save_Terminal_State;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1764_14">Save_Terminal_State</A><A HREF="terminal_interface-curses__ads.htm#1764_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1770_14">Reset_Terminal_State</A><FONT COLOR=red><A NAME="2320_14"></A></FONT>
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1769_14">Reset_Terminal_State</A><FONT COLOR=red><A NAME="2319_14"></A></FONT>
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2322_16">Resetty</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2322_16">Resetty</A>, "resetty");
+      <b>function</b> <FONT COLOR=red><A NAME="2321_16">Resetty</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2321_16">Resetty</A>, "resetty");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2322_16">Resetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2321_16">Resetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Reset_Terminal_State;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1769_14">Reset_Terminal_State</A><A HREF="terminal_interface-curses__ads.htm#1769_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1783_14">Rip_Off_Lines</A><FONT COLOR=red><A NAME="2330_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1783_29">Lines</A> : <b>in</b> Integer;
-                            <A HREF="terminal_interface-curses__ads.htm#1784_29">Proc</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1774_9">Stdscr_Init_Proc</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1782_14">Rip_Off_Lines</A><FONT COLOR=red><A NAME="2329_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1782_29">Lines</A> : <b>in</b> Integer;
+                            <A HREF="terminal_interface-curses__ads.htm#1783_29">Proc</A>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1773_9">Stdscr_Init_Proc</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2333_16">Ripoffline</A></FONT> (<FONT COLOR=red><A NAME="2333_28">Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                           <FONT COLOR=red><A NAME="2334_28">Proc</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#1774_9">Stdscr_Init_Proc</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2333_16">Ripoffline</A>, "_nc_ripoffline");
+      <b>function</b> <FONT COLOR=red><A NAME="2332_16">Ripoffline</A></FONT> (<FONT COLOR=red><A NAME="2332_28">Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                           <FONT COLOR=red><A NAME="2333_28">Proc</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#1773_9">Stdscr_Init_Proc</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2332_16">Ripoffline</A>, "_nc_ripoffline");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2333_16">Ripoffline</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1783_29">Lines</A>), <A HREF="terminal_interface-curses__ads.htm#1784_29">Proc</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2332_16">Ripoffline</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1782_29">Lines</A>), <A HREF="terminal_interface-curses__ads.htm#1783_29">Proc</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Rip_Off_Lines;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1782_14">Rip_Off_Lines</A><A HREF="terminal_interface-curses__ads.htm#1782_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1795_14">Set_Cursor_Visibility</A><FONT COLOR=red><A NAME="2342_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1795_37">Visibility</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#1792_9">Cursor_Visibility</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1794_14">Set_Cursor_Visibility</A><FONT COLOR=red><A NAME="2341_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1794_37">Visibility</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#1791_9">Cursor_Visibility</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2344_16">Curs_Set</A></FONT> (<FONT COLOR=red><A NAME="2344_26">Curs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2344_16">Curs_Set</A>, "curs_set");
+      <b>function</b> <FONT COLOR=red><A NAME="2343_16">Curs_Set</A></FONT> (<FONT COLOR=red><A NAME="2343_26">Curs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2343_16">Curs_Set</A>, "curs_set");
 
-      <FONT COLOR=red><A NAME="2347_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
+      <FONT COLOR=red><A NAME="2346_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
    <b>begin</b>
-      <A HREF="terminal_interface-curses__adb.htm#2347_7">Res</A> := <A HREF="terminal_interface-curses__adb.htm#2344_16">Curs_Set</A> (<A HREF="terminal_interface-curses__ads.htm#1792_9">Cursor_Visibility</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#1795_37">Visibility</A>));
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2347_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <A HREF="terminal_interface-curses__ads.htm#1795_37">Visibility</A> := <A HREF="terminal_interface-curses__ads.htm#1792_9">Cursor_Visibility</A>'Val (<A HREF="terminal_interface-curses__adb.htm#2347_7">Res</A>);
+      <A HREF="terminal_interface-curses__adb.htm#2346_7">Res</A> := <A HREF="terminal_interface-curses__adb.htm#2343_16">Curs_Set</A> (<A HREF="terminal_interface-curses__ads.htm#1791_9">Cursor_Visibility</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#1794_37">Visibility</A>));
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2346_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <A HREF="terminal_interface-curses__ads.htm#1794_37">Visibility</A> := <A HREF="terminal_interface-curses__ads.htm#1791_9">Cursor_Visibility</A>'Val (<A HREF="terminal_interface-curses__adb.htm#2346_7">Res</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Set_Cursor_Visibility;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1794_14">Set_Cursor_Visibility</A><A HREF="terminal_interface-curses__ads.htm#1794_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1800_14">Nap_Milli_Seconds</A><FONT COLOR=red><A NAME="2355_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1800_33">Ms</A> : <b>in</b> Natural)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1799_14">Nap_Milli_Seconds</A><FONT COLOR=red><A NAME="2354_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1799_33">Ms</A> : <b>in</b> Natural)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2357_16">Napms</A></FONT> (<FONT COLOR=red><A NAME="2357_23">Ms</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2357_16">Napms</A>, "napms");
+      <b>function</b> <FONT COLOR=red><A NAME="2356_16">Napms</A></FONT> (<FONT COLOR=red><A NAME="2356_23">Ms</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2356_16">Napms</A>, "napms");
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2357_16">Napms</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1800_33">Ms</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2356_16">Napms</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1799_33">Ms</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Nap_Milli_Seconds;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1799_14">Nap_Milli_Seconds</A><A HREF="terminal_interface-curses__ads.htm#1799_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A><FONT COLOR=red><A NAME="2366_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="2368_7">Stdscr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2368_7">Stdscr</A>, "stdscr");
+      <FONT COLOR=red><A NAME="2367_7">Stdscr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2367_7">Stdscr</A>, "stdscr");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#2368_7">Stdscr</A>;
-   <b>end</b> Standard_Window;
+      <b>return</b> <A HREF="terminal_interface-curses__adb.htm#2367_7">Stdscr</A>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A><A HREF="terminal_interface-curses__ads.htm#474_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#412_13">Lines</A><FONT COLOR=red><A NAME="2374_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#411_13">Lines</A> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="2376_7">C_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2376_7">C_Lines</A>, "LINES");
+      <FONT COLOR=red><A NAME="2375_7">C_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2375_7">C_Lines</A>, "LINES");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#2376_7">C_Lines</A>);
-   <b>end</b> Lines;
+      <b>return</b> <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#2375_7">C_Lines</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#411_13">Lines</A><A HREF="terminal_interface-curses__ads.htm#411_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#415_13">Columns</A><FONT COLOR=red><A NAME="2382_13"></A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#414_13">Columns</A> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>
    <b>is</b>
-      <FONT COLOR=red><A NAME="2384_7">C_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2384_7">C_Columns</A>, "COLS");
+      <FONT COLOR=red><A NAME="2383_7">C_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2383_7">C_Columns</A>, "COLS");
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#2384_7">C_Columns</A>);
-   <b>end</b> Columns;
+      <b>return</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#2383_7">C_Columns</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#414_13">Columns</A><A HREF="terminal_interface-curses__ads.htm#414_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#418_13">Tab_Size</A><FONT COLOR=red><A NAME="2390_13"></A></FONT> <b>return</b> Natural
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#417_13">Tab_Size</A> <b>return</b> Natural
    <b>is</b>
-      <FONT COLOR=red><A NAME="2392_7">C_Tab_Size</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2392_7">C_Tab_Size</A>, "TABSIZE");
+      <FONT COLOR=red><A NAME="2391_7">C_Tab_Size</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2391_7">C_Tab_Size</A>, "TABSIZE");
    <b>begin</b>
-      <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#2392_7">C_Tab_Size</A>);
-   <b>end</b> Tab_Size;
+      <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#2391_7">C_Tab_Size</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#417_13">Tab_Size</A><A HREF="terminal_interface-curses__ads.htm#417_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#421_13">Number_Of_Colors</A><FONT COLOR=red><A NAME="2398_13"></A></FONT> <b>return</b> Natural
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#420_13">Number_Of_Colors</A> <b>return</b> Natural
    <b>is</b>
-      <FONT COLOR=red><A NAME="2400_7">C_Number_Of_Colors</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2400_7">C_Number_Of_Colors</A>, "COLORS");
+      <FONT COLOR=red><A NAME="2399_7">C_Number_Of_Colors</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2399_7">C_Number_Of_Colors</A>, "COLORS");
    <b>begin</b>
-      <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#2400_7">C_Number_Of_Colors</A>);
-   <b>end</b> Number_Of_Colors;
+      <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#2399_7">C_Number_Of_Colors</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#420_13">Number_Of_Colors</A><A HREF="terminal_interface-curses__ads.htm#420_13">;</A>
 
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#424_13">Number_Of_Color_Pairs</A><FONT COLOR=red><A NAME="2406_13"></A></FONT> <b>return</b> Natural
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#423_13">Number_Of_Color_Pairs</A> <b>return</b> Natural
    <b>is</b>
-      <FONT COLOR=red><A NAME="2408_7">C_Number_Of_Color_Pairs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2408_7">C_Number_Of_Color_Pairs</A>, "COLOR_PAIRS");
+      <FONT COLOR=red><A NAME="2407_7">C_Number_Of_Color_Pairs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2407_7">C_Number_Of_Color_Pairs</A>, "COLOR_PAIRS");
    <b>begin</b>
-      <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#2408_7">C_Number_Of_Color_Pairs</A>);
-   <b>end</b> Number_Of_Color_Pairs;
+      <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#2407_7">C_Number_Of_Color_Pairs</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#423_13">Number_Of_Color_Pairs</A><A HREF="terminal_interface-curses__ads.htm#423_13">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1808_14">Transform_Coordinates</A><FONT COLOR=red><A NAME="2414_14"></A></FONT>
-     (<A HREF="terminal_interface-curses__ads.htm#1809_7">W</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1810_7">Line</A>   : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1811_7">Column</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A>;
-      <A HREF="terminal_interface-curses__ads.htm#1812_7">Dir</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1807_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#1807_33">From_Screen</A>)
-   <b>is</b>
-      <b>type</b> <FONT COLOR=red><A NAME="2420_12">Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>function</b> <FONT COLOR=red><A NAME="2421_16">Transform</A></FONT> (<FONT COLOR=red><A NAME="2421_27">W</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                          <FONT COLOR=red><A NAME="2422_27">Y</A></FONT>, <FONT COLOR=red><A NAME="2422_30">X</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#2420_12">Int_Access</A>;
-                          <FONT COLOR=red><A NAME="2423_27">Dir</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2421_16">Transform</A>, "wmouse_trafo");
-
-      <FONT COLOR=red><A NAME="2426_7">X</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1811_7">Column</A>);
-      <FONT COLOR=red><A NAME="2427_7">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1810_7">Line</A>);
-      <FONT COLOR=red><A NAME="2428_7">D</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> := <A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A>;
-      <FONT COLOR=red><A NAME="2429_7">R</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#1812_7">Dir</A> = <A HREF="terminal_interface-curses__ads.htm#1807_46">To_Screen</A> <b>then</b>
-         <A HREF="terminal_interface-curses__adb.htm#2428_7">D</A> := 1;
-      <b>end</b> <b>if</b>;
-      <A HREF="terminal_interface-curses__adb.htm#2429_7">R</A> := <A HREF="terminal_interface-curses__adb.htm#2421_16">Transform</A> (<A HREF="terminal_interface-curses__ads.htm#1809_7">W</A>, <A HREF="terminal_interface-curses__adb.htm#2427_7">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2426_7">X</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2428_7">D</A>);
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2429_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#76_4">Curses_False</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1807_14">Transform_Coordinates</A><FONT COLOR=red><A NAME="2413_14"></A></FONT>
+     (<A HREF="terminal_interface-curses__ads.htm#1808_7">W</A>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1809_7">Line</A>   : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1810_7">Column</A> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
+      <A HREF="terminal_interface-curses__ads.htm#1811_7">Dir</A>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1806_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#1806_33">From_Screen</A>)
+   <b>is</b>
+      <b>type</b> <FONT COLOR=red><A NAME="2419_12">Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="2420_16">Transform</A></FONT> (<FONT COLOR=red><A NAME="2420_27">W</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                          <FONT COLOR=red><A NAME="2421_27">Y</A></FONT>, <FONT COLOR=red><A NAME="2421_30">X</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#2419_12">Int_Access</A>;
+                          <FONT COLOR=red><A NAME="2422_27">Dir</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2420_16">Transform</A>, "wmouse_trafo");
+
+      <FONT COLOR=red><A NAME="2425_7">X</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1810_7">Column</A>);
+      <FONT COLOR=red><A NAME="2426_7">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1809_7">Line</A>);
+      <FONT COLOR=red><A NAME="2427_7">D</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> := <A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A>;
+      <FONT COLOR=red><A NAME="2428_7">R</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__ads.htm#1811_7">Dir</A> = <A HREF="terminal_interface-curses__ads.htm#1806_46">To_Screen</A> <b>then</b>
+         <A HREF="terminal_interface-curses__adb.htm#2427_7">D</A> := 1;
+      <b>end</b> <b>if</b>;
+      <A HREF="terminal_interface-curses__adb.htm#2428_7">R</A> := <A HREF="terminal_interface-curses__adb.htm#2420_16">Transform</A> (<A HREF="terminal_interface-curses__ads.htm#1808_7">W</A>, <A HREF="terminal_interface-curses__adb.htm#2426_7">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2425_7">X</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#2427_7">D</A>);
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2428_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#75_4">Curses_False</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>else</b>
-         <A HREF="terminal_interface-curses__ads.htm#1810_7">Line</A>   := <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#2427_7">Y</A>);
-         <A HREF="terminal_interface-curses__ads.htm#1811_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#2426_7">X</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1809_7">Line</A>   := <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#2426_7">Y</A>);
+         <A HREF="terminal_interface-curses__ads.htm#1810_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#2425_7">X</A>);
       <b>end</b> <b>if</b>;
-   <b>end</b> Transform_Coordinates;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1807_14">Transform_Coordinates</A><A HREF="terminal_interface-curses__ads.htm#1807_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1825_14">Use_Default_Colors</A><FONT COLOR=red><A NAME="2443_14"></A></FONT> <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2444_16">C_Use_Default_Colors</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2444_16">C_Use_Default_Colors</A>, "use_default_colors");
-      <FONT COLOR=red><A NAME="2446_7">Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#2444_16">C_Use_Default_Colors</A>;
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1824_14">Use_Default_Colors</A><FONT COLOR=red><A NAME="2442_14"></A></FONT> <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="2443_16">C_Use_Default_Colors</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2443_16">C_Use_Default_Colors</A>, "use_default_colors");
+      <FONT COLOR=red><A NAME="2445_7">Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#2443_16">C_Use_Default_Colors</A>;
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2446_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2445_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Use_Default_Colors;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1824_14">Use_Default_Colors</A><A HREF="terminal_interface-curses__ads.htm#1824_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1830_14">Assume_Default_Colors</A><FONT COLOR=red><A NAME="2453_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1830_37">Fore</A> : <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#284_4">Default_Color</A>;
-                                    <A HREF="terminal_interface-curses__ads.htm#1831_37">Back</A> : <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#284_4">Default_Color</A>)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1829_14">Assume_Default_Colors</A><FONT COLOR=red><A NAME="2452_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1829_37">Fore</A> : <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#283_4">Default_Color</A>;
+                                    <A HREF="terminal_interface-curses__ads.htm#1830_37">Back</A> : <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#283_4">Default_Color</A>)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2456_16">C_Assume_Default_Colors</A></FONT> (<FONT COLOR=red><A NAME="2456_41">Fore</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                                        <FONT COLOR=red><A NAME="2457_41">Back</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2456_16">C_Assume_Default_Colors</A>, "assume_default_colors");
+      <b>function</b> <FONT COLOR=red><A NAME="2455_16">C_Assume_Default_Colors</A></FONT> (<FONT COLOR=red><A NAME="2455_41">Fore</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                                        <FONT COLOR=red><A NAME="2456_41">Back</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2455_16">C_Assume_Default_Colors</A>, "assume_default_colors");
 
-      <FONT COLOR=red><A NAME="2460_7">Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#2456_16">C_Assume_Default_Colors</A> (<A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1830_37">Fore</A>),
-                                                       <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#285_4">Black</A>));
+      <FONT COLOR=red><A NAME="2459_7">Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#2455_16">C_Assume_Default_Colors</A> (<A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1829_37">Fore</A>),
+                                                       <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#284_4">Black</A>));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2460_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2459_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Assume_Default_Colors;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1829_14">Assume_Default_Colors</A><A HREF="terminal_interface-curses__ads.htm#1829_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1840_13">Curses_Version</A><FONT COLOR=red><A NAME="2468_13"></A></FONT> <b>return</b> String
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1839_13">Curses_Version</A> <b>return</b> String
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2470_16">curses_versionC</A></FONT> <b>return</b> chars_ptr;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2470_16">curses_versionC</A>, "curses_version");
-      <FONT COLOR=red><A NAME="2472_7">Result</A></FONT> : <b>constant</b> chars_ptr := <A HREF="terminal_interface-curses__adb.htm#2470_16">curses_versionC</A>;
+      <b>function</b> <FONT COLOR=red><A NAME="2469_16">curses_versionC</A></FONT> <b>return</b> chars_ptr;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2469_16">curses_versionC</A>, "curses_version");
+      <FONT COLOR=red><A NAME="2471_7">Result</A></FONT> : <b>constant</b> chars_ptr := <A HREF="terminal_interface-curses__adb.htm#2469_16">curses_versionC</A>;
    <b>begin</b>
-      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#122_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2472_7">Result</A>);
-   <b>end</b> Curses_Version;
+      <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#2471_7">Result</A>);
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1839_13">Curses_Version</A><A HREF="terminal_interface-curses__ads.htm#1839_13">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1845_13">Use_Extended_Names</A><FONT COLOR=red><A NAME="2477_13"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1845_33">Enable</A> : Boolean) <b>return</b> Boolean
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#1844_13">Use_Extended_Names</A> (<A HREF="terminal_interface-curses__ads.htm#1844_33">Enable</A> : Boolean) <b>return</b> Boolean
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2479_16">use_extended_namesC</A></FONT> (<FONT COLOR=red><A NAME="2479_37">e</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2479_16">use_extended_namesC</A>, "use_extended_names");
+      <b>function</b> <FONT COLOR=red><A NAME="2478_16">use_extended_namesC</A></FONT> (<FONT COLOR=red><A NAME="2478_37">e</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2478_16">use_extended_namesC</A>, "use_extended_names");
 
-      <FONT COLOR=red><A NAME="2482_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> :=
-         <A HREF="terminal_interface-curses__adb.htm#2479_16">use_extended_namesC</A> (<A HREF="terminal_interface-curses__ads.htm#1931_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1845_33">Enable</A>)));
+      <FONT COLOR=red><A NAME="2481_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> :=
+         <A HREF="terminal_interface-curses__adb.htm#2478_16">use_extended_namesC</A> (<A HREF="terminal_interface-curses__ads.htm#1930_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#1844_33">Enable</A>)));
    <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2482_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1932_4">Curses_Bool_False</A>) <b>then</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2481_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1931_4">Curses_Bool_False</A>) <b>then</b>
          <b>return</b> False;
       <b>else</b>
          <b>return</b> True;
       <b>end</b> <b>if</b>;
-   <b>end</b> Use_Extended_Names;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1844_13">Use_Extended_Names</A><A HREF="terminal_interface-curses__ads.htm#1844_13">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1853_14">Screen_Dump_To_File</A><FONT COLOR=red><A NAME="2492_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1853_35">Filename</A> : <b>in</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1852_14">Screen_Dump_To_File</A><FONT COLOR=red><A NAME="2491_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1852_35">Filename</A> : <b>in</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2494_16">scr_dump</A></FONT> (<FONT COLOR=red><A NAME="2494_26">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2494_16">scr_dump</A>, "scr_dump");
-      <FONT COLOR=red><A NAME="2496_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1853_35">Filename</A>'Length);
-      <FONT COLOR=red><A NAME="2497_7">Length</A></FONT> : size_t;
+      <b>function</b> <FONT COLOR=red><A NAME="2493_16">scr_dump</A></FONT> (<FONT COLOR=red><A NAME="2493_26">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2493_16">scr_dump</A>, "scr_dump");
+      <FONT COLOR=red><A NAME="2495_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1852_35">Filename</A>'Length);
+      <FONT COLOR=red><A NAME="2496_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses__ads.htm#1853_35">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#2496_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2497_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#2494_16">scr_dump</A> (<A HREF="terminal_interface-curses__adb.htm#2496_7">Txt</A>) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      To_C (<A HREF="terminal_interface-curses__ads.htm#1852_35">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#2495_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2496_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#2493_16">scr_dump</A> (<A HREF="terminal_interface-curses__adb.htm#2495_7">Txt</A>) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Screen_Dump_To_File;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1852_14">Screen_Dump_To_File</A><A HREF="terminal_interface-curses__ads.htm#1852_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1857_14">Screen_Restore_From_File</A><FONT COLOR=red><A NAME="2505_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1857_40">Filename</A> : <b>in</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1856_14">Screen_Restore_From_File</A><FONT COLOR=red><A NAME="2504_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1856_40">Filename</A> : <b>in</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2507_16">scr_restore</A></FONT> (<FONT COLOR=red><A NAME="2507_29">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2507_16">scr_restore</A>, "scr_restore");
-      <FONT COLOR=red><A NAME="2509_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1857_40">Filename</A>'Length);
-      <FONT COLOR=red><A NAME="2510_7">Length</A></FONT> : size_t;
+      <b>function</b> <FONT COLOR=red><A NAME="2506_16">scr_restore</A></FONT> (<FONT COLOR=red><A NAME="2506_29">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2506_16">scr_restore</A>, "scr_restore");
+      <FONT COLOR=red><A NAME="2508_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1856_40">Filename</A>'Length);
+      <FONT COLOR=red><A NAME="2509_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses__ads.htm#1857_40">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#2509_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2510_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#2507_16">scr_restore</A> (<A HREF="terminal_interface-curses__adb.htm#2509_7">Txt</A>)  <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      To_C (<A HREF="terminal_interface-curses__ads.htm#1856_40">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#2508_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2509_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#2506_16">scr_restore</A> (<A HREF="terminal_interface-curses__adb.htm#2508_7">Txt</A>)  <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Screen_Restore_From_File;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1856_14">Screen_Restore_From_File</A><A HREF="terminal_interface-curses__ads.htm#1856_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1861_14">Screen_Init_From_File</A><FONT COLOR=red><A NAME="2518_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1861_37">Filename</A> : <b>in</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1860_14">Screen_Init_From_File</A><FONT COLOR=red><A NAME="2517_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1860_37">Filename</A> : <b>in</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2520_16">scr_init</A></FONT> (<FONT COLOR=red><A NAME="2520_26">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2520_16">scr_init</A>, "scr_init");
-      <FONT COLOR=red><A NAME="2522_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1861_37">Filename</A>'Length);
-      <FONT COLOR=red><A NAME="2523_7">Length</A></FONT> : size_t;
+      <b>function</b> <FONT COLOR=red><A NAME="2519_16">scr_init</A></FONT> (<FONT COLOR=red><A NAME="2519_26">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2519_16">scr_init</A>, "scr_init");
+      <FONT COLOR=red><A NAME="2521_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1860_37">Filename</A>'Length);
+      <FONT COLOR=red><A NAME="2522_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses__ads.htm#1861_37">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#2522_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2523_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#2520_16">scr_init</A> (<A HREF="terminal_interface-curses__adb.htm#2522_7">Txt</A>) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      To_C (<A HREF="terminal_interface-curses__ads.htm#1860_37">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#2521_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2522_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#2519_16">scr_init</A> (<A HREF="terminal_interface-curses__adb.htm#2521_7">Txt</A>) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Screen_Init_From_File;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1860_14">Screen_Init_From_File</A><A HREF="terminal_interface-curses__ads.htm#1860_14">;</A>
 
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1865_14">Screen_Set_File</A><FONT COLOR=red><A NAME="2531_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1865_31">Filename</A> : <b>in</b> String)
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1864_14">Screen_Set_File</A><FONT COLOR=red><A NAME="2530_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1864_31">Filename</A> : <b>in</b> String)
    <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2533_16">scr_set</A></FONT> (<FONT COLOR=red><A NAME="2533_25">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2533_16">scr_set</A>, "scr_set");
-      <FONT COLOR=red><A NAME="2535_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1865_31">Filename</A>'Length);
-      <FONT COLOR=red><A NAME="2536_7">Length</A></FONT> : size_t;
+      <b>function</b> <FONT COLOR=red><A NAME="2532_16">scr_set</A></FONT> (<FONT COLOR=red><A NAME="2532_25">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2532_16">scr_set</A>, "scr_set");
+      <FONT COLOR=red><A NAME="2534_7">Txt</A></FONT>    : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#1864_31">Filename</A>'Length);
+      <FONT COLOR=red><A NAME="2535_7">Length</A></FONT> : size_t;
    <b>begin</b>
-      To_C (<A HREF="terminal_interface-curses__ads.htm#1865_31">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#2535_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2536_7">Length</A>);
-      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#2533_16">scr_set</A> (<A HREF="terminal_interface-curses__adb.htm#2535_7">Txt</A>) <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
+      To_C (<A HREF="terminal_interface-curses__ads.htm#1864_31">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#2534_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#2535_7">Length</A>);
+      <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#2532_16">scr_set</A> (<A HREF="terminal_interface-curses__adb.htm#2534_7">Txt</A>) <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
       <b>end</b> <b>if</b>;
-   <b>end</b> Screen_Set_File;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1864_14">Screen_Set_File</A><A HREF="terminal_interface-curses__ads.htm#1864_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1898_14">Resize</A><FONT COLOR=red><A NAME="2544_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1898_22">Win</A>               : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#475_13">Standard_Window</A>;
-                     <A HREF="terminal_interface-curses__ads.htm#1899_22">Number_Of_Lines</A>   : <A HREF="terminal_interface-curses__ads.htm#63_12">Line_Count</A>;
-                     <A HREF="terminal_interface-curses__ads.htm#1900_22">Number_Of_Columns</A> : <A HREF="terminal_interface-curses__ads.htm#65_12">Column_Count</A>) <b>is</b>
-      <b>function</b> <FONT COLOR=red><A NAME="2547_16">wresize</A></FONT> (<FONT COLOR=red><A NAME="2547_25">win</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-                        <FONT COLOR=red><A NAME="2548_25">lines</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-                        <FONT COLOR=red><A NAME="2549_25">columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A>;
-      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2547_16">wresize</A>);
-   <b>begin</b>
-      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2547_16">wresize</A> (<A HREF="terminal_interface-curses__ads.htm#1898_22">Win</A>,
-                  <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1899_22">Number_Of_Lines</A>),
-                  <A HREF="terminal_interface-curses-aux__ads.htm#56_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1900_22">Number_Of_Columns</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#73_4">Curses_Err</A> <b>then</b>
-         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#383_4">Curses_Exception</A>;
-      <b>end</b> <b>if</b>;
-   <b>end</b> Resize;
+   <b>procedure</b> <A HREF="terminal_interface-curses__ads.htm#1897_14">Resize</A><FONT COLOR=red><A NAME="2543_14"></A></FONT> (<A HREF="terminal_interface-curses__ads.htm#1897_22">Win</A>               : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#474_13">Standard_Window</A>;
+                     <A HREF="terminal_interface-curses__ads.htm#1898_22">Number_Of_Lines</A>   : <A HREF="terminal_interface-curses__ads.htm#62_12">Line_Count</A>;
+                     <A HREF="terminal_interface-curses__ads.htm#1899_22">Number_Of_Columns</A> : <A HREF="terminal_interface-curses__ads.htm#64_12">Column_Count</A>) <b>is</b>
+      <b>function</b> <FONT COLOR=red><A NAME="2546_16">wresize</A></FONT> (<FONT COLOR=red><A NAME="2546_25">win</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+                        <FONT COLOR=red><A NAME="2547_25">lines</A></FONT>   : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+                        <FONT COLOR=red><A NAME="2548_25">columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A>;
+      <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#2546_16">wresize</A>);
+   <b>begin</b>
+      <b>if</b> <A HREF="terminal_interface-curses__adb.htm#2546_16">wresize</A> (<A HREF="terminal_interface-curses__ads.htm#1897_22">Win</A>,
+                  <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1898_22">Number_Of_Lines</A>),
+                  <A HREF="terminal_interface-curses-aux__ads.htm#55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#1899_22">Number_Of_Columns</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#72_4">Curses_Err</A> <b>then</b>
+         <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#382_4">Curses_Exception</A>;
+      <b>end</b> <b>if</b>;
+   <b>end</b> <A HREF="terminal_interface-curses__ads.htm#1897_14">Resize</A><A HREF="terminal_interface-curses__ads.htm#1897_14">;</A>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
-<b>end</b> Terminal_Interface.Curses;
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#48_28">Curses</A><A HREF="terminal_interface-curses__ads.htm#48_28">;</A>
 
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index 5acab555cbb20227afceb096ad3fcf10340e45db..b45b93c8bbea2112c675467cd9039a15a9816f3d 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.30 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.31 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 <FONT COLOR=green><EM>--  curses binding.</EM></FONT>
    <b>pragma</b> Preelaborate (Terminal_Interface.Curses);
    <b>pragma</b> Linker_Options ("-lncurses");
 
-   <FONT COLOR=red><A NAME="54_4">NC_Major_Version</A></FONT> : <b>constant</b> := 5; <FONT COLOR=green><EM>--  Major version of the library</EM></FONT>
-   <FONT COLOR=red><A NAME="55_4">NC_Minor_Version</A></FONT> : <b>constant</b> := 2; <FONT COLOR=green><EM>--  Minor version of the library</EM></FONT>
-   NC_Version : <b>constant</b> String := "5.2";  <FONT COLOR=green><EM>--  Version of library</EM></FONT>
+   <FONT COLOR=red><A NAME="53_4">NC_Major_Version</A></FONT> : <b>constant</b> := 5; <FONT COLOR=green><EM>--  Major version of the library</EM></FONT>
+   <FONT COLOR=red><A NAME="54_4">NC_Minor_Version</A></FONT> : <b>constant</b> := 3; <FONT COLOR=green><EM>--  Minor version of the library</EM></FONT>
+   NC_Version : <b>constant</b> String := "5.3";  <FONT COLOR=green><EM>--  Version of library</EM></FONT>
 
    <b>type</b> Window <b>is</b> <b>private</b>;
    Null_Window : <b>constant</b> Window;
 
-   <b>type</b> <FONT COLOR=red><A NAME="61_9">Line_Position</A></FONT>   <b>is</b> <b>new</b> Natural; <FONT COLOR=green><EM>--  line coordinate</EM></FONT>
+   <b>type</b> <FONT COLOR=red><A NAME="60_9">Line_Position</A></FONT>   <b>is</b> <b>new</b> Natural; <FONT COLOR=green><EM>--  line coordinate</EM></FONT>
    <b>type</b> Column_Position <b>is</b> <b>new</b> Natural; <FONT COLOR=green><EM>--  column coordinate</EM></FONT>
 
    <b>subtype</b> Line_Count   <b>is</b> Line_Position   <b>range</b> 1 .. Line_Position'Last;
 
    <FONT COLOR=green><EM>--  Constants for function- and special keys</EM></FONT>
    <FONT COLOR=green><EM>--</EM></FONT>
-   <FONT COLOR=red><A NAME="88_4">Key_None</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#400#;
-   <FONT COLOR=red><A NAME="89_4">Key_Code_Yes</A></FONT>                   : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#400#;
-   <FONT COLOR=red><A NAME="90_4">Key_Min</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#401#;
-   <FONT COLOR=red><A NAME="91_4">Key_Break</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#401#;
-   <FONT COLOR=red><A NAME="92_4">Key_Cursor_Down</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#402#;
-   <FONT COLOR=red><A NAME="93_4">Key_Cursor_Up</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#403#;
-   <FONT COLOR=red><A NAME="94_4">Key_Cursor_Left</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#404#;
-   <FONT COLOR=red><A NAME="95_4">Key_Cursor_Right</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#405#;
-   <FONT COLOR=red><A NAME="96_4">Key_Home</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#406#;
-   <FONT COLOR=red><A NAME="97_4">Key_Backspace</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#407#;
-   <FONT COLOR=red><A NAME="98_4">Key_F0</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#410#;
-   <FONT COLOR=red><A NAME="99_4">Key_F1</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#411#;
-   <FONT COLOR=red><A NAME="100_4">Key_F2</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#412#;
-   <FONT COLOR=red><A NAME="101_4">Key_F3</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#413#;
-   <FONT COLOR=red><A NAME="102_4">Key_F4</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#414#;
-   <FONT COLOR=red><A NAME="103_4">Key_F5</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#415#;
-   <FONT COLOR=red><A NAME="104_4">Key_F6</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#416#;
-   <FONT COLOR=red><A NAME="105_4">Key_F7</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#417#;
-   <FONT COLOR=red><A NAME="106_4">Key_F8</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#420#;
-   <FONT COLOR=red><A NAME="107_4">Key_F9</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#421#;
-   <FONT COLOR=red><A NAME="108_4">Key_F10</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#422#;
-   <FONT COLOR=red><A NAME="109_4">Key_F11</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#423#;
-   <FONT COLOR=red><A NAME="110_4">Key_F12</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#424#;
-   <FONT COLOR=red><A NAME="111_4">Key_F13</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#425#;
-   <FONT COLOR=red><A NAME="112_4">Key_F14</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#426#;
-   <FONT COLOR=red><A NAME="113_4">Key_F15</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#427#;
-   <FONT COLOR=red><A NAME="114_4">Key_F16</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#430#;
-   <FONT COLOR=red><A NAME="115_4">Key_F17</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#431#;
-   <FONT COLOR=red><A NAME="116_4">Key_F18</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#432#;
-   <FONT COLOR=red><A NAME="117_4">Key_F19</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#433#;
-   <FONT COLOR=red><A NAME="118_4">Key_F20</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#434#;
-   <FONT COLOR=red><A NAME="119_4">Key_F21</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#435#;
-   <FONT COLOR=red><A NAME="120_4">Key_F22</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#436#;
-   <FONT COLOR=red><A NAME="121_4">Key_F23</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#437#;
-   <FONT COLOR=red><A NAME="122_4">Key_F24</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#440#;
-   <FONT COLOR=red><A NAME="123_4">Key_Delete_Line</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#510#;
-   <FONT COLOR=red><A NAME="124_4">Key_Insert_Line</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#511#;
-   <FONT COLOR=red><A NAME="125_4">Key_Delete_Char</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#512#;
-   <FONT COLOR=red><A NAME="126_4">Key_Insert_Char</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#513#;
-   <FONT COLOR=red><A NAME="127_4">Key_Exit_Insert_Mode</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#514#;
-   <FONT COLOR=red><A NAME="128_4">Key_Clear_Screen</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#515#;
-   <FONT COLOR=red><A NAME="129_4">Key_Clear_End_Of_Screen</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#516#;
-   <FONT COLOR=red><A NAME="130_4">Key_Clear_End_Of_Line</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#517#;
-   <FONT COLOR=red><A NAME="131_4">Key_Scroll_1_Forward</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#520#;
-   <FONT COLOR=red><A NAME="132_4">Key_Scroll_1_Backward</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#521#;
-   <FONT COLOR=red><A NAME="133_4">Key_Next_Page</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#522#;
-   <FONT COLOR=red><A NAME="134_4">Key_Previous_Page</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#523#;
-   <FONT COLOR=red><A NAME="135_4">Key_Set_Tab</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#524#;
-   <FONT COLOR=red><A NAME="136_4">Key_Clear_Tab</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#525#;
-   <FONT COLOR=red><A NAME="137_4">Key_Clear_All_Tabs</A></FONT>             : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#526#;
-   <FONT COLOR=red><A NAME="138_4">Key_Enter_Or_Send</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#527#;
-   <FONT COLOR=red><A NAME="139_4">Key_Soft_Reset</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#530#;
-   <FONT COLOR=red><A NAME="140_4">Key_Reset</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#531#;
-   <FONT COLOR=red><A NAME="141_4">Key_Print</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#532#;
-   <FONT COLOR=red><A NAME="142_4">Key_Bottom</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#533#;
-   <FONT COLOR=red><A NAME="143_4">Key_Upper_Left_Of_Keypad</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#534#;
-   <FONT COLOR=red><A NAME="144_4">Key_Upper_Right_Of_Keypad</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#535#;
-   <FONT COLOR=red><A NAME="145_4">Key_Center_Of_Keypad</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#536#;
-   <FONT COLOR=red><A NAME="146_4">Key_Lower_Left_Of_Keypad</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#537#;
-   <FONT COLOR=red><A NAME="147_4">Key_Lower_Right_Of_Keypad</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#540#;
-   <FONT COLOR=red><A NAME="148_4">Key_Back_Tab</A></FONT>                   : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#541#;
-   <FONT COLOR=red><A NAME="149_4">Key_Beginning</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#542#;
-   <FONT COLOR=red><A NAME="150_4">Key_Cancel</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#543#;
-   <FONT COLOR=red><A NAME="151_4">Key_Close</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#544#;
-   <FONT COLOR=red><A NAME="152_4">Key_Command</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#545#;
-   <FONT COLOR=red><A NAME="153_4">Key_Copy</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#546#;
-   <FONT COLOR=red><A NAME="154_4">Key_Create</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#547#;
-   <FONT COLOR=red><A NAME="155_4">Key_End</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#550#;
-   <FONT COLOR=red><A NAME="156_4">Key_Exit</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#551#;
-   <FONT COLOR=red><A NAME="157_4">Key_Find</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#552#;
-   <FONT COLOR=red><A NAME="158_4">Key_Help</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#553#;
-   <FONT COLOR=red><A NAME="159_4">Key_Mark</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#554#;
-   <FONT COLOR=red><A NAME="160_4">Key_Message</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#555#;
-   <FONT COLOR=red><A NAME="161_4">Key_Move</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#556#;
-   <FONT COLOR=red><A NAME="162_4">Key_Next</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#557#;
-   <FONT COLOR=red><A NAME="163_4">Key_Open</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#560#;
-   <FONT COLOR=red><A NAME="164_4">Key_Options</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#561#;
-   <FONT COLOR=red><A NAME="165_4">Key_Previous</A></FONT>                   : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#562#;
-   <FONT COLOR=red><A NAME="166_4">Key_Redo</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#563#;
-   <FONT COLOR=red><A NAME="167_4">Key_Reference</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#564#;
-   <FONT COLOR=red><A NAME="168_4">Key_Refresh</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#565#;
-   <FONT COLOR=red><A NAME="169_4">Key_Replace</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#566#;
-   <FONT COLOR=red><A NAME="170_4">Key_Restart</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#567#;
-   <FONT COLOR=red><A NAME="171_4">Key_Resume</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#570#;
-   <FONT COLOR=red><A NAME="172_4">Key_Save</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#571#;
-   <FONT COLOR=red><A NAME="173_4">Key_Shift_Begin</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#572#;
-   <FONT COLOR=red><A NAME="174_4">Key_Shift_Cancel</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#573#;
-   <FONT COLOR=red><A NAME="175_4">Key_Shift_Command</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#574#;
-   <FONT COLOR=red><A NAME="176_4">Key_Shift_Copy</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#575#;
-   <FONT COLOR=red><A NAME="177_4">Key_Shift_Create</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#576#;
-   <FONT COLOR=red><A NAME="178_4">Key_Shift_Delete_Char</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#577#;
-   <FONT COLOR=red><A NAME="179_4">Key_Shift_Delete_Line</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#600#;
-   <FONT COLOR=red><A NAME="180_4">Key_Select</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#601#;
-   <FONT COLOR=red><A NAME="181_4">Key_Shift_End</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#602#;
-   <FONT COLOR=red><A NAME="182_4">Key_Shift_Clear_End_Of_Line</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#603#;
-   <FONT COLOR=red><A NAME="183_4">Key_Shift_Exit</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#604#;
-   <FONT COLOR=red><A NAME="184_4">Key_Shift_Find</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#605#;
-   <FONT COLOR=red><A NAME="185_4">Key_Shift_Help</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#606#;
-   <FONT COLOR=red><A NAME="186_4">Key_Shift_Home</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#607#;
-   <FONT COLOR=red><A NAME="187_4">Key_Shift_Insert_Char</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#610#;
-   <FONT COLOR=red><A NAME="188_4">Key_Shift_Cursor_Left</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#611#;
-   <FONT COLOR=red><A NAME="189_4">Key_Shift_Message</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#612#;
-   <FONT COLOR=red><A NAME="190_4">Key_Shift_Move</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#613#;
-   <FONT COLOR=red><A NAME="191_4">Key_Shift_Next_Page</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#614#;
-   <FONT COLOR=red><A NAME="192_4">Key_Shift_Options</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#615#;
-   <FONT COLOR=red><A NAME="193_4">Key_Shift_Previous_Page</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#616#;
-   <FONT COLOR=red><A NAME="194_4">Key_Shift_Print</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#617#;
-   <FONT COLOR=red><A NAME="195_4">Key_Shift_Redo</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#620#;
-   <FONT COLOR=red><A NAME="196_4">Key_Shift_Replace</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#621#;
-   <FONT COLOR=red><A NAME="197_4">Key_Shift_Cursor_Right</A></FONT>         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#622#;
-   <FONT COLOR=red><A NAME="198_4">Key_Shift_Resume</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#623#;
-   <FONT COLOR=red><A NAME="199_4">Key_Shift_Save</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#624#;
-   <FONT COLOR=red><A NAME="200_4">Key_Shift_Suspend</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#625#;
-   <FONT COLOR=red><A NAME="201_4">Key_Shift_Undo</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#626#;
-   <FONT COLOR=red><A NAME="202_4">Key_Suspend</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#627#;
-   <FONT COLOR=red><A NAME="203_4">Key_Undo</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#630#;
-   <FONT COLOR=red><A NAME="204_4">Key_Mouse</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> := 8#631#;
+   <FONT COLOR=red><A NAME="87_4">Key_None</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#400#;
+   <FONT COLOR=red><A NAME="88_4">Key_Code_Yes</A></FONT>                   : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#400#;
+   <FONT COLOR=red><A NAME="89_4">Key_Min</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#401#;
+   <FONT COLOR=red><A NAME="90_4">Key_Break</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#401#;
+   <FONT COLOR=red><A NAME="91_4">Key_Cursor_Down</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#402#;
+   <FONT COLOR=red><A NAME="92_4">Key_Cursor_Up</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#403#;
+   <FONT COLOR=red><A NAME="93_4">Key_Cursor_Left</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#404#;
+   <FONT COLOR=red><A NAME="94_4">Key_Cursor_Right</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#405#;
+   <FONT COLOR=red><A NAME="95_4">Key_Home</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#406#;
+   <FONT COLOR=red><A NAME="96_4">Key_Backspace</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#407#;
+   <FONT COLOR=red><A NAME="97_4">Key_F0</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#410#;
+   <FONT COLOR=red><A NAME="98_4">Key_F1</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#411#;
+   <FONT COLOR=red><A NAME="99_4">Key_F2</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#412#;
+   <FONT COLOR=red><A NAME="100_4">Key_F3</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#413#;
+   <FONT COLOR=red><A NAME="101_4">Key_F4</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#414#;
+   <FONT COLOR=red><A NAME="102_4">Key_F5</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#415#;
+   <FONT COLOR=red><A NAME="103_4">Key_F6</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#416#;
+   <FONT COLOR=red><A NAME="104_4">Key_F7</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#417#;
+   <FONT COLOR=red><A NAME="105_4">Key_F8</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#420#;
+   <FONT COLOR=red><A NAME="106_4">Key_F9</A></FONT>                         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#421#;
+   <FONT COLOR=red><A NAME="107_4">Key_F10</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#422#;
+   <FONT COLOR=red><A NAME="108_4">Key_F11</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#423#;
+   <FONT COLOR=red><A NAME="109_4">Key_F12</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#424#;
+   <FONT COLOR=red><A NAME="110_4">Key_F13</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#425#;
+   <FONT COLOR=red><A NAME="111_4">Key_F14</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#426#;
+   <FONT COLOR=red><A NAME="112_4">Key_F15</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#427#;
+   <FONT COLOR=red><A NAME="113_4">Key_F16</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#430#;
+   <FONT COLOR=red><A NAME="114_4">Key_F17</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#431#;
+   <FONT COLOR=red><A NAME="115_4">Key_F18</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#432#;
+   <FONT COLOR=red><A NAME="116_4">Key_F19</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#433#;
+   <FONT COLOR=red><A NAME="117_4">Key_F20</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#434#;
+   <FONT COLOR=red><A NAME="118_4">Key_F21</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#435#;
+   <FONT COLOR=red><A NAME="119_4">Key_F22</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#436#;
+   <FONT COLOR=red><A NAME="120_4">Key_F23</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#437#;
+   <FONT COLOR=red><A NAME="121_4">Key_F24</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#440#;
+   <FONT COLOR=red><A NAME="122_4">Key_Delete_Line</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#510#;
+   <FONT COLOR=red><A NAME="123_4">Key_Insert_Line</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#511#;
+   <FONT COLOR=red><A NAME="124_4">Key_Delete_Char</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#512#;
+   <FONT COLOR=red><A NAME="125_4">Key_Insert_Char</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#513#;
+   <FONT COLOR=red><A NAME="126_4">Key_Exit_Insert_Mode</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#514#;
+   <FONT COLOR=red><A NAME="127_4">Key_Clear_Screen</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#515#;
+   <FONT COLOR=red><A NAME="128_4">Key_Clear_End_Of_Screen</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#516#;
+   <FONT COLOR=red><A NAME="129_4">Key_Clear_End_Of_Line</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#517#;
+   <FONT COLOR=red><A NAME="130_4">Key_Scroll_1_Forward</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#520#;
+   <FONT COLOR=red><A NAME="131_4">Key_Scroll_1_Backward</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#521#;
+   <FONT COLOR=red><A NAME="132_4">Key_Next_Page</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#522#;
+   <FONT COLOR=red><A NAME="133_4">Key_Previous_Page</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#523#;
+   <FONT COLOR=red><A NAME="134_4">Key_Set_Tab</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#524#;
+   <FONT COLOR=red><A NAME="135_4">Key_Clear_Tab</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#525#;
+   <FONT COLOR=red><A NAME="136_4">Key_Clear_All_Tabs</A></FONT>             : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#526#;
+   <FONT COLOR=red><A NAME="137_4">Key_Enter_Or_Send</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#527#;
+   <FONT COLOR=red><A NAME="138_4">Key_Soft_Reset</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#530#;
+   <FONT COLOR=red><A NAME="139_4">Key_Reset</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#531#;
+   <FONT COLOR=red><A NAME="140_4">Key_Print</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#532#;
+   <FONT COLOR=red><A NAME="141_4">Key_Bottom</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#533#;
+   <FONT COLOR=red><A NAME="142_4">Key_Upper_Left_Of_Keypad</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#534#;
+   <FONT COLOR=red><A NAME="143_4">Key_Upper_Right_Of_Keypad</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#535#;
+   <FONT COLOR=red><A NAME="144_4">Key_Center_Of_Keypad</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#536#;
+   <FONT COLOR=red><A NAME="145_4">Key_Lower_Left_Of_Keypad</A></FONT>       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#537#;
+   <FONT COLOR=red><A NAME="146_4">Key_Lower_Right_Of_Keypad</A></FONT>      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#540#;
+   <FONT COLOR=red><A NAME="147_4">Key_Back_Tab</A></FONT>                   : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#541#;
+   <FONT COLOR=red><A NAME="148_4">Key_Beginning</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#542#;
+   <FONT COLOR=red><A NAME="149_4">Key_Cancel</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#543#;
+   <FONT COLOR=red><A NAME="150_4">Key_Close</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#544#;
+   <FONT COLOR=red><A NAME="151_4">Key_Command</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#545#;
+   <FONT COLOR=red><A NAME="152_4">Key_Copy</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#546#;
+   <FONT COLOR=red><A NAME="153_4">Key_Create</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#547#;
+   <FONT COLOR=red><A NAME="154_4">Key_End</A></FONT>                        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#550#;
+   <FONT COLOR=red><A NAME="155_4">Key_Exit</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#551#;
+   <FONT COLOR=red><A NAME="156_4">Key_Find</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#552#;
+   <FONT COLOR=red><A NAME="157_4">Key_Help</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#553#;
+   <FONT COLOR=red><A NAME="158_4">Key_Mark</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#554#;
+   <FONT COLOR=red><A NAME="159_4">Key_Message</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#555#;
+   <FONT COLOR=red><A NAME="160_4">Key_Move</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#556#;
+   <FONT COLOR=red><A NAME="161_4">Key_Next</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#557#;
+   <FONT COLOR=red><A NAME="162_4">Key_Open</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#560#;
+   <FONT COLOR=red><A NAME="163_4">Key_Options</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#561#;
+   <FONT COLOR=red><A NAME="164_4">Key_Previous</A></FONT>                   : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#562#;
+   <FONT COLOR=red><A NAME="165_4">Key_Redo</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#563#;
+   <FONT COLOR=red><A NAME="166_4">Key_Reference</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#564#;
+   <FONT COLOR=red><A NAME="167_4">Key_Refresh</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#565#;
+   <FONT COLOR=red><A NAME="168_4">Key_Replace</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#566#;
+   <FONT COLOR=red><A NAME="169_4">Key_Restart</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#567#;
+   <FONT COLOR=red><A NAME="170_4">Key_Resume</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#570#;
+   <FONT COLOR=red><A NAME="171_4">Key_Save</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#571#;
+   <FONT COLOR=red><A NAME="172_4">Key_Shift_Begin</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#572#;
+   <FONT COLOR=red><A NAME="173_4">Key_Shift_Cancel</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#573#;
+   <FONT COLOR=red><A NAME="174_4">Key_Shift_Command</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#574#;
+   <FONT COLOR=red><A NAME="175_4">Key_Shift_Copy</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#575#;
+   <FONT COLOR=red><A NAME="176_4">Key_Shift_Create</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#576#;
+   <FONT COLOR=red><A NAME="177_4">Key_Shift_Delete_Char</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#577#;
+   <FONT COLOR=red><A NAME="178_4">Key_Shift_Delete_Line</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#600#;
+   <FONT COLOR=red><A NAME="179_4">Key_Select</A></FONT>                     : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#601#;
+   <FONT COLOR=red><A NAME="180_4">Key_Shift_End</A></FONT>                  : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#602#;
+   <FONT COLOR=red><A NAME="181_4">Key_Shift_Clear_End_Of_Line</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#603#;
+   <FONT COLOR=red><A NAME="182_4">Key_Shift_Exit</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#604#;
+   <FONT COLOR=red><A NAME="183_4">Key_Shift_Find</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#605#;
+   <FONT COLOR=red><A NAME="184_4">Key_Shift_Help</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#606#;
+   <FONT COLOR=red><A NAME="185_4">Key_Shift_Home</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#607#;
+   <FONT COLOR=red><A NAME="186_4">Key_Shift_Insert_Char</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#610#;
+   <FONT COLOR=red><A NAME="187_4">Key_Shift_Cursor_Left</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#611#;
+   <FONT COLOR=red><A NAME="188_4">Key_Shift_Message</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#612#;
+   <FONT COLOR=red><A NAME="189_4">Key_Shift_Move</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#613#;
+   <FONT COLOR=red><A NAME="190_4">Key_Shift_Next_Page</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#614#;
+   <FONT COLOR=red><A NAME="191_4">Key_Shift_Options</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#615#;
+   <FONT COLOR=red><A NAME="192_4">Key_Shift_Previous_Page</A></FONT>        : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#616#;
+   <FONT COLOR=red><A NAME="193_4">Key_Shift_Print</A></FONT>                : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#617#;
+   <FONT COLOR=red><A NAME="194_4">Key_Shift_Redo</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#620#;
+   <FONT COLOR=red><A NAME="195_4">Key_Shift_Replace</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#621#;
+   <FONT COLOR=red><A NAME="196_4">Key_Shift_Cursor_Right</A></FONT>         : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#622#;
+   <FONT COLOR=red><A NAME="197_4">Key_Shift_Resume</A></FONT>               : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#623#;
+   <FONT COLOR=red><A NAME="198_4">Key_Shift_Save</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#624#;
+   <FONT COLOR=red><A NAME="199_4">Key_Shift_Suspend</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#625#;
+   <FONT COLOR=red><A NAME="200_4">Key_Shift_Undo</A></FONT>                 : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#626#;
+   <FONT COLOR=red><A NAME="201_4">Key_Suspend</A></FONT>                    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#627#;
+   <FONT COLOR=red><A NAME="202_4">Key_Undo</A></FONT>                       : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#630#;
+   <FONT COLOR=red><A NAME="203_4">Key_Mouse</A></FONT>                      : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> := 8#631#;
    Key_Resize                     : <b>constant</b> Special_Key_Code := 8#632#;
 
    Key_Max                        : <b>constant</b> Special_Key_Code
    <FONT COLOR=green><EM>--  For those who like to use the original key names we produce them were</EM></FONT>
    <FONT COLOR=green><EM>--  they differ from the original. Please note that they may differ in</EM></FONT>
    <FONT COLOR=green><EM>--  lower/upper case.</EM></FONT>
-   <FONT COLOR=red><A NAME="218_4">KEY_DOWN</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#92_4">Key_Cursor_Down</A>;
-   <FONT COLOR=red><A NAME="219_4">KEY_UP</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#93_4">Key_Cursor_Up</A>;
-   <FONT COLOR=red><A NAME="220_4">KEY_LEFT</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#94_4">Key_Cursor_Left</A>;
-   <FONT COLOR=red><A NAME="221_4">KEY_RIGHT</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#122_4">Key_Cursor_Right</A>;
-   <FONT COLOR=red><A NAME="222_4">KEY_DL</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#123_4">Key_Delete_Line</A>;
-   <FONT COLOR=red><A NAME="223_4">KEY_IL</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#124_4">Key_Insert_Line</A>;
-   <FONT COLOR=red><A NAME="224_4">KEY_DC</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#125_4">Key_Delete_Char</A>;
-   <FONT COLOR=red><A NAME="225_4">KEY_IC</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#126_4">Key_Insert_Char</A>;
-   <FONT COLOR=red><A NAME="226_4">KEY_EIC</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#127_4">Key_Exit_Insert_Mode</A>;
-   <FONT COLOR=red><A NAME="227_4">KEY_CLEAR</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#128_4">Key_Clear_Screen</A>;
-   <FONT COLOR=red><A NAME="228_4">KEY_EOS</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#129_4">Key_Clear_End_Of_Screen</A>;
-   <FONT COLOR=red><A NAME="229_4">KEY_EOL</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#130_4">Key_Clear_End_Of_Line</A>;
-   <FONT COLOR=red><A NAME="230_4">KEY_SF</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#131_4">Key_Scroll_1_Forward</A>;
-   <FONT COLOR=red><A NAME="231_4">KEY_SR</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#132_4">Key_Scroll_1_Backward</A>;
-   <FONT COLOR=red><A NAME="232_4">KEY_NPAGE</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#133_4">Key_Next_Page</A>;
-   <FONT COLOR=red><A NAME="233_4">KEY_PPAGE</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#134_4">Key_Previous_Page</A>;
-   <FONT COLOR=red><A NAME="234_4">KEY_STAB</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#135_4">Key_Set_Tab</A>;
-   <FONT COLOR=red><A NAME="235_4">KEY_CTAB</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#136_4">Key_Clear_Tab</A>;
-   <FONT COLOR=red><A NAME="236_4">KEY_CATAB</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#137_4">Key_Clear_All_Tabs</A>;
-   <FONT COLOR=red><A NAME="237_4">KEY_ENTER</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#138_4">Key_Enter_Or_Send</A>;
-   <FONT COLOR=red><A NAME="238_4">KEY_SRESET</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#141_4">Key_Soft_Reset</A>;
-   <FONT COLOR=red><A NAME="239_4">KEY_LL</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#142_4">Key_Bottom</A>;
-   <FONT COLOR=red><A NAME="240_4">KEY_A1</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#143_4">Key_Upper_Left_Of_Keypad</A>;
-   <FONT COLOR=red><A NAME="241_4">KEY_A3</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#144_4">Key_Upper_Right_Of_Keypad</A>;
-   <FONT COLOR=red><A NAME="242_4">KEY_B2</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#145_4">Key_Center_Of_Keypad</A>;
-   <FONT COLOR=red><A NAME="243_4">KEY_C1</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#146_4">Key_Lower_Left_Of_Keypad</A>;
-   <FONT COLOR=red><A NAME="244_4">KEY_C3</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#147_4">Key_Lower_Right_Of_Keypad</A>;
-   <FONT COLOR=red><A NAME="245_4">KEY_BTAB</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#148_4">Key_Back_Tab</A>;
-   <FONT COLOR=red><A NAME="246_4">KEY_BEG</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#172_4">Key_Beginning</A>;
-   <FONT COLOR=red><A NAME="247_4">KEY_SBEG</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#173_4">Key_Shift_Begin</A>;
-   <FONT COLOR=red><A NAME="248_4">KEY_SCANCEL</A></FONT>      : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#174_4">Key_Shift_Cancel</A>;
-   <FONT COLOR=red><A NAME="249_4">KEY_SCOMMAND</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#175_4">Key_Shift_Command</A>;
-   <FONT COLOR=red><A NAME="250_4">KEY_SCOPY</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#176_4">Key_Shift_Copy</A>;
-   <FONT COLOR=red><A NAME="251_4">KEY_SCREATE</A></FONT>      : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#177_4">Key_Shift_Create</A>;
-   <FONT COLOR=red><A NAME="252_4">KEY_SDC</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#178_4">Key_Shift_Delete_Char</A>;
-   <FONT COLOR=red><A NAME="253_4">KEY_SDL</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#180_4">Key_Shift_Delete_Line</A>;
-   <FONT COLOR=red><A NAME="254_4">KEY_SEND</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#181_4">Key_Shift_End</A>;
-   <FONT COLOR=red><A NAME="255_4">KEY_SEOL</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#182_4">Key_Shift_Clear_End_Of_Line</A>;
-   <FONT COLOR=red><A NAME="256_4">KEY_SEXIT</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#183_4">Key_Shift_Exit</A>;
-   <FONT COLOR=red><A NAME="257_4">KEY_SFIND</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#184_4">Key_Shift_Find</A>;
-   <FONT COLOR=red><A NAME="258_4">KEY_SHELP</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#185_4">Key_Shift_Help</A>;
-   <FONT COLOR=red><A NAME="259_4">KEY_SHOME</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#186_4">Key_Shift_Home</A>;
-   <FONT COLOR=red><A NAME="260_4">KEY_SIC</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#187_4">Key_Shift_Insert_Char</A>;
-   <FONT COLOR=red><A NAME="261_4">KEY_SLEFT</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#188_4">Key_Shift_Cursor_Left</A>;
-   <FONT COLOR=red><A NAME="262_4">KEY_SMESSAGE</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#189_4">Key_Shift_Message</A>;
-   <FONT COLOR=red><A NAME="263_4">KEY_SMOVE</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#190_4">Key_Shift_Move</A>;
-   <FONT COLOR=red><A NAME="264_4">KEY_SNEXT</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#191_4">Key_Shift_Next_Page</A>;
-   <FONT COLOR=red><A NAME="265_4">KEY_SOPTIONS</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#192_4">Key_Shift_Options</A>;
-   <FONT COLOR=red><A NAME="266_4">KEY_SPREVIOUS</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#193_4">Key_Shift_Previous_Page</A>;
-   <FONT COLOR=red><A NAME="267_4">KEY_SPRINT</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#194_4">Key_Shift_Print</A>;
-   <FONT COLOR=red><A NAME="268_4">KEY_SREDO</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#195_4">Key_Shift_Redo</A>;
-   <FONT COLOR=red><A NAME="269_4">KEY_SREPLACE</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#196_4">Key_Shift_Replace</A>;
-   <FONT COLOR=red><A NAME="270_4">KEY_SRIGHT</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#197_4">Key_Shift_Cursor_Right</A>;
-   <FONT COLOR=red><A NAME="271_4">KEY_SRSUME</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#198_4">Key_Shift_Resume</A>;
-   <FONT COLOR=red><A NAME="272_4">KEY_SSAVE</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#199_4">Key_Shift_Save</A>;
-   <FONT COLOR=red><A NAME="273_4">KEY_SSUSPEND</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#77_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#200_4">Key_Shift_Suspend</A>;
+   <FONT COLOR=red><A NAME="217_4">KEY_DOWN</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#91_4">Key_Cursor_Down</A>;
+   <FONT COLOR=red><A NAME="218_4">KEY_UP</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#92_4">Key_Cursor_Up</A>;
+   <FONT COLOR=red><A NAME="219_4">KEY_LEFT</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#93_4">Key_Cursor_Left</A>;
+   <FONT COLOR=red><A NAME="220_4">KEY_RIGHT</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#121_4">Key_Cursor_Right</A>;
+   <FONT COLOR=red><A NAME="221_4">KEY_DL</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#122_4">Key_Delete_Line</A>;
+   <FONT COLOR=red><A NAME="222_4">KEY_IL</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#123_4">Key_Insert_Line</A>;
+   <FONT COLOR=red><A NAME="223_4">KEY_DC</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#124_4">Key_Delete_Char</A>;
+   <FONT COLOR=red><A NAME="224_4">KEY_IC</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#125_4">Key_Insert_Char</A>;
+   <FONT COLOR=red><A NAME="225_4">KEY_EIC</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#126_4">Key_Exit_Insert_Mode</A>;
+   <FONT COLOR=red><A NAME="226_4">KEY_CLEAR</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#127_4">Key_Clear_Screen</A>;
+   <FONT COLOR=red><A NAME="227_4">KEY_EOS</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#128_4">Key_Clear_End_Of_Screen</A>;
+   <FONT COLOR=red><A NAME="228_4">KEY_EOL</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#129_4">Key_Clear_End_Of_Line</A>;
+   <FONT COLOR=red><A NAME="229_4">KEY_SF</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#130_4">Key_Scroll_1_Forward</A>;
+   <FONT COLOR=red><A NAME="230_4">KEY_SR</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#131_4">Key_Scroll_1_Backward</A>;
+   <FONT COLOR=red><A NAME="231_4">KEY_NPAGE</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#132_4">Key_Next_Page</A>;
+   <FONT COLOR=red><A NAME="232_4">KEY_PPAGE</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#133_4">Key_Previous_Page</A>;
+   <FONT COLOR=red><A NAME="233_4">KEY_STAB</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#134_4">Key_Set_Tab</A>;
+   <FONT COLOR=red><A NAME="234_4">KEY_CTAB</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#135_4">Key_Clear_Tab</A>;
+   <FONT COLOR=red><A NAME="235_4">KEY_CATAB</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#136_4">Key_Clear_All_Tabs</A>;
+   <FONT COLOR=red><A NAME="236_4">KEY_ENTER</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#137_4">Key_Enter_Or_Send</A>;
+   <FONT COLOR=red><A NAME="237_4">KEY_SRESET</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#140_4">Key_Soft_Reset</A>;
+   <FONT COLOR=red><A NAME="238_4">KEY_LL</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#141_4">Key_Bottom</A>;
+   <FONT COLOR=red><A NAME="239_4">KEY_A1</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#142_4">Key_Upper_Left_Of_Keypad</A>;
+   <FONT COLOR=red><A NAME="240_4">KEY_A3</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#143_4">Key_Upper_Right_Of_Keypad</A>;
+   <FONT COLOR=red><A NAME="241_4">KEY_B2</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#144_4">Key_Center_Of_Keypad</A>;
+   <FONT COLOR=red><A NAME="242_4">KEY_C1</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#145_4">Key_Lower_Left_Of_Keypad</A>;
+   <FONT COLOR=red><A NAME="243_4">KEY_C3</A></FONT>           : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#146_4">Key_Lower_Right_Of_Keypad</A>;
+   <FONT COLOR=red><A NAME="244_4">KEY_BTAB</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#147_4">Key_Back_Tab</A>;
+   <FONT COLOR=red><A NAME="245_4">KEY_BEG</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#171_4">Key_Beginning</A>;
+   <FONT COLOR=red><A NAME="246_4">KEY_SBEG</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#172_4">Key_Shift_Begin</A>;
+   <FONT COLOR=red><A NAME="247_4">KEY_SCANCEL</A></FONT>      : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#173_4">Key_Shift_Cancel</A>;
+   <FONT COLOR=red><A NAME="248_4">KEY_SCOMMAND</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#174_4">Key_Shift_Command</A>;
+   <FONT COLOR=red><A NAME="249_4">KEY_SCOPY</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#175_4">Key_Shift_Copy</A>;
+   <FONT COLOR=red><A NAME="250_4">KEY_SCREATE</A></FONT>      : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#176_4">Key_Shift_Create</A>;
+   <FONT COLOR=red><A NAME="251_4">KEY_SDC</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#177_4">Key_Shift_Delete_Char</A>;
+   <FONT COLOR=red><A NAME="252_4">KEY_SDL</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#179_4">Key_Shift_Delete_Line</A>;
+   <FONT COLOR=red><A NAME="253_4">KEY_SEND</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#180_4">Key_Shift_End</A>;
+   <FONT COLOR=red><A NAME="254_4">KEY_SEOL</A></FONT>         : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#181_4">Key_Shift_Clear_End_Of_Line</A>;
+   <FONT COLOR=red><A NAME="255_4">KEY_SEXIT</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#182_4">Key_Shift_Exit</A>;
+   <FONT COLOR=red><A NAME="256_4">KEY_SFIND</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#183_4">Key_Shift_Find</A>;
+   <FONT COLOR=red><A NAME="257_4">KEY_SHELP</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#184_4">Key_Shift_Help</A>;
+   <FONT COLOR=red><A NAME="258_4">KEY_SHOME</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#185_4">Key_Shift_Home</A>;
+   <FONT COLOR=red><A NAME="259_4">KEY_SIC</A></FONT>          : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#186_4">Key_Shift_Insert_Char</A>;
+   <FONT COLOR=red><A NAME="260_4">KEY_SLEFT</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#187_4">Key_Shift_Cursor_Left</A>;
+   <FONT COLOR=red><A NAME="261_4">KEY_SMESSAGE</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#188_4">Key_Shift_Message</A>;
+   <FONT COLOR=red><A NAME="262_4">KEY_SMOVE</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#189_4">Key_Shift_Move</A>;
+   <FONT COLOR=red><A NAME="263_4">KEY_SNEXT</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#190_4">Key_Shift_Next_Page</A>;
+   <FONT COLOR=red><A NAME="264_4">KEY_SOPTIONS</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#191_4">Key_Shift_Options</A>;
+   <FONT COLOR=red><A NAME="265_4">KEY_SPREVIOUS</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#192_4">Key_Shift_Previous_Page</A>;
+   <FONT COLOR=red><A NAME="266_4">KEY_SPRINT</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#193_4">Key_Shift_Print</A>;
+   <FONT COLOR=red><A NAME="267_4">KEY_SREDO</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#194_4">Key_Shift_Redo</A>;
+   <FONT COLOR=red><A NAME="268_4">KEY_SREPLACE</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#195_4">Key_Shift_Replace</A>;
+   <FONT COLOR=red><A NAME="269_4">KEY_SRIGHT</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#196_4">Key_Shift_Cursor_Right</A>;
+   <FONT COLOR=red><A NAME="270_4">KEY_SRSUME</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#197_4">Key_Shift_Resume</A>;
+   <FONT COLOR=red><A NAME="271_4">KEY_SSAVE</A></FONT>        : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#198_4">Key_Shift_Save</A>;
+   <FONT COLOR=red><A NAME="272_4">KEY_SSUSPEND</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#199_4">Key_Shift_Suspend</A>;
    KEY_SUNDO        : Special_Key_Code <b>renames</b> Key_Shift_Undo;
 
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
 
-   <b>type</b><A HREF="terminal_interface-curses__ads.htm#277_9"> </A>Color_Number <b>is</b> <b>range</b><A HREF="interfac__ads.htm#23_9"> </A>-1 .. Integer (Interfaces.C.short'Last);
+   <b>type</b><A HREF="terminal_interface-curses__ads.htm#276_9"> </A>Color_Number <b>is</b> <b>range</b><A HREF="interfac__ads.htm#23_9"> </A>-1 .. Integer (Interfaces.C.short'Last);
    <b>for</b> Color_Number'Size <b>use</b> Interfaces.C.short'Size;
    <FONT COLOR=green><EM>--  (n)curses uses a short for the color index</EM></FONT>
    <FONT COLOR=green><EM>--  The model is, that a Color_Number is an index into an array of</EM></FONT>
    <FONT COLOR=green><EM>--  (potentially) definable colors. Some of those indices are</EM></FONT>
    <FONT COLOR=green><EM>--  predefined (see below), although they may not really exist.</EM></FONT>
 
-   <FONT COLOR=red><A NAME="285_4">Default_Color</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := -1;
-   <FONT COLOR=red><A NAME="286_4">Black</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := 0;
-   <FONT COLOR=red><A NAME="287_4">Red</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := 1;
-   <FONT COLOR=red><A NAME="288_4">Green</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := 2;
-   <FONT COLOR=red><A NAME="289_4">Yellow</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := 3;
-   <FONT COLOR=red><A NAME="290_4">Blue</A></FONT>             : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := 4;
-   <FONT COLOR=red><A NAME="291_4">Magenta</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := 5;
-   <FONT COLOR=red><A NAME="292_4">Cyan</A></FONT>             : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := 6;
+   <FONT COLOR=red><A NAME="284_4">Default_Color</A></FONT>    : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := -1;
+   <FONT COLOR=red><A NAME="285_4">Black</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := 0;
+   <FONT COLOR=red><A NAME="286_4">Red</A></FONT>              : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := 1;
+   <FONT COLOR=red><A NAME="287_4">Green</A></FONT>            : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := 2;
+   <FONT COLOR=red><A NAME="288_4">Yellow</A></FONT>           : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := 3;
+   <FONT COLOR=red><A NAME="289_4">Blue</A></FONT>             : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := 4;
+   <FONT COLOR=red><A NAME="290_4">Magenta</A></FONT>          : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := 5;
+   <FONT COLOR=red><A NAME="291_4">Cyan</A></FONT>             : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := 6;
    White            : <b>constant</b> Color_Number := 7;
 
-   <b>type</b><A HREF="terminal_interface-curses__ads.htm#294_9"> </A>RGB_Value <b>is</b> <b>range</b><A HREF="interfac__ads.htm#23_9"> </A>0 .. Integer (Interfaces.C.short'Last);
+   <b>type</b><A HREF="terminal_interface-curses__ads.htm#293_9"> </A>RGB_Value <b>is</b> <b>range</b><A HREF="interfac__ads.htm#23_9"> </A>0 .. Integer (Interfaces.C.short'Last);
    <b>for</b> RGB_Value'Size <b>use</b> Interfaces.C.short'Size;
    <FONT COLOR=green><EM>--  Some system may allow to redefine a color by setting RGB values.</EM></FONT>
 
-   <b>type</b><A HREF="terminal_interface-curses__ads.htm#298_9"> </A>Color_Pair <b>is</b> <b>range</b> 0 .. 255;
+   <b>type</b><A HREF="terminal_interface-curses__ads.htm#297_9"> </A>Color_Pair <b>is</b> <b>range</b> 0 .. 255;
    <b>for</b> Color_Pair'Size <b>use</b> 8;
    <b>subtype</b> Redefinable_Color_Pair <b>is</b> Color_Pair <b>range</b> 1 .. 255;
    <FONT COLOR=green><EM>--  (n)curses reserves 1 Byte for the color-pair number. Color Pair 0</EM></FONT>
 
    <b>type</b> Character_Attribute_Set <b>is</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="309_10">Stand_Out</A></FONT>               : Boolean;
-         <FONT COLOR=red><A NAME="310_10">Under_Line</A></FONT>              : Boolean;
-         <FONT COLOR=red><A NAME="311_10">Reverse_Video</A></FONT>           : Boolean;
-         <FONT COLOR=red><A NAME="312_10">Blink</A></FONT>                   : Boolean;
-         <FONT COLOR=red><A NAME="313_10">Dim_Character</A></FONT>           : Boolean;
-         <FONT COLOR=red><A NAME="314_10">Bold_Character</A></FONT>          : Boolean;
-         <FONT COLOR=red><A NAME="315_10">Alternate_Character_Set</A></FONT> : Boolean;
-         <FONT COLOR=red><A NAME="316_10">Invisible_Character</A></FONT>     : Boolean;
-         <FONT COLOR=red><A NAME="317_10">Protected_Character</A></FONT>     : Boolean;
-         <FONT COLOR=red><A NAME="318_10">Horizontal</A></FONT>              : Boolean;
-         <FONT COLOR=red><A NAME="319_10">Left</A></FONT>                    : Boolean;
-         <FONT COLOR=red><A NAME="320_10">Low</A></FONT>                     : Boolean;
-         <FONT COLOR=red><A NAME="321_10">Right</A></FONT>                   : Boolean;
-         <FONT COLOR=red><A NAME="322_10">Top</A></FONT>                     : Boolean;
+         <FONT COLOR=red><A NAME="308_10">Stand_Out</A></FONT>               : Boolean;
+         <FONT COLOR=red><A NAME="309_10">Under_Line</A></FONT>              : Boolean;
+         <FONT COLOR=red><A NAME="310_10">Reverse_Video</A></FONT>           : Boolean;
+         <FONT COLOR=red><A NAME="311_10">Blink</A></FONT>                   : Boolean;
+         <FONT COLOR=red><A NAME="312_10">Dim_Character</A></FONT>           : Boolean;
+         <FONT COLOR=red><A NAME="313_10">Bold_Character</A></FONT>          : Boolean;
+         <FONT COLOR=red><A NAME="314_10">Alternate_Character_Set</A></FONT> : Boolean;
+         <FONT COLOR=red><A NAME="315_10">Invisible_Character</A></FONT>     : Boolean;
+         <FONT COLOR=red><A NAME="316_10">Protected_Character</A></FONT>     : Boolean;
+         <FONT COLOR=red><A NAME="317_10">Horizontal</A></FONT>              : Boolean;
+         <FONT COLOR=red><A NAME="318_10">Left</A></FONT>                    : Boolean;
+         <FONT COLOR=red><A NAME="319_10">Low</A></FONT>                     : Boolean;
+         <FONT COLOR=red><A NAME="320_10">Right</A></FONT>                   : Boolean;
+         <FONT COLOR=red><A NAME="321_10">Top</A></FONT>                     : Boolean;
          Vertical                : Boolean;
-      <b>end</b> <b>record</b><A HREF="terminal_interface-curses__ads.htm#306_9">;</A>
+      <b>end</b> <b>record</b><A HREF="terminal_interface-curses__ads.htm#305_9">;</A>
    <b>pragma</b> Pack (Character_Attribute_Set);
    <b>pragma</b> Convention (C, Character_Attribute_Set);
 
 
    <b>type</b> Attributed_Character <b>is</b>
       <b>record</b>
-         <FONT COLOR=red><A NAME="355_10">Attr</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A>;
-         <FONT COLOR=red><A NAME="356_10">Color</A></FONT> : Color_Pair;
-         Ch    : Character;
+         <FONT COLOR=red><A NAME="354_10">Attr</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A>;
+         <FONT COLOR=red><A NAME="355_10">Color</A></FONT> : Color_Pair;
+         Ch    :<A HREF="terminal_interface-curses__ads.htm#351_9"> </A>Character;
       <b>end</b> <b>record</b>;
    <b>pragma</b> Convention (C, Attributed_Character);
    <FONT COLOR=green><EM>--  This is the counterpart for the chtype in C.</EM></FONT>
       <FONT COLOR=green><EM>--               different on your system.</EM></FONT>
 
    Default_Character : <b>constant</b> Attributed_Character
-     := (Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#298_9">Character</A>'First,
+     := (Ch    =&gt; <A HREF="terminal_interface-curses__ads.htm#297_9">Character</A>'First,
          Color =&gt; Color_Pair'First,
          Attr  =&gt; (<b>others</b> =&gt; False));  <FONT COLOR=green><EM>--  preelaboratable Normal_Video</EM></FONT>
 
    <FONT COLOR=green><EM>------------------</EM></FONT>
    <FONT COLOR=green><EM>--  Exceptions  --</EM></FONT>
    <FONT COLOR=green><EM>------------------</EM></FONT>
-   <FONT COLOR=red><A NAME="384_4">Curses_Exception</A></FONT>     : <b>exception</b>;
+   <FONT COLOR=red><A NAME="383_4">Curses_Exception</A></FONT>     : <b>exception</b>;
    Wrong_Curses_Version : <b>exception</b>;
 
    <FONT COLOR=green><EM>--  Those exceptions are raised by the ETI (Extended Terminal Interface)</EM></FONT>
    <FONT COLOR=green><EM>--  subpackets for Menu and Forms handling.</EM></FONT>
    <FONT COLOR=green><EM>--</EM></FONT>
-   <FONT COLOR=red><A NAME="390_4">Eti_System_Error</A></FONT>    : <b>exception</b>;
-   <FONT COLOR=red><A NAME="391_4">Eti_Bad_Argument</A></FONT>    : <b>exception</b>;
-   <FONT COLOR=red><A NAME="392_4">Eti_Posted</A></FONT>          : <b>exception</b>;
-   <FONT COLOR=red><A NAME="393_4">Eti_Connected</A></FONT>       : <b>exception</b>;
-   <FONT COLOR=red><A NAME="394_4">Eti_Bad_State</A></FONT>       : <b>exception</b>;
-   <FONT COLOR=red><A NAME="395_4">Eti_No_Room</A></FONT>         : <b>exception</b>;
-   <FONT COLOR=red><A NAME="396_4">Eti_Not_Posted</A></FONT>      : <b>exception</b>;
-   <FONT COLOR=red><A NAME="397_4">Eti_Unknown_Command</A></FONT> : <b>exception</b>;
-   <FONT COLOR=red><A NAME="398_4">Eti_No_Match</A></FONT>        : <b>exception</b>;
-   <FONT COLOR=red><A NAME="399_4">Eti_Not_Selectable</A></FONT>  : <b>exception</b>;
-   <FONT COLOR=red><A NAME="400_4">Eti_Not_Connected</A></FONT>   : <b>exception</b>;
-   <FONT COLOR=red><A NAME="401_4">Eti_Request_Denied</A></FONT>  : <b>exception</b>;
-   <FONT COLOR=red><A NAME="402_4">Eti_Invalid_Field</A></FONT>   : <b>exception</b>;
+   <FONT COLOR=red><A NAME="389_4">Eti_System_Error</A></FONT>    : <b>exception</b>;
+   <FONT COLOR=red><A NAME="390_4">Eti_Bad_Argument</A></FONT>    : <b>exception</b>;
+   <FONT COLOR=red><A NAME="391_4">Eti_Posted</A></FONT>          : <b>exception</b>;
+   <FONT COLOR=red><A NAME="392_4">Eti_Connected</A></FONT>       : <b>exception</b>;
+   <FONT COLOR=red><A NAME="393_4">Eti_Bad_State</A></FONT>       : <b>exception</b>;
+   <FONT COLOR=red><A NAME="394_4">Eti_No_Room</A></FONT>         : <b>exception</b>;
+   <FONT COLOR=red><A NAME="395_4">Eti_Not_Posted</A></FONT>      : <b>exception</b>;
+   <FONT COLOR=red><A NAME="396_4">Eti_Unknown_Command</A></FONT> : <b>exception</b>;
+   <FONT COLOR=red><A NAME="397_4">Eti_No_Match</A></FONT>        : <b>exception</b>;
+   <FONT COLOR=red><A NAME="398_4">Eti_Not_Selectable</A></FONT>  : <b>exception</b>;
+   <FONT COLOR=red><A NAME="399_4">Eti_Not_Connected</A></FONT>   : <b>exception</b>;
+   <FONT COLOR=red><A NAME="400_4">Eti_Request_Denied</A></FONT>  : <b>exception</b>;
+   <FONT COLOR=red><A NAME="401_4">Eti_Invalid_Field</A></FONT>   : <b>exception</b>;
    Eti_Current         : <b>exception</b>;
 
    <FONT COLOR=green><EM>--------------------------------------------------------------------------</EM></FONT>
    <FONT COLOR=green><EM>--  this is to use functions.</EM></FONT>
    <FONT COLOR=green><EM>--------------------------------------------------------------------------</EM></FONT>
 
-   <b>function</b> Lines <A HREF="terminal_interface-curses__ads.htm#412_13"> </A>          <b>return</b> Line_Count;
+   <b>function</b> Lines <A HREF="terminal_interface-curses__ads.htm#411_13"> </A>          <b>return</b> Line_Count;
    <b>pragma</b> Inline (Lines);
 
    <b>function</b> Columns          <b>return</b> Column_Count;
    <FONT COLOR=green><EM>--  You must use this constants as indices into the ACS_Map array</EM></FONT>
    <FONT COLOR=green><EM>--  to get the corresponding attributed character at runtime.</EM></FONT>
    <FONT COLOR=green><EM>--</EM></FONT>
-   <FONT COLOR=red><A NAME="437_4">ACS_Upper_Left_Corner</A></FONT>    : <b>constant</b> Character := 'l';
-   <FONT COLOR=red><A NAME="438_4">ACS_Lower_Left_Corner</A></FONT>    : <b>constant</b> Character := 'm';
-   <FONT COLOR=red><A NAME="439_4">ACS_Upper_Right_Corner</A></FONT>   : <b>constant</b> Character := 'k';
-   <FONT COLOR=red><A NAME="440_4">ACS_Lower_Right_Corner</A></FONT>   : <b>constant</b> Character := 'j';
-   <FONT COLOR=red><A NAME="441_4">ACS_Left_Tee</A></FONT>             : <b>constant</b> Character := 't';
-   <FONT COLOR=red><A NAME="442_4">ACS_Right_Tee</A></FONT>            : <b>constant</b> Character := 'u';
-   <FONT COLOR=red><A NAME="443_4">ACS_Bottom_Tee</A></FONT>           : <b>constant</b> Character := 'v';
-   <FONT COLOR=red><A NAME="444_4">ACS_Top_Tee</A></FONT>              : <b>constant</b> Character := 'w';
-   <FONT COLOR=red><A NAME="445_4">ACS_Horizontal_Line</A></FONT>      : <b>constant</b> Character := 'q';
-   <FONT COLOR=red><A NAME="446_4">ACS_Vertical_Line</A></FONT>        : <b>constant</b> Character := 'x';
-   <FONT COLOR=red><A NAME="447_4">ACS_Plus_Symbol</A></FONT>          : <b>constant</b> Character := 'n';
-   <FONT COLOR=red><A NAME="448_4">ACS_Scan_Line_1</A></FONT>          : <b>constant</b> Character := 'o';
-   <FONT COLOR=red><A NAME="449_4">ACS_Scan_Line_9</A></FONT>          : <b>constant</b> Character := 's';
-   <FONT COLOR=red><A NAME="450_4">ACS_Diamond</A></FONT>              : <b>constant</b> Character := Character'Val (96);
-   <FONT COLOR=red><A NAME="451_4">ACS_Checker_Board</A></FONT>        : <b>constant</b> Character := 'a';
-   <FONT COLOR=red><A NAME="452_4">ACS_Degree</A></FONT>               : <b>constant</b> Character := 'f';
-   <FONT COLOR=red><A NAME="453_4">ACS_Plus_Minus</A></FONT>           : <b>constant</b> Character := 'g';
-   <FONT COLOR=red><A NAME="454_4">ACS_Bullet</A></FONT>               : <b>constant</b> Character := '~';
-   <FONT COLOR=red><A NAME="455_4">ACS_Left_Arrow</A></FONT>           : <b>constant</b> Character := ',';
-   <FONT COLOR=red><A NAME="456_4">ACS_Right_Arrow</A></FONT>          : <b>constant</b> Character := '+';
-   <FONT COLOR=red><A NAME="457_4">ACS_Down_Arrow</A></FONT>           : <b>constant</b> Character := '.';
-   <FONT COLOR=red><A NAME="458_4">ACS_Up_Arrow</A></FONT>             : <b>constant</b> Character := '-';
-   <FONT COLOR=red><A NAME="459_4">ACS_Board_Of_Squares</A></FONT>     : <b>constant</b> Character := 'h';
-   <FONT COLOR=red><A NAME="460_4">ACS_Lantern</A></FONT>              : <b>constant</b> Character := 'i';
-   <FONT COLOR=red><A NAME="461_4">ACS_Solid_Block</A></FONT>          : <b>constant</b> Character := '0';
-   <FONT COLOR=red><A NAME="462_4">ACS_Scan_Line_3</A></FONT>          : <b>constant</b> Character := 'p';
-   <FONT COLOR=red><A NAME="463_4">ACS_Scan_Line_7</A></FONT>          : <b>constant</b> Character := 'r';
-   <FONT COLOR=red><A NAME="464_4">ACS_Less_Or_Equal</A></FONT>        : <b>constant</b> Character := 'y';
-   <FONT COLOR=red><A NAME="465_4">ACS_Greater_Or_Equal</A></FONT>     : <b>constant</b> Character := 'z';
-   <FONT COLOR=red><A NAME="466_4">ACS_PI</A></FONT>                   : <b>constant</b> Character := '{';
-   <FONT COLOR=red><A NAME="467_4">ACS_Not_Equal</A></FONT>            : <b>constant</b> Character := '|';
+   <FONT COLOR=red><A NAME="436_4">ACS_Upper_Left_Corner</A></FONT>    : <b>constant</b> Character := 'l';
+   <FONT COLOR=red><A NAME="437_4">ACS_Lower_Left_Corner</A></FONT>    : <b>constant</b> Character := 'm';
+   <FONT COLOR=red><A NAME="438_4">ACS_Upper_Right_Corner</A></FONT>   : <b>constant</b> Character := 'k';
+   <FONT COLOR=red><A NAME="439_4">ACS_Lower_Right_Corner</A></FONT>   : <b>constant</b> Character := 'j';
+   <FONT COLOR=red><A NAME="440_4">ACS_Left_Tee</A></FONT>             : <b>constant</b> Character := 't';
+   <FONT COLOR=red><A NAME="441_4">ACS_Right_Tee</A></FONT>            : <b>constant</b> Character := 'u';
+   <FONT COLOR=red><A NAME="442_4">ACS_Bottom_Tee</A></FONT>           : <b>constant</b> Character := 'v';
+   <FONT COLOR=red><A NAME="443_4">ACS_Top_Tee</A></FONT>              : <b>constant</b> Character := 'w';
+   <FONT COLOR=red><A NAME="444_4">ACS_Horizontal_Line</A></FONT>      : <b>constant</b> Character := 'q';
+   <FONT COLOR=red><A NAME="445_4">ACS_Vertical_Line</A></FONT>        : <b>constant</b> Character := 'x';
+   <FONT COLOR=red><A NAME="446_4">ACS_Plus_Symbol</A></FONT>          : <b>constant</b> Character := 'n';
+   <FONT COLOR=red><A NAME="447_4">ACS_Scan_Line_1</A></FONT>          : <b>constant</b> Character := 'o';
+   <FONT COLOR=red><A NAME="448_4">ACS_Scan_Line_9</A></FONT>          : <b>constant</b> Character := 's';
+   <FONT COLOR=red><A NAME="449_4">ACS_Diamond</A></FONT>              : <b>constant</b> Character := Character'Val (96);
+   <FONT COLOR=red><A NAME="450_4">ACS_Checker_Board</A></FONT>        : <b>constant</b> Character := 'a';
+   <FONT COLOR=red><A NAME="451_4">ACS_Degree</A></FONT>               : <b>constant</b> Character := 'f';
+   <FONT COLOR=red><A NAME="452_4">ACS_Plus_Minus</A></FONT>           : <b>constant</b> Character := 'g';
+   <FONT COLOR=red><A NAME="453_4">ACS_Bullet</A></FONT>               : <b>constant</b> Character := '~';
+   <FONT COLOR=red><A NAME="454_4">ACS_Left_Arrow</A></FONT>           : <b>constant</b> Character := ',';
+   <FONT COLOR=red><A NAME="455_4">ACS_Right_Arrow</A></FONT>          : <b>constant</b> Character := '+';
+   <FONT COLOR=red><A NAME="456_4">ACS_Down_Arrow</A></FONT>           : <b>constant</b> Character := '.';
+   <FONT COLOR=red><A NAME="457_4">ACS_Up_Arrow</A></FONT>             : <b>constant</b> Character := '-';
+   <FONT COLOR=red><A NAME="458_4">ACS_Board_Of_Squares</A></FONT>     : <b>constant</b> Character := 'h';
+   <FONT COLOR=red><A NAME="459_4">ACS_Lantern</A></FONT>              : <b>constant</b> Character := 'i';
+   <FONT COLOR=red><A NAME="460_4">ACS_Solid_Block</A></FONT>          : <b>constant</b> Character := '0';
+   <FONT COLOR=red><A NAME="461_4">ACS_Scan_Line_3</A></FONT>          : <b>constant</b> Character := 'p';
+   <FONT COLOR=red><A NAME="462_4">ACS_Scan_Line_7</A></FONT>          : <b>constant</b> Character := 'r';
+   <FONT COLOR=red><A NAME="463_4">ACS_Less_Or_Equal</A></FONT>        : <b>constant</b> Character := 'y';
+   <FONT COLOR=red><A NAME="464_4">ACS_Greater_Or_Equal</A></FONT>     : <b>constant</b> Character := 'z';
+   <FONT COLOR=red><A NAME="465_4">ACS_PI</A></FONT>                   : <b>constant</b> Character := '{';
+   <FONT COLOR=red><A NAME="466_4">ACS_Not_Equal</A></FONT>            : <b>constant</b> Character := '|';
    ACS_Sterling             : <b>constant</b> Character := '}';
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <FONT COLOR=green><EM>--  #1A NAME="AFU_3"#2|</EM></FONT>
    <b>procedure</b> Init_Windows <b>renames</b> Init_Screen;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_initscr.3x.html">initscr()</A></EM></FONT>
-   <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#483_14">Init_Screen</A>);
+   <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#482_14">Init_Screen</A>);
    <b>pragma</b> Inline (Init_Windows);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_4"#2|</EM></FONT>
    <b>procedure</b> End_Windows;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_initscr.3x.html">endwin()</A></EM></FONT>
    <b>procedure</b> End_Screen <b>renames</b> End_Windows;
-   <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#491_14">End_Windows</A>);
+   <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#490_14">End_Windows</A>);
    <b>pragma</b> Inline (End_Screen);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_5"#2|</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_6"#2|</EM></FONT>
-   <b>procedure</b> Move_Cursor (<FONT COLOR=red><A NAME="506_27">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                          <FONT COLOR=red><A NAME="507_27">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+   <b>procedure</b> Move_Cursor (<FONT COLOR=red><A NAME="505_27">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                          <FONT COLOR=red><A NAME="506_27">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
                           Column : <b>in</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_move.3x.html">wmove()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: move()</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_7"#2|</EM></FONT>
-   <b>procedure</b> Add (<FONT COLOR=red><A NAME="518_19">Win</A></FONT> :  <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Window</A> := Standard_Window;
+   <b>procedure</b> Add (<FONT COLOR=red><A NAME="517_19">Win</A></FONT> :  <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Window</A> := Standard_Window;
                   Ch  :  <b>in</b> Attributed_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_addch.3x.html">waddch()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: addch()</EM></FONT>
 
-   <b>procedure</b> Add (<FONT COLOR=red><A NAME="523_19">Win</A></FONT> :  <b>in</b> Window := Standard_Window;
+   <b>procedure</b> Add (<FONT COLOR=red><A NAME="522_19">Win</A></FONT> :  <b>in</b> Window := Standard_Window;
                   Ch  :  <b>in</b> Character);
    <FONT COLOR=green><EM>--  Add a single character at the current logical cursor position to</EM></FONT>
    <FONT COLOR=green><EM>--  the window. Use the current windows attributes.</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_8"#2|</EM></FONT>
    <b>procedure</b> Add
-     (<FONT COLOR=red><A NAME="530_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="531_7">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="532_7">Column</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Column_Position</A>;
+     (<FONT COLOR=red><A NAME="529_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="530_7">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="531_7">Column</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Column_Position</A>;
       Ch     : <b>in</b> Attributed_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_addch.3x.html">mvwaddch()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvaddch()</EM></FONT>
 
    <b>procedure</b> Add
-     (<FONT COLOR=red><A NAME="538_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="539_7">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="540_7">Column</A></FONT> : <b>in</b> Column_Position;
+     (<FONT COLOR=red><A NAME="537_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="538_7">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="539_7">Column</A></FONT> : <b>in</b> Column_Position;
       Ch     : <b>in</b> Character);
    <FONT COLOR=green><EM>--  Move to the position and add a single character into the window</EM></FONT>
    <FONT COLOR=green><EM>--  There are more Add routines, so the Inline pragma follows later</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_9"#2|</EM></FONT>
    <b>procedure</b> Add_With_Immediate_Echo
-     (<FONT COLOR=red><A NAME="547_7">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Window</A> := Standard_Window;
+     (<FONT COLOR=red><A NAME="546_7">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Window</A> := Standard_Window;
       Ch  : <b>in</b> Attributed_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_addch.3x.html">wechochar()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: echochar()</EM></FONT>
 
    <b>procedure</b> Add_With_Immediate_Echo
-     (<FONT COLOR=red><A NAME="553_7">Win</A></FONT> : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="552_7">Win</A></FONT> : <b>in</b> Window := Standard_Window;
       Ch  : <b>in</b> Character);
    <FONT COLOR=green><EM>--  Add a character and do an immediate refresh of the screen.</EM></FONT>
    <b>pragma</b> Inline (Add_With_Immediate_Echo);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_10"#2|</EM></FONT>
    <b>function</b> Create
-     (<FONT COLOR=red><A NAME="565_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="566_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Count</A>;
-      <FONT COLOR=red><A NAME="567_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="564_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="565_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Count</A>;
+      <FONT COLOR=red><A NAME="566_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       First_Column_Position : Column_Position) <b>return</b> Window;
    <FONT COLOR=green><EM>--  Not Implemented: Default Number_Of_Lines, Number_Of_Columns</EM></FONT>
    <FONT COLOR=green><EM>--  the C version lets them be 0, see the man page.</EM></FONT>
    <b>pragma</b> Inline (Create);
 
    <b>function</b> New_Window
-     (<FONT COLOR=red><A NAME="575_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="576_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Count</A>;
-      <FONT COLOR=red><A NAME="577_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="574_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="575_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Count</A>;
+      <FONT COLOR=red><A NAME="576_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       First_Column_Position : Column_Position) <b>return</b> Window
      <b>renames</b> Create;
    <b>pragma</b> Inline (New_Window);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_12"#2|</EM></FONT>
    <b>function</b> Sub_Window
-     (<FONT COLOR=red><A NAME="590_7">Win</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#63_12">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="591_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="592_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Count</A>;
-      <FONT COLOR=red><A NAME="593_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="589_7">Win</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#62_12">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="590_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="591_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Count</A>;
+      <FONT COLOR=red><A NAME="592_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       First_Column_Position : Column_Position) <b>return</b> Window;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_window.3x.html">subwin()</A></EM></FONT>
    <b>pragma</b> Inline (Sub_Window);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_13"#2|</EM></FONT>
    <b>function</b> Derived_Window
-     (<FONT COLOR=red><A NAME="600_7">Win</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#63_12">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="601_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="602_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Count</A>;
-      <FONT COLOR=red><A NAME="603_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="599_7">Win</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#62_12">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="600_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="601_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Count</A>;
+      <FONT COLOR=red><A NAME="602_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       First_Column_Position : Column_Position) <b>return</b> Window;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_window.3x.html">derwin()</A></EM></FONT>
    <b>pragma</b> Inline (Derived_Window);
    <b>pragma</b> Inline (Duplicate);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_15"#2|</EM></FONT>
-   <b>procedure</b> Move_Window (<FONT COLOR=red><A NAME="614_27">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A>;
-                          <FONT COLOR=red><A NAME="615_27">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+   <b>procedure</b> Move_Window (<FONT COLOR=red><A NAME="613_27">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A>;
+                          <FONT COLOR=red><A NAME="614_27">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
                           Column : <b>in</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_window.3x.html">mvwin()</A></EM></FONT>
    <b>pragma</b> Inline (Move_Window);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_16"#2|</EM></FONT>
-   <b>procedure</b> Move_Derived_Window (<FONT COLOR=red><A NAME="621_35">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A>;
-                                  <FONT COLOR=red><A NAME="622_35">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+   <b>procedure</b> Move_Derived_Window (<FONT COLOR=red><A NAME="620_35">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A>;
+                                  <FONT COLOR=red><A NAME="621_35">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
                                   Column : <b>in</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_window.3x.html">mvderwin()</A></EM></FONT>
    <b>pragma</b> Inline (Move_Derived_Window);
    <b>pragma</b> Import (C, Synchronize_Downwards, "wsyncdown");
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_19"#2|</EM></FONT>
-   <b>procedure</b> Set_Synch_Mode (<FONT COLOR=red><A NAME="638_30">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
+   <b>procedure</b> Set_Synch_Mode (<FONT COLOR=red><A NAME="637_30">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
                              Mode : <b>in</b> Boolean := False);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_window.3x.html">syncok()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Synch_Mode);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_20"#2|</EM></FONT>
-   <b>procedure</b> Add (<FONT COLOR=red><A NAME="648_19">Win</A></FONT> : <b>in</b> Window := Standard_Window;
-                  <FONT COLOR=red><A NAME="649_19">Str</A></FONT> : <b>in</b> String;
+   <b>procedure</b> Add (<FONT COLOR=red><A NAME="647_19">Win</A></FONT> : <b>in</b> Window := Standard_Window;
+                  <FONT COLOR=red><A NAME="648_19">Str</A></FONT> : <b>in</b> String;
                   Len : <b>in</b> Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_addstr.3x.html">waddnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: waddstr()</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: addstr()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_21"#2|</EM></FONT>
-   <b>procedure</b> Add (<FONT COLOR=red><A NAME="657_19">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                  <FONT COLOR=red><A NAME="658_19">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                  <FONT COLOR=red><A NAME="659_19">Column</A></FONT> : <b>in</b> Column_Position;
-                  <FONT COLOR=red><A NAME="660_19">Str</A></FONT>    : <b>in</b> String;
+   <b>procedure</b> Add (<FONT COLOR=red><A NAME="656_19">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                  <FONT COLOR=red><A NAME="657_19">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                  <FONT COLOR=red><A NAME="658_19">Column</A></FONT> : <b>in</b> Column_Position;
+                  <FONT COLOR=red><A NAME="659_19">Str</A></FONT>    : <b>in</b> String;
                   Len    : <b>in</b> Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_addstr.3x.html">mvwaddnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvwaddstr()</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_22"#2|</EM></FONT>
-   <b>procedure</b> Add (<FONT COLOR=red><A NAME="672_19">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#376_9">Window</A> := Standard_Window;
-                  <FONT COLOR=red><A NAME="673_19">Str</A></FONT> : <b>in</b> Attributed_String;
+   <b>procedure</b> Add (<FONT COLOR=red><A NAME="671_19">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#375_9">Window</A> := Standard_Window;
+                  <FONT COLOR=red><A NAME="672_19">Str</A></FONT> : <b>in</b> Attributed_String;
                   Len : <b>in</b> Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_addchstr.3x.html">waddchnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: waddchstr()</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: addchstr()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_23"#2|</EM></FONT>
-   <b>procedure</b> Add (<FONT COLOR=red><A NAME="681_19">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                  <FONT COLOR=red><A NAME="682_19">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                  <FONT COLOR=red><A NAME="683_19">Column</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#376_9">Column_Position</A>;
-                  <FONT COLOR=red><A NAME="684_19">Str</A></FONT>    : <b>in</b> Attributed_String;
+   <b>procedure</b> Add (<FONT COLOR=red><A NAME="680_19">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                  <FONT COLOR=red><A NAME="681_19">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                  <FONT COLOR=red><A NAME="682_19">Column</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#375_9">Column_Position</A>;
+                  <FONT COLOR=red><A NAME="683_19">Str</A></FONT>    : <b>in</b> Attributed_String;
                   Len    : <b>in</b> Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_addchstr.3x.html">mvwaddchnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvwaddchstr()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_24"#2|</EM></FONT>
    <b>procedure</b> Border
-     (<FONT COLOR=red><A NAME="700_7">Win</A></FONT>                       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="701_7">Left_Side_Symbol</A></FONT>          : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <FONT COLOR=red><A NAME="702_7">Right_Side_Symbol</A></FONT>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <FONT COLOR=red><A NAME="703_7">Top_Side_Symbol</A></FONT>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <FONT COLOR=red><A NAME="704_7">Bottom_Side_Symbol</A></FONT>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <FONT COLOR=red><A NAME="705_7">Upper_Left_Corner_Symbol</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <FONT COLOR=red><A NAME="706_7">Upper_Right_Corner_Symbol</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
-      <FONT COLOR=red><A NAME="707_7">Lower_Left_Corner_Symbol</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
+     (<FONT COLOR=red><A NAME="699_7">Win</A></FONT>                       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="700_7">Left_Side_Symbol</A></FONT>          : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <FONT COLOR=red><A NAME="701_7">Right_Side_Symbol</A></FONT>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <FONT COLOR=red><A NAME="702_7">Top_Side_Symbol</A></FONT>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <FONT COLOR=red><A NAME="703_7">Bottom_Side_Symbol</A></FONT>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <FONT COLOR=red><A NAME="704_7">Upper_Left_Corner_Symbol</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <FONT COLOR=red><A NAME="705_7">Upper_Right_Corner_Symbol</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
+      <FONT COLOR=red><A NAME="706_7">Lower_Left_Corner_Symbol</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
       Lower_Right_Corner_Symbol : <b>in</b> Attributed_Character := Default_Character
      );
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_border.3x.html">wborder()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_25"#2|</EM></FONT>
    <b>procedure</b> Box
-     (<FONT COLOR=red><A NAME="716_7">Win</A></FONT>               : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="717_7">Vertical_Symbol</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#371_4">Default_Character</A>;
+     (<FONT COLOR=red><A NAME="715_7">Win</A></FONT>               : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="716_7">Vertical_Symbol</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#370_4">Default_Character</A>;
       Horizontal_Symbol : <b>in</b> Attributed_Character := Default_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_border.3x.html">box()</A></EM></FONT>
    <b>pragma</b> Inline (Box);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_26"#2|</EM></FONT>
    <b>procedure</b> Horizontal_Line
-     (<FONT COLOR=red><A NAME="724_7">Win</A></FONT>         : <b>in</b> Window := Standard_Window;
-      <FONT COLOR=red><A NAME="725_7">Line_Size</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Natural</A>;
+     (<FONT COLOR=red><A NAME="723_7">Win</A></FONT>         : <b>in</b> Window := Standard_Window;
+      <FONT COLOR=red><A NAME="724_7">Line_Size</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Natural</A>;
       Line_Symbol : <b>in</b> Attributed_Character := Default_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_border.3x.html">whline()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: hline()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_27"#2|</EM></FONT>
    <b>procedure</b> Vertical_Line
-     (<FONT COLOR=red><A NAME="733_7">Win</A></FONT>         : <b>in</b> Window := Standard_Window;
-      <FONT COLOR=red><A NAME="734_7">Line_Size</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Natural</A>;
+     (<FONT COLOR=red><A NAME="732_7">Win</A></FONT>         : <b>in</b> Window := Standard_Window;
+      <FONT COLOR=red><A NAME="733_7">Line_Size</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Natural</A>;
       Line_Symbol : <b>in</b> Attributed_Character := Default_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_border.3x.html">wvline()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: vline()</EM></FONT>
    <FONT COLOR=green><EM>--  PAIR_NUMBER(c) is the same as c.Color</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_31"#2|</EM></FONT>
-   <b>procedure</b> Standout (<FONT COLOR=red><A NAME="795_24">Win</A></FONT> : Window  := Standard_Window;
+   <b>procedure</b> Standout (<FONT COLOR=red><A NAME="794_24">Win</A></FONT> : Window  := Standard_Window;
                        On  : Boolean := True);
    <FONT COLOR=green><EM>--  AKA: wstandout()</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: wstandend()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_32"#2|</EM></FONT>
    <b>procedure</b> Switch_Character_Attribute
-     (<FONT COLOR=red><A NAME="802_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="803_7">Attr</A></FONT> : <b>in</b> Character_Attribute_Set := Normal_Video;
+     (<FONT COLOR=red><A NAME="801_7">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="802_7">Attr</A></FONT> : <b>in</b> Character_Attribute_Set := Normal_Video;
       On   : <b>in</b> Boolean := True); <FONT COLOR=green><EM>--  if False we switch Off.</EM></FONT>
    <FONT COLOR=green><EM>--  Switches those Attributes set to true in the list.</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_attr.3x.html">wattron()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_33"#2|</EM></FONT>
    <b>procedure</b> Set_Character_Attributes
-     (<FONT COLOR=red><A NAME="813_7">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="814_7">Attr</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A> := Normal_Video;
+     (<FONT COLOR=red><A NAME="812_7">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="813_7">Attr</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A> := Normal_Video;
       Color : <b>in</b> Color_Pair := Color_Pair'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_attr.3x.html">wattrset()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: attrset()</EM></FONT>
    <b>pragma</b> Inline (Get_Character_Attribute);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_36"#2|</EM></FONT>
-   <b>procedure</b> Set_Color (<FONT COLOR=red><A NAME="833_25">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Window</A> := Standard_Window;
+   <b>procedure</b> Set_Color (<FONT COLOR=red><A NAME="832_25">Win</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Window</A> := Standard_Window;
                         Pair : <b>in</b> Color_Pair);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_attr.3x.html">wcolor_set()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: color_set()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_37"#2|</EM></FONT>
    <b>procedure</b> Change_Attributes
-     (<FONT COLOR=red><A NAME="841_7">Win</A></FONT>   : <b>in</b> Window := Standard_Window;
-      <FONT COLOR=red><A NAME="842_7">Count</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Integer</A> := -1;
-      <FONT COLOR=red><A NAME="843_7">Attr</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A> := Normal_Video;
+     (<FONT COLOR=red><A NAME="840_7">Win</A></FONT>   : <b>in</b> Window := Standard_Window;
+      <FONT COLOR=red><A NAME="841_7">Count</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Integer</A> := -1;
+      <FONT COLOR=red><A NAME="842_7">Attr</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A> := Normal_Video;
       Color : <b>in</b> Color_Pair := Color_Pair'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_attr.3x.html">wchgat()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: chgat()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_38"#2|</EM></FONT>
    <b>procedure</b> Change_Attributes
-     (<FONT COLOR=red><A NAME="850_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="851_7">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A> := Line_Position'First;
-      <FONT COLOR=red><A NAME="852_7">Column</A></FONT> : <b>in</b> Column_Position := Column_Position'First;
-      <FONT COLOR=red><A NAME="853_7">Count</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#306_9">Integer</A> := -1;
-      <FONT COLOR=red><A NAME="854_7">Attr</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A> := Normal_Video;
+     (<FONT COLOR=red><A NAME="849_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="850_7">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A> := Line_Position'First;
+      <FONT COLOR=red><A NAME="851_7">Column</A></FONT> : <b>in</b> Column_Position := Column_Position'First;
+      <FONT COLOR=red><A NAME="852_7">Count</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#305_9">Integer</A> := -1;
+      <FONT COLOR=red><A NAME="853_7">Attr</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A> := Normal_Video;
       Color  : <b>in</b> Color_Pair := Color_Pair'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_attr.3x.html">mvwchgat()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvchgat()</EM></FONT>
    <b>pragma</b> Inline (Set_Echo_Mode);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_44"#2|</EM></FONT>
-   <b>procedure</b> Set_Meta_Mode (<FONT COLOR=red><A NAME="899_29">Win</A></FONT>      : <b>in</b> Window := Standard_Window;
+   <b>procedure</b> Set_Meta_Mode (<FONT COLOR=red><A NAME="898_29">Win</A></FONT>      : <b>in</b> Window := Standard_Window;
                             SwitchOn : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inopts.3x.html">meta()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Meta_Mode);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_45"#2|</EM></FONT>
-   <b>procedure</b> Set_KeyPad_Mode (<FONT COLOR=red><A NAME="905_31">Win</A></FONT>      : <b>in</b> Window := Standard_Window;
+   <b>procedure</b> Set_KeyPad_Mode (<FONT COLOR=red><A NAME="904_31">Win</A></FONT>      : <b>in</b> Window := Standard_Window;
                               SwitchOn : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inopts.3x.html">keypad()</A></EM></FONT>
    <b>pragma</b> Inline (Set_KeyPad_Mode);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_47"#2|</EM></FONT>
    <b>procedure</b> Set_Flush_On_Interrupt_Mode
-     (<FONT COLOR=red><A NAME="924_7">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="923_7">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
       Mode : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inopts.3x.html">intrflush()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Flush_On_Interrupt_Mode);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_48"#2|</EM></FONT>
    <b>procedure</b> Set_Queue_Interrupt_Mode
-     (<FONT COLOR=red><A NAME="931_7">Win</A></FONT>   : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="930_7">Win</A></FONT>   : <b>in</b> Window := Standard_Window;
       Flush : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inopts.3x.html">qiflush()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: noqiflush()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_49"#2|</EM></FONT>
    <b>procedure</b> Set_NoDelay_Mode
-     (<FONT COLOR=red><A NAME="939_7">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="938_7">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
       Mode : <b>in</b> Boolean := False);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inopts.3x.html">nodelay()</A></EM></FONT>
    <b>pragma</b> Inline (Set_NoDelay_Mode);
    <b>type</b> Timeout_Mode <b>is</b> (Blocking, Non_Blocking, Delayed);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_50"#2|</EM></FONT>
-   <b>procedure</b> Set_Timeout_Mode (<FONT COLOR=red><A NAME="947_32">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#943_9">Window</A> := Standard_Window;
-                               <FONT COLOR=red><A NAME="948_32">Mode</A></FONT>   : <b>in</b> Timeout_Mode;
+   <b>procedure</b> Set_Timeout_Mode (<FONT COLOR=red><A NAME="946_32">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#942_9">Window</A> := Standard_Window;
+                               <FONT COLOR=red><A NAME="947_32">Mode</A></FONT>   : <b>in</b> Timeout_Mode;
                                Amount : <b>in</b> Natural); <FONT COLOR=green><EM>--  in Milliseconds</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inopts.3x.html">wtimeout()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: timeout()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_51"#2|</EM></FONT>
    <b>procedure</b> Set_Escape_Timer_Mode
-     (<FONT COLOR=red><A NAME="960_7">Win</A></FONT>       : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="959_7">Win</A></FONT>       : <b>in</b> Window := Standard_Window;
       Timer_Off : <b>in</b> Boolean := False);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inopts.3x.html">notimeout()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Escape_Timer_Mode);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_53"#2|</EM></FONT>
    <b>procedure</b> Clear_On_Next_Update
-     (<FONT COLOR=red><A NAME="977_7">Win</A></FONT>      : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="976_7">Win</A></FONT>      : <b>in</b> Window := Standard_Window;
       Do_Clear : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_outopts.3x.html">clearok()</A></EM></FONT>
    <b>pragma</b> Inline (Clear_On_Next_Update);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_54"#2|</EM></FONT>
    <b>procedure</b> Use_Insert_Delete_Line
-     (<FONT COLOR=red><A NAME="984_7">Win</A></FONT>    : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="983_7">Win</A></FONT>    : <b>in</b> Window := Standard_Window;
       Do_Idl : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_outopts.3x.html">idlok()</A></EM></FONT>
    <b>pragma</b> Inline (Use_Insert_Delete_Line);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_55"#2|</EM></FONT>
    <b>procedure</b> Use_Insert_Delete_Character
-     (<FONT COLOR=red><A NAME="991_7">Win</A></FONT>    : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="990_7">Win</A></FONT>    : <b>in</b> Window := Standard_Window;
       Do_Idc : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_outopts.3x.html">idcok()</A></EM></FONT>
    <b>pragma</b> Inline (Use_Insert_Delete_Character);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_56"#2|</EM></FONT>
    <b>procedure</b> Leave_Cursor_After_Update
-     (<FONT COLOR=red><A NAME="998_7">Win</A></FONT>      : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="997_7">Win</A></FONT>      : <b>in</b> Window := Standard_Window;
       Do_Leave : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_outopts.3x.html">leaveok()</A></EM></FONT>
    <b>pragma</b> Inline (Leave_Cursor_After_Update);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_57"#2|</EM></FONT>
    <b>procedure</b> Immediate_Update_Mode
-     (<FONT COLOR=red><A NAME="1005_7">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="1004_7">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
       Mode : <b>in</b> Boolean := False);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_outopts.3x.html">immedok()</A></EM></FONT>
    <b>pragma</b> Inline (Immediate_Update_Mode);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_58"#2|</EM></FONT>
    <b>procedure</b> Allow_Scrolling
-     (<FONT COLOR=red><A NAME="1012_7">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
+     (<FONT COLOR=red><A NAME="1011_7">Win</A></FONT>  : <b>in</b> Window := Standard_Window;
       Mode : <b>in</b> Boolean := False);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_outopts.3x.html">scrollok()</A></EM></FONT>
    <b>pragma</b> Inline (Allow_Scrolling);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_59"#2|</EM></FONT>
    <b>procedure</b> Set_Scroll_Region
-     (<FONT COLOR=red><A NAME="1023_7">Win</A></FONT>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="1024_7">Top_Line</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="1022_7">Win</A></FONT>         : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="1023_7">Top_Line</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Line_Position</A>;
       Bottom_Line : <b>in</b> Line_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_outopts.3x.html">wsetscrreg()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: setscrreg()</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_refresh.3x.html">redrawwin()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_64"#2|</EM></FONT>
-   <b>procedure</b> Redraw (<FONT COLOR=red><A NAME="1058_22">Win</A></FONT>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                     <FONT COLOR=red><A NAME="1059_22">Begin_Line</A></FONT> : <b>in</b> Line_Position;
+   <b>procedure</b> Redraw (<FONT COLOR=red><A NAME="1057_22">Win</A></FONT>        : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                     <FONT COLOR=red><A NAME="1058_22">Begin_Line</A></FONT> : <b>in</b> Line_Position;
                      Line_Count : <b>in</b> Positive);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_refresh.3x.html">wredrawln()</A></EM></FONT>
    <b>pragma</b> Inline (Redraw);
    <FONT COLOR=green><EM>--  because in C it is common to see bkgdset(A_BOLD) or</EM></FONT>
    <FONT COLOR=green><EM>--  bkgdset(COLOR_PAIR(n))</EM></FONT>
    <b>procedure</b> Set_Background
-     (<FONT COLOR=red><A NAME="1104_7">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Window</A> := Standard_Window;
+     (<FONT COLOR=red><A NAME="1103_7">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Window</A> := Standard_Window;
       Ch  : <b>in</b> Attributed_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdset()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: bkgdset()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_70"#2|</EM></FONT>
    <b>procedure</b> Change_Background
-     (<FONT COLOR=red><A NAME="1112_7">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Window</A> := Standard_Window;
+     (<FONT COLOR=red><A NAME="1111_7">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Window</A> := Standard_Window;
       Ch  : <b>in</b> Attributed_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgd()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: bkgd()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_71"#2|</EM></FONT>
    <FONT COLOR=green><EM>--  ? wbkgdget is not listed in curs_bkgd, getbkgd is thpough.</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Get_Background</A> (Win : Window := Standard_Window)
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Get_Background</A> (Win : Window := Standard_Window)
      <b>return</b> Attributed_Character;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdget()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: bkgdget()</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_touch.3x.html">touchwin()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_74"#2|</EM></FONT>
-   <b>procedure</b> Touch (<FONT COLOR=red><A NAME="1140_21">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                    <FONT COLOR=red><A NAME="1141_21">Start</A></FONT> : <b>in</b> Line_Position;
+   <b>procedure</b> Touch (<FONT COLOR=red><A NAME="1139_21">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                    <FONT COLOR=red><A NAME="1140_21">Start</A></FONT> : <b>in</b> Line_Position;
                     Count : <b>in</b> Positive);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_touch.3x.html">touchline()</A></EM></FONT>
    <b>pragma</b> Inline (Touch);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_75"#2|</EM></FONT>
-   <b>procedure</b> Change_Lines_Status (<FONT COLOR=red><A NAME="1147_35">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                                  <FONT COLOR=red><A NAME="1148_35">Start</A></FONT> : <b>in</b> Line_Position;
-                                  <FONT COLOR=red><A NAME="1149_35">Count</A></FONT> : <b>in</b> Positive;
+   <b>procedure</b> Change_Lines_Status (<FONT COLOR=red><A NAME="1146_35">Win</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                                  <FONT COLOR=red><A NAME="1147_35">Start</A></FONT> : <b>in</b> Line_Position;
+                                  <FONT COLOR=red><A NAME="1148_35">Count</A></FONT> : <b>in</b> Positive;
                                   State : <b>in</b> Boolean);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_touch.3x.html">wtouchln()</A></EM></FONT>
    <b>pragma</b> Inline (Change_Lines_Status);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_76"#2|</EM></FONT>
-   <b>function</b> Is_Touched (<FONT COLOR=red><A NAME="1155_25">Win</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
+   <b>function</b> Is_Touched (<FONT COLOR=red><A NAME="1154_25">Win</A></FONT>  : <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
                         Line : Line_Position) <b>return</b> Boolean;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_touch.3x.html">is_linetouched()</A></EM></FONT>
 
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_78"#2|</EM></FONT>
    <b>procedure</b> Copy
-     (<FONT COLOR=red><A NAME="1170_7">Source_Window</A></FONT>            : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
-      <FONT COLOR=red><A NAME="1171_7">Destination_Window</A></FONT>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A>;
-      <FONT COLOR=red><A NAME="1172_7">Source_Top_Row</A></FONT>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1173_7">Source_Left_Column</A></FONT>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="1174_7">Destination_Top_Row</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1175_7">Destination_Left_Column</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="1176_7">Destination_Bottom_Row</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1177_7">Destination_Right_Column</A></FONT> : <b>in</b> Column_Position;
+     (<FONT COLOR=red><A NAME="1169_7">Source_Window</A></FONT>            : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
+      <FONT COLOR=red><A NAME="1170_7">Destination_Window</A></FONT>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A>;
+      <FONT COLOR=red><A NAME="1171_7">Source_Top_Row</A></FONT>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1172_7">Source_Left_Column</A></FONT>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="1173_7">Destination_Top_Row</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1174_7">Destination_Left_Column</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="1175_7">Destination_Bottom_Row</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1176_7">Destination_Right_Column</A></FONT> : <b>in</b> Column_Position;
       Non_Destructive_Mode     : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_overlay.3x.html">copywin()</A></EM></FONT>
    <b>pragma</b> Inline (Copy);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_79"#2|</EM></FONT>
-   <b>procedure</b> Overwrite (<FONT COLOR=red><A NAME="1183_25">Source_Window</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
+   <b>procedure</b> Overwrite (<FONT COLOR=red><A NAME="1182_25">Source_Window</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
                         Destination_Window : <b>in</b> Window);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_overlay.3x.html">overwrite()</A></EM></FONT>
    <b>pragma</b> Inline (Overwrite);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_80"#2|</EM></FONT>
-   <b>procedure</b> Overlay (<FONT COLOR=red><A NAME="1189_23">Source_Window</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#57_9">Window</A>;
+   <b>procedure</b> Overlay (<FONT COLOR=red><A NAME="1188_23">Source_Window</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#56_9">Window</A>;
                       Destination_Window : <b>in</b> Window);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_overlay.3x.html">overlay()</A></EM></FONT>
    <b>pragma</b> Inline (Overlay);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_81"#2|</EM></FONT>
    <b>procedure</b> Insert_Delete_Lines
-     (<FONT COLOR=red><A NAME="1200_7">Win</A></FONT>   : <b>in</b> Window  := Standard_Window;
+     (<FONT COLOR=red><A NAME="1199_7">Win</A></FONT>   : <b>in</b> Window  := Standard_Window;
       Lines : <b>in</b> Integer := 1); <FONT COLOR=green><EM>--  default is to insert one line above</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_deleteln.3x.html">winsdelln()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: insdelln()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_84"#2|</EM></FONT>
    <b>procedure</b> Get_Size
-     (<FONT COLOR=red><A NAME="1224_7">Win</A></FONT>               : <b>in</b> Window := Standard_Window;
-      <FONT COLOR=red><A NAME="1225_7">Number_Of_Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
+     (<FONT COLOR=red><A NAME="1223_7">Win</A></FONT>               : <b>in</b> Window := Standard_Window;
+      <FONT COLOR=red><A NAME="1224_7">Number_Of_Lines</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
       Number_Of_Columns : <b>out</b> Column_Count);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_getyx.3x.html">getmaxyx()</A></EM></FONT>
    <b>pragma</b> Inline (Get_Size);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_85"#2|</EM></FONT>
    <b>procedure</b> Get_Window_Position
-     (<FONT COLOR=red><A NAME="1232_7">Win</A></FONT>             : <b>in</b> Window := Standard_Window;
-      <FONT COLOR=red><A NAME="1233_7">Top_Left_Line</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="1231_7">Win</A></FONT>             : <b>in</b> Window := Standard_Window;
+      <FONT COLOR=red><A NAME="1232_7">Top_Left_Line</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       Top_Left_Column : <b>out</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_getyx.3x.html">getbegyx()</A></EM></FONT>
    <b>pragma</b> Inline (Get_Window_Position);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_86"#2|</EM></FONT>
    <b>procedure</b> Get_Cursor_Position
-     (<FONT COLOR=red><A NAME="1240_7">Win</A></FONT>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="1241_7">Line</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="1239_7">Win</A></FONT>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="1240_7">Line</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       Column : <b>out</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_getyx.3x.html">getyx()</A></EM></FONT>
    <b>pragma</b> Inline (Get_Cursor_Position);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_87"#2|</EM></FONT>
    <b>procedure</b> Get_Origin_Relative_To_Parent
-     (<FONT COLOR=red><A NAME="1248_7">Win</A></FONT>                : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A>;
-      <FONT COLOR=red><A NAME="1249_7">Top_Left_Line</A></FONT>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1250_7">Top_Left_Column</A></FONT>    : <b>out</b> Column_Position;
+     (<FONT COLOR=red><A NAME="1247_7">Win</A></FONT>                : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A>;
+      <FONT COLOR=red><A NAME="1248_7">Top_Left_Line</A></FONT>      : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1249_7">Top_Left_Column</A></FONT>    : <b>out</b> Column_Position;
       Is_Not_A_Subwindow : <b>out</b> Boolean);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_getyx.3x.html">getparyx()</A></EM></FONT>
    <FONT COLOR=green><EM>--  Instead of placing -1 in the coordinates as return, we use a boolean</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_88"#2|</EM></FONT>
-   <b>function</b> New_Pad (<FONT COLOR=red><A NAME="1262_22">Lines</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
+   <b>function</b> New_Pad (<FONT COLOR=red><A NAME="1261_22">Lines</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
                      Columns : Column_Count) <b>return</b> Window;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_pad.3x.html">newpad()</A></EM></FONT>
    <b>pragma</b> Inline (New_Pad);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_89"#2|</EM></FONT>
    <b>function</b> Sub_Pad
-     (<FONT COLOR=red><A NAME="1269_7">Pad</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#63_12">Window</A>;
-      <FONT COLOR=red><A NAME="1270_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
-      <FONT COLOR=red><A NAME="1271_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Count</A>;
-      <FONT COLOR=red><A NAME="1272_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="1268_7">Pad</A></FONT>                   : <A HREF="terminal_interface-curses__ads.htm#62_12">Window</A>;
+      <FONT COLOR=red><A NAME="1269_7">Number_Of_Lines</A></FONT>       : <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
+      <FONT COLOR=red><A NAME="1270_7">Number_Of_Columns</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Count</A>;
+      <FONT COLOR=red><A NAME="1271_7">First_Line_Position</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       First_Column_Position : Column_Position) <b>return</b> Window;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_pad.3x.html">subpad()</A></EM></FONT>
    <b>pragma</b> Inline (Sub_Pad);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_90"#2|</EM></FONT>
    <b>procedure</b> Refresh
-     (<FONT COLOR=red><A NAME="1279_7">Pad</A></FONT>                      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A>;
-      <FONT COLOR=red><A NAME="1280_7">Source_Top_Row</A></FONT>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1281_7">Source_Left_Column</A></FONT>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="1282_7">Destination_Top_Row</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1283_7">Destination_Left_Column</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="1284_7">Destination_Bottom_Row</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="1278_7">Pad</A></FONT>                      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A>;
+      <FONT COLOR=red><A NAME="1279_7">Source_Top_Row</A></FONT>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1280_7">Source_Left_Column</A></FONT>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="1281_7">Destination_Top_Row</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1282_7">Destination_Left_Column</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="1283_7">Destination_Bottom_Row</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       Destination_Right_Column : <b>in</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_pad.3x.html">prefresh()</A></EM></FONT>
    <b>pragma</b> Inline (Refresh);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_91"#2|</EM></FONT>
    <b>procedure</b> Refresh_Without_Update
-     (<FONT COLOR=red><A NAME="1291_7">Pad</A></FONT>                      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A>;
-      <FONT COLOR=red><A NAME="1292_7">Source_Top_Row</A></FONT>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1293_7">Source_Left_Column</A></FONT>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="1294_7">Destination_Top_Row</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1295_7">Destination_Left_Column</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Column_Position</A>;
-      <FONT COLOR=red><A NAME="1296_7">Destination_Bottom_Row</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="1290_7">Pad</A></FONT>                      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A>;
+      <FONT COLOR=red><A NAME="1291_7">Source_Top_Row</A></FONT>           : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1292_7">Source_Left_Column</A></FONT>       : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="1293_7">Destination_Top_Row</A></FONT>      : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1294_7">Destination_Left_Column</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Column_Position</A>;
+      <FONT COLOR=red><A NAME="1295_7">Destination_Bottom_Row</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       Destination_Right_Column : <b>in</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_pad.3x.html">pnoutrefresh()</A></EM></FONT>
    <b>pragma</b> Inline (Refresh_Without_Update);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_92"#2|</EM></FONT>
    <b>procedure</b> Add_Character_To_Pad_And_Echo_It
-     (<FONT COLOR=red><A NAME="1303_7">Pad</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Window</A>;
+     (<FONT COLOR=red><A NAME="1302_7">Pad</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Window</A>;
       Ch  : <b>in</b> Attributed_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_pad.3x.html">pechochar()</A></EM></FONT>
 
    <b>procedure</b> Add_Character_To_Pad_And_Echo_It
-     (<FONT COLOR=red><A NAME="1308_7">Pad</A></FONT> : <b>in</b> Window;
+     (<FONT COLOR=red><A NAME="1307_7">Pad</A></FONT> : <b>in</b> Window;
       Ch  : <b>in</b> Character);
    <b>pragma</b> Inline (Add_Character_To_Pad_And_Echo_It);
 
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_93"#2|</EM></FONT>
-   <b>procedure</b> Scroll (<FONT COLOR=red><A NAME="1317_22">Win</A></FONT>    : <b>in</b> Window  := Standard_Window;
+   <b>procedure</b> Scroll (<FONT COLOR=red><A NAME="1316_22">Win</A></FONT>    : <b>in</b> Window  := Standard_Window;
                      Amount : <b>in</b> Integer := 1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_scroll.3x.html">wscrl()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: scroll()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_95"#2|</EM></FONT>
    <b>procedure</b> Delete_Character
-     (<FONT COLOR=red><A NAME="1335_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="1336_7">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="1334_7">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="1335_7">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       Column : <b>in</b> Column_Position);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_delch.3x.html">mvwdelch()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvdelch()</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_96"#2|</EM></FONT>
-   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Peek</A> (Win : Window := Standard_Window)
+   <b>function</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Peek</A> (Win : Window := Standard_Window)
      <b>return</b> Attributed_Character;
    <FONT COLOR=green><EM>--  AKA: inch()</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inch.3x.html">winch()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_97"#2|</EM></FONT>
    <b>function</b> Peek
-     (<FONT COLOR=red><A NAME="1354_7">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-      <FONT COLOR=red><A NAME="1355_7">Line</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
+     (<FONT COLOR=red><A NAME="1353_7">Win</A></FONT>    : <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+      <FONT COLOR=red><A NAME="1354_7">Line</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
       Column : Column_Position) <b>return</b> Attributed_Character;
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inch.3x.html">mvwinch()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvinch()</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_98"#2|</EM></FONT>
-   <b>procedure</b> Insert (<FONT COLOR=red><A NAME="1366_22">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Window</A> := Standard_Window;
+   <b>procedure</b> Insert (<FONT COLOR=red><A NAME="1365_22">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Window</A> := Standard_Window;
                      Ch  : <b>in</b> Attributed_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_insch.3x.html">winsch()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: insch()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_99"#2|</EM></FONT>
-   <b>procedure</b> Insert (<FONT COLOR=red><A NAME="1372_22">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                     <FONT COLOR=red><A NAME="1373_22">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                     <FONT COLOR=red><A NAME="1374_22">Column</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#352_9">Column_Position</A>;
+   <b>procedure</b> Insert (<FONT COLOR=red><A NAME="1371_22">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                     <FONT COLOR=red><A NAME="1372_22">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                     <FONT COLOR=red><A NAME="1373_22">Column</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#351_9">Column_Position</A>;
                      Ch     : <b>in</b> Attributed_Character);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_insch.3x.html">mvwinsch()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvinsch()</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_100"#2|</EM></FONT>
-   <b>procedure</b> Insert (<FONT COLOR=red><A NAME="1384_22">Win</A></FONT> : <b>in</b> Window := Standard_Window;
-                     <FONT COLOR=red><A NAME="1385_22">Str</A></FONT> : <b>in</b> String;
+   <b>procedure</b> Insert (<FONT COLOR=red><A NAME="1383_22">Win</A></FONT> : <b>in</b> Window := Standard_Window;
+                     <FONT COLOR=red><A NAME="1384_22">Str</A></FONT> : <b>in</b> String;
                      Len : <b>in</b> Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_insstr.3x.html">winsnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: winsstr()</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: insstr()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_101"#2|</EM></FONT>
-   <b>procedure</b> Insert (<FONT COLOR=red><A NAME="1393_22">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                     <FONT COLOR=red><A NAME="1394_22">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                     <FONT COLOR=red><A NAME="1395_22">Column</A></FONT> : <b>in</b> Column_Position;
-                     <FONT COLOR=red><A NAME="1396_22">Str</A></FONT>    : <b>in</b> String;
+   <b>procedure</b> Insert (<FONT COLOR=red><A NAME="1392_22">Win</A></FONT>    : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                     <FONT COLOR=red><A NAME="1393_22">Line</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                     <FONT COLOR=red><A NAME="1394_22">Column</A></FONT> : <b>in</b> Column_Position;
+                     <FONT COLOR=red><A NAME="1395_22">Str</A></FONT>    : <b>in</b> String;
                      Len    : <b>in</b> Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_insstr.3x.html">mvwinsnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvwinsstr()</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_102"#2|</EM></FONT>
-   <b>procedure</b> Peek (<FONT COLOR=red><A NAME="1409_20">Win</A></FONT> : <b>in</b>  Window := Standard_Window;
-                   <FONT COLOR=red><A NAME="1410_20">Str</A></FONT> : <b>out</b> String;
+   <b>procedure</b> Peek (<FONT COLOR=red><A NAME="1408_20">Win</A></FONT> : <b>in</b>  Window := Standard_Window;
+                   <FONT COLOR=red><A NAME="1409_20">Str</A></FONT> : <b>out</b> String;
                    Len : <b>in</b>  Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_instr.3x.html">winnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: winstr()</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: instr()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_103"#2|</EM></FONT>
-   <b>procedure</b> Peek (<FONT COLOR=red><A NAME="1418_20">Win</A></FONT>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                   <FONT COLOR=red><A NAME="1419_20">Line</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                   <FONT COLOR=red><A NAME="1420_20">Column</A></FONT> : <b>in</b>  Column_Position;
-                   <FONT COLOR=red><A NAME="1421_20">Str</A></FONT>    : <b>out</b> String;
+   <b>procedure</b> Peek (<FONT COLOR=red><A NAME="1417_20">Win</A></FONT>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                   <FONT COLOR=red><A NAME="1418_20">Line</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                   <FONT COLOR=red><A NAME="1419_20">Column</A></FONT> : <b>in</b>  Column_Position;
+                   <FONT COLOR=red><A NAME="1420_20">Str</A></FONT>    : <b>out</b> String;
                    Len    : <b>in</b>  Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_instr.3x.html">mvwinnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvwinstr()</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_104"#2|</EM></FONT>
-   <b>procedure</b> Peek (<FONT COLOR=red><A NAME="1433_20">Win</A></FONT> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#376_9">Window</A> := Standard_Window;
-                   <FONT COLOR=red><A NAME="1434_20">Str</A></FONT> : <b>out</b> Attributed_String;
+   <b>procedure</b> Peek (<FONT COLOR=red><A NAME="1432_20">Win</A></FONT> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#375_9">Window</A> := Standard_Window;
+                   <FONT COLOR=red><A NAME="1433_20">Str</A></FONT> : <b>out</b> Attributed_String;
                    Len : <b>in</b>  Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inchstr.3x.html">winchnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: winchstr()</EM></FONT>
    <FONT COLOR=green><EM>--  AKA: inchstr()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_105"#2|</EM></FONT>
-   <b>procedure</b> Peek (<FONT COLOR=red><A NAME="1442_20">Win</A></FONT>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                   <FONT COLOR=red><A NAME="1443_20">Line</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                   <FONT COLOR=red><A NAME="1444_20">Column</A></FONT> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#376_9">Column_Position</A>;
-                   <FONT COLOR=red><A NAME="1445_20">Str</A></FONT>    : <b>out</b> Attributed_String;
+   <b>procedure</b> Peek (<FONT COLOR=red><A NAME="1441_20">Win</A></FONT>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                   <FONT COLOR=red><A NAME="1442_20">Line</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                   <FONT COLOR=red><A NAME="1443_20">Column</A></FONT> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#375_9">Column_Position</A>;
+                   <FONT COLOR=red><A NAME="1444_20">Str</A></FONT>    : <b>out</b> Attributed_String;
                    Len    : <b>in</b>  Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_inchstr.3x.html">mvwinchnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvwinchstr()</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_106"#2|</EM></FONT>
-   <b>procedure</b> Get (<FONT COLOR=red><A NAME="1458_19">Win</A></FONT> : <b>in</b>  Window := Standard_Window;
-                  <FONT COLOR=red><A NAME="1459_19">Str</A></FONT> : <b>out</b> String;
+   <b>procedure</b> Get (<FONT COLOR=red><A NAME="1457_19">Win</A></FONT> : <b>in</b>  Window := Standard_Window;
+                  <FONT COLOR=red><A NAME="1458_19">Str</A></FONT> : <b>out</b> String;
                   Len : <b>in</b>  Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_getstr.3x.html">wgetnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: wgetstr()</EM></FONT>
    <FONT COLOR=green><EM>--  overflows.</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_107"#2|</EM></FONT>
-   <b>procedure</b> Get (<FONT COLOR=red><A NAME="1469_19">Win</A></FONT>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Window</A> := Standard_Window;
-                  <FONT COLOR=red><A NAME="1470_19">Line</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-                  <FONT COLOR=red><A NAME="1471_19">Column</A></FONT> : <b>in</b>  Column_Position;
-                  <FONT COLOR=red><A NAME="1472_19">Str</A></FONT>    : <b>out</b> String;
+   <b>procedure</b> Get (<FONT COLOR=red><A NAME="1468_19">Win</A></FONT>    : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#59_9">Window</A> := Standard_Window;
+                  <FONT COLOR=red><A NAME="1469_19">Line</A></FONT>   : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+                  <FONT COLOR=red><A NAME="1470_19">Column</A></FONT> : <b>in</b>  Column_Position;
+                  <FONT COLOR=red><A NAME="1471_19">Str</A></FONT>    : <b>out</b> String;
                   Len    : <b>in</b>  Integer := -1);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_getstr.3x.html">mvwgetnstr()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: mvwgetstr()</EM></FONT>
 
    <FONT COLOR=green><EM>--  Not Implemented: slk_attr_on, slk_attr_off, slk_attr_set</EM></FONT>
 
-   <b>type</b> Soft_Label_Key_Format <b>is</b> (<FONT COLOR=red><A NAME="1486_35">Three_Two_Three</A></FONT>,
-                                  <FONT COLOR=red><A NAME="1487_35">Four_Four</A></FONT>,
-                                  <FONT COLOR=red><A NAME="1488_35">PC_Style</A></FONT>,              <FONT COLOR=green><EM>--  ncurses specific</EM></FONT>
-        <FONT COLOR=red><A NAME="1489_9"> </A></FONT>                         PC_Style_With_Index);  <FONT COLOR=green><EM>--  "</EM></FONT>
-   <b>type</b> <FONT COLOR=red><A NAME="1490_9">Label_Number</A></FONT> <b>is</b> <b>new</b> Positive <b>range</b> 1 .. <FONT COLOR=red><A NAME="1490_49">12</A></FONT>;
+   <b>type</b> Soft_Label_Key_Format <b>is</b> (<FONT COLOR=red><A NAME="1485_35">Three_Two_Three</A></FONT>,
+                                  <FONT COLOR=red><A NAME="1486_35">Four_Four</A></FONT>,
+                                  <FONT COLOR=red><A NAME="1487_35">PC_Style</A></FONT>,              <FONT COLOR=green><EM>--  ncurses specific</EM></FONT>
+        <FONT COLOR=red><A NAME="1488_9"> </A></FONT>                         PC_Style_With_Index);  <FONT COLOR=green><EM>--  "</EM></FONT>
+   <b>type</b> <FONT COLOR=red><A NAME="1489_9">Label_Number</A></FONT> <b>is</b> <b>new</b> Positive <b>range</b> 1 .. <FONT COLOR=red><A NAME="1489_49">12</A></FONT>;
    <b>type</b> Label_Justification <b>is</b> (Left, Centered, Right);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_108"#2|</EM></FONT>
    <b>pragma</b> Inline (Init_Soft_Label_Keys);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_109"#2|</EM></FONT>
-   <b>procedure</b> Set_Soft_Label_Key (<FONT COLOR=red><A NAME="1500_34">Label</A></FONT> : <b>in</b> Label_Number;
-                                 <FONT COLOR=red><A NAME="1501_34">Text</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1490_9">String</A>;
+   <b>procedure</b> Set_Soft_Label_Key (<FONT COLOR=red><A NAME="1499_34">Label</A></FONT> : <b>in</b> Label_Number;
+                                 <FONT COLOR=red><A NAME="1500_34">Text</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1489_9">String</A>;
                                  Fmt   : <b>in</b> Label_Justification := Left);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_slk.3x.html">slk_set()</A></EM></FONT>
    <FONT COLOR=green><EM>--  We don't inline this procedure</EM></FONT>
    <b>pragma</b> Inline (Refresh_Soft_Label_Keys_Without_Update);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_112"#2|</EM></FONT>
-   <b>procedure</b> Get_Soft_Label_Key (<FONT COLOR=red><A NAME="1517_34">Label</A></FONT> : <b>in</b> Label_Number;
+   <b>procedure</b> Get_Soft_Label_Key (<FONT COLOR=red><A NAME="1516_34">Label</A></FONT> : <b>in</b> Label_Number;
                                  Text  : <b>out</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_slk.3x.html">slk_label()</A></EM></FONT>
 
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_117"#2|</EM></FONT>
    <b>procedure</b> Switch_Soft_Label_Key_Attributes
-     (<FONT COLOR=red><A NAME="1544_7">Attr</A></FONT> : <b>in</b> Character_Attribute_Set;
+     (<FONT COLOR=red><A NAME="1543_7">Attr</A></FONT> : <b>in</b> Character_Attribute_Set;
       On   : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_slk.3x.html">slk_attron()</A></EM></FONT>
    <FONT COLOR=green><EM>--  AKA: slk_attroff()</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_118"#2|</EM></FONT>
    <b>procedure</b> Set_Soft_Label_Key_Attributes
-     (<FONT COLOR=red><A NAME="1552_7">Attr</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#298_9">Character_Attribute_Set</A> := Normal_Video;
+     (<FONT COLOR=red><A NAME="1551_7">Attr</A></FONT>  : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#297_9">Character_Attribute_Set</A> := Normal_Video;
       Color : <b>in</b> Color_Pair := Color_Pair'First);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_slk.3x.html">slk_attrset()</A></EM></FONT>
    <b>pragma</b> Inline (Set_Soft_Label_Key_Attributes);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_122"#2|</EM></FONT>
-   <b>procedure</b> Enable_Key (<FONT COLOR=red><A NAME="1581_26">Key</A></FONT>    : <b>in</b> Special_Key_Code;
+   <b>procedure</b> Enable_Key (<FONT COLOR=red><A NAME="1580_26">Key</A></FONT>    : <b>in</b> Special_Key_Code;
                          Enable : <b>in</b> Boolean := True);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/keyok.3x.html">keyok()</A></EM></FONT>
    <b>pragma</b> Inline (Enable_Key);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_123"#2|</EM></FONT>
-   <b>procedure</b> Define_Key (<FONT COLOR=red><A NAME="1591_26">Definition</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#77_12">String</A>;
+   <b>procedure</b> Define_Key (<FONT COLOR=red><A NAME="1590_26">Definition</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#76_12">String</A>;
                          Key        : <b>in</b> Special_Key_Code);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/define_key.3x.html">define_key()</A></EM></FONT>
    <b>pragma</b> Inline (Define_Key);
    <FONT COLOR=green><EM>--</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_124"#2|</EM></FONT>
-   <b>procedure</b> Key_Name (<FONT COLOR=red><A NAME="1605_24">Key</A></FONT>  : <b>in</b>  Real_Key_Code;
+   <b>procedure</b> Key_Name (<FONT COLOR=red><A NAME="1604_24">Key</A></FONT>  : <b>in</b>  Real_Key_Code;
                        Name : <b>out</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_util.3x.html">keyname()</A></EM></FONT>
    <FONT COLOR=green><EM>--  The external name for a real keystroke.</EM></FONT>
    <FONT COLOR=green><EM>--  We don't inline this routine</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_126"#2|</EM></FONT>
-   <b>procedure</b> Un_Control (<FONT COLOR=red><A NAME="1617_26">Ch</A></FONT>  : <b>in</b> Attributed_Character;
+   <b>procedure</b> Un_Control (<FONT COLOR=red><A NAME="1616_26">Ch</A></FONT>  : <b>in</b> Attributed_Character;
                          Str : <b>out</b> String);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_util.3x.html">unctrl()</A></EM></FONT>
 
    <b>pragma</b> Import (C, Start_Color, "start_color");
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_141"#2|</EM></FONT>
-   <b>procedure</b> Init_Pair (<FONT COLOR=red><A NAME="1707_25">Pair</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Redefinable_Color_Pair</A>;
-                        <FONT COLOR=red><A NAME="1708_25">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A>;
+   <b>procedure</b> Init_Pair (<FONT COLOR=red><A NAME="1706_25">Pair</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Redefinable_Color_Pair</A>;
+                        <FONT COLOR=red><A NAME="1707_25">Fore</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A>;
                         Back : <b>in</b> Color_Number);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_color.3x.html">init_pair()</A></EM></FONT>
    <b>pragma</b> Inline (Init_Pair);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_142"#2|</EM></FONT>
-   <b>procedure</b> Pair_Content (<FONT COLOR=red><A NAME="1714_28">Pair</A></FONT> : <b>in</b> Color_Pair;
-                           <FONT COLOR=red><A NAME="1715_28">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A>;
+   <b>procedure</b> Pair_Content (<FONT COLOR=red><A NAME="1713_28">Pair</A></FONT> : <b>in</b> Color_Pair;
+                           <FONT COLOR=red><A NAME="1714_28">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A>;
                            Back : <b>out</b> Color_Number);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_color.3x.html">pair_content()</A></EM></FONT>
    <b>pragma</b> Inline (Pair_Content);
    <b>pragma</b> Inline (Has_Colors);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_144"#2|</EM></FONT>
-   <b>procedure</b> Init_Color (<FONT COLOR=red><A NAME="1726_26">Color</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#294_9">Color_Number</A>;
-                         <FONT COLOR=red><A NAME="1727_26">Red</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>;
-                         <FONT COLOR=red><A NAME="1728_26">Green</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>;
+   <b>procedure</b> Init_Color (<FONT COLOR=red><A NAME="1725_26">Color</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#293_9">Color_Number</A>;
+                         <FONT COLOR=red><A NAME="1726_26">Red</A></FONT>   : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>;
+                         <FONT COLOR=red><A NAME="1727_26">Green</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>;
                          Blue  : <b>in</b> RGB_Value);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_color.3x.html">init_color()</A></EM></FONT>
    <b>pragma</b> Inline (Init_Color);
    <b>pragma</b> Inline (Can_Change_Color);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_146"#2|</EM></FONT>
-   <b>procedure</b> Color_Content (<FONT COLOR=red><A NAME="1739_29">Color</A></FONT> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#294_9">Color_Number</A>;
-                            <FONT COLOR=red><A NAME="1740_29">Red</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>;
-                            <FONT COLOR=red><A NAME="1741_29">Green</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#294_9">RGB_Value</A>;
+   <b>procedure</b> Color_Content (<FONT COLOR=red><A NAME="1738_29">Color</A></FONT> : <b>in</b>  <A HREF="terminal_interface-curses__ads.htm#293_9">Color_Number</A>;
+                            <FONT COLOR=red><A NAME="1739_29">Red</A></FONT>   : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>;
+                            <FONT COLOR=red><A NAME="1740_29">Green</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#293_9">RGB_Value</A>;
                             Blue  : <b>out</b> RGB_Value);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_color.3x.html">color_content()</A></EM></FONT>
    <b>pragma</b> Inline (Color_Content);
    <b>pragma</b> Inline (Reset_Terminal_State);
 
    <b>type</b> Stdscr_Init_Proc <b>is</b> <b>access</b>
-      <b>function</b> (<FONT COLOR=red><A NAME="1776_17">Win</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#65_12">Window</A>;
-                Columns :<A HREF="terminal_interface-curses__ads.htm#1774_9"> </A>Column_Count) <b>return</b> Integer;
+      <b>function</b> (<FONT COLOR=red><A NAME="1775_17">Win</A></FONT>     : <A HREF="terminal_interface-curses__ads.htm#64_12">Window</A>;
+                Columns :<A HREF="terminal_interface-curses__ads.htm#1773_9"> </A>Column_Count) <b>return</b> Integer;
    <b>pragma</b> Convention (C, Stdscr_Init_Proc);
    <FONT COLOR=green><EM>--  N.B.: the return value is actually ignored, but it seems to be</EM></FONT>
    <FONT COLOR=green><EM>--        a good practice to return 0 if you think all went fine</EM></FONT>
    <FONT COLOR=green><EM>--        and -1 otherwise.</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_151"#2|</EM></FONT>
-   <b>procedure</b> Rip_Off_Lines (<FONT COLOR=red><A NAME="1784_29">Lines</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1774_9">Integer</A>;
+   <b>procedure</b> Rip_Off_Lines (<FONT COLOR=red><A NAME="1783_29">Lines</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#1773_9">Integer</A>;
                             Proc  : <b>in</b> Stdscr_Init_Proc);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/curs_kernel.3x.html">ripoffline()</A></EM></FONT>
    <FONT COLOR=green><EM>--  N.B.: to be more precise, this uses a ncurses specific enhancement of</EM></FONT>
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
    <b>type</b> Transform_Direction <b>is</b> (From_Screen, To_Screen);
    <b>procedure</b> Transform_Coordinates
-     (<FONT COLOR=red><A NAME="1810_7">W</A></FONT>      : <b>in</b> Window := Standard_Window;
-      <FONT COLOR=red><A NAME="1811_7">Line</A></FONT>   : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#61_9">Line_Position</A>;
-      <FONT COLOR=red><A NAME="1812_7">Column</A></FONT> : <b>in</b> <b>out</b> Column_Position;
+     (<FONT COLOR=red><A NAME="1809_7">W</A></FONT>      : <b>in</b> Window := Standard_Window;
+      <FONT COLOR=red><A NAME="1810_7">Line</A></FONT>   : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>;
+      <FONT COLOR=red><A NAME="1811_7">Column</A></FONT> : <b>in</b> <b>out</b> Column_Position;
       Dir    : <b>in</b> Transform_Direction := From_Screen);
    <FONT COLOR=green><EM>--  This procedure transforms screen coordinates into coordinates relative</EM></FONT>
    <FONT COLOR=green><EM>--  to the window and vice versa, depending on the Dir parameter.</EM></FONT>
    <b>pragma</b> Inline (Use_Default_Colors);
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_155"#2|</EM></FONT>
-   <b>procedure</b> Assume_Default_Colors (<FONT COLOR=red><A NAME="1831_37">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#277_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#284_4">Default_Color</A>;
+   <b>procedure</b> Assume_Default_Colors (<FONT COLOR=red><A NAME="1830_37">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#276_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#283_4">Default_Color</A>;
                                     Back : Color_Number := Default_Color);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/dft_fgbg.3x.html">assume_default_colors()</A></EM></FONT>
    <b>pragma</b> Inline (Assume_Default_Colors);
    <FONT COLOR=green><EM>--  |=====================================================================</EM></FONT>
 
    <FONT COLOR=green><EM>--  #1A NAME="AFU_162"#2|</EM></FONT>
-   <b>procedure</b> Resize (<FONT COLOR=red><A NAME="1899_22">Win</A></FONT>               : <A HREF="terminal_interface-curses__ads.htm#63_12">Window</A> := Standard_Window;
-                     <FONT COLOR=red><A NAME="1900_22">Number_Of_Lines</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#65_12">Line_Count</A>;
+   <b>procedure</b> Resize (<FONT COLOR=red><A NAME="1898_22">Win</A></FONT>               : <A HREF="terminal_interface-curses__ads.htm#62_12">Window</A> := Standard_Window;
+                     <FONT COLOR=red><A NAME="1899_22">Number_Of_Lines</A></FONT>   : <A HREF="terminal_interface-curses__ads.htm#64_12">Line_Count</A>;
                      Number_Of_Columns : Column_Count);
    <FONT COLOR=green><EM>--  AKA: <A HREF="../man/wresize.3x.html">wresize()</A></EM></FONT>
 
    <FONT COLOR=green><EM>--  The next constants are generated and may be different on your</EM></FONT>
    <FONT COLOR=green><EM>--  architecture.</EM></FONT>
    <FONT COLOR=green><EM>--</EM></FONT>
-   <FONT COLOR=red><A NAME="1911_4">Offset_maxy</A></FONT>        : <b>constant</b> Natural :=  2; <FONT COLOR=green><EM>--  short</EM></FONT>
-   <FONT COLOR=red><A NAME="1912_4">Offset_maxx</A></FONT>        : <b>constant</b> Natural :=  3; <FONT COLOR=green><EM>--  short</EM></FONT>
-   <FONT COLOR=red><A NAME="1913_4">Offset_begy</A></FONT>        : <b>constant</b> Natural :=  4; <FONT COLOR=green><EM>--  short</EM></FONT>
-   <FONT COLOR=red><A NAME="1914_4">Offset_begx</A></FONT>        : <b>constant</b> Natural :=  5; <FONT COLOR=green><EM>--  short</EM></FONT>
-   <FONT COLOR=red><A NAME="1915_4">Offset_cury</A></FONT>        : <b>constant</b> Natural :=  0; <FONT COLOR=green><EM>--  short</EM></FONT>
-   <FONT COLOR=red><A NAME="1916_4">Offset_curx</A></FONT>        : <b>constant</b> Natural :=  1; <FONT COLOR=green><EM>--  short</EM></FONT>
-   <FONT COLOR=red><A NAME="1917_4">Offset_yoffset</A></FONT>     : <b>constant</b> Natural := 36; <FONT COLOR=green><EM>--  short</EM></FONT>
-   <FONT COLOR=red><A NAME="1918_4">Offset_pary</A></FONT>        : <b>constant</b> Natural := 13; <FONT COLOR=green><EM>--  int</EM></FONT>
-   <FONT COLOR=red><A NAME="1919_4">Offset_parx</A></FONT>        : <b>constant</b> Natural := 12; <FONT COLOR=green><EM>--  int</EM></FONT>
-   <FONT COLOR=red><A NAME="1920_4">Offset_notimeout</A></FONT>   : <b>constant</b> Natural := 24; <FONT COLOR=green><EM>--  char</EM></FONT>
-   <FONT COLOR=red><A NAME="1921_4">Offset_clear</A></FONT>       : <b>constant</b> Natural := 25; <FONT COLOR=green><EM>--  char</EM></FONT>
-   <FONT COLOR=red><A NAME="1922_4">Offset_leaveok</A></FONT>     : <b>constant</b> Natural := 26; <FONT COLOR=green><EM>--  char</EM></FONT>
-   <FONT COLOR=red><A NAME="1923_4">Offset_scroll</A></FONT>      : <b>constant</b> Natural := 27; <FONT COLOR=green><EM>--  char</EM></FONT>
-   <FONT COLOR=red><A NAME="1924_4">Offset_idlok</A></FONT>       : <b>constant</b> Natural := 28; <FONT COLOR=green><EM>--  char</EM></FONT>
-   <FONT COLOR=red><A NAME="1925_4">Offset_idcok</A></FONT>       : <b>constant</b> Natural := 29; <FONT COLOR=green><EM>--  char</EM></FONT>
-   <FONT COLOR=red><A NAME="1926_4">Offset_immed</A></FONT>       : <b>constant</b> Natural := 30; <FONT COLOR=green><EM>--  char</EM></FONT>
-   <FONT COLOR=red><A NAME="1927_4">Offset_sync</A></FONT>        : <b>constant</b> Natural := 31; <FONT COLOR=green><EM>--  char</EM></FONT>
-   <FONT COLOR=red><A NAME="1928_4">Offset_use_keypad</A></FONT>  : <b>constant</b> Natural := 32; <FONT COLOR=green><EM>--  char</EM></FONT>
-   <FONT COLOR=red><A NAME="1929_4">Sizeof_bool</A></FONT>        : <b>constant</b> Natural :=  1; <FONT COLOR=green><EM>--  bool</EM></FONT>
+   <FONT COLOR=red><A NAME="1910_4">Offset_maxy</A></FONT>        : <b>constant</b> Natural :=  2; <FONT COLOR=green><EM>--  short</EM></FONT>
+   <FONT COLOR=red><A NAME="1911_4">Offset_maxx</A></FONT>        : <b>constant</b> Natural :=  3; <FONT COLOR=green><EM>--  short</EM></FONT>
+   <FONT COLOR=red><A NAME="1912_4">Offset_begy</A></FONT>        : <b>constant</b> Natural :=  4; <FONT COLOR=green><EM>--  short</EM></FONT>
+   <FONT COLOR=red><A NAME="1913_4">Offset_begx</A></FONT>        : <b>constant</b> Natural :=  5; <FONT COLOR=green><EM>--  short</EM></FONT>
+   <FONT COLOR=red><A NAME="1914_4">Offset_cury</A></FONT>        : <b>constant</b> Natural :=  0; <FONT COLOR=green><EM>--  short</EM></FONT>
+   <FONT COLOR=red><A NAME="1915_4">Offset_curx</A></FONT>        : <b>constant</b> Natural :=  1; <FONT COLOR=green><EM>--  short</EM></FONT>
+   <FONT COLOR=red><A NAME="1916_4">Offset_yoffset</A></FONT>     : <b>constant</b> Natural := 36; <FONT COLOR=green><EM>--  short</EM></FONT>
+   <FONT COLOR=red><A NAME="1917_4">Offset_pary</A></FONT>        : <b>constant</b> Natural := 13; <FONT COLOR=green><EM>--  int</EM></FONT>
+   <FONT COLOR=red><A NAME="1918_4">Offset_parx</A></FONT>        : <b>constant</b> Natural := 12; <FONT COLOR=green><EM>--  int</EM></FONT>
+   <FONT COLOR=red><A NAME="1919_4">Offset_notimeout</A></FONT>   : <b>constant</b> Natural := 24; <FONT COLOR=green><EM>--  char</EM></FONT>
+   <FONT COLOR=red><A NAME="1920_4">Offset_clear</A></FONT>       : <b>constant</b> Natural := 25; <FONT COLOR=green><EM>--  char</EM></FONT>
+   <FONT COLOR=red><A NAME="1921_4">Offset_leaveok</A></FONT>     : <b>constant</b> Natural := 26; <FONT COLOR=green><EM>--  char</EM></FONT>
+   <FONT COLOR=red><A NAME="1922_4">Offset_scroll</A></FONT>      : <b>constant</b> Natural := 27; <FONT COLOR=green><EM>--  char</EM></FONT>
+   <FONT COLOR=red><A NAME="1923_4">Offset_idlok</A></FONT>       : <b>constant</b> Natural := 28; <FONT COLOR=green><EM>--  char</EM></FONT>
+   <FONT COLOR=red><A NAME="1924_4">Offset_idcok</A></FONT>       : <b>constant</b> Natural := 29; <FONT COLOR=green><EM>--  char</EM></FONT>
+   <FONT COLOR=red><A NAME="1925_4">Offset_immed</A></FONT>       : <b>constant</b> Natural := 30; <FONT COLOR=green><EM>--  char</EM></FONT>
+   <FONT COLOR=red><A NAME="1926_4">Offset_sync</A></FONT>        : <b>constant</b> Natural := 31; <FONT COLOR=green><EM>--  char</EM></FONT>
+   <FONT COLOR=red><A NAME="1927_4">Offset_use_keypad</A></FONT>  : <b>constant</b> Natural := 32; <FONT COLOR=green><EM>--  char</EM></FONT>
+   <FONT COLOR=red><A NAME="1928_4">Sizeof_bool</A></FONT>        : <b>constant</b> Natural :=  1; <FONT COLOR=green><EM>--  bool</EM></FONT>
    Offset_XY          : <b>constant</b> Natural :=  1; <FONT COLOR=green><EM>--  int</EM></FONT>
 
-   <b>type</b> Curses_Bool <b>is</b> <b>mod</b> 2 ** <A HREF="terminal_interface-curses__ads.htm#1931_9">Interfaces</A>.C.char'Size;
+   <b>type</b> Curses_Bool <b>is</b> <b>mod</b> 2 ** <A HREF="terminal_interface-curses__ads.htm#1930_9">Interfaces</A>.C.char'Size;
    Curses_Bool_False : <b>constant</b> Curses_Bool := 0;
 
 <b>end</b> Terminal_Interface.Curses;
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index 5072021755cb34554e31820877e9994dc504b272..4557d5b9dd161332fac45c0b74f03de9a5d0f1f2 100644 (file)
 <FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written       --</EM></FONT>
 <FONT COLOR=green><EM>-- authorization.                                                           --</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<FONT COLOR=green><EM>--  Author:  <A HREF="http://www.familiepfeifer.de/juergen">J&uuml;rgen Pfeifer</A>, 1996</EM></FONT>
-<FONT COLOR=green><EM>--  Contact: <A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">www.familiepfeifer.de/Contact.aspx?Lang=en</A></EM></FONT>
+<FONT COLOR=green><EM>--  Author:  Juergen Pfeifer, 1996</EM></FONT>
 <FONT COLOR=green><EM>--  Version Control:</EM></FONT>
-<FONT COLOR=green><EM>--  @Revision: 1.11 @</EM></FONT>
+<FONT COLOR=green><EM>--  @Revision: 1.12 @</EM></FONT>
 <FONT COLOR=green><EM>--  Binding Version 01.00</EM></FONT>
 <FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-<b>package</b> <FONT COLOR=red><A NAME="42_9">Terminal_Interface</A></FONT> <b>is</b>
-   <b>pragma</b> Pure (<A HREF="terminal_interface__ads.htm#42_9">Terminal_Interface</A>);
+<b>package</b> <FONT COLOR=red><A NAME="41_9">Terminal_Interface</A></FONT> <b>is</b>
+   <b>pragma</b> Pure (<A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A>);
 <FONT COLOR=green><EM>--</EM></FONT>
 <FONT COLOR=green><EM>--  Everything is in the child units</EM></FONT>
 <FONT COLOR=green><EM>--</EM></FONT>
-<b>end</b> Terminal_Interface;
+<b>end</b> <A HREF="terminal_interface__ads.htm#41_9">Terminal_Interface</A><A HREF="terminal_interface__ads.htm#41_9">;</A>
 
 
-</PRE></BODY></HTML>
\ No newline at end of file
+</PRE></BODY></HTML>
index abe392e6586d9eb16e6c175151ec15ff37867565..caecbd72b1fccf909769148c2ddcbfb78244f905 100644 (file)
@@ -1,15 +1,16 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN">
 <!--
-  $Id: announce.html,v 1.41 2002/10/12 23:35:53 tom Exp $
+  $Id: announce.html,v 1.46 2004/01/18 01:28:19 tom Exp $
 -->
 <HTML>
 <HEAD>
-<TITLE>Announcing ncurses 5.3 Pre-Release</TITLE>
+<TITLE>Announcing ncurses 5.4</TITLE>
 <link rev=made href="mailto:bug-ncurses@gnu.org">
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 </HEAD>
 <BODY>
 
-<H1>Announcing ncurses 5.3</H1>
+<H1>Announcing ncurses 5.4</H1>
 
 The ncurses (new curses) library is a free software emulation of
 curses in System V Release 4.0, and more.  It uses terminfo format,
@@ -35,173 +36,304 @@ the library and tools.<P>
 
 The ncurses distribution is available via anonymous FTP at
 the GNU distribution site
-<A HREF="ftp://ftp.gnu.org/pub/gnu/ncurses">ftp://ftp.gnu.org/pub/gnu/ncurses</A>.
+<A HREF="ftp://ftp.gnu.org/gnu/ncurses/">ftp://ftp.gnu.org/gnu/ncurses/</A>&nbsp;.
 <br>It is also available at
-<A HREF="ftp://invisible-island.net/ncurses">ftp://invisible-island.net/ncurses</A>.
+<A HREF="ftp://invisible-island.net/ncurses/">ftp://invisible-island.net/ncurses/</A>&nbsp;.
 
 <H1>Release Notes</H1>
 
-This release is designed to be upward compatible from ncurses 5.0 and 5.2;
+This release is designed to be upward compatible from ncurses 5.0 and 5.3;
 very few applications will require recompilation, depending on the platform.
-These are the highlights from the change-log since ncurses 5.2 release.
+These are the highlights from the change-log since ncurses 5.3 release.
 <p>
 Interface changes:
 <ul>
-       <li>change type for bool used in headers to <code>NCURSES_BOOL</code>,
-         which usually is the same as the compiler's definition for
-         <code>bool</code>.
-
-       <li>add all but two functions for X/Open curses wide-character support. 
-         These are only available if the library is configured using the
-         <kbd>--enable-widec</kbd> option.  Missing functions are
-               <ul>
-               <li>pecho_wchar()
-               <li>slk_wset()
-               </ul>
-
-       <li>add environment variable <code>$NCURSES_ASSUMED_COLORS</code> to
-         modify the <code>assume_default_colors()</code> extension.
-
+        <li>add the remaining functions for X/Open curses wide-character
+            support.
+                <ul>
+                <li>pecho_wchar()
+                <li>slk_wset()
+                </ul>
+            These are only available if the library is configured using the
+            <kbd>--enable-widec</kbd> option.
+
+        <li>write <code>getyx()</code> and related 2-return macros in terms of
+            <code>getcury()</code>,
+            <code>getcurx()</code>, etc.
+
+        <li>simplify ifdef for <code>bool</code> declaration in curses.h
+
+        <li>modify ifdef's in curses.h that disabled use of
+            <code>__attribute__()</code> for g++, since recent versions
+            implement the cases which ncurses uses.
+
+        <li>add <code>key_defined()</code> function, to tell which keycode a
+            string is bound to.
 </ul>
 New features and improvements:
 <ul>
-       <li>Improved support for termcap applications:
-       <ul>
-       <li>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.
-
-       <li>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.
-
-       <li>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.
-
-       <li>add tic -A option to suppress capabilities which are commented out
-         when translating to termcap.
-
-       <li>modify logic in lib_baudrate.c for ospeed, for FreeBSD to make it
-         work properly for termcap applications (patch by Andrey A Chernov).
-
-       </ul>
-
-       <li>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).
-
-       <li>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.
+        <li>library
+          <ul>
+            <li>implement logic in lib_mouse.c to handle position reports which
+              are generated when XFree86 xterm is initialized with private
+              modes 1002 or 1003. These are returned to the application as the
+              REPORT_MOUSE_POSITION mask, which was not implemented.
+            <li>modify soft-key initialization to use A_REVERSE if A_STANDOUT
+              would not be shown when colors are used, i.e., if ncv#1 is set in
+              the terminfo as is done in "screen".
+            <li>add configure option for FreeBSD sysmouse, --with-sysmouse, and
+              implement library support for that.
+          </ul>
+
+        <li>programs:
+
+          <ul>
+          <li>tack:
+
+            <ul>
+            <li>allow it to run from fallback terminfo data.
+            <li>reset colors after each color test, correct a place
+                where <code>exit_standout_mode</code> was used instead of
+                <code>exit_attribute_mode</code>.
+            <li>improve <code>bce</code> test by making it set colors other
+                than black on white.
+            </ul>
+
+          <li>tic:
+
+            <ul>
+            <li>handle a case where an entry has no
+                description, and capabilities begin on the same line as the entry
+                name.
+            <li>allow a terminfo entry with a leading 2-character name.
+            <li>improved warnings when suppressing items to fit in termcap's
+                1023-byte limit.
+            <li>add check for multiple "tc=" clauses in a termcap.
+            <li>correct logic for resolving "use=" clauses
+                allow infocmp and tic to show cancelled capabilities.
+            <li>check for incomplete line-drawing character mapping.
+            <li>check for missing/empty/illegal terminfo name.
+            </ul>
+
+          <li>tput:
+            <ul>
+            <li>modify tput to use the same parameter analysis as tparm() does,
+              to provide for user-defined strings, e.g., for xterm title, a
+              corresponding capability might be
+                title=\E]2;%p1%s^G,
+            </ul>
+
+          <li>tset:
+
+            <ul>
+            <li>use the system's default values for CKILL and other default
+                control characters.
+            <li>correct interchanged defaults for kill and interrupt
+                characters, which caused it to report unnecessarily.
+            </ul>
+
+          </ul>
 </ul>
 Major bug fixes:
 <ul>
-       <li>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.
-
-       <li>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().
-
-       <li>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.
-
-       <li>modified wresize() to ensure that a failed realloc will not corrupt
-         the window structure, and to make subwindows fit within the resized
-         window.
-
-       <li>altered resizeterm() to avoid having it fail when a child window
-         cannot be resized because it would be larger than its parent.
-
-       <li>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.
-
-       <li>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.
-
-       <li>add a check in relative_move() to guard against buffer overflow in
-         the overwrite logic.
-
-       <li>add some limit/pointer checks to -S option of tputs.
+        <li>prevent recursion in wgetch() via wgetnstr() if the connection
+          cannot be switched between cooked/raw modes because it is not a TTY.
+
+        <li>correct a case in _nc_remove_string(), used by
+          <code>define_key()</code>, to avoid infinite loop if the given string
+          happens to be a substring of other strings which are assigned to keys.
+
+        <li>modify logic of acsc to use the original character if no mapping is
+          defined, rather than a null.
+
+        <li>several improvements for handling multi-cell display of wide
+            characters.
+          <ul>
+          <li>modify setcchar() to allow converting control characters to complex
+            characters.
+          <li>correct handling of multibyte characters in waddch_literal() which
+            force wrapping because they are started too late on the line.
+          <li>modify setcchar() to allow for wchar_t input strings that have
+            more than one spacing character.
+          </ul>
+
+       <li>other fixes for wide-character support:
+         <ul>
+          <li>rewrote lib_acs.c to allow PutAttrChar() to decide how to render
+            alternate-characters, i.e., to work with Linux console and UTF-8
+            locale.
+          <li>implement a workaround so that line-drawing works with screen's
+            crippled UTF-8 support (tested with 3.9.13).  This only works with
+           the wide-character support (--enable-widec); the normal library
+           will simply suppress line-drawing when running in a UTF-8 locale in
+           screen.
+          <li>corrections to lib_get_wstr.c:
+            <ul>
+            <li>null-terminate buffer passed to setcchar(), which occasionally
+              failed.
+            <li>map special characters such as erase- and kill-characters into
+              key-codes so those will work as expected even if they are not
+              mentioned in the terminfo.
+            </ul>
+         </ul>
 
-       <li>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).
+        <li>modify <code>setupterm()</code> to check if the terminfo and
+          terminal-modes have already been read.  This ensures that it does not
+          reinvoke <code>def_prog_mode()</code> when an application calls more
+          than one function, such as <code>tgetent()</code> and
+          <code>initscr()</code>.
+
+        <li>fix form_driver() cases for REQ_CLR_EOF, REQ_CLR_EOL, REQ_DEL_CHAR,
+          REQ_DEL_PREV and REQ_NEW_LINE, which did not ensure the cursor was at
+          the editing position before making modifications.
+
+        <li>correct <code>keybound()</code>, which reported definitions in the
+          wrong table, i.e., the list of definitions which are disabled by
+          <code>keyok()</code>.
+
+        <li>fixes related to safe_sprintf.c:
+          <ul>
+          <li>correct an allocation size in safe_sprintf.c for the "*" format
+          code.
+          <li>correct safe_sprintf.c to not return a null pointer if the format
+            happens to be an empty string.
+          <li>make return value from _nc_printf_string() consistent. Before,
+            depending on whether --enable-safe-sprintf was used, it might not
+            be cached for reallocating.
+          </ul>
+
+        <li>other low-level improvements to the optimization code include:
+          <ul>
+          <li>if the output is a socket or other non-tty device, use 1
+            millisecond
+            for the cost in mvcur; previously it was 9 milliseconds because the
+            baudrate was not known.
+          <li>modify lib_getch.c to avoid recursion via wgetnstr() when the
+            input
+            is not a tty and consequently mode-changes do not work.
+          <li>fix several places in tack/pad.c which tested and used the
+            parameter- and parameterless strings inconsistently.
+          <li>change several tputs() calls in scrolling code to use putp(), to
+            enable padding which may be needed for some terminals.
+          <li>improve mvcur() by checking if it is safe to move when video
+            attributes are set (msgr), and if not, reset/restore attributes
+            within that function rather than doing it separately in the GoTo()
+            function in tty_update.c.
+         <li>use tputs() rather than putp() in a few cases in tty_update.c
+           since the corresponding delays are proportional to the number of
+           lines affected: repeat_char, clr_eos, change_scroll_region.
+          </ul>
+
+        <li>correct line/column reference in adjust_window(), needed to make
+          special windows such as curscr track properly when resizing.
+
+        <li>fix a potential recursion between napms() and _nc_timed_wait()
+
+        <li>rewrote lib_insch.c, combining it with lib_insstr.c so both handle
+          tab and other control characters consistently.
+
+        <li>do not try to open gpm mouse driver if standard output is not a
+          tty; the gpm library does not make this check.
 </ul>
 
 Portability:
 <ul>
-       <li>configure script:
-       <ul>
-         <li>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.
-
-         <li>correct a typo in configure --enable-colorfgbg option, and move it
-           to the experimental section (cf: 20011208).
-
-         <li>modify configure script to allow building with termcap only, or with
-           fallbacks only.  In this case, we do not build tic and toe.
-
-         <li>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.
-
-         <li>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.
-
-         <li>add several configure script options to aid with cross-compiling:
-           --with-build-cc, --with-build-cflags, --with-build-ldflags, and
-           --with-build-libs.
-
-         <li>add experimental --with-caps=XXX option to customize to similar
-           terminfo database formats such as AIX 4.x
-
-         <li>add configure option --with-ospeed to assist packagers in transition
-           to 5.3 change to ospeed type.
-         </ul>
-
-       <li>library:
-       <ul>
-         <li>implement a simple vsscanf() fallback function which uses the %n
-           conversion to help parse the input data.
-
-         <li>various fixes to build/work with different implementations of
-           vsscanf().
-
-         <li>add/use macro to suppress sign-extension of char type on
-           platforms where this is a problem in ctype macros, e.g., Solaris.
-
-         <li>finish changes needed to build dll's on cygwin.
-
-         <li>add #undef's before possible redefinition of ERR and OK in curses.h
-       </ul>
-
-       <li>programs:
-       <ul>
-         <li>modify ifdef's in write_entry.c to allow use of symbolic links on
-           platforms with no hard links, e.g., BeOS.
-
-         <li>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.
-
-         <li>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".
-       </ul>
+        <li>configure script:
+          <ul>
+          <li>new options:
+            <dl>
+            <dt>--with-abi-version option.
+             <dd>addresses platforms where packagers have diverged from
+                 ncurses ABI numbering.
+            <dt>--with-manpage-format=catonly
+              <dd>addresses
+                  behavior of BSDI, allow install of man+cat files on NetBSD,
+                  whose behavior has diverged by requiring both to be present.
+            <dt>--with-manpage-aliases
+              <dd>extends
+                  "--with-manpage-aliases" to provide the option of generating
+                  ".so" files rather than symbolic links for manpage aliases.
+            <dt>--with-rel-version
+              <dd>workaround to force
+                 libtool on Darwin generate the "same" library names as with
+                 the "--with-shared" option.  The Darwin ld program does not
+                 work well with a zero as the minor-version value.
+            <dt>--with-trace
+              <dd>simplifies defining TRACE to incorporate trace() in libraries.
+            </dl>
+  
+          <li>fixes/improvements for cross-compiling:
+  
+            <ul>
+            <li>allow BUILD_CC and related configure script variables to be
+              overridden from the environment.
+            <li>use AC_CHECK_TOOL to get proper values for AR and LD for cross
+              compiling.
+           <li>use <code>$cross_compiling</code> variable in configure script
+             rather than comparing <code>$host_alias</code> and
+             <code>$target</code> alias, since "host" is traditionally misused
+             in autoconf to refer to the target platform.
+            <li>modify run_tic.in to avoid using wrong shared libraries when
+              cross-compiling.
+            </ul>
+  
+          <li>fixes for Mac OS X:
+            <ul>
+            <li>fix a redefinition of <code>$RANLIB</code> in the configure
+              script when libtool is used.
+            <li>modify MKlib_gen.sh to avoid passing "#" tokens through the C
+              preprocessor.  This works around Mac OS X's preprocessor, which
+              insists on adding a blank on each side of the token.
+            </ul>
+  
+          <li>workarounds for broken tools:
+            <ul>
+            <li>add configure check for wchar_t and wint_t types, rather than
+              rely on preprocessor definitions.  Also work around for gcc
+             <code>fixinclude</code> bug which creates a shadow copy of
+             curses.h if it sees these symbols apparently typedef'd.
+           <li>modify configure script to omit -Winline for gcc 3.3, since
+             that feature is broken.
+            <li>several script fixes to work around the ironically named
+              <em>POSIXLY_CORRECT</em> feature of GNU sed 4.0.
+           <li>modify configure script to avoid using "head -1", which does
+             not work if POSIXLY_CORRECT (sic) is set.
+            <li>update configure script to reflect fix for
+              AC_PROG_GCC_TRADITIONAL, which is broken in autoconf 2.5x for Mac
+              OS X 10.2.3.
+            <li>repair check for missing C++ compiler, which is broken in
+              autoconf 2.5x by hardcoding it to g++.
+            </ul>
+  
+          <li>corrected ifdef's relating to configure check for wchar_t, etc.
+          <li>remove configure script check to allow -Wconversion for older
+            versions of gcc
+         <li>modify configure script to accommodate libtool 1.5, as well as
+           add an parameter to the "--with-libtool" option which can specify
+           the pathname of libtool.
+          <li>change several sed scripts to avoid using "\+" since it is not a
+           BRE (basic regular expression).  One instance caused terminfo.5 to
+           be misformatted on FreeBSD.
+          <li>use '%' as sed substitute delimiter in run_tic script to avoid
+            problems with pathname delimiters such as ':' and '@'.
+          <li>add -D_XOPEN_SOURCE=500 if needed when configuring with
+           "--enable-widec", to get <code>mbstate_t</code> declaration on HPUX
+           11.11.
+          </ul>
+
+        <li>library:
+          <ul>
+          <li>adjust include-options in CF_ETIP_DEFINES to avoid missing
+            ncurses_dll.h, fixing special definitions that may be needed for
+            etip.h.
+          <li>modify CF_LIB_SUFFIX for Itanium releases of HP-UX, which use a
+            ".so" suffix.
+          <li>improve ifdef's to guard against redefinition of wchar_t and wint_t
+            in curses.h.
+          <li>remove an #undef for KEY_EVENT from curses.tail used in the
+            experimental NCURSES_WGETCH_EVENTS feature.  The #undef confuses
+            Debian <code>dpkg</code>'s build script.
+          </ul>
 </ul>
 
 <H1>Features of Ncurses</H1>
@@ -317,61 +449,60 @@ including (versions starting with those noted):
 <DT> cdk
 <DD> Curses Development Kit
 <br>
-<A HREF="http://invisible-island.net/cdk/cdk.html">http://invisible-island.net/cdk</A>.
+<A HREF="http://invisible-island.net/cdk/">http://invisible-island.net/cdk/</A>
 <br>
-<A HREF="http://www.vexus.ca/CDK.html">http://www.vexus.ca/CDK.html</a>
+<A HREF="http://www.vexus.ca/products/CDK/">http://www.vexus.ca/products/CDK/</a>
 <DT> ded
 <DD> directory-editor
 <br>
-<A HREF="http://invisible-island.net/ded/ded.html">http://invisible-island.net/ded</A>.
+<A HREF="http://invisible-island.net/ded/">http://invisible-island.net/ded/</A>
 <DT> dialog
 <DD> the underlying application used in Slackware's setup, and the basis
 for similar applications on GNU/Linux.
 <br>
-<A HREF="http://invisible-island.net/dialog/dialog.html">http://invisible-island.net/dialog</A>.
+<A HREF="http://invisible-island.net/dialog/">http://invisible-island.net/dialog/</A>
 <DT> lynx
 <DD> the character-screen WWW browser
 <br>
-<A HREF="http://lynx.isc.org/release/">http://lynx.isc.org/release</A>.
+<A HREF="http://lynx.isc.org/release/">http://lynx.isc.org/release/</A>
 <DT> Midnight Commander
 <DD> file manager
 <br>
-<A HREF="www.gnome.org/mc/">www.gnome.org/mc/</A>.
+<A HREF="http://www.ibiblio.org/mc/">http://www.ibiblio.org/mc/</A>
 <DT> mutt
 <DD> mail utility
 <br>
-<A HREF="http://www.mutt.org">http://www.mutt.org</A>.
+<A HREF="http://www.mutt.org/">http://www.mutt.org/</A>
 <DT> ncftp
 <DD> file-transfer utility
 <br>
-<A HREF="http://www.ncftp.com">http://www.ncftp.com</A>.
+<A HREF="http://www.ncftp.com/">http://www.ncftp.com/</A>
 <DT> nvi
 <DD> New vi versions 1.50 are able to use ncurses versions 1.9.7 and later.
 <br>
-<A HREF="http://www.bostic.com/vi/">http://www.bostic.com/vi/</A>.
+<A HREF="http://www.bostic.com/vi/">http://www.bostic.com/vi/</A>
+<br>
+<DT> pinfo
+<DD> Lynx-like info browser.
+<A HREF="http://dione.ids.pl/~pborys/software/pinfo/">http://dione.ids.pl/~pborys/software/pinfo/</A>
 <DT> tin
 <DD> newsreader, supporting color, MIME
-<br>
-<A HREF="http://www.tin.org">http://www.tin.org</A>.
-<DT> taper
-<DD> tape archive utility
-<br>
-<A HREF="http://members.iinet.net.au/~yusuf/taper/">http://members.iinet.net.au/~yusuf/taper/</A>.
+<A HREF="http://www.tin.org/">http://www.tin.org/</A>
 <DT> vh-1.6
 <DD> Volks-Hypertext browser for the Jargon File
 <br>
-<A HREF="http://www.bg.debian.org/Packages/unstable/text/vh.html">http://www.bg.debian.org/Packages/unstable/text/vh.html</A>.
+<A HREF="http://www.debian.org/Packages/unstable/text/vh.html">http://www.debian.org/Packages/unstable/text/vh.html</A>
 </DL>
 as well as some that use ncurses for the terminfo support alone:
 <DL>
 <DT> minicom
 <DD> terminal emulator
 <br>
-<A HREF="http://www.pp.clinet.fi/~walker/minicom.html">http://www.pp.clinet.fi/~walker/minicom.html</A>.
+<A HREF="http://www.netsonic.fi/~walker/minicom.html">http://www.netsonic.fi/~walker/minicom.html</A>
 <DT> vile
 <DD> vi-like-emacs
 <br>
-<A HREF="http://invisible-island.net/vile/vile.html">http://invisible-island.net/vile</A>.
+<A HREF="http://invisible-island.net/vile/">http://invisible-island.net/vile/</A>
 </DL>
 <P>
 
@@ -380,16 +511,16 @@ a few games).
 
 <H2>Who's Who and What's What</H2>
 
-The original developers of ncurses are <A
-HREF="mailto:zmbenhal@netcom.com">Zeyd Ben-Halim</A> and
-<A HREF="http://www.ccil.org/~esr/home.html">Eric S. Raymond</A>.
+Zeyd Ben-Halim
+started it from a previous package pcurses, written by Pavel Curtis.
+Eric S. Raymond
+continued development.
+J&uuml;rgen Pfeifer wrote most of the form and menu libraries.
 Ongoing work is being done by
-<A HREF="mailto:dickey@herndon4.his.com">Thomas Dickey</A>
-and
-<A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">J&uuml;rgen Pfeifer</A>.
-<A HREF="mailto:dickey@herndon4.his.com">Thomas Dickey</A>
-acts as the maintainer for the Free Software Foundation, which holds the
-copyright on ncurses.
+<A HREF="mailto:dickey@invisible-island.net">Thomas Dickey</A>.
+Thomas Dickey
+acts as the maintainer for the Free Software Foundation,
+which holds the copyright on ncurses.
 Contact the current maintainers at
 <A HREF="mailto:bug-ncurses@gnu.org">bug-ncurses@gnu.org</A>.
 <P>
@@ -404,7 +535,7 @@ This list is open to anyone interested in helping with the development and
 testing of this package.<P>
 
 Beta versions of ncurses and patches to the current release are made available at
-<A HREF="ftp://invisible-island.net/ncurses">ftp://invisible-island.net/ncurses</A>.
+<A HREF="ftp://invisible-island.net/ncurses/">ftp://invisible-island.net/ncurses/</A>&nbsp;.
 
 <H2>Future Plans</H2>
 <UL>
@@ -416,14 +547,16 @@ on them, please join the ncurses list.
 
 <H2>Other Related Resources</H2>
 
-The distribution includes and uses a version of the terminfo-format
-terminal description file maintained by Eric Raymond.
-<A HREF="http://earthspace.net/~esr/terminfo">http://earthspace.net/~esr/terminfo</A>.<P>
+The distribution provides a newer version of the terminfo-format
+terminal description file maintained by
+<A HREF="http://www.catb.org/~esr/terminfo/">Eric Raymond</A>&nbsp;.
+Unlike the older version, the termcap and terminfo data are provided
+in the same file.<P>
 
 You can find lots of information on terminal-related topics
 not covered in the terminfo file at
 <A HREF="http://www.cs.utk.edu/~shuford/terminal_index.html">Richard Shuford's
-archive</A>.
+archive</A>&nbsp;.
 </BODY>
 </HTML>
 <!--
index ce033a1cdb5bb655b3be53de4de909d35efc96e2..db6b5c04c20a22172e297585e10696c33645208d 100644 (file)
@@ -1,11 +1,12 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN">
 <!--
-  $Id: hackguide.html,v 1.25 2000/03/25 18:45:21 tom Exp $
+  $Id: hackguide.html,v 1.26 2003/10/04 22:34:02 tom Exp $
 -->
 <HTML>
 <HEAD>
 <TITLE>A Hacker's Guide to Ncurses Internals</TITLE>
 <link rev="made" href="mailto:bugs-ncurses@gnu.org">
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 <!--
 This document is self-contained, *except* that there is one relative link to
 the ncurses-intro.html document, expected to be in the same directory with
index cd2cfe0a675437adf7a2c93f1c723c6f00990168..0b4066904dfcf15480709ab5e2581e2202175d53 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: captoinfo.1m,v 1.16 2000/08/13 01:56:49 tom Exp @
+  * @Id: captoinfo.1m,v 1.17 2003/05/11 00:32:53 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>                                       <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        CV       ve     AT&amp;T    cursor_normal
        DS       mh     AT&amp;T    enter_dim_mode
        EE       me     AT&amp;T    exit_attribute_mode
-
        FE       LF     AT&amp;T    label_on
        FL       LO     AT&amp;T    label_off
        XS       mk     AT&amp;T    enter_secure_mode
        GS       as     XENIX   enter_alt_charset_mode
        HM       kh     XENIX   key_home
        LD       kL     XENIX   key_dl
+
        PD       kN     XENIX   key_npage
        PN       po     XENIX   prtr_off
        PS       pf     XENIX   prtr_on
        mode.  You can use other <EM>tic</EM> options such as <STRONG>-f</STRONG> and  <STRONG>-x</STRONG>.
 
        The  trace  option isn't identical to SVr4's.  Under SVr4,
-       instead of following the -v with  a  trace  level  n,  you
+       instead of following the <STRONG>-v</STRONG> with  a  trace  level  n,  you
        repeat it n times.
 
 
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index d0e7900677bbf7ee6fb7a1c70acc7ca990f9c33a..d692180f69c01344294edcd2a171587282ab19ee 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>                                                 <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                         <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 52af77b74a5f7f4b291786b47dbda7b7654faa9a..564c46003ab0afeb8e083f2238596330cfefa3f7 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>                                 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        success.
 
 
-
 </PRE>
 <H2>NOTES</H2><PRE>
        Note that <STRONG>add_wch</STRONG>, <STRONG>mvadd_wch</STRONG>, <STRONG>mvwadd_wch</STRONG>,  and  <STRONG>echo_wchar</STRONG>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index ba7569395ae304a4300862421ed0b2d6cb48455a..343a69b80a60731bea2667ea4fba4a62731dd487 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 2002 Free Software Foundation, Inc.                        *
+  * Copyright (c) 2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_add_wchstr.3x,v 1.1 2002/02/23 22:15:55 tom Exp @
+  * @Id: curs_add_wchstr.3x,v 1.2 2003/12/27 18:53:41 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>                           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        standard, Issue 4.
 
 
-
 </PRE>
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                              <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 2c0f6e7b6bae3b2452b7f56108ee229e351f0235..301f3007ed8e0749116be12200773e3001ab00f9 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_addch.3x,v 1.20 2002/08/10 22:12:36 tom Exp @
+  * @Id: curs_addch.3x,v 1.22 2003/12/27 18:38:28 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>                                     <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -77,7 +81,7 @@
        sor one character left; at the left edge of  a  window  it
        does  nothing.   Newline  does  a <STRONG>clrtoeol</STRONG>, then moves the
        cursor to  the  window  left  margin  on  the  next  line,
-       scrolling  the window if on the last line).  Tabs are con-
+       scrolling  the  window if on the last line.  Tabs are con-
        sidered to be at every eighth column.   The  tab  interval
        may be altered by setting the <STRONG>TABSIZE</STRONG> variable.
 
@@ -91,7 +95,7 @@
        passed to <STRONG>addch</STRONG> or related functions by logical-ORing them
        into  the  character.   (Thus, text, including attributes,
        can be copied from one place to  another  using  <STRONG>inch</STRONG>  and
-       <STRONG>addch</STRONG>.).   See the <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> page for values of prede-
+       <STRONG>addch</STRONG>.)   See  the <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> page for values of prede-
        fined video attribute constants that can be usefully OR'ed
        into characters.
 
        ACS_VLINE      |         vertical line
 
 
-
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
        All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 18db3f077fc001f79955327889de4764ad4c4348..486f247d61fa233ed7661731d82ec04d56f28c04 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_addchstr.3x,v 1.7 2000/07/01 19:53:33 tom Exp @
+  * @Id: curs_addchstr.3x,v 1.8 2003/12/27 18:51:24 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>                               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -83,7 +87,6 @@
        wrapping it around to the new line.
 
 
-
 </PRE>
 <H2>RETURN VALUES</H2><PRE>
        All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
 
 
+
+                                                <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 4f4857d3f6112ae9c0cc9af0ff4c7dd31e479ff9..57ebeb6caff716adcb6773e53240c51bb6937c40 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_addstr.3x,v 1.10 2002/03/09 23:09:29 tom Exp @
+  * @Id: curs_addstr.3x,v 1.11 2003/12/27 18:51:15 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>                                   <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index d761b3516f343d5d2495dcefff38f2c85155f846..38e95897cba335ad5f6a943b68adbc3ecfbca1d1 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 2002 Free Software Foundation, Inc.                        *
+  * Copyright (c) 2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_addwstr.3x,v 1.2 2002/03/09 23:16:59 tom Exp @
+  * @Id: curs_addwstr.3x,v 1.3 2003/12/27 18:51:01 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>                                 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
+                                                 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index fa0c4e11d2442cd4f7a3c10301c865d3573dec3c..80ddcc99a8aeb61d4a3f39a9d7e9c099101657b7 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_attr.3x,v 1.26 2002/09/21 19:50:06 tom Exp @
+  * @Id: curs_attr.3x,v 1.27 2003/12/27 18:50:51 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>                                       <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
         <STRONG>A_REVERSE</STRONG>       Reverse video
         <STRONG>A_BLINK</STRONG>         Blinking
         <STRONG>A_DIM</STRONG>           Half bright
-
         <STRONG>A_BOLD</STRONG>          Extra bright or bold
         <STRONG>A_PROTECT</STRONG>       Protected mode
         <STRONG>A_INVIS</STRONG>         Invisible or blank mode
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index a3df0f94090a9ae55b08f339d79a17082f813abb..089f8aabee657f369cba0e14be47318eb98379e6 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998 Free Software Foundation, Inc.                        *
+  * Copyright (c) 1998,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_beep.3x,v 1.7 1998/03/11 21:12:53 juergen Exp @
+  * @Id: curs_beep.3x,v 1.9 2003/12/27 18:44:30 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>                                       <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 178a8f61b7d3da38183b133c4c3b2a33c9686f63..cbb0904765bda9599c84d3ed2d09650df5d8361d 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_bkgd.3x,v 1.18 2002/09/21 19:46:26 tom Exp @
+  * @Id: curs_bkgd.3x,v 1.19 2003/12/27 18:50:40 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>                                       <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -47,7 +51,6 @@
        background manipulation routines
 
 
-
 </PRE>
 <H2>SYNOPSIS</H2><PRE>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 4a445359c0738e2f05fadbb5d8fbd346b807528d..6424ae28ee48744f07341849ed6287d4d451004d 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>                                   <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index e6f9adbfc74cdc599c433f0bb39ae2bbfc06d452..49176f3aabf249559a34b20e515eb431357f6f68 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>                                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        tion in the window.  The current cursor  position  is  not
        changed.   The  line  is  at most <EM>n</EM> characters long, or as
        many as fit into the window.
+
        The <STRONG>vline</STRONG> and <STRONG>wvline</STRONG> functions draw  a  vertical  (top  to
        bottom) line using <EM>ch</EM> starting at the current cursor posi-
        tion in the window.  The current cursor  position  is  not
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index b5a3ebb3fd80a1b47d874ae060668b7a2dfad415..1e93b1f9956d6bf58c7f0778e86a6522ccef0e86 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>                           <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        around  the  edges  of  the  current  or specified window.
        These functions do not change the cursor position, and  do
        not wrap.
+
        Other  than the window, each argument is a complex charac-
        ter with attributes:
               <EM>ls</EM> - left side,
 
 
 
+                                              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index bb5ff2269a333c34bc45658bc432c36460070791..6838d5b99c3e882706005be51fa8b2aef0f05ba8 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>                                     <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
        Some  historic  curses  implementations had, as an undocu-
        mented feature,  the  ability  to  do  the  equivalent  of
-       <STRONG>clearok(...,</STRONG>    <STRONG>1)</STRONG>    by    saying   <STRONG>touchwin(stdscr)</STRONG>   or
-       <STRONG>clear(stdscr)</STRONG>.  This will not work under ncurses.
+       <STRONG>clearok(...,</STRONG>  <STRONG>1)</STRONG>  by saying <STRONG>touchwin(stdscr)</STRONG> or <STRONG>clear(std-</STRONG>
+       <STRONG>scr)</STRONG>.  This will not work under ncurses.
 
 
 </PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 2165cebf4ff82d394fffb78f366a3dc639835454..eda9d7ec35a76698fac778f75d603680b17867eb 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>                                     <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 10840ed93a7cc1ab034bd001621951eeaafa0dfc..6c2e86324439a53edead2e463417d399201d6bd5 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>                                     <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 2c3fc1ceba105acbd9418e409d744b72d68baa24..7f6092542ebad28a66fe27fdd0a95b979a3c2cdc 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_deleteln.3x,v 1.7 2000/11/11 20:43:20 Bernhard.Rosenkraenzer Exp @
+  * @Id: curs_deleteln.3x,v 1.8 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>                               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -73,7 +77,7 @@
        and  move  the remaining lines up.  The bottom <EM>n</EM> lines are
        cleared.  The current cursor position remains the same.
 
-       The <STRONG>insertln</STRONG> and <STRONG>winsertln</STRONG> routines, insert a  blank  line
+       The <STRONG>insertln</STRONG> and <STRONG>winsertln</STRONG> routines insert  a  blank  line
        above the current line and the bottom line is lost.
 
 
 
 
 
-
+                                                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 188389febe87013c2fb655032f9639fb46b6101f..ccb182b01c00ae2ad34ade00bc8f335d3e8e992d 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1999-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1999-2002,2003 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            *
@@ -27,8 +27,8 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * Author: Thomas E. Dickey &lt;dickey@clark.net&gt; 1999
-  * @Id: curs_extend.3x,v 1.9 2002/02/16 22:39:04 tom Exp @
+  * Author: Thomas E. Dickey 1999
+  * @Id: curs_extend.3x,v 1.12 2003/10/25 20:33:16 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>                                   <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        standard names which may be  compiled  into  the  terminfo
        description, i.e., via the terminfo or termcap interfaces.
        Normally these names are  available  for  use,  since  the
-       essential  descision is made by using the <STRONG>-x</STRONG> option of <EM>tic</EM>
+       essential  decision  is made by using the <STRONG>-x</STRONG> option of <EM>tic</EM>
        to compile extended terminal definitions.  However you can
-       disable  this  feature  to  ensure compatiblity with other
-       implementations of curses
+       disable  this  feature  to ensure compatibility with other
+       implementations of curses.
 
 
 </PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index ddd3f4b1f000e7417dd8679237388b271729b95a..ba9f1230b39bbc83fb7f6180838858d7eea3c011 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 2002 Free Software Foundation, Inc.                        *
+  * Copyright (c) 2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_get_wch.3x,v 1.3 2002/05/18 21:48:53 tom Exp @
+  * @Id: curs_get_wch.3x,v 1.5 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>                                 <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 <H2>SYNOPSIS</H2><PRE>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
-       <STRONG>int</STRONG> <STRONG>get_wch(win_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
-       <STRONG>int</STRONG> <STRONG>wget_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>win_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
-       <STRONG>int</STRONG> <STRONG>mvget_wch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>win_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
-       <STRONG>int</STRONG> <STRONG>mvwget_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>win_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>get_wch(wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>wget_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvget_wch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvwget_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>unget_wch(const</STRONG> <STRONG>wchar_t</STRONG> <EM>wch</EM><STRONG>);</STRONG>
 
 
        operation may fail.
 
 
-
 </PRE>
 <H2>NOTES</H2><PRE>
        The  header  file  <STRONG>&lt;curses.h&gt;</STRONG>  automatically  includes the
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                 <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index b3b066d519f0cf51dc9bcd7048d15f99592906dc..4adca85bed43f60e5765c03239fbdaf9a1f23199 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 2002 Free Software Foundation, Inc.                        *
+  * Copyright (c) 2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_get_wstr.3x,v 1.2 2002/05/18 21:48:15 tom Exp @
+  * @Id: curs_get_wstr.3x,v 1.3 2003/07/05 11:15:28 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>                               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        treated as an  end-of-file  condition,  and  the  returned
        array contains a <STRONG>WEOF</STRONG> followed by a null <STRONG>wchar_t</STRONG>.
 
+       X/Open  curses  documents these functions to pass an array
+       of <STRONG>wchar_t</STRONG>, but all of the vendors  implement  this  using
+       <STRONG>wint_t</STRONG>.
+
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0ae39ca0db553e92b93f3629917dd62185f06515..5a5d8375f85835d05a67b0546f2c21c3649d6b2f 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 2001,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 2001-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getcchar.3x,v 1.6 2002/03/24 01:08:55 tom Exp @
+  * @Id: curs_getcchar.3x,v 1.7 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>                               <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 76b20e49b4e9b4eb6a325dd912700594aa88f99f..9b7b9d9cc2a64c51ac020951357858066683a324 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getch.3x,v 1.21 2002/03/17 14:36:21 tom Exp @
+  * @Id: curs_getch.3x,v 1.24 2003/12/27 18:46:06 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>                                     <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -89,7 +93,7 @@
        token for that function key is returned instead of the raw
        characters.    Possible   function  keys  are  defined  in
        <STRONG>&lt;curses.h&gt;</STRONG> as macros with  values  outside  the  range  of
-       8-bit  characters  whose  names  begin  with <STRONG>KEY_.</STRONG> Thus, a
+       8-bit  characters  whose  names  begin  with <STRONG>KEY_</STRONG>. Thus, a
        variable intended to hold the return value of  a  function
        key must be of short size or larger.
 
        that  not  all  of  these are necessarily supported on any
        particular terminal.
 
-           <EM>Name</EM>            <EM>Key</EM> <EM>name</EM>
-
-           KEY_BREAK       Break key
-           KEY_DOWN        The four arrow keys ...
-           KEY_UP
-           KEY_LEFT
-           KEY_RIGHT
-           KEY_HOME        Home key (upward+left arrow)
-           KEY_BACKSPACE   Backspace
-           KEY_F0          Function keys; space for 64  keys
-                           is reserved.
-           KEY_F(<EM>n</EM>)        For 0 &lt;= <EM>n</EM> &lt;= 63
-           KEY_DL          Delete line
-           KEY_IL          Insert line
-           KEY_DC          Delete character
-           KEY_IC          Insert char or enter insert mode
-           KEY_EIC         Exit insert char mode
-           KEY_CLEAR       Clear screen
-           KEY_EOS         Clear to end of screen
-           KEY_EOL         Clear to end of line
-           KEY_SF          Scroll 1 line forward
-           KEY_SR          Scroll 1 line backward (reverse)
-           KEY_NPAGE       Next page
-           KEY_PPAGE       Previous page
-           KEY_STAB        Set tab
-           KEY_CTAB        Clear tab
-           KEY_CATAB       Clear all tabs
-           KEY_ENTER       Enter or send
-           KEY_SRESET      Soft (partial) reset
-           KEY_RESET       Reset or hard reset
-           KEY_PRINT       Print or copy
-           KEY_LL          Home down or bottom (lower left).
-           KEY_A1          Upper left of keypad
-           KEY_A3          Upper right of keypad
-           KEY_B2          Center of keypad
-           KEY_C1          Lower left of keypad
-           KEY_C3          Lower right of keypad
-           KEY_BTAB        Back tab key
-           KEY_BEG         Beg(inning) key
-           KEY_CANCEL      Cancel key
-
-           KEY_CLOSE       Close key
-           KEY_COMMAND     Cmd (command) key
-           KEY_COPY        Copy key
-           KEY_CREATE      Create key
-           KEY_END         End key
-           KEY_EXIT        Exit key
-           KEY_FIND        Find key
-           KEY_HELP        Help key
-           KEY_MARK        Mark key
-           KEY_MESSAGE     Message key
-           KEY_MOUSE       Mouse event read
-           KEY_MOVE        Move key
-           KEY_NEXT        Next object key
-           KEY_OPEN        Open key
-           KEY_OPTIONS     Options key
-           KEY_PREVIOUS    Previous object key
-           KEY_REDO        Redo key
-           KEY_REFERENCE   Ref(erence) key
-           KEY_REFRESH     Refresh key
-           KEY_REPLACE     Replace key
-           KEY_RESIZE      Screen resized
-           KEY_RESTART     Restart key
-           KEY_RESUME      Resume key
-           KEY_SAVE        Save key
-           KEY_SBEG        Shifted beginning key
-           KEY_SCANCEL     Shifted cancel key
-           KEY_SCOMMAND    Shifted command key
-           KEY_SCOPY       Shifted copy key
-           KEY_SCREATE     Shifted create key
-           KEY_SDC         Shifted delete char key
-           KEY_SDL         Shifted delete line key
-           KEY_SELECT      Select key
-           KEY_SEND        Shifted end key
-           KEY_SEOL        Shifted clear line key
-           KEY_SEXIT       Shifted exit key
-           KEY_SFIND       Shifted find key
-           KEY_SHELP       Shifted help key
-           KEY_SHOME       Shifted home key
-           KEY_SIC         Shifted input key
-           KEY_SLEFT       Shifted left arrow key
-           KEY_SMESSAGE    Shifted message key
-           KEY_SMOVE       Shifted move key
-           KEY_SNEXT       Shifted next key
-           KEY_SOPTIONS    Shifted options key
-           KEY_SPREVIOUS   Shifted prev key
-           KEY_SPRINT      Shifted print key
-           KEY_SREDO       Shifted redo key
-           KEY_SREPLACE    Shifted replace key
-           KEY_SRIGHT      Shifted right arrow
-           KEY_SRSUME      Shifted resume key
-           KEY_SSAVE       Shifted save key
-           KEY_SSUSPEND    Shifted suspend key
-           KEY_SUNDO       Shifted undo key
-
-           KEY_SUSPEND     Suspend key
-           KEY_UNDO        Undo key
+            <EM>Name</EM>            <EM>Key</EM> <EM>name</EM>
+
+                   KEY_BREAK       Break key
+            KEY_DOWN        The four arrow keys ...
+            KEY_UP
+            KEY_LEFT
+            KEY_RIGHT
+            KEY_HOME        Home key (upward+left arrow)
+            KEY_BACKSPACE   Backspace
+            KEY_F0          Function keys; space for 64 keys
+                            is reserved.
+            KEY_F(<EM>n</EM>)        For 0 &lt;= <EM>n</EM> &lt;= 63
+            KEY_DL          Delete line
+            KEY_IL          Insert line
+            KEY_DC          Delete character
+            KEY_IC          Insert char or enter insert mode
+            KEY_EIC         Exit insert char mode
+            KEY_CLEAR       Clear screen
+            KEY_EOS         Clear to end of screen
+            KEY_EOL         Clear to end of line
+            KEY_SF          Scroll 1 line forward
+            KEY_SR          Scroll 1 line backward (reverse)
+            KEY_NPAGE       Next page
+            KEY_PPAGE       Previous page
+            KEY_STAB        Set tab
+            KEY_CTAB        Clear tab
+            KEY_CATAB       Clear all tabs
+            KEY_ENTER       Enter or send
+            KEY_SRESET      Soft (partial) reset
+            KEY_RESET       Reset or hard reset
+            KEY_PRINT       Print or copy
+            KEY_LL          Home down or bottom (lower left)
+            KEY_A1          Upper left of keypad
+            KEY_A3          Upper right of keypad
+            KEY_B2          Center of keypad
+            KEY_C1          Lower left of keypad
+            KEY_C3          Lower right of keypad
+            KEY_BTAB        Back tab key
+            KEY_BEG         Beg(inning) key
+            KEY_CANCEL      Cancel key
+            KEY_CLOSE       Close key
+            KEY_COMMAND     Cmd (command) key
+            KEY_COPY        Copy key
+            KEY_CREATE      Create key
+            KEY_END         End key
+            KEY_EXIT        Exit key
+            KEY_FIND        Find key
+            KEY_HELP        Help key
+            KEY_MARK        Mark key
+            KEY_MESSAGE     Message key
+            KEY_MOUSE       Mouse event read
+            KEY_MOVE        Move key
+            KEY_NEXT        Next object key
+            KEY_OPEN        Open key
+            KEY_OPTIONS     Options key
+            KEY_PREVIOUS    Previous object key
+            KEY_REDO        Redo key
+            KEY_REFERENCE   Ref(erence) key
+            KEY_REFRESH     Refresh key
+            KEY_REPLACE     Replace key
+
+            KEY_RESIZE      Screen resized
+            KEY_RESTART     Restart key
+            KEY_RESUME      Resume key
+            KEY_SAVE        Save key
+            KEY_SBEG        Shifted beginning key
+            KEY_SCANCEL     Shifted cancel key
+            KEY_SCOMMAND    Shifted command key
+            KEY_SCOPY       Shifted copy key
+            KEY_SCREATE     Shifted create key
+            KEY_SDC         Shifted delete char key
+            KEY_SDL         Shifted delete line key
+            KEY_SELECT      Select key
+            KEY_SEND        Shifted end key
+            KEY_SEOL        Shifted clear line key
+            KEY_SEXIT       Shifted exit key
+            KEY_SFIND       Shifted find key
+            KEY_SHELP       Shifted help key
+            KEY_SHOME       Shifted home key
+            KEY_SIC         Shifted input key
+            KEY_SLEFT       Shifted left arrow key
+            KEY_SMESSAGE    Shifted message key
+            KEY_SMOVE       Shifted move key
+            KEY_SNEXT       Shifted next key
+            KEY_SOPTIONS    Shifted options key
+            KEY_SPREVIOUS   Shifted prev key
+            KEY_SPRINT      Shifted print key
+            KEY_SREDO       Shifted redo key
+            KEY_SREPLACE    Shifted replace key
+            KEY_SRIGHT      Shifted right arrow
+            KEY_SRSUME      Shifted resume key
+            KEY_SSAVE       Shifted save key
+            KEY_SSUSPEND    Shifted suspend key
+            KEY_SUNDO       Shifted undo key
+            KEY_SUSPEND     Suspend key
+            KEY_UNDO        Undo key
 
        Keypad is arranged like this:
 
                          +-----+------+-------+
        The <STRONG>has_key</STRONG> routine takes a key value from the above list,
        and returns TRUE or FALSE according to whether the current
-       terminal type recognizes a key with that value.
+       terminal type recognizes a key with that value.  Note that
+       a few values do  not  correspond  to  a  real  key,  e.g.,
+       KEY_RESIZE and KEY_MOUSE.
 
 
 
        according  to  whether  they treat these control keys spe-
        cially (and ignore the terminfo), or use the terminfo def-
        initions.   <STRONG>Ncurses</STRONG>  uses  the terminfo definition.  If it
-       says that  KEY_ENTER  is  control/M,  <STRONG>getch</STRONG>,  will  return
+       says  that  KEY_ENTER  is  control/M,  <STRONG>getch</STRONG>  will  return
        KEY_ENTER when you press control/M.
 
        When  using  <STRONG>getch</STRONG>, <STRONG>wgetch</STRONG>, <STRONG>mvgetch</STRONG>, or <STRONG>mvwgetch</STRONG>, nocbreak
        implementation of  handled  signal  receipt  interrupts  a
        <STRONG><A HREF="read.2.html">read(2)</A></STRONG>  call in progress or not, and also (in some imple-
        mentations) depending on whether an input timeout or  non-
-       blocking mode hsd been set.
+       blocking mode has been set.
 
        Programmers concerned about portability should be prepared
        for either of two  cases:  (a)  signal  receipt  does  not
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 029ce0c376cd821b864e0eb0b27224f129b73c07..066f81bcb95a29a8873b2e6ad17a8e280b097466 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getstr.3x,v 1.11 2002/04/13 22:14:30 tom Exp @
+  * @Id: curs_getstr.3x,v 1.12 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>                                   <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        standard  does  not  define  any  error  conditions.  This
        implementation returns ERR if the window pointer is  null,
        or if the lower-level <STRONG>wgetch</STRONG> call returns an ERR.
+
        SVr3  and early SVr4 curses implementations did not reject
        function keys; the SVr4.0 documentation claimed that "spe-
        cial  keys"  (such  as  function keys, "home" key, "clear"
-       key, <EM>etc</EM>.) are interpreted" without  giving  details.   It
+       key, <EM>etc</EM>.) are "interpreted", without giving details.   It
        lied.   In  fact,  the  `character'  value appended to the
        string by those implementations was  predictable  but  not
        useful  (being,  in  fact, the low-order eight bits of the
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index d6db1a8bc745af8e763802c46472a1fcc5bdee1b..5ccfc05d65744663a6dd0fec9711cb5b7ff8d89d 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getyx.3x,v 1.8 2002/09/21 19:00:38 tom Exp @
+  * @Id: curs_getyx.3x,v 1.10 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>                                     <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -74,7 +78,7 @@
 
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
-       The return values of these  macros  are  undefined  (<EM>i</EM>.<EM>e</EM>.,
+       The return values of these  macros  are  undefined  (i.e.,
        they  should not be used as the right-hand side of assign-
        ment statements).
 
 
 
 
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 5aa287e5504f51eccf1d61a4aefa7a3114b01b98..3c06a9b9ce99873fe740dcb1c24a786da9b9ec5b 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>                                   <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0277eb47cd769d4f07fd1c2452f454c693a6a06d..4347004fffe051b4e36388fada0272804591e2a0 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>                             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
+                                               <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index b3f1485d989a65897389e177885cf0406db44ec1..e966923d8848b4c0f8f86efe335571f06db32d9a 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>                                       <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index cdf33a2a5793e3690ad4c8fd783cd2533f417f52..2af744e20b6b8e14db0582830a1e1b02579f6df1 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>                                 <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
+                                                 <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 74f72009b2250a1d893ee84a8538b554cd9ba052..f8ba9ac6dfdd62466c9b417e25408cfc1f80dd42 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_initscr.3x,v 1.11 2002/07/20 14:51:04 tom Exp @
+  * @Id: curs_initscr.3x,v 1.12 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>                                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        terminals.   The screen reference <STRONG>new</STRONG> becomes the new cur-
        rent terminal.  The previous terminal is returned  by  the
        routine.   This  is  the  only  routine  which manipulates
-       <STRONG>SCREEN</STRONG> pointers; all other routines affect only  the  cur-
-       rent terminal.
+       <STRONG>SCREEN</STRONG>  pointers;  all  other  routines  affect  only  the
+       current terminal.
 
        The  <STRONG>delscreen</STRONG>  routine  frees storage associated with the
        <STRONG>SCREEN</STRONG> data structure.  The <STRONG>endwin</STRONG>  routine  does  not  do
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 9e8ce06e96e074db36921cdde499f237dc41cd77..3e4b434f060ff4fe42d2780a3ace66a7de341dcf 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2001 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_inopts.3x,v 1.9 2002/08/10 22:29:49 tom Exp @
+  * @Id: curs_inopts.3x,v 1.11 2003/12/27 18:45:42 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>                                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
        The <STRONG>timeout</STRONG> and <STRONG>wtimeout</STRONG> routines  set  blocking  or  non-
        blocking  read  for a given window.  If <EM>delay</EM> is negative,
-       blocking  read  is  used  (<EM>i</EM>.<EM>e</EM>.,  waits  indefinitely  for
+       blocking  read  is  used  (i.e.,  waits  indefinitely  for
        input).   If <EM>delay</EM> is zero, then non-blocking read is used
-       (<EM>i</EM>.<EM>e</EM>., read returns <STRONG>ERR</STRONG> if no input is waiting).  If <EM>delay</EM>
+       (i.e., read returns <STRONG>ERR</STRONG> if no input is waiting).  If <EM>delay</EM>
        is  positive, then read blocks for <EM>delay</EM> milliseconds, and
        returns <STRONG>ERR</STRONG> if there is still no input.  Hence, these rou-
        tines  provide the same functionality as <STRONG>nodelay</STRONG>, plus the
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index aa07ca32bafbe56f11eeca954c29fb80dcb2a37d..ed0ab4db3e4915646d9d851d01a284556cfa331f 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>                                 <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                 <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 43e874b373e5c465bcd80d9a333307de262981b6..c2a128c2d7ba1b77a88fc25f9bd41b6fb7f862f3 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>                               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 4ad06bdf1213b67070df109c4940cb5b76593620..70db3ae350c8b88075a0078faf32764afd7b3620 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_insch.3x,v 1.7 2000/07/01 19:57:21 tom Exp @
+  * @Id: curs_insch.3x,v 1.8 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>                                     <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -59,7 +63,7 @@
 
 </PRE>
 <H2>DESCRIPTION</H2><PRE>
-       These routines, insert the character <EM>ch</EM> before the charac-
+       These routines insert the character <EM>ch</EM> before the  charac-
        ter  under the cursor.  All characters to the right of the
        cursor are moved one space to the right, with  the  possi-
        bility  of the rightmost character on the line being lost.
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0e95f5651e36bc9badb446c7fab72bb79ec9acfd..b169a7950cb2c76c48d05757d91aa5e783998a43 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>                                   <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 3bd43e81190a5c12363602c1f1779ac289426850..a560ae6e77164537e228e376bdc14389d60a50ce 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>                                     <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
+                                                   <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 297e06ba13bb085ce1ed130bc36b78ffbc98d3ee..34672b46649b7c05b76897f2122376101d677268 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_inwstr.3.html">curs_inwstr(3)</A></STRONG>                                     <STRONG><A HREF="curs_inwstr.3.html">curs_inwstr(3)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_inwstr.3.html">curs_inwstr(3)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index beaea46f5d137d6f1d35874d3cffcd37553d32ed..6ee8d58338ff980a0063089a7c9f85d217a6d263 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>                                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 9a09a3f4ec2d8a059c86371502dd86c66e65c771..a471fc6f60540b258b62cb5243b3ee32132e3322 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_mouse.3x,v 1.20 2002/07/20 14:52:14 tom Exp @
+  * @Id: curs_mouse.3x,v 1.24 2003/12/27 18:47:54 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>                                     <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -55,9 +59,9 @@
 
        <STRONG>typedef</STRONG> <STRONG>unsigned</STRONG> <STRONG>long</STRONG> <STRONG>mmask_t;</STRONG>
 
-       <STRONG>typedef</STRONG> <STRONG>struct</STRONG>
-       <STRONG>{</STRONG>
-           <STRONG>short</STRONG> <STRONG>id;</STRONG>         <EM>/*</EM> <EM>ID</EM> <EM>to</EM> <EM>distinguish</EM> <EM>multiple</EM> <EM>devices</EM> <EM>*/</EM>
+       typedef struct
+       {
+           short id;         <EM>/*</EM> <EM>ID</EM> <EM>to</EM> <EM>distinguish</EM> <EM>multiple</EM> <EM>devices</EM> <EM>*/</EM>
            <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>y,</STRONG> <STRONG>z;</STRONG>      <EM>/*</EM> <EM>event</EM> <EM>coordinates</EM> <EM>*/</EM>
            <STRONG>mmask_t</STRONG> <STRONG>bstate;</STRONG>   <EM>/*</EM> <EM>button</EM> <EM>state</EM> <EM>bits</EM> <EM>*/</EM>
        <STRONG>}</STRONG>
        BUTTON1_CLICKED          mouse button 1 clicked
        BUTTON1_DOUBLE_CLICKED   mouse button 1 double clicked
        BUTTON1_TRIPLE_CLICKED   mouse button 1 triple clicked
-
        BUTTON2_PRESSED          mouse button 2 down
        BUTTON2_RELEASED         mouse button 2 up
        BUTTON2_CLICKED          mouse button 2 clicked
        BUTTON3_PRESSED          mouse button 3 down
        BUTTON3_RELEASED         mouse button 3 up
        BUTTON3_CLICKED          mouse button 3 clicked
+
        BUTTON3_DOUBLE_CLICKED   mouse button 3 double clicked
        BUTTON3_TRIPLE_CLICKED   mouse button 3 triple clicked
        BUTTON4_PRESSED          mouse button 4 down
        <STRONG>str</STRONG> that expects a linefeed for input-loop termination.
 
 
-
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
        <STRONG>getmouse</STRONG>, <STRONG>ungetmouse</STRONG> and <STRONG>mouseinterval</STRONG> return the  integer
        the future.
 
        Under  <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>,  these  calls  are  implemented  using
-       either  xterm's  built-in mouse-tracking API or Alessandro
-       Rubini's gpm server.  If you  are  using  something  other
-       than  xterm  and  there  is  no gpm daemon running on your
-       machine, mouse events will not be visible  to  <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
-       (and the <STRONG>wmousemask</STRONG> function will always return <STRONG>0</STRONG>).
+       either  xterm's  built-in  mouse-tracking API or platform-
+       specific drivers including
+              Alessandro Rubini's gpm server.
+              FreeBSD sysmouse
+              OS/2 EMX
+       If you  are  using  an  unsupported  configuration,  mouse
+       events will not be visible to <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> (and the <STRONG>wmouse-</STRONG>
+       <STRONG>mask</STRONG> function will always return <STRONG>0</STRONG>).
+
+       If the terminfo entry contains a <STRONG>XM</STRONG> string, this  is  used
+       in  the xterm mouse driver to control the way the terminal
+       is initialized for mouse operation.  The default, if <STRONG>XM</STRONG> is
+       not found, corresponds to private mode 1000 of xterm:
+              \E[?1000%?%p1%{1}%=%th%el%;
        The z member in the event structure is not presently used.
        It is intended for use with touch screens  (which  may  be
        pressure-sensitive)   or   with   3D-mice/trackballs/power
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 890b78a985c14c964129795de871374cec46131d..230874b43467a9aa9731d2bcde03768ed54d96c3 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>                                       <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 9d2d1735b8dcf4adeaa0ccacd654aa81801b0387..ae728815a313549e2bb1ac6a3707f284ad4b825f 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2001 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2001,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_outopts.3x,v 1.17 2001/10/14 00:50:30 tom Exp @
+  * @Id: curs_outopts.3x,v 1.18 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>                                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        tion and deletion.
 
        If  <STRONG>immedok</STRONG> is called with <STRONG>TRUE</STRONG> <STRONG>as</STRONG> <STRONG>argument</STRONG>, any change in
-       the window image, such  as  the  ones  caused  by  <STRONG>waddch,</STRONG>
-       <STRONG>wclrtobot,</STRONG> <STRONG>wscrl</STRONG>, <EM>etc</EM>., automatically cause a call to <STRONG>wre-</STRONG>
+       the window image, such as the ones caused by <STRONG>waddch,</STRONG> <STRONG>wclr-</STRONG>
+       <STRONG>tobot,</STRONG>  <STRONG>wscrl</STRONG>,  etc.,  automatically  cause a call to <STRONG>wre-</STRONG>
        <STRONG>fresh</STRONG>.  However, it may degrade performance  considerably,
        due  to  repeated  calls  to  <STRONG>wrefresh</STRONG>.  It is disabled by
        default.
        an integer always return <STRONG>OK</STRONG>.
 
 
-
 </PRE>
 <H2>PORTABILITY</H2><PRE>
        These  functions are described in the XSI Curses standard,
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 64b4f71e61d656dc0807cb44ec044414bf46f8df..f6f6b8f5bc261b3266c530e547b28d8f29b58bc4 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>                                 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
+                                                 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0da61e87c0d72946a6a3245e0336fb7fb4477c7a..77e534c17c071a3904865a46653a153b5007d72a 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2003,2004 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_pad.3x,v 1.9 2000/07/04 22:38:13 tom Exp @
+  * @Id: curs_pad.3x,v 1.12 2004/01/04 01:36:49 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>                                         <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
-       <STRONG>newpad</STRONG>, <STRONG>subpad</STRONG>, <STRONG>prefresh</STRONG>, <STRONG>pnoutrefresh</STRONG>, <STRONG>pechochar</STRONG> - create
-       and display <STRONG>curses</STRONG> pads
+       <STRONG>newpad</STRONG>,   <STRONG>subpad</STRONG>,   <STRONG>prefresh</STRONG>,   <STRONG>pnoutrefresh</STRONG>,   <STRONG>pechochar</STRONG>,
+       <STRONG>pecho_wchar</STRONG> - create and display <STRONG>curses</STRONG> pads
 
 
 </PRE>
@@ -59,6 +63,7 @@
        <STRONG>int</STRONG> <STRONG>pnoutrefresh(WINDOW</STRONG> <STRONG>*pad,</STRONG> <STRONG>int</STRONG> <STRONG>pminrow,</STRONG> <STRONG>int</STRONG> <STRONG>pmincol,</STRONG>
              <STRONG>int</STRONG> <STRONG>sminrow,</STRONG> <STRONG>int</STRONG> <STRONG>smincol,</STRONG> <STRONG>int</STRONG> <STRONG>smaxrow,</STRONG> <STRONG>int</STRONG> <STRONG>smaxcol);</STRONG>
        <STRONG>int</STRONG> <STRONG>pechochar(WINDOW</STRONG> <STRONG>*pad,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch);</STRONG>
+       <STRONG>int</STRONG> <STRONG>pecho_wchar(WINDOW</STRONG> <STRONG>*pad,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*wch);</STRONG>
 
 
 </PRE>
@@ -70,7 +75,7 @@
        sarily associated with a particular part  of  the  screen.
        Pads can be used when a large window is needed, and only a
        part of the window will be on  the  screen  at  one  time.
-       Automatic refreshes of pads (<EM>e</EM>.<EM>g</EM>., from scrolling or echo-
+       Automatic refreshes of pads (e.g., from scrolling or echo-
        ing of input) do not occur.  It is not legal to call  <STRONG>wre-</STRONG>
        <STRONG>fresh</STRONG>  with a <EM>pad</EM> as an argument; the routines <STRONG>prefresh</STRONG> or
        <STRONG>pnoutrefresh</STRONG> should be called instead.   Note  that  these
        The <STRONG>pechochar</STRONG> routine is functionally equivalent to a call
        to  <STRONG>addch</STRONG>  followed by a call to <STRONG>refresh</STRONG>, a call to <STRONG>waddch</STRONG>
        followed by a call to <STRONG>wrefresh</STRONG>, or a call to  <STRONG>waddch</STRONG>  fol-
-       lowed  by  a  call  to <STRONG>prefresh.</STRONG> The knowledge that only a
+       lowed  by  a  call to <STRONG>prefresh</STRONG>.  The knowledge that only a
        single character is being output is taken into  considera-
        tion  and, for non-control characters, a considerable per-
        formance gain  might  be  seen  by  using  these  routines
        the last location of the pad on the screen is  reused  for
        the arguments to <STRONG>prefresh</STRONG>.
 
+       The  <STRONG>pecho_wchar</STRONG>  function is the analogous wide-character
+       form of <STRONG>pechochar</STRONG>.  It outputs one character to a pad  and
+       immediately  refreshes the pad.  It does this by a call to
+       <STRONG>wadd_wch</STRONG> followed by a call to <STRONG>prefresh</STRONG>.
+
 
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
-       Routines  that  return  an integer return <STRONG>ERR</STRONG> upon failure
-       and <STRONG>OK</STRONG> (SVr4 only specifies "an integer value  other  than
+       Routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure
+       and  <STRONG>OK</STRONG>  (SVr4 only specifies "an integer value other than
        <STRONG>ERR</STRONG>") upon successful completion.
 
-       Routines  that  return  pointers return <STRONG>NULL</STRONG> on error, and
+       Routines that return pointers return <STRONG>NULL</STRONG>  on  error,  and
        set <STRONG>errno</STRONG> to <STRONG>ENOMEM</STRONG>.
 
 
 
 </PRE>
 <H2>PORTABILITY</H2><PRE>
-       The XSI Curses standard, Issue  4  describes  these  func-
+       The  XSI  Curses  standard,  Issue 4 describes these func-
        tions.
 
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,        <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,       <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>,
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,       <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,        <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>,
        <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>.
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                     <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index adf7ccc0e8b14af8b9959c3c82b1ec1daf9c9929..fc160e49d0e5dec5eddb447bac489632bc5e670e 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_print.3x,v 1.5 2002/02/16 22:39:04 tom Exp @
+  * @Id: curs_print.3x,v 1.6 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>                                     <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
+                                                   <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0a61b82c781ff5cceff4da196a358acff8f1aff8..498da06ca05df6b624e47611af8273f5b8cae8e7 100644 (file)
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_printw.3x,v 1.12 2002/07/20 15:01:43 tom Exp @
+  * @Id: curs_printw.3x,v 1.13 2002/11/16 22:28:57 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>                                   <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 <H2>SYNOPSIS</H2><PRE>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
-       <STRONG>int</STRONG> <STRONG>printw(char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
-       <STRONG>int</STRONG> <STRONG>wprintw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
-       <STRONG>int</STRONG> <STRONG>mvprintw(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
-       <STRONG>int</STRONG> <STRONG>mvwprintw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
-       <STRONG>int</STRONG> <STRONG>vwprintw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>va_list</STRONG> <STRONG>varglist);</STRONG>
-       <STRONG>int</STRONG> <STRONG>vw_printw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>va_list</STRONG> <STRONG>varglist);</STRONG>
+       <STRONG>int</STRONG> <STRONG>printw(const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
+       <STRONG>int</STRONG> <STRONG>wprintw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvprintw(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>...);</STRONG>
+       <STRONG>int</STRONG> <STRONG>mvwprintw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG>  <STRONG>*fmt,</STRONG>
+       <STRONG>...);</STRONG>
+       <STRONG>int</STRONG>  <STRONG>vwprintw(WINDOW</STRONG>  <STRONG>*win,</STRONG>  <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG> <STRONG>va_list</STRONG> <STRONG>var-</STRONG>
+       <STRONG>glist);</STRONG>
+       <STRONG>int</STRONG> <STRONG>vw_printw(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*fmt,</STRONG>  <STRONG>va_list</STRONG>  <STRONG>var-</STRONG>
+       <STRONG>glist);</STRONG>
 
 
 </PRE>
 <H2>DESCRIPTION</H2><PRE>
-       The <STRONG>printw</STRONG>, <STRONG>wprintw</STRONG>, <STRONG>mvprintw</STRONG> and <STRONG>mvwprintw</STRONG>  routines  are
-       analogous  to  <STRONG>printf</STRONG>  [see  <STRONG><A HREF="printf.3S.html">printf(3S)</A></STRONG>].   In effect, the
+       The  <STRONG>printw</STRONG>,  <STRONG>wprintw</STRONG>, <STRONG>mvprintw</STRONG> and <STRONG>mvwprintw</STRONG> routines are
+       analogous to <STRONG>printf</STRONG>  [see  <STRONG><A HREF="printf.3S.html">printf(3S)</A></STRONG>].   In  effect,  the
        string that would be output by <STRONG>printf</STRONG> is output instead as
        though <STRONG>waddstr</STRONG> were used on the given window.
 
-       The  <STRONG>vwprintw</STRONG>  and  <STRONG>wv_printw</STRONG>  routines  are  analogous to
-       <STRONG>vprintf</STRONG> [see <STRONG><A HREF="printf.3S.html">printf(3S)</A></STRONG>] and perform  a  <STRONG>wprintw</STRONG>  using  a
-       variable  argument list.  The third argument is a <STRONG>va_list</STRONG>,
-       a  pointer  to  a  list  of  arguments,  as   defined   in
+       The <STRONG>vwprintw</STRONG>  and  <STRONG>wv_printw</STRONG>  routines  are  analogous  to
+       <STRONG>vprintf</STRONG>  [see  <STRONG><A HREF="printf.3S.html">printf(3S)</A></STRONG>]  and  perform a <STRONG>wprintw</STRONG> using a
+       variable argument list.  The third argument is a  <STRONG>va_list</STRONG>,
+       a   pointer   to  a  list  of  arguments,  as  defined  in
        <STRONG>&lt;stdarg.h&gt;</STRONG>.
 
 
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
-       Routines  that  return  an integer return <STRONG>ERR</STRONG> upon failure
-       and <STRONG>OK</STRONG> (SVr4 only specifies "an integer value  other  than
+       Routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure
+       and  <STRONG>OK</STRONG>  (SVr4 only specifies "an integer value other than
        <STRONG>ERR</STRONG>") upon successful completion.
 
 
 </PRE>
 <H2>PORTABILITY</H2><PRE>
-       The  XSI  Curses  standard,  Issue 4 describes these func-
-       tions.  The function <STRONG>vwprintw</STRONG> is marked TO  BE  WITHDRAWN,
-       and  is  to  be replaced by a function <STRONG>vw_printw</STRONG> using the
+       The XSI Curses standard, Issue  4  describes  these  func-
+       tions.   The  function <STRONG>vwprintw</STRONG> is marked TO BE WITHDRAWN,
+       and is to be replaced by a function  <STRONG>vw_printw</STRONG>  using  the
        <STRONG>&lt;stdarg.h&gt;</STRONG> interface.  The Single Unix Specification, Ver-
-       sion  2  states  that  <STRONG>vw_printw</STRONG>  is preferred to <STRONG>vwprintw</STRONG>
-       since the latter  requires  including  <STRONG>&lt;varargs.h&gt;</STRONG>,  which
-       cannot  be  used  in  the  same  file as <STRONG>&lt;stdarg.h&gt;</STRONG>.  This
-       implementation uses  <STRONG>&lt;stdarg.h&gt;</STRONG>  for  both,  because  that
+       sion 2 states that <STRONG>vw_printw</STRONG>   is  preferred  to  <STRONG>vwprintw</STRONG>
+       since  the  latter  requires  including <STRONG>&lt;varargs.h&gt;</STRONG>, which
+       cannot be used in  the  same  file  as  <STRONG>&lt;stdarg.h&gt;</STRONG>.   This
+       implementation  uses  <STRONG>&lt;stdarg.h&gt;</STRONG>  for  both,  because that
        header is included in <STRONG>&lt;curses.h</STRONG>&gt;.
 
 
 
 
 
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 3ac1d00ee18c0d35550fc73e565986e7c3fcb982..60c5e3320c026f09b205ffdbe23f7b14804ca0a2 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>                                 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 3e132c16c0bbb36dd4d31ef719ac2281cdea9080..dd2aae38e438e222fa63e8aeb98769a173959cc4 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>                                     <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index c64c48ce4415d4970e26067adaca3df30e421030..615b12873b1cfb7f1d8726d92f6738997a593240 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_scr_dump.3x,v 1.2 2000/07/01 20:06:53 tom Exp @
+  * @Id: curs_scr_dump.3x,v 1.3 2003/10/25 20:34:06 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>                               <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        data  is  determined  to  be  valid, <STRONG>curses</STRONG> bases its next
        update of the  screen  on  this  information  rather  than
        clearing  the  screen and starting from scratch.  <STRONG>scr_init</STRONG>
-       is used after <STRONG>initscr</STRONG> or  a  <STRONG>system</STRONG>  [see  <STRONG>system</STRONG>(BA_LIB)]
-       call  to  share  the screen with another process which has
-       done a <STRONG>scr_dump</STRONG>  after  its  <STRONG>endwin</STRONG>  call.   The  data  is
-       declared  invalid  if  the terminfo capabilities <STRONG>rmcup</STRONG> and
-       <STRONG>nrrmc</STRONG> exist; also if the  terminal  has  been  written  to
-       since the preceding <STRONG>scr_dump</STRONG> call.
-
-       The  <STRONG>scr_set</STRONG>  routine  is a combination of <STRONG>scr_restore</STRONG> and
-       <STRONG>scr_init</STRONG>.  It tells the program that  the  information  in
+       is used after <STRONG>initscr</STRONG> or a <STRONG>system</STRONG> call to share the screen
+       with  another  process which has done a <STRONG>scr_dump</STRONG> after its
+       <STRONG>endwin</STRONG> call.  The data is declared invalid if the terminfo
+       capabilities  <STRONG>rmcup</STRONG>  and <STRONG>nrrmc</STRONG> exist; also if the terminal
+       has been written to since the preceding <STRONG>scr_dump</STRONG> call.
+
+       The <STRONG>scr_set</STRONG> routine is a combination  of  <STRONG>scr_restore</STRONG>  and
+       <STRONG>scr_init</STRONG>.   It  tells  the program that the information in
        <EM>filename</EM> is what is currently on the screen, and also what
-       the program wants on the screen.  This can be  thought  of
+       the  program  wants on the screen.  This can be thought of
        as a screen inheritance function.
 
-       To  read (write) a window from (to) a file, use the <STRONG>getwin</STRONG>
+       To read (write) a window from (to) a file, use the  <STRONG>getwin</STRONG>
        and <STRONG>putwin</STRONG> routines [see <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>].
 
 
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
-       All routines return the integer <STRONG>ERR</STRONG> upon  failure  and  <STRONG>OK</STRONG>
+       All  routines  return  the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
        upon success.
 
 
 
 </PRE>
 <H2>PORTABILITY</H2><PRE>
-       The XSI Curses standard, Issue 4,  describes  these  func-
+       The  XSI  Curses  standard, Issue 4, describes these func-
        tions (adding the const qualifiers).
+
        The SVr4 docs merely say under <STRONG>scr_init</STRONG> that the dump data
-       is also considered invalid "if the time-stamp of  the  tty
+       is  also  considered invalid "if the time-stamp of the tty
        is old" but don't define "old".
 
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,       <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,      <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,      <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,       <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,
        <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="system.3S.html">system(3S)</A></STRONG>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index cd50d76ea44b69b2c9273c0e7315fa24506d0da6..0570dadb7d1409336dca98f740130a4588d6f07d 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2001,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_scroll.3x,v 1.9 2001/10/14 00:51:56 tom Exp @
+  * @Id: curs_scroll.3x,v 1.10 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>                                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
 
+
+
+                                                  <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 9a0a29a4a6ef5814507b1b9ffb98090eaa9a8772..72ceb115fc9080c50060e61be1dba8efa658e2a6 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_slk.3x,v 1.11 2001/03/03 21:05:41 Todd.C.Miller Exp @
+  * @Id: curs_slk.3x,v 1.12 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>                                         <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        The  <STRONG>slk_clear</STRONG>  routine  clears  the  soft labels from the
        screen.
 
-       The <STRONG>slk_restore</STRONG> routine, restores the soft labels  to  the
+       The <STRONG>slk_restore</STRONG> routine restores the soft  labels  to  the
        screen after a <STRONG>slk_clear</STRONG> has been performed.
 
        The  <STRONG>slk_touch</STRONG>  routine  forces  all the soft labels to be
        <STRONG>slk_attr</STRONG> are specific to ncurses.
 
 
-
 </PRE>
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,        <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>,        <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                     <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index dc35ff7c4f248631384ed2a40fc502804d644e77..8b508a05fac0617ac917e0e113af955cef888a60 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_termattrs.3x,v 1.8 2002/05/11 21:32:26 tom Exp @
+  * @Id: curs_termattrs.3x,v 1.9 2003/12/27 18:37:47 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>                             <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        <STRONG>curses</STRONG>  program needs complete control over the appearance
        of the screen.
 
-       The <STRONG>termname</STRONG> routine returns the value of the  environmen-
-       tal variable <STRONG>TERM</STRONG> (truncated to 14 characters).
+       The <STRONG>termname</STRONG> routine returns the  terminal  name  used  by
+       <STRONG>setupterm</STRONG>.
 
 
 </PRE>
 <H2>PORTABILITY</H2><PRE>
        The  XSI  Curses  standard,  Issue 4 describes these func-
        tions.  It changes the return type of <STRONG>termattrs</STRONG> to the new
-       type <STRONG>attr_t</STRONG>.
+       type  <STRONG>attr_t</STRONG>.  Most versions of curses truncate the result
+       returned by <STRONG>termname</STRONG> to 14 characters.
 
 
 </PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index f510812b7f29a254c4434e85a61ec7ccdc45178b..d9145631ec2d0dfa809b5d967c6324cc22b9e5ed 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_termcap.3x,v 1.16 2002/02/16 19:26:41 tom Exp @
+  * @Id: curs_termcap.3x,v 1.18 2003/02/08 22:25:47 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>                                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        will put out a literal "50" rather than  busy-waiting  for
        50 milliseconds.  Cope with it.
 
+       Note  that termcap has nothing analogous to terminfo's <STRONG>sgr</STRONG>
+       string.  One consequence of this is that termcap  applica-
+       tions  assume me (terminfo <STRONG>sgr0</STRONG>) does not reset the alter-
+       nate character set.  This implementation checks  for,  and
+       modifies the data shown to the termcap interface to accom-
+       modate termcap's limitation in this respect.
+
 
 </PRE>
 <H2>PORTABILITY</H2><PRE>
-       The  XSI  Curses  standard,  Issue 4 describes these func-
-       tions.  However, they are marked TO BE WITHDRAWN  and  may
+       The XSI Curses standard, Issue  4  describes  these  func-
+       tions.   However,  they are marked TO BE WITHDRAWN and may
        be removed in future versions.
 
-       Neither  the  XSI  Curses  standard nor the SVr4 man pages
-       documented the return values of <STRONG>tgetent</STRONG> correctly,  though
-       all  three were in fact returned ever since SVr1.  In par-
-       ticular, an omission in the XSI Curses  documentation  has
-       been  misinterpreted  to  mean  that <STRONG>tgetent</STRONG> returns <STRONG>OK</STRONG> or
+       Neither the XSI Curses standard nor  the  SVr4  man  pages
+       documented  the return values of <STRONG>tgetent</STRONG> correctly, though
+       all three were in fact returned ever since SVr1.  In  par-
+       ticular,  an  omission in the XSI Curses documentation has
+       been misinterpreted to mean that  <STRONG>tgetent</STRONG>  returns  <STRONG>OK</STRONG>  or
        <STRONG>ERR</STRONG>.  Because the purpose of these functions is to provide
-       compatibility  with  the <EM>termcap</EM> library, that is a defect
+       compatibility with the <EM>termcap</EM> library, that is  a  defect
        in XCurses, Issue 4, Version 2 rather than in ncurses.
 
-       External variables are provided  for  support  of  certain
-       termcap  applications.  However, termcap applications' use
+       External  variables  are  provided  for support of certain
+       termcap applications.  However, termcap applications'  use
        of those variables is poorly documented, e.g., not distin-
-       guishing  between  input  and output.  In particular, some
+       guishing between input and output.   In  particular,  some
        applications are reported to declare and/or modify <STRONG>ospeed</STRONG>.
 
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="putc.3S.html">putc(3S)</A></STRONG>.
+
+
+
+                                                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 4163fbb781f651839b57f4ac67088b8d811a62b0..724a4be8f66833c4c686b19a05755f92fbfd1076 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1999-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1999-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_terminfo.3x,v 1.16 2002/07/20 16:05:19 tom Exp @
+  * @Id: curs_terminfo.3x,v 1.18 2003/12/27 18:48:59 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>                               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        refresh).
 
        The <STRONG>tigetflag</STRONG>, <STRONG>tigetnum</STRONG> and <STRONG>tigetstr</STRONG> routines  return  the
-       value  of  the  capability  corresponding  to the <STRONG>terminfo</STRONG>
-       <EM>capname</EM> passed to them, such as <STRONG>xenl</STRONG>.
+       value of the capability corresponding to the <STRONG>terminfo</STRONG> <EM>cap-</EM>
+       <EM>name</EM> passed to them, such as <STRONG>xenl</STRONG>.
 
        The <STRONG>tigetflag</STRONG> routine returns the value <STRONG>-1</STRONG> if  <EM>capname</EM>  is
        not a boolean capability, or <STRONG>0</STRONG> if it is canceled or absent
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index eec4c7a19971a890d3f1c2aac550cea1a0bd0c40..64f83cdc530faa80e1ec528db5d3a1ad8cbeb725 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>                                     <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index c4a52c4dde620c389a50d4839eaa17914fb569a9..ee7065c1c12fab80d0b8dc62aa81630a892a5673 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>                                     <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
+                                                   <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0fed7678fc28f6d363f73c3d0c3149d79dd20ae3..2557f86df3cdd074a8ab6052e0adce7e146aed84 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_util.3x,v 1.9 2002/09/01 19:44:37 tom Exp @
+  * @Id: curs_util.3x,v 1.11 2003/07/19 19:59:56 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>                                       <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -53,7 +57,7 @@
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
        <STRONG>char</STRONG> <STRONG>*unctrl(chtype</STRONG> <STRONG>c);</STRONG>
-       <STRONG>char</STRONG> <STRONG>*wunctrl(wchar_t</STRONG> <STRONG>w);</STRONG>
+       <STRONG>char</STRONG> <STRONG>*wunctrl(cchar_t</STRONG> <STRONG>*c);</STRONG>
        <STRONG>char</STRONG> <STRONG>*keyname(int</STRONG> <STRONG>c);</STRONG>
        <STRONG>char</STRONG> <STRONG>*key_name(wchar_t</STRONG> <STRONG>w);</STRONG>
        <STRONG>void</STRONG> <STRONG>filter(void);</STRONG>
        The <STRONG>delay_output</STRONG> routine inserts an <EM>ms</EM>  millisecond  pause
        in  output.   This  routine should not be used extensively
        because padding characters are  used  rather  than  a  CPU
-       pause.
+       pause.   If  no  padding character is specified, this uses
+       <STRONG>napms</STRONG> to perform the delay.
 
-       The  <STRONG>flushinp</STRONG>  routine  throws away any typeahead that has
-       been typed by the user and has not yet been  read  by  the
+       The <STRONG>flushinp</STRONG> routine throws away any  typeahead  that  has
+       been  typed  by  the user and has not yet been read by the
        program.
 
 
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
-       Except  for  <STRONG>flushinp</STRONG>,  routines  that  return  an integer
-       return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4  specifies  only  "an
+       Except for  <STRONG>flushinp</STRONG>,  routines  that  return  an  integer
+       return  <STRONG>ERR</STRONG>  upon  failure and <STRONG>OK</STRONG> (SVr4 specifies only "an
        integer value other than <STRONG>ERR</STRONG>") upon successful completion.
 
        <STRONG>flushinp</STRONG> always returns <STRONG>OK</STRONG>.
 
 </PRE>
 <H2>PORTABILITY</H2><PRE>
-       The XSI Curses standard, Issue  4  describes  these  func-
-       tions.   It  states  that <STRONG>unctrl</STRONG> and <STRONG>wunctrl</STRONG> will return a
-       null pointer if unsuccessful,  but  does  not  define  any
+       The  XSI  Curses  standard,  Issue 4 describes these func-
+       tions.  It states that <STRONG>unctrl</STRONG> and <STRONG>wunctrl</STRONG>  will  return  a
+       null  pointer  if  unsuccessful,  but  does not define any
        error conditions.
 
        The SVr4 documentation describes the action of <STRONG>filter</STRONG> only
-       in the vaguest terms.  The  description  here  is  adapted
-       from  the  XSI Curses standard (which erroneously fails to
+       in  the  vaguest  terms.   The description here is adapted
+       from the XSI Curses standard (which erroneously  fails  to
        describe the disabling of <STRONG>cuu</STRONG>).
 
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>.
-
-
-
-
-
-
-
-
-
-
-
-
-
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,       <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,       <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>,
+       <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>.
 
 
 
+                                                    <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0b9d2a34eeba1c054719c74316e465f17fb3b5a4..fcd400c7789c4f9c11f254adba2b1557d46a062d 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_window.3x,v 1.9 2000/07/01 20:08:37 tom Exp @
+  * @Id: curs_window.3x,v 1.10 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>                                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index d0be6fb6a2042323a0116e35503ba71eade4f471..019624cb6c3e625b444bf9e95912a7c3c5d181ae 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,8 +27,8 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * Author: Thomas E. Dickey &lt;dickey@clark.net&gt; 1997,1999,2000
-  * @Id: default_colors.3x,v 1.16 2002/02/16 22:39:52 tom Exp @
+  * Author: Thomas E. Dickey 1997,1999,2000
+  * @Id: default_colors.3x,v 1.17 2003/10/25 20:41:08 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>                             <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                               <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0be1e0002120130e9664b0936b075836a75504f4..c95817de5b256e98692de381e6f2708c7fb2ac5a 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,8 +27,8 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * Author: Thomas E. Dickey &lt;dickey@clark.net&gt; 1997
-  * @Id: define_key.3x,v 1.8 2002/02/16 22:39:52 tom Exp @
+  * Author: Thomas E. Dickey 1997
+  * @Id: define_key.3x,v 1.10 2003/10/25 20:33:16 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>                                     <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -51,7 +55,7 @@
 <H2>SYNOPSIS</H2><PRE>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
-       <STRONG>int</STRONG> <STRONG>define_key(char</STRONG> <STRONG>*definition,</STRONG> <STRONG>int</STRONG> <STRONG>keycode);</STRONG>
+       <STRONG>int</STRONG> <STRONG>define_key(const</STRONG> <STRONG>char</STRONG> <STRONG>*definition,</STRONG> <STRONG>int</STRONG> <STRONG>keycode);</STRONG>
 
 
 </PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 27ff8706619b33583230a0532204a514dfdca55d..320d2816b3b7fdf322d28afbeaae518fb1ee72c8 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>                                                 <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        field_opts_off         <STRONG><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></STRONG>
        field_opts_on          <STRONG><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></STRONG>
        field_pad              <STRONG><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></STRONG>
-
        field_status           <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
        field_term             <STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>
        field_type             <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
        form_fields            <STRONG><A HREF="form_field.3x.html">form_field(3x)</A></STRONG>
        form_init              <STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>
        form_opts              <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
+
        form_opts_off          <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
        form_opts_on           <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
        form_page              <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                         <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index af7d8d7df7dfa1420a79559a20ea71bc5f61b9b7..ac989b00bace7b544ddb9819747fe9ac77354c99 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_cursor.3x.html">form_cursor(3x)</A></STRONG>                                   <STRONG><A HREF="form_cursor.3x.html">form_cursor(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="form_cursor.3x.html">form_cursor(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 277b54bf7a4fe5f8fcaa5976acdf7176510125e9..a411eed499276dda15c09f1e2e8aceddc5470e10 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_data.3x.html">form_data(3x)</A></STRONG>                                       <STRONG><A HREF="form_data.3x.html">form_data(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="form_data.3x.html">form_data(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 061519f5af7150c24a4a83bc4c922af1aae06fa4..f0d036f37db707fb12f0db659719f46f9881ab07 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_driver.3x.html">form_driver(3x)</A></STRONG>                                   <STRONG><A HREF="form_driver.3x.html">form_driver(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
             Move down in the field.
 
 
-
        REQ_NEW_LINE
             Insert or overlay a new line.
 
        REQ_SCR_BHPAGE
             Scroll the field backward half a page.
 
+
        REQ_SCR_FCHAR
             Scroll the field forward a character.
 
             ment.
 
        <STRONG>E_BAD_STATE</STRONG>
-            Routine  was  called  from   an   initialization   or
-            termination function.
+            Routine was called from an initialization or termina-
+            tion function.
 
        <STRONG>E_NOT_POSTED</STRONG>
             The form has not been posted.
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="form_driver.3x.html">form_driver(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 35d82339d822688ffa4e21aff17427e04ec69c28..7d41bae2e3fe475adbd16090daa358b96ce60a94 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998 Free Software Foundation, Inc.                        *
+  * Copyright (c) 1998,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_field.3x,v 1.5 1998/11/29 01:05:52 Rick.Ohnemus Exp @
+  * @Id: form_field.3x,v 1.6 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_field.3x.html">form_field(3x)</A></STRONG>                                     <STRONG><A HREF="form_field.3x.html">form_field(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -69,7 +73,7 @@
        The  function  <STRONG>field_count</STRONG>  returns the count of fields in
        <EM>form</EM>.
 
-       The function <STRONG>move_field</STRONG> move the given field  (which  must
+       The function <STRONG>move_field</STRONG> moves the given field (which  must
        be disconnected) to a specified location on the screen.
 
 
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="form_field.3x.html">form_field(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index bb5e210d3b07a29e1dbbbc47e6a54f44362541ba..8fc80e0c170e14851a7c8adc70b16727713e5d9c 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></STRONG>               <STRONG><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                        <STRONG><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index c23ac00396c8f23f0511d1e4599ef6044c4854ec..7ba29ac3112861afa6b7114736ddb804efc79a82 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_field_buffer.3x,v 1.9 2002/01/19 22:48:23 tom Exp @
+  * @Id: form_field_buffer.3x,v 1.10 2003/05/10 20:22:01 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>                       <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                            <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index db2e5247b2684a3280efcddc4e454249980e4ab7..1d2c6b3315b85f2ba6a97d31c4e781db91d07112 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_field_info.3x.html">form_field_info(3x)</A></STRONG>                           <STRONG><A HREF="form_field_info.3x.html">form_field_info(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 <H2>AUTHORS</H2><PRE>
        Juergen  Pfeifer.   Manual  pages  and  adaptation for new
        curses by Eric S. Raymond.
+
+
+
+                                              <STRONG><A HREF="form_field_info.3x.html">form_field_info(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index c4c989c6fcff6b2c816b11e16767152e3dbb0743..08444ab694c70e53073a752a0324653de75b7240 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_field_just.3x,v 1.6 2002/01/19 22:48:41 tom Exp @
+  * @Id: form_field_just.3x,v 1.7 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_field_just.3x.html">form_field_just(3x)</A></STRONG>                           <STRONG><A HREF="form_field_just.3x.html">form_field_just(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -68,7 +72,7 @@
        The  function <STRONG>field_just</STRONG> returns one of: NO_JUSTIFICATION,
        JUSTIFY_RIGHT, JUSTIFY_LEFT, or JUSTIFY_CENTER.
 
-       The function <STRONG>set_field_just</STRONG> return one of the following:
+       The function <STRONG>set_field_just</STRONG> returns one of the following:
 
        <STRONG>E_OK</STRONG> The routine succeeded.
 
 
 
 
-
-
-
-
-
-
+                                              <STRONG><A HREF="form_field_just.3x.html">form_field_just(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 54e94e516a737a9d3431135979a52686a013e29d..4c8e1d482e1e0b23b882bd0dd9e17267b2730273 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_field_new.3x,v 1.11 2002/02/16 22:39:52 tom Exp @
+  * @Id: form_field_new.3x,v 1.12 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>                             <STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
        It  may be unwise to count on the set of attributes copied
        by  <STRONG><A HREF="dup_field.3x.html">dup_field(3x)</A></STRONG>  being  portable;  the  System  V  forms
-       library  documents  are  not  very  explicit  on what gets
-       copied and was not.
+       library  documents  are  not very explicit about what gets
+       copied and what doesn't.
 
 
 </PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                               <STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index c1ff6a30ae524515bf9fbe41d2eeec6bac3345df..3eae4302e4c012d8cf4606bdbf91b419b03e49e3 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998 Free Software Foundation, Inc.                        *
+  * Copyright (c) 1998,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_field_opts.3x,v 1.7 1998/11/29 01:06:54 Rick.Ohnemus Exp @
+  * @Id: form_field_opts.3x,v 1.8 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></STRONG>                           <STRONG><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -75,7 +79,7 @@
 
        O_VISIBLE
             The  field is displayed.  If this option is off, dis-
-            play of the field is suppressed,
+            play of the field is suppressed.
 
        O_ACTIVE
             The field is  visited  during  processing.   If  this
             at the first position.
 
        O_AUTOSKIP
-            Skip to the next field when this one fills
-
+            Skip to the next field when this one fills.
 
        O_NULLOK
             Allow a blank field.
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                              <STRONG><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0041a562976abc116ea01fb85017bdfcfce270aa..0ec2c5ef2d3fbd7b3ed70f3a07b059c713c91f39 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_field_userptr.3x.html">form_field_userptr(3x)</A></STRONG>                     <STRONG><A HREF="form_field_userptr.3x.html">form_field_userptr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
+                                           <STRONG><A HREF="form_field_userptr.3x.html">form_field_userptr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 93cae7f4c5d745cd462256407f99b6cdd73045f3..6fe3b475964cc7b3faa562727e2c0d3ea11a001c 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_field_validation.3x,v 1.12 2002/02/16 22:39:52 tom Exp @
+  * @Id: form_field_validation.3x,v 1.14 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>               <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        FIELDTYPE *field_type(const FIELD *field);
        void *field_arg(const FIELD *field);
 
+       FIELDTYPE *TYPE_ALNUM;
+       FIELDTYPE *TYPE_ALPHA;
+       FIELDTYPE *TYPE_ENUM;
+       FIELDTYPE *TYPE_INTEGER;
+       FIELDTYPE *TYPE_NUMERIC;
+       FIELDTYPE *TYPE_REGEXP;
+       FIELDTYPE *TYPE_IPV4;
+
 
 </PRE>
 <H2>DESCRIPTION</H2><PRE>
        The  function  <STRONG>set_field_type</STRONG>  declares  a data type for a
        given form field.  This is the type checked by  validation
-       functions.  The types are as follows:
+       functions.  The predefined types are as follows:
 
        TYPE_ALNUM
             Alphanumeric  data.  Requires a third <STRONG>int</STRONG> argument, a
@@ -78,7 +90,7 @@
             than  one  list  elements  with  that prefix). Please
             notice that the string list is  not  copied,  only  a
             reference to it is stored in the field. So you should
-            avoid to use a list that lives in automatic variables
+            avoid using a list that lives in automatic  variables
             on the stack.
 
        TYPE_INTEGER
@@ -86,9 +98,9 @@
             Requires a third <STRONG>int</STRONG> argument controlling the  preci-
             sion,  a  fourth  <STRONG>long</STRONG>  argument constraining minimum
             value, and a fifth <STRONG>long</STRONG> constraining  maximum  value.
-            If  the  maximum  value  is less or equal the minimum
-            value, the range is simply  ignored.  On  return  the
-            field  buffer  is  formatted  according to the <STRONG>printf</STRONG>
+            If  the  maximum  value  is less than or equal to the
+            minimum value, the range is simply ignored. On return
+            the field buffer is formatted according to the <STRONG>printf</STRONG>
             format  specification  ".*ld",  where  the   '*'   is
             replaced  by  the precision argument.  For details of
             the precision handling see <STRONG>printf's</STRONG> man-page.
             Requires  a third <STRONG>int</STRONG> argument controlling the preci-
             sion, a fourth <STRONG>double</STRONG> argument  constraining  minimum
             value, and a fifth <STRONG>double</STRONG> constraining maximum value.
-            If your system supports locale's, the  decimal  point
+            If your system supports locales,  the  decimal  point
             character  to  be  used  must be the one specified by
-            your locale.  If the maximum value is less  or  equal
-            the  minimum  value,  the range is simply ignored. On
-            return the field buffer is formatted according to the
-            <STRONG>printf</STRONG>  format  specification ".*f", where the '*' is
-            replaced by the precision argument.  For  details  of
-            the precision handling see <STRONG>printf's</STRONG> man-page.
+            your locale.  If the maximum value is  less  than  or
+            equal  to  the  minimum  value,  the  range is simply
+            ignored. On return  the  field  buffer  is  formatted
+            according  to  the <STRONG>printf</STRONG> format specification ".*f",
+            where the '*' is replaced by the precision  argument.
+            For  details  of  the precision handling see <STRONG>printf's</STRONG>
+            man-page.
 
        TYPE_REGEXP
-            Regular  expression data.  Requires a regular expres-
-            sion <STRONG>(char</STRONG> <STRONG>*)</STRONG> third argument; the data  is  valid  if
-            the  regular  expression matches it.  Regular expres-
-            sions  are  in  the   format   of   <STRONG><A HREF="regcomp.3x.html">regcomp(3x)</A></STRONG>   and
-            <STRONG><A HREF="regexec.3x.html">regexec(3x)</A></STRONG>.  Please  notice that the regular expres-
-            sion must match the whole  field.  If  you  have  for
-            example  an  eight  character  wide  field, a regular
-            expression "^[0-9]*$" always means that you  have  to
-            fill  all eight positions with digits. If you want to
-            allow fewer digits, you may use for example  "^[0-9]*
+            Regular expression data.  Requires a regular  expres-
+            sion  <STRONG>(char</STRONG>  <STRONG>*)</STRONG>  third argument; the data is valid if
+            the regular expression matches it.   Regular  expres-
+            sions   are   in   the   format  of  <STRONG><A HREF="regcomp.3x.html">regcomp(3x)</A></STRONG>  and
+            <STRONG><A HREF="regexec.3x.html">regexec(3x)</A></STRONG>. Please notice that the  regular  expres-
+            sion  must  match  the  whole  field. If you have for
+            example an eight  character  wide  field,  a  regular
+            expression  "^[0-9]*$"  always means that you have to
+            fill all eight positions with digits. If you want  to
+            allow  fewer digits, you may use for example "^[0-9]*
             *$" which is good for trailing spaces (up to an empty
-            field), or "^ *[0-9]* *$" which is good  for  leading
+            field),  or  "^ *[0-9]* *$" which is good for leading
             and trailing spaces around the digits.
 
        TYPE_IPV4
             An Internet Protocol Version 4 address. This requires
-            no additional argument. It is checked whether or  not
-            the  buffer  has  the form a.b.c.d, where a,b,c and d
+            no  additional argument. It is checked whether or not
+            the buffer has the form a.b.c.d, where  a,b,c  and  d
             are numbers between 0 and 255. Trailing blanks in the
-            buffer  are  ignored. The address itself is not vali-
+            buffer are ignored. The address itself is  not  vali-
             dated. Please note that this is an ncurses extension.
-            This  field type may not be available in other curses
+            This field type may not be available in other  curses
             implementations.
 
-            It is possible to set up new programmer-defined field
-            types.  See the <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG> manual page.
+       It  is  possible  to  set  up new programmer-defined field
+       types.  See the <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG> manual page.
 
 
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
-       The  functions  <STRONG>field_type</STRONG>  and  <STRONG>field_arg</STRONG>  return <STRONG>NULL</STRONG> on
+       The functions <STRONG>field_type</STRONG>  and  <STRONG>field_arg</STRONG>  return  <STRONG>NULL</STRONG>  on
        error. The function <STRONG>set_field_type</STRONG> returns one of the fol-
        lowing:
 
 
 </PRE>
 <H2>PORTABILITY</H2><PRE>
-       These routines emulate the System V forms  library.   They
+       These  routines  emulate the System V forms library.  They
        were not supported on Version 7 or BSD versions.
 
 
 </PRE>
 <H2>AUTHORS</H2><PRE>
-       Juergen  Pfeifer.   Manual  pages  and  adaptation for new
+       Juergen Pfeifer.  Manual  pages  and  adaptation  for  new
        curses by Eric S. Raymond.
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                        <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index d4ff4f34b8efb213865eb393d2fc3d4c0f5ec6de..fc220281c8da65be4eb30b770401881254198ce1 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: form_fieldtype.3x,v 1.9 2001/08/04 20:36:25 William.Setzer Exp @
+  * @Id: form_fieldtype.3x,v 1.12 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>                             <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        The function <STRONG>new_fieldtype</STRONG> creates a new field type usable
        for data validation.  You supply it  with  <EM>field</EM><STRONG>_</STRONG><EM>check</EM>,  a
        predicate  to check the validity of an entered data string
-       whenever the user attempt to leave a field.  The (FIELD *)
-       argument  is passed in so the validation predicate can see
-       the field's buffer, sizes and other attributes; the second
-       argument  is an argument-block structure, about which more
-       below.
+       whenever the user attempts to leave a field.   The  (FIELD
+       *)  argument  is passed in so the validation predicate can
+       see the field's buffer, sizes and  other  attributes;  the
+       second  argument  is  an  argument-block  structure, about
+       which more below.
 
        You also supply <STRONG>new_fieldtype</STRONG> with <EM>char</EM><STRONG>_</STRONG><EM>check</EM>, a  function
        to  validate input characters as they are entered; it will
        The  function <STRONG>free_fieldtype</STRONG> frees the space allocated for
        a given validation type.
 
-       The function <STRONG>set_fieldtype</STRONG> associates  three  storage-man-
-       agement functions with a field type.  The <EM>mak</EM><STRONG>_</STRONG><EM>arg</EM> function
-       is automatically applied to the list of arguments you give
-       <STRONG>set_field_type</STRONG>  when  attaching validation to a field; its
-       job is to bundle these into  an  allocated  argument-block
-       object which can later be passed to validation predicated.
-       The other two hook arguments should copy  and  free  argu-
-       ment-block  structures.   They  will be used by the forms-
-       driver code. You must supply  the  <EM>mak</EM><STRONG>_</STRONG><EM>arg</EM>  function,  the
-       other  two  are optional, you may supply NULL for them. In
-       this case it is assumed,  that  <EM>mak</EM><STRONG>_</STRONG><EM>arg</EM>  doesn't  allocate
+       The function <STRONG>set_fieldtype_arg</STRONG> associates  three  storage-
+       management  functions  with  a  field  type.  The <EM>make</EM><STRONG>_</STRONG><EM>arg</EM>
+       function is automatically applied to the list of arguments
+       you  give  <STRONG>set_field_type</STRONG>  when  attaching validation to a
+       field; its job is to bundle these into an allocated  argu-
+       ment-block  object which can later be passed to validation
+       predicated.  The other two hook arguments should copy  and
+       free  argument-block structures.  They will be used by the
+       forms-driver code.  You must supply the <EM>make</EM><STRONG>_</STRONG><EM>arg</EM> function,
+       the  other two are optional, you may supply NULL for them.
+       In this case it is assumed that <EM>make</EM><STRONG>_</STRONG><EM>arg</EM> does not allocate
        memory  but simply loads the argument into a single scalar
        value.
 
+       The function <STRONG>link_fieldtype</STRONG> creates a new field type  from
+       the  two  given  types.   They are connected by an logical
+       'OR'.
+
        The   form    driver    requests    <STRONG>REQ_NEXT_CHOICE</STRONG>    and
        <STRONG>REQ_PREV_CHOICE</STRONG> assume that the possible values of a field
        form an ordered set, and provide the forms user with a way
        to  move  through the set.  The <STRONG>set_fieldtype_choice</STRONG> func-
-       tion allows forms programmers to define successor and pre-
-       decessor  functions  for  the field type.  These functions
+       tion allows forms  programmers  to  define  successor  and
+       predecessor functions for the field type.  These functions
        take the field pointer and an argument-block structure  as
        arguments.
 
 
 
 
-
-
-
-
-
-
-
+                                               <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 5f6af22f2f890053396b659abec6027ee4ac6770..bd092a0cbc9bb4f175071d5f2c094d0496d298df 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>                                       <STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index c90a023e58ee257b166beedeaa65e9bb3fccab81..9b755eb37db1e7533bdf44e698721499aad5c8b4 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_new.3x.html">form_new(3x)</A></STRONG>                                         <STRONG><A HREF="form_new.3x.html">form_new(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
+                                                     <STRONG><A HREF="form_new.3x.html">form_new(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index ae2cc2d9c50600bfa18ff6f961524c796963b928..ca031b9843a90157707c47fe0819b69a80bdf75d 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_new_page.3x.html">form_new_page(3x)</A></STRONG>                               <STRONG><A HREF="form_new_page.3x.html">form_new_page(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
+                                                <STRONG><A HREF="form_new_page.3x.html">form_new_page(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 38f970be2b62d59d800190d477418c3982190ccf..03a462dc00cd7592aaa85000a2c0a3513636868a 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>                                       <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 84d9f7b7de11bbf8495cf2ada8400e740e1aac7f..5409ca8f0ed9de06c82a9f564591590eac4d0abe 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>                                       <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>.
 
 
-
 </PRE>
 <H2>NOTES</H2><PRE>
        The header file <STRONG>&lt;form.h&gt;</STRONG> automatically includes the header
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 2730fddb4724f1d6600eaef66e9f557731a20a51..379e4a8ed4f8e57c10f06e857a1f6cfebc0a0a9d 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_post.3x.html">form_post(3x)</A></STRONG>                                       <STRONG><A HREF="form_post.3x.html">form_post(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="form_post.3x.html">form_post(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 093f1f1299b261bf01cb666c6a9980f221608ab4..6aeb907c3e6a474a7b48d058ce374de8b0fbe655 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>                         <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                             <STRONG><A HREF="form_requestname.3x.html">form_requestname(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 325df02b0f0996563b5276899badf0df5bd0a5e7..5f6e0b3d4f1b47161f0fc7fcf81d842dc747bdd6 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_userptr.3x.html">form_userptr(3x)</A></STRONG>                                 <STRONG><A HREF="form_userptr.3x.html">form_userptr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
+                                                 <STRONG><A HREF="form_userptr.3x.html">form_userptr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 13d39e3a8429696c425db19726b3c700e9cae038..8cb1dcda2365c4fed8b56be207812fd4bd10aaf5 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="form_win.3x.html">form_win(3x)</A></STRONG>                                         <STRONG><A HREF="form_win.3x.html">form_win(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>.
 
 
-
 </PRE>
 <H2>NOTES</H2><PRE>
        The header file <STRONG>&lt;form.h&gt;</STRONG> automatically includes the header
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                     <STRONG><A HREF="form_win.3x.html">form_win(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 099b3ef069e053bf54f7370a765c55e8b6edb859..26deb7e322ec3594d9cfbb7c14a6ba7c2a2cdd0f 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: infocmp.1m,v 1.30 2002/10/05 21:22:21 tom Exp @
+  * @Id: infocmp.1m,v 1.34 2003/10/25 16:19:01 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>                                           <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        for each terminal named.
 
       <STRONG>-I</STRONG>   use the <STRONG>terminfo</STRONG> names
-
       <STRONG>-L</STRONG>   use the long C variable name listed in &lt;<STRONG>term.h</STRONG>&gt;
       <STRONG>-C</STRONG>   use the <STRONG>termcap</STRONG> names
       <STRONG>-r</STRONG>   when using <STRONG>-C</STRONG>, put out all capabilities in <STRONG>termcap</STRONG> form
        The  <STRONG>-u</STRONG>  option  produces a <STRONG>terminfo</STRONG> source description of
        the first terminal <EM>termname</EM> which is relative to  the  sum
        of  the  descriptions  given  by the entries for the other
-       terminals  <EM>termnames</EM>.   It  does  this  by  analyzing  the
-       differences  between  the  first  <EM>termname</EM>  and  the other
+       terminals <EM>termnames</EM>.  It does this by analyzing  the  dif-
+       ferences   between   the  first  <EM>termname</EM>  and  the  other
        <EM>termnames</EM> and producing a description with <STRONG>use=</STRONG> fields for
        the  other  terminals.   In this manner, it is possible to
        retrofit  generic  terminfo  entries  into  a   terminal's
 
             An   SGR0  designates  an  empty  highlight  sequence
             (equivalent to {SGR:NORMAL}).
-       -
-          Set output format to terminfo.
+
+       <STRONG>-l</STRONG>   Set output format to terminfo.
 
        <STRONG>-p</STRONG>   Ignore padding specifications when comparing strings.
 
 
        The <STRONG>-r</STRONG> option's notion of `termcap' capabilities is System
        V Release 4's.  Actual BSD curses  versions  will  have  a
-       more  restricted  set.  To see only the 4.4BSD set, use -r
-       -RBSD.
+       more  restricted  set.  To see only the 4.4BSD set, use <STRONG>-r</STRONG>
+       <STRONG>-RBSD</STRONG>.
 
 
 </PRE>
 <H2>BUGS</H2><PRE>
-       The -F option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> should be a <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG> mode.
+       The <STRONG>-F</STRONG> option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> should be a <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG> mode.
 
 
 </PRE>
 </PRE>
 <H2>AUTHOR</H2><PRE>
        Eric S. Raymond &lt;esr@snark.thyrsus.com&gt; and
-       Thomas E. Dickey &lt;dickey@herndon4.his.com&gt;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+       Thomas E. Dickey &lt;dickey@invisible-island.net&gt;
 
 
 
+                                                      <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index b4738d72d5a1a2c9faf463b043479fb168f24f4f..2bb2f8b4ec8977e6b26e6fa472dac8e58c50e129 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1999,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1999-2000,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: infotocap.1m,v 1.3 2000/08/13 01:56:03 tom Exp @
+  * @Id: infotocap.1m,v 1.4 2003/05/11 00:32:53 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>                                       <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
diff --git a/doc/html/man/key_defined.3x.html b/doc/html/man/key_defined.3x.html
new file mode 100644 (file)
index 0000000..bed9290
--- /dev/null
@@ -0,0 +1,103 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
+<!-- 
+  ****************************************************************************
+  * Copyright (c) 2003 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: Thomas E. Dickey 2003
+  * @Id: key_defined.3x,v 1.2 2003/05/17 23:24:45 tom Exp @
+-->
+<HTML>
+<HEAD>
+<TITLE>key_defined 3x</TITLE>
+<link rev=made href="mailto:bug-ncurses@gnu.org">
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+</HEAD>
+<BODY>
+<H1>key_defined 3x</H1>
+<HR>
+<PRE>
+<!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>                                   <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>
+
+
+
+
+</PRE>
+<H2>NAME</H2><PRE>
+       <STRONG>define_key</STRONG> - define a keycode
+
+
+</PRE>
+<H2>SYNOPSIS</H2><PRE>
+       <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
+
+       <STRONG>int</STRONG> <STRONG>key_defined(const</STRONG> <STRONG>char</STRONG> <STRONG>*definition);</STRONG>
+
+
+</PRE>
+<H2>DESCRIPTION</H2><PRE>
+       This is an extension to the curses library.  It permits an
+       application to determine if a string is currently bound to
+       any keycode.
+
+
+</PRE>
+<H2>RETURN VALUE</H2><PRE>
+       If  the  string  is bound to a keycode, its value (greater
+       than zero) is returned.  If no keycode is bound,  zero  is
+       returned.   If  the  string  conflicts with longer strings
+       which are bound to keys, -1 is returned.
+
+
+</PRE>
+<H2>PORTABILITY</H2><PRE>
+       These routines are specific to  ncurses.   They  were  not
+       supported  on  Version 7, BSD or System V implementations.
+       It is recommended that any code depending on them be  con-
+       ditioned using NCURSES_VERSION.
+
+
+</PRE>
+<H2>SEE ALSO</H2><PRE>
+       <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>.
+
+
+</PRE>
+<H2>AUTHOR</H2><PRE>
+       Thomas Dickey.
+
+
+
+                                                  <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>
+</PRE>
+<HR>
+<ADDRESS>
+Man(1) output converted with
+<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
+</ADDRESS>
+</BODY>
+</HTML>
index 99da0c76a0043f3c1d4ec3470aa99015135ed124..667bdf84baa46aebe7b31da138501831b848bc6b 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1999,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1999-2002,2003 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            *
@@ -27,8 +27,8 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * Author: Thomas E. Dickey &lt;dickey@clark.net&gt; 1999
-  * @Id: keybound.3x,v 1.3 2002/02/16 22:30:36 tom Exp @
+  * Author: Thomas E. Dickey 1999
+  * @Id: keybound.3x,v 1.5 2003/10/25 20:33:16 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>                                               <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
-       The  keycode  must  be  greater  than  zero,  else NULL is
-       returned.  If it does not correspond  to  a  defined  key,
-       then  NULL is returned.  Otherwise, the function returns a
-       string, which must be freed by the caller.
+       The <EM>keycode</EM> parameter must be greater than zero, else NULL
+       is returned.  If it does not correspond to a defined  key,
+       then  NULL  is  returned.   The <EM>count</EM> parameter is used to
+       allow the application to iterate through multiple  defini-
+       tions,  counting from zero.  When successful, the function
+       returns a string which must be freed by the caller.
 
 
 </PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                        <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 001445e2126b6efb3f8d6435b320f7966a85655b..0213a566f2d92629f8dcc2bc66014ab3cbcdc3dc 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,8 +27,8 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * Author: Thomas E. Dickey &lt;dickey@clark.net&gt; 1997
-  * @Id: keyok.3x,v 1.7 2002/02/16 22:40:59 tom Exp @
+  * Author: Thomas E. Dickey 1997
+  * @Id: keyok.3x,v 1.8 2003/10/25 20:41:08 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>                                               <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                        <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index d77562a95ff38b7b3544bb82f4455fd9b5b8c87e..fc558ef77ac7437bd07c846969909eb73ae61b28 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>                                                 <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        menu_back              <STRONG><A HREF="menu_attributes.3x.html">menu_attributes(3x)</A></STRONG>
        menu_driver            <STRONG><A HREF="menu_driver.3x.html">menu_driver(3x)</A></STRONG>
        menu_fore              <STRONG><A HREF="menu_attributes.3x.html">menu_attributes(3x)</A></STRONG>
-
        menu_format            <STRONG><A HREF="menu_format.3x.html">menu_format(3x)</A></STRONG>
        menu_grey              <STRONG><A HREF="menu_attributes.3x.html">menu_attributes(3x)</A></STRONG>
        menu_init              <STRONG><A HREF="menu_hook.3x.html">menu_hook(3x)</A></STRONG>
        menu_opts              <STRONG><A HREF="menu_opts.3x.html">menu_opts(3x)</A></STRONG>
        menu_opts_off          <STRONG><A HREF="menu_opts.3x.html">menu_opts(3x)</A></STRONG>
        menu_opts_on           <STRONG><A HREF="menu_opts.3x.html">menu_opts(3x)</A></STRONG>
+
        menu_pad               <STRONG><A HREF="menu_attributes.3x.html">menu_attributes(3x)</A></STRONG>
        menu_pattern           <STRONG><A HREF="menu_pattern.3x.html">menu_pattern(3x)</A></STRONG>
        menu_request_by_name   <STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                         <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 2332f98fab09b924c7e0192cd5967e4e4de3bccf..702fdc4ad9969209a40506408098c5160c8d4e9f 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_attributes.3x.html">menu_attributes(3x)</A></STRONG>                           <STRONG><A HREF="menu_attributes.3x.html">menu_attributes(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        detailed descriptions of the entry points.
 
 
-
 </PRE>
 <H2>NOTES</H2><PRE>
        The header file <STRONG>&lt;menu.h&gt;</STRONG> automatically includes the header
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                              <STRONG><A HREF="menu_attributes.3x.html">menu_attributes(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 61647f46f44249f3e0acfb68ef1f973e98b5787b..9e08a8678e08cacd8b561d47d855780c568eebe8 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_cursor.3x.html">menu_cursor(3x)</A></STRONG>                                   <STRONG><A HREF="menu_cursor.3x.html">menu_cursor(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="menu_cursor.3x.html">menu_cursor(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 2c4f5e6e27e9ec86aecac1e7e863e91558244652..fa65d9760c760622b7902f1ba29ad11b23dcd588 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: menu_driver.3x,v 1.10 2002/02/16 22:40:59 tom Exp @
+  * @Id: menu_driver.3x,v 1.11 2003/05/10 20:22:01 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_driver.3x.html">menu_driver(3x)</A></STRONG>                                   <STRONG><A HREF="menu_driver.3x.html">menu_driver(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        value of these pre-defined requests.
 
 
-
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
        <STRONG>menu_driver</STRONG> return one of the following error codes:
 
 
 
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="menu_driver.3x.html">menu_driver(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index e4c24d90492396d672f18458365b6829c07b4b03..b9d1887b0cdd4f3206e6a866d233d89c9078a624 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_format.3x.html">menu_format(3x)</A></STRONG>                                   <STRONG><A HREF="menu_format.3x.html">menu_format(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="menu_format.3x.html">menu_format(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index b2c784ec5826c387c6c2ef686f8d4c1088d5dff2..ab82cd75dbdbcf6c51e53fd01e0d2e904d183387 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_hook.3x.html">menu_hook(3x)</A></STRONG>                                       <STRONG><A HREF="menu_hook.3x.html">menu_hook(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="menu_hook.3x.html">menu_hook(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 65dd1c7c68cbf0c74a899a09870544785aa4651c..701c58af069395404da5f4feeed72e36daddac95 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_items.3x.html">menu_items(3x)</A></STRONG>                                     <STRONG><A HREF="menu_items.3x.html">menu_items(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
 </PRE>
 <HR>
 <ADDRESS>
index 588cb9459707a837b2b849a236fbdab18ecaec40..25388e44d71d448632d29b6aee7e661894a0e453 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_mark.3x.html">menu_mark(3x)</A></STRONG>                                       <STRONG><A HREF="menu_mark.3x.html">menu_mark(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        Juergen Pfeifer.  Manual  pages  and  adaptation  for  new
        curses by Eric S. Raymond.
 
+
+
+                                                    <STRONG><A HREF="menu_mark.3x.html">menu_mark(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index bd337a0917e7c9cf759897281f2547bbbdc4762f..7fc2e609f95a4c17cdb0192629a034136ebe9a2f 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_new.3x.html">menu_new(3x)</A></STRONG>                                         <STRONG><A HREF="menu_new.3x.html">menu_new(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
+                                                     <STRONG><A HREF="menu_new.3x.html">menu_new(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index a306b2a1712c7af7a4441cd4dc53e57c28c869a5..7266671777bd42e0265842b43a72ed7fcdc39d8b 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_opts.3x.html">menu_opts(3x)</A></STRONG>                                       <STRONG><A HREF="menu_opts.3x.html">menu_opts(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
        <STRONG>E_OK</STRONG> The routine succeeded.
 
-
        <STRONG>E_SYSTEM_ERROR</STRONG>
             System error occurred (see <STRONG>errno</STRONG>).
 
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="menu_opts.3x.html">menu_opts(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index ea3a8cce9a5764ed9251dbb3891089841e39c682..84a9de8bbaec15c41cce227cca88d567d23a55a3 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: menu_pattern.3x,v 1.7 2002/02/16 22:40:59 tom Exp @
+  * @Id: menu_pattern.3x,v 1.8 2003/05/10 20:22:01 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_pattern.3x.html">menu_pattern(3x)</A></STRONG>                                 <STRONG><A HREF="menu_pattern.3x.html">menu_pattern(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        Juergen  Pfeifer.   Manual  pages  and  adaptation for new
        curses by Eric S. Raymond.
 
+
+
+                                                 <STRONG><A HREF="menu_pattern.3x.html">menu_pattern(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 82d90e9fe42553285720a1b40ecfa1c177305503..26086cd3c29759cbff2a8eb4d7c2983bf2ee8189 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_post.3x.html">menu_post(3x)</A></STRONG>                                       <STRONG><A HREF="menu_post.3x.html">menu_post(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                    <STRONG><A HREF="menu_post.3x.html">menu_post(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index fa475d1b6b5411648bab40d40f1c2fbeb583d01a..c2f16b3f5c67c0fe262dcb1ffac508b4388d7636 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>                         <STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                             <STRONG><A HREF="menu_requestname.3x.html">menu_requestname(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 998cdb12c221f960485653df13f8baaf8aae3688..2ad714d468d5dc127b1d3f4f0f7247dcd3207db2 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_spacing.3x.html">menu_spacing(3x)</A></STRONG>                                 <STRONG><A HREF="menu_spacing.3x.html">menu_spacing(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 <H2>AUTHORS</H2><PRE>
        Juergen Pfeifer.  Manual  pages  and  adaptation  for  new
        curses by Eric S. Raymond.
+
+
+
+                                                 <STRONG><A HREF="menu_spacing.3x.html">menu_spacing(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 6fadbe52707f92845067b12dfb50e78b77195e79..3f0b8bcf5d2189d77118c15d0f0be4b2e596d26d 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_userptr.3x.html">menu_userptr(3x)</A></STRONG>                                 <STRONG><A HREF="menu_userptr.3x.html">menu_userptr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
+                                                 <STRONG><A HREF="menu_userptr.3x.html">menu_userptr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index d873d16d3eff6ad8f21be1ff950aa5244866c3a1..f5930504095ca96ac9c2337c1ec851b85c182f33 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="menu_win.3x.html">menu_win(3x)</A></STRONG>                                         <STRONG><A HREF="menu_win.3x.html">menu_win(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>.
 
 
-
 </PRE>
 <H2>NOTES</H2><PRE>
        The header file <STRONG>&lt;menu.h&gt;</STRONG> automatically includes the header
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                     <STRONG><A HREF="menu_win.3x.html">menu_win(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 82614bbd2bd5effbb37786ca44f3bb857a179b42..7a8c22fe3396cd9e6906557e12dd2abe672652fc 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="mitem_current.3x.html">mitem_current(3x)</A></STRONG>                               <STRONG><A HREF="mitem_current.3x.html">mitem_current(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                <STRONG><A HREF="mitem_current.3x.html">mitem_current(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index a60a1d7f941b2331d8562762a68f02e3c2fc7eee..aca34ad34611691a4965f5a21a023681593fed0e 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="mitem_name.3x.html">mitem_name(3x)</A></STRONG>                                     <STRONG><A HREF="mitem_name.3x.html">mitem_name(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="mitem_name.3x.html">mitem_name(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 86603d1abe15f034e135b5e8a7f8301360b7117b..40f6e930a4dd059cff7e3ac16dfc3dd88cdf6527 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998 Free Software Foundation, Inc.                        *
+  * Copyright (c) 1998,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: mitem_new.3x,v 1.7 1998/11/29 01:11:38 Rick.Ohnemus Exp @
+  * @Id: mitem_new.3x,v 1.8 2003/10/25 20:08:57 Jared.Yanovich Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="mitem_new.3x.html">mitem_new(3x)</A></STRONG>                                       <STRONG><A HREF="mitem_new.3x.html">mitem_new(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        it  from  the <STRONG>name</STRONG> and <STRONG>description</STRONG> pointers. Please notice
        that the item stores only the pointers  to  the  name  and
        description. Those pointers must be valid during the life-
-       time of the item. So you  should  be  very  carefull  with
-       names  or descriptions allocated on the stack of some rou-
-       tines.
+       time of the item. So you should be very careful with names
+       or descriptions allocated on the stack of some routines.
        The function <STRONG>free_item</STRONG> de-allocates an item. Please notice
-       that  it  is  the  responsibility  of  the  application to
-       release the memory for the name or the description of  the
+       that it  is  the  responsibility  of  the  application  to
+       release  the memory for the name or the description of the
        item.
 
 
@@ -81,7 +84,7 @@
             System error occurred (see <STRONG>errno</STRONG>).
 
        <STRONG>E_BAD_ARGUMENT</STRONG>
-            Routine  detected  an incorrect or out-of-range argu-
+            Routine detected an incorrect or  out-of-range  argu-
             ment.
 
        <STRONG>E_CONNECTED</STRONG>
 
 </PRE>
 <H2>PORTABILITY</H2><PRE>
-       These  routines  emulate  the System V menu library.  They
+       These routines emulate the System V  menu  library.   They
        were not supported on Version 7 or BSD versions.
 
 
 </PRE>
 <H2>AUTHORS</H2><PRE>
-       Juergen Pfeifer.  Manual  pages  and  adaptation  for  new
+       Juergen  Pfeifer.   Manual  pages  and  adaptation for new
        curses by Eric S. Raymond.
 
 
+
+                                                    <STRONG><A HREF="mitem_new.3x.html">mitem_new(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index cc43f6a472f134c2ae33101d3da17cba75329084..75ca07d9780d242ddbe3755976bb2de9e4ef6688 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="mitem_opts.3x.html">mitem_opts(3x)</A></STRONG>                                     <STRONG><A HREF="mitem_opts.3x.html">mitem_opts(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
+                                                   <STRONG><A HREF="mitem_opts.3x.html">mitem_opts(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 997a6762d55063aacb46898dcc39cc26ae308762..23574613a8e2c452024e62720304430a883c5aa1 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="mitem_userptr.3x.html">mitem_userptr(3x)</A></STRONG>                               <STRONG><A HREF="mitem_userptr.3x.html">mitem_userptr(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
+                                                <STRONG><A HREF="mitem_userptr.3x.html">mitem_userptr(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index e38d5e1bc59f1b374c23d8b910f07c9c85c5ea96..e04780d04eb68eaac7f608d406b5eebdd02453de 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="mitem_value.3x.html">mitem_value(3x)</A></STRONG>                                   <STRONG><A HREF="mitem_value.3x.html">mitem_value(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
+                                                  <STRONG><A HREF="mitem_value.3x.html">mitem_value(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 0b36dec5af5851f6160bb0da154d927b8ee93f33..19a1d8546560e7e06721a38522b22b424eedcced 100644 (file)
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="mitem_visible.3x.html">mitem_visible(3x)</A></STRONG>                               <STRONG><A HREF="mitem_visible.3x.html">mitem_visible(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                <STRONG><A HREF="mitem_visible.3x.html">mitem_visible(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 83995f9e1407afe0068f2bec6000c2e003870510..0490529778fa0486c0d9d32a0fef90d2a9e39a38 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998,1999,2001,2002 Free Software Foundation, Inc.         *
+  * Copyright (c) 1998-2003,2004 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: ncurses.3x,v 1.63 2002/08/10 21:56:07 tom Exp @
+  * @Id: ncurses.3x,v 1.70 2004/01/11 01:45:54 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>                                           <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 </PRE>
 <H2>DESCRIPTION</H2><PRE>
        The  <STRONG>ncurses</STRONG>  library  routines  give the user a terminal-
-       independent method  of  updating  character  screens  with
-       reasonable  optimization.   This  implementation  is ``new
+       independent method of updating character screens with rea-
+       sonable   optimization.    This  implementation  is  ``new
        curses'' (ncurses) and is  the  approved  replacement  for
        4.4BSD classic curses, which has been discontinued.
 
        The  <STRONG>ncurses</STRONG>  routines  emulate  the <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> library of
        System V Release 4 UNIX, and the XPG4 curses standard (XSI
        curses)  but the <STRONG>ncurses</STRONG> library is freely redistributable
-       in source form.  Differences  from  the  SVr4  curses  are
-       summarized  under  the  EXTENSIONS and BUGS sections below
-       and  described  in  detail  in  the  EXTENSIONS  and  BUGS
-       sections of individual man pages.
+       in source form.  Differences from the SVr4 curses are sum-
+       marized  under  the EXTENSIONS and BUGS sections below and
+       described in detail in the EXTENSIONS and BUGS sections of
+       individual man pages.
 
        A  program  using  these  routines must be linked with the
        <STRONG>-lncurses</STRONG> option, or (if it has been generated)  with  the
        debugging  library  <STRONG>-lncurses_g</STRONG>.   (Your system integrator
        may also have installed these libraries  under  the  names
        <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.)  The ncurses_g library generates
-       trace logs (in  a  file  called  'trace'  in  the  current
-       directory) that describe curses actions.
+       trace logs (in a file called 'trace' in the current direc-
+       tory) that describe curses actions.
 
        The  <STRONG>ncurses</STRONG>  package supports: overall screen, window and
-       pad manipulation; output  to  windows  and  pads;  reading
-       terminal input; control over terminal and <STRONG>curses</STRONG> input and
-       output  options;   environment   query   routines;   color
-       manipulation;   use   of   soft   label   keys;   terminfo
-       capabilities;   and   access   to   low-level    terminal-
-       manipulation routines.
+       pad manipulation; output to windows and pads; reading ter-
+       minal  input;  control  over terminal and <STRONG>curses</STRONG> input and
+       output options; environment query routines; color  manipu-
+       lation; use of soft label keys; terminfo capabilities; and
+       access to low-level terminal-manipulation routines.
 
        To initialize the routines, the routine <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>
-       must be called before any of the other routines that  deal
-       with  windows  and  screens  are used.  The routine <STRONG>endwin</STRONG>
+       must  be called before any of the other routines that deal
+       with windows and screens are  used.   The  routine  <STRONG>endwin</STRONG>
        must be called before exiting.  To get character-at-a-time
-       input  without  echoing (most interactive, screen oriented
-       programs want this),  the  following  sequence  should  be
+       input without echoing (most interactive,  screen  oriented
+       programs  want  this),  the  following  sequence should be
        used:
 
              <STRONG>initscr();</STRONG> <STRONG>cbreak();</STRONG> <STRONG>noecho();</STRONG>
              <STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG>
              <STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG>
 
-       Before  a  <STRONG>curses</STRONG>  program  is  run,  the tab stops of the
-       terminal should be set and its initialization strings,  if
-       defined,  must  be  output.  This can be done by executing
+       Before a <STRONG>curses</STRONG> program is run, the tab stops of the  ter-
+       minal  should  be  set  and its initialization strings, if
+       defined, must be output.  This can be  done  by  executing
        the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environment variable
-       <STRONG>TERM</STRONG>  has  been  exported.  <STRONG>tset(1)</STRONG> is usually responsible
+       <STRONG>TERM</STRONG> has been exported.  <STRONG>tset(1)</STRONG>  is  usually  responsible
        for doing this.  [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
 
-       The  <STRONG>ncurses</STRONG>  library   permits   manipulation   of   data
-       structures,  called  <EM>windows</EM>,  which  can be thought of as
-       two-dimensional arrays of characters representing  all  or
-       part  of  a  CRT  screen.  A default window called <STRONG>stdscr</STRONG>,
-       which is the size of the  terminal  screen,  is  supplied.
-       Others may be created with <STRONG>newwin</STRONG>.
-
-       Note  that  <STRONG>curses</STRONG>  does  not  handle overlapping windows,
-       that's done by the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library. This means that  you
-       can  either  use  <STRONG>stdscr</STRONG>  or  divide the screen into tiled
-       windows and not using <STRONG>stdscr</STRONG> at all. Mixing the  two  will
+       The  <STRONG>ncurses</STRONG>  library  permits manipulation of data struc-
+       tures, called <EM>windows</EM>, which can be  thought  of  as  two-
+       dimensional  arrays of characters representing all or part
+       of a CRT screen.  A default window called <STRONG>stdscr</STRONG>, which is
+       the  size of the terminal screen, is supplied.  Others may
+       be created with <STRONG>newwin</STRONG>.
+
+       Note that <STRONG>curses</STRONG>  does  not  handle  overlapping  windows,
+       that's  done by the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library. This means that you
+       can either use <STRONG>stdscr</STRONG> or divide the screen into tiled win-
+       dows  and  not  using  <STRONG>stdscr</STRONG>  at all. Mixing the two will
        result in unpredictable, and undesired, effects.
 
        Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>.
-       These  data  structures  are  manipulated  with   routines
-       described  here and elsewhere in the <STRONG>ncurses</STRONG> manual pages.
-       Among which the most basic routines are  <STRONG>move</STRONG>  and  <STRONG>addch</STRONG>.
-       More  general versions of these routines are included with
-       names beginning with <STRONG>w</STRONG>, allowing the  user  to  specify  a
+       These   data  structures  are  manipulated  with  routines
+       described here and elsewhere in the <STRONG>ncurses</STRONG> manual  pages.
+       Among  which  the  most basic routines are <STRONG>move</STRONG> and <STRONG>addch</STRONG>.
+       More general versions of these routines are included  with
+       names  beginning  with  <STRONG>w</STRONG>,  allowing the user to specify a
        window.  The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.)
 
-       After using routines to manipulate a  window,  <STRONG>refresh</STRONG>  is
-       called,  telling <STRONG>curses</STRONG> to make the user's CRT screen look
-       like <STRONG>stdscr</STRONG>.  The characters in a window are  actually  of
-       type  <STRONG>chtype</STRONG>, (character and attribute data) so that other
-       information about the character may also  be  stored  with
+       After  using  routines  to manipulate a window, <STRONG>refresh</STRONG> is
+       called, telling <STRONG>curses</STRONG> to make the user's CRT screen  look
+       like  <STRONG>stdscr</STRONG>.   The characters in a window are actually of
+       type <STRONG>chtype</STRONG>, (character and attribute data) so that  other
+       information  about  the  character may also be stored with
        each character.
 
-       Special  windows  called  <EM>pads</EM>  may  also  be manipulated.
+       Special windows  called  <EM>pads</EM>  may  also  be  manipulated.
        These are windows which are not constrained to the size of
-       the  screen  and  whose  contents  need  not be completely
-       displayed.  See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more information.
-
-       In addition to drawing characters  on  the  screen,  video
-       attributes  and  colors  may  be  supported,  causing  the
-       characters to show up in  such  modes  as  underlined,  in
-       reverse  video, or in color on terminals that support such
-       display enhancements.   Line  drawing  characters  may  be
-       specified  to be output.  On input, <STRONG>curses</STRONG> is also able to
-       translate arrow and function  keys  that  transmit  escape
-       sequences  into single values.  The video attributes, line
-       drawing characters, and input values use names, defined in
+       the screen and whose contents need not be completely  dis-
+       played.  See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more information.
+
+       In  addition  to  drawing  characters on the screen, video
+       attributes and colors may be supported, causing the  char-
+       acters  to show up in such modes as underlined, in reverse
+       video, or in color on terminals that support such  display
+       enhancements.  Line drawing characters may be specified to
+       be output.  On input, <STRONG>curses</STRONG> is  also  able  to  translate
+       arrow  and  function  keys  that transmit escape sequences
+       into single values.  The video  attributes,  line  drawing
+       characters,   and  input  values  use  names,  defined  in
        <STRONG>&lt;curses.h&gt;</STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and <STRONG>KEY_LEFT</STRONG>.
 
        If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or
-       if the program is executing in a window environment,  line
-       and  column  information  in the environment will override
+       if  the program is executing in a window environment, line
+       and column information in the  environment  will  override
        information read by <EM>terminfo</EM>.  This would effect a program
-       running  in an AT&amp;T 630 layer, for example, where the size
+       running in an AT&amp;T 630 layer, for example, where the  size
        of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>).
 
-       If the  environment  variable  <STRONG>TERMINFO</STRONG>  is  defined,  any
-       program   using   <STRONG>curses</STRONG>   checks  for  a  local  terminal
-       definition before checking in  the  standard  place.   For
-       example,  if  <STRONG>TERM</STRONG>  is  set  to <STRONG>att4424</STRONG>, then the compiled
-       terminal definition is found in
+       If  the environment variable <STRONG>TERMINFO</STRONG> is defined, any pro-
+       gram using <STRONG>curses</STRONG> checks for a local  terminal  definition
+       before  checking  in  the standard place.  For example, if
+       <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the compiled terminal defini-
+       tion is found in
 
              <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
 
        (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid
-       creation  of  huge  directories.)  However, if <STRONG>TERMINFO</STRONG> is
+       creation of huge directories.)  However,  if  <STRONG>TERMINFO</STRONG>  is
        set to <STRONG>$HOME/myterms</STRONG>, <STRONG>curses</STRONG> first checks
 
              <STRONG>$HOME/myterms/a/att4424</STRONG>,
 
              <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
 
-       This is useful for developing experimental definitions  or
-       when   write  permission  in  <STRONG>/usr/share/terminfo</STRONG>  is  not
-       available.
+       This  is useful for developing experimental definitions or
+       when write permission in <STRONG>/usr/share/terminfo</STRONG> is not avail-
+       able.
 
-       The integer  variables  <STRONG>LINES</STRONG>  and  <STRONG>COLS</STRONG>  are  defined  in
-       <STRONG>&lt;curses.h&gt;</STRONG>  and will be filled in by <STRONG>initscr</STRONG> with the size
-       of the screen.  The constants  <STRONG>TRUE</STRONG>  and  <STRONG>FALSE</STRONG>  have  the
-       values <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
+       The  integer  variables  <STRONG>LINES</STRONG>  and  <STRONG>COLS</STRONG>  are  defined in
+       <STRONG>&lt;curses.h&gt;</STRONG> and will be filled in by <STRONG>initscr</STRONG> with the  size
+       of the screen.  The constants <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the val-
+       ues <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
 
-       The  <STRONG>curses</STRONG>  routines  also  define  the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable
+       The <STRONG>curses</STRONG> routines also  define  the  <STRONG>WINDOW</STRONG>  <STRONG>*</STRONG>  variable
        <STRONG>curscr</STRONG> which is used for certain low-level operations like
-       clearing  and  redrawing a screen containing garbage.  The
+       clearing and redrawing a screen containing  garbage.   The
        <STRONG>curscr</STRONG> can be used in only a few routines.
 
-
    <STRONG>Routine</STRONG> <STRONG>and</STRONG> <STRONG>Argument</STRONG> <STRONG>Names</STRONG>
-       Many <STRONG>curses</STRONG> routines  have  two  or  more  versions.   The
-       routines  prefixed  with <STRONG>w</STRONG> require a window argument.  The
-       routines prefixed with <STRONG>p</STRONG> require a  pad  argument.   Those
-       without a prefix generally use <STRONG>stdscr</STRONG>.
+       Many  <STRONG>curses</STRONG> routines have two or more versions.  The rou-
+       tines prefixed with <STRONG>w</STRONG> require a window argument.  The rou-
+       tines prefixed with <STRONG>p</STRONG> require a pad argument.  Those with-
+       out a prefix generally use <STRONG>stdscr</STRONG>.
 
        The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate
-       to move to before performing the appropriate action.   The
-       <STRONG>mv</STRONG>  routines  imply  a call to <STRONG>move</STRONG> before the call to the
-       other routine.  The coordinate <EM>y</EM> always refers to the  row
-       (of  the  window), and <EM>x</EM> always refers to the column.  The
+       to  move to before performing the appropriate action.  The
+       <STRONG>mv</STRONG> routines imply a call to <STRONG>move</STRONG> before the  call  to  the
+       other  routine.  The coordinate <EM>y</EM> always refers to the row
+       (of the window), and <EM>x</EM> always refers to the  column.   The
        upper left-hand corner is always (0,0), not (1,1).
 
        The routines prefixed with <STRONG>mvw</STRONG> take both a window argument
-       and  <EM>x</EM>  and  <EM>y</EM> coordinates.  The window argument is always
+       and <EM>x</EM> and <EM>y</EM> coordinates.  The window  argument  is  always
        specified before the coordinates.
 
-       In each case, <EM>win</EM> is the window affected, and <EM>pad</EM>  is  the
-       pad  affected;  <EM>win</EM>  and  <EM>pad</EM>  are always pointers to type
-       <STRONG>WINDOW</STRONG>.
+       In  each  case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the
+       pad affected; <EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WIN-</STRONG>
+       <STRONG>DOW</STRONG>.
 
        Option setting routines require a Boolean flag <EM>bf</EM> with the
-       value  <STRONG>TRUE</STRONG>  or  <STRONG>FALSE</STRONG>;  <EM>bf</EM>  is  always of type <STRONG>bool</STRONG>.  The
-       variables <EM>ch</EM> and <EM>attrs</EM> below are always  of  type  <STRONG>chtype</STRONG>.
-       The  types <STRONG>WINDOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are defined in
-       <STRONG>&lt;curses.h&gt;</STRONG>.  The type <STRONG>TERMINAL</STRONG>  is  defined  in  <STRONG>&lt;term.h&gt;</STRONG>.
+       value <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>.  The vari-
+       ables  <EM>ch</EM>  and <EM>attrs</EM> below are always of type <STRONG>chtype</STRONG>.  The
+       types <STRONG>WINDOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>,  and  <STRONG>chtype</STRONG>  are  defined  in
+       <STRONG>&lt;curses.h&gt;</STRONG>.   The  type  <STRONG>TERMINAL</STRONG>  is defined in <STRONG>&lt;term.h&gt;</STRONG>.
        All other arguments are integers.
 
-
    <STRONG>Routine</STRONG> <STRONG>Name</STRONG> <STRONG>Index</STRONG>
        The following table lists each <STRONG>curses</STRONG> routine and the name
-       of the manual page on which  it  is  described.   Routines
-       flagged  with  `*'  are ncurses-specific, not described by
+       of  the  manual  page  on which it is described.  Routines
+       flagged with `*' are ncurses-specific,  not  described  by
        XPG4 or present in SVr4.
 
               <STRONG>curses</STRONG> Routine Name     Manual Page Name
               add_wchnstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
               add_wchstr              <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
               addch                   <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
+
               addchnstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
               addchstr                <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
               addnstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
               bkgd                    <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
               bkgdset                 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
               bkgrnd                  <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
-
               bkgrndset               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
               border                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
               border_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
               getbkgrnd               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
               getcchar                <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
               getch                   <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
+
               getmaxyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
               getmouse                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
               getn_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
               getparyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
               getstr                  <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
               getsyx                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
-
               getwin                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
               getyx                   <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
               halfdelay               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
               is_linetouched          <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
               is_wintouched           <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
               isendwin                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
+              key_defined             <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
               key_name                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
               keybound                <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
               keyname                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
               mousemask               <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
               move                    <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
               mvadd_wch               <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
-
               mvadd_wchnstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
               mvadd_wchstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
               mvaddch                 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
               mvaddchnstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
+
               mvaddchstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
               mvaddnstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
               mvaddnwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
               mvwaddwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
               mvwchgat                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
               mvwdelch                <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
-
               mvwget_wch              <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
               mvwget_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
               mvwgetch                <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
               mvwinchnstr             <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
               mvwinchstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
               mvwinnstr               <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
+
               mvwinnwstr              <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
               mvwins_nwstr            <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
               mvwins_wch              <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
               qiflush                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
               raw                     <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
               redrawwin               <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
-
               refresh                 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
               reset_prog_mode         <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
               reset_shell_mode        <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
               slk_attr_on             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
               slk_attr_set            <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
               slk_attroff             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
+
               slk_attron              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
               slk_attrset             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
               slk_clear               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
               tgetnum                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
               tgetstr                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
               tgoto                   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
-
               tigetflag               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
               tigetnum                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
               tigetstr                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
               waddstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
               waddwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
               wattr_get               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
+
               wattr_off               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
               wattr_on                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
               wattr_set               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
               wborder                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
               wborder_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
               wchgat                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
-
               wclear                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
               wclrtobot               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
               wclrtoeol               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
               wstandout               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
               wsyncdown               <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
               wsyncup                 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
-              wtimeout                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
 
+              wtimeout                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
               wtouchln                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
               wunctrl                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
               wvline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
 
 </PRE>
 <H2>RETURN VALUE</H2><PRE>
-       Routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure
-       and  an  integer  value  other  than  <STRONG>ERR</STRONG>  upon successful
-       completion,  unless  otherwise  noted   in   the   routine
-       descriptions.
-
-       All  macros  return  the  value  of  the <STRONG>w</STRONG> version, except
-       <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>,  <STRONG>getyx</STRONG>,  <STRONG>getbegyx</STRONG>,  <STRONG>getmaxyx</STRONG>.   The
-       return  values  of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>,
-       and <STRONG>getmaxyx</STRONG> are undefined (<EM>i</EM>.<EM>e</EM>., these should not be used
+       Routines  that  return  an integer return <STRONG>ERR</STRONG> upon failure
+       and an integer value other than <STRONG>ERR</STRONG> upon  successful  com-
+       pletion,  unless  otherwise  noted in the routine descrip-
+       tions.
+
+       All macros return the  value  of  the  <STRONG>w</STRONG>  version,  except
+       <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>.  The
+       return values of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>,  <STRONG>getyx</STRONG>,  <STRONG>getbegyx</STRONG>,
+       and <STRONG>getmaxyx</STRONG> are undefined (i.e., these should not be used
        as the right-hand side of assignment statements).
 
        Routines that return pointers return <STRONG>NULL</STRONG> on error.
 
 </PRE>
 <H2>ENVIRONMENT</H2><PRE>
-       The   following   environment   symbols   are  useful  for
-       customizing the runtime behavior of the  <STRONG>ncurses</STRONG>  library.
-       The  most  important  ones  have been already discussed in
-       detail.
+       The following environment symbols are useful for customiz-
+       ing the runtime behavior of the <STRONG>ncurses</STRONG> library.  The most
+       important ones have been already discussed in detail.
 
        BAUDRATE
             The debugging library checks this environment  symbol
             when the application has redirected output to a file.
             The symbol's numeric value is used for the  baudrate.
-            If  no value is found <STRONG>ncurses</STRONG> uses 9600.  This allows
+            If no value is found, <STRONG>ncurses</STRONG> uses 9600.  This allows
             testers to construct repeatable test-cases that  take
             into account costs that depend on baudrate.
 
        CC   When set, change occurrences of the command_character
             (i.e., the <STRONG>cmdch</STRONG> capability) of the  loaded  terminfo
-            entries  to  the  value  of  this  symbol.   Very few
-            terminfo entries provide this feature.
+            entries  to  the value of this symbol.  Very few ter-
+            minfo entries provide this feature.
 
        COLUMNS
             Specify  the  width  of  the  screen  in  characters.
-            Applications   running  in  a  windowing  environment
-            usually are able to obtain the width of the window in
+            Applications  running in a windowing environment usu-
+            ally are able to obtain the width of  the  window  in
             which  they  are  executing.  If neither the $COLUMNS
             value nor the terminal's screen  size  is  available,
             <STRONG>ncurses</STRONG>  uses  the size which may be specified in the
             Specifies  the total time, in milliseconds, for which
             ncurses will await  a  character  sequence,  e.g.,  a
             function  key.  The default value, 1000 milliseconds,
-            is enough for most  uses.   However,  it  is  made  a
-            variable to accommodate unusual applications.
+            is enough for most uses.  However, it is made a vari-
+            able to accommodate unusual applications.
 
             The most common instance where you may wish to change
             this value is to work with slow hosts, e.g.,  running
             the  terminal did not send characters rapidly enough.
             The library will still see a timeout.
 
-            Note that  xterm  mouse  events  are  built  up  from
-            character sequences received from the xterm.  If your
+            Note that xterm mouse events are built up from  char-
+            acter  sequences  received  from  the xterm.  If your
             application makes heavy use of multiple-clicking, you
             may  wish  to lengthen this default value because the
             timeout applies to the composed multi-click event  as
             132.
 
        NCURSES_ASSUMED_COLORS
-            Override  the   compiled-in   assumption   that   the
-            terminal's  default  colors  are  white-on-black (see
-            <STRONG><A HREF="assume_default_colors.3x.html">assume_default_colors(3x)</A></STRONG>).    You   may   set    the
-            foreground  and  background  color  values  with this
-            environment variable by  proving  a  2-element  list:
-            foreground,background.   For example, to tell ncurses
-            to not assume anything about the colors, set this  to
+            Override the compiled-in assumption that  the  termi-
+            nal's   default   colors   are   white-on-black  (see
+            <STRONG><A HREF="assume_default_colors.3x.html">assume_default_colors(3x)</A></STRONG>).  You may  set  the  fore-
+            ground and background color values with this environ-
+            ment variable by  proving  a  2-element  list:  fore-
+            ground,background.   For  example, to tell ncurses to
+            not assume anything about the  colors,  set  this  to
             "-1,-1".  To make it green-on-black, set it to "2,0".
-            Any  positive  value  from  zero  to   the   terminfo
-            <STRONG>max_colors</STRONG> value is allowed.
+            Any positive value from zero to the terminfo <STRONG>max_col-</STRONG>
+            <STRONG>ors</STRONG> value is allowed.
 
        NCURSES_NO_PADDING
             Most  of  the  terminal  descriptions in the terminfo
             database are written for real  "hardware"  terminals.
             Many  people  use  terminal  emulators which run in a
-            windowing   environment    and    use    curses-based
-            applications.   Terminal  emulators can duplicate all
-            of the important aspects of a hardware terminal,  but
-            they  do  not  have  the same limitations.  The chief
-            limitation of a hardware terminal from the standpoint
-            of  your  application  is the management of dataflow,
-            i.e.,  timing.   Unless  a   hardware   terminal   is
-            interfaced  into  a terminal concentrator (which does
-            flow control), it (or your application)  must  manage
-            dataflow, preventing overruns.  The cheapest solution
-            (no hardware cost) is for your program to do this  by
-            pausing  after  operations  that  the  terminal  does
-            slowly, such as clearing the display.
+            windowing environment and use  curses-based  applica-
+            tions.   Terminal  emulators can duplicate all of the
+            important aspects of a hardware terminal, but they do
+            not  have the same limitations.  The chief limitation
+            of a hardware terminal from the  standpoint  of  your
+            application  is  the  management  of  dataflow, i.e.,
+            timing.  Unless a  hardware  terminal  is  interfaced
+            into  a  terminal  concentrator (which does flow con-
+            trol), it (or your application) must manage dataflow,
+            preventing overruns.  The cheapest solution (no hard-
+            ware cost) is for your program to do this by  pausing
+            after  operations that the terminal does slowly, such
+            as clearing the display.
 
             As a result, many  terminal  descriptions  (including
             the  vt100)  have delay times embedded.  You may wish
             part of special control sequences such as <EM>flash</EM>.
 
        NCURSES_NO_SETBUF
-            Normally   <STRONG>ncurses</STRONG>  enables  buffered  output  during
-            terminal initialization.  This is done  (as  in  SVr4
-            curses)   for   performance   reasons.   For  testing
-            purposes, both of <STRONG>ncurses</STRONG> and  certain  applications,
-            this   feature   is   made   optional.   Setting  the
+            Normally  <STRONG>ncurses</STRONG> enables buffered output during ter-
+            minal initialization.   This  is  done  (as  in  SVr4
+            curses)  for  performance  reasons.  For testing pur-
+            poses, both of <STRONG>ncurses</STRONG> and certain applications, this
+            feature    is    made    optional.     Setting    the
             NCURSES_NO_SETBUF variable disables output buffering,
             leaving  the  output  in  the  original (usually line
             buffered) mode.
             distinct, though many are similar.
 
        TERMCAP
-            If  the  <STRONG>ncurses</STRONG>  library  has  been  configured with
-            <EM>termcap</EM> support, <STRONG>ncurses</STRONG> will check for a  terminal's
+            If the <STRONG>ncurses</STRONG> library has been configured with <EM>term-</EM>
+            <EM>cap</EM> support, <STRONG>ncurses</STRONG>  will  check  for  a  terminal's
             description in termcap form if it is not available in
             the terminfo database.
 
             The complete list of directories in order follows:
 
             -  the last directory to which <STRONG>ncurses</STRONG> wrote, if any,
-               is searched first.
+               is searched first
 
             -  the directory specified by the TERMINFO symbol
 
                /usr/share/terminfo
 
        TERMINFO_DIRS
-            Specifies   a  list  of  directories  to  search  for
-            terminal descriptions.   The  list  is  separated  by
-            colons  (i.e.,  ":") on Unix, semicolons on OS/2 EMX.
-            All of the  terminal  descriptions  are  in  terminfo
-            form,  which makes a subdirectory named for the first
-            letter of the terminal names therein.
+            Specifies  a list of directories to search for termi-
+            nal descriptions.  The list is  separated  by  colons
+            (i.e.,  ":") on Unix, semicolons on OS/2 EMX.  All of
+            the terminal descriptions are in terminfo form, which
+            makes  a  subdirectory  named for the first letter of
+            the terminal names therein.
 
        TERMPATH
             If TERMCAP does not hold a  file  name  then  <STRONG>ncurses</STRONG>
-            checks  the  TERMPATH  symbol.   This  is  a  list of
-            filenames separated by spaces or colons  (i.e.,  ":")
-            on  Unix,  semicolons  on  OS/2 EMX.  If the TERMPATH
-            symbol  is  not  set,  <STRONG>ncurses</STRONG>  looks  in  the  files
-            /etc/termcap,       /usr/share/misc/termcap       and
-            $HOME/.termcap, in that order.
+            checks  the TERMPATH symbol.  This is a list of file-
+            names separated by spaces or colons  (i.e.,  ":")  on
+            Unix, semicolons on OS/2 EMX.  If the TERMPATH symbol
+            is not set, <STRONG>ncurses</STRONG> looks in the files  /etc/termcap,
+            /usr/share/misc/termcap  and  $HOME/.termcap, in that
+            order.
 
        The library may be configured to disregard  the  following
        variables  when  the current user is the superuser (root),
 <H2>FILES</H2><PRE>
        /usr/share/tabset
             directory  containing  initialization  files  for the
-            terminal  capability   database   /usr/share/terminfo
-            terminal capability database
+            terminal capability database /usr/share/terminfo ter-
+            minal capability database
 
 
 </PRE>
 </PRE>
 <H2>EXTENSIONS</H2><PRE>
        The  <STRONG>ncurses</STRONG>  library  can  be  compiled  with  an  option
-       (<STRONG>-DUSE_GETCAP</STRONG>)   that   falls   back   to   the  old-style
-       /etc/termcap file if the terminal setup code cannot find a
-       terminfo entry corresponding to <STRONG>TERM</STRONG>.  Use of this feature
-       is not recommended, as it essentially includes  an  entire
-       termcap   compiler   in   the  <STRONG>ncurses</STRONG>  startup  code,  at
-       significant cost in core and startup cycles.
+       (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term-
+       cap file if the terminal setup code cannot find a terminfo
+       entry  corresponding  to <STRONG>TERM</STRONG>.  Use of this feature is not
+       recommended, as it essentially includes an entire  termcap
+       compiler  in the <STRONG>ncurses</STRONG> startup code, at significant cost
+       in core and startup cycles.
 
        The <STRONG>ncurses</STRONG>  library  includes  facilities  for  capturing
        mouse  events  on certain terminals (including xterm). See
        The <STRONG>ncurses</STRONG> library extends the fixed set of function  key
        capabilities  of  terminals  by  allowing  the application
        designer to define additional key  sequences  at  runtime.
-       See  the  <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>  and  <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>  manual pages for
-       details.
+       See the <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>, and <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG> man-
+       ual pages for details.
 
-       The  <STRONG>ncurses</STRONG>  library  can  exploit  the  capabilities  of
-       terminals  which  implement the ISO-6429 SGR 39 and SGR 49
+       The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi-
+       nals  which  implement  the  ISO-6429  SGR  39  and SGR 49
        controls, which allow an application to reset the terminal
        to  its  original  foreground and background colors.  From
        the users' perspective, the application is  able  to  draw
-       colored   text   on   a  background  whose  color  is  set
-       independently,  providing  better   control   over   color
-       contrasts.   See  the  <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>  manual page for
-       details.
+       colored  text  on a background whose color is set indepen-
+       dently, providing better  control  over  color  contrasts.
+       See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details.
 
-       The <STRONG>ncurses</STRONG> library  includes  a  function  for  directing
-       application  output  to a printer attached to the terminal
+       The  <STRONG>ncurses</STRONG>  library  includes  a  function for directing
+       application output to a printer attached to  the  terminal
        device.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
 
 
 </PRE>
 <H2>PORTABILITY</H2><PRE>
-       The  <STRONG>ncurses</STRONG>  library  is  intended   to   be   BASE-level
-       conformant with the XSI Curses standard.  Certain portions
-       of the EXTENDED XSI Curses functionality (including  color
-       support) are supported.  The following EXTENDED XSI Curses
-       calls in support of wide (multibyte)  characters  are  not
-       yet implemented: <STRONG>pecho_wchar</STRONG>, <STRONG>slk_wset</STRONG>.
-
-       A  small  number of local differences (that is, individual
-       differences between the XSI Curses and <STRONG>ncurses</STRONG> calls)  are
-       described  in  <STRONG>PORTABILITY</STRONG>  sections  of  the  library man
+       The  <STRONG>ncurses</STRONG>  library is intended to be BASE-level confor-
+       mant with the  XSI  Curses  standard.   The  EXTENDED  XSI
+       Curses  functionality  (including  color  support) is sup-
+       ported.
+
+       A small number of local differences (that  is,  individual
+       differences  between the XSI Curses and <STRONG>ncurses</STRONG> calls) are
+       described in  <STRONG>PORTABILITY</STRONG>  sections  of  the  library  man
        pages.
 
        The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it present
-       in  SVr4.  See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page for details.
+       in SVr4.  See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page for  details.
 
-       The routine <STRONG>slk_attr</STRONG> is  not  part  of  XPG4,  nor  is  it
-       present  in  SVr4.   See  the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page for
+       The  routine  <STRONG>slk_attr</STRONG> is not part of XPG4, nor is it pre-
+       sent in  SVr4.   See  the  <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>  manual  page  for
        details.
 
-       The    routines    <STRONG>getmouse</STRONG>,    <STRONG>mousemask</STRONG>,     <STRONG>ungetmouse</STRONG>,
-       <STRONG>mouseinterval</STRONG>,  and <STRONG>wenclose</STRONG> relating to mouse interfacing
-       are not part of XPG4, nor are they present in  SVr4.   See
-       the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
+       The  routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mouseinter-</STRONG>
+       <STRONG>val</STRONG>, and <STRONG>wenclose</STRONG> relating to mouse  interfacing  are  not
+       part  of  XPG4,  nor  are  they  present in SVr4.  See the
+       <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
 
        The routine <STRONG>mcprint</STRONG> was not present in any previous curses
-       implementation.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>  manual  page  for
+       implementation.   See  the  <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for
        details.
 
        The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it present
        in SVr4.  See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for details.
 
-       In  historic  curses  versions,  delays  embedded  in  the
-       capabilities   <STRONG>cr</STRONG>,   <STRONG>ind</STRONG>,   <STRONG>cub1</STRONG>,  <STRONG>ff</STRONG>  and  <STRONG>tab</STRONG>  activated
-       corresponding delay bits in the UNIX tty driver.  In  this
-       implementation,  all  padding  is done by NUL sends.  This
-       method  is  slightly  more  expensive,  but  narrows   the
-       interface  to  the UNIX kernel significantly and increases
-       the package's portability correspondingly.
+       In  historic curses versions, delays embedded in the capa-
+       bilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding
+       delay  bits  in  the UNIX tty driver.  In this implementa-
+       tion, all padding is done by NUL sends.   This  method  is
+       slightly  more expensive, but narrows the interface to the
+       UNIX kernel  significantly  and  increases  the  package's
+       portability correspondingly.
 
 
 </PRE>
 <H2>NOTES</H2><PRE>
-       The header  file  <STRONG>&lt;curses.h&gt;</STRONG>  automatically  includes  the
+       The  header  file  <STRONG>&lt;curses.h&gt;</STRONG>  automatically  includes the
        header files <STRONG>&lt;stdio.h&gt;</STRONG> and <STRONG>&lt;unctrl.h&gt;</STRONG>.
 
-       If  standard  output from a <STRONG>ncurses</STRONG> program is re-directed
-       to something which is not a tty, screen  updates  will  be
-       directed  to  standard  error.   This  was an undocumented
-       feature of AT&amp;T System V Release 3 curses.
+       If standard output from a <STRONG>ncurses</STRONG> program  is  re-directed
+       to  something  which  is not a tty, screen updates will be
+       directed to standard error.  This was an undocumented fea-
+       ture of AT&amp;T System V Release 3 curses.
 
 
 </PRE>
 <H2>AUTHORS</H2><PRE>
-       Zeyd M. Ben-Halim, Eric  S.  Raymond,  Thomas  E.  Dickey.
+       Zeyd  M.  Ben-Halim,  Eric  S.  Raymond, Thomas E. Dickey.
        Based on pcurses by Pavel Curtis.
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                      <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 31ab3480c7be17056b039a51dc6c675482751105..7dd86b97f38f9663bd308c1a3414bb75d0659502 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998 Free Software Foundation, Inc.                        *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: panel.3x,v 1.10 2000/08/13 01:56:47 tom Exp @
+  * @Id: panel.3x,v 1.11 2003/05/17 22:44:09 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>                                               <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -81,7 +85,7 @@
        of the stack.
 
        A window is associated with every panel.  The  panel  rou-
-       tines  enable you to create, move, hides, and show panels,
+       tines  enable  you to create, move, hide, and show panels,
        as well as position a panel at any desired location in the
        stack.
 
 
 
 
-
-
-
+                                                        <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 9ad4fe776d148840027a4649fbd0c220b29f1d41..a7be4795155856b3abfac53e1028fd6a3f8ce9ac 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,8 +27,8 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * Author: Thomas E. Dickey &lt;dickey@clark.net&gt; 1996,1997,2002
-  * @Id: resizeterm.3x,v 1.9 2002/02/16 22:32:24 tom Exp @
+  * Author: Thomas E. Dickey 1996,1997,2002
+  * @Id: resizeterm.3x,v 1.10 2003/10/25 20:41:08 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>                                     <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                   <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 394d0f7c4da5108e965c89d0c1f45eed8c6a9df7..a0c144cc7ed20b1de9489ecd29c2d42e77f6c59b 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: term.5,v 1.14 2002/08/10 21:59:37 tom Exp @
+  * @Id: term.5,v 1.15 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="TERM.5.html">TERM(5)</A></STRONG>                                                   <STRONG><A HREF="TERM.5.html">TERM(5)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
+                                                          <STRONG><A HREF="TERM.5.html">TERM(5)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 9679864383f420d88ad1e32efc45097207508128..85284e7d847d368be8461ff11e49ddb92d5f5b8c 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: term.7,v 1.13 2002/04/20 16:50:47 tom Exp @
+  * @Id: term.7,v 1.14 2003/05/10 20:33:49 jmc Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="TERM.7.html">TERM(7)</A></STRONG>                                                   <STRONG><A HREF="TERM.7.html">TERM(7)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        ters or digits.  You need to avoid using punctuation char-
        acters  in  root  names,  because they are used and inter-
        preted as filenames and shell meta-characters (such as  !,
-       $, *, ? etc.) embedded in them may cause odd and unhelpful
-       behavior.  The slash (/), or any other character that  may
-       be  interpreted  by  anyone's file system (\, $, [, ]), is
-       especially dangerous  (terminfo  is  platform-independent,
+       $,  *, ?, etc.) embedded in them may cause odd and unhelp-
+       ful behavior.  The slash (/), or any other character  that
+       may  be  interpreted by anyone's file system (\, $, [, ]),
+       is especially dangerous (terminfo is platform-independent,
        and  choosing  names with special characters could someday
        make life difficult for users of a future port).  The  dot
        (.)  character  is  relatively safe as long as there is at
        in  a  multi-platform environment!  If a model number fol-
        lows, it should indicate either the OS  release  level  or
        the console driver release level.
+
        The root name for a terminal emulator (assuming it doesn't
        fit one of the standard ANSI or vt100 types) should be the
        program  name or a readily recognizable abbreviation of it
             another that has this suffix and uses  magic  cookies
             to support multiple attributes.
 
-       -am  Enable auto-margin (right-margin wraparound)
+       -am  Enable auto-margin (right-margin wraparound).
 
-       -m   Mono mode - suppress color support
+       -m   Mono mode - suppress color support.
 
        -na  No  arrow keys - termcap ignores arrow keys which are
             actually there on the terminal, so the user  can  use
             the arrow keys locally.
 
-       -nam No auto-margin - suppress am capability
+       -nam No auto-margin - suppress am capability.
 
-       -nl  No labels - suppress soft labels
+       -nl  No labels - suppress soft labels.
 
-       -nsl No status line - suppress status line
+       -nsl No status line - suppress status line.
 
        -pp  Has a printer port which is used.
 
-       -rv  Terminal in reverse video mode (black on white)
+       -rv  Terminal in reverse video mode (black on white).
 
        -s   Enable status line.
 
             compiled terminal capability data base
 
        /etc/inittab
-            tty line initialization (AT&amp;T-like UNIXes).
+            tty line initialization (AT&amp;T-like UNIXes)
 
        /etc/ttys
-            tty line initialization (BSD-like UNIXes).
+            tty line initialization (BSD-like UNIXes)
 
 
 </PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                          <STRONG><A HREF="TERM.7.html">TERM(7)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 366da6548e31edd0b0195816a92efefb7161415c..0a503be34a520e9c91b6b525f299328ec7aa7ea9 100644 (file)
@@ -34,7 +34,7 @@
   ****************************************************************************
   * @Id: terminfo.head,v 1.10 2002/08/17 23:37:10 tom Exp @
   * Head of terminfo man page ends here
-  * @Id: terminfo.tail,v 1.35 2002/04/20 16:49:33 tom Exp @
+  * @Id: terminfo.tail,v 1.38 2003/01/05 22:47:05 tom Exp @
   * Beginning of terminfo.tail file
   *.TH
 -->
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="TERMINFO.5.html">TERMINFO(5)</A></STRONG>                File Formats               <STRONG><A HREF="TERMINFO.5.html">TERMINFO(5)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
        can_change                ccc   cc    terminal can re-
                                              define existing col-
                                              ors
-
        ceol_standout_glitch      xhp   xs    standout not erased
                                              by overwriting (hp)
        col_addr_glitch           xhpa  YA    only positive motion
                                              strikes with a blank
        generic_type              gn    gn    generic line type
        hard_copy                 hc    hc    hardcopy terminal
+
        hard_cursor               chts  HC    cursor is hard to
                                              see
        has_meta_key              km    km    Has a meta key
                                              f2=ctrl C)
        no_pad_char               npc   NP    pad character does
                                              not exist
-
-
        non_dest_scroll_region    ndscr ND    scrolling region is
                                              non-destructive
        non_rev_rmcup             nrrmc NR    smcup does not
        label_height          lh       lh     rows in each label
        label_width           lw       lw     columns in each
                                              label
+
        lines                 lines    li     number of lines on
                                              screen or page
        lines_of_memory       lm       lm     lines of memory if &gt;
        no_color_video        ncv      NC     video attributes
                                              that cannot be used
                                              with colors
-
-
        num_labels            nlab     Nl     number of labels on
                                              screen
        padding_baud_rate     pb       pb     lowest baud rate
        output_res_char        orc     Yi     horizontal resolu-
                                              tion in units per
                                              line
+
+
+
        output_res_horz_inch   orhi    Yk     horizontal resolu-
                                              tion in units per
                                              inch
                                              in units per inch
        print_rate             cps     Ym     print rate in char-
                                              acters per second
-
-
        wide_char_size         widcs   Yn     character step size
                                              when in double wide
                                              mode
        cursor_address            cup    cm   move to row #1
                                              columns #2
        cursor_down               cud1   do   down one line
-
-
        cursor_home               home   ho   home cursor (if no
                                              cup)
        cursor_invisible          civis  vi   make cursor invisi-
                                              ble
+
        cursor_left               cub1   le   move left one space
        cursor_mem_address        mrcup  CM   memory relative cur-
                                              sor addressing, move
                                              riage motion
        enter_micro_mode          smicm  ZJ   Start micro-motion
                                              mode
-
        enter_near_letter_quality snlq   ZK   Enter NLQ mode
        enter_normal_quality      snrmq  ZL   Enter normal-quality
                                              mode
        enter_subscript_mode      ssubm  ZN   Enter subscript mode
        enter_superscript_mode    ssupm  ZO   Enter superscript
                                              mode
+
        enter_underline_mode      smul   us   begin underline mode
        enter_upward_mode         sum    ZP   Start upward car-
                                              riage motion
        flash_hook                hook   fh   flash switch hook
        flash_screen              flash  vb   visible bell (may
                                              not move cursor)
-
        form_feed                 ff     ff   hardcopy terminal
                                              page eject (P*)
        from_status_line          fsl    fs   return from status
        insert_padding            ip     ip   insert padding after
                                              inserted character
        key_a1                    ka1    K1   upper left of keypad
+
+
        key_a3                    ka3    K3   upper right of key-
                                              pad
        key_b2                    kb2    K2   center of keypad
                                              in insert mode
        key_end                   kend   @7   end key
        key_enter                 kent   @8   enter/send key
-
-
        key_eol                   kel    kE   clear-to-end-of-line
                                              key
        key_eos                   ked    kS   clear-to-end-of-
        key_f38                   kf38   FS   F38 function key
        key_f39                   kf39   FT   F39 function key
        key_f4                    kf4    k4   F4 function key
+
        key_f40                   kf40   FU   F40 function key
        key_f41                   kf41   FV   F41 function key
        key_f42                   kf42   FW   F42 function key
        key_f5                    kf5    k5   F5 function key
        key_f50                   kf50   Fe   F50 function key
        key_f51                   kf51   Ff   F51 function key
-
        key_f52                   kf52   Fg   F52 function key
        key_f53                   kf53   Fh   F53 function key
        key_f54                   kf54   Fi   F54 function key
        key_sdl                   kDL    *5   shifted delete-line
                                              key
        key_select                kslt   *6   select key
-       key_send                  kEND   *7   shifted end key
 
+       key_send                  kEND   *7   shifted end key
        key_seol                  kEOL   *8   shifted clear-to-
                                              end-of-line key
        key_sexit                 kEXT   *9   shifted exit key
                                              key f6 if not f6
        lab_f7                    lf7    l7   label on function
                                              key f7 if not f7
-
-
        lab_f8                    lf8    l8   label on function
                                              key f8 if not f8
        lab_f9                    lf9    l9   label on function
                                              (8th-bit on)
        micro_column_address      mhpa   ZY   Like column_address
                                              in micro mode
+
        micro_down                mcud1  ZZ   Like cursor_down in
                                              micro mode
        micro_left                mcub1  Za   Like cursor_left in
                                              sor in micro mode
        parm_rindex               rin    SR   scroll back #1 lines
                                              (P)
-
        parm_up_cursor            cuu    UP   up #1 lines (P*)
        parm_up_micro             mcuu   Zi   Like parm_up_cursor
                                              in micro mode
        quick_dial                qdial  QD   dial number #1 with-
                                              out checking
        remove_clock              rmclk  RC   remove clock
+
+
        repeat_char               rep    rp   repeat char #1 #2
                                              times (P*)
        req_for_input             rfi    RF   send next input char
                                              line #1 or (if smgtp
                                              is not given) #2
                                              lines from bottom
-
        set_clock                 sclk   SC   set clock, #1 hrs #2
                                              mins #3 secs
        set_color_pair            scp    sp   Set current color
                                              set
        stop_bit_image            rbim   Zs   Stop printing bit
                                              image graphics
+
+
        stop_char_set_def         rcsd   Zt   End definition of
                                              character set #1
        subscript_characters      subcs  Zu   List of subscript-
                                              move past it
        up_half_line              hu     hu   half a line up
        user0                     u0     u0   User string #0
-
        user1                     u1     u1   User string #1
        user2                     u2     u2   User string #2
        user3                     u3     u3   User string #3
                                                port
        display_pc_char           dispc    S1   Display PC charac-
                                                ter #1
+
+
        end_bit_image_region      endbi    Yy   End a bit-image
                                                region
        enter_pc_charset_mode     smpch    S2   Enter PC character
                                                mode
        exit_pc_charset_mode      rmpch    S3   Exit PC character
                                                display mode
-
        exit_scancode_mode        rmsc     S5   Exit PC scancode
                                                mode
        get_mouse                 getm     Gm   Curses should get
         terminfo entries after SVr4.1; beware!
 
                 <STRONG>Variable</STRONG>         <STRONG>Cap-</STRONG>   <STRONG>TCap</STRONG>     <STRONG>Description</STRONG>
-
                  <STRONG>String</STRONG>          <STRONG>name</STRONG>   <STRONG>Code</STRONG>
         enter_horizontal_hl_mode ehhlm  Xh   Enter horizontal
                                              highlight mode
+
+
         enter_left_hl_mode       elhlm  Xl   Enter left highlight
                                              mode
         enter_low_hl_mode        elohlm Xo   Enter low highlight
        To do this, put a period before the capability name.   For
        example, see the second <STRONG>ind</STRONG> in the example above.
 
+
    <STRONG>Fetching</STRONG> <STRONG>Compiled</STRONG> <STRONG>Descriptions</STRONG>
        If  the environment variable TERMINFO is set, it is inter-
        preted as the pathname of a directory containing the  com-
        beginning  of the next line when it reaches the right mar-
        gin, then it should have the <STRONG>am</STRONG> capability.  If the termi-
        nal  can  clear its screen, leaving the cursor in the home
-       position,  then  this  is  given  by  the   <STRONG>clear</STRONG>   string
-       capability.   If  the  terminal  overstrikes  (rather than
-       clearing a position when a character is struck over)  then
-       it  should  have  the <STRONG>os</STRONG> capability.  If the terminal is a
-       printing terminal, with no soft copy unit, give it both <STRONG>hc</STRONG>
-       and  <STRONG>os</STRONG>.   (<STRONG>os</STRONG> applies to storage scope terminals, such as
-       TEKTRONIX 4010 series, as well as hard copy and APL termi-
-       nals.)   If there is a code to move the cursor to the left
-       edge of the current row, give this as <STRONG>cr</STRONG>.  (Normally  this
-       will  be  carriage return, control M.)  If there is a code
-       to produce an audible signal (bell, beep, etc)  give  this
-       as <STRONG>bel</STRONG>.
-
-       If  there is a code to move the cursor one position to the
-       left (such as backspace) that capability should  be  given
-       as  <STRONG>cub1</STRONG>.   Similarly, codes to move to the right, up, and
+       position, then this is given by the <STRONG>clear</STRONG> string  capabil-
+       ity.   If the terminal overstrikes (rather than clearing a
+       position when a character is struck over) then  it  should
+       have  the  <STRONG>os</STRONG>  capability.   If the terminal is a printing
+       terminal, with no soft copy unit, give it both <STRONG>hc</STRONG> and  <STRONG>os</STRONG>.
+       (<STRONG>os</STRONG>  applies to storage scope terminals, such as TEKTRONIX
+       4010 series, as well as hard copy and APL terminals.)   If
+       there is a code to move the cursor to the left edge of the
+       current row, give this as <STRONG>cr</STRONG>.  (Normally this will be car-
+       riage  return,  control M.)  If there is a code to produce
+       an audible signal (bell, beep, etc) give this as <STRONG>bel</STRONG>.
+
+       If there is a code to move the cursor one position to  the
+       left  (such  as backspace) that capability should be given
+       as <STRONG>cub1</STRONG>.  Similarly, codes to move to the right,  up,  and
        down should be given as <STRONG>cuf1</STRONG>, <STRONG>cuu1</STRONG>, and <STRONG>cud1</STRONG>.  These local
-       cursor  motions  should not alter the text they pass over,
-       for example, you would not normally use  `<STRONG>cuf1</STRONG>= '  because
+       cursor motions should not alter the text they  pass  over,
+       for  example,  you would not normally use `<STRONG>cuf1</STRONG>= ' because
        the space would erase the character moved over.
 
-       A  very  important  point  here  is  that the local cursor
-       motions encoded in <EM>terminfo</EM> are undefined at the left  and
-       top  edges  of  a  CRT  terminal.   Programs  should never
-       attempt to backspace around the left edge,  unless  <STRONG>bw</STRONG>  is
+       A very important point  here  is  that  the  local  cursor
+       motions  encoded in <EM>terminfo</EM> are undefined at the left and
+       top edges  of  a  CRT  terminal.   Programs  should  never
+       attempt  to  backspace  around the left edge, unless <STRONG>bw</STRONG> is
        given, and never attempt to go up locally off the top.  In
-       order to scroll text up, a program will go to  the  bottom
+       order  to  scroll text up, a program will go to the bottom
        left corner of the screen and send the <STRONG>ind</STRONG> (index) string.
 
        To scroll text down, a program goes to the top left corner
-       of  the  screen  and  sends the <STRONG>ri</STRONG> (reverse index) string.
-       The strings <STRONG>ind</STRONG> and <STRONG>ri</STRONG> are undefined  when  not  on  their
+       of the screen and sends the  <STRONG>ri</STRONG>  (reverse  index)  string.
+       The  strings  <STRONG>ind</STRONG>  and  <STRONG>ri</STRONG> are undefined when not on their
        respective corners of the screen.
 
        Parameterized versions of the scrolling sequences are <STRONG>indn</STRONG>
        and <STRONG>rin</STRONG> which have the same semantics as <STRONG>ind</STRONG> and <STRONG>ri</STRONG> except
-       that  they take one parameter, and scroll that many lines.
-       They are also undefined except at the appropriate edge  of
+       that they take one parameter, and scroll that many  lines.
+       They  are also undefined except at the appropriate edge of
        the screen.
 
-       The  <STRONG>am</STRONG>  capability tells whether the cursor sticks at the
-       right edge of the screen when text  is  output,  but  this
+       The <STRONG>am</STRONG> capability tells whether the cursor sticks  at  the
+       right  edge  of  the  screen when text is output, but this
        does not necessarily apply to a <STRONG>cuf1</STRONG> from the last column.
-       The only local motion which is defined from the left  edge
-       is  if  <STRONG>bw</STRONG>  is  given, then a <STRONG>cub1</STRONG> from the left edge will
-       move to the right edge of the previous row.  If <STRONG>bw</STRONG> is  not
-       given,  the effect is undefined.  This is useful for draw-
-       ing a box around the edge of the screen, for example.   If
-       the  terminal has switch selectable automatic margins, the
-       <EM>terminfo</EM> file usually assumes that this is on;  i.e.,  <STRONG>am</STRONG>.
-       If  the  terminal  has  a command which moves to the first
-       column of the next line, that command can be given as  <STRONG>nel</STRONG>
-       (newline).   It  does not matter if the command clears the
-       remainder of the current line, so if the terminal  has  no
-       <STRONG>cr</STRONG>  and <STRONG>lf</STRONG> it may still be possible to craft a working <STRONG>nel</STRONG>
+       The  only local motion which is defined from the left edge
+       is if <STRONG>bw</STRONG> is given, then a <STRONG>cub1</STRONG> from  the  left  edge  will
+       move  to the right edge of the previous row.  If <STRONG>bw</STRONG> is not
+       given, the effect is undefined.  This is useful for  draw-
+       ing  a box around the edge of the screen, for example.  If
+       the terminal has switch selectable automatic margins,  the
+       <EM>terminfo</EM>  file  usually assumes that this is on; i.e., <STRONG>am</STRONG>.
+       If the terminal has a command which  moves  to  the  first
+       column  of the next line, that command can be given as <STRONG>nel</STRONG>
+       (newline).  It does not matter if the command  clears  the
+       remainder  of  the current line, so if the terminal has no
+       <STRONG>cr</STRONG> and <STRONG>lf</STRONG> it may still be possible to craft a working  <STRONG>nel</STRONG>
        out of one or both of them.
 
        These  capabilities  suffice  to  describe  hard-copy  and
-       "glass-tty"  terminals.   Thus  the  model  33 teletype is
+       "glass-tty" terminals.  Thus  the  model  33  teletype  is
        described as
 
      33|tty33|tty|model 33 teletype,
 
 
    <STRONG>Parameterized</STRONG> <STRONG>Strings</STRONG>
-       Cursor addressing and other strings  requiring  parameters
-       in  the  terminal  are described by a parameterized string
-       capability, with <STRONG><A HREF="printf.3S.html">printf(3S)</A></STRONG> like escapes <STRONG>%x</STRONG>  in  it.   For
-       example,  to  address  the  cursor,  the <STRONG>cup</STRONG> capability is
+       Cursor  addressing  and other strings requiring parameters
+       in the terminal are described by  a  parameterized  string
+       capability,  with  <STRONG><A HREF="printf.3S.html">printf(3S)</A></STRONG>  like escapes <STRONG>%x</STRONG> in it.  For
+       example, to address the  cursor,  the  <STRONG>cup</STRONG>  capability  is
        given, using two parameters: the row and column to address
        to.  (Rows and columns are numbered from zero and refer to
        the physical screen visible to the user, not to any unseen
-       memory.)   If  the  terminal  has  memory  relative cursor
+       memory.)  If  the  terminal  has  memory  relative  cursor
        addressing, that can be indicated by <STRONG>mrcup</STRONG>.
 
-       The parameter mechanism uses a stack and special  <STRONG>%</STRONG>  codes
-       to  manipulate  it.  Typically a sequence will push one of
-       the parameters onto the stack and then print  it  in  some
-       format.  Often more complex operations are necessary.
+       The  parameter  mechanism uses a stack and special <STRONG>%</STRONG> codes
+       to manipulate it.  Typically a sequence will push  one  of
+       the  parameters  onto  the stack and then print it in some
+       format.  Print (e.g., "%d")  is  a  special  case.   Other
+       operations,  including  "%t"  pop  their  operand from the
+       stack.  It is noted that more complex operations are often
+       necessary, e.g., in the <STRONG>sgr</STRONG> string.
 
        The <STRONG>%</STRONG> encodings have the following meanings:
 
-            %%        outputs `%'
-            %<EM>[[</EM>:<EM>]flags][width[.precision]][</EM>doxXs<EM>]</EM>
-                      as in <STRONG>printf</STRONG>, flags are [-+#] and space
-            %c        print pop() like %c in printf()
-            %s        print pop() like %s in printf()
-
-            %p[1-9]   push <EM>i</EM>'th parm
-            %P[a-z]   set dynamic variable [a-z] to pop()
-            %g[a-z]   get dynamic variable [a-z] and push it
-            %P[A-Z]   set static variable [a-z] to pop()
-            %g[A-Z]   get static variable [a-z] and push it
-            %'<EM>c</EM>'      char constant <EM>c</EM>
-            %{<EM>nn</EM>}     integer constant <EM>nn</EM>
-            %l        push strlen(pop)
-
-            %+ %- %* %/ %m
-                      arithmetic (%m is mod): push(pop() op pop())
-            %&amp; %| %^  bit operations: push(pop() op pop())
-            %= %&gt; %&lt;  logical operations: push(pop() op pop())
-            %A, %O    logical and &amp; or operations (for conditionals)
-            %! %~     unary operations push(op pop())
-            %i        add 1 to first two parameters (for ANSI terminals)
-
-            %? expr %t thenpart %e elsepart %;
-                      if-then-else, %e elsepart is optional.
-                      else-if's are possible a la Algol 68:
-                      %? c1 %t b1 %e c2 %t b2 %e c3 %t b3 %e c4 %t b4 %e %;
-                      ci are conditions, bi are bodies.
+
+       %%   outputs `%'
+
+       %<EM>[[</EM>:<EM>]flags][width[.precision]][</EM>doxXs<EM>]</EM>
+            as in <STRONG>printf</STRONG>, flags are [-+#] and space
+
+       %c   print pop() like %c in <STRONG>printf</STRONG>
+
+       %s   print pop() like %s in <STRONG>printf</STRONG>
+
+       %p[1-9]
+            push <EM>i</EM>'th parameter
+
+       %P[a-z]
+            set dynamic variable [a-z] to pop()
+
+       %g[a-z]
+            get dynamic variable [a-z] and push it
+
+       %P[A-Z]
+            set static variable [a-z] to pop()
+
+       %g[A-Z]
+            get static variable [a-z] and push it
+
+            The  terms  "static"  and  "dynamic"  are misleading.
+            Historically, these are simply two different sets  of
+            variables,  whose  values are not reset between calls
+            to <STRONG>tparm</STRONG>.  However, that fact is  not  documented  in
+            other  implementations.  Relying on it will adversely
+            impact portability to other implementations.
+
+       %'<EM>c</EM>' char constant <EM>c</EM>
+
+       %{<EM>nn</EM>}
+            integer constant <EM>nn</EM>
+
+       %l   push strlen(pop)
+
+       %+ %- %* %/ %m
+            arithmetic (%m is mod): push(pop() op pop())
+
+       %&amp; %| %^
+            bit operations: push(pop() op pop())
+
+       %= %&gt; %&lt;
+            logical operations: push(pop() op pop())
+
+       %A, %O
+            logical and &amp; or operations (for conditionals)
+
+       %! %~
+            unary operations push(op pop())
+
+       %i   add 1 to first two parameters (for ANSI terminals)
+
+       %? <EM>expr</EM> %t <EM>thenpart</EM> %e <EM>elsepart</EM> %;
+            if-then-else, %e <EM>elsepart</EM> is optional.  else-if's are
+            possible a la Algol 68:
+            %? c1 %t b1 %e c2 %t b2 %e c3 %t b3 %e c4 %t b4 %e %;
+            ci are conditions, bi are bodies.
 
        Binary operations are in postfix form with the operands in
-       the usual order.  That  is,  to  get  x-5  one  would  use
-       "%gx%{5}%-".   %P  and  %g variables are persistent across
+       the  usual  order.   That  is,  to  get  x-5 one would use
+       "%gx%{5}%-".  %P and %g variables  are  persistent  across
        escape-string evaluations.
 
        Consider the HP2645, which, to get to row 3 and column 12,
-       needs  to  be  sent  \E&amp;a12c03Y padded for 6 milliseconds.
-       Note that the order of the rows and  columns  is  inverted
-       here,  and that the row and column are printed as two dig-
+       needs to be sent \E&amp;a12c03Y  padded  for  6  milliseconds.
+       Note  that  the  order of the rows and columns is inverted
+       here, and that the row and column are printed as two  dig-
        its.  Thus its <STRONG>cup</STRONG> capability is "cup=6\E&amp;%p2%2dc%p1%2dY".
 
        The Microterm ACT-IV needs the current row and column sent
-       preceded by a <STRONG>^T</STRONG>, with the row and column  simply  encoded
-       in  binary,  "cup=^T%p1%c%p2%c".  Terminals which use "%c"
-       need to be able to backspace the  cursor  (<STRONG>cub1</STRONG>),  and  to
+       preceded  by  a <STRONG>^T</STRONG>, with the row and column simply encoded
+       in binary, "cup=^T%p1%c%p2%c".  Terminals which  use  "%c"
+       need  to  be  able  to backspace the cursor (<STRONG>cub1</STRONG>), and to
        move the cursor up one line on the screen (<STRONG>cuu1</STRONG>).  This is
-       necessary because it is not always safe to transmit <STRONG>\n</STRONG>  <STRONG>^D</STRONG>
-       and  <STRONG>\r</STRONG>,  as  the system may change or discard them.  (The
-       library routines dealing with terminfo set  tty  modes  so
+       necessary  because it is not always safe to transmit <STRONG>\n</STRONG> <STRONG>^D</STRONG>
+       and <STRONG>\r</STRONG>, as the system may change or  discard  them.   (The
+       library  routines  dealing  with terminfo set tty modes so
        that tabs are never expanded, so \t is safe to send.  This
        turns out to be essential for the Ann Arbor 4080.)
 
        A final example is the LSI ADM-3a, which uses row and col-
        umn  offset  by  a  blank  character,  thus  "cup=\E=%p1%'
-       '%+%c%p2%' '%+%c".  After sending `\E=', this  pushes  the
-       first  parameter, pushes the ASCII value for a space (32),
-       adds them (pushing the sum on the stack in  place  of  the
-       two  previous  values) and outputs that value as a charac-
-       ter.  Then the same is  done  for  the  second  parameter.
+       '%+%c%p2%'  '%+%c".   After sending `\E=', this pushes the
+       first parameter, pushes the ASCII value for a space  (32),
+       adds  them  (pushing  the sum on the stack in place of the
+       two previous values) and outputs that value as  a  charac-
+       ter.   Then  the  same  is  done for the second parameter.
        More complex arithmetic is possible using the stack.
 
 
    <STRONG>Cursor</STRONG> <STRONG>Motions</STRONG>
        If the terminal has a fast way to home the cursor (to very
-       upper left corner of screen) then this  can  be  given  as
-       <STRONG>home</STRONG>;  similarly  a fast way of getting to the lower left-
-       hand corner can be given as <STRONG>ll</STRONG>; this may involve going  up
-       with  <STRONG>cuu1</STRONG>  from  the  home position, but a program should
-       never do this itself (unless <STRONG>ll</STRONG> does) because it can  make
-       no  assumption about the effect of moving up from the home
-       position.  Note that the home  position  is  the  same  as
+       upper  left  corner  of  screen) then this can be given as
+       <STRONG>home</STRONG>; similarly a fast way of getting to the  lower  left-
+       hand  corner can be given as <STRONG>ll</STRONG>; this may involve going up
+       with <STRONG>cuu1</STRONG> from the home position,  but  a  program  should
+       never  do this itself (unless <STRONG>ll</STRONG> does) because it can make
+       no assumption about the effect of moving up from the  home
+       position.   Note  that  the  home  position is the same as
        addressing to (0,0): to the top left corner of the screen,
-       not of memory.  (Thus, the \EH sequence  on  HP  terminals
+       not  of  memory.   (Thus, the \EH sequence on HP terminals
        cannot be used for <STRONG>home</STRONG>.)
 
        If the terminal has row or column absolute cursor address-
-       ing, these can be given as single  parameter  capabilities
+       ing,  these  can be given as single parameter capabilities
        <STRONG>hpa</STRONG> (horizontal position absolute) and <STRONG>vpa</STRONG> (vertical posi-
        tion absolute).  Sometimes these are shorter than the more
-       general  two  parameter  sequence (as with the hp2645) and
+       general two parameter sequence (as with  the  hp2645)  and
        can be used in preference to <STRONG>cup</STRONG>.  If there are parameter-
-       ized  local  motions  (e.g.,  move  <EM>n</EM> spaces to the right)
+       ized local motions (e.g., move  <EM>n</EM>  spaces  to  the  right)
        these can be given as <STRONG>cud</STRONG>, <STRONG>cub</STRONG>, <STRONG>cuf</STRONG>, and <STRONG>cuu</STRONG> with a single
-       parameter  indicating  how many spaces to move.  These are
-       primarily useful if the terminal does not have  <STRONG>cup</STRONG>,  such
+       parameter indicating how many spaces to move.   These  are
+       primarily  useful  if the terminal does not have <STRONG>cup</STRONG>, such
        as the TEKTRONIX 4025.
 
        If the terminal needs to be in a special mode when running
        a program that uses these capabilities, the codes to enter
-       and  exit this mode can be given as <STRONG>smcup</STRONG> and <STRONG>rmcup</STRONG>.  This
-       arises, for example, from terminals like the Concept  with
-       more  than  one  page of memory.  If the terminal has only
-       memory relative cursor addressing and not screen  relative
+       and exit this mode can be given as <STRONG>smcup</STRONG> and <STRONG>rmcup</STRONG>.   This
+       arises,  for example, from terminals like the Concept with
+       more than one page of memory.  If the  terminal  has  only
+       memory  relative cursor addressing and not screen relative
        cursor addressing, a one screen-sized window must be fixed
-       into the terminal for cursor addressing to work  properly.
+       into  the terminal for cursor addressing to work properly.
        This is also used for the TEKTRONIX 4025, where <STRONG>smcup</STRONG> sets
-       the command character to be the one used by terminfo.   If
-       the  <STRONG>smcup</STRONG>  sequence  will not restore the screen after an
+       the  command character to be the one used by terminfo.  If
+       the <STRONG>smcup</STRONG> sequence will not restore the  screen  after  an
        <STRONG>rmcup</STRONG> sequence is output (to the state prior to outputting
        <STRONG>rmcup</STRONG>), specify <STRONG>nrrmc</STRONG>.
 
 
    <STRONG>Area</STRONG> <STRONG>Clears</STRONG>
        If the terminal can clear from the current position to the
-       end of the line, leaving the  cursor  where  it  is,  this
+       end  of  the  line,  leaving  the cursor where it is, this
        should be given as <STRONG>el</STRONG>.  If the terminal can clear from the
-       beginning of the line to the current  position  inclusive,
-       leaving  the  cursor  where it is, this should be given as
-       <STRONG>el1</STRONG>.  If the terminal can clear from the current  position
-       to  the  end  of the display, then this should be given as
-       <STRONG>ed</STRONG>.  <STRONG>Ed</STRONG> is only defined from the first column of  a  line.
-       (Thus,  it can be simulated by a request to delete a large
+       beginning  of  the line to the current position inclusive,
+       leaving the cursor where it is, this should  be  given  as
+       <STRONG>el1</STRONG>.   If the terminal can clear from the current position
+       to the end of the display, then this should  be  given  as
+       <STRONG>ed</STRONG>.   <STRONG>Ed</STRONG>  is only defined from the first column of a line.
+       (Thus, it can be simulated by a request to delete a  large
        number of lines, if a true <STRONG>ed</STRONG> is not available.)
 
 
    <STRONG>Insert/delete</STRONG> <STRONG>line</STRONG> <STRONG>and</STRONG> <STRONG>vertical</STRONG> <STRONG>motions</STRONG>
-       If the terminal can open a new blank line before the  line
-       where  the cursor is, this should be given as <STRONG>il1</STRONG>; this is
-       done only from the first position of a line.   The  cursor
+       If  the terminal can open a new blank line before the line
+       where the cursor is, this should be given as <STRONG>il1</STRONG>; this  is
+       done  only  from the first position of a line.  The cursor
        must then appear on the newly blank line.  If the terminal
-       can delete the line which the  cursor  is  on,  then  this
-       should  be  given as <STRONG>dl1</STRONG>; this is done only from the first
-       position on the line to be deleted.  Versions of  <STRONG>il1</STRONG>  and
-       <STRONG>dl1</STRONG>  which  take  a  single parameter and insert or delete
+       can  delete  the  line  which  the cursor is on, then this
+       should be given as <STRONG>dl1</STRONG>; this is done only from  the  first
+       position  on  the line to be deleted.  Versions of <STRONG>il1</STRONG> and
+       <STRONG>dl1</STRONG> which take a single parameter  and  insert  or  delete
        that many lines can be given as <STRONG>il</STRONG> and <STRONG>dl</STRONG>.
 
-       If the terminal has a settable scrolling region (like  the
-       vt100)  the  command to set this can be described with the
-       <STRONG>csr</STRONG> capability, which takes two parameters:  the  top  and
+       If  the terminal has a settable scrolling region (like the
+       vt100) the command to set this can be described  with  the
+       <STRONG>csr</STRONG>  capability,  which  takes two parameters: the top and
        bottom lines of the scrolling region.  The cursor position
        is, alas, undefined after using this command.
 
-       It is possible to get the effect of insert or delete  line
+       It  is possible to get the effect of insert or delete line
        using <STRONG>csr</STRONG> on a properly chosen region; the <STRONG>sc</STRONG> and <STRONG>rc</STRONG> (save
-       and restore cursor) commands may be  useful  for  ensuring
-       that  your  synthesized insert/delete string does not move
-       the cursor.  (Note that the <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> library does  this
-       synthesis   automatically,   so   you   need  not  compose
+       and  restore  cursor)  commands may be useful for ensuring
+       that your synthesized insert/delete string does  not  move
+       the  cursor.  (Note that the <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> library does this
+       synthesis  automatically,  so   you   need   not   compose
        insert/delete strings for an entry with <STRONG>csr</STRONG>).
 
        Yet another way to construct insert and delete might be to
-       use  a  combination  of index with the memory-lock feature
-       found on some terminals (like the HP-700/90 series,  which
+       use a combination of index with  the  memory-lock  feature
+       found  on some terminals (like the HP-700/90 series, which
        however also has insert/delete).
 
-       Inserting  lines  at  the  top or bottom of the screen can
-       also be done using <STRONG>ri</STRONG> or <STRONG>ind</STRONG> on many terminals  without  a
-       true  insert/delete line, and is often faster even on ter-
+       Inserting lines at the top or bottom  of  the  screen  can
+       also  be  done using <STRONG>ri</STRONG> or <STRONG>ind</STRONG> on many terminals without a
+       true insert/delete line, and is often faster even on  ter-
        minals with those features.
 
-       The boolean <STRONG>non_dest_scroll_region</STRONG> should be set  if  each
-       scrolling  window  is effectively a view port on a screen-
-       sized canvas.  To  test  for  this  capability,  create  a
-       scrolling  region in the middle of the screen, write some-
-       thing to the bottom line, move the cursor to  the  top  of
+       The  boolean  <STRONG>non_dest_scroll_region</STRONG> should be set if each
+       scrolling window is effectively a view port on  a  screen-
+       sized  canvas.   To  test  for  this  capability, create a
+       scrolling region in the middle of the screen, write  some-
+       thing  to  the  bottom line, move the cursor to the top of
        the region, and do <STRONG>ri</STRONG> followed by <STRONG>dl1</STRONG> or <STRONG>ind</STRONG>.  If the data
-       scrolled off the bottom  of  the  region  by  the  <STRONG>ri</STRONG>  re-
-       appears,  then scrolling is non-destructive.  System V and
-       XSI Curses expect that <STRONG>ind</STRONG>, <STRONG>ri</STRONG>, <STRONG>indn</STRONG>, and <STRONG>rin</STRONG>  will  simu-
-       late  destructive  scrolling; their documentation cautions
-       you not to define <STRONG>csr</STRONG> unless this is  true.   This  <STRONG>curses</STRONG>
+       scrolled  off  the  bottom  of  the  region  by the <STRONG>ri</STRONG> re-
+       appears, then scrolling is non-destructive.  System V  and
+       XSI  Curses  expect that <STRONG>ind</STRONG>, <STRONG>ri</STRONG>, <STRONG>indn</STRONG>, and <STRONG>rin</STRONG> will simu-
+       late destructive scrolling; their  documentation  cautions
+       you  not  to  define <STRONG>csr</STRONG> unless this is true.  This <STRONG>curses</STRONG>
        implementation is more liberal and will do explicit erases
        after scrolling if <STRONG>ndstr</STRONG> is defined.
 
        If the terminal has the ability to define a window as part
-       of  memory,  which all commands affect, it should be given
+       of memory, which all commands affect, it should  be  given
        as the parameterized string <STRONG>wind</STRONG>.  The four parameters are
-       the  starting  and ending lines in memory and the starting
+       the starting and ending lines in memory and  the  starting
        and ending columns in memory, in that order.
 
-       If the terminal can retain display memory above, then  the
-       <STRONG>da</STRONG>  capability  should  be given; if display memory can be
-       retained below, then <STRONG>db</STRONG> should be given.   These  indicate
-       that  deleting  a  line  or  scrolling may bring non-blank
-       lines up from below or that scrolling  back  with  <STRONG>ri</STRONG>  may
+       If  the terminal can retain display memory above, then the
+       <STRONG>da</STRONG> capability should be given; if display  memory  can  be
+       retained  below,  then <STRONG>db</STRONG> should be given.  These indicate
+       that deleting a line  or  scrolling  may  bring  non-blank
+       lines  up  from  below  or that scrolling back with <STRONG>ri</STRONG> may
        bring down non-blank lines.
 
 
    <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG>
-       There  are  two  basic kinds of intelligent terminals with
-       respect to insert/delete character which can be  described
-       using  <EM>terminfo.</EM>   The most common insert/delete character
-       operations affect only the characters on the current  line
-       and  shift  characters  off  the  end of the line rigidly.
-       Other terminals, such as the Concept 100  and  the  Perkin
-       Elmer  Owl,  make  a distinction between typed and untyped
-       blanks on the screen, shifting upon an  insert  or  delete
-       only  to  an  untyped  blank on the screen which is either
-       eliminated, or expanded to two untyped  blanks.   You  can
-       determine  the  kind  of terminal you have by clearing the
-       screen and then typing text separated by  cursor  motions.
-       Type  "abc    def" using local cursor motions (not spaces)
+       There are two basic kinds of  intelligent  terminals  with
+       respect  to insert/delete character which can be described
+       using <EM>terminfo.</EM>  The most common  insert/delete  character
+       operations  affect only the characters on the current line
+       and shift characters off the  end  of  the  line  rigidly.
+       Other  terminals,  such  as the Concept 100 and the Perkin
+       Elmer Owl, make a distinction between  typed  and  untyped
+       blanks  on  the  screen, shifting upon an insert or delete
+       only to an untyped blank on the  screen  which  is  either
+       eliminated,  or  expanded  to two untyped blanks.  You can
+       determine the kind of terminal you have  by  clearing  the
+       screen  and  then typing text separated by cursor motions.
+       Type "abc    def" using local cursor motions (not  spaces)
        between the "abc" and the "def".  Then position the cursor
-       before  the "abc" and put the terminal in insert mode.  If
-       typing characters causes the rest of  the  line  to  shift
+       before the "abc" and put the terminal in insert mode.   If
+       typing  characters  causes  the  rest of the line to shift
        rigidly and characters to fall off the end, then your ter-
-       minal does not  distinguish  between  blanks  and  untyped
-       positions.   If  the  "abc" shifts over to the "def" which
-       then move together around the end of the current line  and
-       onto  the  next as you insert, you have the second type of
-       terminal, and should give the capability <STRONG>in</STRONG>, which  stands
+       minal  does  not  distinguish  between  blanks and untyped
+       positions.  If the "abc" shifts over to  the  "def"  which
+       then  move together around the end of the current line and
+       onto the next as you insert, you have the second  type  of
+       terminal,  and should give the capability <STRONG>in</STRONG>, which stands
        for "insert null".  While these are two logically separate
-       attributes (one line versus multi-line  insert  mode,  and
-       special  treatment of untyped spaces) we have seen no ter-
+       attributes  (one  line  versus multi-line insert mode, and
+       special treatment of untyped spaces) we have seen no  ter-
        minals whose insert mode cannot be described with the sin-
        gle attribute.
 
-       Terminfo  can describe both terminals which have an insert
+       Terminfo can describe both terminals which have an  insert
        mode, and terminals which send a simple sequence to open a
-       blank  position  on  the  current  line.  Give as <STRONG>smir</STRONG> the
-       sequence to get  into  insert  mode.   Give  as  <STRONG>rmir</STRONG>  the
-       sequence  to  leave  insert  mode.   Now  give as <STRONG>ich1</STRONG> any
+       blank position on the current  line.   Give  as  <STRONG>smir</STRONG>  the
+       sequence  to  get  into  insert  mode.   Give  as <STRONG>rmir</STRONG> the
+       sequence to leave insert  mode.   Now  give  as  <STRONG>ich1</STRONG>  any
        sequence needed to be sent just before sending the charac-
-       ter  to  be  inserted.   Most terminals with a true insert
-       mode will not give <STRONG>ich1</STRONG>; terminals which send  a  sequence
+       ter to be inserted.  Most terminals  with  a  true  insert
+       mode  will  not give <STRONG>ich1</STRONG>; terminals which send a sequence
        to open a screen position should give it here.
 
-       If  your terminal has both, insert mode is usually prefer-
-       able to <STRONG>ich1</STRONG>.   Technically,  you  should  not  give  both
-       unless  the  terminal actually requires both to be used in
-       combination.  Accordingly,  some  non-curses  applications
-       get  confused  if both are present; the symptom is doubled
+       If your terminal has both, insert mode is usually  prefer-
+       able  to  <STRONG>ich1</STRONG>.   Technically,  you  should  not give both
+       unless the terminal actually requires both to be  used  in
+       combination.   Accordingly,  some  non-curses applications
+       get confused if both are present; the symptom  is  doubled
        characters in an update using insert.  This requirement is
        now rare; most <STRONG>ich</STRONG> sequences do not require previous smir,
        and most smir insert modes do not require <STRONG>ich1</STRONG> before each
-       character.   Therefore,  the  new  <STRONG>curses</STRONG> actually assumes
-       this is the case and uses either <STRONG>rmir</STRONG>/<STRONG>smir</STRONG> or <STRONG>ich</STRONG>/<STRONG>ich1</STRONG>  as
+       character.  Therefore, the  new  <STRONG>curses</STRONG>  actually  assumes
+       this  is the case and uses either <STRONG>rmir</STRONG>/<STRONG>smir</STRONG> or <STRONG>ich</STRONG>/<STRONG>ich1</STRONG> as
        appropriate (but not both).  If you have to write an entry
-       to be used under new curses for a terminal old  enough  to
+       to  be  used under new curses for a terminal old enough to
        need both, include the <STRONG>rmir</STRONG>/<STRONG>smir</STRONG> sequences in <STRONG>ich1</STRONG>.
 
        If post insert padding is needed, give this as a number of
-       milliseconds in <STRONG>ip</STRONG> (a string option).  Any other  sequence
-       which  may  need  to  be  sent after an insert of a single
+       milliseconds  in <STRONG>ip</STRONG> (a string option).  Any other sequence
+       which may need to be sent after  an  insert  of  a  single
        character may also be given in <STRONG>ip</STRONG>.  If your terminal needs
        both to be placed into an `insert mode' and a special code
-       to precede each inserted character,  then  both  <STRONG>smir</STRONG>/<STRONG>rmir</STRONG>
-       and  <STRONG>ich1</STRONG>  can  be  given, and both will be used.  The <STRONG>ich</STRONG>
+       to  precede  each  inserted character, then both <STRONG>smir</STRONG>/<STRONG>rmir</STRONG>
+       and <STRONG>ich1</STRONG> can be given, and both will  be  used.   The  <STRONG>ich</STRONG>
        capability, with one parameter, <EM>n</EM>, will repeat the effects
        of <STRONG>ich1</STRONG> <EM>n</EM> times.
 
        If padding is necessary between characters typed while not
-       in insert mode, give this  as  a  number  of  milliseconds
+       in  insert  mode,  give  this  as a number of milliseconds
        padding in <STRONG>rmp</STRONG>.
 
-       It  is  occasionally  necessary  to  move  around while in
-       insert mode to delete characters on the same  line  (e.g.,
-       if  there is a tab after the insertion position).  If your
-       terminal allows motion while in insert mode you  can  give
-       the  capability  <STRONG>mir</STRONG>  to  speed up inserting in this case.
-       Omitting <STRONG>mir</STRONG>  will  affect  only  speed.   Some  terminals
+       It is occasionally  necessary  to  move  around  while  in
+       insert  mode  to delete characters on the same line (e.g.,
+       if there is a tab after the insertion position).  If  your
+       terminal  allows  motion while in insert mode you can give
+       the capability <STRONG>mir</STRONG> to speed up  inserting  in  this  case.
+       Omitting  <STRONG>mir</STRONG>  will  affect  only  speed.   Some terminals
        (notably Datamedia's) must not have <STRONG>mir</STRONG> because of the way
        their insert mode works.
 
-       Finally, you can specify <STRONG>dch1</STRONG> to delete a  single  charac-
-       ter,  <STRONG>dch</STRONG>  with  one parameter, <EM>n</EM>, to delete <EM>n</EM> <EM>characters,</EM>
-       and delete mode by giving <STRONG>smdc</STRONG> and <STRONG>rmdc</STRONG> to enter and  exit
-       delete  mode  (any mode the terminal needs to be placed in
+       Finally,  you  can specify <STRONG>dch1</STRONG> to delete a single charac-
+       ter, <STRONG>dch</STRONG> with one parameter, <EM>n</EM>, to  delete  <EM>n</EM>  <EM>characters,</EM>
+       and  delete mode by giving <STRONG>smdc</STRONG> and <STRONG>rmdc</STRONG> to enter and exit
+       delete mode (any mode the terminal needs to be  placed  in
        for <STRONG>dch1</STRONG> to work).
 
-       A command to erase <EM>n</EM> characters (equivalent to  outputting
-       <EM>n</EM>  blanks  without  moving the cursor) can be given as <STRONG>ech</STRONG>
+       A  command to erase <EM>n</EM> characters (equivalent to outputting
+       <EM>n</EM> blanks without moving the cursor) can be  given  as  <STRONG>ech</STRONG>
        with one parameter.
 
 
    <STRONG>Highlighting,</STRONG> <STRONG>Underlining,</STRONG> <STRONG>and</STRONG> <STRONG>Visible</STRONG> <STRONG>Bells</STRONG>
        If  your  terminal  has  one  or  more  kinds  of  display
-       attributes,  these  can be represented in a number of dif-
+       attributes, these can be represented in a number  of  dif-
        ferent ways.  You should choose one display form as <EM>stand-</EM>
        <EM>out</EM> <EM>mode</EM>, representing a good, high contrast, easy-on-the-
-       eyes, format for highlighting  error  messages  and  other
-       attention  getters.   (If you have a choice, reverse video
-       plus half-bright is good, or reverse  video  alone.)   The
-       sequences  to  enter  and  exit standout mode are given as
-       <STRONG>smso</STRONG> and <STRONG>rmso</STRONG>, respectively.  If the code to  change  into
-       or  out  of  standout  mode  leaves  one or even two blank
-       spaces on the screen, as the TVI 912 and Teleray 1061  do,
+       eyes,  format  for  highlighting  error messages and other
+       attention getters.  (If you have a choice,  reverse  video
+       plus  half-bright  is  good, or reverse video alone.)  The
+       sequences to enter and exit standout  mode  are  given  as
+       <STRONG>smso</STRONG>  and  <STRONG>rmso</STRONG>, respectively.  If the code to change into
+       or out of standout mode  leaves  one  or  even  two  blank
+       spaces  on the screen, as the TVI 912 and Teleray 1061 do,
        then <STRONG>xmc</STRONG> should be given to tell how many spaces are left.
 
-       Codes to begin underlining  and  end  underlining  can  be
-       given  as <STRONG>smul</STRONG> and <STRONG>rmul</STRONG> respectively.  If the terminal has
-       a code to underline the current  character  and  move  the
+       Codes  to  begin  underlining  and  end underlining can be
+       given as <STRONG>smul</STRONG> and <STRONG>rmul</STRONG> respectively.  If the terminal  has
+       a  code  to  underline  the current character and move the
        cursor one space to the right, such as the Microterm Mime,
        this can be given as <STRONG>uc</STRONG>.
 
-       Other capabilities to  enter  various  highlighting  modes
-       include  <STRONG>blink</STRONG>  (blinking) <STRONG>bold</STRONG> (bold or extra bright) <STRONG>dim</STRONG>
-       (dim or half-bright) <STRONG>invis</STRONG> (blanking  or  invisible  text)
-       <STRONG>prot</STRONG>  (protected)  <STRONG>rev</STRONG>  (reverse video) <STRONG>sgr0</STRONG> (turn off <EM>all</EM>
-       attribute modes)  <STRONG>smacs</STRONG>  (enter  alternate  character  set
-       mode)  and  <STRONG>rmacs</STRONG>  (exit  alternate  character  set mode).
-       Turning on any of these modes singly may or may  not  turn
+       Other  capabilities  to  enter  various highlighting modes
+       include <STRONG>blink</STRONG> (blinking) <STRONG>bold</STRONG> (bold or extra  bright)  <STRONG>dim</STRONG>
+       (dim  or  half-bright)  <STRONG>invis</STRONG> (blanking or invisible text)
+       <STRONG>prot</STRONG> (protected) <STRONG>rev</STRONG> (reverse video) <STRONG>sgr0</STRONG>  (turn  off  <EM>all</EM>
+       attribute  modes)  <STRONG>smacs</STRONG>  (enter  alternate  character set
+       mode) and  <STRONG>rmacs</STRONG>  (exit  alternate  character  set  mode).
+       Turning  on  any of these modes singly may or may not turn
        off other modes.
 
-       If  there  is  a sequence to set arbitrary combinations of
-       modes, this should be given as <STRONG>sgr</STRONG> (set attributes),  tak-
-       ing  9 parameters.  Each parameter is either 0 or nonzero,
+       If there is a sequence to set  arbitrary  combinations  of
+       modes,  this should be given as <STRONG>sgr</STRONG> (set attributes), tak-
+       ing 9 parameters.  Each parameter is either 0 or  nonzero,
        as the corresponding attribute is on or off.  The 9 param-
-       eters  are, in order: standout, underline, reverse, blink,
-       dim, bold, blank, protect, alternate character  set.   Not
-       all  modes  need be supported by <STRONG>sgr</STRONG>, only those for which
+       eters are, in order: standout, underline, reverse,  blink,
+       dim,  bold,  blank, protect, alternate character set.  Not
+       all modes need be supported by <STRONG>sgr</STRONG>, only those  for  which
        corresponding separate attribute commands exist.
 
        For example, the DEC vt220 supports most of the modes:
            none              none         \E[0m
            p1                standout     \E[0;1;7m
            p2                underline    \E[0;4m
+
            p3                reverse      \E[0;7m
            p4                blink        \E[0;5m
            p5                dim          not available
            p8                protect      not used
            p9                altcharset   ^O (off) ^N (on)
 
-       We begin each escape sequence by turning off any  existing
-       modes,  since  there  is no quick way to determine whether
+       We  begin each escape sequence by turning off any existing
+       modes, since there is no quick way  to  determine  whether
        they are active.  Standout is set up to be the combination
-       of  reverse  and  bold.   The vt220 terminal has a protect
-       mode, though it is not commonly used  in  sgr  because  it
-       protects  characters  on  the  screen from the host's era-
-       sures.  The altcharset mode also is different in  that  it
-       is  either ^O or ^N, depending on whether it is off or on.
-       If all modes are turned  on,  the  resulting  sequence  is
+       of reverse and bold.  The vt220  terminal  has  a  protect
+       mode,  though  it  is  not commonly used in sgr because it
+       protects characters on the screen  from  the  host's  era-
+       sures.   The  altcharset mode also is different in that it
+       is either ^O or ^N, depending on whether it is off or  on.
+       If  all  modes  are  turned  on, the resulting sequence is
        \E[0;1;4;5;7;8m^N.
 
-       Some  sequences  are common to different modes.  For exam-
-       ple, ;7 is output when either p1 or p3 is true,  that  is,
+       Some sequences are common to different modes.   For  exam-
+       ple,  ;7  is output when either p1 or p3 is true, that is,
        if either standout or reverse modes are turned on.
 
-       Writing  out  the above sequences, along with their depen-
+       Writing out the above sequences, along with  their  depen-
        dencies yields
 
          <STRONG>sequence</STRONG>    <STRONG>when</STRONG> <STRONG>to</STRONG> <STRONG>output</STRONG>     <STRONG>terminfo</STRONG> <STRONG>translation</STRONG>
          ;5         if p4               %?%p4%|%t;5%;
          ;7         if p1 or p3         %?%p1%p3%|%t;7%;
          ;8         if p7               %?%p7%|%t;8%;
-
          m          always              m
          ^N or ^O   if p9 ^N, else ^O   %?%p9%t^N%e^O%;
 
            sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;
                %?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
 
-       Remember that if you specify sgr, you  must  also  specify
+       Remember  that  if  you specify sgr, you must also specify
        sgr0.
 
-       Terminals  with  the ``magic cookie'' glitch (<STRONG>xmc</STRONG>) deposit
-       special  ``cookies''  when   they   receive   mode-setting
-       sequences,  which affect the display algorithm rather than
-       having extra bits for  each  character.   Some  terminals,
-       such  as  the  HP  2621, automatically leave standout mode
-       when they move to a new line or the cursor  is  addressed.
-       Programs  using  standout  mode  should exit standout mode
-       before moving the cursor or sending a newline, unless  the
-       <STRONG>msgr</STRONG>  capability,  asserting  that  it  is safe to move in
+       Terminals with the ``magic cookie'' glitch  (<STRONG>xmc</STRONG>)  deposit
+       special   ``cookies''   when   they  receive  mode-setting
+       sequences, which affect the display algorithm rather  than
+       having  extra  bits  for  each character.  Some terminals,
+       such as the HP 2621,  automatically  leave  standout  mode
+       when  they  move to a new line or the cursor is addressed.
+       Programs using standout mode  should  exit  standout  mode
+       before  moving the cursor or sending a newline, unless the
+       <STRONG>msgr</STRONG> capability, asserting that it  is  safe  to  move  in
        standout mode, is present.
 
-       If the terminal has a way of flashing the screen to  indi-
-       cate  an  error quietly (a bell replacement) then this can
+       If  the terminal has a way of flashing the screen to indi-
+       cate an error quietly (a bell replacement) then  this  can
        be given as <STRONG>flash</STRONG>; it must not move the cursor.
 
-       If the cursor needs to be made more  visible  than  normal
+       If  the  cursor  needs to be made more visible than normal
        when it is not on the bottom line (to make, for example, a
-       non-blinking underline into an easier  to  find  block  or
+       non-blinking  underline  into  an  easier to find block or
        blinking underline) give this sequence as <STRONG>cvvis</STRONG>.  If there
-       is a way to make the  cursor  completely  invisible,  give
+       is  a  way  to  make the cursor completely invisible, give
        that as <STRONG>civis</STRONG>.  The capability <STRONG>cnorm</STRONG> should be given which
        undoes the effects of both of these modes.
 
        If your terminal correctly generates underlined characters
-       (with  no  special  codes  needed) even though it does not
-       overstrike, then you should give the capability <STRONG>ul</STRONG>.  If  a
-       character  overstriking  another leaves both characters on
+       (with no special codes needed) even  though  it  does  not
+       overstrike,  then you should give the capability <STRONG>ul</STRONG>.  If a
+       character overstriking another leaves both  characters  on
        the screen, specify the capability <STRONG>os</STRONG>.  If overstrikes are
-       erasable  with  a  blank, then this should be indicated by
+       erasable with a blank, then this should  be  indicated  by
        giving <STRONG>eo</STRONG>.
 
 
    <STRONG>Keypad</STRONG> <STRONG>and</STRONG> <STRONG>Function</STRONG> <STRONG>Keys</STRONG>
        If the terminal has a keypad that transmits codes when the
-       keys  are  pressed,  this  information can be given.  Note
+       keys are pressed, this information  can  be  given.   Note
        that it is not possible to handle terminals where the key-
        pad only works in local (this applies, for example, to the
-       unshifted HP 2621 keys).  If the  keypad  can  be  set  to
-       transmit  or  not  transmit,  give these codes as <STRONG>smkx</STRONG> and
+       unshifted  HP  2621  keys).   If  the keypad can be set to
+       transmit or not transmit, give these  codes  as  <STRONG>smkx</STRONG>  and
        <STRONG>rmkx</STRONG>.  Otherwise the keypad is assumed to always transmit.
-       The  codes  sent by the left arrow, right arrow, up arrow,
-       down arrow, and home keys can be given  as  <STRONG>kcub1,</STRONG>  <STRONG>kcuf1,</STRONG>
-       <STRONG>kcuu1,</STRONG>  <STRONG>kcud1,</STRONG>  and  <STRONG>khome</STRONG>  respectively.   If  there  are
-       function keys such as f0, f1, ...,  f10,  the  codes  they
-       send  can  be given as <STRONG>kf0,</STRONG> <STRONG>kf1,</STRONG> <STRONG>...,</STRONG> <STRONG>kf10</STRONG>.  If these keys
-       have labels other than the default  f0  through  f10,  the
-       labels  can  be  given  as <STRONG>lf0,</STRONG> <STRONG>lf1,</STRONG> <STRONG>...,</STRONG> <STRONG>lf10</STRONG>.  The codes
-       transmitted by certain other special keys  can  be  given:
-       <STRONG>kll</STRONG>  (home  down), <STRONG>kbs</STRONG> (backspace), <STRONG>ktbc</STRONG> (clear all tabs),
-       <STRONG>kctab</STRONG> (clear the tab stop in  this  column),  <STRONG>kclr</STRONG>  (clear
-       screen  or  erase  key),  <STRONG>kdch1</STRONG>  (delete  character), <STRONG>kdl1</STRONG>
-       (delete line), <STRONG>krmir</STRONG> (exit insert mode), <STRONG>kel</STRONG> (clear to end
-       of  line),  <STRONG>ked</STRONG>  (clear  to  end of screen), <STRONG>kich1</STRONG> (insert
-       character or enter insert mode), <STRONG>kil1</STRONG> (insert  line),  <STRONG>knp</STRONG>
-       (next  page),  <STRONG>kpp</STRONG>  (previous  page),  <STRONG>kind</STRONG>  (scroll  for-
-       ward/down), <STRONG>kri</STRONG> (scroll backward/up), <STRONG>khts</STRONG> (set a tab stop
-       in  this column).  In addition, if the keypad has a 3 by 3
-       array of keys including the four  arrow  keys,  the  other
-       five  keys  can  be  given as <STRONG>ka1</STRONG>, <STRONG>ka3</STRONG>, <STRONG>kb2</STRONG>, <STRONG>kc1</STRONG>, and <STRONG>kc3</STRONG>.
-       These keys are useful when the effects of a 3 by 3  direc-
-       tional pad are needed.
+       The codes sent by the left arrow, right arrow,  up  arrow,
+       down  arrow,  and  home keys can be given as <STRONG>kcub1,</STRONG> <STRONG>kcuf1,</STRONG>
+       <STRONG>kcuu1,</STRONG> <STRONG>kcud1,</STRONG> and <STRONG>khome</STRONG> respectively.  If there are  func-
+       tion  keys  such  as f0, f1, ..., f10, the codes they send
+       can be given as <STRONG>kf0,</STRONG> <STRONG>kf1,</STRONG> <STRONG>...,</STRONG> <STRONG>kf10</STRONG>.  If these  keys  have
+       labels  other  than the default f0 through f10, the labels
+       can be given as <STRONG>lf0,</STRONG> <STRONG>lf1,</STRONG> <STRONG>...,</STRONG> <STRONG>lf10</STRONG>.  The codes  transmit-
+       ted  by certain other special keys can be given: <STRONG>kll</STRONG> (home
+       down), <STRONG>kbs</STRONG>  (backspace),  <STRONG>ktbc</STRONG>  (clear  all  tabs),  <STRONG>kctab</STRONG>
+       (clear the tab stop in this column), <STRONG>kclr</STRONG> (clear screen or
+       erase key), <STRONG>kdch1</STRONG> (delete character), <STRONG>kdl1</STRONG> (delete  line),
+       <STRONG>krmir</STRONG>  (exit insert mode), <STRONG>kel</STRONG> (clear to end of line), <STRONG>ked</STRONG>
+       (clear to end of screen), <STRONG>kich1</STRONG> (insert character or enter
+       insert  mode),  <STRONG>kil1</STRONG>  (insert  line), <STRONG>knp</STRONG> (next page), <STRONG>kpp</STRONG>
+       (previous page), <STRONG>kind</STRONG> (scroll forward/down),  <STRONG>kri</STRONG>  (scroll
+       backward/up),  <STRONG>khts</STRONG>  (set  a tab stop in this column).  In
+       addition, if the keypad has a 3 by 3 array of keys includ-
+       ing  the four arrow keys, the other five keys can be given
+       as <STRONG>ka1</STRONG>, <STRONG>ka3</STRONG>, <STRONG>kb2</STRONG>, <STRONG>kc1</STRONG>, and <STRONG>kc3</STRONG>.   These  keys  are  useful
+       when the effects of a 3 by 3 directional pad are needed.
 
        Strings  to  program  function keys can be given as <STRONG>pfkey</STRONG>,
        <STRONG>pfloc</STRONG>, and <STRONG>pfx</STRONG>.  A string to program screen labels  should
        bullet                     ACS_BULLET     o          ~
        checker board (stipple)    ACS_CKBOARD    :          a
        degree symbol              ACS_DEGREE     \          f
+
        diamond                    ACS_DIAMOND    +          `
        greater-than-or-equal-to   ACS_GEQUAL     &gt;          z
        greek pi                   ACS_PI         *          {
        defined."
 
        The  <STRONG>setaf</STRONG>/<STRONG>setab</STRONG>  and <STRONG>setf</STRONG>/<STRONG>setb</STRONG> capabilities take a single
-       numeric argument each.  Argument values 0-7  are  portably
-       defined  as  follows  (the  middle  column is the symbolic
-       #define available in the header for the <STRONG>curses</STRONG> or  <STRONG>ncurses</STRONG>
-       libraries).  The terminal hardware is free to map these as
-       it likes, but the RGB values indicate normal locations  in
-       color space.
+       numeric argument each.  Argument values 0-7 of <STRONG>setaf</STRONG>/<STRONG>setab</STRONG>
+       are  portably defined as follows (the middle column is the
+       symbolic #define available in the header for the <STRONG>curses</STRONG> or
+       <STRONG>ncurses</STRONG>  libraries).  The terminal hardware is free to map
+       these as it likes, but  the  RGB  values  indicate  normal
+       locations in color space.
 
              <STRONG>Color</STRONG>       <STRONG>#define</STRONG>       <STRONG>Value</STRONG>       <STRONG>RGB</STRONG>
              black     <STRONG>COLOR_BLACK</STRONG>       0     0, 0, 0
              cyan      <STRONG>COLOR_CYAN</STRONG>        6     0,max,max
              white     <STRONG>COLOR_WHITE</STRONG>       7     max,max,max
 
-       On  an  HP-like terminal, use <STRONG>scp</STRONG> with a color-pair number
+       The  argument  values of <STRONG>setf</STRONG>/<STRONG>setb</STRONG> historically correspond
+       to a different mapping, i.e.,
+             <STRONG>Color</STRONG>       <STRONG>#define</STRONG>       <STRONG>Value</STRONG>       <STRONG>RGB</STRONG>
+             black     <STRONG>COLOR_BLACK</STRONG>       0     0, 0, 0
+             blue      <STRONG>COLOR_BLUE</STRONG>        1     0,0,max
+             green     <STRONG>COLOR_GREEN</STRONG>       2     0,max,0
+             cyan      <STRONG>COLOR_CYAN</STRONG>        3     0,max,max
+             red       <STRONG>COLOR_RED</STRONG>         4     max,0,0
+             magenta   <STRONG>COLOR_MAGENTA</STRONG>     5     max,0,max
+             yellow    <STRONG>COLOR_YELLOW</STRONG>      6     max,max,0
+             white     <STRONG>COLOR_WHITE</STRONG>       7     max,max,max
+       It is important to not confuse the two sets of color capa-
+       bilities;  otherwise  red/blue will be interchanged on the
+       display.
+
+       On an HP-like terminal, use <STRONG>scp</STRONG> with a  color-pair  number
        parameter to set which color pair is current.
 
-       On a Tektronix-like terminal, the capability  <STRONG>ccc</STRONG>  may  be
-       present  to  indicate that colors can be modified.  If so,
+       On  a  Tektronix-like  terminal, the capability <STRONG>ccc</STRONG> may be
+       present to indicate that colors can be modified.   If  so,
        the <STRONG>initc</STRONG> capability will take a color number (0 to <STRONG>colors</STRONG>
-       -  1)and  three  more parameters which describe the color.
+       - 1)and three more parameters which  describe  the  color.
        These three parameters default to being interpreted as RGB
-       (Red,  Green, Blue) values.  If the boolean capability <STRONG>hls</STRONG>
+       (Red, Green, Blue) values.  If the boolean capability  <STRONG>hls</STRONG>
        is present, they are instead as HLS (Hue, Lightness, Satu-
        ration) indices.  The ranges are terminal-dependent.
 
-       On  an  HP-like  terminal, <STRONG>initp</STRONG> may give a capability for
-       changing a color-pair value.  It will take  seven  parame-
-       ters;  a  color-pair  number (0 to <STRONG>max_pairs</STRONG> - 1), and two
-       triples describing first background  and  then  foreground
-       colors.   These  parameters  must be (Red, Green, Blue) or
+       On an HP-like terminal, <STRONG>initp</STRONG> may give  a  capability  for
+       changing  a  color-pair value.  It will take seven parame-
+       ters; a color-pair number (0 to <STRONG>max_pairs</STRONG> -  1),  and  two
+       triples  describing  first  background and then foreground
+       colors.  These parameters must be (Red,  Green,  Blue)  or
        (Hue, Lightness, Saturation) depending on <STRONG>hls</STRONG>.
 
-       On some color terminals, colors collide  with  highlights.
+       On  some  color terminals, colors collide with highlights.
        You can register these collisions with the <STRONG>ncv</STRONG> capability.
-       This is a bit-mask of attributes not to be used when  col-
-       ors  are  enabled.  The correspondence with the attributes
+       This  is a bit-mask of attributes not to be used when col-
+       ors are enabled.  The correspondence with  the  attributes
        understood by <STRONG>curses</STRONG> is as follows:
 
                       <STRONG>Attribute</STRONG>      <STRONG>Bit</STRONG>   <STRONG>Decimal</STRONG>
                       A_STANDOUT     0     1
                       A_UNDERLINE    1     2
+
                       A_REVERSE      2     4
                       A_BLINK        3     8
                       A_DIM          4     16
                       A_PROTECT      7     128
                       A_ALTCHARSET   8     256
 
-       For example,  on  many  IBM  PC  consoles,  the  underline
-       attribute  collides  with the foreground color blue and is
-       not available in color mode.  These  should  have  an  <STRONG>ncv</STRONG>
+       For  example,  on  many  IBM  PC  consoles,  the underline
+       attribute collides with the foreground color blue  and  is
+       not  available  in  color  mode.  These should have an <STRONG>ncv</STRONG>
        capability of 2.
 
-       SVr4  curses  does nothing with <STRONG>ncv</STRONG>, ncurses recognizes it
+       SVr4 curses does nothing with <STRONG>ncv</STRONG>, ncurses  recognizes  it
        and optimizes the output in favor of colors.
 
 
    <STRONG>Miscellaneous</STRONG>
-       If the terminal requires other than a null (zero)  charac-
-       ter  as  a  pad,  then this can be given as pad.  Only the
-       first character of the pad string is used.  If the  termi-
+       If  the terminal requires other than a null (zero) charac-
+       ter as a pad, then this can be given  as  pad.   Only  the
+       first  character of the pad string is used.  If the termi-
        nal does not have a pad character, specify npc.  Note that
-       ncurses implements  the  termcap-compatible  <STRONG>PC</STRONG>  variable;
-       though  the  application  may  set this value to something
-       other than a null, ncurses will test  <STRONG>npc</STRONG>  first  and  use
+       ncurses  implements  the  termcap-compatible  <STRONG>PC</STRONG> variable;
+       though the application may set  this  value  to  something
+       other  than  a  null,  ncurses will test <STRONG>npc</STRONG> first and use
        napms if the terminal has no pad character.
 
-       If  the terminal can move up or down half a line, this can
-       be indicated with <STRONG>hu</STRONG>  (half-line  up)  and  <STRONG>hd</STRONG>  (half-line
+       If the terminal can move up or down half a line, this  can
+       be  indicated  with  <STRONG>hu</STRONG>  (half-line  up) and <STRONG>hd</STRONG> (half-line
        down).  This is primarily useful for superscripts and sub-
-       scripts on hard-copy terminals.  If a  hard-copy  terminal
-       can  eject  to  the next page (form feed), give this as <STRONG>ff</STRONG>
+       scripts  on  hard-copy terminals.  If a hard-copy terminal
+       can eject to the next page (form feed), give  this  as  <STRONG>ff</STRONG>
        (usually control L).
 
-       If there is a command to repeat a given character a  given
-       number  of times (to save time transmitting a large number
-       of identical characters) this can be  indicated  with  the
-       parameterized  string  <STRONG>rep</STRONG>.   The  first  parameter is the
-       character to be repeated and the second is the  number  of
-       times  to repeat it.  Thus, tparm(repeat_char, 'x', 10) is
+       If  there is a command to repeat a given character a given
+       number of times (to save time transmitting a large  number
+       of  identical  characters)  this can be indicated with the
+       parameterized string <STRONG>rep</STRONG>.   The  first  parameter  is  the
+       character  to  be repeated and the second is the number of
+       times to repeat it.  Thus, tparm(repeat_char, 'x', 10)  is
        the same as `xxxxxxxxxx'.
 
-       If the terminal has a settable command character, such  as
-       the  TEKTRONIX  4025, this can be indicated with <STRONG>cmdch</STRONG>.  A
+       If  the terminal has a settable command character, such as
+       the TEKTRONIX 4025, this can be indicated with  <STRONG>cmdch</STRONG>.   A
        prototype command character is chosen which is used in all
-       capabilities.   This character is given in the <STRONG>cmdch</STRONG> capa-
-       bility to identify it.  The following convention  is  sup-
-       ported  on  some  UNIX  systems:  The environment is to be
-       searched for a <STRONG>CC</STRONG> variable, and if found, all  occurrences
+       capabilities.  This character is given in the <STRONG>cmdch</STRONG>  capa-
+       bility  to  identify it.  The following convention is sup-
+       ported on some UNIX systems:  The  environment  is  to  be
+       searched  for a <STRONG>CC</STRONG> variable, and if found, all occurrences
        of the prototype character are replaced with the character
        in the environment variable.
 
-       Terminal descriptions that do  not  represent  a  specific
+       Terminal  descriptions  that  do  not represent a specific
        kind of known terminal, such as <EM>switch</EM>, <EM>dialup</EM>, <EM>patch</EM>, and
-       <EM>network</EM>, should include the  <STRONG>gn</STRONG>  (generic)  capability  so
-       that  programs  can  complain that they do not know how to
-       talk to the terminal.  (This capability does not apply  to
-       <EM>virtual</EM>   terminal   descriptions  for  which  the  escape
+       <EM>network</EM>,  should  include  the  <STRONG>gn</STRONG> (generic) capability so
+       that programs can complain that they do not  know  how  to
+       talk  to the terminal.  (This capability does not apply to
+       <EM>virtual</EM>  terminal  descriptions  for  which   the   escape
        sequences are known.)
 
-       If the terminal has a ``meta key'' which acts as  a  shift
-       key,  setting  the  8th  bit of any character transmitted,
-       this fact can be indicated with <STRONG>km</STRONG>.   Otherwise,  software
+       If  the  terminal has a ``meta key'' which acts as a shift
+       key, setting the 8th bit  of  any  character  transmitted,
+       this  fact  can be indicated with <STRONG>km</STRONG>.  Otherwise, software
        will assume that the 8th bit is parity and it will usually
-       be cleared.  If strings exist to turn this  ``meta  mode''
+       be  cleared.   If strings exist to turn this ``meta mode''
        on and off, they can be given as <STRONG>smm</STRONG> and <STRONG>rmm</STRONG>.
 
-       If  the terminal has more lines of memory than will fit on
-       the screen at once, the number of lines of memory  can  be
-       indicated  with  <STRONG>lm</STRONG>.   A  value of <STRONG>lm</STRONG>#0 indicates that the
+       If the terminal has more lines of memory than will fit  on
+       the  screen  at once, the number of lines of memory can be
+       indicated with <STRONG>lm</STRONG>.  A value of  <STRONG>lm</STRONG>#0  indicates  that  the
        number of lines is not fixed, but that there is still more
        memory than fits on the screen.
 
        If the terminal is one of those supported by the UNIX vir-
-       tual terminal protocol, the terminal number can  be  given
+       tual  terminal  protocol, the terminal number can be given
        as <STRONG>vt</STRONG>.
 
        Media copy strings which control an auxiliary printer con-
        nected to the terminal can be given as <STRONG>mc0</STRONG>: print the con-
-       tents  of  the screen, <STRONG>mc4</STRONG>: turn off the printer, and <STRONG>mc5</STRONG>:
-       turn on the printer.  When the printer  is  on,  all  text
-       sent  to  the terminal will be sent to the printer.  It is
+       tents of the screen, <STRONG>mc4</STRONG>: turn off the printer,  and  <STRONG>mc5</STRONG>:
+       turn  on  the  printer.   When the printer is on, all text
+       sent to the terminal will be sent to the printer.   It  is
        undefined whether the text is also displayed on the termi-
        nal screen when the printer is on.  A variation <STRONG>mc5p</STRONG> takes
        one parameter, and leaves the printer on for as many char-
-       acters  as  the  value  of  the  parameter, then turns the
-       printer off.  The parameter should not  exceed  255.   All
+       acters as the value  of  the  parameter,  then  turns  the
+       printer  off.   The  parameter should not exceed 255.  All
        text,  including  <STRONG>mc4</STRONG>,  is  transparently  passed  to  the
        printer while an <STRONG>mc5p</STRONG> is in effect.
 
 
    <STRONG>Glitches</STRONG> <STRONG>and</STRONG> <STRONG>Braindamage</STRONG>
-       Hazeltine terminals, which do not allow `~' characters  to
+       Hazeltine  terminals, which do not allow `~' characters to
        be displayed should indicate <STRONG>hz</STRONG>.
 
        Terminals which ignore a line-feed immediately after an <STRONG>am</STRONG>
        wrap, such as the Concept and vt100, should indicate <STRONG>xenl</STRONG>.
 
-       If  <STRONG>el</STRONG>  is  required  to  get  rid of standout (instead of
-       merely writing normal text on top of it),  <STRONG>xhp</STRONG>  should  be
+       If <STRONG>el</STRONG> is required to  get  rid  of  standout  (instead  of
+       merely  writing  normal  text on top of it), <STRONG>xhp</STRONG> should be
        given.
 
-       Teleray  terminals,  where  tabs turn all characters moved
-       over to blanks, should  indicate  <STRONG>xt</STRONG>  (destructive  tabs).
-       Note:    the    variable    indicating    this    is   now
-       `dest_tabs_magic_smso'; in older  versions,  it  was  tel-
+       Teleray terminals, where tabs turn  all  characters  moved
+       over  to  blanks,  should  indicate <STRONG>xt</STRONG> (destructive tabs).
+       Note:   the    variable    indicating    this    is    now
+       `dest_tabs_magic_smso';  in  older  versions,  it was tel-
        eray_glitch.  This glitch is also taken to mean that it is
-       not possible to position the cursor on top  of  a  ``magic
+       not  possible  to  position the cursor on top of a ``magic
        cookie'', that to erase standout mode it is instead neces-
        sary to use delete and insert line.  The ncurses implemen-
        tation ignores this glitch.
 
-       The  Beehive Superbee, which is unable to correctly trans-
-       mit the escape or control C characters, has <STRONG>xsb</STRONG>,  indicat-
-       ing  that the f1 key is used for escape and f2 for control
-       C.  (Only certain Superbees have this  problem,  depending
-       on  the  ROM.)  Note that in older terminfo versions, this
-       capability  was  called  `beehive_glitch';   it   is   now
+       The Beehive Superbee, which is unable to correctly  trans-
+       mit  the escape or control C characters, has <STRONG>xsb</STRONG>, indicat-
+       ing that the f1 key is used for escape and f2 for  control
+       C.   (Only  certain Superbees have this problem, depending
+       on the ROM.)  Note that in older terminfo  versions,  this
+       capability   was   called   `beehive_glitch';  it  is  now
        `no_esc_ctl_c'.
 
-       Other  specific  terminal  problems  may  be  corrected by
+       Other specific  terminal  problems  may  be  corrected  by
        adding more capabilities of the form <STRONG>x</STRONG><EM>x</EM>.
 
 
    <STRONG>Similar</STRONG> <STRONG>Terminals</STRONG>
        If there are two very similar terminals, one (the variant)
-       can  be  defined  as  being just like the other (the base)
-       with certain exceptions.  In the definition of  the  vari-
-       ant,  the string capability <STRONG>use</STRONG> can be given with the name
-       of the base terminal.  The capabilities given  before  <STRONG>use</STRONG>
-       override  those  in  the base type named by <STRONG>use</STRONG>.  If there
-       are multiple <STRONG>use</STRONG> capabilities, they are merged in  reverse
-       order.   That is, the rightmost <STRONG>use</STRONG> reference is processed
-       first, then the one to its left, and so forth.   Capabili-
-       ties  given explicitly in the entry override those brought
+       can be defined as being just like  the  other  (the  base)
+       with  certain  exceptions.  In the definition of the vari-
+       ant, the string capability <STRONG>use</STRONG> can be given with the  name
+       of  the  base terminal.  The capabilities given before <STRONG>use</STRONG>
+       override those in the base type named by  <STRONG>use</STRONG>.   If  there
+       are  multiple <STRONG>use</STRONG> capabilities, they are merged in reverse
+       order.  That is, the rightmost <STRONG>use</STRONG> reference is  processed
+       first,  then the one to its left, and so forth.  Capabili-
+       ties given explicitly in the entry override those  brought
        in by <STRONG>use</STRONG> references.
 
        A capability can be canceled by placing <STRONG>xx@</STRONG> to the left of
-       the  use  reference that imports it, where <EM>xx</EM> is the capa-
+       the use reference that imports it, where <EM>xx</EM> is  the  capa-
        bility.  For example, the entry
+
                    2621-nl, smkx@, rmkx@, use=2621,
 
-       defines a 2621-nl that does not  have  the  <STRONG>smkx</STRONG>  or  <STRONG>rmkx</STRONG>
-       capabilities,  and hence does not turn on the function key
-       labels when in visual mode.  This is useful for  different
+       defines  a  2621-nl  that  does  not have the <STRONG>smkx</STRONG> or <STRONG>rmkx</STRONG>
+       capabilities, and hence does not turn on the function  key
+       labels  when in visual mode.  This is useful for different
        modes for a terminal, or for different user preferences.
 
 
    <STRONG>Pitfalls</STRONG> <STRONG>of</STRONG> <STRONG>Long</STRONG> <STRONG>Entries</STRONG>
-       Long  terminfo  entries  are  unlikely to be a problem; to
-       date, no entry has even approached terminfo's  4K  string-
-       table  maximum.   Unfortunately,  the termcap translations
-       are much more  strictly  limited  (to  1K),  thus  termcap
-       translations  of long terminfo entries can cause problems.
-
-       The man pages for 4.3BSD and older versions  of  tgetent()
-       instruct  the user to allocate a 1K buffer for the termcap
-       entry.  The entry  gets  null-terminated  by  the  termcap
+       Long terminfo entries are unlikely to  be  a  problem;  to
+       date,  no  entry has even approached terminfo's 4K string-
+       table maximum.  Unfortunately,  the  termcap  translations
+       are  much  more  strictly  limited  (to  1K), thus termcap
+       translations of long terminfo entries can cause  problems.
+
+       The  man  pages for 4.3BSD and older versions of tgetent()
+       instruct the user to allocate a 1K buffer for the  termcap
+       entry.   The  entry  gets  null-terminated  by the termcap
        library, so that makes the maximum safe length for a term-
        cap entry 1k-1 (1023) bytes.  Depending on what the appli-
-       cation  and the termcap library being used does, and where
-       in the termcap file the terminal type  that  tgetent()  is
+       cation and the termcap library being used does, and  where
+       in  the  termcap  file the terminal type that tgetent() is
        searching for is, several bad things can happen.
 
-       Some  termcap libraries print a warning message or exit if
-       they find an entry that's longer than 1023  bytes;  others
-       don't;  others  truncate  the entries to 1023 bytes.  Some
+       Some termcap libraries print a warning message or exit  if
+       they  find  an entry that's longer than 1023 bytes; others
+       don't; others truncate the entries to  1023  bytes.   Some
        application programs allocate more than the recommended 1K
        for the termcap entry; others don't.
 
        Each termcap entry has two important sizes associated with
        it: before "tc" expansion, and after "tc" expansion.  "tc"
-       is  the  capability that tacks on another termcap entry to
-       the end of the current one, to add  on  its  capabilities.
-       If  a  termcap entry doesn't use the "tc" capability, then
+       is the capability that tacks on another termcap  entry  to
+       the  end  of  the current one, to add on its capabilities.
+       If a termcap entry doesn't use the "tc"  capability,  then
        of course the two lengths are the same.
 
-       The "before tc expansion" length  is  the  most  important
-       one,  because it affects more than just users of that par-
-       ticular terminal.  This is the length of the entry  as  it
+       The  "before  tc  expansion"  length is the most important
+       one, because it affects more than just users of that  par-
+       ticular  terminal.   This is the length of the entry as it
        exists in /etc/termcap, minus the backslash-newline pairs,
        which tgetent() strips out while reading it.  Some termcap
-       libraries  strip  off  the final newline, too (GNU termcap
+       libraries strip off the final newline,  too  (GNU  termcap
        does not).  Now suppose:
 
-       *    a termcap entry before expansion is  more  than  1023
+       *    a  termcap  entry  before expansion is more than 1023
             bytes long,
 
        *    and the application has only allocated a 1k buffer,
 
-       *    and  the  termcap library (like the one in BSD/OS 1.1
-            and GNU) reads the whole entry into  the  buffer,  no
-            matter  what  its length, to see if it's the entry it
+       *    and the termcap library (like the one in  BSD/OS  1.1
+            and  GNU)  reads  the whole entry into the buffer, no
+            matter what its length, to see if it's the  entry  it
             wants,
 
-       *    and tgetent() is searching for a terminal  type  that
+       *    and  tgetent()  is searching for a terminal type that
             either is the long entry, appears in the termcap file
-            after the long entry, or doesn't appear in  the  file
-            at  all  (so  that  tgetent() has to search the whole
+            after  the  long entry, or doesn't appear in the file
+            at all (so that tgetent() has  to  search  the  whole
             termcap file).
 
-       Then tgetent() will overwrite memory, perhaps  its  stack,
-       and  probably core dump the program.  Programs like telnet
-       are particularly vulnerable;  modern  telnets  pass  along
-       values  like the terminal type automatically.  The results
-       are almost as undesirable with  a  termcap  library,  like
-       SunOS  4.1.3  and Ultrix 4.4, that prints warning messages
-       when it reads an overly long termcap entry.  If a  termcap
-       library  truncates  long  entries,  like  OSF/1 3.0, it is
-       immune to dying here but will return  incorrect  data  for
+       Then  tgetent()  will overwrite memory, perhaps its stack,
+       and probably core dump the program.  Programs like  telnet
+       are  particularly  vulnerable;  modern  telnets pass along
+       values like the terminal type automatically.  The  results
+       are  almost  as  undesirable  with a termcap library, like
+       SunOS 4.1.3 and Ultrix 4.4, that prints  warning  messages
+       when  it reads an overly long termcap entry.  If a termcap
+       library truncates long entries,  like  OSF/1  3.0,  it  is
+       immune  to  dying  here but will return incorrect data for
        the terminal.
 
        The "after tc expansion" length will have a similar effect
        to the above, but only for people who actually set TERM to
-       that  terminal type, since tgetent() only does "tc" expan-
+       that terminal type, since tgetent() only does "tc"  expan-
        sion once it's found the terminal type it was looking for,
        not while searching.
 
        In summary, a termcap entry that is longer than 1023 bytes
-       can cause, on various combinations  of  termcap  libraries
-       and  applications,  a  core  dump,  warnings, or incorrect
-       operation.  If it's too long even before  "tc"  expansion,
+       can  cause,  on  various combinations of termcap libraries
+       and applications, a  core  dump,  warnings,  or  incorrect
+       operation.   If  it's too long even before "tc" expansion,
        it will have this effect even for users of some other ter-
-       minal types and users whose TERM variable does not have  a
+       minal  types and users whose TERM variable does not have a
        termcap entry.
 
        When in -C (translate to termcap) mode, the <STRONG>ncurses</STRONG> imple-
-       mentation of <STRONG><A HREF="tic.1.html">tic(1)</A></STRONG> issues warning messages when the  pre-
-       tc  length  of  a termcap translation is too long.  The -c
-       (check) option also checks resolved (after  tc  expansion)
+       mentation  of <STRONG><A HREF="tic.1.html">tic(1)</A></STRONG> issues warning messages when the pre-
+       tc length of a termcap translation is too  long.   The  -c
+       (check)  option  also checks resolved (after tc expansion)
        lengths.
 
    <STRONG>Binary</STRONG> <STRONG>Compatibility</STRONG>
-       It  is not wise to count on portability of binary terminfo
-       entries between commercial UNIX versions.  The problem  is
-       that  there  are  at least two versions of terminfo (under
+       It is not wise to count on portability of binary  terminfo
+       entries  between commercial UNIX versions.  The problem is
+       that there are at least two versions  of  terminfo  (under
        HP-UX and AIX) which diverged from System V terminfo after
-       SVr1,  and have added extension capabilities to the string
-       table that (in the binary format) collide  with  System  V
+       SVr1, and have added extension capabilities to the  string
+       table  that  (in  the binary format) collide with System V
        and XSI Curses extensions.
 
 
 </PRE>
 <H2>EXTENSIONS</H2><PRE>
-       Some  SVr4  <STRONG>curses</STRONG>  implementations,  and  all previous to
+       Some SVr4 <STRONG>curses</STRONG>  implementations,  and  all  previous  to
        SVr4, don't interpret the %A and %O operators in parameter
        strings.
 
-       SVr4/XPG4  do  not  specify whether <STRONG>msgr</STRONG> licenses movement
-       while in an alternate-character-set mode (such modes  may,
+       SVr4/XPG4 do not specify whether  <STRONG>msgr</STRONG>  licenses  movement
+       while  in an alternate-character-set mode (such modes may,
        among other things, map CR and NL to characters that don't
-       trigger  local  motions).   The   <STRONG>ncurses</STRONG>   implementation
-       ignores  <STRONG>msgr</STRONG>  in <STRONG>ALTCHARSET</STRONG> mode.  This raises the possi-
-       bility that an XPG4  implementation  making  the  opposite
-       interpretation  may need terminfo entries made for <STRONG>ncurses</STRONG>
+       trigger   local   motions).   The  <STRONG>ncurses</STRONG>  implementation
+       ignores <STRONG>msgr</STRONG> in <STRONG>ALTCHARSET</STRONG> mode.  This raises  the  possi-
+       bility  that  an  XPG4  implementation making the opposite
+       interpretation may need terminfo entries made for  <STRONG>ncurses</STRONG>
        to have <STRONG>msgr</STRONG> turned off.
 
-       The <STRONG>ncurses</STRONG> library handles insert-character  and  insert-
+       The  <STRONG>ncurses</STRONG>  library handles insert-character and insert-
        character modes in a slightly non-standard way to get bet-
-       ter update efficiency.  See  the  <STRONG>Insert/Delete</STRONG>  <STRONG>Character</STRONG>
+       ter  update  efficiency.   See the <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG>
        subsection above.
 
-       The   parameter   substitutions  for  <STRONG>set_clock</STRONG>  and  <STRONG>dis-</STRONG>
-       <STRONG>play_clock</STRONG> are not documented in SVr4 or  the  XSI  Curses
+       The  parameter  substitutions  for  <STRONG>set_clock</STRONG>   and   <STRONG>dis-</STRONG>
+       <STRONG>play_clock</STRONG>  are  not  documented in SVr4 or the XSI Curses
        standard.  They are deduced from the documentation for the
        AT&amp;T 505 terminal.
 
-       Be careful assigning the <STRONG>kmous</STRONG>  capability.   The  <STRONG>ncurses</STRONG>
-       wants  to  interpret it as <STRONG>KEY_MOUSE</STRONG>, for use by terminals
-       and emulators like xterm that  can  return  mouse-tracking
+       Be  careful  assigning  the <STRONG>kmous</STRONG> capability.  The <STRONG>ncurses</STRONG>
+       wants to interpret it as <STRONG>KEY_MOUSE</STRONG>, for use  by  terminals
+       and  emulators  like  xterm that can return mouse-tracking
        information in the keyboard-input stream.
 
-       Different  commercial ports of terminfo and curses support
-       different subsets of the XSI Curses standard and (in  some
+       Different commercial ports of terminfo and curses  support
+       different  subsets of the XSI Curses standard and (in some
        cases) different extension sets.  Here is a summary, accu-
        rate as of October 1995:
 
        <STRONG>SVR4,</STRONG> <STRONG>Solaris,</STRONG> <STRONG>ncurses</STRONG> -- These support all SVr4 capabili-
        ties.
 
-       <STRONG>SGI</STRONG>  --  Supports  the  SVr4  set,  adds  one undocumented
+       <STRONG>SGI</STRONG> --  Supports  the  SVr4  set,  adds  one  undocumented
        extended string capability (<STRONG>set_pglen</STRONG>).
 
-       <STRONG>SVr1,</STRONG> <STRONG>Ultrix</STRONG> -- These support a restricted subset of  ter-
-       minfo  capabilities.   The booleans end with <STRONG>xon_xoff</STRONG>; the
-       numerics with  <STRONG>width_status_line</STRONG>;  and  the  strings  with
+       <STRONG>SVr1,</STRONG>  <STRONG>Ultrix</STRONG> -- These support a restricted subset of ter-
+       minfo capabilities.  The booleans end with  <STRONG>xon_xoff</STRONG>;  the
+       numerics  with  <STRONG>width_status_line</STRONG>;  and  the  strings with
        <STRONG>prtr_non</STRONG>.
 
-       <STRONG>HP/UX</STRONG>  --  Supports  the  SVr1  subset,  plus the SVr[234]
+       <STRONG>HP/UX</STRONG> -- Supports  the  SVr1  subset,  plus  the  SVr[234]
        numerics <STRONG>num_labels</STRONG>, <STRONG>label_height</STRONG>, <STRONG>label_width</STRONG>, plus func-
-       tion  keys  11  through  63, plus <STRONG>plab_norm</STRONG>, <STRONG>label_on</STRONG>, and
+       tion keys 11 through 63,  plus  <STRONG>plab_norm</STRONG>,  <STRONG>label_on</STRONG>,  and
        <STRONG>label_off</STRONG>, plus some incompatible extensions in the string
        table.
 
-       <STRONG>AIX</STRONG>  --  Supports  the  SVr1 subset, plus function keys 11
-       through 63, plus a number  of  incompatible  string  table
+       <STRONG>AIX</STRONG> -- Supports the SVr1 subset,  plus  function  keys  11
+       through  63,  plus  a  number of incompatible string table
        extensions.
 
-       <STRONG>OSF</STRONG>  -- Supports both the SVr4 set and the AIX extensions.
+       <STRONG>OSF</STRONG> -- Supports both the SVr4 set and the AIX  extensions.
 
 
 </PRE>
                                 descriptions
 
 
-
 </PRE>
 <H2>SEE ALSO</H2><PRE>
        <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="printf.3S.html">printf(3S)</A></STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>.
 
 </PRE>
 <H2>AUTHORS</H2><PRE>
-       Zeyd  M.  Ben-Halim,  Eric  S.  Raymond, Thomas E. Dickey.
+       Zeyd M. Ben-Halim, Eric  S.  Raymond,  Thomas  E.  Dickey.
        Based on pcurses by Pavel Curtis.
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                      <STRONG><A HREF="TERMINFO.5.html">TERMINFO(5)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index e7963e618abc9af37e431837fc4ce4f0a32fedf6..09dc035cfb18e962964904027c76c6f7f5b73345 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: tic.1m,v 1.33 2002/10/05 20:06:13 tom Exp @
+  * @Id: tic.1m,v 1.35 2003/05/11 00:32:53 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>                                                   <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -85,7 +89,7 @@
               entries as user-defined names.
 
        <STRONG>-C</STRONG>     Force source translation to termcap format.   Note:
-              this  differs  from the -C option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> in
+              this  differs  from the <STRONG>-C</STRONG> option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> in
               that it does not merely translate capability names,
               but  also  translates  terminfo  strings to termcap
               format.  Capabilities that are not translatable are
               alias of a terminal matches one of the names in the
               list, the entry will be written  or  translated  as
               normal.   Otherwise no output will be generated for
-              it.  The option value is interpreted as a file con-
-              taining  the  list  if  it  contains a '/'.  (Note:
+              it.  The option value  is  interpreted  as  a  file
+              containing  the  list if it contains a '/'.  (Note:
               depending on how tic was compiled, this option  may
-              require -I or -C.)
+              require <STRONG>-I</STRONG> or <STRONG>-C</STRONG>.)
 
        <STRONG>-f</STRONG>     Display  complex  terminfo  strings  which  contain
               if/then/else/endif expressions indented  for  read-
 
        The  <STRONG>-C</STRONG>,  <STRONG>-G</STRONG>,  <STRONG>-I</STRONG>, <STRONG>-N</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-o</STRONG>, <STRONG>-r</STRONG>,
        <STRONG>-s</STRONG>, <STRONG>-t</STRONG> and <STRONG>-x</STRONG> options are not supported under  SVr4.   The
-       SVr4 -c mode does not report bad use links.
+       SVr4 <STRONG>-c</STRONG> mode does not report bad use links.
 
        System  V does not compile entries to or read entries from
        your <EM>$HOME/.terminfo</EM> directory unless TERMINFO is  explic-
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                          <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 441ff7004ae4eea5293ddd4edb93d88646415c50..1eb6e729000f689d949426597c74d2711d26dd1f 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: toe.1m,v 1.10 2000/08/19 18:51:05 tom Exp @
+  * @Id: toe.1m,v 1.12 2003/05/11 00:32:53 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>                                                   <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -57,7 +61,7 @@
        primary name with descriptions.   File  arguments  specify
        the  directories  to  be scanned; if no such arguments are
        given, your default terminfo directory is scanned.  If you
-       also  specify  the  -h  option, a directory header will be
+       also  specify  the  <STRONG>-h</STRONG>  option, a directory header will be
        issued as each directory is entered.
 
        There are other options intended for use by terminfo  file
 
 
 
-
+                                                          <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index e9029a53f1a2e61a657d8e573b6927a615a3df05..ec8281ab03def906f50f6799d4d2a6f144273ff3 100644 (file)
@@ -2,7 +2,7 @@
 <!-- 
   * t
   ****************************************************************************
-  * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: tput.1,v 1.18 2002/10/12 13:53:20 tom Exp @
+  * @Id: tput.1,v 1.20 2003/05/11 00:32:53 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>                                                   <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
               and <STRONG>1</STRONG> boolean and string exit codes (see  the  EXIT
               CODES section).
 
-              Again, <STRONG>tput</STRONG> uses a table and the presence of param-
-              eters in its input to decide whether to  use  <STRONG>tparm</STRONG>
-              (3x), and how to interpret the parameters.
+              Again,  <STRONG>tput</STRONG>  uses  a  table  and  the  presence of
+              parameters in its input to decide  whether  to  use
+              <STRONG>tparm</STRONG> (3x), and how to interpret the parameters.
 
        <STRONG>-V</STRONG>     reports  the  version  of ncurses which was used in
               this program, and exits.
        TICS section.
 
 
-
 </PRE>
 <H2>DIAGNOSTICS</H2><PRE>
        <STRONG>tput</STRONG> prints the following error messages and sets the cor-
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                          <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 5d806bda6d44b5f82ebbdc8a1583b173189529b4..0910b4edbadd5cc8e83f9cafa004d31f3c803812 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2000,2003 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            *
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: tset.1,v 1.12 2000/09/09 20:33:07 tom Exp @
+  * @Id: tset.1,v 1.13 2003/05/11 00:32:53 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>                                                   <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
@@ -73,7 +77,7 @@
        4. The default terminal type, ``unknown''.
 
        If  the  terminal  type  was not specified on the command-
-       line, the -m option mappings are then applied  (see  below
+       line, the <STRONG>-m</STRONG> option mappings are then applied  (see  below
        for  more information).  Then, if the terminal type begins
        with a question mark (``?''), the  user  is  prompted  for
        confirmation of the terminal type.  An empty response con-
 
        The options are as follows:
 
-       -q   The  terminal  type is displayed to the standard out-
+       <STRONG>-q</STRONG>   The  terminal  type is displayed to the standard out-
             put, and the terminal is not initialized in any  way.
             The option `-' by itself is equivalent but archaic.
 
-       -e   Set the erase character to <EM>ch</EM>.
+       <STRONG>-e</STRONG>   Set the erase character to <EM>ch</EM>.
 
-       -I   Do  not  send  the  terminal  or  tab  initialization
+       <STRONG>-I</STRONG>   Do  not  send  the  terminal  or  tab  initialization
             strings to the terminal.
 
-       -Q   Don't display any values for the erase, interrupt and
+       <STRONG>-Q</STRONG>   Don't display any values for the erase, interrupt and
             line kill characters.
 
        <STRONG>-V</STRONG>   reports the version of ncurses which was used in this
             program, and exits.
 
-       -i   Set the interrupt character to <EM>ch</EM>.
+       <STRONG>-i</STRONG>   Set the interrupt character to <EM>ch</EM>.
 
-       -k   Set the line kill character to <EM>ch</EM>.
+       <STRONG>-k</STRONG>   Set the line kill character to <EM>ch</EM>.
 
-       -m   Specify a mapping from a port  type  to  a  terminal.
+       <STRONG>-m</STRONG>   Specify a mapping from a port  type  to  a  terminal.
             See below for more information.
 
-       -r   Print the terminal type to the standard error output.
+       <STRONG>-r</STRONG>   Print the terminal type to the standard error output.
 
-       -s   Print the sequence of shell  commands  to  initialize
+       <STRONG>-s</STRONG>   Print the sequence of shell  commands  to  initialize
             the environment variable <STRONG>TERM</STRONG> to the standard output.
             See the section below on setting the environment  for
             details.
 
-       The arguments for the -e, -i, and -k options may either be
+       The arguments for the <STRONG>-e</STRONG>, <STRONG>-i</STRONG>, and <STRONG>-k</STRONG> options may either be
        entered as actual characters or by using the  `hat'  nota-
        tion, i.e. control-h may be specified as ``^H'' or ``^h''.
 
 <H2>SETTING THE ENVIRONMENT</H2><PRE>
        It is often desirable  to  enter  the  terminal  type  and
        information  about  the  terminal's  capabilities into the
-       shell's environment.  This is done using the -s option.
+       shell's environment.  This is done using the <STRONG>-s</STRONG> option.
 
-       When the -s option is specified, the commands to enter the
+       When the <STRONG>-s</STRONG> option is specified, the commands to enter the
        information  into  the  shell's environment are written to
        the standard output.  If the <STRONG>SHELL</STRONG> environmental  variable
        ends in ``csh'', the commands are for <STRONG>csh</STRONG>, otherwise, they
        often desirable to provide information about the  type  of
        terminal used on such ports.
 
-       The  purpose  of  the -m option is to map from some set of
+       The  purpose  of  the <STRONG>-m</STRONG> option is to map from some set of
        conditions to a terminal type, that is, to tell <STRONG>tset</STRONG>  ``If
        I'm  on this port at a particular speed, guess that I'm on
        that kind of terminal''.
 
-       The argument to the -m option consists of an optional port
-       type, an optional operator, an optional baud rate specifi-
-       cation, an optional colon (``:'') character and a terminal
-       type.   The port type is a string (delimited by either the
-       operator or the colon character).  The operator may be any
-       combination of ``&gt;'', ``&lt;'', ``@'', and ``!''; ``&gt;'' means
-       greater than, ``&lt;'' means less than, ``@'' means equal  to
-       and ``!'' inverts the sense of the test.  The baud rate is
-       specified as a number and is compared with  the  speed  of
-       the  standard  error  output  (which should be the control
-       terminal).  The terminal type is a string.
+       The argument to the <STRONG>-m</STRONG> option consists of an optional port
+       type,   an   optional  operator,  an  optional  baud  rate
+       specification, an optional colon (``:'') character  and  a
+       terminal  type.   The  port type is a string (delimited by
+       either the operator or the colon character).  The operator
+       may  be any combination of ``&gt;'', ``&lt;'', ``@'', and ``!'';
+       ``&gt;'' means greater than, ``&lt;''  means  less  than,  ``@''
+       means  equal  to  and ``!'' inverts the sense of the test.
+       The baud rate is specified as a  number  and  is  compared
+       with  the speed of the standard error output (which should
+       be the control terminal).  The terminal type is a  string.
 
        If the terminal type is not specified on the command line,
-       the  -m mappings are applied to the terminal type.  If the
-       port type and baud rate match the  mapping,  the  terminal
-       type  specified  in the mapping replaces the current type.
-       If more than one mapping is specified, the first  applica-
+       the <STRONG>-m</STRONG> mappings are applied to the terminal type.  If  the
+       port  type  and  baud rate match the mapping, the terminal
+       type specified in the mapping replaces the  current  type.
+       If  more than one mapping is specified, the first applica-
        ble mapping is used.
 
-       For    example,    consider    the    following   mapping:
+       For   example,    consider    the    following    mapping:
        <STRONG>dialup&gt;9600:vt100</STRONG>.  The port type is dialup , the operator
-       is  &gt;, the baud rate specification is 9600, and the termi-
+       is &gt;, the baud rate specification is 9600, and the  termi-
        nal type is vt100.  The result of this mapping is to spec-
        ify that if the terminal type is <STRONG>dialup</STRONG>, and the baud rate
-       is greater than 9600 baud, a terminal type of  <STRONG>vt100</STRONG>  will
+       is  greater  than 9600 baud, a terminal type of <STRONG>vt100</STRONG> will
        be used.
 
        If no baud rate is specified, the terminal type will match
        any baud rate.  If no port type is specified, the terminal
-       type   will   match   any  port  type.   For  example,  <STRONG>-m</STRONG>
+       type  will  match  any  port  type.    For   example,   <STRONG>-m</STRONG>
        <STRONG>dialup:vt100</STRONG>  <STRONG>-m</STRONG>  <STRONG>:?xterm</STRONG>  will  cause  any  dialup  port,
        regardless of baud rate, to match the terminal type vt100,
-       and any non-dialup port type to match  the  terminal  type
-       ?xterm.   Note,  because of the leading question mark, the
-       user will be queried on a default port as to whether  they
+       and  any  non-dialup  port type to match the terminal type
+       ?xterm.  Note, because of the leading question  mark,  the
+       user  will be queried on a default port as to whether they
        are actually using an xterm terminal.
 
-       No  whitespace  characters  are permitted in the -m option
-       argument.  Also, to avoid problems  with  meta-characters,
-       it  is  suggested  that  the  entire -m option argument be
-       placed within single quote characters, and that <STRONG>csh</STRONG>  users
-       insert  a  backslash character (``\'') before any exclama-
+       No whitespace characters are permitted in  the  <STRONG>-m</STRONG>  option
+       argument.   Also,  to avoid problems with meta-characters,
+       it is suggested that the  entire  <STRONG>-m</STRONG>  option  argument  be
+       placed  within single quote characters, and that <STRONG>csh</STRONG> users
+       insert a backslash character (``\'') before  any  exclama-
        tion marks (``!'').
 
 
 </PRE>
 <H2>HISTORY</H2><PRE>
-       The <STRONG>tset</STRONG> command appeared in BSD 3.0.  The <STRONG>ncurses</STRONG>  imple-
-       mentation  was lightly adapted from the 4.4BSD sources for
+       The  <STRONG>tset</STRONG> command appeared in BSD 3.0.  The <STRONG>ncurses</STRONG> imple-
+       mentation was lightly adapted from the 4.4BSD sources  for
        a terminfo environment by Eric S. Raymond &lt;esr@snark.thyr-
        sus.com&gt;.
 
 
 </PRE>
 <H2>COMPATIBILITY</H2><PRE>
-       The  <STRONG>tset</STRONG>  utility has been provided for backward-compati-
-       bility with BSD environments (under  most  modern  UNIXes,
-       <STRONG>/etc/inittab</STRONG>  and  <STRONG><A HREF="getty.1.html">getty(1)</A></STRONG> can set <STRONG>TERM</STRONG> appropriately for
-       each dial-up line; this  obviates  what  was  <STRONG>tset</STRONG>'s  most
-       important  use).   This implementation behaves like 4.4BSD
+       The <STRONG>tset</STRONG> utility has been provided  for  backward-compati-
+       bility  with  BSD  environments (under most modern UNIXes,
+       <STRONG>/etc/inittab</STRONG> and <STRONG><A HREF="getty.1.html">getty(1)</A></STRONG> can set <STRONG>TERM</STRONG>  appropriately  for
+       each  dial-up  line;  this  obviates  what was <STRONG>tset</STRONG>'s most
+       important use).  This implementation behaves  like  4.4BSD
        tset, with a few exceptions specified here.
 
-       The -S option of BSD tset no longer works;  it  prints  an
-       error message to stderr and dies.  The -s option only sets
-       <STRONG>TERM</STRONG>, not <STRONG>TERMCAP</STRONG>.  Both these  changes  are  because  the
-       <STRONG>TERMCAP</STRONG>  variable  is  no longer supported under terminfo-
+       The  <STRONG>-S</STRONG>  option  of BSD tset no longer works; it prints an
+       error message to stderr and dies.  The <STRONG>-s</STRONG> option only sets
+       <STRONG>TERM</STRONG>,  not  <STRONG>TERMCAP</STRONG>.   Both  these changes are because the
+       <STRONG>TERMCAP</STRONG> variable is no longer  supported  under  terminfo-
        based <STRONG>ncurses</STRONG>, which makes <STRONG>tset</STRONG> <STRONG>-S</STRONG> useless (we made it die
        noisily rather than silently induce lossage).
 
-       There  was  an  undocumented  4.4BSD feature that invoking
+       There was an undocumented  4.4BSD  feature  that  invoking
        tset via a link named `TSET` (or via any other name begin-
-       ning  with  an  upper-case letter) set the terminal to use
+       ning with an upper-case letter) set the  terminal  to  use
        upper-case only.  This feature has been omitted.
 
-       The -A, -E, -h, -u and -v options were  deleted  from  the
-       <STRONG>tset</STRONG>  utility  in  4.4BSD. None of them were documented in
-       4.3BSD and all are of limited utility at best. The -a, -d,
-       and -p options are similarly not documented or useful, but
-       were retained as they appear to be in widespread use.   It
-       is  strongly  recommended  that  any  usage of these three
-       options be changed to use the -m option instead.   The  -n
-       option  remains, but has no effect.  The -adnp options are
-       therefore omitted from the usage summary above.
-
-       It is still permissible to specify  the  -e,  -i,  and  -k
+       The  <STRONG>-A</STRONG>,  <STRONG>-E</STRONG>,  <STRONG>-h</STRONG>, <STRONG>-u</STRONG> and <STRONG>-v</STRONG> options were deleted from the
+       <STRONG>tset</STRONG> utility in 4.4BSD.  None of them were  documented  in
+       4.3BSD and all are of limited utility at best.  The <STRONG>-a</STRONG>, -,
+       and                                                      -
+       options  are  similarly not documented or useful, but were
+       retained as they appear to be in widespread  use.   It  is
+       strongly recommended that any usage of these three options
+       be changed to use the <STRONG>-m</STRONG> option instead.   The  -n  option
+       remains,  but has no effect.  The <STRONG>-adnp</STRONG> options are there-
+       fore omitted from the usage summary above.
+
+       It is still permissible to specify  the  <STRONG>-e</STRONG>,  <STRONG>-i</STRONG>,  and  <STRONG>-k</STRONG>
        options  without arguments, although it is strongly recom-
        mended that such usage be fixed to explicitly specify  the
        character.
 
        As  of  4.4BSD,  executing <STRONG>tset</STRONG> as <STRONG>reset</STRONG> no longer implies
-       the -Q option.  Also, the interaction between the - option
+       the <STRONG>-Q</STRONG> option.  Also, the interaction between the - option
        and the <EM>terminal</EM> argument in some historic implementations
        of <STRONG>tset</STRONG> has been removed.
 
 
-
 </PRE>
 <H2>ENVIRONMENT</H2><PRE>
        The <STRONG>tset</STRONG> command uses the <STRONG>SHELL</STRONG> and <STRONG>TERM</STRONG> environment vari-
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                          <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index cb402ad8332fbb4be0c1509abea450d84c472cc2..1f19f09a3a947d9afa031ddcbdf5954da5939664 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+  * Copyright (c) 1998-2002,2003 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            *
@@ -27,8 +27,8 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * Author: Thomas E. Dickey &lt;dickey@clark.net&gt; 1996
-  * @Id: wresize.3x,v 1.7 2002/02/16 22:40:59 tom Exp @
+  * Author: Thomas E. Dickey 1996
+  * @Id: wresize.3x,v 1.8 2003/10/25 20:41:08 tom Exp @
 -->
 <HTML>
 <HEAD>
 <HR>
 <PRE>
 <!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>                                           <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>
+
+
+
 
 </PRE>
 <H2>NAME</H2><PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                                      <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>
index 3500e7a6f84636edb04b3297d8d917d9ba8cb15c..89f44dc5f7449399a4e161fa19ef7e4acced6deb 100644 (file)
@@ -1,11 +1,12 @@
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN">
 <!--
-  $Id: ncurses-intro.html,v 1.36 2002/07/06 15:50:36 juergen Exp $
+  $Id: ncurses-intro.html,v 1.39 2003/10/25 16:19:24 tom Exp $
 -->
 <HTML>
 <HEAD>
 <TITLE>Writing Programs with NCURSES</TITLE>
 <link rev="made" href="mailto:bugs-ncurses@gnu.org">
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 </HEAD>
 <BODY>
 
@@ -221,16 +222,11 @@ maintainer of this package is
 &lt;esr@snark.thyrsus.com&gt;
 wrote many of the new features in versions after 1.8.1
 and wrote most of this introduction.
-<A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">J&uuml;rgen Pfeifer</A>
+J&uuml;rgen Pfeifer
 wrote all of the menu and forms code as well as the
 <A HREF="http://www.adahome.com">Ada95</A> binding.
 Ongoing work is being done by
-<A HREF="mailto:dickey@herndon4.his.com">Thomas Dickey</A>
-and
-<A HREF="http://www.familiepfeifer.de/Contact.aspx?Lang=en">J&uuml;rgen Pfeifer</A>.
-<A HREF="mailto:florian@gnu.org">Florian La Roche</A>
-acts as the maintainer for the Free Software Foundation, which holds the
-copyright on ncurses.
+<A HREF="mailto:dickey@invisible-island.net">Thomas Dickey</A> (maintainer).
 Contact the current maintainers at
 <A HREF="mailto:bug-ncurses@gnu.org">bug-ncurses@gnu.org</A>.
 <P>
@@ -613,6 +609,7 @@ Presently, mouse event reporting works in the following environments:
 <li>xterm and similar programs such as rxvt.
 <li>Linux console, when configured with <CODE>gpm</CODE>(1), Alessandro
 Rubini's mouse server.
+<li>FreeBSD sysmouse (console)
 <li>OS/2 EMX
 </ul>
 <P>
@@ -2519,13 +2516,13 @@ By default, all options are on.  Here are the available option bits:
 <DL>
 <DT> O_NL_OVERLOAD
 <DD> Enable overloading of <CODE>REQ_NEW_LINE</CODE> as described in <A
-NAME="fedit">Editing Requests</A>.  The value of this option is
+href="#fedit">Editing Requests</A>.  The value of this option is
 ignored on dynamic fields that have not reached their size limit;
 these have no last line, so the circumstances for triggering a
 <CODE>REQ_NEXT_FIELD</CODE> never arise.
 <DT> O_BS_OVERLOAD
 <DD> Enable overloading of <CODE>REQ_DEL_PREV</CODE> as described in
-<A NAME="fedit">Editing Requests</A>.
+<A href="#fedit">Editing Requests</A>.
 </DL>
 
 The option values are bit-masks and can be composed with logical-or in
index 750777ede0b2a8b3cf4138e702a429e8eab2f60d..26bd444b63030373fb689c9fb5f10dd85bbd0b13 100644 (file)
@@ -177,10 +177,8 @@ Scope of This Document
    Eric S. Raymond <esr@snark.thyrsus.com> wrote many of the new features
    in  versions  after  1.8.1 and wrote most of this introduction. Jürgen
    Pfeifer  wrote  all  of  the  menu and forms code as well as the Ada95
-   binding.  Ongoing  work  is  being  done  by  Thomas Dickey and Jürgen
-   Pfeifer. Florian La Roche acts as the maintainer for the Free Software
-   Foundation,  which holds the copyright on ncurses. Contact the current
-   maintainers at bug-ncurses@gnu.org.
+   binding.  Ongoing  work  is  being done by Thomas Dickey (maintainer).
+   Contact the current maintainers at bug-ncurses@gnu.org.
 
    This  document  also describes the panels extension library, similarly
    modeled  on  the  SVr4  panels  facility.  This  library allows you to
@@ -535,6 +533,7 @@ static void finish(int sig)
      * xterm and similar programs such as rxvt.
      * Linux  console,  when  configured with gpm(1), Alessandro Rubini's
        mouse server.
+     * FreeBSD sysmouse (console)
      * OS/2 EMX
 
    The  mouse  interface  is  very  simple.  To  activate it, you use the
@@ -2346,9 +2345,9 @@ int form_opts(FORM *form);                /* form to query */
 
    O_NL_OVERLOAD
           Enable  overloading  of  REQ_NEW_LINE  as  described in Editing
-          Requests. The value of this option is ignored on dynamic fields
-          that  have  not  reached  their  size limit; these have no last
-          line,  so  the  circumstances  for  triggering a REQ_NEXT_FIELD
+          Requests.  The  value  of  this  option  is  ignored on dynamic
+          fields  that  have  not reached their size limit; these have no
+          last line, so the circumstances for triggering a REQ_NEXT_FIELD
           never arise.
 
    O_BS_OVERLOAD
index e55afcb55e4e758afffdb2cf304e1a9a8a28bec3..ca11c676570a87fc8a36fbe6b81ac8a8129f7a5e 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.36 2002/01/20 01:49:17 tom Exp $
+# $Id: Makefile.in,v 1.40 2003/11/01 22:44:33 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,1999,2000,2001,2002 Free Software Foundation, Inc.      #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -45,6 +45,9 @@
 SHELL          = /bin/sh
 THIS           = Makefile
 
+x              = @EXEEXT@
+o              = .@OBJEXT@
+
 MODEL          = @DFT_LWR_MODEL@
 DESTDIR                = @DESTDIR@
 srcdir         = @srcdir@
@@ -55,6 +58,11 @@ libdir               = @libdir@
 includedir     = @includedir@
 
 LIBTOOL                = @LIBTOOL@
+LIBTOOL_CLEAN  = @LIB_CLEAN@
+LIBTOOL_COMPILE        = @LIB_COMPILE@
+LIBTOOL_LINK   = @LIB_LINK@
+LIBTOOL_INSTALL        = @LIB_INSTALL@
+LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
 
 INSTALL                = @INSTALL@
 INSTALL_LIB    = @INSTALL@ @INSTALL_LIB@
@@ -84,7 +92,7 @@ CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
 
 CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
 
-LINK           = $(LIBTOOL) $(CC)
+LINK           = $(LIBTOOL_LINK) $(CC)
 LDFLAGS                = @LDFLAGS@ @LD_MODEL@ @LIBS@
 
 SHLIB_DIRS     = -L../lib
@@ -97,7 +105,7 @@ NCURSES_MINOR        = @NCURSES_MINOR@
 REL_VERSION    = @cf_cv_rel_version@
 ABI_VERSION    = @cf_cv_abi_version@
 
-RANLIB         = @RANLIB@
+RANLIB         = @LIB_PREP@
 
 IMPORT_LIB     = @IMPORT_LIB@
 SHARED_LIB     = @SHARED_LIB@
index 11c814605d6a08ebac1c81a10c9c99cf391257dc..ae2b9586cf612fc6bc0f98b9f05cb7972e323521 100644 (file)
@@ -1,3 +1,5 @@
+-- $Id: READ.ME,v 0.6 2003/10/25 15:12:53 tom Exp $
+-------------------------------------------------------------------------------
 This is a clone of the form library that is available with typical
 System V curses implementations (ETI).
 
@@ -10,7 +12,3 @@ For things that still need doing, see the TO-DO file in the top-level
 directory.
 
 Juergen Pfeifer
-
-Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
-
-
index 7e4eaaf7ddeee26359d2792acb69c87a52341e8e..e1fc20788b536a671d9f3d5ccefeaa82dcd7ffc8 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_arg.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_arg.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 6ce192e01305e400e58b8b446f49811adac16ef1..a7ba76594a62bbbb4d8fd21a11ba2659490878ca 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
+
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_attr.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_attr.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*----------------------------------------------------------------------------
   Field-Attribute manipulation routines
index 02192c282be246f02ad7dc212161c6454c14a09b..f4b308adcb9b01ddb19847f3c9b08f533da0d4d5 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
+
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_current.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_current.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 73e2e4cfae1944c21d38bfd2299c1f2757a87f68..32dc11ee275316e224c5c9b45338962488913c1c 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_def.c,v 1.14 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_def.c,v 1.17 2003/11/08 21:15:02 Jonathon.Gray Exp $")
 
 /* this can't be readonly */
 static FIELD default_field = {
@@ -74,11 +73,11 @@ NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field = &default_field;
 |                              int *err )
 |   
 |   Description   :  Create an argument structure for the specified type.
-|                    Use the type-dependant argument list to construct
+|                    Use the type-dependent argument list to construct
 |                    it.
 |
 |   Return Values :  Pointer to argument structure. Maybe NULL.
-|                    In case of an error in *err an errorcounter is increased. 
+|                    In case of an error in *err an error counter is increased. 
 +--------------------------------------------------------------------------*/
 NCURSES_EXPORT(TypeArgument*)
 _nc_Make_Argument
@@ -121,7 +120,7 @@ _nc_Make_Argument
 |                    type.
 |
 |   Return Values :  Pointer to argument structure. Maybe NULL.
-|                    In case of an error in *err an errorcounter is increased. 
+|                    In case of an error in *err an error counter is increased. 
 +--------------------------------------------------------------------------*/
 NCURSES_EXPORT(TypeArgument*)
 _nc_Copy_Argument
@@ -197,7 +196,7 @@ _nc_Free_Argument
 |   Description   :  Copy argument structure of field src to field dst
 |
 |   Return Values :  TRUE       - copy worked
-|                    FALSE      - error occured
+|                    FALSE      - error occurred
 +--------------------------------------------------------------------------*/
 NCURSES_EXPORT(bool)
 _nc_Copy_Type
index 31671791006716ef2600c3db35f3448a9ee10ec2..d16e4009492e977432d0bd00aeb995cf6e697be0 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_dup.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_dup.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index faaa4f458d17cf7e5de12a7eec77c70c2af42084..5102636fa6644d931752a3f4892f5ddee2569ad8 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_ftchoice.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_ftchoice.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 9535817bb8c05bbbee88ef2fb312899052b8dc6f..dfd8110e6d36bde92c67e3db617c09efd8c9e1b7 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_ftlink.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_ftlink.c,v 1.8 2003/11/08 20:45:36 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
@@ -47,7 +46,7 @@ MODULE_ID("$Id: fld_ftlink.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
 |                       E_BAD_ARGUMENT  - invalid arguments
 |                       E_SYSTEM_ERROR  - system error (no memory)
 |
-|   Return Values :  Fieldtype pointer or NULL if error occured.
+|   Return Values :  Fieldtype pointer or NULL if error occurred.
 +--------------------------------------------------------------------------*/
 NCURSES_EXPORT(FIELDTYPE *)
 link_fieldtype 
index c3826abdec3fa95ffb73ab847dec34ec6878a075..bdd2de57f43208998c87c28716c542dad761db4c 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_info.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_info.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 31bf0fd00e8dbafe5eea69820db57f36fbcfa2e7..064a9fbc9dafb2d6d08391245d7a537bbb92f853 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_just.c,v 1.7 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_just.c,v 1.8 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index ea7df28aaafa38225286ad45f1de0ad8a87ce8e9..b3cad0c3c63700cb0fa50b7b870ab62c3a20529e 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_link.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_link.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 1ed58176b889ae23f10b2b8ffeccc0862d7502ef..37521dc1c382c417bfcfbc8fd0554d92f70adee8 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_max.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_max.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 6bd355f94080b5d8327f0d087675da6c0a33387e..245aa7c719e124305d0bc606549c32ce7e636c06 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_move.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_move.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index bc80e3293b9ad2e115af13ab8e35909e2627ad0e..59cd1a6f7b2e41d1a09300bf8471f98d3c771b66 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_newftyp.c,v 1.7 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_newftyp.c,v 1.9 2003/11/08 20:45:36 tom Exp $")
 
 static FIELDTYPE const default_fieldtype = {
   0,                   /* status                                      */
@@ -64,7 +63,7 @@ NCURSES_EXPORT_VAR(const FIELDTYPE*) _nc_Default_FieldType = &default_fieldtype;
 |                       E_BAD_ARGUMENT  - invalid arguments
 |                       E_SYSTEM_ERROR  - system error (no memory)
 |
-|   Return Values :  Fieldtype pointer or NULL if error occured
+|   Return Values :  Fieldtype pointer or NULL if error occurred
 +--------------------------------------------------------------------------*/
 NCURSES_EXPORT(FIELDTYPE *)
 new_fieldtype (
index 585c391c4596d1db341480caaa757b86081245e4..575d172227db10f4b719a0dfec01f0c94cd46387 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
+
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_opts.c,v 1.8 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_opts.c,v 1.9 2003/10/25 15:17:08 tom Exp $")
 
 /*----------------------------------------------------------------------------
   Field-Options manipulation routines
index e635f488c33419a664ac38841fe68e16f634678e..7346973c5a5ea8c635997acf7a14f6c8b4a25ee6 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
+
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_pad.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_pad.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 7012961f25da263095404639a810ada121eaa693..f99a5e4614afb58e001433ce4176d1ed34340656 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_page.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_page.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 0cd255a7b687d4fef02338a5f1066291304502c9..be265b0c1471ad6453c06a3a67d532d6487c4f6f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_stat.c,v 1.8 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_stat.c,v 1.9 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index ee8731d1e618b8b8375e237c43c27faa933cdb11..aa889ea047323338aa6ac59d320186b7c0f36482 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_type.c,v 1.11 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_type.c,v 1.12 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index a81484f55c7ac2406dc56f203160654e78966867..19ff5453f999139c746d8c07f41ebfe675918a3b 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fld_user.c,v 1.10 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fld_user.c,v 1.11 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 57f63a30f72d114777dd7cb5c21c97ed5524a145..d03c819cb3c7ce8ba1bca927ecf1629aa595f217 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
+/* $Id: form.h,v 0.17 2003/11/08 20:39:08 tom Exp $ */
+
 #ifndef FORM_H
 #define FORM_H
 
@@ -68,7 +69,7 @@ typedef struct fieldnode {
   int                   drows;    /* dynamic rows               */
   int                   dcols;    /* dynamic cols               */
   int                   maxgrow;  /* maximum field growth       */
-  int                  nrow;     /* offscreen rows             */
+  int                  nrow;     /* off-screen rows            */
   short                        nbuf;     /* additional buffers         */
   short                        just;     /* justification              */
   short                        page;     /* page on form               */
@@ -208,7 +209,7 @@ typedef void (*Form_Hook)(FORM *);
 #define REQ_DEL_CHAR    (KEY_MAX + 34) /* delete char at cursor        */
 #define REQ_DEL_PREV    (KEY_MAX + 35) /* delete char before cursor    */
 #define REQ_DEL_LINE    (KEY_MAX + 36) /* delete line at cursor        */
-#define REQ_DEL_WORD    (KEY_MAX + 37) /* delete line at cursor        */
+#define REQ_DEL_WORD    (KEY_MAX + 37) /* delete word at cursor        */
 #define REQ_CLR_EOL     (KEY_MAX + 38) /* clear to end of line         */
 #define REQ_CLR_EOF     (KEY_MAX + 39) /* clear to end of field        */
 #define REQ_CLR_FIELD   (KEY_MAX + 40) /* clear entire field           */
index c1ca8e1939f835bece643963b785aabd86fa5970..11d382c0c1ea0a6cee26a1aeab4388bf9840be8c 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
+/* $Id: form.priv.h,v 0.11 2003/11/08 20:38:51 tom Exp $ */
+
 #include "mf_common.h"
 #include "form.h"
 
@@ -41,7 +42,7 @@
 
 /* field status values */
 #define _CHANGED         (0x01) /* Field has been changed                 */
-#define _NEWTOP          (0x02) /* Vertical scrolling occured             */
+#define _NEWTOP          (0x02) /* Vertical scrolling occurred            */
 #define _NEWPAGE        (0x04) /* field begins new page of form          */
 #define _MAY_GROW        (0x08) /* dynamic field may still grow           */
 
@@ -49,7 +50,7 @@
 #define _LINKED_TYPE     (0x01) /* Type is a linked type                  */
 #define _HAS_ARGS        (0x02) /* Type has arguments                     */
 #define _HAS_CHOICE      (0x04) /* Type has choice methods                */
-#define _RESIDENT        (0x08) /* Type is builtin                        */
+#define _RESIDENT        (0x08) /* Type is built-in                       */
 
 /* This are the field options required to be a selectable field in field
    navigation requests */
index 8e28235ffe65da2933f88c8c220ae200ad94f0bb..0790d9c5d42c6c2310fefb234acfdc3f879a18aa 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
+
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_cursor.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_cursor.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 1026cf4ffeabace26e19d7d267827c75475ade86..847d7d5a4d184b3ec4a3704539cd110015143167 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_data.c,v 1.8 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_data.c,v 1.10 2003/11/08 20:38:14 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
 |   Function      :  bool data_behind(const FORM *form)
 |   
 |   Description   :  Check for off-screen data behind. This is nearly trivial
-|                    becose the begin of a field is fixed.
+|                    because the beginning of a field is fixed.
 |
 |   Return Values :  TRUE   - there are off-screen data behind
 |                    FALSE  - there are no off-screen data behind
index ef6f9c9241b3b8b007642cf2a82dd41034bf1474..d49573cdcbf6fc653439f0b0c128a72b36d3a3ad 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_def.c,v 1.11 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_def.c,v 1.13 2003/11/08 20:37:53 tom Exp $")
 
 /* this can't be readonly */
 static FORM default_form = {
@@ -241,7 +240,7 @@ static int Connect_Fields(FORM  * form, FIELD ** fields)
 |                    If there are fields, position to first active field.
 |
 |   Return Values :  E_OK            - success
-|                    any other       - error occured
+|                    any other       - error occurred
 +--------------------------------------------------------------------------*/
 INLINE static int Associate_Fields(FORM  *form, FIELD **fields)
 {
@@ -268,7 +267,7 @@ INLINE static int Associate_Fields(FORM  *form, FIELD **fields)
 |   
 |   Description   :  Create new form with given array of fields.
 |
-|   Return Values :  Pointer to form. NULL if error occured.
+|   Return Values :  Pointer to form. NULL if error occurred.
 +--------------------------------------------------------------------------*/
 NCURSES_EXPORT(FORM *)
 new_form (FIELD ** fields)
index c9275f7e51625e0fea28eb7b0799aed67c9b5a13..9de28eeabbd3aa8770d2bbfc6a9aa137cad8d35f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
+
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_driver.c,v 1.39 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_driver.c,v 1.45 2003/12/06 17:22:42 tom Exp $")
 
 /*----------------------------------------------------------------------------
   This is the core module of the form library. It contains the majority
@@ -42,7 +42,7 @@ MODULE_ID("$Id: frm_driver.c,v 1.39 2002/07/06 15:33:27 juergen Exp $")
   all the functions in this module depends on some others in the module,
   so it makes no sense to split them into separate files because they
   will always be linked together. The only acceptable concern is turnaround
-  time for this module, but now we have all Pentiums or Riscs, so what!
+  time for this module, but now we have all Pentiums or RISCs, so what!
 
   The driver routines are grouped into nine generic categories:
 
@@ -55,10 +55,10 @@ MODULE_ID("$Id: frm_driver.c,v 1.39 2002/07/06 15:33:27 juergen Exp $")
    c)   Intra-Field Navigation     ( all functions prefixed by IFN_ )
         The current position in the current field is changed. 
    d)   Vertical Scrolling         ( all functions prefixed by VSC_ )
-        Esseantially this is a specialization of Intra-Field navigation.
+        Essentially this is a specialization of Intra-Field navigation.
         It has to check for a multi-line field.
    e)   Horizontal Scrolling       ( all functions prefixed by HSC_ )
-        Esseantially this is a specialization of Intra-Field navigation.
+        Essentially this is a specialization of Intra-Field navigation.
         It has to check for a single-line field.
    f)   Field Editing              ( all functions prefixed by FE_ )
         The content of the current field is changed
@@ -79,11 +79,11 @@ MODULE_ID("$Id: frm_driver.c,v 1.39 2002/07/06 15:33:27 juergen Exp $")
 
 /*
 Some options that may effect compatibility in behavior to SVr4 forms,
-but they are here to allow a more intuitive and user friendly behaviour of
+but they are here to allow a more intuitive and user friendly behavior of
 our form implementation. This doesn't affect the API, so we feel it is
 uncritical.
 
-The initial implementation tries to stay very close with the behaviour
+The initial implementation tries to stay very close with the behavior
 of the original SVr4 implementation, although in some areas it is quite
 clear that this isn't the most appropriate way. As far as possible this
 sources will allow you to build a forms lib that behaves quite similar
@@ -91,9 +91,9 @@ to SVr4, but now and in the future we will give you better options.
 Perhaps at some time we will make this configurable at runtime.
 */
 
-/* Implement a more user-friendly previous/next word behaviour */
+/* Implement a more user-friendly previous/next word behavior */
 #define FRIENDLY_PREV_NEXT_WORD (1)
-/* Fix the wrong behaviour for forms with all fields inactive */
+/* Fix the wrong behavior for forms with all fields inactive */
 #define FIX_FORM_INACTIVE_BUG (1)
 /* Allow dynamic field growth also when navigating past the end */
 #define GROW_IF_NAVIGATE (1)
@@ -150,7 +150,7 @@ static int FE_Delete_Previous(FORM *);
 #define Address_Of_Current_Position_In_Buffer(form) \
   Address_Of_Current_Position_In_Nth_Buffer(form,0)
 
-/* Logic to decide wether or not a field is actually a field with
+/* Logic to decide whether or not a field is actually a field with
    vertical or horizontal scrolling */
 #define Is_Scroll_Field(field)          \
    (((field)->drows > (field)->rows) || \
@@ -316,7 +316,7 @@ INLINE static void Adjust_Cursor_Position(FORM * form, const char * pos)
 |                                      const FIELD  * field,
 |                                      WINDOW * win)
 |   
-|   Description   :  Copy the buffer to the window. If its a multiline
+|   Description   :  Copy the buffer to the window. If it is a multi-line
 |                    field, the buffer is split to the lines of the
 |                    window without any editing.
 |
@@ -642,7 +642,7 @@ _nc_Refresh_Current_Field (FORM * form)
                      0);
            }
          else
-           { /* A multiline, i.e. vertical scrolling field */
+           { /* A multi-line, i.e. vertical scrolling field */
              int row_after_bottom,first_modified_row,first_unmodified_row;
 
              if (field->drows > field->rows)
@@ -918,7 +918,7 @@ static int Synchronize_Field(FIELD * field)
 |   
 |   Description   :  Propagate the Synchronize_Field function to all linked
 |                    fields. The first error that occurs in the sequence
-|                    of updates is the returnvalue.
+|                    of updates is the return value.
 |
 |   Return Values :  E_OK                - success
 |                    E_BAD_ARGUMENT      - invalid field pointer 
@@ -1012,7 +1012,7 @@ _nc_Synchronize_Attributes (FIELD * field)
 |   
 |   Description   :  If a fields options have changed, this routine is
 |                    called to propagate these changes to the screen and
-|                    to really change the behaviour of the field.
+|                    to really change the behavior of the field.
 |
 |   Return Values :  E_OK                - success
 |                    E_BAD_ARGUMENT      - invalid field pointer 
@@ -1089,7 +1089,7 @@ _nc_Synchronize_Options
              (!single_line_field && (field->drows < field->maxgrow)))
            {
              field->status |= _MAY_GROW;
-             /* a field with justification now changes its behaviour,
+             /* a field with justification now changes its behavior,
                 so we must redisplay it */
              if (single_line_field                 &&
                  (field->just != NO_JUSTIFICATION) &&
@@ -1217,7 +1217,7 @@ _nc_Set_Current_Field
 |   Facility      :  libnform  
 |   Function      :  static int IFN_Next_Character(FORM * form)
 |   
-|   Description   :  Move to the next character in the field. In a multiline
+|   Description   :  Move to the next character in the field. In a multi-line
 |                    field this wraps at the end of the line.
 |
 |   Return Values :  E_OK                - success
@@ -1255,7 +1255,7 @@ static int IFN_Next_Character(FORM * form)
 |   Function      :  static int IFN_Previous_Character(FORM * form)
 |   
 |   Description   :  Move to the previous character in the field. In a 
-|                    multiline field this wraps and the beginning of the 
+|                    multi-line field this wraps and the beginning of the 
 |                    line.
 |
 |   Return Values :  E_OK                - success
@@ -1342,7 +1342,7 @@ static int IFN_Next_Word(FORM * form)
   Synchronize_Buffer(form);
 
   /* Go to the first whitespace after the current position (including
-     current position). This is then the startpoint to look for the
+     current position). This is then the starting point to look for the
     next non-blank data */
   s = Get_First_Whitespace_Character(bp,Buffer_Length(field) -
                                     (int)(bp - field->buf));
@@ -1436,7 +1436,7 @@ static int IFN_Beginning_Of_Field(FORM * form)
 |   
 |   Description   :  Place the cursor after the last non-pad character in
 |                    the field. If the field occupies the last position in
-|                    the buffer, the cursos is positioned on the last 
+|                    the buffer, the cursor is positioned on the last 
 |                    character.
 |
 |   Return Values :  E_OK              - success
@@ -1656,7 +1656,7 @@ static int VSC_Generic(FORM *form, int lines)
 |   
 |   Description   :  Performs the generic vertical scrolling routines. 
 |                    This has to check for a multi-line field and to set
-|                    the _NEWTOP flag if scrolling really occured.
+|                    the _NEWTOP flag if scrolling really occurred.
 |
 |   Return Values :  Propagated error code from low-level driver calls
 +--------------------------------------------------------------------------*/
@@ -2056,7 +2056,7 @@ static int Insert_String(FORM *form, int row, char *txt, int len)
 |                    the wrapping.
 |
 |   Return Values :  E_OK              - no wrapping required or wrapping
-|                                        was successfull
+|                                        was successful
 |                    E_REQUEST_DENIED  -
 |                    E_SYSTEM_ERROR    - some system error
 +--------------------------------------------------------------------------*/
@@ -2130,7 +2130,7 @@ static int Wrapping_Not_Necessary_Or_Wrapping_Ok(FORM * form)
 |   
 |   Description   :  Generic routine for field editing requests. The driver
 |                    routines are only called for editable fields, the
-|                    _WINDOW_MODIFIED flag is set if editing occured.
+|                    _WINDOW_MODIFIED flag is set if editing occurred.
 |                    This is somewhat special due to the overload semantics
 |                    of the NEW_LINE and DEL_PREV requests.
 |
@@ -2141,7 +2141,7 @@ static int Field_Editing(int (* const fct) (FORM *), FORM * form)
   int res = E_REQUEST_DENIED;
 
   /* We have to deal here with the specific case of the overloaded 
-     behaviour of New_Line and Delete_Previous requests.
+     behavior of New_Line and Delete_Previous requests.
      They may end up in navigational requests if we are on the first
      character in a field. But navigation is also allowed on non-
      editable fields.
@@ -2205,6 +2205,7 @@ static int FE_New_Line(FORM * form)
        {
          if (!(form->opts & O_NL_OVERLOAD))
            return(E_REQUEST_DENIED);
+         wmove(form->w,form->currow,form->curcol);
          wclrtoeol(form->w);
          /* we have to set this here, although it is also
             handled in the generic routine. The reason is,
@@ -2221,6 +2222,7 @@ static int FE_New_Line(FORM * form)
                 a single-line field */
              return(E_SYSTEM_ERROR);
            }
+         wmove(form->w,form->currow,form->curcol);
          wclrtoeol(form->w);
          form->currow++;
          form->curcol = 0;
@@ -2248,6 +2250,7 @@ static int FE_New_Line(FORM * form)
          
          bp= Address_Of_Current_Position_In_Buffer(form);
          t = After_End_Of_Data(bp,field->dcols - form->curcol);
+         wmove(form->w,form->currow,form->curcol);
          wclrtoeol(form->w);
          form->currow++;
          form->curcol=0;
@@ -2338,6 +2341,7 @@ static int FE_Insert_Line(FORM * form)
 +--------------------------------------------------------------------------*/
 static int FE_Delete_Character(FORM * form)
 {
+  wmove(form->w,form->currow,form->curcol);
   wdelch(form->w);
   return E_OK;
 }
@@ -2378,6 +2382,7 @@ static int FE_Delete_Previous(FORM * form)
       if ((int)(this_end-this_line) > 
          (field->cols-(int)(prev_end-prev_line))) 
        return E_REQUEST_DENIED;
+      wmove(form->w,form->currow,form->curcol);
       wdeleteln(form->w);
       Adjust_Cursor_Position(form,prev_end);
       wmove(form->w,form->currow,form->curcol);
@@ -2455,20 +2460,22 @@ static int FE_Delete_Word(FORM * form)
 +--------------------------------------------------------------------------*/
 static int FE_Clear_To_End_Of_Line(FORM * form)
 {
+  wmove(form->w,form->currow,form->curcol);
   wclrtoeol(form->w);
   return E_OK;
 }
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
-|   Function      :  static int FE_Clear_To_End_Of_Form(FORM * form)
+|   Function      :  static int FE_Clear_To_End_Of_Field(FORM * form)
 |   
-|   Description   :  Clear to end of form.
+|   Description   :  Clear to end of field.
 |
 |   Return Values :  E_OK   - success
 +--------------------------------------------------------------------------*/
-static int FE_Clear_To_End_Of_Form(FORM * form)
+static int FE_Clear_To_End_Of_Field(FORM * form)
 {
+  wmove(form->w,form->currow,form->curcol);
   wclrtobot(form->w);
   return E_OK;
 }
@@ -2903,20 +2910,20 @@ INLINE static FIELD *Sorted_Previous_Field(FIELD * field)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
-|   Function      :  static FIELD *Left_Neighbour_Field(FIELD * field)
+|   Function      :  static FIELD *Left_Neighbor_Field(FIELD * field)
 |   
-|   Description   :  Get the left neighbour of the field on the same line
+|   Description   :  Get the left neighbor of the field on the same line
 |                    and the same page. Cycles through the line.
 |
-|   Return Values :  Pointer to left neighbour field.
+|   Return Values :  Pointer to left neighbor field.
 +--------------------------------------------------------------------------*/
-INLINE static FIELD *Left_Neighbour_Field(FIELD * field)
+INLINE static FIELD *Left_Neighbor_Field(FIELD * field)
 {
   FIELD *field_on_page = field;
 
-  /* For a field that has really a left neighbour, the while clause
+  /* For a field that has really a left neighbor, the while clause
      immediately fails and the loop is left, positioned at the right
-     neighbour. Otherwise we cycle backwards through the sorted fieldlist
+     neighbor. Otherwise we cycle backwards through the sorted field list
      until we enter the same line (from the right end).
   */
   do
@@ -2929,18 +2936,18 @@ INLINE static FIELD *Left_Neighbour_Field(FIELD * field)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
-|   Function      :  static FIELD *Right_Neighbour_Field(FIELD * field)
+|   Function      :  static FIELD *Right_Neighbor_Field(FIELD * field)
 |   
-|   Description   :  Get the right neighbour of the field on the same line
+|   Description   :  Get the right neighbor of the field on the same line
 |                    and the same page.
 |
-|   Return Values :  Pointer to right neighbour field.
+|   Return Values :  Pointer to right neighbor field.
 +--------------------------------------------------------------------------*/
-INLINE static FIELD *Right_Neighbour_Field(FIELD * field)
+INLINE static FIELD *Right_Neighbor_Field(FIELD * field)
 {
   FIELD *field_on_page = field;
 
-  /* See the comments on Left_Neighbour_Field to understand how it works */
+  /* See the comments on Left_Neighbor_Field to understand how it works */
   do
     {
       field_on_page = Sorted_Next_Field(field_on_page);
@@ -2951,18 +2958,18 @@ INLINE static FIELD *Right_Neighbour_Field(FIELD * field)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
-|   Function      :  static FIELD *Upper_Neighbour_Field(FIELD * field)
+|   Function      :  static FIELD *Upper_Neighbor_Field(FIELD * field)
 |   
 |   Description   :  Because of the row-major nature of sorting the fields,
-|                    its more difficult to define whats the upper neighbour
+|                    it is more difficult to define whats the upper neighbor
 |                    field really means. We define that it must be on a
 |                    'previous' line (cyclic order!) and is the rightmost
 |                    field laying on the left side of the given field. If
 |                    this set is empty, we take the first field on the line.
 |
-|   Return Values :  Pointer to the upper neighbour field.
+|   Return Values :  Pointer to the upper neighbor field.
 +--------------------------------------------------------------------------*/
-static FIELD *Upper_Neighbour_Field(FIELD * field)
+static FIELD *Upper_Neighbor_Field(FIELD * field)
 {
   FIELD *field_on_page = field;
   int frow = field->frow;
@@ -2998,18 +3005,18 @@ static FIELD *Upper_Neighbour_Field(FIELD * field)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
-|   Function      :  static FIELD *Down_Neighbour_Field(FIELD * field)
+|   Function      :  static FIELD *Down_Neighbor_Field(FIELD * field)
 |   
 |   Description   :  Because of the row-major nature of sorting the fields,
-|                    its more difficult to define whats the down neighbour
+|                    its more difficult to define whats the down neighbor
 |                    field really means. We define that it must be on a
 |                    'next' line (cyclic order!) and is the leftmost
 |                    field laying on the right side of the given field. If
 |                    this set is empty, we take the last field on the line.
 |
-|   Return Values :  Pointer to the upper neighbour field.
+|   Return Values :  Pointer to the upper neighbor field.
 +--------------------------------------------------------------------------*/
-static FIELD *Down_Neighbour_Field(FIELD * field)
+static FIELD *Down_Neighbor_Field(FIELD * field)
 {
   FIELD *field_on_page = field;
   int frow = field->frow;
@@ -3053,7 +3060,7 @@ static FIELD *Down_Neighbour_Field(FIELD * field)
 |                                           int (* const fct) (FORM *),
 |                                           FORM * form)
 |   
-|   Description   :  Generic behaviour for changing the current field, the
+|   Description   :  Generic behavior for changing the current field, the
 |                    field is left and a new field is entered. So the field
 |                    must be validated and the field init/term hooks must
 |                    be called.
@@ -3216,7 +3223,7 @@ static int FN_Sorted_Last_Field(FORM * form)
 static int FN_Left_Field(FORM * form)
 {
   return _nc_Set_Current_Field(form,
-                              Left_Neighbour_Field(form->current));
+                              Left_Neighbor_Field(form->current));
 }
 
 /*---------------------------------------------------------------------------
@@ -3232,16 +3239,16 @@ static int FN_Left_Field(FORM * form)
 static int FN_Right_Field(FORM * form)
 {
   return _nc_Set_Current_Field(form,
-                              Right_Neighbour_Field(form->current));
+                              Right_Neighbor_Field(form->current));
 }
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
 |   Function      :  static int FN_Up_Field(FORM * form)
 |   
-|   Description   :  Get the upper neighbour of the current field. This
+|   Description   :  Get the upper neighbor of the current field. This
 |                    cycles through the page. See the comments of the
-|                    Upper_Neighbour_Field function to understand how
+|                    Upper_Neighbor_Field function to understand how
 |                    'upper' is defined. 
 |
 |   Return Values :  E_OK            - success
@@ -3250,16 +3257,16 @@ static int FN_Right_Field(FORM * form)
 static int FN_Up_Field(FORM * form)
 {
   return _nc_Set_Current_Field(form,
-                              Upper_Neighbour_Field(form->current));
+                              Upper_Neighbor_Field(form->current));
 }
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
 |   Function      :  static int FN_Down_Field(FORM * form)
 |   
-|   Description   :  Get the down neighbour of the current field. This
+|   Description   :  Get the down neighbor of the current field. This
 |                    cycles through the page. See the comments of the
-|                    Down_Neighbour_Field function to understand how
+|                    Down_Neighbor_Field function to understand how
 |                    'down' is defined. 
 |
 |   Return Values :  E_OK            - success
@@ -3268,7 +3275,7 @@ static int FN_Up_Field(FORM * form)
 static int FN_Down_Field(FORM * form)
 {
   return _nc_Set_Current_Field(form,
-                              Down_Neighbour_Field(form->current));
+                              Down_Neighbor_Field(form->current));
 }
 /*----------------------------------------------------------------------------
   END of Field Navigation routines 
@@ -3284,7 +3291,7 @@ static int FN_Down_Field(FORM * form)
 |                                          int page,
 |                                          FIELD * field)
 |   
-|   Description   :  Make the given page nr. the current page and make
+|   Description   :  Make the given page number the current page and make
 |                    the given field the current field on the page. If
 |                    for the field NULL is given, make the first field on
 |                    the page the current field. The routine acts only
@@ -3366,7 +3373,7 @@ INLINE static int Previous_Page_Number(const FORM * form)
 |                                               int (* const fct) (FORM *),
 |                                               FORM * form)
 |   
-|   Description   :  Generic behaviour for changing a page. This means
+|   Description   :  Generic behavior for changing a page. This means
 |                    that the field is left and a new field is entered.
 |                    So the field must be validated and the field init/term
 |                    hooks must be called. Because also the page is changed,
@@ -3598,7 +3605,7 @@ static const Binding_Info bindings[MAX_FORM_COMMAND - MIN_FORM_COMMAND + 1] =
   { REQ_DEL_LINE     |ID_FE  ,FE_Delete_Line},
   { REQ_DEL_WORD     |ID_FE  ,FE_Delete_Word},
   { REQ_CLR_EOL      |ID_FE  ,FE_Clear_To_End_Of_Line},
-  { REQ_CLR_EOF      |ID_FE  ,FE_Clear_To_End_Of_Form},
+  { REQ_CLR_EOF      |ID_FE  ,FE_Clear_To_End_Of_Field},
   { REQ_CLR_FIELD    |ID_FE  ,FE_Clear_Field},
   
   { REQ_OVL_MODE     |ID_EM  ,EM_Overlay_Mode},
@@ -3785,7 +3792,7 @@ set_field_buffer
                           (int)(1 + (vlen-len)/((field->rows+field->nrow)*field->cols))))
            RETURN(E_SYSTEM_ERROR);
 
-         /* in this case we also have to check, wether or not the remaining
+         /* in this case we also have to check, whether or not the remaining
             characters in value are also printable for buffer 0. */
          if (buffer==0)
            {
@@ -3802,7 +3809,7 @@ set_field_buffer
   p   = Address_Of_Nth_Buffer(field,buffer);
 
 #if HAVE_MEMCCPY
-  s = memccpy(p,value,0,len);
+  s = (char *) memccpy(p, value, 0, len);
 #else
   for(s=(char *)value; *s && (s < (value+len)); s++)
     p[s-value] = *s;
index 1af3d084cabaa0275178a22e6161005e6d95fccb..367cf5fafb34fa056db6533c841a13a5784d6139 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_hook.c,v 1.10 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_hook.c,v 1.11 2003/10/25 15:17:08 tom Exp $")
 
 /* "Template" macro to generate function to set application specific hook */
 #define GEN_HOOK_SET_FUNCTION( typ, name ) \
index 22ca3a1e1176090a5831081d687bb276c68f3f42..0b8032d12511a19944244385fd62b6aca7d6efa2 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_opts.c,v 1.10 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_opts.c,v 1.11 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index b1a958e1629ce3578a6e9dafb292cdf16dcc9704..354c9aea07ee31d3389e9cf4f6aa589ff9ac6c05 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_page.c,v 1.7 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_page.c,v 1.8 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index ac1aa1c2cb68b58e6521e289716bdd9d0c775dee..05342bb27235bc6df064024017ec71cc450689ca 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
+
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_post.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_post.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index e7d5aa4a8e828829884d4d157f5d3555f9577bf9..80d62c19c3b50a58ad814f923f6d005c312c3435 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_req_name.c,v 1.9 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_req_name.c,v 1.10 2003/10/25 15:17:08 tom Exp $")
 
 static const char *request_names[ MAX_FORM_COMMAND - MIN_FORM_COMMAND + 1 ] = {
   "NEXT_PAGE"   ,
index e86df103999128b4a7ecec1bca25bfa0ef84a826..7ef9c64b9431a8fac64b65fb331dfad83717c0b6 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_scale.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_scale.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index 1c33930e65d43782973aede0b8606df0ae135d79..b20c788d76588d6fd6878db4dc128eb05eb24f59 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_sub.c,v 1.6 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_sub.c,v 1.7 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index a9b6b397d471c14c4c2458d36f036b25e9dd9c49..f75aa912775a3ea9394fa9f9f811b953624e71fa 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_user.c,v 1.10 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_user.c,v 1.11 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index b765d33db1a968f59212b171c50f43a5da891aec..6cdfdd960448ae4b1cd0af753c449801aea2ad0f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: frm_win.c,v 1.10 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: frm_win.c,v 1.11 2003/10/25 15:17:08 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnform  
index bf16c66d472085dbeb6f5930b292820324126fd6..7eb5a788ecd367443b9d41fd52f7ef5814252788 100644 (file)
@@ -8,13 +8,12 @@
 /***************************************************************************
 *                                                                          *
 *  Author : Juergen Pfeifer                                                *
-*  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en              *
 *                                                                          *
 ***************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fty_alnum.c,v 1.11 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fty_alnum.c,v 1.12 2003/10/25 14:54:48 tom Exp $")
 
 typedef struct {
   int width;
index aa5c7c7d08f9de6d7b2b56ffc4a966c30f3dd150..5796ab7f9773d7e541ef5751c83e42c6791515cf 100644 (file)
@@ -8,13 +8,12 @@
 /***************************************************************************
 *                                                                          *
 *  Author : Juergen Pfeifer                                                *
-*  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en              *
 *                                                                          *
 ***************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fty_alpha.c,v 1.11 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fty_alpha.c,v 1.12 2003/10/25 14:54:48 tom Exp $")
 
 typedef struct {
   int width;
index ab256db1ef14cba7c8e290b4401258860925a207..95d96d4a3887d14d03d9048c28a38786ee7c3eee 100644 (file)
@@ -8,13 +8,12 @@
 /***************************************************************************
 *                                                                          *
 *  Author : Juergen Pfeifer                                                *
-*  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en              *
 *                                                                          *
 ***************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fty_enum.c,v 1.16 2002/07/13 11:35:08 juergen Exp $")
+MODULE_ID("$Id: fty_enum.c,v 1.18 2003/11/08 20:25:29 tom Exp $")
 
 typedef struct {
   char **kwds;
@@ -102,7 +101,7 @@ static void Free_Enum_Type(void * argp)
 |                                       const unsigned char * buf,
 |                                       bool  ccase )
 |   
-|   Description   :  Check wether or not the text in 'buf' matches the
+|   Description   :  Check whether or not the text in 'buf' matches the
 |                    text in 's', at least partial.
 |
 |   Return Values :  NOMATCH   - buffer doesn't match
index 61ad9e429a5faa159bbd229d0f1c4b9c21d9dcdd..5f5c5ab066b227b640331b37fdb10da27b33ad8e 100644 (file)
@@ -8,13 +8,12 @@
 /***************************************************************************
 *                                                                          *
 *  Author : Juergen Pfeifer                                                *
-*  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en              *
 *                                                                          *
 ***************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fty_int.c,v 1.12 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fty_int.c,v 1.13 2003/10/25 14:54:48 tom Exp $")
 
 typedef struct {
   int precision;
index db4d648c5f4467c3690c7147ac46c5750ff7bb35..6bc95c951b237260155345b1441d147de7feb508 100644 (file)
@@ -8,13 +8,12 @@
 /***************************************************************************
 *                                                                          *
 *  Author : Juergen Pfeifer                                                *
-*  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en              *
 *                                                                          *
 ***************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fty_num.c,v 1.15 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fty_num.c,v 1.16 2003/10/25 14:54:48 tom Exp $")
 
 #if HAVE_LOCALE_H
 #include <locale.h>
index 6cb69d04675254dfe3547b3382b01151123feef3..c36d1743b8d3ecd45f29dd8ed00ae3c67876eda4 100644 (file)
@@ -8,13 +8,12 @@
 /***************************************************************************
 *                                                                          *
 *  Author : Juergen Pfeifer                                                *
-*  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en              *
 *                                                                          *
 ***************************************************************************/
 
 #include "form.priv.h"
 
-MODULE_ID("$Id: fty_regex.c,v 1.16 2002/07/06 15:33:27 juergen Exp $")
+MODULE_ID("$Id: fty_regex.c,v 1.17 2003/10/25 14:54:48 tom Exp $")
 
 #if HAVE_REGEX_H_FUNCS /* We prefer POSIX regex */
 #include <regex.h>
index 449ffe1dcab17aa496f08cd98ee1d59fcaeb6360..e43d44effb09832878cfa963ff864929c36a586c 100644 (file)
@@ -1,5 +1,5 @@
 ##############################################################################
-# Copyright (c) 2002 Free Software Foundation, Inc.                          #
+# Copyright (c) 2002,2003 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"), #
 #
 # Author: Thomas Dickey
 #
-# $Id: Caps.hpux11,v 1.2 2002/07/07 00:11:56 tom Exp $
+# $Id: Caps.hpux11,v 1.3 2003/11/15 20:27:40 tom Exp $
 #
 # This is an adaptation of ncurses' termcap/terminfo capability table, which
-# is designed to align with AIX 4.x's terminfo.
+# is designed to align with HPUX 11.x's terminfo.
 #
 # This table is used to generate initializers for tables that drive tic,
 # infocmp, and the library compilation code used to support the termcap 
@@ -230,6 +230,7 @@ dest_tabs_magic_smso                xt      bool    xt      -       -       YBCGE   tabs destructive, magic so char (t106
 tilde_glitch                   hz      bool    hz      -       -       YB-GE   cannot print ~'s (hazeltine)
 transparent_underline          ul      bool    ul      -       -       YBCGE   underline character overstrikes
 xon_xoff                       xon     bool    xo      -       -       YB---   terminal uses xon/xoff handshaking
+# end booleans for HPUX 9, 10 (non-color curses)
 needs_xon_xoff                 nxon    bool    nx      -       -       -----   padding will not work, xon/xoff required
 prtr_silent                    mc5i    bool    5i      -       -       -----   printer will not echo on screen
 hard_cursor                    chts    bool    HC      -       -       -----   cursor is hard to see
@@ -267,6 +268,7 @@ magic_cookie_glitch         xmc     num     sg      -       -       YBCGE   number of blank characters left by sms
 padding_baud_rate              pb      num     pb      -       -       YB-GE   lowest baud rate where padding needed
 virtual_terminal               vt      num     vt      -       -       YB---   virtual terminal number (CB/unix)
 width_status_line              wsl     num     ws      -       -       YB-G-   number of columns in status line
+# end numbers for HPUX 9, 10 (non-color curses)
 num_labels                     nlab    num     Nl      -       -       -----   number of labels on screen
 label_height                   lh      num     lh      -       -       -----   rows in each label
 label_width                    lw      num     lw      -       -       -----   columns in each label
@@ -531,6 +533,7 @@ key_f60                             kf60    str     Fo      KEY_F(60)       -       ----E   F60 function key
 key_f61                                kf61    str     Fp      KEY_F(61)       -       ----E   F61 function key
 key_f62                                kf62    str     Fq      KEY_F(62)       -       ----E   F62 function key
 key_f63                                kf63    str     Fr      KEY_F(63)       -       ----E   F63 function key
+# end of strings in HPUX 9
 char_padding                   rmp     str     rP      -               -       -----   like ip but when in insert mode
 acs_chars                      acsc    str     ac      -               -       -----   graphics charset pairs, based on vt100
 key_btab                       kcbt    str     kB      KEY_BTAB        0541    -----   back-tab key
index 655078b924cfcf13d3f655e92aa73cff4971abec..b3cb4f7f72cbd6b721a2d48a0d7e6dc5f5582814 100755 (executable)
@@ -1,7 +1,7 @@
 #! /bin/sh
-# $Id: MKkey_defs.sh,v 1.10 2002/09/28 23:32:16 tom Exp $
+# $Id: MKkey_defs.sh,v 1.14 2003/12/06 17:10:09 tom Exp $
 ##############################################################################
-# Copyright (c) 2001,2002 Free Software Foundation, Inc.                     #
+# Copyright (c) 2001-2002,2003 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"), #
@@ -30,7 +30,7 @@
 #
 # MKkey_defs.sh -- generate function-key definitions for curses.h
 #
-# Author: Thomas E. Dickey <dickey@herndon4.his.com> 2001
+# Author: Thomas E. Dickey 2001
 #
 # Extract function-key definitions from the Caps file
 #
@@ -49,10 +49,14 @@ trap 'rm -f $data pass[1234]_$$' 0 1 2 5 15
 if sort -k 6 $DATA >$data 2>/dev/null
 then
        # POSIX
-       sed -e 's/[     ]\+/    /g' < $DATA |sort -n -k 6 >$data
-else
+       sed -e 's/[     ][      ]*/     /g' < $DATA |sort -n -k 6 >$data
+elif sort -n +5 $DATA >$data 2>/dev/null
+then
        # SunOS (and SVr4, marked as obsolete but still recognized)
-       sed -e 's/[     ]\+/    /g' < $DATA |sort -n +5 >$data
+       sed -e 's/[     ][      ]*/     /g' < $DATA |sort -n +5 >$data
+else
+       echo "Your sort utility is broken.  Please install one that works." >&2
+       exit 1
 fi
 
 # add keys that we generate automatically:
index 3ca08c33dd31c7e183bbb6be92f3331c6b2b3dca..4aac86554b55822d693d88a85c1f7858555e48c9 100755 (executable)
@@ -1,5 +1,5 @@
 #! /bin/sh
-# $Id: MKncurses_def.sh,v 1.1 2000/09/02 17:37:35 tom Exp $
+# $Id: MKncurses_def.sh,v 1.2 2003/10/25 16:19:46 tom Exp $
 ##############################################################################
 # Copyright (c) 2000 Free Software Foundation, Inc.                          #
 #                                                                            #
@@ -30,7 +30,7 @@
 #
 # MKncurses_def.sh -- generate fallback definitions for ncurses_cfg.h
 #
-# Author: Thomas E. Dickey <dickey@herndon4.his.com> 2000
+# Author: Thomas E. Dickey 2000
 #
 # Given the choice between constructs such as
 #
index 8243aea52dbef8cfd3cf8641d949ac6a7438b813..6cf0445cbb3f9a1a6372c94557ef66be45f3709f 100644 (file)
@@ -1,6 +1,6 @@
 BEGIN          {
                    print  "/****************************************************************************"
-                   print  " * Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.         *"
+                   print  " * Copyright (c) 1998-2001,2003 Free Software Foundation, Inc.              *"
                    print  " *                                                                          *"
                    print  " * Permission is hereby granted, free of charge, to any person obtaining a  *"
                    print  " * copy of this software and associated documentation files (the            *"
@@ -30,9 +30,10 @@ BEGIN                {
                    print  "/****************************************************************************/"
                    print  "/* Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995                */"
                    print  "/*    and: Eric S. Raymond <esr@snark.thyrsus.com>                          */"
+                   print  "/*    and: Thomas E. Dickey                        1995-2003                */"
                    print  "/****************************************************************************/"
                    print  ""
-                   print  "/* $Id: MKterm.h.awk.in,v 1.41 2001/12/23 01:04:38 tom Exp $ */"
+                   print  "/* $Id: MKterm.h.awk.in,v 1.42 2003/12/27 19:09:16 tom Exp $ */"
                    print  ""
                    print  "/*"
                    print  "**  term.h -- Definition of struct term"
@@ -224,6 +225,7 @@ END         {
                        print  "    TTY         Ottyb,          /* original state of the terminal */"
                        print  "                Nttyb;          /* current state of the terminal */"
                        print  "    int         _baudrate;      /* used to compute padding */"
+                       print  "    char *      _termname;      /* used for termname() */"
                        print  "} TERMINAL;"
                        print  ""
                        print  "extern NCURSES_EXPORT_VAR(TERMINAL *) cur_term;"
index 8b2b622338c83a2314c9a69fa6347dd15815fdfd..3b8696014d211c3f7f2711bb78cdb606467159f7 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2003,2004 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            *
@@ -32,7 +32,7 @@
  *     and: Thomas E. Dickey 1996-on                                        *
  ****************************************************************************/
 
-/* $Id: curses.h.in,v 1.134 2002/09/28 15:08:06 tom Exp $ */
+/* $Id: curses.h.in,v 1.148 2004/01/14 23:50:12 tom Exp $ */
 
 #ifndef __NCURSES_H
 #define __NCURSES_H
@@ -125,18 +125,21 @@ typedef unsigned @cf_cv_typeof_chtype@ chtype;
 
 typedef @cf_cv_type_of_bool@ NCURSES_BOOL;
 
-#if (!defined(__cplusplus) || !@cf_cv_builtin_bool@) && (!@cf_cv_cc_bool_type@)
+#if @USE_CXX_BOOL@     /* __cplusplus, etc. */
 
-#if @cf_cv_header_stdbool_h@
-#include <stdbool.h>
-#endif
+/* use the C++ compiler's bool type */
+#define NCURSES_BOOL bool
 
-#undef bool
+#else                  /* c89, c99, etc. */
 
 #if @cf_cv_header_stdbool_h@
-#define bool NCURSES_BOOL
+#include <stdbool.h>
+/* use whatever the C compiler decides bool really is */
+#define NCURSES_BOOL bool
 #else
-typedef @cf_cv_type_of_bool@ bool;
+/* there is no predefined bool - use our own */
+#undef bool
+#define bool NCURSES_BOOL
 #endif
 
 #endif /* !__cplusplus, etc. */
@@ -189,45 +192,47 @@ extern NCURSES_EXPORT_VAR(chtype*) _nc_acs_map(void);
 extern NCURSES_EXPORT_VAR(chtype) acs_map[];
 #endif
 
+#define NCURSES_ACS(c) (acs_map[(unsigned char)c])
+
 /* VT100 symbols begin here */
-#define ACS_ULCORNER   (acs_map['l'])  /* upper left corner */
-#define ACS_LLCORNER   (acs_map['m'])  /* lower left corner */
-#define ACS_URCORNER   (acs_map['k'])  /* upper right corner */
-#define ACS_LRCORNER   (acs_map['j'])  /* lower right corner */
-#define ACS_LTEE       (acs_map['t'])  /* tee pointing right */
-#define ACS_RTEE       (acs_map['u'])  /* tee pointing left */
-#define ACS_BTEE       (acs_map['v'])  /* tee pointing up */
-#define ACS_TTEE       (acs_map['w'])  /* tee pointing down */
-#define ACS_HLINE      (acs_map['q'])  /* horizontal line */
-#define ACS_VLINE      (acs_map['x'])  /* vertical line */
-#define ACS_PLUS       (acs_map['n'])  /* large plus or crossover */
-#define ACS_S1         (acs_map['o'])  /* scan line 1 */
-#define ACS_S9         (acs_map['s'])  /* scan line 9 */
-#define ACS_DIAMOND    (acs_map['`'])  /* diamond */
-#define ACS_CKBOARD    (acs_map['a'])  /* checker board (stipple) */
-#define ACS_DEGREE     (acs_map['f'])  /* degree symbol */
-#define ACS_PLMINUS    (acs_map['g'])  /* plus/minus */
-#define ACS_BULLET     (acs_map['~'])  /* bullet */
+#define ACS_ULCORNER   NCURSES_ACS('l') /* upper left corner */
+#define ACS_LLCORNER   NCURSES_ACS('m') /* lower left corner */
+#define ACS_URCORNER   NCURSES_ACS('k') /* upper right corner */
+#define ACS_LRCORNER   NCURSES_ACS('j') /* lower right corner */
+#define ACS_LTEE       NCURSES_ACS('t') /* tee pointing right */
+#define ACS_RTEE       NCURSES_ACS('u') /* tee pointing left */
+#define ACS_BTEE       NCURSES_ACS('v') /* tee pointing up */
+#define ACS_TTEE       NCURSES_ACS('w') /* tee pointing down */
+#define ACS_HLINE      NCURSES_ACS('q') /* horizontal line */
+#define ACS_VLINE      NCURSES_ACS('x') /* vertical line */
+#define ACS_PLUS       NCURSES_ACS('n') /* large plus or crossover */
+#define ACS_S1         NCURSES_ACS('o') /* scan line 1 */
+#define ACS_S9         NCURSES_ACS('s') /* scan line 9 */
+#define ACS_DIAMOND    NCURSES_ACS('`') /* diamond */
+#define ACS_CKBOARD    NCURSES_ACS('a') /* checker board (stipple) */
+#define ACS_DEGREE     NCURSES_ACS('f') /* degree symbol */
+#define ACS_PLMINUS    NCURSES_ACS('g') /* plus/minus */
+#define ACS_BULLET     NCURSES_ACS('~') /* bullet */
 /* Teletype 5410v1 symbols begin here */
-#define ACS_LARROW     (acs_map[','])  /* arrow pointing left */
-#define ACS_RARROW     (acs_map['+'])  /* arrow pointing right */
-#define ACS_DARROW     (acs_map['.'])  /* arrow pointing down */
-#define ACS_UARROW     (acs_map['-'])  /* arrow pointing up */
-#define ACS_BOARD      (acs_map['h'])  /* board of squares */
-#define ACS_LANTERN    (acs_map['i'])  /* lantern symbol */
-#define ACS_BLOCK      (acs_map['0'])  /* solid square block */
+#define ACS_LARROW     NCURSES_ACS(',') /* arrow pointing left */
+#define ACS_RARROW     NCURSES_ACS('+') /* arrow pointing right */
+#define ACS_DARROW     NCURSES_ACS('.') /* arrow pointing down */
+#define ACS_UARROW     NCURSES_ACS('-') /* arrow pointing up */
+#define ACS_BOARD      NCURSES_ACS('h') /* board of squares */
+#define ACS_LANTERN    NCURSES_ACS('i') /* lantern symbol */
+#define ACS_BLOCK      NCURSES_ACS('0') /* solid square block */
 /*
  * These aren't documented, but a lot of System Vs have them anyway
  * (you can spot pprryyzz{{||}} in a lot of AT&T terminfo strings).
  * The ACS_names may not match AT&T's, our source didn't know them.
  */
-#define ACS_S3         (acs_map['p'])  /* scan line 3 */
-#define ACS_S7         (acs_map['r'])  /* scan line 7 */
-#define ACS_LEQUAL     (acs_map['y'])  /* less/equal */
-#define ACS_GEQUAL     (acs_map['z'])  /* greater/equal */
-#define ACS_PI         (acs_map['{'])  /* Pi */
-#define ACS_NEQUAL     (acs_map['|'])  /* not equal */
-#define ACS_STERLING   (acs_map['}'])  /* UK pound sign */
+#define ACS_S3         NCURSES_ACS('p') /* scan line 3 */
+#define ACS_S7         NCURSES_ACS('r') /* scan line 7 */
+#define ACS_LEQUAL     NCURSES_ACS('y') /* less/equal */
+#define ACS_GEQUAL     NCURSES_ACS('z') /* greater/equal */
+#define ACS_PI         NCURSES_ACS('{') /* Pi */
+#define ACS_NEQUAL     NCURSES_ACS('|') /* not equal */
+#define ACS_STERLING   NCURSES_ACS('}') /* UK pound sign */
 
 /*
  * Line drawing ACS names are of the form ACS_trbl, where t is the top, r
@@ -286,20 +291,19 @@ typedef   chtype  attr_t;         /* ...must be at least as wide as chtype */
 #undef mblen
 #endif
 #include <libutf8.h>
-#define _WCHAR_T
-#define _WINT_T
 #endif
 
-#if @NCURSES_MBSTATE_T@
+#if @NEED_WCHAR_H@
 #include <wchar.h>             /* ...to get mbstate_t, etc. */
 #endif
 
-#ifndef _WCHAR_T
-typedef unsigned long wchar_t;
-#endif /* _WCHAR_T */
-#ifndef _WINT_T
-typedef long int wint_t;
-#endif /* _WINT_T */
+#if @NCURSES_WCHAR_T@
+typedef unsigned short wchar_t@NCURSES_OK_WCHAR_T@;
+#endif
+
+#if @NCURSES_WINT_T@
+typedef unsigned int wint_t@NCURSES_OK_WCHAR_T@;
+#endif
 
 #define CCHARW_MAX     5
 typedef struct
@@ -388,7 +392,8 @@ extern NCURSES_EXPORT(bool) is_term_resized (int, int);
 extern NCURSES_EXPORT(char *) keybound (int, int);
 extern NCURSES_EXPORT(const char *) curses_version (void);
 extern NCURSES_EXPORT(int) assume_default_colors (int, int);
-extern NCURSES_EXPORT(int) define_key (char *, int);
+extern NCURSES_EXPORT(int) define_key (const char *, int);
+extern NCURSES_EXPORT(int) key_defined (const char *);
 extern NCURSES_EXPORT(int) keyok (int, bool);
 extern NCURSES_EXPORT(int) resize_term (int, int);
 extern NCURSES_EXPORT(int) resizeterm (int, int);
@@ -451,23 +456,13 @@ extern NCURSES_EXPORT(int) wgetnstr_events(WINDOW *,char *,int,_nc_eventlist *);
  * GCC (and some other compilers) define '__attribute__'; we're using this
  * macro to alert the compiler to flag inconsistencies in printf/scanf-like
  * function calls.  Just in case '__attribute__' isn't defined, make a dummy.
- * G++ doesn't accept it anyway.
+ * Old versions of G++ do not accept it anyway, at least not consistently with
+ * GCC.
  */
-#if !defined(__GNUC__) && !defined(__attribute__)
+#if !(defined(__GNUC__) || defined(__GNUG__) || defined(__attribute__))
 #define __attribute__(p) /* nothing */
 #endif
 
-/*
- * For g++, turn off our macros that use __attribute__ (g++ recognizes some
- * of them, but not at the same version levels as gcc).
- */
-#ifdef __cplusplus
-#undef GCC_NORETURN
-#undef GCC_PRINTF
-#undef GCC_SCANF
-#undef GCC_UNUSED
-#endif
-
 /*
  * We cannot define these in ncurses_cfg.h, since they require parameters to be
  * passed (that's non-portable).
@@ -609,7 +604,7 @@ extern NCURSES_EXPORT(int) mvinsch (int, int, chtype);                      /* generated */
 extern NCURSES_EXPORT(int) mvinsnstr (int, int, const char *, int);    /* generated */
 extern NCURSES_EXPORT(int) mvinsstr (int, int, const char *);          /* generated */
 extern NCURSES_EXPORT(int) mvinstr (int, int, char *);                 /* generated */
-extern NCURSES_EXPORT(int) mvprintw (int,int, NCURSES_CONST char *,...)        /* implemented */
+extern NCURSES_EXPORT(int) mvprintw (int,int, const char *,...)                /* implemented */
                GCC_PRINTFLIKE(3,4);
 extern NCURSES_EXPORT(int) mvscanw (int,int, NCURSES_CONST char *,...) /* implemented */
                GCC_SCANFLIKE(3,4);
@@ -634,7 +629,7 @@ extern NCURSES_EXPORT(int) mvwinsch (WINDOW *, int, int, chtype);           /* generated
 extern NCURSES_EXPORT(int) mvwinsnstr (WINDOW *, int, int, const char *, int); /* generated */
 extern NCURSES_EXPORT(int) mvwinsstr (WINDOW *, int, int, const char *);               /* generated */
 extern NCURSES_EXPORT(int) mvwinstr (WINDOW *, int, int, char *);              /* generated */
-extern NCURSES_EXPORT(int) mvwprintw (WINDOW*,int,int, NCURSES_CONST char *,...)       /* implemented */
+extern NCURSES_EXPORT(int) mvwprintw (WINDOW*,int,int, const char *,...)       /* implemented */
                GCC_PRINTFLIKE(4,5);
 extern NCURSES_EXPORT(int) mvwscanw (WINDOW *,int,int, NCURSES_CONST char *,...)       /* implemented */
                GCC_SCANFLIKE(4,5);
@@ -658,7 +653,7 @@ extern NCURSES_EXPORT(int) PAIR_NUMBER (int);                               /* generated */
 extern NCURSES_EXPORT(int) pechochar (WINDOW *, const chtype);         /* implemented */
 extern NCURSES_EXPORT(int) pnoutrefresh (WINDOW*,int,int,int,int,int,int);/* implemented */
 extern NCURSES_EXPORT(int) prefresh (WINDOW *,int,int,int,int,int,int);        /* implemented */
-extern NCURSES_EXPORT(int) printw (NCURSES_CONST char *,...)           /* implemented */
+extern NCURSES_EXPORT(int) printw (const char *,...)                   /* implemented */
                GCC_PRINTFLIKE(1,2);
 extern NCURSES_EXPORT(int) putp (const char *);                                /* implemented */
 extern NCURSES_EXPORT(int) putwin (WINDOW *, FILE *);                  /* implemented */
@@ -720,8 +715,8 @@ extern NCURSES_EXPORT(void) use_env (bool);                         /* implemented */
 extern NCURSES_EXPORT(int) vidattr (chtype);                           /* implemented */
 extern NCURSES_EXPORT(int) vidputs (chtype, int (*)(int));             /* implemented */
 extern NCURSES_EXPORT(int) vline (chtype, int);                                /* generated */
-extern NCURSES_EXPORT(int) vwprintw (WINDOW *, NCURSES_CONST char *,va_list);  /* implemented */
-extern NCURSES_EXPORT(int) vw_printw (WINDOW *, NCURSES_CONST char *,va_list); /* generated */
+extern NCURSES_EXPORT(int) vwprintw (WINDOW *, const char *,va_list);  /* implemented */
+extern NCURSES_EXPORT(int) vw_printw (WINDOW *, const char *,va_list); /* generated */
 extern NCURSES_EXPORT(int) vwscanw (WINDOW *, NCURSES_CONST char *,va_list);   /* implemented */
 extern NCURSES_EXPORT(int) vw_scanw (WINDOW *, NCURSES_CONST char *,va_list);  /* generated */
 extern NCURSES_EXPORT(int) waddch (WINDOW *, const chtype);            /* implemented */
@@ -765,7 +760,7 @@ extern NCURSES_EXPORT(int) winsstr (WINDOW *, const char *);                /* generated */
 extern NCURSES_EXPORT(int) winstr (WINDOW *, char *);                  /* generated */
 extern NCURSES_EXPORT(int) wmove (WINDOW *,int,int);                   /* implemented */
 extern NCURSES_EXPORT(int) wnoutrefresh (WINDOW *);                    /* implemented */
-extern NCURSES_EXPORT(int) wprintw (WINDOW *, NCURSES_CONST char *,...)        /* implemented */
+extern NCURSES_EXPORT(int) wprintw (WINDOW *, const char *,...)                /* implemented */
                GCC_PRINTFLIKE(2,3);
 extern NCURSES_EXPORT(int) wredrawln (WINDOW *,int,int);               /* implemented */
 extern NCURSES_EXPORT(int) wrefresh (WINDOW *);                                /* implemented */
@@ -831,10 +826,11 @@ extern NCURSES_EXPORT(int) wvline (WINDOW *,chtype,int);          /* implemented */
 #define nocrmode()             nocbreak()
 #define gettmode()
 
-#define getyx(win,y,x)         (y = (win)?(win)->_cury:ERR, x = (win)?(win)->_curx:ERR)
-#define getbegyx(win,y,x)      (y = (win)?(win)->_begy:ERR, x = (win)?(win)->_begx:ERR)
-#define getmaxyx(win,y,x)      (y = (win)?((win)->_maxy + 1):ERR, x = (win)?((win)->_maxx + 1):ERR)
-#define getparyx(win,y,x)      (y = (win)?(win)->_pary:ERR, x = (win)?(win)->_parx:ERR)
+#define getyx(win,y,x)         (y = getcury(win), x = getcurx(win))
+#define getbegyx(win,y,x)      (y = getbegy(win), x = getbegx(win))
+#define getmaxyx(win,y,x)      (y = getmaxy(win), x = getmaxx(win))
+#define getparyx(win,y,x)      (y = getpary(win), x = getparx(win))
+
 #define getsyx(y,x) do { if(newscr->_leaveok) (y)=(x)=-1; \
                         else getyx(newscr,(y),(x)); \
                    } while(0)
index b3991cdcbee396b035479733ec02de5eb5af1e06..d51abc2515f6ca042122d6f4cd268d869e4c16d2 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: curses.tail,v 1.7 2002/10/12 15:46:02 tom Exp $ */
+/* $Id: curses.tail,v 1.8 2002/11/02 20:26:26 tom Exp $ */
 
 /* mouse interface */
 #define NCURSES_MOUSE_VERSION  1
@@ -121,10 +121,6 @@ extern NCURSES_EXPORT(const char *) _nc_visbuf (const char *);
 #define OPTIMIZE_ALL           0xff    /* enable all optimizations (dflt) */
 #endif
 
-#ifndef NCURSES_WGETCH_EVENTS
-#undef KEY_EVENT
-#endif
-
 #ifdef __cplusplus
 
 /* these names conflict with STL */
index ac03151be62acf929683b30fde70265c4348fb1b..a37f3f845d40a396abaab4443106f1da7081f19a 100644 (file)
@@ -1,21 +1,23 @@
 
 #ifdef _XOPEN_SOURCE_EXTENDED
 
-/* $Id: curses.wide,v 1.25 2002/08/31 17:48:53 tom Exp $ */
+/* $Id: curses.wide,v 1.28 2004/01/03 20:35:14 tom Exp $ */
 
 extern NCURSES_EXPORT_VAR(cchar_t *) _nc_wacs;
 
-#define WACS_BSSB      (&_nc_wacs['l'])
-#define WACS_SSBB      (&_nc_wacs['m'])
-#define WACS_BBSS      (&_nc_wacs['k'])
-#define WACS_SBBS      (&_nc_wacs['j'])
-#define WACS_SBSS      (&_nc_wacs['u'])
-#define WACS_SSSB      (&_nc_wacs['t'])
-#define WACS_SSBS      (&_nc_wacs['v'])
-#define WACS_BSSS      (&_nc_wacs['w'])
-#define WACS_BSBS      (&_nc_wacs['q'])
-#define WACS_SBSB      (&_nc_wacs['x'])
-#define WACS_SSSS      (&_nc_wacs['n'])
+#define NCURSES_WACS(c)        (&_nc_wacs[(unsigned char)c])
+
+#define WACS_BSSB      NCURSES_WACS('l')
+#define WACS_SSBB      NCURSES_WACS('m')
+#define WACS_BBSS      NCURSES_WACS('k')
+#define WACS_SBBS      NCURSES_WACS('j')
+#define WACS_SBSS      NCURSES_WACS('u')
+#define WACS_SSSB      NCURSES_WACS('t')
+#define WACS_SSBS      NCURSES_WACS('v')
+#define WACS_BSSS      NCURSES_WACS('w')
+#define WACS_BSBS      NCURSES_WACS('q')
+#define WACS_SBSB      NCURSES_WACS('x')
+#define WACS_SSSS      NCURSES_WACS('n')
 
 #define WACS_ULCORNER  WACS_BSSB
 #define WACS_LLCORNER  WACS_SSBB
@@ -29,31 +31,31 @@ extern NCURSES_EXPORT_VAR(cchar_t *) _nc_wacs;
 #define WACS_VLINE     WACS_SBSB
 #define WACS_PLUS      WACS_SSSS
 
-#define WACS_S1                (&_nc_wacs['o']) /* scan line 1 */
-#define WACS_S9        (&_nc_wacs['s']) /* scan line 9 */
-#define WACS_DIAMOND   (&_nc_wacs['`']) /* diamond */
-#define WACS_CKBOARD   (&_nc_wacs['a']) /* checker board */
-#define WACS_DEGREE    (&_nc_wacs['f']) /* degree symbol */
-#define WACS_PLMINUS   (&_nc_wacs['g']) /* plus/minus */
-#define WACS_BULLET    (&_nc_wacs['~']) /* bullet */
+#define WACS_S1                NCURSES_WACS('o') /* scan line 1 */
+#define WACS_S9        NCURSES_WACS('s') /* scan line 9 */
+#define WACS_DIAMOND   NCURSES_WACS('`') /* diamond */
+#define WACS_CKBOARD   NCURSES_WACS('a') /* checker board */
+#define WACS_DEGREE    NCURSES_WACS('f') /* degree symbol */
+#define WACS_PLMINUS   NCURSES_WACS('g') /* plus/minus */
+#define WACS_BULLET    NCURSES_WACS('~') /* bullet */
 
        /* Teletype 5410v1 symbols */
-#define WACS_LARROW    (&_nc_wacs[',']) /* arrow left */
-#define WACS_RARROW    (&_nc_wacs['+']) /* arrow right */
-#define WACS_DARROW    (&_nc_wacs['.']) /* arrow down */
-#define WACS_UARROW    (&_nc_wacs['-']) /* arrow up */
-#define WACS_BOARD     (&_nc_wacs['h']) /* board of squares */
-#define WACS_LANTERN   (&_nc_wacs['i']) /* lantern symbol */
-#define WACS_BLOCK     (&_nc_wacs['0']) /* solid square block */
+#define WACS_LARROW    NCURSES_WACS(',') /* arrow left */
+#define WACS_RARROW    NCURSES_WACS('+') /* arrow right */
+#define WACS_DARROW    NCURSES_WACS('.') /* arrow down */
+#define WACS_UARROW    NCURSES_WACS('-') /* arrow up */
+#define WACS_BOARD     NCURSES_WACS('h') /* board of squares */
+#define WACS_LANTERN   NCURSES_WACS('i') /* lantern symbol */
+#define WACS_BLOCK     NCURSES_WACS('0') /* solid square block */
 
        /* ncurses extensions */
-#define WACS_S3                (&_nc_wacs['p']) /* scan line 3 */
-#define WACS_S7                (&_nc_wacs['r']) /* scan line 7 */
-#define WACS_LEQUAL    (&_nc_wacs['y']) /* less/equal */
-#define WACS_GEQUAL    (&_nc_wacs['z']) /* greater/equal */
-#define WACS_PI                (&_nc_wacs['{']) /* Pi */
-#define WACS_NEQUAL    (&_nc_wacs['|']) /* not equal */
-#define WACS_STERLING  (&_nc_wacs['}']) /* UK pound sign */
+#define WACS_S3                NCURSES_WACS('p') /* scan line 3 */
+#define WACS_S7                NCURSES_WACS('r') /* scan line 7 */
+#define WACS_LEQUAL    NCURSES_WACS('y') /* less/equal */
+#define WACS_GEQUAL    NCURSES_WACS('z') /* greater/equal */
+#define WACS_PI                NCURSES_WACS('{') /* Pi */
+#define WACS_NEQUAL    NCURSES_WACS('|') /* not equal */
+#define WACS_STERLING  NCURSES_WACS('}') /* UK pound sign */
 
 /*
  * Function prototypes for wide-character operations.
@@ -127,9 +129,9 @@ extern NCURSES_EXPORT(int) mvwins_wch (WINDOW *, int, int, const cchar_t *);        /*
 extern NCURSES_EXPORT(int) mvwins_wstr (WINDOW *, int, int, const wchar_t *);  /* generated:WIDEC */
 extern NCURSES_EXPORT(int) mvwinwstr (WINDOW *, int, int, wchar_t *);          /* generated:WIDEC */
 extern NCURSES_EXPORT(int) mvwvline_set (WINDOW *, int,int, const cchar_t *,int); /* generated:WIDEC */
-extern NCURSES_EXPORT(int) pecho_wchar (WINDOW *, const cchar_t *);    /* missing */
+extern NCURSES_EXPORT(int) pecho_wchar (WINDOW *, const cchar_t *);    /* implemented */
 extern NCURSES_EXPORT(int) setcchar (cchar_t *, const wchar_t *, const attr_t, short, const void *);   /* implemented */
-extern NCURSES_EXPORT(int) slk_wset (int, const wchar_t *, int);       /* missing */
+extern NCURSES_EXPORT(int) slk_wset (int, const wchar_t *, int);       /* implemented */
 extern NCURSES_EXPORT(attr_t) term_attrs (void);                       /* implemented */
 extern NCURSES_EXPORT(int) unget_wch (const wchar_t);                  /* implemented */
 extern NCURSES_EXPORT(int) vid_attr (attr_t, short, void *);           /* implemented */
index a4b49c00ed6861c831bd9d423ddc117014f151ca..4a30282821325f384af8bfdb15895c3b702cbb9f 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: ncurses_defs,v 1.15 2002/08/24 23:13:43 tom Exp $
+# $Id: ncurses_defs,v 1.21 2004/01/18 01:03:24 tom Exp $
 ##############################################################################
-# Copyright (c) 2000-2001,2002 Free Software Foundation, Inc.                #
+# Copyright (c) 2000-2003,2004 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"), #
@@ -45,6 +45,8 @@ GCC_NORETURN  /* nothing */
 GCC_UNUSED     /* nothing */
 HAVE_BIG_CORE
 HAVE_BSD_CGETENT
+HAVE_BSD_SIGNAL_H
+HAVE_BTOWC 
 HAVE_BUILTIN_H
 HAVE_DIRENT_H
 HAVE_ERRNO
@@ -62,6 +64,7 @@ HAVE_GXX_BUILTIN_H
 HAVE_HAS_KEY
 HAVE_ISASCII
 HAVE_ISSETUGID
+HAVE_LIBC_H
 HAVE_LIBDBMALLOC
 HAVE_LIBDMALLOC
 HAVE_LIBFORM
@@ -72,6 +75,10 @@ HAVE_LIMITS_H
 HAVE_LINK
 HAVE_LOCALE_H
 HAVE_LONG_FILE_NAMES
+HAVE_MBLEN
+HAVE_MBRLEN
+HAVE_MBRTOWC
+HAVE_MBTOWC
 HAVE_MEMCCPY
 HAVE_MENU_H
 HAVE_MKSTEMP
@@ -81,6 +88,7 @@ HAVE_PANEL_H
 HAVE_POLL
 HAVE_POLL_H
 HAVE_PURIFY
+HAVE_PUTWC 
 HAVE_REGEXPR_H_FUNCS
 HAVE_REGEXP_H_FUNCS
 HAVE_REGEX_H_FUNCS
@@ -93,6 +101,7 @@ HAVE_SETVBUF
 HAVE_SIGACTION
 HAVE_SIGVEC
 HAVE_SIZECHANGE
+HAVE_SLK_COLOR
 HAVE_STRDUP
 HAVE_STRSTR
 HAVE_SYMLINK
@@ -121,6 +130,8 @@ HAVE_USE_DEFAULT_COLORS
 HAVE_VFSCANF
 HAVE_VSNPRINTF
 HAVE_VSSCANF
+HAVE_WCTOB 
+HAVE_WCTOMB
 HAVE_WORKING_POLL
 HAVE_WRESIZE
 HAVE__DOSCAN
@@ -149,6 +160,7 @@ USE_GETCAP
 USE_GETCAP_CACHE
 USE_HARD_TABS
 USE_HASHMAP
+USE_HOME_TERMINFO
 USE_LINKS
 USE_MY_MEMMOVE
 USE_OK_BCOPY
@@ -160,6 +172,7 @@ USE_STDIO_VSCAN
 USE_STRSTREAM_VSCAN
 USE_STRSTREAM_VSCAN_CAST
 USE_SYMLINKS
+USE_SYSMOUSE
 USE_TERMCAP
 USE_WIDEC_SUPPORT
 USE_XMC_SUPPORT
index c961c3e0a49e974e5f58787a5078024f132b3fa6..de46c60508e61ed68f72b7cb0e1122bfa0d36141 100644 (file)
@@ -1,10 +1,14 @@
-/* $Id: ncurses_dll.h,v 1.2 2001/12/09 01:36:34 tom Exp $ */
+/* $Id: ncurses_dll.h,v 1.4 2003/07/19 18:44:32 Charles.Wilson Exp $ */
 
 #ifndef NCURSES_DLL_H_incl
 #define NCURSES_DLL_H_incl 1
 
-#undef NCURSES_DLL     /* cygwin dll not implemented */
-#define NCURSES_STATIC /* cygwin dll not implemented */
+/* no longer needed on cygwin or mingw, thanks to auto-import       */
+/* but this structure may be useful at some point for an MSVC build */
+/* so, for now unconditionally define the important flags           */
+/* "the right way" for proper static and dll+auto-import behavior   */
+#undef NCURSES_DLL
+#define NCURSES_STATIC
 
 #if defined(__CYGWIN__)
 #  if defined(NCURSES_DLL)
@@ -14,8 +18,8 @@
 #  endif
 #  undef NCURSES_IMPEXP
 #  undef NCURSES_API
-#  undef NCURSES_EXPORT(type)
-#  undef NCURSES_EXPORT_VAR(type)
+#  undef NCURSES_EXPORT
+#  undef NCURSES_EXPORT_VAR
 #  if defined(NCURSES_DLL)
 /* building a DLL */
 #    define NCURSES_IMPEXP __declspec(dllexport)
index 806d43fd1fcdda04f2d7f2aca5b29cd599598c41..752c1f7e72267139df06bd9027db1b6a0461ad96 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2001,2003 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            *
@@ -32,7 +32,7 @@
  ****************************************************************************/
 
 /*
- * $Id: tic.h,v 1.42 2002/10/12 15:46:15 tom Exp $
+ * $Id: tic.h,v 1.46 2003/12/27 19:05:32 tom Exp $
  *     tic.h - Global variables and structures for the terminfo
  *                     compiler.
  */
@@ -83,13 +83,14 @@ extern "C" {
 #define MAX_NAME_SIZE  512     /* maximum legal name field size (XSI:127) */
 #define MAX_ENTRY_SIZE 4096    /* maximum legal entry size */
 
-/* The maximum size of individual name or alias is guaranteed in XSI to
- * be 14, since that corresponds to the older filename lengths.  Newer
- * systems allow longer aliases, though not many terminal descriptions
- * are written to use them.
+/*
+ * The maximum size of individual name or alias is guaranteed in XSI to be at
+ * least 14, since that corresponds to the older filename lengths.  Newer
+ * systems allow longer aliases, though not many terminal descriptions are
+ * written to use them.  The MAX_ALIAS symbol is used for warnings.
  */
 #if HAVE_LONG_FILE_NAMES
-#define MAX_ALIAS      32      /* POSIX minimum for PATH_MAX */
+#define MAX_ALIAS      32      /* smaller than POSIX minimum for PATH_MAX */
 #else
 #define MAX_ALIAS      14      /* SVr3 filename length */
 #endif
@@ -203,8 +204,6 @@ struct alias
        const char      *source;
 };
 
-extern NCURSES_EXPORT_VAR(int) _nc_tparm_err;
-
 extern NCURSES_EXPORT_VAR(const struct name_table_entry * const) _nc_info_hash_table[];
 extern NCURSES_EXPORT_VAR(const struct name_table_entry * const) _nc_cap_hash_table[];
 
@@ -217,7 +216,7 @@ extern NCURSES_EXPORT(const struct name_table_entry * const *) _nc_get_hash_tabl
 #define NOTFOUND       ((struct name_table_entry *) 0)
 
 /* out-of-band values for representing absent capabilities */
-#define ABSENT_BOOLEAN         (-1)            /* 255 */
+#define ABSENT_BOOLEAN         (char)(-1)      /* 255 */
 #define ABSENT_NUMERIC         (-1)
 #define ABSENT_STRING          (char *)0
 
@@ -241,6 +240,7 @@ extern NCURSES_EXPORT(const struct name_table_entry * const *) _nc_get_hash_tabl
 #endif
 
 /* access.c */
+extern NCURSES_EXPORT(unsigned) _nc_pathlast (const char *);
 extern NCURSES_EXPORT(char *) _nc_basename (char *);
 extern NCURSES_EXPORT(char *) _nc_rootname (char *);
 
@@ -284,6 +284,13 @@ extern NCURSES_EXPORT(char) _nc_trans_string (char *, char *);
 extern NCURSES_EXPORT(char *) _nc_captoinfo (const char *, const char *, int const);
 extern NCURSES_EXPORT(char *) _nc_infotocap (const char *, const char *, int const);
 
+/* lib_tparm.c */
+#define NUM_PARM 9
+
+extern NCURSES_EXPORT_VAR(int) _nc_tparm_err;
+
+extern NCURSES_EXPORT(int) _nc_tparm_analyze(const char *string, char *p_is_s[NUM_PARM], int *popcount);
+
 /* lib_tputs.c */
 extern NCURSES_EXPORT_VAR(int) _nc_nulls_sent;         /* Add one for every null sent */
 
index 8160ca93748c179ed1cbafa5127fd7be253b95ed..3a996095656759fc916a5bbf945abc6d78070b79 100755 (executable)
@@ -1,10 +1,10 @@
 #!/bin/sh
-# $Id: MKterminfo.sh,v 1.10 2002/06/29 20:04:28 tom Exp $
+# $Id: MKterminfo.sh,v 1.12 2003/01/11 21:42:12 tom Exp $
 #
 # MKterminfo.sh -- generate terminfo.5 from Caps tabular data
 #
 #***************************************************************************
-# Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+# Copyright (c) 1998,2002,2003 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            *
@@ -69,11 +69,11 @@ trap "rm -f $sorted $temp $unsorted; exit 99" 1 2 5 15
 
 sed -n <$caps "\
 /%%-STOP-HERE-%%/q
-/^#%/s///p
+/^#%/s/#%//p
 /^#/d
-s/[    ]\+/    /g
+s/[    ][      ]*/     /g
 s/$/\ 5T}/
-s/     [A-Z0-9_()\-]\+ [0-9\-]\+       [Y\-][B\-][C\-][G\-][EK\-]\**   /       T{\ 5/
+s/     [A-Z0-9_()\-][A-Z0-9_()\-]*     [0-9\-][0-9\-]* [Y\-][B\-][C\-][G\-][EK\-]\**   /       T{\ 5/
 s/     bool    /       /p
 s/     num     /       /p
 s/     str     /       /p
index 56dbe0933e96e194d89e7e617b81f4991cdd2362..92fb9d30cdb93725ea322fc27b98cee7fc3c0966 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.33 2002/01/19 22:49:44 tom Exp $
+# $Id: Makefile.in,v 1.35 2003/12/20 18:41:10 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,2000,2001,2002 Free Software Foundation, Inc.           #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -27,7 +27,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997
+# Author: Thomas E. Dickey 1996,1997
 #
 # Makefile for ncurses manual pages.
 #
@@ -56,10 +56,10 @@ $(DESTDIR)$(mandir) :
 EDITARGS = $(DESTDIR)$(mandir) $(srcdir) terminfo.5 $(srcdir)/*.[0-9]*
 
 install install.man : terminfo.5 $(DESTDIR)$(mandir)
-       sh ./edit_man.sh installing $(EDITARGS)
+       sh ./edit_man.sh normal installing $(EDITARGS)
 
 uninstall uninstall.man :
-       -sh ./edit_man.sh removing $(EDITARGS)
+       -sh ./edit_man.sh normal removing $(EDITARGS)
 
 # We compose terminfo.5 from the real sources...
 CAPLIST=$(srcdir)/../include/@TERMINFO_CAPS@
index 40c09f5a213fb8207aa7fc7c9466d303336eca5f..2938ec6c9fce3e7adbf3a999f2ca7cbc17936920 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: captoinfo.1m,v 1.16 2000/08/13 01:56:49 tom Exp $
+.\" $Id: captoinfo.1m,v 1.17 2003/05/11 00:32:53 tom Exp $
 .TH captoinfo 1M ""
 .ds n 5
 .ds d @TERMINFO@
 .SH NAME
 \fBcaptoinfo\fR - convert a \fItermcap\fR description into a \fIterminfo\fR description
 .SH SYNOPSIS
-\fBcaptoinfo\fR [\fB-v\fR\fIn\fR \fIwidth\fR]  [\fB-V\fR] [\fB-1\fR] [\fB-w\fR \fIwidth\fR] \fIfile\fR . . .
+\fBcaptoinfo\fR [\fB\-v\fR\fIn\fR \fIwidth\fR]  [\fB\-V\fR] [\fB\-1\fR] [\fB\-w\fR \fIwidth\fR] \fIfile\fR . . .
 .SH DESCRIPTION
 \fBcaptoinfo\fR looks in \fIfile\fR for \fBtermcap\fR descriptions.  For each
 one found, an equivalent \fBterminfo\fR description is written to standard
@@ -47,18 +47,18 @@ the terminal whose name is specified in the environment variable \fBTERM\fR is
 extracted from that file.  If the environment variable \fBTERMCAP\fR is not
 set, then the file \fB\*d\fR is read.
 .TP 5
-\fB-v\fR
+\fB\-v\fR
 print out tracing information on standard error as the program runs.
 .TP 5
-\fB-V\fR
+\fB\-V\fR
 print out the version of the program in use on standard error and exit.
 .TP 5
-\fB-1\fR
+\fB\-1\fR
 cause the fields to print out one to a line.  Otherwise, the fields
 will be printed several to a line to a maximum width of 60
 characters.
 .TP 5
-\fB-w\fR
+\fB\-w\fR
 change the output to \fIwidth\fR characters.
 .SH FILES
 .TP 20
@@ -172,11 +172,11 @@ Hewlett-Packard's terminfo library supports two nonstandard terminfo
 capabilities \fBmeml\fR (memory lock) and \fBmemu\fR (memory unlock).
 These will be discarded with a warning message.
 .SH NOTES
-This utility is actually a link to \fItic\fR(1M), running in \fI-I\fR mode.
-You can use other \fItic\fR options such as \fB-f\fR and  \fB-x\fR.
+This utility is actually a link to \fItic\fR(1M), running in \fI\-I\fR mode.
+You can use other \fItic\fR options such as \fB\-f\fR and  \fB\-x\fR.
 
 The trace option isn't identical to SVr4's.  Under SVr4, instead of following
-the -v with a trace level n, you repeat it n times.
+the \fB\-v\fR with a trace level n, you repeat it n times.
 .SH SEE ALSO
 \fBcurses\fR(3X), \fB@INFOCMP@\fR(1M), \fBterminfo\fR(\*n)
 .SH AUTHOR
index 17d3446985003225e8b4fc9f21f8ca2a118e81f2..7afd498473e050cc44485eea161795e8dc3962ef 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 2002 Free Software Foundation, Inc.                        *
+.\" Copyright (c) 2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_add_wchstr.3x,v 1.1 2002/02/23 22:15:55 tom Exp $
+.\" $Id: curs_add_wchstr.3x,v 1.2 2003/12/27 18:53:41 tom Exp $
 .TH curs_add_wchstr 3X ""
 .SH NAME
 .PP
@@ -40,7 +40,7 @@
 \fBmvwadd_wchnstr\fR \- add an array of complex characters (and attributes) to a curses window
 .SH SYNOPSIS
 .B #include <curses.h>
-
+.PP
 .nf
 \fBint add_wchstr(const cchar_t *\fR\fIwchstr\fR\fB);\fR
 .br
index 3feb9e782bce6111343fe4ab2abc0fab3770e4be..13053d0053770d5d473f8a45421c7ef99f408b61 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2003,2004 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_addch.3x,v 1.20 2002/08/10 22:12:36 tom Exp $
+.\" $Id: curs_addch.3x,v 1.23 2004/01/31 13:16:21 tom Exp $
 .TH curs_addch 3X ""
 .SH NAME
 \fBaddch\fR, \fBwaddch\fR, \fBmvaddch\fR, \fBmvwaddch\fR,
@@ -35,7 +35,7 @@
 \fBwechochar\fR - add a character (with attributes) to a \fBcurses\fR window, then advance the cursor
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
-
+.PP
 \fBint addch(const chtype ch);\fR
 .br
 \fBint waddch(WINDOW *win, const chtype ch);\fR
@@ -55,29 +55,29 @@ which is then advanced.  They are analogous to \fBputchar\fR in \fBstdio\fR(3).
 If the advance is at the right margin, the cursor automatically wraps to the
 beginning of the next line.  At the bottom of the current scrolling region, if
 \fBscrollok\fR is enabled, the scrolling region is scrolled up one line.
-
+.PP
 If \fIch\fR is a tab, newline, or backspace,
 the cursor is moved appropriately within the window.
 Backspace moves the cursor one character left; at the left
 edge of a window it does nothing.
 Newline does a \fBclrtoeol\fR,
 then moves the cursor to the window left margin on the next line,
-scrolling the window if on the last line).
+scrolling the window if on the last line.
 Tabs are considered to be at every eighth column.
 The tab interval may be altered by setting the \fBTABSIZE\fR variable.
-
+.PP
 If \fIch\fR is any control character other than tab, newline, or backspace, it
 is drawn in \fB^\fR\fIX\fR notation.  Calling \fBwinch\fR after adding a
 control character does not return the character itself, but instead returns
 the ^-representation of the control character.
-
+.PP
 Video attributes can be combined with a character argument passed to
 \fBaddch\fR or related functions by logical-ORing them into the character.
 (Thus, text, including attributes, can be copied from one place to another
-using \fBinch\fR and \fBaddch\fR.).  See the \fBcurs_attr\fR(3X) page for
+using \fBinch\fR and \fBaddch\fR.)  See the \fBcurs_attr\fR(3X) page for
 values of predefined video attribute constants that can be usefully OR'ed
 into characters.
-
+.PP
 The \fBechochar\fR and \fBwechochar\fR routines are equivalent to a call to
 \fBaddch\fR followed by a call to \fBrefresh\fR, or a call to \fBwaddch\fR
 followed by a call to \fBwrefresh\fR.  The knowledge that only a single
@@ -90,7 +90,7 @@ screen with routines of the \fBaddch\fR family.  The default character listed
 below is used if the \fBacsc\fR capability doesn't define a terminal-specific
 replacement for it (but see the EXTENSIONS section below).  The names are
 taken from VT100 nomenclature.
-
+.PP
 .TS
 l l l
 _ _ _
@@ -129,7 +129,6 @@ ACS_ULCORNER        +       upper left-hand corner
 ACS_URCORNER   +       upper right-hand corner
 ACS_VLINE      |       vertical line
 .TE
-
 .SH RETURN VALUE
 All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success
 (the SVr4 manuals specify only "an integer value other than \fBERR\fR") upon
@@ -158,6 +157,10 @@ to light.  The ACS-prefixed names for them were invented for \fBncurses\fR(3X).
 .LP
 The \fBTABSIZE\fR variable is implemented in some versions of curses,
 but is not part of X/Open curses.
+.LP
+If \fIch\fR is a carriage return,
+the cursor is moved to the beginning of the current row of the window.
+This is true of other implementations, but is not documented.
 .SH SEE ALSO
 \fBcurses\fR(3X), \fBcurs_attr\fR(3X), \fBcurs_clear\fR(3X),
 \fBcurs_inch\fR(3X), \fBcurs_outopts\fR(3X), \fBcurs_refresh\fR(3X),
index 0d9ea29f028050cc86d5e066038464826e6865c0..9de749fc8f9c3c68b19dbaf957d95496643cdba9 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_addchstr.3x,v 1.7 2000/07/01 19:53:33 tom Exp $
+.\" $Id: curs_addchstr.3x,v 1.8 2003/12/27 18:51:24 tom Exp $
 .TH curs_addchstr 3X ""
 .SH NAME
 \fBaddchstr\fR, \fBaddchnstr\fR, \fBwaddchstr\fR,
@@ -34,7 +34,7 @@
 \fBmvwaddchnstr\fR - add a string of characters (and attributes) to a \fBcurses\fR window
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
-
+.PP
 \fBint addchstr(const chtype *chstr);\fR
 .br
 \fBint addchnstr(const chtype *chstr, int n);\fR
@@ -56,14 +56,13 @@ the current cursor position.  The four routines with \fIn\fR as the last
 argument copy at most \fIn\fR elements, but no more than will fit on the line.
 If \fBn\fR=\fB-1\fR then the whole string is copied, to the maximum number of
 characters that will fit on the line.
-
+.PP
 The window cursor is \fInot\fR advanced, and these routines work faster than
 \fBwaddnstr\fR.  On the other hand, they don't perform any kind of checking
 (such as for the newline, backspace, or carriage return characters), they don't
 advance the current cursor position, they don't expand other control characters
 to ^-escapes, and they truncate the string if it crosses the right margin,
 rather then wrapping it around to the new line.
-
 .SH RETURN VALUES
 All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success
 (the SVr4 manuals specify only "an integer value other than \fBERR\fR") upon
index a845acbca7e9dd884d8874920af03a18fd9e49f1..0ffacc6fa9b7d6a53388d0de128629fe09595eaf 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_addstr.3x,v 1.10 2002/03/09 23:09:29 tom Exp $
+.\" $Id: curs_addstr.3x,v 1.11 2003/12/27 18:51:15 tom Exp $
 .TH curs_addstr 3X ""
 .SH NAME
 \fBaddstr\fR,
@@ -40,7 +40,7 @@
 .SH SYNOPSIS
 .nf
 \fB#include <curses.h>\fR
-
+.PP
 \fBint addstr(const char *\fR\fIstr\fR\fB);\fR
 .br
 \fBint addnstr(const char *\fR\fIstr\fR\fB, int \fR\fIn\fR\fB);\fR
index 4ce7c2301e6a5116098bd8ff89d3615b925e35ab..4091b3627657e6de50e9eb134c345513cbbef03f 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 2002 Free Software Foundation, Inc.                        *
+.\" Copyright (c) 2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_addwstr.3x,v 1.2 2002/03/09 23:16:59 tom Exp $
+.\" $Id: curs_addwstr.3x,v 1.3 2003/12/27 18:51:01 tom Exp $
 .TH curs_addwstr 3X ""
 .SH NAME
 \fBaddwstr\fR,
@@ -40,7 +40,7 @@
 .SH SYNOPSIS
 .nf
 \fB#include <curses.h>\fR
-
+.PP
 \fBint addwstr(const wchar_t *\fR\fIwstr\fR\fB);\fR
 .br
 \fBint addnwstr(const wchar_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
index 3457ff2b26188cb6e6836c1e6ee6467de1a3ac27..bcbf61c498aea67587724f48aab849df73da86df 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_attr.3x,v 1.26 2002/09/21 19:50:06 tom Exp $
+.\" $Id: curs_attr.3x,v 1.27 2003/12/27 18:50:51 tom Exp $
 .TH curs_attr 3X ""
 .SH NAME
 \fBattroff\fR, \fBwattroff\fR, \fBattron\fR, \fBwattron\fR,
@@ -148,7 +148,7 @@ Use \fBtouchwin\fR to force the screen to match the updated attributes.
 The following video attributes, defined in \fB<curses.h>\fR, can be passed to
 the routines \fBattron\fR, \fBattroff\fR, and \fBattrset\fR, or OR'ed with the
 characters passed to \fBaddch\fR.
-
+.PP
 .TS
 center ;
 l l .
@@ -165,14 +165,14 @@ l l .
 \fBA_CHARTEXT\fR       Bit-mask to extract a character
 \fBCOLOR_PAIR(\fR\fIn\fR\fB)\fR        Color-pair number \fIn\fR
 .TE
-
+.PP
 The following macro is the reverse of \fBCOLOR_PAIR(\fR\fIn\fR\fB)\fR:
-
+.PP
 .br
 \fBPAIR_NUMBER(\fR\fIattrs\fR) Returns the pair number associated
                    with the \fBCOLOR_PAIR(\fR\fIn\fR\fB)\fR attribute.
 .br
-
+.PP
 The return values of many of these routines are not meaningful (they are
 implemented as macro-expanded assignments and simply return their argument).
 The SVr4 manual page claims (falsely) that these routines always return \fB1\fR.
@@ -196,7 +196,7 @@ XSI Curses added the new entry points, \fBattr_get\fR, \fBattr_on\fR,
 \fBattr_off\fR, \fBattr_set\fR, \fBwattr_on\fR, \fBwattr_off\fR,
 \fBwattr_get\fR, \fBwattr_set\fR.  These are intended to work with
 a new series of highlight macros prefixed with \fBWA_\fR.
-
+.PP
 .TS
 center ;
 l l .
@@ -209,7 +209,7 @@ l l .
 \fBWA_BOLD\fR  Extra bright or bold
 \fBWA_ALTCHARSET\fR    Alternate character set
 .TE
-
+.PP
 The XSI curses standard specifies that each pair of corresponding \fBA_\fR
 and \fBWA_\fR-using functions operates on the same current-highlight
 information.
index b9caaa804f764853593a7c9aa6db05515479ee4f..579931ccc47f64a5c9c41ec368034b38559b6c49 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998 Free Software Foundation, Inc.                        *
+.\" Copyright (c) 1998,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_beep.3x,v 1.7 1998/03/11 21:12:53 juergen Exp $
+.\" $Id: curs_beep.3x,v 1.9 2003/12/27 18:44:30 tom Exp $
 .TH curs_beep 3X ""
 .SH NAME
 \fBbeep\fR, \fBflash\fR - \fBcurses\fR bell and screen flash routines
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
-
+.PP
 \fBint beep(void);\fR
 .br
 \fBint flash(void);\fR
@@ -45,7 +45,7 @@ flashes the screen, and if that is not possible, sounds the alert.  If neither
 alert is possible, nothing happens.  Nearly all terminals have an audible alert
 (bell or beep), but only some can flash the screen.
 .SH RETURN VALUE
-These routines return \fBOK\fR if they succeed in beeping or flashing, 
+These routines return \fBOK\fR if they succeed in beeping or flashing,
 \fBERR\fR otherwise.
 .SH EXTENSIONS
 SVr4's beep and flash routines always returned \fBOK\fR, so it was not
index f5c620db55cf065cf052257305a0e48b0626427a..b2d768a441d927bd8fe0c97aeac001da0246bdc0 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_bkgd.3x,v 1.18 2002/09/21 19:46:26 tom Exp $
+.\" $Id: curs_bkgd.3x,v 1.19 2003/12/27 18:50:40 tom Exp $
 .TH curs_bkgd 3X ""
 .SH NAME
 \fBbkgdset\fR, \fBwbkgdset\fR,
 \fBbkgd\fR, \fBwbkgd\fR,
 \fBgetbkgd\fR - \fBcurses\fR window background manipulation routines
-
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
-
+.PP
 \fBvoid bkgdset(chtype ch);\fR
 .br
 \fBvoid wbkgdset(WINDOW *win, chtype ch);\fR
@@ -57,23 +56,23 @@ the character and attribute parts of the background are combined with
 the blank characters.  The background becomes a property of the
 character and moves with the character through any scrolling and
 insert/delete line/character operations.
-
+.PP
 To the extent possible on a particular terminal,
 the attribute part of the background is displayed
 as the graphic rendition of the character put on the screen.
-
+.PP
 The \fBbkgd\fR and \fBwbkgd\fR functions
 set the background property of the current or specified window
 and then apply this setting to every character position in that window:
-
+.PP
 .RS
 The rendition of every character on the screen is changed to
 the new background rendition.
-
+.PP
 Wherever the former background character
 appears, it is changed to the new background character.
 .RE
-
+.PP
 The \fBgetbkgd\fR function returns the given window's current background
 character/attribute pair.
 .SH RETURN VALUE
index 8b39402d1968f9cf6b3abcfb2c2de6b284d068d6..38a5496a9bb122b87c3b31aabc6870a2bac05d74 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_deleteln.3x,v 1.7 2000/11/11 20:43:20 Bernhard.Rosenkraenzer Exp $
+.\" $Id: curs_deleteln.3x,v 1.8 2003/05/10 20:33:49 jmc Exp $
 .TH curs_deleteln 3X ""
 .SH NAME
 \fBdeleteln\fR,
@@ -61,7 +61,7 @@ bottom lines are lost.  For negative \fIn\fR, delete \fIn\fR lines (starting
 with the one under the cursor), and move the remaining lines up.  The bottom
 \fIn\fR lines are cleared.  The current cursor position remains the same.
 
-The \fBinsertln\fR and \fBwinsertln\fR routines, insert a blank line above the
+The \fBinsertln\fR and \fBwinsertln\fR routines insert a blank line above the
 current line and the bottom line is lost.
 .SH RETURN VALUE
 All routines return the integer \fBERR\fR upon failure and an \fBOK\fR (SVr4
index dc05b39d1dc75e2096603e6dfc30686e4f81e43c..8e992e749d89964347f9464fec4e80e6e9be55dc 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1999-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1999-2002,2003 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            *
@@ -26,9 +26,9 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" Author: Thomas E. Dickey <dickey@clark.net> 1999
+.\" Author: Thomas E. Dickey 1999
 .\"
-.\" $Id: curs_extend.3x,v 1.9 2002/02/16 22:39:04 tom Exp $
+.\" $Id: curs_extend.3x,v 1.12 2003/10/25 20:33:16 tom Exp $
 .TH curs_extend 3X ""
 .SH NAME
 \fBcurses_version\fP,
@@ -55,11 +55,11 @@ function controls whether the calling application
 is able to use user-defined or nonstandard names
 which may be compiled into the terminfo
 description, i.e., via the terminfo or termcap interfaces.
-Normally these names are available for use, since the essential descision
-is made by using the \fB-x\fP option of \fItic\fP to compile
+Normally these names are available for use, since the essential decision
+is made by using the \fB\-x\fP option of \fItic\fP to compile
 extended terminal definitions.
 However you can disable this feature
-to ensure compatiblity with other implementations of curses
+to ensure compatibility with other implementations of curses.
 .SH PORTABILITY
 These routines are specific to ncurses.  They were not supported on
 Version 7, BSD or System V implementations.  It is recommended that
index 26ff2d4c436a08a3d21ca26df17dd701b5c4e329..ce723a0a65d850a0831c352064ff4bcd3a7a11d2 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 2002 Free Software Foundation, Inc.                        *
+.\" Copyright (c) 2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_get_wch.3x,v 1.3 2002/05/18 21:48:53 tom Exp $
+.\" $Id: curs_get_wch.3x,v 1.5 2003/05/10 20:33:49 jmc Exp $
 .TH curs_get_wch 3X ""
 .SH NAME
 \fBget_wch\fR,
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
 .sp
-\fBint get_wch(win_t *\fR\fIwch\fR\fB);\fR
+\fBint get_wch(wint_t *\fR\fIwch\fR\fB);\fR
 .br
-\fBint wget_wch(WINDOW *\fR\fIwin\fR\fB, win_t *\fR\fIwch\fR\fB);\fR
+\fBint wget_wch(WINDOW *\fR\fIwin\fR\fB, wint_t *\fR\fIwch\fR\fB);\fR
 .br
-\fBint mvget_wch(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, win_t *\fR\fIwch\fR\fB);\fR
+\fBint mvget_wch(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wint_t *\fR\fIwch\fR\fB);\fR
 .br
-\fBint mvwget_wch(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, win_t *\fR\fIwch\fR\fB);\fR
+\fBint mvwget_wch(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wint_t *\fR\fIwch\fR\fB);\fR
 .br
 \fBint unget_wch(const wchar_t \fR\fIwch\fR\fB);\fR
 .SH DESCRIPTION
@@ -130,7 +130,7 @@ at the same time.
 Depending on the state of the tty driver when each character
 is typed, the program may produce undesirable results.
 .PP
-All functions except \fBwget_wch\fR and \fBunget_wch\fR 
+All functions except \fBwget_wch\fR and \fBunget_wch\fR
 may be macros.
 .SH RETURN VALUES
 When
index f8fa51d47fcb25c859bdfefe02f3bebf1162d58d..86a5b82a11fc869af7f1b9360306d0a5afe3b72d 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 2002 Free Software Foundation, Inc.                        *
+.\" Copyright (c) 2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_get_wstr.3x,v 1.2 2002/05/18 21:48:15 tom Exp $
+.\" $Id: curs_get_wstr.3x,v 1.3 2003/07/05 11:15:28 tom Exp $
 .TH curs_get_wstr 3X ""
 .SH NAME
 \fBget_wstr\fR,
@@ -151,6 +151,9 @@ or if the lower-level \fBwget_wch\fR call returns an ERR.
 In the latter case,
 an ERR return without other data is treated as an end-of-file condition,
 and the returned array contains a \fBWEOF\fR followed by a null \fBwchar_t\fR.
+.PP
+X/Open curses documents these functions to pass an array of \fBwchar_t\fR,
+but all of the vendors implement this using \fBwint_t\fR.
 .SH SEE ALSO
 Functions:
 \fBcurses\fR(3X),
index 2dfa10b7967ac969d05efae7bbe9fe001f3e5b2b..06623175831802d916cab5d23685f054d8e2478a 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 2001,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 2001-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_getcchar.3x,v 1.6 2002/03/24 01:08:55 tom Exp $
+.\" $Id: curs_getcchar.3x,v 1.7 2003/05/10 20:33:49 jmc Exp $
 .TH curs_getcchar 3X ""
 .SH NAME
 \fBgetcchar\fP,
@@ -108,7 +108,7 @@ The wide-character string pointed to by \fIwch\fP.
 The string must be L'\\0' terminated,
 contain at most one character with strictly positive width,
 which must be the first,
-and contain no characters of negative width. 
+and contain no characters of negative width.
 .SH NOTES
 .PP
 The \fIopts\fP argument is reserved for future use.
index 73e1a29679b1f4c9814ca3f37993495fd4057254..88003a5d9dda1c4572f9eca30c1f5281253ea038 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_getch.3x,v 1.21 2002/03/17 14:36:21 tom Exp $
+.\" $Id: curs_getch.3x,v 1.24 2003/12/27 18:46:06 tom Exp $
 .TH curs_getch 3X ""
 .SH NAME
 \fBgetch\fR,
@@ -38,7 +38,7 @@
 \fBhas_key\fR \- get (or push back) characters from \fBcurses\fR terminal keyboard
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
-
+.PP
 \fBint getch(void);\fR
 .br
 \fBint wgetch(WINDOW *win);\fR
@@ -63,7 +63,7 @@ or after the first newline (nocbreak mode).
 In half-delay mode,
 the program waits until a character is typed or the
 specified timeout has been reached.
-
+.PP
 Unless \fBnoecho\fR has been set,
 then the character will also be echoed into the
 designated window according to the following rules:
@@ -73,19 +73,19 @@ as if \fBdelch\fR had been called.
 If the character value is any other \fBKEY_\fR define, the user is alerted
 with a \fBbeep\fR call.
 Otherwise the character is simply output to the screen.
-
+.PP
 If the window is not a pad, and it has been moved or modified since the last
 call to \fBwrefresh\fR, \fBwrefresh\fR will be called before another character
 is read.
-
+.PP
 If \fBkeypad\fR is \fBTRUE\fR, and a function key is pressed, the token for
 that function key is returned instead of the raw characters.
 Possible function
 keys are defined in \fB<curses.h>\fR as macros with values outside the range
-of 8-bit characters whose names begin with \fBKEY_.\fR Thus, a variable
+of 8-bit characters whose names begin with \fBKEY_\fR. Thus, a variable
 intended to hold the return value of a function key must be of short size or
 larger.
-
+.PP
 When a character that could be the beginning of a function key is received
 (which, on modern terminals, means an escape character),
 \fBcurses\fR sets a timer.
@@ -94,11 +94,11 @@ time, the character is passed through;
 otherwise, the function key value is returned.
 For this reason, many terminals experience a delay between the time
 a user presses the escape key and the escape is returned to the program.
-
+.PP
 The \fBungetch\fR routine places \fIch\fR back onto the input queue to be
 returned by the next call to \fBwgetch\fR.
 There is just one input queue for all windows.
-
+.PP
 .SS Function Keys
 The following function keys, defined in \fB<curses.h>\fR, might be returned by
 \fBgetch\fR if \fBkeypad\fR has been enabled.
@@ -110,7 +110,7 @@ center tab(/) ;
 l l
 l l .
 \fIName\fR/\fIKey\fR \fIname\fR
-
+.PP
 KEY_BREAK/Break key
 KEY_DOWN/The four arrow keys ...
 KEY_UP
@@ -143,7 +143,7 @@ KEY_ENTER/Enter or send
 KEY_SRESET/Soft (partial) reset
 KEY_RESET/Reset or hard reset
 KEY_PRINT/Print or copy
-KEY_LL/Home down or bottom (lower left).
+KEY_LL/Home down or bottom (lower left)
 KEY_A1/Upper left of keypad
 KEY_A3/Upper right of keypad
 KEY_B2/Center of keypad
@@ -208,7 +208,7 @@ KEY_SUNDO/Shifted undo key
 KEY_SUSPEND/Suspend key
 KEY_UNDO/Undo key
 .TE
-
+.PP
 Keypad is arranged like this:
 .sp
 .TS
@@ -222,7 +222,9 @@ c c c .
 The \fBhas_key\fR routine takes a key value from the above list, and
 returns TRUE or FALSE according to whether
 the current terminal type recognizes a key with that value.
-
+Note that a few values do not correspond to a real key,
+e.g., KEY_RESIZE and KEY_MOUSE.
+.PP
 .SH RETURN VALUE
 All routines return the integer \fBERR\fR upon failure and an integer value
 other than \fBERR\fR (\fBOK\fR in the case of ungetch()) upon successful
@@ -231,25 +233,25 @@ completion.
 Use of the escape key by a programmer for a single character function is
 discouraged, as it will cause a delay of up to one second while the
 keypad code looks for a following function-key sequence.
-
+.PP
 Note that some keys may be the same as commonly used control
 keys, e.g., KEY_ENTER versus control/M, KEY_BACKSPACE versus control/H.
 Some curses implementations may differ according to whether they
 treat these control keys specially (and ignore the terminfo), or
 use the terminfo definitions.
 \fBNcurses\fR uses the terminfo definition.
-If it says that KEY_ENTER is control/M, \fBgetch\fR, will return KEY_ENTER
+If it says that KEY_ENTER is control/M, \fBgetch\fR will return KEY_ENTER
 when you press control/M.
-
+.PP
 When using \fBgetch\fR, \fBwgetch\fR, \fBmvgetch\fR, or
 \fBmvwgetch\fR, nocbreak mode (\fBnocbreak\fR) and echo mode
 (\fBecho\fR) should not be used at the same time.
 Depending on the
 state of the tty driver when each character is typed, the program may
 produce undesirable results.
-
+.PP
 Note that \fBgetch\fR, \fBmvgetch\fR, and \fBmvwgetch\fR may be macros.
-
+.PP
 Historically, the set of keypad macros was largely defined by the extremely
 function-key-rich keyboard of the AT&T 7300, aka 3B1, aka Safari 4.
 Modern
@@ -266,27 +268,27 @@ They
 read single-byte characters only.
 The standard specifies that they return
 \fBERR\fR on failure, but specifies no error conditions.
-
+.PP
 The echo behavior of these functions on input of \fBKEY_\fR or backspace
 characters was not specified in the SVr4 documentation.
 This description is
 adopted from the XSI Curses standard.
-
+.PP
 The behavior of \fBgetch\fR and friends in the presence of handled signals is
 unspecified in the SVr4 and XSI Curses documentation.
 Under historical curses
 implementations, it varied depending on whether the operating system's
 implementation of handled signal receipt interrupts a \fBread\fR(2) call in
 progress or not, and also (in some implementations) depending on whether an
-input timeout or non-blocking mode hsd been set.
-
+input timeout or non-blocking mode has been set.
+.PP
 Programmers concerned about portability should be prepared for either of two
 cases: (a) signal receipt does not interrupt \fBgetch\fR; (b) signal receipt
 interrupts \fBgetch\fR and causes it to return ERR with \fBerrno\fR set to
 \fBEINTR\fR.
 Under the \fBncurses\fR implementation, handled signals never
 interrupt \fBgetch\fR.
-
+.PP
 The \fBhas_key\fR function is unique to \fBncurses\fR.
 We recommend that
 any code using it be conditionalized on the \fBNCURSES_VERSION\fR feature macro.
index 1a32a0be1aeb82fe36f4b8f6c07e5912f4bf7a32..ffbd28872407bc343d2e1cd3bb6b2bfd7038829a 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_getstr.3x,v 1.11 2002/04/13 22:14:30 tom Exp $
+.\" $Id: curs_getstr.3x,v 1.12 2003/05/10 20:33:49 jmc Exp $
 .TH curs_getstr 3X ""
 .SH NAME
 \fBgetstr\fR,
@@ -90,7 +90,7 @@ or if the lower-level \fBwgetch\fR call returns an ERR.
 
 SVr3 and early SVr4 curses implementations did not reject function keys;
 the SVr4.0 documentation claimed that "special keys" (such as function
-keys, "home" key, "clear" key, \fIetc\fR.) are interpreted" without
+keys, "home" key, "clear" key, \fIetc\fR.) are "interpreted", without
 giving details.  It lied.  In fact, the `character' value appended to the
 string by those implementations was predictable but not useful
 (being, in fact, the low-order eight bits of the key's KEY_ value).
index 87df1622f54f929384ad25048c4860e6bcde4c24..1e1a6eff1f32aaaf060f18daee088607d53e4c6c 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_getyx.3x,v 1.8 2002/09/21 19:00:38 tom Exp $
+.\" $Id: curs_getyx.3x,v 1.10 2003/05/10 20:33:49 jmc Exp $
 .TH curs_getyx 3X ""
 .SH NAME
-.IX getbegx
-.IX getbegy
-.IX getcurx
-.IX getcury
-.IX getmaxx
-.IX getmaxy
-.IX getparx
-.IX getpary
 \fBgetyx\fR,
 \fBgetparyx\fR,
 \fBgetbegyx\fR,
@@ -64,7 +56,7 @@ Otherwise, \fB-1\fR is placed into \fIy\fR and \fIx\fR.
 Like \fBgetyx\fR, the \fBgetbegyx\fR and \fBgetmaxyx\fR macros store
 the current beginning coordinates and size of the specified window.
 .SH RETURN VALUE
-The return values of these macros are undefined (\fIi\fR.\fIe\fR.,
+The return values of these macros are undefined (i.e.,
 they should not be used as the right-hand side of assignment statements).
 .SH NOTES
 All of these interfaces are macros.
index ea41729ed7dfabc34bb6d0f16b9f5ba5b8863990..02f149dff7fb62da3186899e0029deab25192446 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_initscr.3x,v 1.11 2002/07/20 14:51:04 tom Exp $
+.\" $Id: curs_initscr.3x,v 1.12 2003/05/10 20:33:49 jmc Exp $
 .TH curs_initscr 3X ""
 .SH NAME
 \fBinitscr\fR,
@@ -111,7 +111,7 @@ once.
 
 Old versions of curses, e.g., BSD 4.4, may have returned a null pointer
 from \fBinitscr\fR when an error is detected, rather than exiting.
-It is safe but redundant to check the return value of \fBinitscr\fR 
+It is safe but redundant to check the return value of \fBinitscr\fR
 in XSI Curses.
 .SH SEE ALSO
 \fBcurses\fR(3X), \fBcurs_kernel\fR(3X), \fBcurs_refresh\fR(3X),
index c129ae194ca35db032a5434e39b38ffa5f211c72..24a9bd61452676d891086f2d16543eb92e16b22e 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2001 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_inopts.3x,v 1.9 2002/08/10 22:29:49 tom Exp $
+.\" $Id: curs_inopts.3x,v 1.11 2003/12/27 18:45:42 tom Exp $
 .TH curs_inopts 3X ""
 .SH NAME
 \fBcbreak\fR, \fBnocbreak\fR, \fBecho\fR,
@@ -36,7 +36,7 @@
 \fBtypeahead\fR - \fBcurses\fR input options
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
-
+.PP
 \fBint cbreak(void);\fR
 .br
 \fBint nocbreak(void);\fR
@@ -78,14 +78,14 @@ erase/kill character-processing (interrupt and flow control characters are
 unaffected), making characters typed by the user immediately available to the
 program.  The \fBnocbreak\fR routine returns the terminal to normal (cooked)
 mode.
-
+.PP
 Initially the terminal may or may not be in \fBcbreak\fR mode, as the mode is
 inherited; therefore, a program should call \fBcbreak\fR or \fBnocbreak\fR
 explicitly.  Most interactive programs using \fBcurses\fR set the \fBcbreak\fR
 mode.  Note that \fBcbreak\fR overrides \fBraw\fR.
 [See \fBcurs_getch\fR(3X) for a
 discussion of how these routines interact with \fBecho\fR and \fBnoecho\fR.]
-
+.PP
 The \fBecho\fR and \fBnoecho\fR routines control whether characters typed by
 the user are echoed by \fBgetch\fR as they are typed.  Echoing by the tty
 driver is always disabled, but initially \fBgetch\fR is in echo mode, so
@@ -95,14 +95,14 @@ they disable echoing by calling \fBnoecho\fR.
 [See \fBcurs_getch\fR(3X) for a
 discussion of how these routines interact with \fBcbreak\fR and
 \fBnocbreak\fR.]
-
+.PP
 The \fBhalfdelay\fR routine is used for half-delay mode, which is similar to
 \fBcbreak\fR mode in that characters typed by the user are immediately
 available to the program.  However, after blocking for \fItenths\fR tenths of
 seconds, ERR is returned if nothing has been typed.  The value of \fBtenths\fR
 must be a number between 1 and 255.  Use \fBnocbreak\fR to leave half-delay
 mode.
-
+.PP
 If the \fBintrflush\fR option is enabled, (\fIbf\fR is \fBTRUE\fR), when an
 interrupt key is pressed on the keyboard (interrupt, break, quit) all output in
 the tty driver queue will be flushed, giving the effect of faster response to
@@ -110,7 +110,7 @@ the interrupt, but causing \fBcurses\fR to have the wrong idea of what is on
 the screen.  Disabling (\fIbf\fR is \fBFALSE\fR), the option prevents the
 flush.  The default for the option is inherited from the tty driver settings.
 The window argument is ignored.
-
+.PP
 The \fBkeypad\fR option enables the keypad of the user's terminal.  If
 enabled (\fIbf\fR is \fBTRUE\fR), the user can press a function key
 (such as an arrow key) and \fBwgetch\fR returns a single value
@@ -121,7 +121,7 @@ itself.  If the keypad in the terminal can be turned on (made to
 transmit) and off (made to work locally), turning on this option
 causes the terminal keypad to be turned on when \fBwgetch\fR is
 called.  The default value for keypad is false.
-
+.PP
 Initially, whether the terminal returns 7 or 8 significant bits on
 input depends on the control mode of the tty driver [see termio(7)].
 To force 8 bits to be returned, invoke \fBmeta\fR(\fIwin\fR,
@@ -134,17 +134,17 @@ to setting the CS7 flag on the terminal.  The window argument,
 \fBsmm\fR is sent to the terminal when \fBmeta\fR(\fIwin\fR,
 \fBTRUE\fR) is called and \fBrmm\fR is sent when \fBmeta\fR(\fIwin\fR,
 \fBFALSE\fR) is called.
-
+.PP
 The \fBnodelay\fR option causes \fBgetch\fR to be a non-blocking call.
 If no input is ready, \fBgetch\fR returns \fBERR\fR.  If disabled
 (\fIbf\fR is \fBFALSE\fR), \fBgetch\fR waits until a key is pressed.
-
+.PP
 While interpreting an input escape sequence, \fBwgetch\fR sets a timer
 while waiting for the next character.  If \fBnotimeout(\fR\fIwin\fR,
 \fBTRUE\fR) is called, then \fBwgetch\fR does not set a timer.  The
 purpose of the timeout is to differentiate between sequences received
 from a function key and those typed by a user.
-
+.PP
 The \fBraw\fR and \fBnoraw\fR routines place the terminal into or out of raw
 mode.  Raw mode is similar to \fBcbreak\fR mode, in that characters typed are
 immediately passed through to the user program.  The differences are that in
@@ -152,7 +152,7 @@ raw mode, the interrupt, quit, suspend, and flow control characters are all
 passed through uninterpreted, instead of generating a signal.  The behavior of
 the BREAK key depends on other bits in the tty driver that are not set by
 \fBcurses\fR.
-
+.PP
 When the \fBnoqiflush\fR routine is used, normal flush of input and
 output queues associated with the \fBINTR\fR, \fBQUIT\fR and
 \fBSUSP\fR characters will not be done [see termio(7)].  When
@@ -160,18 +160,18 @@ output queues associated with the \fBINTR\fR, \fBQUIT\fR and
 characters are read.  You may want to call \fBnoqiflush()\fR in a signal
 handler if you want output to continue as though the interrupt
 had not occurred, after the handler exits.
-
+.PP
 The \fBtimeout\fR and \fBwtimeout\fR routines set blocking or
 non-blocking read for a given window.  If \fIdelay\fR is negative,
-blocking read is used (\fIi\fR.\fIe\fR., waits indefinitely for
+blocking read is used (i.e., waits indefinitely for
 input).  If \fIdelay\fR is zero, then non-blocking read is used
-(\fIi\fR.\fIe\fR., read returns \fBERR\fR if no input is waiting).  If
+(i.e., read returns \fBERR\fR if no input is waiting).  If
 \fIdelay\fR is positive, then read blocks for \fIdelay\fR
 milliseconds, and returns \fBERR\fR if there is still no input.
 Hence, these routines provide the same functionality as \fBnodelay\fR,
 plus the additional capability of being able to block for only
 \fIdelay\fR milliseconds (where \fIdelay\fR is positive).
-
+.PP
 The \fBcurses\fR library does ``line-breakout optimization'' by looking for
 typeahead periodically while updating the screen.  If input is found,
 and it is coming from a tty, the current update is postponed until
@@ -188,18 +188,18 @@ specifies only "an integer value other than \fBERR\fR") upon successful
 completion, unless otherwise noted in the preceding routine descriptions.
 .SH PORTABILITY
 These functions are described in the XSI Curses standard, Issue 4.
-
+.PP
 The ncurses library obeys the XPG4 standard and the historical practice of the
 AT&T curses implementations, in that the echo bit is cleared when curses
 initializes the terminal state.  BSD curses differed from this slightly; it
 left the echo bit on at initialization, but the BSD \fBraw\fR call turned it
-off as a side-effect.  For best portability, set echo or noecho explicitly 
+off as a side-effect.  For best portability, set echo or noecho explicitly
 just after initialization, even if your program remains in cooked mode.
 .SH NOTES
 Note that \fBecho\fR, \fBnoecho\fR, \fBhalfdelay\fR, \fBintrflush\fR,
 \fBmeta\fR, \fBnodelay\fR, \fBnotimeout\fR, \fBnoqiflush\fR,
 \fBqiflush\fR, \fBtimeout\fR, and \fBwtimeout\fR may be macros.
-
+.PP
 The \fBnoraw\fR and \fBnocbreak\fR calls follow historical practice in that
 they attempt to restore to normal (`cooked') mode from raw and cbreak modes
 respectively.  Mixing raw/noraw and cbreak/nocbreak calls leads to tty driver
index 8546cf530e673898521b193d4982d207a7245879..44eaa1ecafafdb58b412907dcce14e2da9b17339 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_insch.3x,v 1.7 2000/07/01 19:57:21 tom Exp $
+.\" $Id: curs_insch.3x,v 1.8 2003/05/10 20:33:49 jmc Exp $
 .TH curs_insch 3X ""
 .SH NAME
 \fBinsch\fR,
@@ -45,7 +45,7 @@
 \fBint mvwinsch(WINDOW *win, int y, int x, chtype ch);\fR
 .br
 .SH DESCRIPTION
-These routines, insert the character \fIch\fR before the character under the
+These routines insert the character \fIch\fR before the character under the
 cursor.  All characters to the right of the cursor are moved one space to the
 right, with the possibility of the rightmost character on the line being lost.
 The insertion operation does not change the cursor position.
index c1e3e37f0cc0e03a89ba774aaf7c5951110e88e6..b15507629b92f7d76e0b5dbc7d8096172c70f221 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_mouse.3x,v 1.20 2002/07/20 14:52:14 tom Exp $
+.\" $Id: curs_mouse.3x,v 1.24 2003/12/27 18:47:54 tom Exp $
 .TH curs_mouse 3X ""
 .SH NAME
 \fBgetmouse\fR, \fBungetmouse\fR,
 \fBmouseinterval\fR - mouse interface through curses
 .SH SYNOPSIS
 .nf
-\fB#include <curses.h>\fR
-
+\fB#include <curses.h>
+.PP
 \fBtypedef unsigned long mmask_t;
-
+.PP
 typedef struct
 {
     short id;         \fI/* ID to distinguish multiple devices */\fB
@@ -70,7 +70,7 @@ These functions provide an interface to mouse events from
 \fBncurses\fR(3X).
 Mouse events are represented by \fBKEY_MOUSE\fR
 pseudo-key values in the \fBwgetch\fR input stream.
-
+.PP
 To make mouse events visible, use the \fBmousemask\fR function.
 This will set
 the mouse events to be reported.
@@ -80,13 +80,13 @@ can be reported; on complete failure it returns 0.
 If oldmask is non-NULL,
 this function fills the indicated location with the previous value of the given
 window's mouse event mask.
-
+.PP
 As a side effect, setting a zero mousemask may turn off the mouse pointer;
 setting a nonzero mask may turn it on.
 Whether this happens is device-dependent.
-
+.PP
 Here are the mouse event type masks:
-
+.PP
 .TS
 l l
 _ _
@@ -118,7 +118,7 @@ BUTTON_ALT  alt was down during button state change
 ALL_MOUSE_EVENTS       report all button state changes
 REPORT_MOUSE_POSITION  report mouse movement
 .TE
-
+.PP
 Once a class of mouse events have been made visible in a window,
 calling the \fBwgetch\fR function on that window may return
 \fBKEY_MOUSE\fR as an indicator that a mouse event has been queued.
@@ -131,26 +131,26 @@ x in the event structure coordinates will be screen-relative character-cell
 coordinates.
 The returned state mask will have exactly one bit set to
 indicate the event type.
-
+.PP
 The \fBungetmouse\fR function behaves analogously to \fBungetch\fR.
 It pushes
 a \fBKEY_MOUSE\fR event onto the input queue, and associates with that event
 the given state data and screen-relative character-cell coordinates.
-
+.PP
 The \fBwenclose\fR function tests whether a given pair of screen-relative
 character-cell coordinates is enclosed by a given window, returning TRUE
 if it is and FALSE otherwise.
 It is useful for determining what subset of
 the screen windows enclose the location of a mouse event.
-
+.PP
 The \fBwmouse_trafo\fR function transforms a given pair of coordinates from
 stdscr-relative coordinates to screen-relative coordinates or vice versa.
 Please remember, that stdscr-relative coordinates are not always identical
 to screen-relative coordinates due to the mechanism to reserve lines on top
 or bottom of the screen for other purposes (ripoff() call, see also slk_...
 functions).
-If the parameter \fBto_screen\fR is \fBTRUE\fR, the pointers 
-\fBpY, pX\fR must reference the coordinates of a location inside the window 
+If the parameter \fBto_screen\fR is \fBTRUE\fR, the pointers
+\fBpY, pX\fR must reference the coordinates of a location inside the window
 \fBwin\fR.
 They are converted to screen-relative coordinates and returned
 through the pointers.
@@ -168,19 +168,18 @@ window, \fBFALSE\fR is returned.
 Please notice, that the referenced coordinates
 are only replaced by the converted coordinates if the transformation was
 successful.
+.PP
 The \fBmouseinterval\fR function sets the maximum time (in thousands of a
 second) that can elapse between press and release events for them to
 be recognized as a click.
 Use \fBmouseinterval(-1)\fR to disable click resolution.
 This function returns the previous interval value.
 The default is one sixth of a second.
-
+.PP
 Note that mouse events will be ignored when input is in cooked mode, and will
 cause an error beep when cooked mode is being simulated in a window by a
 function such as \fBgetstr\fR that expects a linefeed for input-loop
 termination.
-
 .SH RETURN VALUE
 \fBgetmouse\fR, \fBungetmouse\fR and \fBmouseinterval\fR
 return the integer \fBERR\fR upon failure or \fBOK\fR
@@ -193,22 +192,38 @@ on their test result.
 .SH PORTABILITY
 These calls were designed for \fBncurses\fR(3X), and are not found in SVr4
 curses, 4.4BSD curses, or any other previous version of curses.
-
+.PP
 The feature macro \fBNCURSES_MOUSE_VERSION\fR is provided so the preprocessor
 can be used to test whether these features are present (its value is 1).
 If the interface is changed, the value of \fBNCURSES_MOUSE_VERSION\fR will be
 incremented.
-
+.PP
 The order of the \fBMEVENT\fR structure members is not guaranteed.
 Additional fields may be added to the structure in the future.
-
+.PP
 Under \fBncurses\fR(3X), these calls are implemented using either
-xterm's built-in mouse-tracking API or Alessandro Rubini's gpm server.
-If you are using something other than xterm and there is no gpm daemon
-running on your machine, mouse events will not be visible to
+xterm's built-in mouse-tracking API or
+platform-specific drivers including
+.RS
+Alessandro Rubini's gpm server.
+.br
+FreeBSD sysmouse
+.br
+OS/2 EMX
+.RE
+If you are using an unsupported configuration,
+mouse events will not be visible to
 \fBncurses\fR(3X) (and the \fBwmousemask\fR function will always
 return \fB0\fR).
-
+.PP
+If the terminfo entry contains a \fBXM\fR string,
+this is used in the xterm mouse driver to control the
+way the terminal is initialized for mouse operation.
+The default, if \fBXM\fR is not found,
+corresponds to private mode 1000 of xterm:
+.RS
+\\E[?1000%?%p1%{1}%=%th%el%;
+.RE
 The z member in the event structure is not presently used.
 It is intended
 for use with touch screens (which may be pressure-sensitive) or with
@@ -218,12 +233,12 @@ Mouse events under xterm will not in fact be ignored during cooked mode,
 if they have been enabled by \fBwmousemask\fR.
 Instead, the xterm mouse
 report sequence will appear in the string read.
-
+.PP
 Mouse events under xterm will not be detected correctly in a window with
 its keypad bit off, since they are interpreted as a variety of function key.
 Your terminfo description must have \fBkmous\fR set to "\\E[M" (the beginning
 of the response from xterm for mouse clicks).
-
+.PP
 Because there are no standard terminal responses that would serve to identify
 terminals which support the xterm mouse protocol, \fBncurses\fR assumes that
 if your $TERM environment variable contains "xterm",
index f9db6f26def5d791128f0cd3f155794bc9a36494..c5b518c12ebeebaad90f0156998ea359f8e5a0a9 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2001 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2001,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_outopts.3x,v 1.17 2001/10/14 00:50:30 tom Exp $
+.\" $Id: curs_outopts.3x,v 1.18 2003/05/10 20:33:49 jmc Exp $
 .TH curs_outopts 3X ""
 .SH NAME
 \fBclearok\fR, \fBidlok\fR, \fBidcok\fR, \fBimmedok\fR,
@@ -93,7 +93,7 @@ of character insertion and deletion.
 
 If \fBimmedok\fR is called with \fBTRUE as argument\fR, any change
 in the window image, such as the ones caused by \fBwaddch, wclrtobot, wscrl\fR,
-\fIetc\fR., automatically cause a call to \fBwrefresh\fR.
+etc., automatically cause a call to \fBwrefresh\fR.
 However, it may
 degrade performance considerably, due to repeated calls to \fBwrefresh\fR.
 It is disabled by default.
@@ -165,7 +165,7 @@ ability to do the equivalent of \fBclearok(..., 1)\fR by saying
 This will not work under
 ncurses.
 
-Earlier System V curses implementations specified that with \fBscrollok\fR 
+Earlier System V curses implementations specified that with \fBscrollok\fR
 enabled, any window modification triggering a scroll also forced a physical
 refresh.
 XSI Curses does not require this, and \fBncurses\fR avoids doing
index 0813a0a48f64120e2dc8129680756e2183e63823..4db08dcf440b48a7db89bb5d338bd96ceec4d1d6 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2003,2004 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_pad.3x,v 1.9 2000/07/04 22:38:13 tom Exp $
+.\" $Id: curs_pad.3x,v 1.12 2004/01/04 01:36:49 tom Exp $
 .TH curs_pad 3X ""
 .SH NAME
 \fBnewpad\fR, \fBsubpad\fR, \fBprefresh\fR,
-\fBpnoutrefresh\fR, \fBpechochar\fR - create and display \fBcurses\fR pads
+\fBpnoutrefresh\fR,
+\fBpechochar\fR, \fBpecho_wchar\fR - create and display \fBcurses\fR pads
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
-
+.sp
 \fBWINDOW *newpad(int nlines, int ncols);\fR
 .br
 \fBWINDOW *subpad(WINDOW *orig, int nlines, int ncols,\fR
       \fBint sminrow, int smincol, int smaxrow, int smaxcol);\fR
 .br
 \fBint pechochar(WINDOW *pad, chtype ch);\fR
+.br
+\fBint pecho_wchar(WINDOW *pad, const cchar_t *wch);\fR
 .SH DESCRIPTION
 The \fBnewpad\fR routine creates and returns a pointer to a new pad data
 structure with the given number of lines, \fInlines\fR, and columns,
-\fIncols\fR.  A pad is like a window, except that it is not restricted by the
+\fIncols\fR.
+A pad is like a window, except that it is not restricted by the
 screen size, and is not necessarily associated with a particular part of the
-screen.  Pads can be used when a large window is needed, and only a part of the
-window will be on the screen at one time.  Automatic refreshes of pads
-(\fIe\fR.\fIg\fR., from scrolling or echoing of input) do not occur.  It is not
+screen.
+Pads can be used when a large window is needed, and only a part of the
+window will be on the screen at one time.
+Automatic refreshes of pads
+(e.g., from scrolling or echoing of input) do not occur.
+It is not
 legal to call \fBwrefresh\fR with a \fIpad\fR as an argument; the routines
-\fBprefresh\fR or \fBpnoutrefresh\fR should be called instead.  Note that these
+\fBprefresh\fR or \fBpnoutrefresh\fR should be called instead.
+Note that these
 routines require additional parameters to specify the part of the pad to be
 displayed and the location on the screen to be used for the display.
-
+.PP
 The \fBsubpad\fR routine creates and returns a pointer to a subwindow within a
 pad with the given number of lines, \fInlines\fR, and columns, \fIncols\fR.
 Unlike \fBsubwin\fR, which uses screen coordinates, the window is at position
-(\fIbegin\fR_\fIx\fR\fB,\fR \fIbegin\fR_\fIy\fR) on the pad.  The window is
+(\fIbegin\fR_\fIx\fR\fB,\fR \fIbegin\fR_\fIy\fR) on the pad.
+The window is
 made in the middle of the window \fIorig\fR, so that changes made to one window
-affect both windows.  During the use of this routine, it will often be
+affect both windows.
+During the use of this routine, it will often be
 necessary to call \fBtouchwin\fR or \fBtouchline\fR on \fIorig\fR before
 calling \fBprefresh\fR.
-
+.PP
 The \fBprefresh\fR and \fBpnoutrefresh\fR routines are analogous to
 \fBwrefresh\fR and \fBwnoutrefresh\fR except that they relate to pads instead
-of windows.  The additional parameters are needed to indicate what part of the
-pad and screen are involved.  \fIpminrow\fR and \fIpmincol\fR specify the upper
-left-hand corner of the rectangle to be displayed in the pad.  \fIsminrow\fR,
+of windows.
+The additional parameters are needed to indicate what part of the
+pad and screen are involved.
+\fIpminrow\fR and \fIpmincol\fR specify the upper
+left-hand corner of the rectangle to be displayed in the pad.
+\fIsminrow\fR,
 \fIsmincol\fR, \fIsmaxrow\fR, and \fIsmaxcol\fR specify the edges of the
-rectangle to be displayed on the screen.  The lower right-hand corner of the
+rectangle to be displayed on the screen.
+The lower right-hand corner of the
 rectangle to be displayed in the pad is calculated from the screen coordinates,
-since the rectangles must be the same size.  Both rectangles must be entirely
-contained within their respective structures.  Negative values of
+since the rectangles must be the same size.
+Both rectangles must be entirely
+contained within their respective structures.
+Negative values of
 \fIpminrow\fR, \fIpmincol\fR, \fIsminrow\fR, or \fIsmincol\fR are treated as if
 they were zero.
-
+.PP
 The \fBpechochar\fR routine is functionally equivalent to a call to \fBaddch\fR
 followed by a call to \fBrefresh\fR, a call to \fBwaddch\fR followed by a call
 to \fBwrefresh\fR, or a call to \fBwaddch\fR followed by a call to
-\fBprefresh.\fR The knowledge that only a single character is being output is
+\fBprefresh\fR.
+The knowledge that only a single character is being output is
 taken into consideration and, for non-control characters, a considerable
 performance gain might be seen by using these routines instead of their
-equivalents.  In the case of \fBpechochar\fR, the last location of the pad on
+equivalents.
+In the case of \fBpechochar\fR, the last location of the pad on
 the screen is reused for the arguments to \fBprefresh\fR.
+.PP
+The \fBpecho_wchar\fR function is the analogous wide-character
+form of \fBpechochar\fR.
+It outputs one character to a pad and immediately refreshes the pad.
+It does this by a call to \fBwadd_wch\fR followed by a call to \fBprefresh\fR.
 .SH RETURN VALUE
 Routines that return an integer return \fBERR\fR upon failure and \fBOK\fR
 (SVr4 only specifies "an integer value other than \fBERR\fR") upon successful
 completion.
-
+.PP
 Routines that return pointers return \fBNULL\fR on error, and set \fBerrno\fR
-to \fBENOMEM\fR.  
+to \fBENOMEM\fR.
 .SH NOTES
 Note that \fBpechochar\fR may be a macro.
 .SH PORTABILITY
index dd4b6e3cba45ecb54d47ca93b5e1930a874dfbe3..3077d34769e3a7eec565483defbc4bab29356a88 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_print.3x,v 1.5 2002/02/16 22:39:04 tom Exp $
+.\" $Id: curs_print.3x,v 1.6 2003/05/10 20:33:49 jmc Exp $
 .TH curs_print 3X ""
 .SH NAME
 \fBmcprint\fR - ship binary data to printer
@@ -46,7 +46,7 @@ keeping the rate of writes to the printer below its continuous throughput rate
 rule of thumb is to sleep for a second after shipping each 80-character line.
 
 .SH RETURN VALUE
-The \fBmcprint\fR function returns \fBERR\fR if the write operation aborted 
+The \fBmcprint\fR function returns \fBERR\fR if the write operation aborted
 for some reason.  In this case, errno will contain either an error associated
 with \fBwrite(2)\fR or one of the following:
 .TP 5
index 3b9c35825234547eefe33fe9db9de1ff5b53b70d..f16e2fe05e4a736b5589c9fd50b77c3072de2b16 100644 (file)
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_printw.3x,v 1.12 2002/07/20 15:01:43 tom Exp $
+.\" $Id: curs_printw.3x,v 1.13 2002/11/16 22:28:57 tom Exp $
 .TH curs_printw 3X ""
 .SH NAME
 \fBprintw\fR,
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
 
-\fBint printw(char *fmt, ...);\fR
+\fBint printw(const char *fmt, ...);\fR
 .br
-\fBint wprintw(WINDOW *win, char *fmt, ...);\fR
+\fBint wprintw(WINDOW *win, const char *fmt, ...);\fR
 .br
-\fBint mvprintw(int y, int x, char *fmt, ...);\fR
+\fBint mvprintw(int y, int x, const char *fmt, ...);\fR
 .br
-\fBint mvwprintw(WINDOW *win, int y, int x, char *fmt, ...);\fR
+\fBint mvwprintw(WINDOW *win, int y, int x, const char *fmt, ...);\fR
 .br
-\fBint vwprintw(WINDOW *win, char *fmt, va_list varglist);\fR
+\fBint vwprintw(WINDOW *win, const char *fmt, va_list varglist);\fR
 .br
-\fBint vw_printw(WINDOW *win, char *fmt, va_list varglist);\fR
+\fBint vw_printw(WINDOW *win, const char *fmt, va_list varglist);\fR
 .br
 .SH DESCRIPTION
 The \fBprintw\fR, \fBwprintw\fR, \fBmvprintw\fR and \fBmvwprintw\fR
index 581d10d13c43cab4413defab94d941fb0ad864ff..a925ea56d9414e01d1f260dd3d0ee1f77ec69207 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_scr_dump.3x,v 1.2 2000/07/01 20:06:53 tom Exp $
+.\" $Id: curs_scr_dump.3x,v 1.3 2003/10/25 20:34:06 tom Exp $
 .TH curs_scr_dump 3X ""
 .SH NAME
 \fBscr_dump\fR,
@@ -58,7 +58,7 @@ them to initialize the \fBcurses\fR data structures about what the terminal
 currently has on its screen.  If the data is determined to be valid,
 \fBcurses\fR bases its next update of the screen on this information rather
 than clearing the screen and starting from scratch.  \fBscr_init\fR is used
-after \fBinitscr\fR or a \fBsystem\fR [see \fBsystem\fR(BA_LIB)] call to share
+after \fBinitscr\fR or a \fBsystem\fR call to share
 the screen with another process which has done a \fBscr_dump\fR after its
 \fBendwin\fR call.  The data is declared invalid if the terminfo capabilities
 \fBrmcup\fR and \fBnrrmc\fR exist; also if the terminal has been written to
index f957ac96db7c2fe8a013113ec5dab96fd98ebc7a..4e694c33b1f932e3b00594f02d925f71c092a3b2 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2001,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_scroll.3x,v 1.9 2001/10/14 00:51:56 tom Exp $
+.\" $Id: curs_scroll.3x,v 1.10 2003/05/10 20:33:49 jmc Exp $
 .TH curs_scroll 3X ""
 .SH NAME
 \fBscroll\fR, \fBscrl\fR, \fBwscrl\fR - scroll a \fBcurses\fR window
@@ -61,12 +61,12 @@ These routines return \fBERR\fR upon failure, and \fBOK\fR (SVr4 only specifies
 .SH NOTES
 Note that \fBscrl\fR and \fBscroll\fR may be macros.
 
-The SVr4 documentation says that the optimization of physically scrolling 
+The SVr4 documentation says that the optimization of physically scrolling
 immediately if the scroll region is the entire screen "is" performed, not
 "may be" performed.
 This implementation deliberately does not guarantee
 that this will occur, to leave open the possibility of smarter
-optimization of multiple scroll actions on the next update. 
+optimization of multiple scroll actions on the next update.
 
 Neither the SVr4 nor the XSI documentation specify whether the current
 attribute or
index 8f1ae8a0d9bfebd9f7464001534c45065cc81fd2..1271f85969638601ccac49516846d189a84bab77 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_slk.3x,v 1.11 2001/03/03 21:05:41 Todd.C.Miller Exp $
+.\" $Id: curs_slk.3x,v 1.12 2003/05/10 20:33:49 jmc Exp $
 .TH curs_slk 3X ""
 .SH NAME
 \fBslk_init\fR, \fBslk_set\fR, \fBslk_refresh\fR,
@@ -77,7 +77,7 @@ The slk* functions manipulate the set of soft function-key labels that exist on
 many terminals.  For those terminals that do not have soft labels,
 \fBcurses\fR takes over the bottom line of \fBstdscr\fR, reducing the size of
 \fBstdscr\fR and the variable \fBLINES\fR.  \fBcurses\fR standardizes on eight
-labels of up to eight characters each. In addition to this, the ncurses 
+labels of up to eight characters each. In addition to this, the ncurses
 implementation supports a mode where it simulates 12 labels of up to five
 characters each. This is most common for todays PC like enduser devices.
 Please note that ncurses simulates this mode by taking over up to two lines at
@@ -94,10 +94,10 @@ PC like 4-4-4 mode. If \fBfmt\fR is set to \fB3\fR, it is again the PC like
 identify the key numbers easily.
 
 The \fBslk_set\fR routine requires \fIlabnum\fR to be a label number,
-from \fB1\fR to \fB8\fR (resp. \fB12\fR); \fIlabel\fR must be the string 
+from \fB1\fR to \fB8\fR (resp. \fB12\fR); \fIlabel\fR must be the string
 to be put on the label, up to eight (resp. five) characters in length.
 A null string or a null pointer sets up a blank label. \fIfmt\fR is either
-\fB0\fR, \fB1\fR, or \fB2\fR, indicating whether the label is  to be 
+\fB0\fR, \fB1\fR, or \fB2\fR, indicating whether the label is  to be
 left-justified, centered, or right-justified, respectively, within the
 label.
 
@@ -109,7 +109,7 @@ The \fBslk_label\fR routine returns the current label for label number
 
 The \fBslk_clear\fR routine clears the soft labels from the screen.
 
-The \fBslk_restore\fR routine, restores the soft labels to the screen
+The \fBslk_restore\fR routine restores the soft labels to the screen
 after a \fBslk_clear\fR has been performed.
 
 The \fBslk_touch\fR routine forces all the soft labels to be output
@@ -118,7 +118,7 @@ the next time a \fBslk_noutrefresh\fR is performed.
 The \fBslk_attron\fR, \fBslk_attrset\fR, \fBslk_attroff\fR and \fBslk_attr\fR
 routines correspond to \fBattron\fR, \fBattrset\fR, \fBattroff\fR and \fBattr_get\fR.
 They have an effect only if soft labels are simulated on the bottom line of
-the screen.  The default highlight for soft keys is A_STANDOUT (as in 
+the screen.  The default highlight for soft keys is A_STANDOUT (as in
 System V curses, which does not document this fact).
 
 The \fBslk_color\fR routine corresponds to \fBcolor_set\fR. It has an effect only
index d285b8663345c97c0333662e18fcdbaab5d36c80..48ff21ced68c375c85f59a97174b77e648222fc9 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_termattrs.3x,v 1.8 2002/05/11 21:32:26 tom Exp $
+.\" $Id: curs_termattrs.3x,v 1.9 2003/12/27 18:37:47 tom Exp $
 .TH curs_termattrs 3X ""
 .SH NAME
 \fBbaudrate\fR,
@@ -42,7 +42,7 @@
 \fBtermname\fR - \fBcurses\fR environment query routines
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
-
+.PP
 \fBint baudrate(void);\fR
 .br
 \fBchar erasechar(void);\fR
 The \fBbaudrate\fR routine returns the output speed of the terminal.  The
 number returned is in bits per second, for example \fB9600\fR, and is an
 integer.
-
+.PP
 The \fBerasechar\fR routine returns the user's current erase character.
-
+.PP
 The \fBerasewchar\fR routine stores the current erase character
 in the location referenced by \fIch\fR.
 If no erase character has been defined, the routine fails
 and the location referenced by \fIch\fR is not changed.
-
+.PP
 The \fBhas_ic\fR routine is true if the terminal has insert- and delete-
 character capabilities.
-
+.PP
 The \fBhas_il\fR routine is true if the terminal has insert- and delete-line
 capabilities, or can simulate them using scrolling regions.  This might
 be used to determine if it would be appropriate to turn on physical
 scrolling using \fBscrollok\fR.
-
+.PP
 The \fBkillchar\fR routine returns the user's current line kill character.
-
+.PP
 The \fBkillwchar\fR routine stores the current line-kill character
 in the location referenced by \fIch\fR.
 If no line-kill character has been defined,
 the routine fails and the location referenced by \fIch\fR is not changed.
-
+.PP
 The \fBlongname\fR routine returns a pointer to a static area
 containing a verbose description of the current terminal.  The maximum
 length of a verbose description is 128 characters.  It is defined only
@@ -100,7 +100,7 @@ overwritten by each call to \fBnewterm\fR and is not restored by
 \fBset_term\fR, so the value should be saved between calls to
 \fBnewterm\fR if \fBlongname\fR is going to be used with multiple
 terminals.
-
+.PP
 If a given terminal doesn't support a video attribute that an
 application program is trying to use, \fBcurses\fR may substitute a
 different video attribute for it.
@@ -109,12 +109,11 @@ return a logical \fBOR\fR of all video attributes supported by the
 terminal using \fIA_\fR and \fIWA_\fR constants respectively.
 This information is useful when a \fBcurses\fR program
 needs complete control over the appearance of the screen.
-
-The \fBtermname\fR routine returns the value of the environmental
-variable \fBTERM\fR (truncated to 14 characters).
+.PP
+The \fBtermname\fR routine returns the terminal name used by \fBsetupterm\fR.
 .SH RETURN VALUE
 \fBlongname\fR and \fBtermname\fR return \fBNULL\fR on error.
-
+.PP
 Routines that return an integer return \fBERR\fR upon failure and \fBOK\fR
 (SVr4 only specifies "an integer value other than \fBERR\fR") upon successful
 completion.
@@ -123,6 +122,8 @@ Note that \fBtermattrs\fR may be a macro.
 .SH PORTABILITY
 The XSI Curses standard, Issue 4 describes these functions.  It changes the
 return type of \fBtermattrs\fR to the new type \fBattr_t\fR.
+Most versions of curses truncate the result returned by \fBtermname\fR to
+14 characters.
 .SH SEE ALSO
 \fBcurses\fR(3X), \fBcurs_initscr\fR(3X), \fBcurs_outopts\fR(3X)
 .\"#
index 828bb9ad3cfdf53c35da3ec2fad5458383afca93..c5c5517e61004ce404d7dedaee9f1a5502299162 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_termcap.3x,v 1.16 2002/02/16 19:26:41 tom Exp $
+.\" $Id: curs_termcap.3x,v 1.18 2003/02/08 22:25:47 tom Exp $
 .TH curs_termcap 3X ""
 .ds n 5
 .SH NAME
@@ -130,6 +130,12 @@ appear to be terminfo).
 Because terminfo conventions for representing padding in string capabilities
 differ from termcap's, \fBtputs("50");\fR will put out a literal "50" rather
 than busy-waiting for 50 milliseconds.  Cope with it.
+
+Note that termcap has nothing analogous to terminfo's \fBsgr\fR string.
+One consequence of this is that termcap applications assume \fRme\fR
+(terminfo \fBsgr0\fR) does not reset the alternate character set.
+This implementation checks for, and modifies the data shown to the
+termcap interface to accommodate termcap's limitation in this respect.
 .SH PORTABILITY
 The XSI Curses standard, Issue 4 describes these functions.  However, they
 are marked TO BE WITHDRAWN and may be removed in future versions.
index ee0ef0c00c309bcaca82edc4a1533da73f26a2b1..d5c9bf68275baddcdde584601f7995ccbda17e4a 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1999-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1999-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_terminfo.3x,v 1.16 2002/07/20 16:05:19 tom Exp $
+.\" $Id: curs_terminfo.3x,v 1.18 2003/12/27 18:48:59 tom Exp $
 .TH curs_terminfo 3X ""
 .ds n 5
 .SH NAME
@@ -51,7 +51,7 @@
 \fB#include <curses.h>\fR
 .br
 \fB#include <term.h>\fR
-
+.PP
 \fBint setupterm(char *\fR\fIterm\fR\fB, int \fR\fIfildes\fR\fB, int *\fR\fIerrret\fR\fB);\fR
 .br
 \fBint setterm(char *\fR\fIterm\fR\fB);\fR
@@ -91,7 +91,7 @@ directly with the \fBterminfo\fR database to handle certain terminal
 capabilities, such as programming function keys.  For all other
 functionality, \fBcurses\fR routines are more suitable and their use is
 recommended.
-
+.PP
 Initially, \fBsetupterm\fR should be called.  Note that
 \fBsetupterm\fR is automatically called by \fBinitscr\fR and
 \fBnewterm\fR.  This defines the set of terminal-dependent variables
@@ -105,21 +105,21 @@ exist and the program is running in a window, the current window size
 is used.  Otherwise, if the environment variables do not exist, the
 values for \fBlines\fR and \fBcolumns\fR specified in the
 \fBterminfo\fR database are used.
-
+.PP
 The header files \fBcurses.h\fR and \fBterm.h\fR should be included (in this
 order) to get the definitions for these strings, numbers, and flags.
-Parameterized strings should be passed through \fBtparm\fR to instantiate them.  
+Parameterized strings should be passed through \fBtparm\fR to instantiate them. 
 All \fBterminfo\fR strings [including the output of \fBtparm\fR] should be printed
 with \fBtputs\fR or \fBputp\fR.  Call the \fBreset_shell_mode\fR to restore the
 tty modes before exiting [see \fBcurs_kernel\fR(3X)].  Programs which use
 cursor addressing should output \fBenter_ca_mode\fR upon startup and should
 output \fBexit_ca_mode\fR before exiting.  Programs desiring shell escapes
 should call
-
+.PP
 \fBreset_shell_mode\fR and output \fBexit_ca_mode\fR before the shell
 is called and should output \fBenter_ca_mode\fR and call
 \fBreset_prog_mode\fR after returning from the shell.
-
+.PP
 The \fBsetupterm\fR routine reads in the \fBterminfo\fR database,
 initializing the \fBterminfo\fR structures, but does not set up the
 output virtualization structures used by \fBcurses\fR.  The terminal
@@ -154,7 +154,7 @@ and exits.  Thus, the simplest call is:
       \fBsetupterm((char *)0, 1, (int *)0);\fR,
 
 which uses all the defaults and sends the output to \fBstdout\fR.
-
+.PP
 The \fBsetterm\fR routine is being replaced by \fBsetupterm\fR.  The call:
 
       \fBsetupterm(\fR\fIterm\fR\fB, 1, (int *)0)\fR
@@ -162,48 +162,48 @@ The \fBsetterm\fR routine is being replaced by \fBsetupterm\fR.  The call:
 provides the same functionality as \fBsetterm(\fR\fIterm\fR\fB)\fR.
 The \fBsetterm\fR routine is included here for BSD compatibility, and
 is not recommended for new programs.
-
+.PP
 The \fBset_curterm\fR routine sets the variable \fBcur_term\fR to
 \fInterm\fR, and makes all of the \fBterminfo\fR boolean, numeric, and
 string variables use the values from \fInterm\fR.  It returns the old value
 of \fBcur_term\fR.
-
+.PP
 The \fBdel_curterm\fR routine frees the space pointed to by
 \fIoterm\fR and makes it available for further use.  If \fIoterm\fR is
 the same as \fBcur_term\fR, references to any of the \fBterminfo\fR
 boolean, numeric, and string variables thereafter may refer to invalid
 memory locations until another \fBsetupterm\fR has been called.
-
+.PP
 The \fBrestartterm\fR routine is similar to \fBsetupterm\fR and \fBinitscr\fR,
 except that it is called after restoring memory to a previous state (for
 example, when reloading a game saved as a core image dump).  It assumes that
 the windows and the input and output options are the same as when memory was
 saved, but the terminal type and baud rate may be different.  Accordingly,
 it saves various tty state bits, does a setupterm, and then restores the bits.
-
+.PP
 The \fBtparm\fR routine instantiates the string \fIstr\fR with
 parameters \fIpi\fR.  A pointer is returned to the result of \fIstr\fR
 with the parameters applied.
-
+.PP
 The \fBtputs\fR routine applies padding information to the string
 \fIstr\fR and outputs it.  The \fIstr\fR must be a terminfo string
 variable or the return value from \fBtparm\fR, \fBtgetstr\fR, or
 \fBtgoto\fR.  \fIaffcnt\fR is the number of lines affected, or 1 if
 not applicable.  \fIputc\fR is a \fBputchar\fR-like routine to which
 the characters are passed, one at a time.
-
+.PP
 The \fBputp\fR routine calls \fBtputs(\fR\fIstr\fR\fB, 1, putchar)\fR.
 Note that the output of \fBputp\fR always goes to \fBstdout\fR, not to
 the \fIfildes\fR specified in \fBsetupterm\fR.
-
+.PP
 The \fBvidputs\fR routine displays the string on the terminal in the
 video attribute mode \fIattrs\fR, which is any combination of the
 attributes listed in \fBcurses\fR(3X).  The characters are passed to
 the \fBputchar\fR-like routine \fIputc\fR.
-
+.PP
 The \fBvidattr\fR routine is like the \fBvidputs\fR routine, except
 that it outputs through \fBputchar\fR.
-
+.PP
 The \fBvid_attr\fR and \fBvid_puts\fR routines correspond to vidattr and vidputs,
 respectively.
 They use a set of arguments for representing the video attributes plus color,
@@ -214,26 +214,26 @@ The \fBvid_attr\fR and \fBvid_puts\fR routines
 are designed to use the attribute constants with the \fIWA_\fR prefix.
 The opts argument is reserved for future use.
 Currently, applications must provide a null pointer for that argument.
-
+.PP
 The \fBmvcur\fR routine provides low-level cursor motion.  It takes
 effect immediately (rather than at the next refresh).
-
+.PP
 The \fBtigetflag\fR, \fBtigetnum\fR and \fBtigetstr\fR routines return
 the value of the capability corresponding to the \fBterminfo\fR
 \fIcapname\fR passed to them, such as \fBxenl\fR.
-
+.PP
 The \fBtigetflag\fR routine returns the value \fB-1\fR if
 \fIcapname\fR is not a boolean capability,
 or \fB0\fR if it is canceled or absent from the terminal description.
-
+.PP
 The \fBtigetnum\fR routine returns the value \fB-2\fR if
 \fIcapname\fR is not a numeric capability,
 or \fB-1\fR if it is canceled or absent from the terminal description.
-
+.PP
 The \fBtigetstr\fR routine returns the value \fB(char *)-1\fR
 if \fIcapname\fR is not a string capability,
 or \fB0\fR if it is canceled or absent from the terminal description.
-
+.PP
 The \fIcapname\fR for each capability is given in the table column entitled
 \fIcapname\fR code in the capabilities section of \fBterminfo\fR(\*n).
 
@@ -250,37 +250,37 @@ These null-terminated arrays contain the \fIcapnames\fR, the
 Routines that return an integer return \fBERR\fR upon failure and \fBOK\fR
 (SVr4 only specifies "an integer value other than \fBERR\fR") upon successful
 completion, unless otherwise noted in the preceding routine descriptions.
-
+.PP
 Routines that return pointers always return \fBNULL\fR on error.
 .SH NOTES
 The \fBsetupterm\fR routine should be used in place of \fBsetterm\fR.
 It may be useful when you want to test for terminal capabilities without
 committing to the allocation of storage involved in \fBinitscr\fR.
-
+.PP
 Note that \fBvidattr\fR and \fBvidputs\fR may be macros.
 .SH PORTABILITY
 The function \fBsetterm\fR is not described in the XSI Curses standard and must
 be considered non-portable.  All other functions are as described in the XSI
 curses standard.
-
+.PP
 In System V Release 4, \fBset_curterm\fR has an \fBint\fR return type and
 returns \fBOK\fR or \fBERR\fR.  We have chosen to implement the XSI Curses
 semantics.
-
+.PP
 In System V Release 4, the third argument of \fBtputs\fR has the type
 \fBint (*putc)(char)\fR.
-
+.PP
 The XSI Curses standard prototypes \fBtparm\fR with a fixed number of parameters,
 rather than a variable argument list.
 This implementation uses a variable argument list.
 Portable applications should provide 9 parameters after the format;
 zeroes are fine for this purpose.
-
+.PP
 XSI notes that after calling \fBmvcur\fR, the curses state may not match the
 actual terminal state, and that an application should touch and refresh
 the window before resuming normal curses calls.
 Both ncurses and System V Release 4 curses implement \fBmvcur\fR using
-the SCREEN data allocated in either \fBinitscr\fR or \fBnewterm\fR. 
+the SCREEN data allocated in either \fBinitscr\fR or \fBnewterm\fR.
 So though it is documented as a terminfo function,
 \fBmvcur\fR is really a curses function which is not well specified.
 .SH SEE ALSO
index 90f00d072dda91cd4d457506a132635fbae3c967..de19a308c85f6136915c2f211256873104870f4e 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2003,2004 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_util.3x,v 1.9 2002/09/01 19:44:37 tom Exp $
+.\" $Id: curs_util.3x,v 1.12 2004/01/31 17:24:53 tom Exp $
 .TH curs_util 3X ""
 .SH NAME
 \fBdelay_output\fR,
 \fBwunctrl\fR - miscellaneous \fBcurses\fR utility routines
 .SH SYNOPSIS
 \fB#include <curses.h>\fR
-
+.sp
 \fBchar *unctrl(chtype c);\fR
 .br
-\fBchar *wunctrl(wchar_t w);\fR
+\fBchar *wunctrl(cchar_t *c);\fR
 .br
 \fBchar *keyname(int c);\fR
 .br
@@ -69,7 +69,7 @@ Control characters are displayed in the \fB^\fR\fIX\fR notation.
 Printing characters are displayed as is.
 The corresponding \fBwunctrl\fR returns a printable representation of
 a wide-character.
-
+.PP
 The \fBkeyname\fR routine returns a character string corresponding to the key \fIc\fR.
 Control characters are displayed in the \fB^\fR\fIX\fR notation.
 Values above 128 are either meta characters, shown in the \fBM-\fR\fIX\fR notation,
@@ -78,13 +78,13 @@ The corresponding \fBkey_name\fR returns a character string corresponding
 to the wide-character value \fIw\fR.
 The two functions do not return the same set of strings;
 the latter returns null where the former would display a meta character.
-
+.PP
 The \fBfilter\fR routine, if used, must be called before \fBinitscr\fR or
 \fBnewterm\fR are called.  The effect is that, during those calls, \fBLINES\fR
 is set to 1; the capabilities \fBclear\fR, \fBcup\fR, \fBcud\fR, \fBcud1\fR,
 \fBcuu1\fR, \fBcuu\fR, \fBvpa\fR are disabled; and the \fBhome\fR string is
 set to the value of \fBcr\fR.
-
+.PP
 The \fBuse_env\fR routine, if used, is called before \fBinitscr\fR or
 \fBnewterm\fR are called.  When called with \fBFALSE\fR as an
 argument, the values of \fBlines\fR and \fBcolumns\fR specified in the
@@ -93,39 +93,51 @@ argument, the values of \fBlines\fR and \fBcolumns\fR specified in the
 \fBcurses\fR is running in a window (in which case default behavior
 would be to use the window size if \fBLINES\fR and \fBCOLUMNS\fR are
 not set).
-
+.PP
 The \fBputwin\fR routine writes all data associated with window \fIwin\fR into
 the file to which \fIfilep\fR points.  This information can be later retrieved
 using the \fBgetwin\fR function.
-
+.PP
 The \fBgetwin\fR routine reads window related data stored in the file by
 \fBputwin\fR.  The routine then creates and initializes a new window using that
 data.  It returns a pointer to the new window.
-
+.PP
 The \fBdelay_output\fR routine inserts an \fIms\fR millisecond pause
 in output.  This routine should not be used extensively because
 padding characters are used rather than a CPU pause.
-
+If no padding character is specified, this uses \fBnapms\fR to perform the delay.
+.PP
 The \fBflushinp\fR routine throws away any typeahead that has been typed by the
 user and has not yet been read by the program.
 .SH RETURN VALUE
 Except for \fBflushinp\fR, routines that return an integer return \fBERR\fR
 upon failure and \fBOK\fR (SVr4 specifies only "an integer value other than
 \fBERR\fR") upon successful completion.
-
+.PP
 \fBflushinp\fR always returns \fBOK\fR.
-
+.PP
 Routines that return pointers return \fBNULL\fR on error.
 .SH PORTABILITY
 The XSI Curses standard, Issue 4 describes these functions.
 It states that \fBunctrl\fR and \fBwunctrl\fR will return a null pointer if
 unsuccessful, but does not define any error conditions.
-
+.PP
 The SVr4 documentation describes the action of \fBfilter\fR only in the vaguest
 terms.  The description here is adapted from the XSI Curses standard (which
 erroneously fails to describe the disabling of \fBcuu\fR).
+.PP
+The strings returned by \fBunctrl\fR in this implementation are determined
+at compile time, showing C1 controls from the upper-128 codes with a `~'
+prefix rather than `^'.
+Other implementations typically show both sets of control characters with `^',
+and may strip the parameter to 7 bits.
+This implementation uses 8 bits but does not modify the string to reflect
+locale.
 .SH SEE ALSO
-\fBcurses\fR(3X), \fBcurs_initscr\fR(3X), \fBcurs_scr_dump\fR(3X).
+\fBcurses\fR(3X),
+\fBcurs_initscr\fR(3X),
+\fBcurs_kernel\fR(3X),
+\fBcurs_scr_dump\fR(3X).
 .\"#
 .\"# The following sets edit modes for GNU EMACS
 .\"# Local Variables:
index 4d3ca4ca00c30489462dff43562b37b78a7f5060..6aad4e7f49537dcf8734d405146917aa8b2edaf3 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_window.3x,v 1.9 2000/07/01 20:08:37 tom Exp $
+.\" $Id: curs_window.3x,v 1.10 2003/05/10 20:33:49 jmc Exp $
 .TH curs_window 3X ""
 .SH NAME
 \fBnewwin\fR,
@@ -142,7 +142,7 @@ The subwindow functions (\fIsubwin\fR, \fIderwin\fR, \fImvderwin\fR,
 incompletely implemented, and not well tested.
 
 The System V curses documentation is very unclear about what \fBwsyncup\fR
-and \fBwsyncdown\fR actually do.  It seems to imply that they are only 
+and \fBwsyncdown\fR actually do.  It seems to imply that they are only
 supposed to touch exactly those lines that are affected by ancestor changes.
 The language here, and the behavior of the \fBcurses\fR implementation,
 is patterned on the XPG4 curses standard.  The weaker XPG4 spec may result
index 4ebb90124a8a3b977662f2cce7751d74bc10c7f6..ae07899dcbfc52e8623fabbb2a80766db4a96735 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,9 +26,9 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" Author: Thomas E. Dickey <dickey@clark.net> 1997,1999,2000
+.\" Author: Thomas E. Dickey 1997,1999,2000
 .\"
-.\" $Id: default_colors.3x,v 1.16 2002/02/16 22:39:52 tom Exp $
+.\" $Id: default_colors.3x,v 1.17 2003/10/25 20:41:08 tom Exp $
 .TH default_colors 3X ""
 .SH NAME
 \fBuse_default_colors\fR,
index 1019c42fd770def5bcaff3425df63aef74fb598b..c11e14b1e74756287229936468184f62b246a219 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" Author: Thomas E. Dickey <dickey@clark.net> 1997
+.\" Author: Thomas E. Dickey 1997
 .\"
-.\" $Id: define_key.3x,v 1.8 2002/02/16 22:39:52 tom Exp $
+.\" $Id: define_key.3x,v 1.10 2003/10/25 20:33:16 tom Exp $
 .TH define_key 3X ""
 .SH NAME
 \fBdefine_key\fP \- define a keycode
 .SH SYNOPSIS
 \fB#include <curses.h>\fP
 
-\fBint define_key(char *definition, int keycode);\fP
+\fBint define_key(const char *definition, int keycode);\fP
 .SH DESCRIPTION
 This is an extension to the curses library.
 It permits an application to define keycodes with their corresponding control
index f452036baeab0ea6722c4d6e49eeb5a417afe3cd..e916bf18255cb1092bc17b10fd234f83c38913dc 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998 Free Software Foundation, Inc.                        *
+.\" Copyright (c) 1998,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_field.3x,v 1.5 1998/11/29 01:05:52 Rick.Ohnemus Exp $
+.\" $Id: form_field.3x,v 1.6 2003/05/10 20:33:49 jmc Exp $
 .TH form_field 3X ""
 .SH NAME
 \fBform_field\fR - make and break connections between fields and forms
@@ -50,7 +50,7 @@ The function \fBform_fields\fR returns the field array of the given form.
 
 The function \fBfield_count\fR returns the count of fields in \fIform\fR.
 
-The function \fBmove_field\fR move the given field (which must be disconnected)
+The function \fBmove_field\fR moves the given field (which must be disconnected)
 to a specified location on the screen.
 .SH RETURN VALUES
 The function \fBform_fields\fR returns \fBNULL\fR on error.
index 814c5d9d58f4693af9300a80691b60327fa92d6b..7595f53e05ec8ff51c75ea832c09c9e764f13f71 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_field_buffer.3x,v 1.9 2002/01/19 22:48:23 tom Exp $
+.\" $Id: form_field_buffer.3x,v 1.10 2003/05/10 20:22:01 tom Exp $
 .TH form_field_buffer 3X ""
 .SH NAME
 \fBform_field_buffer\fR - field buffer control
@@ -50,7 +50,7 @@ to contain a given string.  Buffer 0 is the displayed value of the field; other
 numbered buffers may be allocated by applications through the \fBnbuf\fR
 argument of (see \fBform_field_new\fR(3X)) but are not manipulated by the forms
 library.  The function \fBfield_buffer\fR returns the address of the buffer.
-Please note that this buffer has always the length of the buffer, that means 
+Please note that this buffer has always the length of the buffer, that means
 that it may typically contain trailing spaces. If you entered leading spaces
 the buffer may also contain them. If you want the raw data, you must write your
 own routine that copies the value out of the buffer and removes the leading
index 9468d8b77512f8aadfada65602d191eb390e79a9..61b62b88b936dfa203375932ee5f7b260849d83a 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_field_just.3x,v 1.6 2002/01/19 22:48:41 tom Exp $
+.\" $Id: form_field_just.3x,v 1.7 2003/05/10 20:33:49 jmc Exp $
 .TH form_field_just 3X ""
 .SH NAME
 \fBform_field_just\fR - retrieve field characteristics
@@ -48,7 +48,7 @@ JUSTIFY_LEFT, or JUSTIFY_CENTER.
 The function \fBfield_just\fR returns one of: NO_JUSTIFICATION,
 JUSTIFY_RIGHT, JUSTIFY_LEFT, or JUSTIFY_CENTER.
 
-The function \fBset_field_just\fR return one of the following:
+The function \fBset_field_just\fR returns one of the following:
 .TP 5
 \fBE_OK\fR
 The routine succeeded.
index 969152057d6d9cb4abc93d3abe2c00092ebd4d60..a8174a5cad4a6f882cd7b66bc947aac173bea3af 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_field_new.3x,v 1.11 2002/02/16 22:39:52 tom Exp $
+.\" $Id: form_field_new.3x,v 1.12 2003/05/10 20:33:49 jmc Exp $
 .TH form_field_new 3X ""
 .SH NAME
 \fBform_field_new\fR - create and destroy form fields
@@ -84,7 +84,7 @@ Version 7 or BSD versions.
 
 It may be unwise to count on the set of attributes copied by
 \fBdup_field\fR(3X) being portable; the System V forms library documents are
-not very explicit on what gets copied and was not.
+not very explicit about what gets copied and what doesn't.
 .SH AUTHORS
 Juergen Pfeifer.  Manual pages and adaptation for new curses by Eric
 S. Raymond.
index 8f5e2def4315aa01d92c2c35f40bbc22600f7e02..8a3e501840e4e92a3a06bba70813b3c65df25c78 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998 Free Software Foundation, Inc.                        *
+.\" Copyright (c) 1998,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_field_opts.3x,v 1.7 1998/11/29 01:06:54 Rick.Ohnemus Exp $
+.\" $Id: form_field_opts.3x,v 1.8 2003/05/10 20:33:49 jmc Exp $
 .TH form_field_opts 3X ""
 .SH NAME
 \fBform_field_opts\fR - set and get field options
@@ -58,7 +58,7 @@ The following options are defined (all are on by default):
 .TP 5
 O_VISIBLE
 The field is displayed.  If this option is off, display of the field is
-suppressed,
+suppressed.
 .TP 5
 O_ACTIVE
 The field is visited during processing.  If this option is off, the field will
@@ -79,7 +79,7 @@ O_BLANK
 The field is cleared whenever a character is entered at the first position.
 .TP 5
 O_AUTOSKIP
-Skip to the next field when this one fills
+Skip to the next field when this one fills.
 .TP 5
 O_NULLOK
 Allow a blank field.
index cc3d508d2d3232bd3857028ff0bc37979f3fb519..c82abf3c1071538449e17329b859e5e91d46d64c 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_field_validation.3x,v 1.12 2002/02/16 22:39:52 tom Exp $
+.\" $Id: form_field_validation.3x,v 1.14 2003/05/10 20:33:49 jmc Exp $
 .TH form_field_validation 3X ""
 .SH NAME
-\fBform_field_validation\fR - data type validation for fields 
+\fBform_field_validation\fR - data type validation for fields
 .SH SYNOPSIS
 \fB#include <form.h>\fR
 .br
@@ -38,10 +38,25 @@ int set_field_type(FIELD *field, FIELDTYPE *type, ...);
 FIELDTYPE *field_type(const FIELD *field);
 .br
 void *field_arg(const FIELD *field);
+.sp
+FIELDTYPE *TYPE_ALNUM;
+.br
+FIELDTYPE *TYPE_ALPHA;
+.br
+FIELDTYPE *TYPE_ENUM;
+.br
+FIELDTYPE *TYPE_INTEGER;
+.br
+FIELDTYPE *TYPE_NUMERIC;
+.br
+FIELDTYPE *TYPE_REGEXP;
+.br
+FIELDTYPE *TYPE_IPV4;
 .br
 .SH DESCRIPTION
 The function \fBset_field_type\fR declares a data type for a given form field.
-This is the type checked by validation functions.  The types are as follows:
+This is the type checked by validation functions.
+The predefined types are as follows:
 .TP 5
 TYPE_ALNUM
 Alphanumeric data.  Requires a third \fBint\fR argument, a minimum field width.
@@ -56,27 +71,29 @@ case-sensitivity; and a fifth \fBint\fR flag argument specifying whether a parti
 match must be a unique one (if this flag is off, a prefix matches the first
 of any set of more than one list elements with that prefix). Please notice
 that the string list is not copied, only a reference to it is stored in the
-field. So you should avoid to use a list that lives in automatic variables
+field. So you should avoid using a list that lives in automatic variables
 on the stack.
 .TP 5
 TYPE_INTEGER
 Integer data, parsable to an integer by \fBatoi(3)\fR.  Requires a third
-\fBint\fR argument controlling the precision, a fourth \fBlong\fR argument 
+\fBint\fR argument controlling the precision, a fourth \fBlong\fR argument
 constraining minimum value, and a fifth \fBlong\fR constraining maximum value.
-If the maximum value is less or equal the minimum value, the range is simply
-ignored. On return the field buffer is formatted according to the \fBprintf\fR
-format specification ".*ld", where the '*' is replaced by the precision argument.
+If the maximum value is less than or equal to the minimum value, the range is
+simply ignored. On return the field buffer is formatted according to the
+\fBprintf\fR format specification ".*ld", where the '*' is replaced by the
+precision argument.
 For details of the precision handling see \fBprintf's\fR man-page.
 .TP 5
 TYPE_NUMERIC
 Numeric data (may have a decimal-point part). Requires a third
 \fBint\fR argument controlling the precision, a fourth \fBdouble\fR
-argument constraining minimum value, and a fifth \fBdouble\fR constraining 
-maximum value. If your system supports locale's, the decimal point character
+argument constraining minimum value, and a fifth \fBdouble\fR constraining
+maximum value. If your system supports locales, the decimal point character
 to be used must be the one specified by your locale.
-If the maximum value is less or equal the minimum value, the range is simply
-ignored. On return the field buffer is formatted according to the \fBprintf\fR
-format specification ".*f", where the '*' is replaced by the precision argument.
+If the maximum value is less than or equal to the minimum value, the range is
+simply ignored. On return the field buffer is formatted according to the
+\fBprintf\fR format specification ".*f", where the '*' is replaced by the
+precision argument.
 For details of the precision handling see \fBprintf's\fR man-page.
 .TP 5
 TYPE_REGEXP
@@ -96,7 +113,7 @@ is checked whether or not the buffer has the form a.b.c.d, where a,b,c and d are
 numbers between 0 and 255. Trailing blanks in the buffer are ignored. The address
 itself is not validated. Please note that this is an ncurses extension. This
 field type may not be available in other curses implementations.
-
+.PP
 It is possible to set up new programmer-defined field types.  See the
 \fBform_fieldtype\fR(3X) manual page.
 .SH RETURN VALUE
index 69a8e2082466018892ce9294264178f17ef77003..979258a2ba976c8e553e67dcade24f762c8c4232 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: form_fieldtype.3x,v 1.9 2001/08/04 20:36:25 William.Setzer Exp $
+.\" $Id: form_fieldtype.3x,v 1.12 2003/05/10 20:33:49 jmc Exp $
 .TH form_fieldtype 3X ""
 .SH NAME
 \fBform_fieldtype\fR - define validation-field types
@@ -57,7 +57,7 @@ FIELDTYPE *link_fieldtype(FIELDTYPE *type1,
 .SH DESCRIPTION
 The function \fBnew_fieldtype\fR creates a new field type usable for data
 validation.  You supply it with \fIfield_check\fR, a predicate to check the
-validity of an entered data string whenever the user attempt to leave a field.
+validity of an entered data string whenever the user attempts to leave a field.
 The (FIELD *) argument is passed in so the validation predicate can see the
 field's buffer, sizes and other attributes; the second argument is an
 argument-block structure, about which more below.
@@ -69,22 +69,31 @@ the character to be checked and a pointer to an argument-block structure.
 The function \fBfree_fieldtype\fR frees the space allocated for a given
 validation type.
 
-The function \fBset_fieldtype\fR associates three storage-management functions
-with a field type.  The \fImak_arg\fR function is automatically applied to the
+The function \fBset_fieldtype_arg\fR associates three storage-management functions
+with a field type.
+The \fImake_arg\fR function is automatically applied to the
 list of arguments you give \fBset_field_type\fR when attaching validation
 to a field; its job is to bundle these into an allocated argument-block
-object which can later be passed to validation predicated.  The other two
-hook arguments should copy and free argument-block structures.  They will
-be used by the forms-driver code. You must supply the \fImak_arg\fR function,
-the other two are optional, you may supply NULL for them. In this case it
-is assumed, that \fImak_arg\fR doesn't allocate memory but simply loads the
+object which can later be passed to validation predicated.
+The other two hook arguments should copy and free argument-block structures.
+They will be used by the forms-driver code.
+You must supply the \fImake_arg\fR function,
+the other two are optional, you may supply NULL for them.
+In this case it is assumed
+that \fImake_arg\fR does not allocate memory but simply loads the
 argument into a single scalar value.
 
+The function \fBlink_fieldtype\fR creates
+a new field type from the two given types.
+They are connected by an logical 'OR'.
+
 The form driver requests \fBREQ_NEXT_CHOICE\fR and \fBREQ_PREV_CHOICE\fR assume
 that the possible values of a field form an ordered set, and provide the forms
-user with a way to move through the set.  The \fBset_fieldtype_choice\fR
+user with a way to move through the set.
+The \fBset_fieldtype_choice\fR
 function allows forms programmers to define successor and predecessor functions
-for the field type.  These functions take the field pointer and an
+for the field type.
+These functions take the field pointer and an
 argument-block structure as arguments.
 .SH RETURN VALUE
 The pointer-valued routines return NULL on error.
index 9ecdfa3ea4eb33df1b38df439143c5b505e8bbc3..fe95d6f89c42f26f55c5c5fc44e9daa5a7645de2 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: infocmp.1m,v 1.30 2002/10/05 21:22:21 tom Exp $
+.\" $Id: infocmp.1m,v 1.34 2003/10/25 16:19:01 tom Exp $
 .TH infocmp 1M ""
 .ds n 5
 .ds d @TERMINFO@
 .SH NAME
 \fBinfocmp\fR - compare or print out \fIterminfo\fR descriptions
 .SH SYNOPSIS
-\fBinfocmp\fR [\fB-\
+\fBinfocmp\fR [\fB\-\
 1\
 C\
 E\
@@ -58,9 +58,9 @@ t\
 u\
 \fR]
 .br
-      [\fB-v\fR \fIn\fR] [\fB-s d\fR| \fBi\fR| \fBl\fR| \fBc\fR] [\fB-R \fR\fBsubset\fR]
+      [\fB\-v\fR \fIn\fR] [\fB\-s d\fR| \fBi\fR| \fBl\fR| \fBc\fR] [\fB\-R \fR\fBsubset\fR]
 .br
-      [\fB-w\fR\ \fIwidth\fR] [\fB-A\fR\ \fIdirectory\fR] [\fB-B\fR\ \fIdirectory\fR]
+      [\fB\-w\fR\ \fIwidth\fR] [\fB\-A\fR\ \fIdirectory\fR] [\fB\-B\fR\ \fIdirectory\fR]
 .br
       [\fItermname\fR...]
 .SH DESCRIPTION
@@ -72,9 +72,9 @@ fields will be printed first, followed by the numeric fields, followed by the
 string fields.
 .SS Default Options
 If no options are specified and zero or one \fItermnames\fR are specified, the
-\fB-I\fR option will be assumed.  If more than one \fItermname\fR is specified,
-the \fB-d\fR option will be assumed.
-.SS Comparison Options [-d] [-c] [-n]
+\fB\-I\fR option will be assumed.  If more than one \fItermname\fR is specified,
+the \fB\-d\fR option will be assumed.
+.SS Comparison Options [\-d] [\-c] [\-n]
 \fBinfocmp\fR compares the \fBterminfo\fR description of the first terminal
 \fItermname\fR with each of the descriptions given by the entries for the other
 terminal's \fItermnames\fR.  If a capability is defined for only one of the
@@ -82,35 +82,35 @@ terminals, the value returned will depend on the type of the capability:
 \fBF\fR for boolean variables, \fB-1\fR for integer variables, and \fBNULL\fR
 for string variables.
 
-The \fB-d\fR option produces a list of each capability that is different
+The \fB\-d\fR option produces a list of each capability that is different
 between two entries.  This option is useful to show the difference between two
 entries, created by different people, for the same or similar terminals.
 
-The \fB-c\fR option produces a list of each capability that is common between
+The \fB\-c\fR option produces a list of each capability that is common between
 two entries.  Capabilities that are not set are ignored.  This option can be
-used as a quick check to see if the \fB-u\fR option is worth using.
+used as a quick check to see if the \fB\-u\fR option is worth using.
 
-The \fB-n\fR option produces a list of each capability that is in neither
+The \fB\-n\fR option produces a list of each capability that is in neither
 entry.  If no \fItermnames\fR are given, the environment variable \fBTERM\fR
 will be used for both of the \fItermnames\fR.  This can be used as a quick
 check to see if anything was left out of a description.
-.SS Source Listing Options [-I] [-L] [-C] [-r]
-The \fB-I\fR, \fB-L\fR, and \fB-C\fR options will produce a source listing for
+.SS Source Listing Options [\-I] [\-L] [\-C] [\-r]
+The \fB\-I\fR, \fB\-L\fR, and \fB\-C\fR options will produce a source listing for
 each terminal named.
 
 .TS
 center tab(/) ;
 l l .
-\fB-I\fR/use the \fBterminfo\fR names
-\fB-L\fR/use the long C variable name listed in <\fBterm.h\fR>
-\fB-C\fR/use the \fBtermcap\fR names
-\fB-r\fR/when using \fB-C\fR, put out all capabilities in \fBtermcap\fR form
+\fB\-I\fR/use the \fBterminfo\fR names
+\fB\-L\fR/use the long C variable name listed in <\fBterm.h\fR>
+\fB\-C\fR/use the \fBtermcap\fR names
+\fB\-r\fR/when using \fB\-C\fR, put out all capabilities in \fBtermcap\fR form
 .TE
 
 If no \fItermnames\fR are given, the environment variable \fBTERM\fR will be
 used for the terminal name.
 
-The source produced by the \fB-C\fR option may be used directly as a
+The source produced by the \fB\-C\fR option may be used directly as a
 \fBtermcap\fR entry, but not all parameterized strings can be changed to
 the \fBtermcap\fR format.  \fBinfocmp\fR will attempt to convert most of the
 parameterized information, and anything not converted will be plainly marked in
@@ -123,7 +123,7 @@ padding (padding information with a trailing '/') will become optional.
 All \fBtermcap\fR variables no longer supported by \fBterminfo\fR, but which
 are derivable from other \fBterminfo\fR variables, will be output.  Not all
 \fBterminfo\fR capabilities will be translated; only those variables which were
-part of \fBtermcap\fR will normally be output.  Specifying the \fB-r\fR option
+part of \fBtermcap\fR will normally be output.  Specifying the \fB\-r\fR option
 will take off this restriction, allowing all capabilities to be output in
 \fItermcap\fR form.
 
@@ -151,8 +151,8 @@ l l l.
 \fB%p1%?%'x'%>%t%p1%'y'%+%;/%>xy\fR/concept
 \fB%p2\fR is printed before \fB%p1/%r\fR/hp
 .TE
-.SS Use= Option [-u]
-The \fB-u\fR option produces a \fBterminfo\fR source description of the first
+.SS Use= Option [\-u]
+The \fB\-u\fR option produces a \fBterminfo\fR source description of the first
 terminal \fItermname\fR which is relative to the sum of the descriptions given
 by the entries for the other terminals \fItermnames\fR.  It does this by
 analyzing the differences between the first \fItermname\fR and the other
@@ -187,29 +187,29 @@ Another error that does not cause incorrect compiled files, but will slow down
 the compilation time, is specifying extra \fBuse=\fR fields that are
 superfluous.  \fBinfocmp\fR will flag any other \fItermname use=\fR fields that
 were not needed.
-.SS Changing Databases [-A \fIdirectory\fR] [-B \fIdirectory\fR]
+.SS Changing Databases [\-A \fIdirectory\fR] [\-B \fIdirectory\fR]
 The location of the compiled \fBterminfo\fR database is taken from the
 environment variable \fBTERMINFO\fR .  If the variable is not defined, or the
 terminal is not found in that location, the system \fBterminfo\fR database,
-in \fB@TERMINFO@\fR, will be used.  The options \fB-A\fR
-and \fB-B\fR may be used to override this location.  The \fB-A\fR option will
-set \fBTERMINFO\fR for the first \fItermname\fR and the \fB-B\fR option will
+in \fB@TERMINFO@\fR, will be used.  The options \fB\-A\fR
+and \fB\-B\fR may be used to override this location.  The \fB\-A\fR option will
+set \fBTERMINFO\fR for the first \fItermname\fR and the \fB\-B\fR option will
 set \fBTERMINFO\fR for the other \fItermnames\fR.  With this, it is possible to
 compare descriptions for a terminal with the same name located in two different
 databases.  This is useful for comparing descriptions for the same terminal
 created by different people.
 .SS Other Options
 .TP 5
-\fB-1\fR
+\fB\-1\fR
 causes the fields to be printed out one to a line.  Otherwise,
 the fields will be printed several to a line to a maximum width
 of 60 characters.
 .TP
-\fB-a\fR
+\fB\-a\fR
 tells \fBinfocmp\fP to retain commented-out capabilities rather than discarding
 them.  Capabilities are commented by prefixing them with a period.
 .TP 5
-\fB-E\fR
+\fB\-E\fR
 Dump the capabilities of the given terminal as tables, needed in
 the C initializer for a
 TERMTYPE structure (the terminal capability structure in the \fB<term.h>\fR).
@@ -218,17 +218,17 @@ for a given terminal type.
 The tables are all declared static, and are named according to the type
 and the name of the corresponding terminal entry.
 .sp
-Before ncurses 5.0, the split between the \fB\-e\fP and \fB\-E\fP 
+Before ncurses 5.0, the split between the \fB\-e\fP and \fB\-E\fP
 options was not needed; but support for extended names required making
 the arrays of terminal capabilities separate from the TERMTYPE structure.
 .TP 5
-\fB-e\fR
+\fB\-e\fR
 Dump the capabilities of the given terminal as a C initializer for a
 TERMTYPE structure (the terminal capability structure in the \fB<term.h>\fR).
 This option is useful for preparing versions of the curses library hardwired
 for a given terminal type.
 .TP 5
-\fB-F\fR
+\fB\-F\fR
 compare terminfo files.  This assumes that two following arguments are
 filenames.  The files are searched for pairwise matches between
 entries, with two entries considered to match if any of their names do.
@@ -237,21 +237,21 @@ the other file, and entries with more than one match.  For entries
 with exactly one match it includes a difference report.  Normally,
 to reduce the volume of the report, use references are
 not resolved before looking for differences, but resolution can be forced
-by also specifying \fB-r\fR.
+by also specifying \fB\-r\fR.
 .TP 5
-\fB-f\fR
+\fB\-f\fR
 Display complex terminfo strings which contain if/then/else/endif expressions
 indented for readability.
 .TP 5
-\fB-G\fR
+\fB\-G\fR
 Display constant literals in decimal form
 rather than their character equivalents.
 .TP 5
-\fB-g\fR
+\fB\-g\fR
 Display constant character literals in quoted form
 rather than their decimal equivalents.
 .TP 5
-\fB-i\fR
+\fB\-i\fR
 Analyze the initialization (\fBis1\fR, \fBis2\fR, \fBis3\fR), and reset
 (\fBrs1\fR, \fBrs2\fR, \fBrs3\fR), strings in the entry.  For each string, the
 code tries to analyze it into actions in terms of the other capabilities in the
@@ -302,17 +302,17 @@ REVERSE.  All but NORMAL may be prefixed with `+' (turn on) or `-' (turn off).
 
 An SGR0 designates an empty highlight sequence (equivalent to {SGR:NORMAL}).
 .TP 5
-\bB-l\fR
+\fB\-l\fR
 Set output format to terminfo.
 .TP 5
-\fB-p\fR
+\fB\-p\fR
 Ignore padding specifications when comparing strings.
 .TP 5
-\fB-q\fR
+\fB\-q\fR
 Make the comparison listing shorter by omitting subheadings, and using
 "-" for absent capabilities, "@" for canceled rather than "NULL".
 .TP 5
-\fB-R\fR\fIsubset\fR
+\fB\-R\fR\fIsubset\fR
 Restrict output to a given subset.  This option is for use with archaic
 versions of terminfo like those on SVr1, Ultrix, or HP/UX that do not support
 the full set of SVR4/XSI Curses terminfo; and variants such as AIX
@@ -321,8 +321,8 @@ subsets are "SVr1", "Ultrix", "HP", and "AIX"; see \fBterminfo\fR(\*n) for
 details.  You can also choose the subset "BSD" which selects only capabilities
 with termcap equivalents recognized by 4.4BSD.
 .TP
-\fB-s \fR\fI[d|i|l|c]\fR
-The \fB-s\fR option sorts the fields within each type according to the argument
+\fB\-s \fR\fI[d|i|l|c]\fR
+The \fB\-s\fR option sorts the fields within each type according to the argument
 below:
 .br
 .RS 5
@@ -340,30 +340,30 @@ sort by the long C variable name.
 sort by the \fItermcap\fR name.
 .RE
 .IP
-If the \fB-s\fR option is not given, the fields printed out will be
+If the \fB\-s\fR option is not given, the fields printed out will be
 sorted alphabetically by the \fBterminfo\fR name within each type,
-except in the case of the \fB-C\fR or the \fB-L\fR options, which cause the
+except in the case of the \fB\-C\fR or the \fB\-L\fR options, which cause the
 sorting to be done by the \fBtermcap\fR name or the long C variable
 name, respectively.
 .TP 5
-\fB-T\fR
+\fB\-T\fR
 eliminates size-restrictions on the generated text.
 This is mainly useful for testing and analysis, since the compiled
 descriptions are limited (e.g., 1023 for termcap, 4096 for terminfo).
 .TP
-\fB-t\fR
+\fB\-t\fR
 tells \fBtic\fP to discard commented-out capabilities.
 Normally when translating from terminfo to termcap,
 untranslatable capabilities are commented-out.
 .TP 5
-\fB-V\fR
+\fB\-V\fR
 reports the version of ncurses which was used in this program, and exits.
 .TP 5
-\fB-v\fR \fIn\fR
+\fB\-v\fR \fIn\fR
 prints out tracing information on standard error as the program runs.
 Higher values of n induce greater verbosity.
 .TP 5
-\fB-w\fR \fIwidth\fR
+\fB\-w\fR \fIwidth\fR
 changes the output to \fIwidth\fR characters.
 .SH FILES
 .TP 20
@@ -371,28 +371,28 @@ changes the output to \fIwidth\fR characters.
 Compiled terminal description database.
 .SH EXTENSIONS
 The
-\fB-E\fR,
-\fB-F\fR,
-\fB-G\fR,
-\fB-R\fR,
-\fB-T\fR,
-\fB-V\fR,
-\fB-a\fR,
-\fB-e\fR,
-\fB-f\fR,
-\fB-g\fR,
-\fB-i\fR,
-\fB-l\fR,
-\fB-p\fR,
-\fB-q\fR and
-\fB-t\fR
+\fB\-E\fR,
+\fB\-F\fR,
+\fB\-G\fR,
+\fB\-R\fR,
+\fB\-T\fR,
+\fB\-V\fR,
+\fB\-a\fR,
+\fB\-e\fR,
+\fB\-f\fR,
+\fB\-g\fR,
+\fB\-i\fR,
+\fB\-l\fR,
+\fB\-p\fR,
+\fB\-q\fR and
+\fB\-t\fR
 options are not supported in SVr4 curses.
 
-The \fB-r\fR option's notion of `termcap' capabilities is System V Release 4's.
+The \fB\-r\fR option's notion of `termcap' capabilities is System V Release 4's.
 Actual BSD curses versions will have a more restricted set.  To see only the
-4.4BSD set, use -r -RBSD.
+4.4BSD set, use \fB\-r\fR \fB\-RBSD\fR.
 .SH BUGS
-The -F option of \fBinfocmp\fR(1M) should be a \fBtoe\fR(1M) mode.
+The \fB\-F\fR option of \fBinfocmp\fR(1M) should be a \fBtoe\fR(1M) mode.
 .SH SEE ALSO
 \fBinfocmp\fR(1M), \fBcaptoinfo\fR(1M), \fBinfotocap\fR(1M),
 \fBtic\fR(1M), \fBtoe\fR(1M),
@@ -401,7 +401,7 @@ The -F option of \fBinfocmp\fR(1M) should be a \fBtoe\fR(1M) mode.
 Eric S. Raymond <esr@snark.thyrsus.com>
 and
 .br
-Thomas E. Dickey <dickey@herndon4.his.com>
+Thomas E. Dickey <dickey@invisible-island.net>
 .\"#
 .\"# The following sets edit modes for GNU EMACS
 .\"# Local Variables:
index ef8735b7be54062c2019fd4bffb4db171e2e7e8f..f18458426adc9435938f90e2a370c0b8dddf7210 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1999,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1999-2000,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: infotocap.1m,v 1.3 2000/08/13 01:56:03 tom Exp $
+.\" $Id: infotocap.1m,v 1.4 2003/05/11 00:32:53 tom Exp $
 .TH infotocap 1M ""
 .ds n 5
 .ds d @TERMINFO@
 .SH NAME
 \fBinfotocap\fR - convert a \fIterminfo\fR description into a \fItermcap\fR description
 .SH SYNOPSIS
-\fBinfotocap\fR [\fB-v\fR\fIn\fR \fIwidth\fR]  [\fB-V\fR] [\fB-1\fR] [\fB-w\fR \fIwidth\fR] \fIfile\fR . . .
+\fBinfotocap\fR [\fB\-v\fR\fIn\fR \fIwidth\fR]  [\fB\-V\fR] [\fB\-1\fR] [\fB\-w\fR \fIwidth\fR] \fIfile\fR . . .
 .SH DESCRIPTION
 \fBinfotocap\fR looks in \fIfile\fR for \fBterminfo\fR descriptions.  For each
 one found, an equivalent \fBtermcap\fR description is written to standard
 output.  Terminfo \fBuse\fR capabilities are translated directly to termcap
 \fBtc\fR capabilities.
 .TP 5
-\fB-v\fR
+\fB\-v\fR
 print out tracing information on standard error as the program runs.
 .TP 5
-\fB-V\fR
+\fB\-V\fR
 print out the version of the program in use on standard error and exit.
 .TP 5
-\fB-1\fR
+\fB\-1\fR
 cause the fields to print out one to a line.  Otherwise, the fields
 will be printed several to a line to a maximum width of 60
 characters.
 .TP 5
-\fB-w\fR
+\fB\-w\fR
 change the output to \fIwidth\fR characters.
 .SH FILES
 .TP 20
 \*d
 Compiled terminal description database.
 .SH NOTES
-This utility is actually a link to \fItic\fR(1M), running in \fI-C\fR mode.
-You can use other \fItic\fR options such as \fB-f\fR and  \fB-x\fR.
+This utility is actually a link to \fItic\fR(1M), running in \fI\-C\fR mode.
+You can use other \fItic\fR options such as \fB\-f\fR and  \fB\-x\fR.
 .SH SEE ALSO
 \fBcurses\fR(3X),
 \fBtic\fR(1M),
diff --git a/man/key_defined.3x b/man/key_defined.3x
new file mode 100644 (file)
index 0000000..574e524
--- /dev/null
@@ -0,0 +1,60 @@
+.\"***************************************************************************
+.\" Copyright (c) 2003 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: Thomas E. Dickey 2003
+.\"
+.\" $Id: key_defined.3x,v 1.2 2003/05/17 23:24:45 tom Exp $
+.TH key_defined 3X ""
+.SH NAME
+\fBdefine_key\fP \- define a keycode
+.SH SYNOPSIS
+\fB#include <curses.h>\fP
+
+\fBint key_defined(const char *definition);\fP
+.SH DESCRIPTION
+This is an extension to the curses library.
+It permits an application to determine if a string is currently bound
+to any keycode.
+.SH RETURN VALUE
+If the string is bound to a keycode, its value (greater than zero) is returned.
+If no keycode is bound, zero is returned.
+If the string conflicts with longer strings which are bound to keys, -1 is returned.
+.SH PORTABILITY
+These routines are specific to ncurses.  They were not supported on
+Version 7, BSD or System V implementations.  It is recommended that
+any code depending on them be conditioned using NCURSES_VERSION.
+.SH SEE ALSO
+\fBdefine_key\fR(3X).
+.SH AUTHOR
+Thomas Dickey.
+.\"#
+.\"# The following sets edit modes for GNU EMACS
+.\"# Local Variables:
+.\"# mode:nroff
+.\"# fill-column:79
+.\"# End:
index 79c480cfd3867490e14d83b8c14922e186b76513..61074e436f75ebde303aba341b2fe1324fc56581 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1999,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1999-2002,2003 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            *
@@ -26,9 +26,9 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" Author: Thomas E. Dickey <dickey@clark.net> 1999
+.\" Author: Thomas E. Dickey 1999
 .\"
-.\" $Id: keybound.3x,v 1.3 2002/02/16 22:30:36 tom Exp $
+.\" $Id: keybound.3x,v 1.5 2003/10/25 20:33:16 tom Exp $
 .TH keyok 3X ""
 .SH NAME
 \fBkeybound\fP \- return definition of keycode
@@ -41,9 +41,12 @@ This is an extension to the curses library.
 It permits an application to determine the string which is defined
 in the terminfo for specific keycodes.
 .SH RETURN VALUE
-The keycode must be greater than zero, else NULL is returned.
+The \fIkeycode\fP parameter must be greater than zero, else NULL is returned.
 If it does not correspond to a defined key, then NULL is returned.
-Otherwise, the function returns a string, which must be freed by the caller.
+The \fIcount\fP parameter is used to allow the application to iterate
+through multiple definitions, counting from zero.
+When successful,
+the function returns a string which must be freed by the caller.
 .SH PORTABILITY
 These routines are specific to ncurses.  They were not supported on
 Version 7, BSD or System V implementations.  It is recommended that
index e3f2287abb13ff8b920f4d02aa3c44e88a168699..f9209089a7aa410af1eb57fd1ab95b2d4c2ca524 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,9 +26,9 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" Author: Thomas E. Dickey <dickey@clark.net> 1997
+.\" Author: Thomas E. Dickey 1997
 .\"
-.\" $Id: keyok.3x,v 1.7 2002/02/16 22:40:59 tom Exp $
+.\" $Id: keyok.3x,v 1.8 2003/10/25 20:41:08 tom Exp $
 .TH keyok 3X ""
 .SH NAME
 \fBkeyok\fP \- enable or disable a keycode
index c6c37c25b0d55d96ac6b129dcf193c5b8a96f3bd..766801d551a8b0e980c7dfbfab834c4295ab3521 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
-# $Id: make_sed.sh,v 1.5 1998/02/11 12:13:48 tom Exp $
+# $Id: make_sed.sh,v 1.7 2003/10/25 20:33:16 tom Exp $
 ##############################################################################
-# Copyright (c) 1998 Free Software Foundation, Inc.                          #
+# Copyright (c) 1998,2003 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"), #
@@ -28,7 +28,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1997
+# Author: Thomas E. Dickey 1997
 #
 # Construct a sed-script to perform renaming within man-pages.  Originally
 # written in much simpler form, this one accounts for the common cases of
@@ -47,7 +47,7 @@ RESULT=result$$
 rm -f $UPPER $SCRIPT $RESULT
 trap "rm -f $COL.* $INPUT $UPPER $SCRIPT $RESULT" 0 1 2 5 15
 fgrep -v \# $1 | \
-sed    -e 's/[ ]\+/    /g' >$INPUT
+sed    -e 's/[ ][      ]*/     /g' >$INPUT
 
 for F in 1 2 3 4
 do
index 7aaf1de286106e5b0240c67a0e69f1d19758cc9e..ff5546b3c982d73fba232bdabc02cce842d074f4 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: man_db.renames,v 0.31 2002/04/13 21:49:08 tom Exp $
+# $Id: man_db.renames,v 0.32 2003/05/31 17:27:11 tom Exp $
 # Manual-page renamings for the man_db program
 #
 # Files:
@@ -89,6 +89,7 @@ infocmp.1m                    infocmp.1
 infotocap.1m                   infotocap.1
 keybound.3x                    keybound.3ncurses
 keyok.3x                       keyok.3ncurses
+key_defined.3x                 key_defined.3ncurses
 menu.3x                                menu.3menu
 menu_attributes.3x             attributes.3menu
 menu_cursor.3x                 cursor.3menu
index 5babc5db73a599f06f896817c6477018bf570126..4da7790dfd974569ae77ce77ea524bd52595f677 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: manlinks.sed,v 1.10 2002/09/21 19:02:03 tom Exp $
+# $Id: manlinks.sed,v 1.12 2003/12/20 13:17:56 tom Exp $
 ##############################################################################
-# Copyright (c) 2000,2002 Free Software Foundation, Inc.                     #
+# Copyright (c) 2000-2002,2003 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"), #
@@ -29,6 +29,8 @@
 # Given a manpage (nroff) as input, writes a list of the names that are
 # listed in the "NAME" section, i.e., the names that we would like to use
 # as aliases for the manpage -T.Dickey
+#
+# eliminate formatting controls that get in the way
 /^'\\"/d
 /\.\\"/d
 /^\.br/d
 s/^\.IX//
 s/\\f.//g
 s/[:,]/ /g
+#
+# eliminate unnecessary whitespace, convert multiple blanks to single space
 s/^[   ][      ]*//
 s/[    ][      ]*$//
 s/[    ][      ]*/ /g
+#
+# convert ".SH" into a more manageable form
 s/\.SH[        ][      ]*/.SH_(/
 #
+# in ".SH NAME"
+# change "\-" to "-", eliminate text after "-", and split the remaining lines
+# at each space, making a list of names:
 /^\.SH_(NAME/,/^\.SH_(SYNOPSIS/{
 s/\\-.*/ -/
 / -/{
-       s/ -.*//
-       s/ /\
+s/ -.*//
+s/ /\
 /g
 }
 /^-/{
-       d
+d
 }
 s/ /\
 /g
 }
+#
+# in ".SH SYNOPSIS"
+# remove any line that does not contain a '(', since we only want functions.
+# then strip off return-type of each function.
+# finally, remove the parameter list, which begins with a '('.
 /^\.SH_(SYNOPSIS/,/^\.SH_(DESCRIPTION/{
-       /^#/d
-       /^[^(]*$/d
-       s/^\([^ (]* [^ (]* [*]*\)//g
-       s/^\([^ (]* [*]*\)//g
-       s/\.SH_(/.SH_/
-       s/(.*//
-       s/\.SH_/.SH_(/
+/^[^(]*$/d
+# reduce
+#      .B "int add_wch( const cchar_t *\fIwch\fB );"
+# to
+#      add_wch( const cchar_t *\fIwch\fB );"
+s/^\([^ (]* [^ (]* [*]*\)//g
+s/^\([^ (]* [*]*\)//g
+# trim blanks in case we have
+#      void (*) (FORM *) field_init(const FORM *form);
+s/) (/)(/g
+# reduce stuff like
+#      void (*)(FORM *) field_init(const FORM *form);
+# to
+#      field_init(const FORM *form);
+s/^\(([^)]*)\)\(([^)]*)\)*[ ]*//g
+# rename marker temporarily
+s/\.SH_(/.SH_/
+# kill lines with ");", and trim off beginning of argument list.
+s/[()].*//
+# rename marker back
+s/\.SH_/.SH_(/
 }
+#
+# delete ".SH DESCRIPTION" and following lines
 /^\.SH_(DESCRIPTION/,${
-       d
+d
 }
+#
+# delete any remaining directives
 /^\./d
index 0e6f9e02f38fef70f417f2094efce5872d6a3291..1651724b0bffa7a8b54fc04b30c618b454d66ac4 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: menu_driver.3x,v 1.10 2002/02/16 22:40:59 tom Exp $
+.\" $Id: menu_driver.3x,v 1.11 2003/05/10 20:22:01 tom Exp $
 .TH menu_driver 3X ""
 .SH NAME
 \fBmenu_driver\fR - command-processing loop of the menu system
@@ -115,10 +115,10 @@ is positioned to that item. If you double-click at an item a REQ_TOGGLE_ITEM
 is generated and \fBE_UNKNOWN_COMMAND\fR is returned. This return value makes
 sense, because a double click usually means that an item-specific action should
 be returned. It's exactly the purpose of this return value to signal that an
-application specific command should be executed. If a translation 
+application specific command should be executed. If a translation
 into a request was done, \fBmenu_driver\fR returns the result of this request.
 If you clicked outside the user window or the mouse event couldn't be translated
-into a menu request an \fBE_REQUEST_DENIED\fR is returned. 
+into a menu request an \fBE_REQUEST_DENIED\fR is returned.
 .PP
 If the second argument is neither printable ASCII nor one of the above
 pre-defined menu requests or KEY_MOUSE, the drive assumes it is an application-specific
index 990a9dc52bac6b2e7fabe7246849e286633fcab0..2fdc09a615859784980e807b9898227931345cc7 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: menu_pattern.3x,v 1.7 2002/02/16 22:40:59 tom Exp $
+.\" $Id: menu_pattern.3x,v 1.8 2003/05/10 20:22:01 tom Exp $
 .TH menu_pattern 3X ""
 .SH NAME
 \fBmenu_pattern\fR - get and set a menu's pattern buffer
@@ -44,7 +44,7 @@ and tested for a match, as described in \fBmenu_driver\fR(3X).
 
 The function \fBset_menu_pattern\fR sets the pattern buffer for the given menu
 and tries to find the first matching item.  If it succeeds, that item becomes
-current; if not, the current item does not change.  
+current; if not, the current item does not change. 
 
 The function \fBmenu_pattern\fR returns the pattern buffer of the given
 \fImenu\fR.
index 0653840167bd5fba44d505d2db57951a8fb3602f..afba950b13b83bb15a640cb0348142a67b6ec6f5 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998 Free Software Foundation, Inc.                        *
+.\" Copyright (c) 1998,2003 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: mitem_new.3x,v 1.7 1998/11/29 01:11:38 Rick.Ohnemus Exp $
+.\" $Id: mitem_new.3x,v 1.8 2003/10/25 20:08:57 Jared.Yanovich Exp $
 .TH mitem_new 3X ""
 .SH NAME
 \fBmitem_new\fR - create and destroy menu items
@@ -42,7 +42,7 @@ int free_item(ITEM *item);
 The function \fBnew_item\fR allocates a new item and initializes it from the
 \fBname\fR and \fBdescription\fR pointers. Please notice that the item stores
 only the pointers to the name and description. Those pointers must be valid
-during the lifetime of the item. So you should be very carefull with names
+during the lifetime of the item. So you should be very careful with names
 or descriptions allocated on the stack of some routines.
 .br
 The function \fBfree_item\fR de-allocates an item. Please notice that it
index f5abde440c69b47ea799b9b786169258c319f88c..0c87dd8d35ec65701c480906891a692f64cdefdb 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998,1999,2001,2002 Free Software Foundation, Inc.         *
+.\" Copyright (c) 1998-2003,2004 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            *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: ncurses.3x,v 1.63 2002/08/10 21:56:07 tom Exp $
+.\" $Id: ncurses.3x,v 1.70 2004/01/11 01:45:54 tom Exp $
 .hy 0
 .TH ncurses 3X ""
 .ds n 5
@@ -42,61 +42,61 @@ The \fBncurses\fR library routines give the user a terminal-independent method
 of updating character screens with reasonable optimization.  This
 implementation is ``new curses'' (ncurses) and is the approved replacement for
 4.4BSD classic curses, which has been discontinued.
-
+.PP
 The \fBncurses\fR routines emulate the \fBcurses\fR(3X) library of System V
 Release 4 UNIX, and the XPG4 curses standard (XSI curses) but the \fBncurses\fR
 library is freely redistributable in source form.  Differences from the SVr4
 curses are summarized under the EXTENSIONS and BUGS sections below and
 described in detail in the EXTENSIONS and BUGS sections of individual man
 pages.
-
+.PP
 A program using these routines must be linked with the \fB-lncurses\fR option,
 or (if it has been generated) with the debugging library \fB-lncurses_g\fR.
 (Your system integrator may also have installed these libraries under
 the names \fB-lcurses\fR and \fB-lcurses_g\fR.)
 The ncurses_g library generates trace logs (in a file called 'trace' in the
 current directory) that describe curses actions.
-
+.PP
 The \fBncurses\fR package supports: overall screen, window and pad
 manipulation; output to windows and pads; reading terminal input; control over
 terminal and \fBcurses\fR input and output options; environment query
 routines; color manipulation; use of soft label keys; terminfo capabilities;
 and access to low-level terminal-manipulation routines.
-
+.PP
 To initialize the routines, the routine \fBinitscr\fR or \fBnewterm\fR
 must be called before any of the other routines that deal with windows
 and screens are used.  The routine \fBendwin\fR must be called before
 exiting.  To get character-at-a-time input without echoing (most
 interactive, screen oriented programs want this), the following
 sequence should be used:
-
+.sp
       \fBinitscr(); cbreak(); noecho();\fR
-
+.sp
 Most programs would additionally use the sequence:
-
+.sp
       \fBnonl();\fR
       \fBintrflush(stdscr, FALSE);\fR
       \fBkeypad(stdscr, TRUE);\fR
-
+.sp
 Before a \fBcurses\fR program is run, the tab stops of the terminal
 should be set and its initialization strings, if defined, must be
 output.  This can be done by executing the \fBtput init\fR command
 after the shell environment variable \fBTERM\fR has been exported.
 \fBtset(1)\fR is usually responsible for doing this.
 [See \fBterminfo\fR(\*n) for further details.]
-
+.PP
 The \fBncurses\fR library permits manipulation of data structures,
 called \fIwindows\fR, which can be thought of as two-dimensional
 arrays of characters representing all or part of a CRT screen.  A
 default window called \fBstdscr\fR, which is the size of the terminal
 screen, is supplied.  Others may be created with \fBnewwin\fR.
-
+.PP
 Note that \fBcurses\fR does not handle overlapping windows, that's done by
 the \fBpanel\fR(3X) library. This means that you can either use
 \fBstdscr\fR or divide the screen into tiled windows and not using
 \fBstdscr\fR at all. Mixing the two will result in unpredictable, and
 undesired, effects.
-
+.PP
 Windows are referred to by variables declared as \fBWINDOW *\fR.
 These data structures are manipulated with routines described here and
 elsewhere in the \fBncurses\fR manual pages.  Among which the most basic
@@ -104,17 +104,17 @@ routines are \fBmove\fR and \fBaddch\fR.  More general versions of
 these routines are included with names beginning with \fBw\fR,
 allowing the user to specify a window.  The routines not beginning
 with \fBw\fR affect \fBstdscr\fR.)
-
+.PP
 After using routines to manipulate a window, \fBrefresh\fR is called,
 telling \fBcurses\fR to make the user's CRT screen look like
 \fBstdscr\fR.  The characters in a window are actually of type
 \fBchtype\fR, (character and attribute data) so that other information
 about the character may also be stored with each character.
-
+.PP
 Special windows called \fIpads\fR may also be manipulated.  These are windows
 which are not constrained to the size of the screen and whose contents need not
 be completely displayed.  See \fBcurs_pad\fR(3X) for more information.
-
+.PP
 In addition to drawing characters on the screen, video attributes and colors
 may be supported, causing the characters to show up in such modes as
 underlined, in reverse video, or in color on terminals that support such
@@ -123,75 +123,74 @@ On input, \fBcurses\fR is also able to translate arrow and function keys that
 transmit escape sequences into single values.  The video attributes, line
 drawing characters, and input values use names, defined in \fB<curses.h>\fR,
 such as \fBA_REVERSE\fR, \fBACS_HLINE\fR, and \fBKEY_LEFT\fR.
-
+.PP
 If the environment variables \fBLINES\fR and \fBCOLUMNS\fR are set, or if the
 program is executing in a window environment, line and column information in
 the environment will override information read by \fIterminfo\fR.  This would
 effect a program running in an AT&T 630 layer, for example, where the size of a
 screen is changeable (see \fBENVIRONMENT\fR).
-
+.PP
 If the environment variable \fBTERMINFO\fR is defined, any program using
 \fBcurses\fR checks for a local terminal definition before checking in the
 standard place.  For example, if \fBTERM\fR is set to \fBatt4424\fR, then the
 compiled terminal definition is found in
-
+.sp
       \fB\*d/a/att4424\fR.
-
+.sp
 (The \fBa\fR is copied from the first letter of \fBatt4424\fR to avoid
 creation of huge directories.)  However, if \fBTERMINFO\fR is set to
 \fB$HOME/myterms\fR, \fBcurses\fR first checks
-
+.sp
       \fB$HOME/myterms/a/att4424\fR,
-
+.sp
 and if that fails, it then checks
-
+.sp
       \fB\*d/a/att4424\fR.
-
+.sp
 This is useful for developing experimental definitions or when write
 permission in \fB\*d\fR is not available.
-
+.PP
 The integer variables \fBLINES\fR and \fBCOLS\fR are defined in
 \fB<curses.h>\fR and will be filled in by \fBinitscr\fR with the size of the
 screen.  The constants \fBTRUE\fR and \fBFALSE\fR have the values \fB1\fR and
 \fB0\fR, respectively.
-
+.PP
 The \fBcurses\fR routines also define the \fBWINDOW *\fR variable \fBcurscr\fR
 which is used for certain low-level operations like clearing and redrawing a
 screen containing garbage.  The \fBcurscr\fR can be used in only a few
 routines.
-
+.
 .SS Routine and Argument Names
 Many \fBcurses\fR routines have two or more versions.  The routines prefixed
 with \fBw\fR require a window argument.  The routines prefixed with \fBp\fR
 require a pad argument.  Those without a prefix generally use \fBstdscr\fR.
-
+.PP
 The routines prefixed with \fBmv\fR require a \fIy\fR and \fIx\fR
 coordinate to move to before performing the appropriate action.  The
 \fBmv\fR routines imply a call to \fBmove\fR before the call to the
 other routine.  The coordinate \fIy\fR always refers to the row (of
 the window), and \fIx\fR always refers to the column.  The upper
 left-hand corner is always (0,0), not (1,1).
-
+.PP
 The routines prefixed with \fBmvw\fR take both a window argument and
 \fIx\fR and \fIy\fR coordinates.  The window argument is always
 specified before the coordinates.
-
+.PP
 In each case, \fIwin\fR is the window affected, and \fIpad\fR is the
 pad affected; \fIwin\fR and \fIpad\fR are always pointers to type
 \fBWINDOW\fR.
-
+.PP
 Option setting routines require a Boolean flag \fIbf\fR with the value
 \fBTRUE\fR or \fBFALSE\fR; \fIbf\fR is always of type \fBbool\fR.  The
 variables \fIch\fR and \fIattrs\fR below are always of type
 \fBchtype\fR.  The types \fBWINDOW\fR, \fBSCREEN\fR, \fBbool\fR, and
 \fBchtype\fR are defined in \fB<curses.h>\fR.  The type \fBTERMINAL\fR
 is defined in \fB<term.h>\fR.  All other arguments are integers.
-
 .SS Routine Name Index
 The following table lists each \fBcurses\fR routine and the name of
 the manual page on which it is described.  Routines flagged with `*'
 are ncurses-specific, not described by XPG4 or present in SVr4.
-
+.PP
 .TS
 center tab(/);
 l l
@@ -322,6 +321,7 @@ inwstr/\fBcurs_inwstr\fR(3X)
 is_linetouched/\fBcurs_touch\fR(3X)
 is_wintouched/\fBcurs_touch\fR(3X)
 isendwin/\fBcurs_initscr\fR(3X)
+key_defined/\fBkey_defined\fR(3X)*
 key_name/\fBcurs_util\fR(3X)
 keybound/\fBkeybound\fR(3X)*
 keyname/\fBcurs_util\fR(3X)
@@ -612,13 +612,13 @@ wvline_set/\fBcurs_border_set\fR(3X)
 Routines that return an integer return \fBERR\fR upon failure and an
 integer value other than \fBERR\fR upon successful completion, unless
 otherwise noted in the routine descriptions.
-
+.PP
 All macros return the value of the \fBw\fR version, except \fBsetscrreg\fR,
-\fBwsetscrreg\fR, \fBgetyx\fR, \fBgetbegyx\fR, \fBgetmaxyx\fR.  The return
+\fBwsetscrreg\fR, \fBgetyx\fR, \fBgetbegyx\fR, and \fBgetmaxyx\fR.  The return
 values of \fBsetscrreg\fR, \fBwsetscrreg\fR, \fBgetyx\fR, \fBgetbegyx\fR, and
-\fBgetmaxyx\fR are undefined (\fIi\fR.\fIe\fR., these should not be used as the
+\fBgetmaxyx\fR are undefined (i.e., these should not be used as the
 right-hand side of assignment statements).
-
+.PP
 Routines that return pointers return \fBNULL\fR on error.
 .SH ENVIRONMENT
 The following environment symbols are useful for customizing the
@@ -629,7 +629,7 @@ BAUDRATE
 The debugging library checks this environment symbol when the application
 has redirected output to a file.
 The symbol's numeric value is used for the baudrate.
-If no value is found \fBncurses\fR uses 9600.
+If no value is found, \fBncurses\fR uses 9600.
 This allows testers to construct repeatable test-cases
 that take into account costs that depend on baudrate.
 .TP 5
@@ -646,18 +646,18 @@ obtain the width of the window in which they are executing.
 If neither the $COLUMNS value nor the terminal's screen size is available,
 \fBncurses\fR uses the size which may be specified in the terminfo database
 (i.e., the \fBcols\fR capability).
-
+.IP
 It is important that your application use a correct size for the screen.
 However, this is not always possible because your application may be
 running on a host which does not honor NAWS (Negotiations About Window
 Size), or because you are temporarily running as another user.
-
+.IP
 Either COLUMNS or LINES symbols may be specified independently.
 This is mainly useful to circumvent legacy misfeatures of terminal descriptions,
 e.g., xterm which commonly specifies a 65 line screen.
 For best results, \fBlines\fR and \fBcols\fR should not be specified in
 a terminal description for terminals which are run as emulations.
-
+.IP
 Use the \fBuse_env\fR function to disable this feature.
 .TP 5
 ESCDELAY
@@ -665,13 +665,13 @@ Specifies the total time, in milliseconds, for which ncurses will
 await a character sequence, e.g., a function key.
 The default value, 1000 milliseconds, is enough for most uses.
 However, it is made a variable to accommodate unusual applications.
-
+.IP
 The most common instance where you may wish to change this value
 is to work with slow hosts, e.g., running on a network.
 If the host cannot read characters rapidly enough, it will have the same
 effect as if the terminal did not send characters rapidly enough.
 The library will still see a timeout.
-
+.IP
 Note that xterm mouse events are built up from character sequences
 received from the xterm.
 If your application makes heavy use of multiple-clicking, you may
@@ -681,7 +681,7 @@ to the composed multi-click event as well as the individual clicks.
 HOME
 Tells \fBncurses\fR where your home directory is.
 That is where it may read and write auxiliary terminal descriptions:
-
+.IP
 $HOME/.termcap
 .br
 $HOME/.terminfo
@@ -695,13 +695,13 @@ This applies only to the OS/2 EMX port.
 It specifies the order of buttons on the mouse.
 OS/2 numbers a 3-button mouse inconsistently from other
 platforms:
-
+.sp
 1 = left
 .br
 2 = right
 .br
 3 = middle.
-
+.sp
 This symbol lets you customize the mouse.
 The symbol must be three numeric digits 1-3 in any order, e.g., 123 or 321.
 If it is not specified, \fBncurses\fR uses 132.
@@ -733,11 +733,11 @@ it (or your application) must manage dataflow, preventing overruns.
 The cheapest solution (no hardware cost)
 is for your program to do this by pausing after
 operations that the terminal does slowly, such as clearing the display.
-
+.IP
 As a result, many terminal descriptions (including the vt100)
 have delay times embedded.  You may wish to use these descriptions,
 but not want to pay the performance penalty.
-
+.IP
 Set the NCURSES_NO_PADDING symbol to disable all but mandatory
 padding.  Mandatory padding is used as a part of special control
 sequences such as \fIflash\fR.
@@ -755,7 +755,7 @@ During initialization, the \fBncurses\fR debugging library
 checks the NCURSES_TRACE symbol.
 If it is defined, to a numeric value, \fBncurses\fR calls the \fBtrace\fR
 function, using that value as the argument.
-
+.IP
 The argument values, which are defined in \fBcurses.h\fR, provide several
 types of information.
 When running with traces enabled, your application will write the
@@ -769,7 +769,7 @@ TERMCAP
 If the \fBncurses\fR library has been configured with \fItermcap\fR
 support, \fBncurses\fR will check for a terminal's description in
 termcap form if it is not available in the terminfo database.
-
+.IP
 The TERMCAP symbol contains either a terminal description (with
 newlines stripped out),
 or a file name telling where the information denoted by the TERM symbol exists.
@@ -784,7 +784,7 @@ The complete list of directories in order follows:
 .RS
 .TP 3
 -
-the last directory to which \fBncurses\fR wrote, if any, is searched first.
+the last directory to which \fBncurses\fR wrote, if any, is searched first
 .TP 3
 -
 the directory specified by the TERMINFO symbol
@@ -828,28 +828,29 @@ terminal capability database
 \fBterminfo\fR(\*n) and related pages whose names begin "curs_" for detailed routine
 descriptions.
 .SH EXTENSIONS
-The \fBncurses\fR library can be compiled with an option (\fB-DUSE_GETCAP\fR)
+The \fBncurses\fR library can be compiled with an option (\fB\-DUSE_GETCAP\fR)
 that falls back to the old-style /etc/termcap file if the terminal setup code
 cannot find a terminfo entry corresponding to \fBTERM\fR.  Use of this feature
 is not recommended, as it essentially includes an entire termcap compiler in
 the \fBncurses\fR startup code, at significant cost in core and startup cycles.
-
+.PP
 The \fBncurses\fR library includes facilities for capturing mouse events on
 certain terminals (including xterm). See the \fBcurs_mouse\fR(3X)
 manual page for details.
-
+.PP
 The \fBncurses\fR library includes facilities for responding to window
 resizing events, e.g., when running in an xterm.
 See the \fBresizeterm\fR(3X)
 and \fBwresize\fR(3X) manual pages for details.
 In addition, the library may be configured with a SIGWINCH handler.
-
+.PP
 The \fBncurses\fR library extends the fixed set of function key capabilities
 of terminals by allowing the application designer to define additional
 key sequences at runtime.
 See the \fBdefine_key\fR(3X)
+\fBkey_defined\fR(3X),
 and \fBkeyok\fR(3X) manual pages for details.
-
+.PP
 The \fBncurses\fR library can exploit the capabilities of terminals which
 implement the ISO-6429 SGR 39 and SGR 49 controls, which allow an application
 to reset the terminal to its original foreground and background colors.
@@ -857,17 +858,14 @@ From the users' perspective, the application is able to draw colored
 text on a background whose color is set independently, providing better
 control over color contrasts.
 See the \fBdefault_colors\fR(3X) manual page for details.
-
+.PP
 The \fBncurses\fR library includes a function for directing application output
 to a printer attached to the terminal device.  See the \fBcurs_print\fR(3X)
 manual page for details.
 .SH PORTABILITY
 The \fBncurses\fR library is intended to be BASE-level conformant with the XSI
-Curses standard.  Certain portions of the EXTENDED XSI Curses functionality
-(including color support) are supported.  The following EXTENDED XSI Curses
-calls in support of wide (multibyte) characters are not yet implemented:
-\fBpecho_wchar\fP,
-\fBslk_wset\fP.
+Curses standard.  The EXTENDED XSI Curses functionality
+(including color support) is supported.
 .PP
 A small number of local differences (that is, individual differences between
 the XSI Curses and \fBncurses\fR calls) are described in \fBPORTABILITY\fR
@@ -899,7 +897,7 @@ correspondingly.
 .SH NOTES
 The header file \fB<curses.h>\fR automatically includes the header files
 \fB<stdio.h>\fR and \fB<unctrl.h>\fR.
-
+.PP
 If standard output from a \fBncurses\fR program is re-directed to something
 which is not a tty, screen updates will be directed to standard error.  This
 was an undocumented feature of AT&T System V Release 3 curses.
index 7ebecc00ff4608a539fd4862f794ab6fd6c7e314..800ad32ee11a910572db107e04fe511000e75105 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998 Free Software Foundation, Inc.                        *
+.\" Copyright (c) 1998-2000,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: panel.3x,v 1.10 2000/08/13 01:56:47 tom Exp $
+.\" $Id: panel.3x,v 1.11 2003/05/17 22:44:09 jmc Exp $
 .TH panel 3X ""
 .ds n 5
 .ds d @TERMINFO@
@@ -77,7 +77,7 @@ The set of currently visible panels is the stack of panels.  The
 of the stack.
 .P
 A window is associated with every panel. The panel routines enable
-you to create, move, hides, and show panels, as well as position a
+you to create, move, hide, and show panels, as well as position a
 panel at any desired location in the stack.
 .P
 Panel routines are a functional layer added to \fBcurses\fR(3X), make only
index 562c35328901cba75ca152f041bbd0e56170d52a..da5d84df74863b5f8a363f2f821c819851559c02 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,9 +26,9 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" Author: Thomas E. Dickey <dickey@clark.net> 1996,1997,2002
+.\" Author: Thomas E. Dickey 1996,1997,2002
 .\"
-.\" $Id: resizeterm.3x,v 1.9 2002/02/16 22:32:24 tom Exp $
+.\" $Id: resizeterm.3x,v 1.10 2003/10/25 20:41:08 tom Exp $
 .TH resizeterm 3X ""
 .SH NAME
 \fBis_term_resized\fR,
index 1dcb87dec670dc8029b471444e613f096e4873f2..94b6df5111ae387bc97d774b1797ec98bc578f96 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: term.5,v 1.14 2002/08/10 21:59:37 tom Exp $
+.\" $Id: term.5,v 1.15 2003/05/10 20:33:49 jmc Exp $
 .TH TERM 5
 .ds n 5
 .ds d @TERMINFO@
@@ -56,7 +56,7 @@ An 8 or more bit byte is assumed, but no assumptions about byte ordering
 or sign extension are made.
 .PP
 The compiled file is created with the
-.I tic 
+.I tic
 program, and read by the routine
 .IR setupterm .
 The file is divided into six parts:
@@ -84,7 +84,7 @@ The first byte contains the least significant 8 bits of the value,
 and the second byte contains the most significant 8 bits.
 (Thus, the value represented is 256*second+first.)
 The value \-1 is represented by the two bytes 0377, 0377; other negative
-values are illegal. This value generally 
+values are illegal. This value generally
 means that the corresponding capability is missing from this terminal.
 Note that this format corresponds to the hardware of the \s-1VAX\s+1
 and \s-1PDP\s+1-11 (that is, little-endian machines).
@@ -160,12 +160,12 @@ As an example, here is a hex dump of the description for the Lear-Siegler
 ADM-3, a popular though rather stupid early terminal:
 .nf
 .sp
-adm3a|lsi adm3a, 
-        am, 
-        cols#80, lines#24, 
-        bel=^G, clear=\032$<1>, cr=^M, cub1=^H, cud1=^J, 
-        cuf1=^L, cup=\\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, 
-        home=^^, ind=^J, 
+adm3a|lsi adm3a,
+        am,
+        cols#80, lines#24,
+        bel=^G, clear=\032$<1>, cr=^M, cub1=^H, cud1=^J,
+        cuf1=^L, cup=\\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
+        home=^^, ind=^J,
 .sp
 .ft CW
 \s-20000  1a 01 10 00 02 00 03 00  82 00 31 00 61 64 6d 33  ........ ..1.adm3
index 5d51e92e6ed43cf006b96fffe9e7eced9df58197..e3be223b0424cb3ddeb82912067f4fa35f24e16f 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: term.7,v 1.13 2002/04/20 16:50:47 tom Exp $
+.\" $Id: term.7,v 1.14 2003/05/10 20:33:49 jmc Exp $
 .TH TERM 7
 .ds n 5
 .ds d @TERMINFO@
@@ -96,7 +96,7 @@ terminals that also explains how to parse them:
 First, choose a root name.  The root will consist of a lower-case letter
 followed by up to seven lower-case letters or digits.  You need to avoid using
 punctuation characters in root names, because they are used and interpreted as
-filenames and shell meta-characters (such as !, $, *, ? etc.) embedded in them
+filenames and shell meta-characters (such as !, $, *, ?, etc.) embedded in them
 may cause odd and unhelpful behavior.  The slash (/), or any other character
 that may be interpreted by anyone's file system (\e, $, [, ]), is especially
 dangerous (terminfo is platform-independent, and choosing names with special
@@ -136,29 +136,29 @@ with another that has this suffix and uses magic cookies to support multiple
 attributes.
 .TP 5
 -am
-Enable auto-margin (right-margin wraparound)
+Enable auto-margin (right-margin wraparound).
 .TP 5
 -m
-Mono mode - suppress color support
+Mono mode - suppress color support.
 .TP 5
 -na
 No arrow keys - termcap ignores arrow keys which are actually there on the
 terminal, so the user can use the arrow keys locally.
 .TP 5
 -nam
-No auto-margin - suppress am capability
+No auto-margin - suppress am capability.
 .TP 5
 -nl
-No labels - suppress soft labels
+No labels - suppress soft labels.
 .TP 5
 -nsl
-No status line - suppress status line
+No status line - suppress status line.
 .TP 5
 -pp
 Has a printer port which is used.
 .TP 5
 -rv
-Terminal in reverse video mode (black on white)
+Terminal in reverse video mode (black on white).
 .TP 5
 -s
 Enable status line.
@@ -190,10 +190,10 @@ should be unique within the first 14 characters.
 compiled terminal capability data base
 .TP 5
 /etc/inittab
-tty line initialization (AT&T-like UNIXes).
+tty line initialization (AT&T-like UNIXes)
 .TP 5
 /etc/ttys
-tty line initialization (BSD-like UNIXes).
+tty line initialization (BSD-like UNIXes)
 .SH SEE ALSO
 \fBcurses\fR(3X), \fBterminfo\fR(\*n), \fBterm\fR(\*n).
 .\"#
index bd585b1268e5140bf7d99f969c955cbfede3ae66..fc6af2e03508a67e74b8bd09369a0669f3c101b1 100644 (file)
@@ -1,4 +1,4 @@
-.\" $Id: terminfo.tail,v 1.35 2002/04/20 16:49:33 tom Exp $
+.\" $Id: terminfo.tail,v 1.38 2003/01/05 22:47:05 tom Exp $
 .\" Beginning of terminfo.tail file
 .ps +1
 .PP
@@ -311,42 +311,81 @@ The parameter mechanism uses a stack and special \fB%\fP codes
 to manipulate it.
 Typically a sequence will push one of the
 parameters onto the stack and then print it in some format.
-Often more complex operations are necessary.
+Print (e.g., "%d") is a special case.
+Other operations, including "%t" pop their operand from the stack.
+It is noted that more complex operations are often necessary,
+e.g., in the \fBsgr\fP string.
 .PP
 The \fB%\fR encodings have the following meanings:
 .PP
-.DT
-.nf
-.ta .5i 1.5i
-       \s-1%%  outputs `%'
-       %\fI[[\fP:\fI]flags][width[.precision]][\fPdoxXs\fI]\fP
-               as in \fBprintf\fP, flags are [-+#] and space
-       %c      print pop() like %c in printf()
-       %s      print pop() like %s in printf()
-
-       %p[1-9] push \fIi\fP'th parm
-       %P[a-z] set dynamic variable [a-z] to pop()
-       %g[a-z] get dynamic variable [a-z] and push it
-       %P[A-Z] set static variable [a-z] to pop()
-       %g[A-Z] get static variable [a-z] and push it
-       %'\fIc\fP'      char constant \fIc\fP
-       %{\fInn\fP}     integer constant \fInn\fP
-       %l      push strlen(pop)
-
-       %+ %- %* %/ %m
-               arithmetic (%m is mod): push(pop() op pop())
-       %& %| %^        bit operations: push(pop() op pop())
-       %= %> %<        logical operations: push(pop() op pop())
-       %A, %O  logical and & or operations (for conditionals)
-       %! %~   unary operations push(op pop())
-       %i      add 1 to first two parameters (for ANSI terminals)
-
-       %? expr %t thenpart %e elsepart %;
-               if-then-else, %e elsepart is optional.
-               else-if's are possible a la Algol 68:
-               %? c\d1\u %t b\d1\u %e c\d2\u %t b\d2\u %e c\d3\u %t b\d3\u %e c\d4\u %t b\d4\u %e %;
-\s+1           c\di\u are conditions, b\di\u are bodies.
-.fi
+.TP 5
+\s-1%%
+outputs `%'
+.TP
+%\fI[[\fP:\fI]flags][width[.precision]][\fPdoxXs\fI]\fP
+as in \fBprintf\fP, flags are [-+#] and space
+.TP
+%c
+print pop() like %c in \fBprintf\fP
+.TP
+%s
+print pop() like %s in \fBprintf\fP
+.TP
+%p[1-9]
+push \fIi\fP'th parameter
+.TP
+%P[a-z]
+set dynamic variable [a-z] to pop()
+.TP
+%g[a-z]
+get dynamic variable [a-z] and push it
+.TP
+%P[A-Z]
+set static variable [a-z] to pop()
+.TP
+%g[A-Z]
+get static variable [a-z] and push it
+.IP
+The terms "static" and "dynamic" are misleading.
+Historically, these are simply two different sets of variables,
+whose values are not reset between calls to \fBtparm\fP.
+However, that fact is not documented in other implementations.
+Relying on it will adversely impact portability to other implementations.
+.TP
+%'\fIc\fP'
+char constant \fIc\fP
+.TP
+%{\fInn\fP}
+integer constant \fInn\fP
+.TP
+%l
+push strlen(pop)
+.TP
+%+ %- %* %/ %m
+arithmetic (%m is mod): push(pop() op pop())
+.TP
+%& %| %^
+bit operations: push(pop() op pop())
+.TP
+%= %> %<
+logical operations: push(pop() op pop())
+.TP
+%A, %O
+logical and & or operations (for conditionals)
+.TP
+%! %~
+unary operations push(op pop())
+.TP
+%i
+add 1 to first two parameters (for ANSI terminals)
+.TP
+%? \fIexpr\fP %t \fIthenpart\fP %e \fIelsepart\fP %;
+if-then-else, %e \fIelsepart\fP is optional.
+else-if's are possible a la Algol 68:
+.br
+%? c\d1\u %t b\d1\u %e c\d2\u %t b\d2\u %e c\d3\u %t b\d3\u %e c\d4\u %t b\d4\u %e %;
+.br
+c\di\u are conditions, b\di\u are bodies.
 .PP
 Binary operations are in postfix form with the operands in the usual order.
 That is, to get x-5 one would use "%gx%{5}%-".
@@ -1170,7 +1209,7 @@ defined."
 .PP
 The \fBsetaf\fR/\fBsetab\fR and \fBsetf\fR/\fBsetb\fR capabilities take a
 single numeric argument each.
-Argument values 0-7 are portably defined as
+Argument values 0-7 of \fBsetaf\fR/\fBsetab\fR are portably defined as
 follows (the middle column is the symbolic #define available in the header for
 the \fBcurses\fR or \fBncurses\fR libraries).
 The terminal hardware is free to
@@ -1192,6 +1231,25 @@ cyan     \fBCOLOR_CYAN\fR        6       0,max,max
 white  \fBCOLOR_WHITE\fR       7       max,max,max
 .TE
 .PP
+The argument values of \fBsetf\fR/\fBsetb\fR historically correspond to
+a different mapping, i.e.,
+.TS H
+center;
+l c c c
+l l n l.
+\fBColor       #define         Value   RGB\fR
+black  \fBCOLOR_BLACK\fR       0       0, 0, 0
+blue   \fBCOLOR_BLUE\fR        1       0,0,max
+green  \fBCOLOR_GREEN\fR       2       0,max,0
+cyan   \fBCOLOR_CYAN\fR        3       0,max,max
+red    \fBCOLOR_RED\ \fR       4       max,0,0
+magenta        \fBCOLOR_MAGENTA\fR     5       max,0,max
+yellow \fBCOLOR_YELLOW\fR      6       max,max,0
+white  \fBCOLOR_WHITE\fR       7       max,max,max
+.TE
+It is important to not confuse the two sets of color capabilities;
+otherwise red/blue will be interchanged on the display.
+.PP
 On an HP-like terminal, use \fBscp\fR with a color-pair number parameter to set
 which color pair is current.
 .PP
index 829fe4009d2bd7299d8fe6875418a72dd5a7de2b..29d5261972eae3b4eda8281bc691c5977a5ad5d6 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,7 +26,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: tic.1m,v 1.33 2002/10/05 20:06:13 tom Exp $
+.\" $Id: tic.1m,v 1.35 2003/05/11 00:32:53 tom Exp $
 .TH tic 1M ""
 .ds n 5
 .ds d @TERMINFO@
@@ -52,11 +52,11 @@ s\
 t\
 x\
 \fR]
-[\fB-e\fR \fInames\fR]
-[\fB-o\fR \fIdir\fR]
-[\fB-R\fR \fIsubset\fR]
-[\fB-v\fR[\fIn\fR]]
-[\fB-w\fR[\fIn\fR]]
+[\fB\-e\fR \fInames\fR]
+[\fB\-o\fR \fIdir\fR]
+[\fB\-R\fR \fIsubset\fR]
+[\fB\-v\fR[\fIn\fR]]
+[\fB\-w\fR[\fIn\fR]]
 \fIfile\fR
 .br
 .SH DESCRIPTION
@@ -78,31 +78,31 @@ Libraries that read terminfo entries are expected to check for a TERMINFO
 directory first, look at \fI$HOME/.terminfo\fR if TERMINFO is not set, and
 finally look in \fI\*d\fR.
 .TP
-\fB-1\fR
+\fB\-1\fR
 restricts the output to a single column
 .TP
-\fB-a\fR
+\fB\-a\fR
 tells \fBtic\fP to retain commented-out capabilities rather than discarding
 them.  Capabilities are commented by prefixing them with a period.
-This sets the \fB-x\fR option, because it treats the commented-out
+This sets the \fB\-x\fR option, because it treats the commented-out
 entries as user-defined names.
 .TP
-\fB-C\fR
-Force source translation to termcap format.  Note: this differs from the -C
+\fB\-C\fR
+Force source translation to termcap format.  Note: this differs from the \fB\-C\fR
 option of \fIinfocmp\fR(1M) in that it does not merely translate capability
 names, but also translates terminfo strings to termcap format.  Capabilities
 that are not translatable are left in the entry under their terminfo names
 but commented out with two preceding dots.
 .TP
-\fB-c\fR
+\fB\-c\fR
 tells \fBtic\fP to only check \fIfile\fR for errors, including syntax problems and
-bad use links.  If you specify \fB-C\fR (\fB-I\fR) with this option, the code
+bad use links.  If you specify \fB\-C\fR (\fB\-I\fR) with this option, the code
 will print warnings about entries which, after use resolution, are more than
 1023 (4096) bytes long.  Due to a fixed buffer length in older termcap
 libraries (and a documented limit in terminfo), these entries may cause core
 dumps.
 .TP
-\fB-e \fR\fInames\fR
+\fB\-e \fR\fInames\fR
 Limit writes and translations to the following comma-separated list of
 terminals.
 If any name or alias of a terminal matches one of the names in
@@ -110,32 +110,32 @@ the list, the entry will be written or translated as normal.
 Otherwise no output will be generated for it.
 The option value is interpreted as a file containing the list if it
 contains a '/'.
-(Note: depending on how tic was compiled, this option may require -I or -C.)
+(Note: depending on how tic was compiled, this option may require \fB\-I\fR or \fB\-C\fR.)
 .TP
-\fB-f\fR
+\fB\-f\fR
 Display complex terminfo strings which contain if/then/else/endif expressions
 indented for readability.
 .TP
-\fB-G\fR
+\fB\-G\fR
 Display constant literals in decimal form
 rather than their character equivalents.
 .TP
-\fB-g\fR
+\fB\-g\fR
 Display constant character literals in quoted form
 rather than their decimal equivalents.
 .TP
-\fB-I\fR
+\fB\-I\fR
 Force source translation to terminfo format.
 .TP
-\fB-L\fR
+\fB\-L\fR
 Force source translation to terminfo format
 using the long C variable names listed in <\fBterm.h\fR>
 .TP
-\fB-N\fR
-Disable smart defaults.  
-Normally, when translating from termcap to terminfo, the compiler makes 
+\fB\-N\fR
+Disable smart defaults. 
+Normally, when translating from termcap to terminfo, the compiler makes
 a number of assumptions about the defaults of string capabilities
-\fBreset1_string\fR, \fBcarriage_return\fR, \fBcursor_left\fR, 
+\fBreset1_string\fR, \fBcarriage_return\fR, \fBcursor_left\fR,
 \fBcursor_down\fR, \fBscroll_forward\fR, \fBtab\fR, \fBnewline\fR,
 \fBkey_backspace\fR, \fBkey_left\fR, and \fBkey_down\fR, then attempts
 to use obsolete termcap capabilities to deduce correct values.  It also
@@ -143,42 +143,42 @@ normally suppresses output of obsolete termcap capabilities such as \fBbs\fR.
 This option forces a more literal translation that also preserves the
 obsolete capabilities.
 .TP
-\fB-o\fR\fIdir\fR
+\fB\-o\fR\fIdir\fR
 Write compiled entries to given directory.  Overrides the TERMINFO environment
 variable.
 .TP
-\fB-R\fR\fIsubset\fR
+\fB\-R\fR\fIsubset\fR
 Restrict output to a given subset.  This option is for use with archaic
 versions of terminfo like those on SVr1, Ultrix, or HP/UX that do not support
 the full set of SVR4/XSI Curses terminfo; and outright broken ports like AIX 3.x
 that have their own extensions incompatible with SVr4/XSI.  Available subsets
 are "SVr1", "Ultrix", "HP", "BSD" and "AIX"; see \fBterminfo\fR(\*n) for details.
 .TP
-\fB-r\fR
+\fB\-r\fR
 Force entry resolution (so there are no remaining tc capabilities) even
 when doing translation to termcap format.  This may be needed if you are
 preparing a termcap file for a termcap library (such as GNU termcap through
 version 1.3 or BSD termcap through 4.3BSD) that does not handle multiple
 tc capabilities per entry.
 .TP
-\fB-s\fR
+\fB\-s\fR
 Summarize the compile by showing the directory into which entries
 are written, and the number of entries which are compiled.
 .TP
-\fB-T\fR
+\fB\-T\fR
 eliminates size-restrictions on the generated text.
 This is mainly useful for testing and analysis, since the compiled
 descriptions are limited (e.g., 1023 for termcap, 4096 for terminfo).
 .TP
-\fB-t\fR
+\fB\-t\fR
 tells \fBtic\fP to discard commented-out capabilities.
 Normally when translating from terminfo to termcap,
 untranslatable capabilities are commented-out.
 .TP
-\fB-V\fR
+\fB\-V\fR
 reports the version of ncurses which was used in this program, and exits.
 .TP
-\fB-v\fR\fIn\fR
+\fB\-v\fR\fIn\fR
 specifies that (verbose) output be written to standard error trace
 information showing \fBtic\fR's progress.  The optional integer
 \fIn\fR is a number from 1 to 10, inclusive, indicating the desired
@@ -186,10 +186,10 @@ level of detail of information.  If \fIn\fR is omitted, the default
 level is 1.  If \fIn\fR is specified and greater than 1, the level of
 detail is increased.
 .TP
-\fB-w\fR\fIn\fR
+\fB\-w\fR\fIn\fR
 specifies the width of the output.
 .TP
-\fB-x\fR
+\fB\-x\fR
 Treat unknown capabilities as user-defined.
 That is, if you supply a capability name which \fBtic\fP does not recognize,
 it will infer its type (boolean, number or string) from the syntax and
@@ -274,25 +274,25 @@ The error messages from this \fBtic\fR have the same format as GNU C
 error messages, and can be parsed by GNU Emacs's compile facility.
 
 The
-\fB-C\fR,
-\fB-G\fR,
-\fB-I\fR,
-\fB-N\fR,
-\fB-R\fR,
-\fB-T\fR,
-\fB-V\fR,
-\fB-a\fR,
-\fB-e\fR,
-\fB-f\fR,
-\fB-g\fR,
-\fB-o\fR,
-\fB-r\fR,
-\fB-s\fR,
-\fB-t\fR and 
-\fB-x\fR
+\fB\-C\fR,
+\fB\-G\fR,
+\fB\-I\fR,
+\fB\-N\fR,
+\fB\-R\fR,
+\fB\-T\fR,
+\fB\-V\fR,
+\fB\-a\fR,
+\fB\-e\fR,
+\fB\-f\fR,
+\fB\-g\fR,
+\fB\-o\fR,
+\fB\-r\fR,
+\fB\-s\fR,
+\fB\-t\fR and
+\fB\-x\fR
 options
 are not supported under SVr4.
-The SVr4 -c mode does not report bad use links.
+The SVr4 \fB\-c\fR mode does not report bad use links.
 
 System V does not compile entries to or read entries from your
 \fI$HOME/.terminfo\fR directory unless TERMINFO is explicitly set to it.
index 399cf614f3f31828b0e9fa8807022ba380082276..4e69f55f3372fecd2816be14b7519a72765cef4f 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: toe.1m,v 1.10 2000/08/19 18:51:05 tom Exp $
+.\" $Id: toe.1m,v 1.12 2003/05/11 00:32:53 tom Exp $
 .TH toe 1M ""
 .ds n 5
 .ds d @TERMINFO@
 .SH NAME
 \fBtoe\fR - table of (terminfo) entries
 .SH SYNOPSIS
-\fBtoe\fR [\fB-v\fR[\fIn\fR]] [\fB-huUV\fR] \fIfile...\fR
+\fBtoe\fR [\fB\-v\fR[\fIn\fR]] [\fB\-huUV\fR] \fIfile...\fR
 .br
 .SH DESCRIPTION
 .PP
 With no options, \fBtoe\fR lists all available terminal types by primary name
 with descriptions.  File arguments specify the directories to be scanned; if no
 such arguments are given, your default terminfo directory is scanned.  If you
-also specify the -h option, a directory header will be issued as each
-directory is entered. 
+also specify the \fB\-h\fR option, a directory header will be issued as each
+directory is entered.
 .PP
 There are other options intended for use by terminfo file maintainers:
 .TP
-\fB-u\fR \fIfile\fR
+\fB\-u\fR \fIfile\fR
 says to issue a report on dependencies in the given file. This report condenses
 the `use' relation: each line consists of the primary name of a terminal that
 has use capabilities, followed by a colon, followed by the
 whitespace-separated primary names of all terminals which occur in those use
 capabilities, followed by a newline
 .TP
-\fB-U\fR \fIfile\fR
+\fB\-U\fR \fIfile\fR
 says to issue a report on reverse dependencies in the given file. This report
 reverses the `use' relation: each line consists of the primary name of a
 terminal that occurs in use capabilities, followed by a colon, followed by the
 whitespace-separated primary names of all terminals which depend on it,
 followed by a newline.
 .TP
-\fB-v\fR\fIn\fR
+\fB\-v\fR\fIn\fR
 specifies that (verbose) output be written to standard error trace
 information showing \fBtoe\fR's progress.  The optional integer
 \fIn\fR is a number from 1 to 10, interpreted as for \fBtic\fR(1).
 .TP 5
-\fB-V\fR
+\fB\-V\fR
 reports the version of ncurses which was used in this program, and exits.
 .SH FILES
 .TP 5
index 7e73b0e0f49222c6274d2e7118c2eca3aff03753..c657a162d1be2b073e034b0d91bd95b2d45cf05f 100644 (file)
@@ -1,6 +1,6 @@
 '\" t
 .\"***************************************************************************
-.\" Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+.\" Copyright (c) 1998-2002,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: tput.1,v 1.18 2002/10/12 13:53:20 tom Exp $
+.\" $Id: tput.1,v 1.20 2003/05/11 00:32:53 tom Exp $
 .TH tput 1 ""
 .ds d @TERMINFO@
 .ds n 1
 .SH NAME
 \fBtput\fR, \fBreset\fR - initialize a terminal or query terminfo database
 .SH SYNOPSIS
-\fBtput\fR [\fB-T\fR\fItype\fR] \fIcapname\fR [\fIparms\fR ... ]
+\fBtput\fR [\fB\-T\fR\fItype\fR] \fIcapname\fR [\fIparms\fR ... ]
 .br
-\fBtput\fR [\fB-T\fR\fItype\fR] \fBinit\fR
+\fBtput\fR [\fB\-T\fR\fItype\fR] \fBinit\fR
 .br
-\fBtput\fR [\fB-T\fR\fItype\fR] \fBreset\fR
+\fBtput\fR [\fB\-T\fR\fItype\fR] \fBreset\fR
 .br
-\fBtput\fR [\fB-T\fR\fItype\fR] \fBlongname\fR
+\fBtput\fR [\fB\-T\fR\fItype\fR] \fBlongname\fR
 .br
-\fBtput -S\fR  \fB<<\fR
+\fBtput \-S\fR  \fB<<\fR
 .br
-\fBtput -V\fR
+\fBtput \-V\fR
 .br
 .SH DESCRIPTION
 The \fBtput\fR utility uses the \fBterminfo\fR database to make the
@@ -62,10 +62,10 @@ returned on standard output, the user should test the exit code
 For a complete list of capabilities
 and the \fIcapname\fR associated with each, see \fBterminfo\fR(\*n).
 .TP
-\fB-T\fR\fItype\fR
+\fB\-T\fR\fItype\fR
 indicates the \fItype\fR of terminal.  Normally this option is
 unnecessary, because the default is taken from the environment
-variable \fBTERM\fR.  If \fB-T\fR is specified, then the shell
+variable \fBTERM\fR.  If \fB\-T\fR is specified, then the shell
 variables \fBLINES\fR and \fBCOLUMNS\fR will be ignored,and the
 operating system will not be queried for the actual screen size.
 .TP
@@ -83,14 +83,14 @@ Only a few terminfo capabilities require string parameters;
 \fBtput\fR uses a table to decide which to pass as strings.
 Normally \fBtput\fR uses \fBtparm\fR (3X) to perform the substitution.
 If no parameters are given for the attribute,
-\fBtput\fR writes the string without performing the substitution. 
+\fBtput\fR writes the string without performing the substitution.
 .TP
-\fB-S\fR
+\fB\-S\fR
 allows more than one capability per invocation of \fBtput\fR.  The
 capabilities must be passed to \fBtput\fR from the standard input
 instead of from the command line (see example).
 Only one \fIcapname\fR is allowed per line.
-The \fB-S\fR option changes the
+The \fB\-S\fR option changes the
 meaning of the \fB0\fR and \fB1\fR boolean and string exit codes (see the
 EXIT CODES section).
 .IP
@@ -98,12 +98,12 @@ Again, \fBtput\fR uses a table and the presence of parameters in its input
 to decide whether to use \fBtparm\fR (3X),
 and how to interpret the parameters.
 .TP
-\fB-V\fR
+\fB\-V\fR
 reports the version of ncurses which was used in this program, and exits.
 .TP
 \fBinit\fR
 If the \fBterminfo\fR database is present and an entry for the user's
-terminal exists (see \fB-T\fR\fItype\fR, above), the following will
+terminal exists (see \fB\-T\fR\fItype\fR, above), the following will
 occur: (1) if present, the terminal's initialization strings will be
 output (\fBis1\fR, \fBis2\fR, \fBis3\fR, \fBif\fR, \fBiprog\fR), (2)
 any delays (e.g., newline) specified in the entry will be set in the
@@ -122,7 +122,7 @@ Otherwise, \fBreset\fR acts identically to \fBinit\fR.
 .TP
 \fBlongname\fR
 If the \fBterminfo\fR database is present and an entry for the
-user's terminal exists (see \fB-T\fR\fItype\fR above), then the long name
+user's terminal exists (see \fB\-T\fR\fItype\fR above), then the long name
 of the terminal will be put out.  The long name is the last
 name in the first line of the terminal's description in the
 \fBterminfo\fR database [see \fBterm\fR(5)].
@@ -139,7 +139,7 @@ command should be included in everyone's .profile after
 the environmental variable \fBTERM\fR has been exported, as
 illustrated on the \fBprofile\fR(5) manual page.
 .TP 5
-\fBtput -T5620 reset\fR
+\fBtput \-T5620 reset\fR
 Reset an AT&T 5620 terminal, overriding the type of
 terminal in the environmental variable \fBTERM\fR.
 .TP 5
@@ -154,7 +154,7 @@ Echo the clear-screen sequence for the current terminal.
 \fBtput cols\fR
 Print the number of columns for the current terminal.
 .TP 5
-\fBtput -T450 cols\fR
+\fBtput \-T450 cols\fR
 Print the number of columns for the 450 terminal.
 .TP 5
 \fBbold=`tput smso` offbold=`tput rmso`\fR
@@ -178,7 +178,7 @@ type of terminal specified in the environmental
 variable \fBTERM\fR.
 .PP
 .RS 5
-\fBtput -S <<!\fR
+\fBtput \-S <<!\fR
 .br
 \fB> clear\fR
 .br
@@ -213,7 +213,7 @@ sequences that set margins and tabs); for more
 information, see the "Tabs and Initialization"
 section of \fBterminfo\fR(5)
 .SH EXIT CODES
-If the \fB-S\fR option is used,
+If the \fB\-S\fR option is used,
 \fBtput\fR checks for errors from each line,
 and if any errors are found, will set the exit code to 4 plus the
 number of lines with errors.
@@ -221,7 +221,7 @@ If no errors are found, the exit code is \fB0\fR.
 No indication of which line failed can be given so
 exit code \fB1\fR will never appear.  Exit codes \fB2\fR, \fB3\fR, and
 \fB4\fR retain their usual interpretation.
-If the \fB-S\fR option is not used,
+If the \fB\-S\fR option is not used,
 the exit code depends on the type of \fIcapname\fR:
 .RS 5
 .TP
@@ -241,7 +241,7 @@ a value of \fB0\fR is always set,
 whether or not \fIcapname\fR is defined for this terminal \fItype\fR.
 To determine if \fIcapname\fR is defined for this terminal \fItype\fR,
 the user must test the value written to standard output.
-A value of \fB-1\fR
+A value of \fB\-1\fR
 means that \fIcapname\fR is not defined for this terminal \fItype\fR.
 .TP
 .I other
@@ -262,17 +262,17 @@ exit code error message
 \fB0\fR        T{
 (\fIcapname\fR is a numeric variable that is not specified in the
 \fBterminfo\fR(\*n) database for this terminal type, e.g.
-\fBtput -T450 lines\fR and \fBtput -T2621 xmc\fR)
+\fBtput \-T450 lines\fR and \fBtput \-T2621 xmc\fR)
 T}
 \fB1\fR        no error message is printed, see the \fBEXIT CODES\fR section.
 \fB2\fR        usage error
 \fB3\fR        unknown terminal \fItype\fR or no \fBterminfo\fR database
 \fB4\fR        unknown \fBterminfo\fR capability \fIcapname\fR
-\fB>4\fR       error occurred in -S
+\fB>4\fR       error occurred in \-S
 =
 .TE
 .SH PORTABILITY
-The \fBlongname\fR and \fB-S\fR options, and the parameter-substitution
+The \fBlongname\fR and \fB\-S\fR options, and the parameter-substitution
 features used in the \fBcup\fR example, are not supported in BSD curses or in
 AT&T/USL curses before SVr4.
 .SH SEE ALSO
index 897d9edb5446b83e7d812dc43db0eaf88393bab4..3a78b37b47badd8d5293e2546970008fd2b4a068 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2000,2003 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            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: tset.1,v 1.12 2000/09/09 20:33:07 tom Exp $
+.\" $Id: tset.1,v 1.13 2003/05/11 00:32:53 tom Exp $
 .TH tset 1 ""
 .SH NAME
 \fBtset\fR, \fBreset\fR - terminal initialization
 .SH SYNOPSIS
-tset [-IQVqrs] [-] [-e \fIch\fR] [-i \fIch\fR] [-k \fIch\fR] [-m \fImapping\fR] [\fIterminal\fR]
+tset [\-IQVqrs] [\-] [\-e \fIch\fR] [\-i \fIch\fR] [\-k \fIch\fR] [\-m \fImapping\fR] [\fIterminal\fR]
 .br
-reset [-IQVqrs] [-] [-e \fIch\fR] [-i \fIch\fR] [-k \fIch\fR] [-m \fImapping\fR] [\fIterminal\fR]
+reset [\-IQVqrs] [\-] [\-e \fIch\fR] [\-i \fIch\fR] [\-k \fIch\fR] [\-m \fImapping\fR] [\fIterminal\fR]
 .SH DESCRIPTION
 \&\fBTset\fR initializes terminals.
 \fBTset\fR first determines the type of terminal that you are using.
@@ -50,7 +50,7 @@ System-V-like UNIXes, \fIgetty\fR does this job by setting
 .PP
 4. The default terminal type, ``unknown''.
 .PP
-If the terminal type was not specified on the command-line, the -m
+If the terminal type was not specified on the command-line, the \fB\-m\fR
 option mappings are then applied (see below for more information).
 Then, if the terminal type begins with a question mark (``?''), the
 user is prompted for confirmation of the terminal type.  An empty
@@ -81,50 +81,50 @@ Also, the terminal will often not echo the command.
 .PP
 The options are as follows:
 .TP 5
--q
+.B \-q
 The terminal type is displayed to the standard output, and the terminal is
 not initialized in any way.  The option `-' by itself is equivalent but
 archaic.
-.TP 5
--e
+.TP
+.B \-e
 Set the erase character to \fIch\fR.
-.TP 5
--I
+.TP
+.B \-I
 Do not send the terminal or tab initialization strings to the terminal.
-.TP 5
--Q
+.TP
+.B \-Q
 Don't display any values for the erase, interrupt and line kill characters.
 .TP
-\fB-V\fR
+.B \-V
 reports the version of ncurses which was used in this program, and exits.
-.TP 5
--i
+.TP
+.B \-i
 Set the interrupt character to \fIch\fR.
-.TP 5
--k
+.TP
+.B \-k
 Set the line kill character to \fIch\fR.
-.TP 5
--m
+.TP
+.B \-m
 Specify a mapping from a port type to a terminal.
 See below for more information.
-.TP 5
--r
+.TP
+.B \-r
 Print the terminal type to the standard error output.
-.TP 5
--s
+.TP
+.B \-s
 Print the sequence of shell commands to initialize the environment variable
 \fBTERM\fR to the standard output.
 See the section below on setting the environment for details.
 .PP
-The arguments for the -e, -i, and -k
+The arguments for the \fB-e\fR, \fB-i\fR, and \fB-k\fR
 options may either be entered as actual characters or by using the `hat'
 notation, i.e. control-h may be specified as ``^H'' or ``^h''.
 .SH SETTING THE ENVIRONMENT
 It is often desirable to enter the terminal type and information about
 the terminal's capabilities into the shell's environment.
-This is done using the -s option.
+This is done using the \fB\-s\fR option.
 .PP
-When the -s option is specified, the commands to enter the information
+When the \fB\-s\fR option is specified, the commands to enter the information
 into the shell's environment are written to the standard output.  If
 the \fBSHELL\fR environmental variable ends in ``csh'', the commands
 are for \fBcsh\fR, otherwise, they are for \fBsh\fR.
@@ -132,7 +132,7 @@ Note, the \fBcsh\fR commands set and unset the shell variable
 \fBnoglob\fR, leaving it unset.  The following line in the \fB.login\fR
 or \fB.profile\fR files will initialize the environment correctly:
 
-    eval \`tset -s options ... \`
+    eval \`tset \-s options ... \`
 
 .SH TERMINAL TYPE MAPPING
 When the terminal is not hardwired into the system (or the current
@@ -142,13 +142,13 @@ something generic like \fBnetwork\fR, \fBdialup\fR, or \fBunknown\fR.
 When \fBtset\fR is used in a startup script it is often desirable to
 provide information about the type of terminal used on such ports.
 .PP
-The purpose of the -m option is to map
+The purpose of the \fB\-m\fR option is to map
 from some set of conditions to a terminal type, that is, to
 tell \fBtset\fR
 ``If I'm on this port at a particular speed, guess that I'm on that
 kind of terminal''.
 .PP
-The argument to the -m option consists of an optional port type, an
+The argument to the \fB\-m\fR option consists of an optional port type, an
 optional operator, an optional baud rate specification, an optional
 colon (``:'') character and a terminal type.  The port type is a
 string (delimited by either the operator or the colon character).  The
@@ -159,7 +159,7 @@ The baud rate is specified as a number and is compared with the speed
 of the standard error output (which should be the control terminal).
 The terminal type is a string.
 .PP
-If the terminal type is not specified on the command line, the -m
+If the terminal type is not specified on the command line, the \fB\-m\fR
 mappings are applied to the terminal type.  If the port type and baud
 rate match the mapping, the terminal type specified in the mapping
 replaces the current type.  If more than one mapping is specified, the
@@ -174,16 +174,16 @@ and the baud rate is greater than 9600 baud, a terminal type of
 .PP
 If no baud rate is specified, the terminal type will match any baud rate.
 If no port type is specified, the terminal type will match any port type.
-For example, \fB-m dialup:vt100 -m :?xterm\fR
+For example, \fB\-m dialup:vt100 \-m :?xterm\fR
 will cause any dialup port, regardless of baud rate, to match the terminal
 type vt100, and any non-dialup port type to match the terminal type ?xterm.
 Note, because of the leading question mark, the user will be
 queried on a default port as to whether they are actually using an xterm
 terminal.
 .PP
-No whitespace characters are permitted in the -m option argument.
+No whitespace characters are permitted in the \fB\-m\fR option argument.
 Also, to avoid problems with meta-characters, it is suggested that the
-entire -m option argument be placed within single quote characters,
+entire \fB\-m\fR option argument be placed within single quote characters,
 and that \fBcsh\fR users insert a backslash character (``\e'') before
 any exclamation marks (``!'').
 .SH HISTORY
@@ -197,30 +197,33 @@ can set \fBTERM\fR appropriately for each dial-up line; this obviates what was
 \fBtset\fR's most important use).  This implementation behaves like 4.4BSD
 tset, with a few exceptions specified here.
 .PP
-The -S option of BSD tset no longer works; it prints an error message to stderr
-and dies.  The -s option only sets \fBTERM\fR, not \fBTERMCAP\fP.  Both these
+The \fB\-S\fR option of BSD tset no longer works; it prints an error message to stderr
+and dies.  The \fB\-s\fR option only sets \fBTERM\fR, not \fBTERMCAP\fP.  Both these
 changes are because the \fBTERMCAP\fR variable is no longer supported under
-terminfo-based \fBncurses\fR, which makes \fBtset -S\fR useless (we made it die
+terminfo-based \fBncurses\fR, which makes \fBtset \-S\fR useless (we made it die
 noisily rather than silently induce lossage).
 .PP
 There was an undocumented 4.4BSD feature that invoking tset via a link named
 `TSET` (or via any other name beginning with an upper-case letter) set the
 terminal to use upper-case only.  This feature has been omitted.
 .PP
-The -A, -E, -h, -u and -v options were deleted from the \fBtset\fR
-utility in 4.4BSD. None of them were documented in 4.3BSD and all are
-of limited utility at best. The -a, -d, and -p options are similarly
+The \fB\-A\fR, \fB\-E\fR, \fB\-h\fR, \fB\-u\fR and \fB\-v\fR
+options were deleted from the \fBtset\fR
+utility in 4.4BSD.
+None of them were documented in 4.3BSD and all are
+of limited utility at best.
+The \fB\-a\fR, -\fB\d\fR, and -\fB\p\fR options are similarly
 not documented or useful, but were retained as they appear to be in
 widespread use.  It is strongly recommended that any usage of these
-three options be changed to use the -m option instead.  The
--n option remains, but has no effect.  The -adnp options are therefore
+three options be changed to use the \fB\-m\fR option instead.  The
+-n option remains, but has no effect.  The \fB\-adnp\fR options are therefore
 omitted from the usage summary above.
 .PP
-It is still permissible to specify the -e, -i, and -k options without
+It is still permissible to specify the \fB\-e\fR, \fB\-i\fR, and \fB\-k\fR options without
 arguments, although it is strongly recommended that such usage be fixed to
 explicitly specify the character.
 .PP
-As of 4.4BSD, executing \fBtset\fR as \fBreset\fR no longer implies the -Q
+As of 4.4BSD, executing \fBtset\fR as \fBreset\fR no longer implies the \fB\-Q\fR
 option.  Also, the interaction between the - option and the \fIterminal\fR
 argument in some historic implementations of \fBtset\fR has been removed.
 .SH ENVIRONMENT
@@ -230,7 +233,7 @@ environment variables.
 .TP 5
 /etc/ttys
 system port name to terminal type mapping database (BSD versions only).
-.TP 5
+.TP
 @TERMINFO@
 terminal capability database
 .SH SEE ALSO
index 62933f1a153dc8d7aa7952a911658076edd2a6d5..ce7c10b8d9575680b793d34dc1062743df0151af 100644 (file)
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright (c) 1998,2002 Free Software Foundation, Inc.                   *
+.\" Copyright (c) 1998-2002,2003 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            *
@@ -26,9 +26,9 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" Author: Thomas E. Dickey <dickey@clark.net> 1996
+.\" Author: Thomas E. Dickey 1996
 .\"
-.\" $Id: wresize.3x,v 1.7 2002/02/16 22:40:59 tom Exp $
+.\" $Id: wresize.3x,v 1.8 2003/10/25 20:41:08 tom Exp $
 .TH wresize 3X ""
 .SH NAME
 \fBwresize\fR - resize a curses window
index b5c7b68cbd46946f1cf2536557690d480c960668..28152290cc4a72aeb8bff370252061899dd54651 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.36 2002/01/20 01:49:17 tom Exp $
+# $Id: Makefile.in,v 1.41 2003/11/01 22:44:33 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,1999,2000,2001,2002 Free Software Foundation, Inc.      #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -45,6 +45,9 @@
 SHELL          = /bin/sh
 THIS           = Makefile
 
+x              = @EXEEXT@
+o              = .@OBJEXT@
+
 MODEL          = @DFT_LWR_MODEL@
 DESTDIR                = @DESTDIR@
 srcdir         = @srcdir@
@@ -55,6 +58,11 @@ libdir               = @libdir@
 includedir     = @includedir@
 
 LIBTOOL                = @LIBTOOL@
+LIBTOOL_CLEAN  = @LIB_CLEAN@
+LIBTOOL_COMPILE        = @LIB_COMPILE@
+LIBTOOL_LINK   = @LIB_LINK@
+LIBTOOL_INSTALL        = @LIB_INSTALL@
+LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
 
 INSTALL                = @INSTALL@
 INSTALL_LIB    = @INSTALL@ @INSTALL_LIB@
@@ -71,8 +79,7 @@ CC            = @CC@
 CPP            = @CPP@
 CFLAGS         = @CFLAGS@
 
-CPPFLAGS       = @CPPFLAGS@ \
-                 -DHAVE_CONFIG_H 
+CPPFLAGS       = -DHAVE_CONFIG_H @CPPFLAGS@
 
 CCFLAGS                = $(CPPFLAGS) $(CFLAGS)
 
@@ -84,7 +91,7 @@ CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
 
 CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
 
-LINK           = $(LIBTOOL) $(CC)
+LINK           = $(LIBTOOL_LINK) $(CC)
 LDFLAGS                = @LDFLAGS@ @LD_MODEL@ @LIBS@
 
 SHLIB_DIRS     = -L../lib
@@ -97,7 +104,7 @@ NCURSES_MINOR        = @NCURSES_MINOR@
 REL_VERSION    = @cf_cv_rel_version@
 ABI_VERSION    = @cf_cv_abi_version@
 
-RANLIB         = @RANLIB@
+RANLIB         = @LIB_PREP@
 
 IMPORT_LIB     = @IMPORT_LIB@
 SHARED_LIB     = @SHARED_LIB@
index 7867bc94502e8350540db687167150aef67cfeed..e3a7e52490ea37950b74914fc037564fab0d415e 100644 (file)
@@ -1,3 +1,5 @@
+-- $Id: READ.ME,v 1.8 2003/10/25 15:22:35 tom Exp $
+-------------------------------------------------------------------------------
 This is a clone of the menu library that is available with typical
 System V curses implementations (ETI).
 
@@ -10,6 +12,3 @@ For things that still need doing, see the TO-DO file in the top-level
 directory.
 
 Juergen Pfeifer
-
-Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
-
index d46636b077a2aca6c34a852a126f0ab8cf85fe0a..baa6190d8f840cb8b3e467c2fcfed444af329556 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc.                        *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
+/* $Id: eti.h,v 1.8 2003/10/25 15:24:29 tom Exp $ */
+
 #ifndef NCURSES_ETI_H_incl
 #define NCURSES_ETI_H_incl 1
 
index 34db8802d5187576c7073dbc0ef805dbbb1fd2bf..b36ccc15fb6eeac49956b4ccb3ea251ab981dc76 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_attribs.c,v 1.10 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_attribs.c,v 1.12 2003/11/08 20:54:20 tom Exp $")
 
 /* Macro to redraw menu if it is posted and changed */
 #define Refresh_Menu(menu) \
@@ -63,7 +62,7 @@ NCURSES_IMPEXP int NCURSES_API set_menu_ ## name (MENU * menu, chtype attr)\
    RETURN(E_OK);\
 }
 
-/* "Template" macro to generate a function to get a menus attribute */
+/* "Template" macro to generate a function to get a menu's attribute */
 #define GEN_MENU_ATTR_GET_FCT( name ) \
 NCURSES_IMPEXP chtype NCURSES_API menu_ ## name (const MENU * menu)\
 {\
@@ -75,7 +74,7 @@ NCURSES_IMPEXP chtype NCURSES_API menu_ ## name (const MENU * menu)\
 |   Function      :  int set_menu_fore(MENU *menu, chtype attr)
 |   
 |   Description   :  Set the attribute for selectable items. In single-
-|                    valued menus thiis is used to highlight the current
+|                    valued menus this is used to highlight the current
 |                    item ((i.e. where the cursor is), in multi-valued
 |                    menus this is used to highlight the selected items.
 |
index 0ab3b7a3aead70fd9e106f3b263ddc6118c73fa9..11011dc12388c6cd656f37cdc087119efbf126d6 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_cursor.c,v 1.15 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_cursor.c,v 1.16 2003/10/25 15:23:42 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu
index d86100d776df052ad805d10514cf47215112f020..215cb5fa5f8308af25d9b9ad35225469da19aa0d 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_driver.c,v 1.19 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_driver.c,v 1.20 2003/10/25 14:54:48 tom Exp $")
 
 /* Macros */
 
index 4f19f76c33d713cf9619810f00e29db97f5fd284..3785e650d9e0a3b4b81c7854fd0ab87d92e1ce36 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_format.c,v 1.11 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_format.c,v 1.12 2003/10/25 14:54:48 tom Exp $")
 
 #define minimum(a,b) ((a)<(b) ? (a): (b))
 
index b1f73f5c8d31c8802cd59fa6f86245f8c11b4f1f..542b484f705a603135736d0159988675adf7255e 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_global.c,v 1.14 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_global.c,v 1.16 2003/11/08 20:53:01 tom Exp $")
 
 static char mark[] = "-";
 
@@ -161,7 +160,7 @@ INLINE static void ResetConnectionInfo(MENU *menu, ITEM **items)
 |                    Decorate all the items with a number and a backward
 |                    pointer to the menu.
 |
-|   Return Values :  TRUE       - successfull connection
+|   Return Values :  TRUE       - successful connection
 |                    FALSE      - connection failed
 +--------------------------------------------------------------------------*/
 NCURSES_EXPORT(bool)
@@ -265,9 +264,9 @@ _nc_Calculate_Item_Length_and_Width (MENU * menu)
 |   Facility      :  libnmenu  
 |   Function      :  void _nc_Link_Item(MENU *menu)
 |   
-|   Description   :  Statically calculate for every item its four neighbours.
+|   Description   :  Statically calculate for every item its four neighbors.
 |                    This depends on the orientation of the menu. This
-|                    static aproach simplifies navigation in the menu a lot.
+|                    static approach simplifies navigation in the menu a lot.
 |
 |   Return Values :  -
 +--------------------------------------------------------------------------*/
index 62f729788ea0e4d8c0d5eca23a201b1325b19d84..51644a100197e4d92788c47a46da816a18d9c827 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_hook.c,v 1.10 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_hook.c,v 1.11 2003/10/25 14:54:48 tom Exp $")
 
 /* "Template" macro to generate function to set application specific hook */
 #define GEN_HOOK_SET_FUNCTION( typ, name ) \
index 92215f3c5366335238e6525596f6910bb5b444aa..d4d6bb8468028ad33564d62ef22de702d4dc4c2a 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_item_cur.c,v 1.13 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_item_cur.c,v 1.14 2003/10/25 15:23:42 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index 0a74c6c635c51bd39405e7e4fc1b091b6abc144f..65eb59534c3b84463dcc8960b95153d17a1cb6b6 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_item_nam.c,v 1.11 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_item_nam.c,v 1.12 2003/10/25 14:54:48 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index 50dde29222573b6c3f950b3a93ba0e9777693a42..788f53eebd784329ca86de7224cc98ca4e21e45f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -39,7 +38,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_item_new.c,v 1.13 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_item_new.c,v 1.14 2003/10/25 15:23:42 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index c9aed839f200f2325c5bb40558f7706564bdbe0f..5dcc06b65b38236f71648fd2323747993da065c2 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_item_opt.c,v 1.12 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_item_opt.c,v 1.14 2003/11/08 20:50:19 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -96,7 +95,7 @@ NCURSES_EXPORT(int)
 item_opts_off (ITEM *item, Item_Options  opts)
 { 
   ITEM *citem = item; /* use a copy because set_item_opts must detect
-                         NULL item itself to adjust its behaviour */
+                         NULL item itself to adjust its behavior */
 
   if (opts & ~ALL_ITEM_OPTS)
     RETURN(E_BAD_ARGUMENT);
@@ -121,7 +120,7 @@ NCURSES_EXPORT(int)
 item_opts_on (ITEM *item, Item_Options opts)
 {
   ITEM *citem = item; /* use a copy because set_item_opts must detect
-                         NULL item itself to adjust its behaviour */
+                         NULL item itself to adjust its behavior */
   
   opts &= ALL_ITEM_OPTS;
   if (opts & ~ALL_ITEM_OPTS)
index 04eab6419fd592d2ffc8ec7000249d5b3be5d0be..0a0fb4815a203c029f61c6d7df37ed84d8f46ae2 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_item_top.c,v 1.6 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_item_top.c,v 1.8 2003/11/08 20:51:53 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
 |   Function      :  int set_top_row(MENU *menu, int row)
 |   
-|   Description   :  Makes the speified row the top row in the menu
+|   Description   :  Makes the specified row the top row in the menu
 |
 |   Return Values :  E_OK             - success
 |                    E_BAD_ARGUMENT   - not a menu pointer or invalid row
index 4f52ea1aca1829701decff535b8bb748db5c730d..c05e1d21765e315af6c8c033668510c6b8f58036 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_item_use.c,v 1.12 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_item_use.c,v 1.13 2003/10/25 14:54:48 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index aa3e43ac8d1a0c22d50666b16094588254bedd89..89bd8fb309751efa8c06cae631fd3af74d1777a7 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_item_val.c,v 1.10 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_item_val.c,v 1.12 2003/11/08 20:51:29 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
 |   Function      :  int set_item_value(ITEM *item, int value)
 |   
-|   Description   :  Programmatically set the items selection value. This is
+|   Description   :  Programmatically set the item's selection value. This is
 |                    only allowed if the item is selectable at all and if
 |                    it is not connected to a single-valued menu.
 |                    If the item is connected to a posted menu, the menu
index 5ae40ae56364ccf2fc7de90073cbb4210e8908f6..75bb60ed6346949482b34e06f7ab62e2d0ad7ef3 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_item_vis.c,v 1.12 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_item_vis.c,v 1.13 2003/10/25 14:54:48 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index 54459e75ad9d9bc8b184466e301ea2ce0e55a96f..d66a51890be23a59df12c58d0bd2c5102fd2e116 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_items.c,v 1.10 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_items.c,v 1.12 2003/11/08 20:50:58 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -79,7 +78,7 @@ set_menu_items (MENU * menu, ITEM ** items)
 |   Facility      :  libnmenu  
 |   Function      :  ITEM **menu_items(const MENU *menu)
 |   
-|   Description   :  Returns a pointer to the item pointer arry of the menu
+|   Description   :  Returns a pointer to the item pointer array of the menu
 |
 |   Return Values :  NULL on error
 +--------------------------------------------------------------------------*/
index b5143e248d4a74f84b3082ad9075783cd51f8eba..10fd052fafe512ee2b3e4eef9f2709f246b827ba 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_new.c,v 1.12 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_new.c,v 1.13 2003/10/25 14:54:48 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index 298d70849a74d61df2de047ad27e30f4b1876e0b..70fc7d2b633ef5290aa2f0fbcb8d5560b6fd63b9 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_opts.c,v 1.14 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_opts.c,v 1.16 2003/11/08 20:50:19 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu
@@ -115,7 +114,7 @@ NCURSES_EXPORT(int)
 menu_opts_off (MENU *menu, Menu_Options  opts)
 {
   MENU *cmenu = menu; /* use a copy because set_menu_opts must detect
-                         NULL menu itself to adjust its behaviour */
+                         NULL menu itself to adjust its behavior */
 
   opts &= ALL_MENU_OPTS;
   if (opts & ~ALL_MENU_OPTS)
@@ -145,7 +144,7 @@ NCURSES_EXPORT(int)
 menu_opts_on (MENU * menu, Menu_Options opts)
 {
   MENU *cmenu = menu; /* use a copy because set_menu_opts must detect
-                         NULL menu itself to adjust its behaviour */
+                         NULL menu itself to adjust its behavior */
 
   opts &= ALL_MENU_OPTS;
   if (opts & ~ALL_MENU_OPTS)
index 8a3382eab19f411bee24439cec4be13952ded50a..560036e2ccd69ac163de658f2f7753938a439dc6 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_pad.c,v 1.6 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_pad.c,v 1.7 2003/10/25 14:54:48 tom Exp $")
 
 /* Macro to redraw menu if it is posted and changed */
 #define Refresh_Menu(menu) \
index 34870012e0c7db83199e5b0c7ea1103d6923228f..3d50cf42c1f9b5ca5507ef00a70b85e8bdbfc838 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_pattern.c,v 1.7 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_pattern.c,v 1.9 2003/12/06 17:22:10 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -54,7 +53,7 @@ MODULE_ID("$Id: m_pattern.c,v 1.7 2002/07/06 15:22:16 juergen Exp $")
 NCURSES_EXPORT(char *)
 menu_pattern (const MENU * menu)
 {
-  return (menu ? (menu->pattern ? menu->pattern : "") : (char *)0);
+  return (char *)(menu ? (menu->pattern ? menu->pattern : "") : 0);
 }
 
 /*---------------------------------------------------------------------------
index 8751712b3ccff8a955d415e5d90d7cba1fd1686c..759b328a5ced88af6725fae0ed7eda36aa72de79 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_post.c,v 1.18 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_post.c,v 1.19 2003/10/25 14:54:48 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index 758721ba89e232da697fdc36c4d483fb455c955f..2f1a4a12b3c453de78a7e5bf25a4b85047bb3aee 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_req_name.c,v 1.14 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_req_name.c,v 1.15 2003/10/25 14:54:48 tom Exp $")
 
 static const char *request_names[ MAX_MENU_COMMAND - MIN_MENU_COMMAND + 1 ] = {
   "LEFT_ITEM"    ,
index a6daf027656b10a7624f3c6ca971701eda28f339..04110defa02476ea08841689fc0c3c735b7e3abd 100644 (file)
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_scale.c,v 1.6 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_scale.c,v 1.7 2003/10/25 14:54:48 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index 25e54e0da2a631e369785d73b726c58731d33e9a..69474773109695e9f876ac793ca6d8b672e18d4f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_spacing.c,v 1.13 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_spacing.c,v 1.15 2003/11/08 20:49:06 tom Exp $")
 
 #define MAX_SPC_DESC ((TABSIZE) ? (TABSIZE) : 8)
 #define MAX_SPC_COLS ((TABSIZE) ? (TABSIZE) : 8)
@@ -48,7 +47,7 @@ MODULE_ID("$Id: m_spacing.c,v 1.13 2002/07/06 15:22:16 juergen Exp $")
 |   Facility      :  libnmenu
 |   Function      :  int set_menu_spacing(MENU *menu,int desc, int r, int c);
 |
-|   Description   :  Set the spacing between entried
+|   Description   :  Set the spacing between entries
 |
 |   Return Values :  E_OK                 - on success
 +--------------------------------------------------------------------------*/
index 76cb0021f51dc0ced9e186eb62ee136ba8d9abb6..8122e0029fcf9523b21d1030a9b9a981fbf6bd51 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_sub.c,v 1.6 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_sub.c,v 1.7 2003/10/25 15:23:42 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index 908758b1d385151b4800438c60591b80e6da640b..86f81d22b722f20c9f5e15b2aa2a63f63365a9c4 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_userptr.c,v 1.12 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_userptr.c,v 1.13 2003/10/25 15:23:42 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index 5fe760c8a4da40066e2297db3ffd5abde8c46842..7e0e212c5d88805f7abe682b8289651d5e1732c8 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
 /***************************************************************************
@@ -38,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_win.c,v 1.11 2002/07/06 15:22:16 juergen Exp $")
+MODULE_ID("$Id: m_win.c,v 1.12 2003/10/25 15:23:42 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
index d827072248f9ad75a5249d2654a2b160a7aecd37..f0b1f60b22598dceb3b6cb5663c8c5a86fad0f18 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
+/* $Id: menu.h,v 1.18 2003/11/08 20:48:24 tom Exp $ */
+
 #ifndef ETI_MENU
 #define ETI_MENU
 
@@ -77,7 +78,7 @@ typedef struct tagITEM
   short          x;
   bool           value;       /* Selection value                           */
                              
-  struct tagITEM *left;       /* neighbour items                           */
+  struct tagITEM *left;       /* neighbor items                            */
   struct tagITEM *right;
   struct tagITEM *up;
   struct tagITEM *down;
index b249e435503dde52c1d1a7da4eed14c0df3d4d63..139dd6185cdf36a3604aab9d415ce8803eec5c8a 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
+/* $Id: menu.priv.h,v 1.16 2003/10/25 15:24:29 tom Exp $ */
+
 /***************************************************************************
 * Module menu.priv.h                                                       *
 * Top level private header file for all libnmenu modules                   *
index 40ed1e29c4a616bf5919f2c52850b426823911f5..b9073c816e84378a9b38893f7533b6ae055eb215 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
 
 /****************************************************************************
  *   Author:  Juergen Pfeifer, 1995,1997                                    *
- *   Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en             *
  ****************************************************************************/
 
+/* $Id: mf_common.h,v 0.19 2003/10/25 15:24:29 tom Exp $ */
+
 /* Common internal header for menu and form library */
 
 #ifndef MF_COMMON_H_incl
diff --git a/misc/csort b/misc/csort
new file mode 100755 (executable)
index 0000000..42faaf3
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/sh
+# $Id: csort,v 1.2 2002/10/19 21:42:09 tom Exp $
+##############################################################################
+# Copyright (c) 2002 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.                                                             #
+##############################################################################
+#
+# override anything that might cause 'sort' to do the wrong thing...
+LANG=C;                export LANG
+LANGUAGE=C;    export LANGUAGE
+LC_ALL=C;      export LC_ALL
+LC_CTYPE=C;    export LC_CTYPE
+sort $*
index 96625116168b18ed3329f7c5d71e6833d766d7c4..2db4d18a643e5d727c6ab428e314e87683f5f172 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: emx.src,v 1.7 2000/08/27 02:16:08 jmcoopr Exp $
+# $Id: emx.src,v 1.8 2003/01/26 01:17:55 tom Exp $
 # This is a reformatted copy of the terminfo source for OS/2 EMX from
 # Juan Jose Garcia Ripoll <worm@arrakis.es>.
 # http://www.arrakis.es/~worm/
@@ -85,6 +85,7 @@ klone+sgr|attribute control for ansi.sys displays,
        smpch=\E[11m,
        smso=\E[7m,
        smul=\E[4m,
+       use=klone+acs,
 
 # Highlight controls corresponding to the ANSI.SYS standard.  *All*
 # console drivers for Intel boxes obey these.  Does not assume \E[11m will
@@ -103,6 +104,7 @@ klone+sgr-dumb|attribute control for ansi.sys displays (no ESC [ 11 m),
        smacs=\E[12m,
        smso=\E[7m,
        smul=\E[4m,
+       use=klone+acs,
 
 # ANSI.SYS color control.
 # The DOS 5 manual asserts that these sequences meet the ISO 6429 standard.
@@ -113,8 +115,17 @@ klone+color|color control for ansi.sys and ISO6429-compatible displays,
        op=\E[37;40m,
        setab=\E[4%p1%dm,
        setaf=\E[3%p1%dm,
-       setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
-       setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
+
+# This is better than klone+color, it doesn't assume white-on-black as the
+# default color pair,  but many `ANSI' terminals don't grok the <op> cap.
+ecma+color|color control for ECMA-48-compatible terminals,
+       AX,
+       colors#8,
+       ncv#3,
+       pairs#64,
+       op=\E[39;49m,
+       setab=\E[4%p1%dm,
+       setaf=\E[3%p1%dm,
 
 #### ANSI/ECMA-48 terminals and terminal emulators
 #
@@ -209,7 +220,9 @@ ansi.sys|ANSI.SYS 3.1 and later versions,
 # no_color_video to inform the application that standout(1), underline(2)
 # reverse(4) and invisible(64) don't work with color.
 emx-base|DOS special keys,
+       bce,
        bw,
+       it#8,
        ncv#71,
        bel=^G,
        ka1=\0G,
@@ -293,7 +306,7 @@ emx-base|DOS special keys,
 #      me      <->     sgr0    turn off all atributes
 #
 # On my terminal, \E[4m looks dim.
-ansi|ANSI.SYS color,
+ansi-emx|ANSI.SYS color,
        blink=\E[5m,
        bold=\E[1m,
        kmous=\E[M,
@@ -319,17 +332,17 @@ window|ANSI.SYS window,
        smul=\E[1;31;47m,
        use=emx-base,
 os2|OS/2-emx ANSI.SYS,
-       cuu=\E[%p1%dA,
-       cuu1=\E[A,
+       cub=\E[%p1%dD,
+       cub1=\E[D,
        cud=\E[%p1%dB,
        cud1=\E[B,
        cuf=\E[%p1%dC,
        cuf1=\E[C,
-       cub=\E[%p1%dD,
-       cub1=\E[D,
-       sc=\E[s,
+       cuu=\E[%p1%dA,
+       cuu1=\E[A,
        rc=\E[u,
-       use=ansi,
+       sc=\E[s,
+       use=ansi-emx,
        use=mono,
 mono|ANSI.SYS mono,
        blink=\E[5m,
@@ -353,7 +366,7 @@ mono2|ANSI.SYS mono2,
        smul=\E[1;31;40m,
        use=mono,
 # nice colors for Emacs (white on blue, mode line white on cyan)
-ansi-color-2|ANSI.SYS color 2,
+ansi-color-2-emx|ANSI.SYS color 2,
        rmcup=\E[0m,
        rmso=\E[0;37;44m,
        rmul=\E[0m,
@@ -361,9 +374,9 @@ ansi-color-2|ANSI.SYS color 2,
        smcup=\E[0;37;44m,
        smso=\E[1;37;46m,
        smul=\E[1;31;40m,
-       use=ansi,
+       use=ansi-emx,
 # nice colors for Emacs (white on black, mode line black on cyan)
-ansi-color-3|ANSI.SYS color 3,
+ansi-color-3-emx|ANSI.SYS color 3,
        rmcup=\E[0m,
        rmso=\E[0m,
        rmul=\E[0m,
@@ -371,7 +384,7 @@ ansi-color-3|ANSI.SYS color 3,
        smcup=\E[0m,
        smso=\E[30;46m,
        smul=\E[1;31;40m,
-       use=ansi,
+       use=ansi-emx,
 
 #### X terminal emulators
 #
@@ -437,7 +450,7 @@ x10term|vs100-x10|xterm terminal emulator (X10 window system),
 # xterm's internal mouse-tracking facility; ncurses will interpret the
 # following three bytes of mouse status information.
 # From: Eric S. Raymond <esr@snark.thyrsus.com> 14 Dec 1995
-xterm|vs100|xterm terminal emulator (X11R6 Window System),
+xterm-r6|xterm terminal emulator (X11R6 Window System),
        am,
        km,
        mir,
@@ -488,7 +501,15 @@ xterm|vs100|xterm terminal emulator (X11R6 Window System),
        kf10=\E[21~,
        kf11=\E[23~,
        kf12=\E[24~,
+       kf13=\E[25~,
+       kf14=\E[26~,
+       kf15=\E[28~,
+       kf16=\E[29~,
+       kf17=\E[31~,
+       kf18=\E[32~,
+       kf19=\E[33~,
        kf2=\E[12~,
+       kf20=\E[34~,
        kf3=\E[13~,
        kf4=\E[14~,
        kf5=\E[15~,
@@ -496,6 +517,7 @@ xterm|vs100|xterm terminal emulator (X11R6 Window System),
        kf7=\E[18~,
        kf8=\E[19~,
        kf9=\E[20~,
+       kfnd=\E[1~,
        khome=\EO\0,
        kich1=\E[2~,
        kmous=\E[M,
@@ -545,6 +567,7 @@ kterm|kterm kanji terminal emulator (X window system),
        sc=\E7,
        tsl=\E[?E\E[?%i%dT,
        use=xterm,
+       use=ecma+color,
 
 # See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
 xterm-nic|xterm with ich/ich1 suppressed for non-curses programs,
@@ -758,7 +781,6 @@ emu|emu native mode,
        cup=\EE%p1%d;%p2%d;,
        cuu=\Ep-%p1%d;,
        cuu1=\EA,
-       cvvis=\Ea,
        dch=\EI%p1%d;,
        dch1=\EI1;,
        dl=\ER%p1%d;,
@@ -816,10 +838,21 @@ emu|emu native mode,
        rmso=\ES,
        rmul=\ES,
        rs2=\ES\Es0;\Er0;,
-       setab=\Es%i%p1%d; setaf=\Er%i%p1%d;,
+       setab=\Es%i%p1%d;,
+       setaf=\Er%i%p1%d;,
        sgr0=\ES,
        smacs=\0,
        smir=\EY,
        smso=\ES\ET,
        smul=\ES\EV,
        tbc=\Ej,
+###############################################################################
+# Aliases which conflict with terminfo.src
+ansi|ANSI.SYS color,
+       use=ansi-emx,
+ansi-color-2|ANSI.SYS color 2,
+       use=ansi-color-2-emx,
+ansi-color-3|ANSI.SYS color 3,
+       use=ansi-color-3-emx,
+xterm|vs100|xterm terminal emulator (X11R6 Window System),
+       use=xterm-r6,
index 295ae0780d725b1b2b440924577f95b57e5e757b..3b208b445a4829fcd2bd409c3d05063e6d4e34fd 100644 (file)
@@ -1,6 +1,6 @@
 #!@SHELL@
 ##############################################################################
-# Copyright (c) 1998,2000 Free Software Foundation, Inc.                     #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -29,7 +29,7 @@
 #
 # Author: Thomas E. Dickey 1996,2000
 #
-# $Id: run_tic.in,v 1.11 2001/10/14 00:44:33 tom Exp $
+# $Id: run_tic.in,v 1.15 2003/09/06 22:31:44 Dan.Kegel Exp $
 # This script is used to install terminfo.src using tic.  We use a script
 # because the path checking is too awkward to do in a makefile.
 #
@@ -62,10 +62,14 @@ test -z "${DESTDIR}" && DESTDIR=
 # on the host's copy of tic to compile the terminfo database.
 if test "$THAT_CC" = "$THIS_CC" ; then
 case "$PATH" in
-:*) PATH=../progs:${DESTDIR}$bindir$PATH ;;
-*) PATH=../progs:${DESTDIR}$bindir:$PATH ;;
+:*) PATH=../progs:../lib:${DESTDIR}$bindir$PATH ;;
+*) PATH=../progs:../lib:${DESTDIR}$bindir:$PATH ;;
 esac
 export PATH
+SHLIB="sh $srcdir/shlib"
+else
+# Cross-compiling, so don't set PATH or run shlib.
+SHLIB=
 fi
 
 #
@@ -81,7 +85,7 @@ TERMINFO=${DESTDIR}$ticdir ; export TERMINFO
 umask 022
 
 # Construct the name of the old (obsolete) pathname, e.g., /usr/lib/terminfo.
-TICDIR=`echo $TERMINFO | sed -e 's@/share/@/lib/@'`
+TICDIR=`echo $TERMINFO | sed -e 's%/share/%/lib/%'`
 
 # Remove the old terminfo stuff; we don't care if it existed before, and it
 # would generate a lot of confusing error messages if we tried to overwrite it.
@@ -91,11 +95,11 @@ TICDIR=`echo $TERMINFO | sed -e 's@/share/@/lib/@'`
 
 # If we're not installing into /usr/share/, we'll have to adjust the location
 # of the tabset files in terminfo.src (which are in a parallel directory).
-TABSET=`echo $ticdir | sed -e 's@/terminfo$@/tabset@'`
+TABSET=`echo $ticdir | sed -e 's%/terminfo$%/tabset%'`
 if test "x$TABSET" != "x/usr/share/tabset" ; then
        echo '** adjusting tabset paths'
        TMP=${TMPDIR-/tmp}/$$
-       sed -e s:/usr/share/tabset:$TABSET:g $source >$TMP
+       sed -e s%/usr/share/tabset%$TABSET%g $source >$TMP
        trap "rm -f $TMP" 0 1 2 5 15
        source=$TMP
 fi
@@ -111,7 +115,7 @@ Running tic to install $TERMINFO ...
        problems for older ncurses applications.
 
 EOF
-if ( $srcdir/shlib tic$suffix -s -o $TERMINFO $source )
+if ( $SHLIB tic$suffix -s -o $TERMINFO $source )
 then
        echo '** built new '$TERMINFO
 else
@@ -140,13 +144,15 @@ if test "$TICDIR" != "$TERMINFO" ; then
                cd ${DESTDIR}$prefix
                # Construct a symbolic link that only assumes $ticdir has the
                # same $prefix as the other installed directories.
-               RELATIVE=`echo $ticdir|sed -e 's:^'$prefix'/::'`
+               RELATIVE=`echo $ticdir|sed -e 's%^'$prefix'/%%'`
                if test "$RELATIVE" != "$ticdir" ; then
-                       RELATIVE=../`echo $ticdir|sed -e 's:^'$prefix'/::' -e 's:^/::'`
+                       RELATIVE=../`echo $ticdir|sed -e 's%^'$prefix'/%%' -e 's%^/%%'`
                fi
                if ( @LN_S@ $RELATIVE $TICDIR )
                then
-                       echo '** linked '$TICDIR' for compatibility'
+                       echo '** sym-linked '$TICDIR' for compatibility'
+               else
+                       echo '** could not sym-link '$TICDIR' for compatibility'
                fi
        fi
 fi
index 6817a0d70eafee0f0249bd878aa4a6081a1c61ef..d9d250ac5a9c54ca0949d20f0cf420234b5fbfe3 100755 (executable)
@@ -29,7 +29,7 @@
 #
 # Author: Thomas E. Dickey <dickey@clark.net> 1996
 #
-# $Id: shlib,v 1.6 2000/05/20 23:01:17 tom Exp $
+# $Id: shlib,v 1.7 2003/07/19 22:58:14 tom Exp $
 # Use this script as a wrapper when running executables linked to shared
 # libraries on systems that use the $LD_LIBRARY_PATH variable and don't embed
 # the soname's path within the linked executable (such as IRIX), e.g,
@@ -84,4 +84,11 @@ if test -n "$q" ; then
        fi
        export LD_LIBRARY_PATH
 fi
+
+# cygwin doesn't use LD_LIBRARY_PATH, but does use PATH
+if test -n "$PATHEXT" ; then
+       PATH=$LD_LIBRARY_PATH:$PATH;
+       export PATH
+fi
+
 eval "$*"
index 03add0e1252bad4125432819f9eb42b5d0c9f2f5..1dc489964a3c0f9b0dd554b66114da80a003e305 100644 (file)
@@ -4,13 +4,15 @@
 # Report bugs and new terminal descriptions to
 #      bug-ncurses@gnu.org
 #
+#      $Revision: 1.227 $
+#      $Date: 2004/01/18 01:37:18 $
+#
 # The original header is preserved below for reference.  It is noted that there
 # is a newer version which differs in some cosmetic details; we have decided
 # to not change the header unless there is also a change in content.
 #
 #------------------------------------------------------------------------------
 #      Version 10.2.1
-#      $Date: 2002/10/05 18:40:53 $
 #      terminfo syntax
 #
 #      Eric S. Raymond         (current maintainer)
@@ -562,7 +564,7 @@ ansi-generic|generic ansi standard terminal,
 #
 # This completely describes the sequences specified in the DOS 2.1 ANSI.SYS
 # documentation (except for the keyboard key reassignment feature, which
-# doen't fit the <pfkey> model well).  The klone+acs sequences were valid
+# doesn't fit the <pfkey> model well).  The klone+acs sequences were valid
 # though undocumented.  The <pfkey> capability is untested but should work for
 # keys F1-F10 (%p1 values outside this range will yield unpredictable results).
 # From: Eric S. Raymond <esr@snark.thyrsus.com> Nov 7 1995
@@ -756,6 +758,14 @@ linux-lat|linux with latin1 or latin2 alternate character set,
        acsc=+\020\,\021-\030.^Y0\333`\004a\013f\370g\361h\260i\316j\211k\214l\206m\203n\305o~p\304q\212r\304s_t\207u\215v\301w\302x\205y\363z\362{\343|\330}\234~\376, 
        use=linux, 
 
+# This uses graphics from VT codeset instead of from cp437.
+# reason: cp437 (aka "straight to font") is not functional under luit.
+# from: Andrey V Lukyanov <land@long.yar.ru>.
+linux-vt|linux console using VT codes for graphics, 
+       acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~, 
+       rmacs=\E(K, rmpch@, sgr@, sgr0=\E[0m\E(K\017, smacs=\E(0, 
+       smpch@, use=linux, 
+
 #### Mach
 #
 
@@ -1468,7 +1478,9 @@ ofcons,
        kf1=\2330P, kf10=\2330M, kf2=\2330Q, kf3=\2330W, 
        kf4=\2330x, kf5=\2330t, kf6=\2330u, kf7=\2330q, kf8=\2330r, 
        kf9=\2330p, knp=\233/, kpp=\233?, nel=^M^J, rev=\2337m, 
-       rmso=\2330m, rmul=\2330m, sgr0=\2330m, 
+       rmso=\2330m, rmul=\2330m, 
+       sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, 
+       sgr0=\2330m, 
 
 # NetBSD "wscons" emulator in vt220 mode
 # These are micro-minimal and probably need to be redone for real
@@ -1484,7 +1496,7 @@ wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta,
 # DECstation/pmax.
 rcons|BSD rasterconsole, 
        use=sun-il, 
-# Color version of above. Color currenly only provided by NetBSD.
+# Color version of above. Color currently only provided by NetBSD.
 rcons-color|BSD rasterconsole with ANSI color, 
        bce, 
        colors#8, pairs#64, 
@@ -1809,6 +1821,44 @@ vt52|dec vt52,
 #  |        $Op        |  $On    |         |
 #  |___kc1_______K4____|_kc3__K5_|_kent_@8_|
 #
+# Note however, that the arrangement of the 5-key ka1-kc3 do not follow the
+# terminfo guidelines.  That is a compromise used to assign the remaining
+# keys on the keypad to kf5-kf0, used on older systems with legacy termcap
+# support:
+vt100+keypad|dec vt100 numeric keypad no fkeys, 
+       ka1=\EOq, ka3=\EOs, kb2=\EOr, kc1=\EOp, kc3=\EOn, 
+vt100+pfkeys|dec vt100 numeric keypad, 
+       kent=\EOM, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, 
+       use=vt100+keypad, 
+vt100+fnkeys|dec vt100 numeric keypad, 
+       kf0=\EOy, kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, 
+       kf9=\EOw, use=vt100+pfkeys, 
+#
+# A better adaptation to modern keyboards such as the PC's, which have a dozen
+# function keys and the keypad 2,4,6,8 keys are labeled with arrows keys, is to
+# use the 5-key arrangement to model the arrow keys as suggested in the
+# terminfo guidelines:
+#   _______________________________________
+#  |   PF1   |   PF2   |   PF3   |   PF4   |
+#  |   $OP   |   $OQ   |   $OR   |   $OS   |
+#  |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
+#  |    7         8         9         -    |
+#  |   $Ow   |   $Ox   |   $Oy   |   $Om   |
+#  |_ka1__K1_|_________|_ka3__K3_|_________|
+#  |    4    |    5    |    6    |    ,    |
+#  |   $Ot   |   $Ou   |   $Ov   |   $Ol   |
+#  |_________|_kb2__K2_|_________|_________|
+#  |    1    |    2    |    3    |         |
+#  |   $Oq   |   $Or   |   $Os   |  enter  |
+#  |_kc1__K4_|_________|_kc3__K5_|  $OM    |
+#  |         0         |   .     |         |
+#  |        $Op        |  $On    |         |
+#  |___________________|_________|_kent_@8_|
+#
+vt220+keypad|dec vt220 numeric keypad, 
+       ka1=\EOw, ka3=\EOy, kb2=\EOu, kc1=\EOq, kc3=\EOs, kent=\EOM, 
+       kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, 
+#
 # And here, for those of you with orphaned VT100s lacking documentation, is
 # a description of the soft switches invoked when you do `Set Up'.
 # 
@@ -1853,17 +1903,15 @@ vt100|vt100-am|dec vt100 (w/advanced video),
        cuf=\E[%p1%dC, cuf1=\E[C$<2>, 
        cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, 
        cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, 
-       enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, ka1=\EOq, 
-       ka3=\EOs, kb2=\EOr, kbs=^H, kc1=\EOp, kc3=\EOn, kcub1=\EOD, 
-       kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, kf0=\EOy, 
-       kf1=\EOP, kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, 
-       kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, rc=\E8, 
+       enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, 
+       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8, 
        rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, 
        rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, 
        rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, 
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, 
        sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, 
        smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, 
+       use=vt100+fnkeys, 
 vt100nam|vt100-nam|vt100 no automargins, 
        am@, xenl@, use=vt100-am, 
 vt100-vb|dec vt100 (w/advanced video) & no beep, 
@@ -2132,22 +2180,21 @@ vt320|vt300|dec vt320 7 bit terminal,
        home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, 
        il1=\E[L, ind=\ED, 
        is2=\E>\E[?3l\E[?4l\E[5?l\E[?7h\E[?8h\E[1;24r\E[24;1H, 
-       ka1=\EOw, ka3=\EOy, kb2=\EOu, kbs=\177, kc1=\EOq, kc3=\EOs, 
-       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
-       kdch1=\E[3~, kel=\E[4~, kent=\EOM, kf1=\EOP, kf10=\E[21~, 
-       kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, 
-       kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, 
-       kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, 
-       kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, 
-       khome=\E[1~, kich1=\E[2~, knp=\E[6~, knxt=^I, kpp=\E[5~, 
-       kprv=\E[Z, kslt=\E[4~, mc0=\E[i, mc4=\E[?4i, mc5=\E[?5i, 
-       nel=\EE, rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt300, 
-       ri=\EM, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l, 
-       rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, 
+       kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
+       kdch1=\E[3~, kel=\E[4~, kf10=\E[21~, kf11=\E[23~, 
+       kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, 
+       kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, 
+       kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, 
+       kf9=\E[20~, khome=\E[1~, kich1=\E[2~, knp=\E[6~, knxt=^I, 
+       kpp=\E[5~, kprv=\E[Z, kslt=\E[4~, mc0=\E[i, mc4=\E[?4i, 
+       mc5=\E[?5i, nel=\EE, rc=\E8, rev=\E[7m, 
+       rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, 
+       rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, 
+       rmul=\E[m, 
        rs2=\E>\E[?3l\E[?4l\E[5?l\E[?7h\E[?8h\E[1;24r\E[24;1H, 
        sc=\E7, sgr0=\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h, 
        smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, 
-       tsl=\E[1$}\E[H\E[K, 
+       tsl=\E[1$}\E[H\E[K, use=vt220+keypad, 
 vt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy, 
        am@, 
        is2=\E>\E[?3l\E[?4l\E[5?l\E[?7l\E[?8h\E[1;24r\E[24;1H, 
@@ -2579,11 +2626,53 @@ ms-vt100|MS telnet imitating dec vt100,
 # a) This version has no function keys or numeric keypad.  Unlike the older
 #    version, the numeric keypad is entirely ignored.
 # b) The program sets $TERM to "ansi", which of course is inaccurate.
-ms-vt100-color|windows 2000 ansi (sic), 
+ms-vt100-color|vtnt|windows 2000 ansi (sic), 
        bce, 
        dch=\E[%p1%dP, ich=\E[%p1%d@, use=ecma+color, 
        use=ms-vt100, 
 
+# Based on comments from Federico Bianchi:
+#
+#      vt100+ is basically a VT102-noSGR with ANSI.SYS colors and a different
+#      scheme for PF keys.
+#
+# and PuTTY wishlist:
+#
+#      The modifiers are represented as the codes listed above, prefixed to
+#      the normal sequences.  If the modifier is pressed alone, its sequence
+#      is transmitted twice in succession.  If multiple modifiers apply,
+#      they're transmitted in the order shift, control, alt.
+#
+#      Shift   \E^S
+#      Alt     \E^A,
+#      Ctrl    \E^C,
+ms-vt100+|vt100+|windows XP vt100+ (sic), 
+       kdch1=\E-, kend=\Ek, kf1=\E1, kf10=\E0, kf11=\E!, kf12=\E@, 
+       kf13=\E\023\E1, kf14=\E\023\E2, kf15=\E\023\E3, 
+       kf16=\E\023\E4, kf17=\E\023\E5, kf18=\E\023\E6, 
+       kf19=\E\023\E7, kf2=\E2, kf20=\E\023\E8, kf21=\E\023\E9, 
+       kf22=\E\023\E0, kf23=\E\023\E!, kf24=\E\023\E@, 
+       kf25=\E\003\E1, kf26=\E\003\E2, kf27=\E\003\E3, 
+       kf28=\E\003\E4, kf29=\E\003\E5, kf3=\E3, kf30=\E\003\E6, 
+       kf31=\E\003\E7, kf32=\E\003\E8, kf33=\E\003\E9, 
+       kf34=\E\003\E0, kf35=\E\003\E!, kf36=\E\003\E@, 
+       kf37=\E\001\E1, kf38=\E\001\E2, kf39=\E\001\E3, kf4=\E4, 
+       kf40=\E\001\E4, kf41=\E\001\E5, kf42=\E\001\E6, 
+       kf43=\E\001\E7, kf44=\E\001\E8, kf45=\E\001\E9, 
+       kf46=\E\001\E0, kf47=\E\001\E!, kf48=\E\001\E@, kf5=\E5, 
+       kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, khome=\Eh, kich1=\E+, 
+       knp=\E/, kpp=\E?, use=ms-vt100-color, 
+
+ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+, 
+       use=ms-vt100+, 
+
+# a minimal subset of a vt100 (compare with "news-unk).
+tt|tkterm|Don Libes' tk text widget terminal emulator, 
+       clear=\E[H\E[J, cr=^M, cuf1=\E[C, cup=\E[%p1%d;%p2%dH, 
+       cuu1=\E[A, ind=^J, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, 
+       kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, kf9=\EOX, rmso=\E[m, 
+       smso=\E[7m, 
+
 #### X terminal emulators
 #
 # You can add the following line to your .Xdefaults to change the terminal type
@@ -2691,9 +2780,8 @@ xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System),
        ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, 
        il1=\E[L, ind=^J, 
        is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, 
-       ka1=\EOw, ka3=\EOu, kb2=\EOy, kbeg=\EOE, kbs=^H, kc1=\EOq, 
-       kc3=\EOs, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
-       kdch1=\177, kend=\EOF, kent=\EOM, kf1=\E[11~, kf10=\E[21~, 
+       kbeg=\EOE, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, 
+       kcuu1=\EOA, kdch1=\177, kend=\EOF, kf1=\E[11~, kf10=\E[21~, 
        kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, 
        kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, 
        kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, 
@@ -2710,7 +2798,7 @@ xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System),
        sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h, 
        smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, 
        tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?1;2c, u9=\E[c, 
-       vpa=\E[%i%p1%dd, use=ecma+color, 
+       vpa=\E[%i%p1%dd, use=ecma+color, use=vt220+keypad, 
 
 # This is the stock xterm entry supplied with XFree86 3.3, which uses VT100
 # codes for F1-F4 except while in VT220 mode.
@@ -2750,10 +2838,11 @@ xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System),
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, 
        smcup=\E[?1049h, use=xterm-xf86-v333, 
 
-xterm-xfree86|xterm-new|xterm terminal emulator (XFree86 4.0 Window System), 
+# This version was released in XFree86 4.3.
+xterm-xf86-v43|xterm terminal emulator (XFree86 4.3 Window System), 
        npc, 
-       kDC=\E[3;2~, kEND=\EO2F, kHOM=\EO2H, kIC=\E[2;2~, 
-       kLFT=\EO2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\EO2C, 
+       kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, 
+       kLFT=\E[1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C, 
        kb2=\EOE, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, 
        kcuu1=\EOA, kend=\EOF, kent=\EOM, kf1=\EOP, kf10=\E[21~, 
        kf11=\E[23~, kf12=\E[24~, kf13=\EO2P, kf14=\EO2Q, 
@@ -2770,6 +2859,11 @@ xterm-xfree86|xterm-new|xterm terminal emulator (XFree86 4.0 Window System),
        kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\EOH, 
        kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, 
        use=xterm-basic, 
+
+# This version is current (XFree86 xterm patch #180).
+xterm-xfree86|xterm-new|xterm terminal emulator (XFree86 4.4 Window System), 
+       cnorm=\E[?12l\E[?25h, cvvis=\E[?12;25h, indn=\E[%p1%dS, 
+       rin=\E[%p1%dT, use=xterm-xf86-v43, 
 #
 # This chunk is used for building the VT220/Sun/PC keyboard variants.
 xterm-basic|xterm terminal emulator - common (XFree86), 
@@ -2819,6 +2913,14 @@ xterm-256color|xterm with 256 colors,
 xterm-88color|xterm with 88 colors, 
        colors#88, pairs#88, use=xterm-256color, 
 
+# These two are used to demonstrate the any-event mouse support, i.e., by
+# using an extended name "XM" which tells ncurses to put the terminal into
+# a special mode when initializing the xterm mouse.
+xterm-1002|testing xterm-mouse, 
+       XM=\E[?1002%?%p1%{1}%=%th%el%;, use=xterm-xfree86, 
+xterm-1003|testing xterm-mouse, 
+       XM=\E[?1003%?%p1%{1}%=%th%el%;, use=xterm-xfree86, 
+
 # This is another variant, for XFree86 4.0 xterm (T.Dickey)
 # This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color.
 # To use it, your decTerminalID resource must be set to 200 or above.
@@ -2895,15 +2997,14 @@ xterm-sco|XFree86 xterm with SCO function keys,
 #      + uses DEC-style control sequences for the application keypad.
 #        
 xterm-vt220|XFree86 xterm emulating vt220, 
-       ka1=\EOw, ka3=\EOy, kbeg=\EOu, kc1=\EOq, kc3=\EOs, kcbt=\E[Z, 
-       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[4~, 
-       kent=\EOM, kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, 
-       kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, 
-       kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, 
-       kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf5=\E[15~, kf6=\E[17~, 
-       kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[1~, 
-       kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, 
-       use=xterm-basic, 
+       kbeg=\EOu, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, 
+       kcuu1=\EOA, kend=\E[4~, kf10=\E[21~, kf11=\E[23~, 
+       kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, 
+       kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, 
+       kf20=\E[34~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, 
+       kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, 
+       kmous=\E[M, knp=\E[6~, kpp=\E[5~, use=xterm-basic, 
+       use=vt220+keypad, 
 
 xterm-vt52|XFree86 xterm emulating dec vt52, 
        cols#80, it#8, lines#24, 
@@ -2951,7 +3052,7 @@ xterm-bold|xterm terminal emulator (X11R6 Window System) standout w/bold,
 #  -- MATSUMOTO Shoji)
 kterm|kterm kanji terminal emulator (X window system), 
        eslok, hs, 
-       acsc=++\,\,--..00II``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, 
+       acsc=++\,\,--..00ii``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, 
        csr=\E[%i%p1%d;%p2%dr, dsl=\E[?H, enacs=, fsl=\E[?F, 
        kmous=\E[M, rc=\E8, rmacs=\E(B, sc=\E7, smacs=\E(0, 
        tsl=\E[?E\E[?%i%dT, use=xterm-r6, use=ecma+color, 
@@ -2981,9 +3082,8 @@ color_xterm|cx|cx100|color_xterm color terminal emulator for X,
        dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, 
        el=\E[K, el1=\E[1K, enacs=\E(B\E)0, home=\E[H, ht=^I, 
        ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, 
-       is1=\E[r\E[m\E[?7h\E[?4;6l\E[4l, ka1=\EOw, ka3=\EOy, 
-       kb2=\EOu, kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\EOD, kcud1=\EOB, 
-       kcuf1=\EOC, kcuu1=\EOA, kend=\E[8~, kent=\EOM, kf1=\E[11~, 
+       is1=\E[r\E[m\E[?7h\E[?4;6l\E[4l, kbs=^H, kcub1=\EOD, 
+       kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[8~, kf1=\E[11~, 
        kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, 
        kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, 
        kf8=\E[19~, kf9=\E[20~, khome=\E[7~, kich1=\E[2~, 
@@ -2995,7 +3095,7 @@ color_xterm|cx|cx100|color_xterm color terminal emulator for X,
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, 
        sgr0=\E[m, smacs=^N, smam=\E[?7h, 
        smcup=\E[?1;41s\E[?1;41h\E=, smir=\E[4h, smso=\E[7m, 
-       smul=\E[4m, use=ecma+color, 
+       smul=\E[4m, use=ecma+color, use=vt220+keypad, 
 
 # The 'nxterm' distributed with Redhat Linux 5.2 is a slight rehack of
 # xterm-sb_right-ansi-3d, which implements ANSI colors, but does not support
@@ -3005,7 +3105,9 @@ color_xterm|cx|cx100|color_xterm color terminal emulator for X,
 #
 # Redhat Linux 6.x distributes XFree86 xterm as "nxterm", which uses bce
 # colors; note that this is not compatible with the 5.2 version.
-nxterm|xterm-color|generic color xterm, 
+# csw (2002-05-15): make xterm-color primary instead of nxterm, to 
+#   match XFree86's xterm.terminfo usage and prevent circular links
+xterm-color|nxterm|generic color xterm, 
        ncv@, 
        op=\E[m, use=xterm-r6, use=klone+color, 
 
@@ -3040,8 +3142,32 @@ gnome-rh72|GNOME Terminal,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\016%e\017%;, 
        smam=\E[?7h, tbc@, use=xterm-color, 
 
+# GNOME Terminal 2.0.1 (Redhat 8.0)
+#
+# Documentation now claims it implements vt220 (which is demonstrably false). 
+# However, it does implement ECH, which is a vt220 feature.  And there are
+# workable vt100 LNM, DECALN, DECSNM modes, making it possible to display
+# more of its bugs using vttest.
+#
+# However, note that bce and msgr are broken in this release.  Tabs (tbc and
+# hts) are broken as well.  Sometimes flash (as in xterm-xfree86) works.
+#
+# kf1 and kf10 are not tested since they're assigned (hardcoded?) to menu
+# operations.  Shift-tab generates a distinct sequence so it can be argued
+# that it implements kcbt.
+gnome-rh80|GNOME Terminal, 
+       bce@, msgr@, 
+       ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, kbs=\177, 
+       kcbt=\E^I, op=\E[39;49m, use=gnome-rh72, 
+
+# GNOME Terminal 2.2.1 (Redhat 9.0)
+#
+# bce and msgr are repaired.
+gnome-rh90|GNOME Terminal, 
+       bce, msgr, use=gnome-rh80, 
+
 gnome|GNOME Terminal, 
-       use=gnome-rh72
+       use=gnome-rh90
 
 # This is kvt 0-18.7, shipped with Redhat 6.0 (though whether it supports bce
 # or not is debatable).
@@ -3146,10 +3272,9 @@ rxvt-basic|rxvt terminal base (X Window System),
        il=\E[%p1%dL, il1=\E[L, ind=^J, is1=\E[?47l\E=\E[?1l, 
        is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, 
        kDC=\E[3$, kEND=\E[8$, kHOM=\E[7$, kLFT=\E[d, kNXT=\E[6$, 
-       kPRV=\E[5$, kRIT=\E[c, ka1=\EOw, ka3=\EOy, kb2=\EOu, kbs=^H, 
-       kc1=\EOq, kc3=\EOs, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, 
-       kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kel=\E[8\^, 
-       kend=\E[8~, kent=\EOM, kf1=\E[11~, kf10=\E[21~, 
+       kPRV=\E[5$, kRIT=\E[c, kbs=^H, kcbt=\E[Z, kcub1=\E[D, 
+       kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, 
+       kel=\E[8\^, kend=\E[8~, kf1=\E[11~, kf10=\E[21~, 
        kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, 
        kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, 
        kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, 
@@ -3162,10 +3287,22 @@ rxvt-basic|rxvt terminal base (X Window System),
        rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>, 
        s0ds=\E(B, s1ds=\E(0, sc=\E7, sgr0=\E[0m\017, smacs=^N, 
        smcup=\E7\E[?47h, smir=\E[4h, smkx=\E=, smso=\E[7m, 
-       smul=\E[4m, tbc=\E[3g, 
+       smul=\E[4m, tbc=\E[3g, use=vt220+keypad, 
 rxvt|rxvt terminal emulator (X Window System), 
        ncv@, 
-       sgr0=\E[m\017, use=rxvt-basic, use=ecma+color, 
+       cvvis=\E[?25h, hpa=\E[%i%p1%dG, kf0=\E[21~, 
+       sgr0=\E[m\017, vpa=\E[%i%p1%dd, use=rxvt-basic, 
+       use=ecma+color, 
+rxvt-color|rxvt terminal emulator (X Window System), 
+       use=rxvt, 
+rxvt-xpm|rxvt terminal emulator (X Window System), 
+       use=rxvt, 
+rxvt-cygwin|rxvt terminal emulator (X Window System) on cygwin, 
+       acsc=0\333+\257\,\256-\^`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, 
+       use=rxvt, 
+rxvt-cygwin-native|rxvt terminal emulator (native MS Window System port) on cygwin, 
+       acsc=0\333+\257\,\256-\^`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330~\376, 
+       use=rxvt-cygwin, 
 
 # This variant is supposed to work with rxvt 2.7.7 when compiled with
 # NO_BRIGHTCOLOR defined.  rxvt needs more work...
@@ -3227,19 +3364,17 @@ xtermm|xterm terminal emulator (monocrome),
        dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, 
        el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, getm=\E[%p1%dY, 
        home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, 
-       il=\E[%p1%dL, il1=\E[L, ind=^J, ka1=\EOq, ka3=\EOs, kb2=\EOr, 
-       kbs=^H, kc1=\EOp, kc3=\EOn, kcub1=\EOD, kcud1=\EOB, 
-       kcuf1=\EOC, kcuu1=\EOA, kend=\E[Y, kent=\EOM, kf0=\EOy, 
-       kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf2=\EOQ, 
-       kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, 
-       kf9=\EOX, khome=\E[H, kmous=\E[^_, knp=\E[U, kpp=\E[V, 
-       rc=\E8, reqmp=\E[492Z, rev=\E[7m, ri=\EM, rmacs=^O, 
-       rmcup=\E@0\E[?4r, rmso=\E[m, 
+       il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, 
+       kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[Y, kf0=\EOy, 
+       kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf5=\EOT, kf6=\EOU, 
+       kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\E[H, kmous=\E[^_, 
+       knp=\E[U, kpp=\E[V, rc=\E8, reqmp=\E[492Z, rev=\E[7m, ri=\EM, 
+       rmacs=^O, rmcup=\E@0\E[?4r, rmso=\E[m, 
        rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, 
        rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, 
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, 
        sgr0=\E[m\017, smacs=^N, smcup=\E@0\E[?4s\E[?4h\E@1, 
-       smso=\E[7m, tbc=\E[3g, 
+       smso=\E[7m, tbc=\E[3g, use=vt100+fnkeys, 
 
 xtermc|xterm terminal emulator (color), 
        colors#8, ncv#7, pairs#64, 
@@ -3332,7 +3467,7 @@ emu|emu native mode,
 # print interface, ANSI X3.64 colour escape sequences, etc.  Newsgroup postings
 # indicate that it emulates more than one terminal, but incompletely.
 # 
-# This is dapted from a FreeBSD bug-report by Daniel Rudy <dcrudy@pacbell.net>
+# This is adapted from a FreeBSD bug-report by Daniel Rudy <dcrudy@pacbell.net>
 # It is based on vt102's entry, with some subtle differences, but also
 #      has status line
 #      supports ANSI colors (except for 'op' string)
@@ -3349,19 +3484,71 @@ mvterm|vv100|SwitchTerm aka mvTERM,
        dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, 
        dsl=\E[?E, ed=\E[J, el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, 
        fsl=\E[?F, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, 
-       ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, ka1=\EOq, 
-       ka3=\EOs, kb2=\EOr, kbs=^H, kc1=\EOp, kc3=\EOn, kcub1=\EOD, 
-       kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, kf0=\EOy, 
-       kf1=\EOP, kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, 
-       kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, op=\E[100m, rc=\E8, 
-       rev=\E[7m, ri=\EM, rmacs=^O, rmcup=\E[2J\E[?47l\E8, 
-       rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, 
+       ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, 
+       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOy, 
+       kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, 
+       op=\E[100m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, 
+       rmcup=\E[2J\E[?47l\E8, rmkx=\E[?1l\E>, rmso=\E[m, 
+       rmul=\E[m, 
        rs2=\E>\E[1;3;4;5;6l\E[?7h\E[100m\E[m\E[r\E[2J\E[H, 
        sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, 
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, 
        sgr0=\E[m\017, smacs=^N, smcup=\E7\E[?47h, 
        smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, 
-       tsl=\E[?E\E[?%i%p1%dT, 
+       tsl=\E[?E\E[?%i%p1%dT, use=vt100+fnkeys, 
+
+### MTERM
+#
+# This application is available by email from <mouse@Rodents.Montreal.QC.CA>.
+#
+# "mterm -type ansi" sets $TERM to "ansi"
+mterm-ansi|ANSI emulation, 
+       am, bw, mir, msgr, 
+       it#8, 
+       acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, 
+       bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, 
+       cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, 
+       cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, 
+       cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, 
+       dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, 
+       el=\E[K, home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=, 
+       il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS, 
+       invis=\E[8m, is2=\E)0\017, kbs=^H, nel=\EE, rev=\E[7m, 
+       ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmir=\E[4l, rmso=\E[27m, 
+       rmul=\E[24m, sgr0=\E[m, smacs=^N, smir=\E[4h, smso=\E[7m, 
+       smul=\E[4m, vpa=\E[%i%p1%dd, 
+# mterm normally sets $TERM to "mterm"
+mterm|mouse-sun|Der Mouse term, 
+       am, bw, mir, 
+       it#8, 
+       bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^N, cuf1=^S, 
+       cup=\006%p1%d.%p2%d., cuu1=^X, dch1=^Y, dl1=^K, ed=^B, el=^C, 
+       home=^P, ht=^I, il1=^A, ind=^U, kbs=^H, ll=^R, nel=^M^U, ri=^W, 
+       rmir=^O, rmso=^T, smir=^Q, smso=^V, 
+# "mterm -type decansi" sets $TERM to "decansi"
+decansi|ANSI emulation with DEC compatibility hacks, 
+       am, mir, msgr, xenl, 
+       colors#8, it#8, pairs#64, 
+       acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, 
+       bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, 
+       clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, 
+       csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, 
+       cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, 
+       cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, 
+       dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, 
+       dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, enacs=\E(B\E)0, 
+       home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=, il=\E[%p1%dL, 
+       il1=\E[L, ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, 
+       is2=\E)0\E[r\017, kbs=^H, kcub1=\EOD, kcud1=\EOB, 
+       kcuf1=\EOC, kcuu1=\EOA, nel=\EE, op=\E[0m, rc=\E8, rev=\E[7m, 
+       ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, 
+       rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, sc=\E7, 
+       setab=\E[4%p1%dm, setaf=\E[3%p1%dm, 
+       sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, 
+       sgr0=\E[m, smacs=^N, smam=\E[?7h, smir=\E[4h, 
+       smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, u6=\E[%i%d;%dR, 
+       u7=\E[6n, vpa=\E[%i%p1%dd, 
+
 #### MGR
 #
 # MGR is a Bell Labs window system lighter-weight than X.
@@ -3467,11 +3654,18 @@ screen|VT 100/ANSI X3.64 virtual terminal,
        kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, 
        kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, 
        khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, 
-       nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmir=\E[4l, 
-       rmkx=\E[?1l\E>, rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7, 
-       sgr0=\E[m, smacs=^N, smir=\E[4h, smkx=\E[?1h\E=, 
-       smso=\E[3m, smul=\E[4m, tbc=\E[3g, E0=\E(B, S0=\E(%p1%c, 
+       nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, 
+       rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[23m, 
+       rmul=\E[24m, rs2=\Ec, sc=\E7, sgr0=\E[m, smacs=^N, 
+       smcup=\E[?1049h, smir=\E[4h, smkx=\E[?1h\E=, smso=\E[3m, 
+       smul=\E[4m, tbc=\E[3g, E0=\E(B, S0=\E(%p1%c, 
        use=ecma+color, 
+# The bce and status-line entries are from screen 3.9.13 (and require some
+# changes to .screenrc).
+screen-bce|VT 100/ANSI X3.64 virtual terminal with bce, 
+       bce, use=screen, 
+screen-s|VT 100/ANSI X3.64 virtual terminal with hardstatus line, 
+       dsl=\E_\E\\, fsl=\E\\, tsl=\E_, use=screen, 
 
 # Read the fine manpage:
 #       When  screen  tries  to  figure  out  a  terminal name for
@@ -3508,9 +3702,15 @@ screen.xterm-xfree86|screen customized for XFree86 xterm,
 screen.xterm-r6|screen customized for X11R6 xterm, 
        bw, use=xterm-r6, 
 # Color applications running in screen and TeraTerm do not play well together
-# on Solaris.
+# on Solaris because Sun's curses implementation gets confused.
 screen.teraterm|disable ncv in teraterm, 
-       ncv#127, use=screen, 
+       ncv#127, 
+       acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, 
+       use=screen, 
+# fix the backspace key
+screen.linux|screen in linux console, 
+       bw, 
+       kbs=\177, kcbt@, use=screen, 
 
 screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols, 
        cols#132, use=screen, 
@@ -3631,7 +3831,7 @@ ncsa-vt220|NCSA Telnet using vt220-compatible function keys,
 #### Pilot Pro Palm-Top
 #
 # Termcap for Top Gun Telnet and SSH on the Palm Pilot.
-# http://www.isaac.cs.berkeley.edu/pilot/tgtelnet.html
+# http://www.ai/~iang/TGssh/
 pilot|tgtelnet|Top Gun Telnet on the Palm Pilot Professional, 
        OTbs, am, xenl, 
        cols#39, lines#16, 
@@ -3763,6 +3963,9 @@ sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character,
 sun-c|sun-cmd|Sun Microsystems Workstation console with scrollable history, 
        lines#35, 
        rmcup=\E[>4h, smcup=\E[>4l, use=sun, 
+sun-type4|Sun Workstation console with type 4 keyboard, 
+       kcub1=\E[217z, kcud1=\E[221z, kcuf1=\E[219z, 
+       kcuu1=\E[215z, use=sun-il, 
 
 #### Iris consoles
 #
@@ -4032,62 +4235,79 @@ dtterm|CDE desktop terminal,
 #### Non-Unix Consoles
 #
 
+### EMX termcap.dat compatibility modes
+#
+# Keypad:      Home=\0G        Up=\0H  PrPag=\0I
+#              ka1,kh          kcuu1           kpp,ka3
+#
+#              Left=\0K        5=\0L           Right=\0M
+#              kcub1           kb2             kcuf1
+#
+#              End=\0O         Down=\0P        NxPag=\0Q
+#              kc1,kend        kcud1           kc3,knp
+#
+#              Ins=\0R         Del=\0S
+#              kich1           kdch1
+#
+# On keyboard with 12 function keys,
+#      shifted f-keys: F13-F24
+#      control f-keys: F25-F36
+#      alt f-keys:     F37-F48
+# The shift/control/alt keys do not modify each other, but alt overrides both,
+# and control overrides shift.
+#
+# Also (possibly only EMX, so we don't put it in ansi.sys, etc): set the
+# no_color_video to inform the application that standout(1), underline(2)
+# reverse(4) and invisible(64) don't work with color.
+emx-base|DOS special keys, 
+       bce, bw, 
+       it#8, ncv#71, 
+       bel=^G, ka1=\0G, ka3=\0I, kb2=\0L, kbs=^H, kc1=\0O, kc3=\0Q, 
+       kcbt=\0^O, kcub1=\0K, kcud1=\0P, kcuf1=\0M, kcuu1=\0H, 
+       kdch1=\0S, kend=\0O, kf1=\0;, kf10=\0D, kf11=\0\205, 
+       kf12=\0\206, kf13=\0T, kf14=\0U, kf15=\0V, kf16=\0W, 
+       kf17=\0X, kf18=\0Y, kf19=\0Z, kf2=\0<, kf20=\0[, kf21=\0\\, 
+       kf22=\0], kf23=\0\207, kf24=\0\210, kf25=\0\^, kf26=\0_, 
+       kf27=\0`, kf28=\0a, kf29=\0b, kf3=\0=, kf30=\0c, kf31=\0d, 
+       kf32=\0e, kf33=\0f, kf34=\0g, kf35=\0\211, kf36=\0\212, 
+       kf37=\0h, kf38=\0i, kf39=\0j, kf4=\0>, kf40=\0k, kf41=\0l, 
+       kf42=\0m, kf43=\0n, kf44=\0o, kf45=\0p, kf46=\0q, 
+       kf47=\0\213, kf48=\0\214, kf5=\0?, kf6=\0@, kf7=\0A, kf8=\0B, 
+       kf9=\0C, khome=\0G, kich1=\0R, knp=\0Q, kpp=\0I, 
+       use=ansi.sys, 
+
 # Except for the "-emx" suffixes, these are as distributed with EMX 0.9b,
 # a Unix-style environment used on OS/2.  (Note that the suffix makes some
 # names longer than 14 characters, the nominal maximum).
 #
 # Removed: rmacs=\E[10m, smacs=\E[11m, because OS/2 does not implement acs.
 ansi-emx|ANSI.SYS color, 
-       am, bce, eo, mir, msgr, xenl, xon, 
+       am, bce, eo, mir, msgr, xon, 
        colors#8, cols#80, it#8, lines#25, pairs#64, 
        bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, 
        clear=\E[1;33;44m\E[H\E[J, cnorm=\E[?25h, cr=^M, cub1=^H, 
        cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, 
        dch=\E[%p1%dp, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, 
        home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, ind=^J, 
-       kb2=\E[G, kbs=^H, kcub1=\0K, kcud1=\0P, kcuf1=\0M, kcuu1=\0H, 
-       kf0=\0D, kf1=\0;, kf2=\0<, kf3=\0=, kf4=\0>, kf5=\0?, kf6=\0@, 
-       kf7=\0A, kf8=\0B, kf9=\0C, khome=\0G, kich1=\0R, kll=\0O, 
-       knp=\0Q, kpp=\0I, kspd=^Z, nel=^M^J, rev=\E[5;37;41m, 
-       rmir=\E[4l, rmpch=\E[10m, rmso=\E[0;44m\E[1;33m, 
-       rmul=\E[0;44m\E[1;33m, rs1=\Ec, setab=\E[4%p1%dm, 
-       setaf=\E[3%p1%dm, sgr0=\E[0m\E[1;33;44m, smir=\E[4h, 
-       smpch=\E[11m, smso=\E[0;31;47m, smul=\E[1;31;44m, 
-       tbc=\E[3g, u8=\E[?6c, u9=\E[c, 
+       kb2=\E[G, kbs=^H, kf0=\0D, kll=\0O, kspd=^Z, nel=^M^J, 
+       rev=\E[5;37;41m, rmir=\E[4l, rmpch=\E[10m, 
+       rmso=\E[0;44m\E[1;33m, rmul=\E[0;44m\E[1;33m, rs1=\Ec, 
+       setab=\E[4%p1%dm, setaf=\E[3%p1%dm, 
+       sgr0=\E[0m\E[1;33;44m, smir=\E[4h, smpch=\E[11m, 
+       smso=\E[0;31;47m, smul=\E[1;31;44m, tbc=\E[3g, u8=\E[?6c, 
+       u9=\E[c, use=emx-base, 
+# nice colors for Emacs (white on blue, mode line white on cyan)
 ansi-color-2-emx|ANSI.SYS color 2, 
-       am, bce, eo, mir, msgr, xenl, xon, 
-       colors#8, cols#80, it#8, lines#25, pairs#64, 
-       bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, 
-       clear=\E[0;37;44m\E[H\E[J, cnorm=\E[?25h, cr=^M, cub1=^H, 
-       cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, 
-       dch=\E[%p1%dp, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, 
-       home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, ind=^J, 
-       kb2=\E[G, kbs=^H, kcub1=\0K, kcud1=\0P, kcuf1=\0M, kcuu1=\0H, 
-       kf0=\0D, kf1=\0;, kf2=\0<, kf3=\0=, kf4=\0>, kf5=\0?, kf6=\0@, 
-       kf7=\0A, kf8=\0B, kf9=\0C, khome=\0G, kich1=\0R, kll=\0O, 
-       knp=\0Q, kpp=\0I, kspd=^Z, nel=^M^J, rev=\E[1;37;46m, 
-       rmir=\E[4l, rmpch=\E[10m, rmso=\E[0;37;44m, 
-       rmul=\E[0;37;44m, rs1=\Ec, setab=\E[4%p1%dm, 
-       setaf=\E[3%p1%dm, sgr0=\E[0;37;44m, smir=\E[4h, 
-       smpch=\E[11m, smso=\E[1;37;46m, smul=\E[1;36;44m, 
-       tbc=\E[3g, u8=\E[?6c, u9=\E[c, 
+       clear=\E[0;37;44m\E[H\E[J, rev=\E[1;37;46m, 
+       rmso=\E[0;37;44m, rmul=\E[0;37;44m, rs1=\Ec, 
+       setaf=\E[3%p1%dm, sgr0=\E[0;37;44m, smso=\E[1;37;46m, 
+       smul=\E[1;36;44m, use=ansi-emx, 
+# nice colors for Emacs (white on black, mode line black on cyan)
 ansi-color-3-emx|ANSI.SYS color 3, 
-       am, bce, eo, mir, msgr, xenl, xon, 
-       colors#8, cols#80, it#8, lines#25, pairs#64, 
-       bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, 
-       clear=\E[0;37;40m\E[H\E[J, cnorm=\E[?25h, cr=^M, cub1=^H, 
-       cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, 
-       dch=\E[%p1%dp, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, 
-       home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, ind=^J, 
-       kb2=\E[G, kbs=^H, kcub1=\0K, kcud1=\0P, kcuf1=\0M, kcuu1=\0H, 
-       kf0=\0D, kf1=\0;, kf2=\0<, kf3=\0=, kf4=\0>, kf5=\0?, kf6=\0@, 
-       kf7=\0A, kf8=\0B, kf9=\0C, khome=\0G, kich1=\0R, kll=\0O, 
-       knp=\0Q, kpp=\0I, kspd=^Z, nel=^M^J, rev=\E[1;37;46m, 
-       rmir=\E[4l, rmpch=\E[10m, rmso=\E[0;37;40m, 
-       rmul=\E[0;37;40m, rs1=\Ec, setab=\E[4%p1%dm, 
-       setaf=\E[3%p1%dm, sgr0=\E[0;10m, smir=\E[4h, 
-       smpch=\E[11m, smso=\E[1;37;46m, smul=\E[0;36;40m, 
-       tbc=\E[3g, u8=\E[?6c, u9=\E[c, 
+       clear=\E[0;37;40m\E[H\E[J, rev=\E[1;37;46m, 
+       rmso=\E[0;37;40m, rmul=\E[0;37;40m, rs1=\Ec, 
+       setaf=\E[3%p1%dm, sgr0=\E[0;10m, smso=\E[1;37;46m, 
+       smul=\E[0;36;40m, use=ansi-emx, 
 mono-emx|stupid monochrome ansi terminal with only one kind of emphasis, 
        am, 
        cols#80, it#8, lines#24, 
@@ -4117,31 +4337,301 @@ cygwinB19|ansi emulation for cygwin32,
 # I've indicated which of these were and which I used.
 # Cheers, earnie_boyd@yahoo.com
 # several changes based on running with tack and comparing with older entry -TD
+# more changes from csw:
+#   add    cbt   [backtab]
+#   remove eo    [erase overstrike with blank]
+#   change clear was \E[H\E[J  now \E[2J  (faster?)
+#   remove cols
+#   remove lines
+#   remove ncv#3 [colors collide with highlights, bitmask] not applicable
+#                to MSDOS box?
+#   add    cub   [cursor back param] 
+#   add    cuf   [cursor forward param]
+#   add    cuu   [cursor up param]
+#   add    cud   [cursor down param]
+#   add    hs    [has status line]
+#   add    fsl   [return from status line]
+#   add    tsl   [go to status line]
+#   add    smacs [Start alt charset] (not sure if this works)
+#   add    rmacs [End alt charset]   (ditto)
+#   add    smcup [enter_ca_mode] (save console; thanks Corinna)
+#   add    rmcup [exit_ca_mode]  (restore console; thanks Corinna)
+#   add    kb2   [center of keypad]
+#   add    u8    [user string 8] \E[?6c
+#   add    el    [clear to end of line] \E[K
+# Notes:
+#   cnorm [make cursor normal] not implemented
+#   flash [flash] not implemented
+#   blink [blink] not implemented very usefully in cygwin? \E[5m
+#   dim   [dim] not implemented very usefully in cygwin? \E[2m
+#   cub1  [cursor back 1] typically \E[D, but ^H is faster?
+#   kNXT  [shifted next key] not implemented
+#   kPRV  [shifted prev key] not implemented
+#   khome [home key] really is \E[1~ NOT \E[H
+#   tbc   [clear tab stops] not implemented
+#   xenl  [newline ignnored after 80 cols] messes up last line? Ehud Karni
+#   smpch [Start PC charset] is \E[11m, same as smacs
+#   rmpch [End PC charset] is \E[10m, same as rmacs
+#   mir   [move in insert mode] fails in tack?
+#   bce   [back color erase] causes problems with change background color?
+#   cvvis [make cursor very visible] causes a stackdump when testing with
+#         testcurs using the output option? \E[?25h\E[?8c
+#   civis [make cursor invisible] causes everything to stackdump? \E[?25l\E[?1c
+#   ech   [erase characters param] broken \E[%p1%dX
+#   kcbt  [back-tab key] not implemented in cygwin?  \E[Z
 cygwin|ansi emulation for Cygwin, 
-       am, eo, in, msgr, xon, 
-       colors#8, cols#80, it#8, lines#25, ncv#3, pairs#64, 
+       am, hs, in, msgr, xon, 
+       colors#8, it#8, pairs#64, 
        acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, 
-       bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, cub1=^H, 
-       cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, 
-       dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, 
-       el=\E[K, el1=\E[1K, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, 
-       hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, 
-       ind=^J, invis=\E[8m, kbs=^H, kcub1=\E[D, kcud1=\E[B, 
-       kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, 
+       bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, cr=^M, 
+       cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, 
+       cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, 
+       cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, 
+       dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, fsl=^G, 
+       home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, 
+       ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, 
+       kb2=\E[G, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, 
+       kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, 
        kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, 
        kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, 
        kf18=\E[32~, kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, 
        kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, 
        kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, 
        knp=\E[6~, kpp=\E[5~, kspd=^Z, nel=^M^J, op=\E[39;49m, 
-       rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, rmpch=\E[10m, 
+       rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E[10m, 
+       rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmpch=\E[10m, 
        rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, sc=\E7, 
        setab=\E[4%p1%dm, setaf=\E[3%p1%dm, 
        sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, 
-       sgr0=\E[0;10m, smir=\E[4h, smpch=\E[11m, smso=\E[7m, 
-       smul=\E[4m, u6=\E[%i%d;%dR, u7=\E[6n, u9=\E[c, 
+       sgr0=\E[0;10m, smacs=\E11m, smcup=\E7\E[?47h, smir=\E[4h, 
+       smpch=\E[11m, smso=\E[7m, smul=\E[4m, tsl=\E];, 
+       u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?6c, u9=\E[c, 
        vpa=\E[%i%p1%dd, 
 
+# I've supplied this so that you can help test new values and add other
+# features.  Cheers, earnie_boyd@yahoo.com.
+#
+# Some features are from pcansi.  The op value is from linux.  Function-keys
+# are from linux.  These have been tested not to cause problems.  xenl was in
+# this list, but DOES cause problems so it has been removed
+cygwinDBG|Debug Version for Cygwin, 
+       am, eo, mir, msgr, xon, 
+       colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64, 
+       acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, 
+       bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, 
+       cnorm=\E[?25h, cr=^M, cub=\E[%p1%dD, cub1=\E[D, 
+       cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, 
+       cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, 
+       dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, 
+       dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, 
+       flash=\E[?5h\E[?5l$<200/>, home=\E[H, hpa=\E[%i%p1%dG, 
+       ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, 
+       il1=\E[L, ind=^J, invis=\E[8m, kNXT=\E[6$, kPRV=\E[5$, 
+       kb2=\E[G, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, 
+       kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, 
+       kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, 
+       kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, 
+       kf18=\E[32~, kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, 
+       kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, 
+       kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, 
+       knp=\E[6~, kpp=\E[5~, kspd=^Z, nel=^M^J, op=\E[39;49m, 
+       rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E[10m, rmir=\E[4l, 
+       rmso=\E[m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7, 
+       setab=\E[4%p1%dm, setaf=\E[3%p1%dm, 
+       sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m, 
+       sgr0=\E[0;10m, smacs=\E[11m, smir=\E[4h, smso=\E[7m, 
+       smul=\E[4m, tbc=\E[2g, u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?6c, 
+       u9=\E[c, vpa=\E[%i%p1%dd, 
+
+# Key definitions:
+# The encodings for unshifted arrow keys, F1-F12, Home, Insert, etc.  match the
+# encodings used by other x86 environments.  All others are invented for DJGPP.
+# Oddly enough, while several combinations of modifiers are tabulated, there is
+# none for shifted cursor keys.
+#
+#      F1                      \E[[A
+#      F2                      \E[[B
+#      F3                      \E[[C
+#      F4                      \E[[D
+#      F5                      \E[[E
+#      F6                      \E[17~
+#      F7                      \E[18~
+#      F8                      \E[19~
+#      F9                      \E[20~
+#      F10                     \E[21~
+#      F11                     \E[23~
+#      F12                     \E[24~
+#
+#      Delete                  \E[3~
+#      Down Arrow              \E[B
+#      End                     \E[4~
+#      Home                    \E[1~
+#      Insert                  \E[2~
+#      Left Arrow              \E[D
+#      Page Down               \E[6~
+#      Page Up                 \E[5~
+#      Right Arrow             \E[C
+#      Up Arrow                \E[A
+#
+#      Shift-F1                \E[25~
+#      Shift-F2                \E[26~
+#      Shift-F3                \E[27~
+#      Shift-F4                \E[28~
+#      Shift-F5                \E[29~
+#      Shift-F6                \E[30~
+#      Shift-F7                \E[31~
+#      Shift-F8                \E[32~
+#      Shift-F9                \E[33~
+#      Shift-F10               \E[34~
+#      Shift-F11               \E[35~
+#      Shift-F12               \E[36~
+#
+#      Ctrl-F1                 \E[47~
+#      Ctrl-F2                 \E[48~
+#      Ctrl-F3                 \E[49~
+#      Ctrl-F4                 \E[50~
+#      Ctrl-F5                 \E[51~
+#      Ctrl-F6                 \E[52~
+#      Ctrl-F7                 \E[53~
+#      Ctrl-F8                 \E[54~
+#      Ctrl-F9                 \E[55~
+#      Ctrl-F10                \E[56~
+#      Ctrl-F11                \E[57~
+#      Ctrl-F12                \E[58~
+#
+#      Ctrl-Delete             \E[43~
+#      Ctrl-Down Arrow         \E[38~
+#      Ctrl-End                \E[44~
+#      Ctrl-Home               \E[41~
+#      Ctrl-Insert             \E[42~
+#      Ctrl-Left Arrow         \E[39~
+#      Ctrl-Page Down          \E[46~
+#      Ctrl-Page Up            \E[45~
+#      Ctrl-Right Arrow        \E[40~
+#      Ctrl-Up Arrow           \E[37~
+#
+#      Alt-F1                  \E[59~
+#      Alt-F2                  \E[60~
+#      Alt-F3                  \E[61~
+#      Alt-F4                  \E[62~
+#      Alt-F5                  \E[63~
+#      Alt-F6                  \E[64~
+#      Alt-F7                  \E[65~
+#      Alt-F8                  \E[66~
+#      Alt-F9                  \E[67~
+#      Alt-F10                 \E[68~
+#      Alt-F11                 \E[79~
+#      Alt-F12                 \E[80~
+#
+#      Alt-Delete              \E[65~
+#      Alt-Down Arrow          \E[60~
+#      Alt-End                 \E[66~
+#      Alt-Home                \E[41~
+#      Alt-Insert              \E[64~
+#      Alt-Left Arrow          \E[61~
+#      Alt-Page Down           \E[68~
+#      Alt-Page Up             \E[67~
+#      Alt-Right Arrow         \E[62~
+#      Alt-Up Arrow            \E[59~
+#
+# Also:
+#      Alt-A                   \E[82~
+#      Alt-B                   \E[82~
+#      Alt-C                   \E[83~
+#      Alt-D                   \E[84~
+#      Alt-E                   \E[85~
+#      Alt-F                   \E[86~
+#      Alt-G                   \E[87~
+#      Alt-H                   \E[88~
+#      Alt-I                   \E[89~
+#      Alt-J                   \E[90~
+#      Alt-K                   \E[91~
+#      Alt-L                   \E[92~
+#      Alt-M                   \E[93~
+#      Alt-N                   \E[94~
+#      Alt-O                   \E[95~
+#      Alt-P                   \E[96~
+#      Alt-Q                   \E[97~
+#      Alt-R                   \E[98~
+#      Alt-S                   \E[99~
+#      Alt-T                   \E[100~
+#      Alt-U                   \E[101~
+#      Alt-V                   \E[102~
+#      Alt-W                   \E[103~
+#      Alt-X                   \E[104~
+#      Alt-Y                   \E[105~
+#      Alt-Z                   \E[106~
+djgpp|ansi emulation for DJGPP alpha, 
+       am, bce, msgr, xhp, xon, xt, 
+       colors#8, it#8, pairs#64, 
+       acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, 
+       bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[1v, 
+       clear=\E[H\E[J, cnorm=\E[v, cr=^M, cub=\E[%p1%dD, cub1=^H, 
+       cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, 
+       cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, 
+       cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, 
+       dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, 
+       home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, 
+       ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, 
+       indn=\E[%p1%dS, invis=\E[8m, kbs=^H, kcub1=\E[D, 
+       kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, 
+       kend=\E[4~, kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, 
+       kf12=\E[24~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, 
+       kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, 
+       khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=^M^J, 
+       op=\E[37;40m, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, 
+       setab=\E[4%p1%dm, setaf=\E[3%p1%dm, 
+       sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%e;25%;%?%p6%t;1%;%?%p7%t;8%;m, 
+       sgr0=\E[m, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, 
+
+djgpp203|Entry for DJGPP 2.03, 
+       OTbs, am, 
+       cols#80, it#8, lines#25, 
+       bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, 
+       kcud1=^J, nel=^M^J, 
+
+djgpp204|Entry for DJGPP 2.04, 
+       OTbs, am, AX, 
+       colors#8, cols#80, it#8, lines#25, ncv#3, pairs#64, 
+       bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[1v, 
+       clear=\E[H\E[2J, cnorm=\E[v, cr=^M, cub=\E[%p1%dD, 
+       cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, 
+       cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, 
+       cuu1=\E[A, cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P, 
+       dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, 
+       home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, 
+       il1=\E[L, ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, kbs=^H, 
+       kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, 
+       kdch1=\E[3~, kf0=\E[21~, kf1=\E[[A, kf10=\E[21~, kf2=\E[[B, 
+       kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, 
+       kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, 
+       kll=\E[4~, knp=\E[6~, kpp=\E[5~, nel=^M^J, rev=\E[7m, 
+       ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, setab=\E[4%p1%dm, 
+       setaf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, smul=\E[4m, 
+
+# This is tested using U/Win's telnet.  Scrolling is omitted because it is
+# buggy.  Another odd bug appears when displaying "~" in alternate character
+# set (the emulator spits out error messages).  Compare with att6386 -TD
+uwin|U/Win 3.2 console, 
+       am, eo, in, msgr, xenl, xon, 
+       colors#8, it#8, ncv#58, pairs#64, 
+       acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, 
+       bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, 
+       clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, cub1=^H, cud1=^J, 
+       cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, 
+       dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, ech=\E[%p1%dX, 
+       ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH, 
+       ich=\E[%p1%d@, ich1=\E[@, kbs=^H, kcub1=\E[D, kcud1=\E[B, 
+       kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[Y, kf1=\EOP, 
+       kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf2=\EOQ, kf3=\EOR, 
+       kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, kf9=\EOX, 
+       khome=\E[H, kich1=\E[@, nel=^M^J, op=\E[39;49m, rc=\E8, 
+       rev=\E[7m, rmacs=\E[10m, rmir=\E[4l, rmpch=\E[10m, 
+       rmso=\E[27m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7, 
+       setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0;10m, 
+       smacs=\E[11m, smir=\E[4h, smpch=\E[11m, smso=\E[7m, 
+       smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, 
+
 # This entry fits the Windows NT console when the _POSIX_TERM environment
 # variable is set to 'on'.  While the Windows NT POSIX console is seldom used,
 # the Telnet client supplied with both the Windows for WorkGroup 3.11 TCP/IP
@@ -4201,6 +4691,91 @@ pcmw|PC running Microsoft Works,
        sgr0=\E[m$<2/>, smso=\E[7m$<2/>, smul=\E[4m$<2/>, 
        tbc=\E[3g$<2/>, 
 
+# From: Federico Bianchi
+# This is the entry for the OpenNT terminal.
+# The ntconsole name is for backward compatability.
+# This is for OpenNT 2.0 and later.
+# Later OpenNT was renamed to Interix.
+#
+# Presently it is distributed by Microsoft as Services For Unix (SFU).
+# The 3.5 beta contains ncurses 4.2 (that is header files and executables,
+# the documentation dates from 1.9.9e) -TD
+
+interix|opennt|opennt-25|ntconsole|ntconsole-25|OpenNT-term compatible with color, 
+       am, bw, msgr, 
+       colors#8, cols#80, lines#25, ncv#3, pairs#64, 
+       acsc=`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~q\304r\362s_t\303u\264v\301w\302x\263y\371z\372{\373|\374}\375~\376.\031-\030\,\021+^P0\333p\304r\304y\363z\362{\343|\330}\234, 
+       bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[2J, cub=\E[%p1%dD, 
+       cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, 
+       cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, 
+       cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, 
+       home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=\E[S, 
+       indn=\E[%p1%dS, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, 
+       kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[M, kend=\E[U, kf0=\EFA, 
+       kf1=\EF1, kf10=\EFA, kf11=\EFB, kf12=\EFC, kf13=\EFD, 
+       kf14=\EFE, kf15=\EFF, kf16=\EFG, kf17=\EFH, kf18=\EFI, 
+       kf19=\EFJ, kf2=\EF2, kf20=\EFK, kf21=\EFL, kf22=\EFM, 
+       kf23=\EFN, kf24=\EFO, kf25=\EFP, kf26=\EFQ, kf27=\EFR, 
+       kf28=\EFS, kf29=\EFT, kf3=\EF3, kf30=\EFU, kf31=\EFV, 
+       kf32=\EFW, kf33=\EFX, kf34=\EFY, kf35=\EFZ, kf36=\EFa, 
+       kf37=\EFb, kf38=\EFc, kf39=\EFd, kf4=\EF4, kf40=\EFe, 
+       kf41=\EFf, kf42=\EFg, kf43=\EFh, kf44=\EFi, kf45=\EFj, 
+       kf46=\EFk, kf47=\EFm, kf48=\EFn, kf49=\EFo, kf5=\EF5, 
+       kf50=\EFp, kf51=\EFq, kf52=\EFr, kf53=\EFs, kf54=\EFt, 
+       kf55=\EFu, kf56=\EFv, kf57=\EFw, kf58=\EFx, kf59=\EFy, 
+       kf6=\EF6, kf60=\EFz, kf61=\EF+, kf62=\EF-, 
+       kf63=\EF\014 kf64=\EF$, kf7=\EF7, kf8=\EF8, kf9=\EF9, 
+       kich1=\E[L, kll=\E[U, knp=\E[T, kpp=\E[S, ll=\E[U, nel=^M^J, 
+       op=\E[m, rc=\E[u, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, 
+       rmcup=\E[2b\E[u\r\E[K, rmso=\E[m, rmul=\E[m, rs1=\Ec, 
+       sc=\E[s, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, 
+       setb=\E[%p1%{40}%+%dm, setf=\E[%p1%{30}%+%dm, 
+       sgr0=\E[0m, smcup=\E[s\E[1b, smso=\E[1m, smul=\E[4m, 
+
+opennt-35|ntconsole-35|OpenNT-term35 compatible with color, 
+       lines#35, use=opennt, 
+
+opennt-50|ntconsole-50|OpenNT-term50 compatible with color, 
+       lines#50, use=opennt, 
+
+opennt-60|ntconsole-60|OpenNT-term60 compatible with color, 
+       lines#60, use=opennt, 
+
+opennt-100|ntconsole-100|OpenNT-term100 compatible with color, 
+       lines#100, use=opennt, 
+
+# OpenNT wide terminals
+opennt-w|opennt-25-w|ntconsole-w|ntconsole-25-w|OpenNT-term-w compat with color, 
+       cols#125, use=opennt, 
+
+opennt-35-w|ntconsole-35-w|OpenNT-term35-w compatible with color, 
+       lines#35, use=opennt-w, 
+
+opennt-50-w|ntconsole-50-w|OpenNT-term50-w compatible with color, 
+       lines#50, use=opennt-w, 
+
+opennt-60-w|ntconsole-60-w|OpenNT-term60-w compatible with color, 
+       lines#60, use=opennt-w, 
+
+opennt-w-vt|opennt-25-w-vt|ntconsole-w-vt|ntconsole-25-w-vt|OpenNT-term-w-vt compat with color, 
+       cols#132, use=opennt, 
+
+# OpenNT terminals with no smcup/rmcup (names match termcap entries)
+interix-nti|opennt-nti|opennt-25-nti|ntconsole-25-nti|OpenNT-nti compatible with color, 
+       rmcup@, smcup@, use=opennt, 
+
+opennt-35-nti|ntconsole-35-nti|OpenNT-term35-nti compatible with color, 
+       lines#35, use=opennt-nti, 
+
+opennt-50-nti|ntconsole-50-nti|OpenNT-term50-nti compatible with color, 
+       lines#50, use=opennt-nti, 
+
+opennt-60-nti|ntconsole-60-nti|OpenNT-term60-nti compatible with color, 
+       lines#60, use=opennt-nti, 
+
+opennt-100-nti|ntconsole-100-nti|OpenNT-term100-nti compatible with color, 
+       lines#100, use=opennt-nti, 
+
 ######## COMMON TERMINAL TYPES
 #
 # This section describes terminal classes and maker brands that are still
@@ -5460,9 +6035,7 @@ qvt203-25-w|QVT 203 PLUS with 25 by 132 columns,
 #      Fax: (408)-954-0623
 #
 #
-# There are some tvi terminals that require incredible amounts of padding and
-# some that don't.  I'm assuming tvi912 and tvi920 are the old slow ones, and
-# tvi912b, tvi912c, tvi920b, tvi920c are the new ones that don't need padding.
+# These require incredible amounts of padding.
 #
 # All of these terminals (912 to 970 and the tvipt) are discontinued.  Newer
 # Televideo terminals are ANSI and PC-ANSI compatible.
@@ -5613,22 +6186,132 @@ tvi912|tvi914|tvi920|old televideo 912/914/920,
        kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, 
        kf9=^AH\r, khome=^^, rmso=\Ek, rmul=\Em, smso=\Ej, smul=\El, 
        tbc=\E3, 
-# the 912 has a <funct> key that's like shift: <funct>8 xmits "^A8\r".
-# The 920 has this plus real function keys that xmit different things.
-# Terminfo makes you use the funct key on the 912 but the real keys on the 920.
-tvi912c|tvi912b|new televideo 912, 
-       dl1=\ER$<5*>, il1=\EE$<5*>, use=tvi912, 
-# set to page 1 when entering curses application (\E-17 )
-# reset to page 0 when exiting curses application (\E-07 )
-tvi912-2p|tvi920-2p|tvi-2p|televideo w/2 pages, 
-       rmcup=\E-07\s, smcup=\E-17\s, use=tvi912, 
 # We got some new tvi912c terminals that act really weird on the regular 
 # termcap, so one of our gurus worked this up. Seems that cursor 
 # addressing is broken.
 tvi912cc|tvi912 at cowell college, 
        cup@, use=tvi912c, 
 
-# Here are the switch settings for the tvi920c:
+# tvi{912,920}[bc] - TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C
+# From: Benjamin C. W. Sittler
+#
+# Someone has put a scanned copy of the manual online at:
+#     http://vt100.net/televideo/912b-om/
+#
+# These terminals were produced ca. 1979, and had a 12" monochrome
+# screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit
+# ASCII, and were generally similar to adm3a but with attributes
+# (including some with magic cookies), fancy half-duplex mode, and
+# different bugs.
+#
+# Some operations reqire truly incredible amounts of padding. The
+# insert_line (<il1>) and delete_line (<dl1>) operations in particular
+# are so slow as to be nearly unusable.
+#
+# There may or may not have been a separate, earlier series of 912/920
+# terminals (without the "B" and "C" suffix); I have never seen one,
+# and the manual only describes the "B" and "C" series. The 912 and 920
+# are quite distinct from the 914 and 924, which were much nicer non-
+# magic-cookie terminals similar to the 950.
+#
+# This is a new description for the following TeleVideo terminals,
+# distinguished chiefly by their keyboards:
+#
+#   TVI-912B - very odd layout, no function keys (84 keys)
+#   TVI-920B - typewriter layout, no function keys (103 keys)
+#   TVI-912C - very odd layout, function keys F1-F11 (82 keys)
+#   TVI-920C - typewriter layout, function keys F1-F11 (101 keys)
+#
+# To choose a setting for the TERM variable, start with the model:
+#
+#    Model  || base name
+# ----------||-----------
+#  TVI-912B || tvi912b
+#  TVI-912C || tvi912c
+#  TVI-920B || tvi920b
+#  TVI-920C || tvi920c
+#
+# Then add a suffix from the following table describing installed options
+# and how you'd like to use the terminal:
+#
+#   Use Video | Second | Visual |  Magic  |  Page || feature
+#  Attributes |  Page  |  Bell  | Cookies | Print || suffix
+# ------------|--------|--------|---------|-------||---------
+#      No     |   No   |  N/A   |   N/A   |   No  || -unk
+#      No     |   No   |  N/A   |   N/A   |  Yes  || -p
+#      No     |  Yes   |   No   |   N/A   |   No  || -2p-unk
+#      No     |  Yes   |   No   |   N/A   |  Yes  || -2p-p
+#      No     |  Yes   |  Yes   |   N/A   |   No  || -vb-unk
+#      No     |  Yes   |  Yes   |   N/A   |  Yes  || -vb-p
+#     Yes     |   No   |  N/A   |    No   |  N/A  ||
+#     Yes     |   No   |  N/A   |   Yes   |  N/A  || -mc
+#     Yes     |  Yes   |   No   |    No   |  N/A  || -2p
+#     Yes     |  Yes   |   No   |   Yes   |  N/A  || -2p-mc
+#     Yes     |  Yes   |  Yes   |    No   |  N/A  || -vb
+#     Yes     |  Yes   |  Yes   |   Yes   |  N/A  || -vb-mc
+#
+# So e.g. a model 920 C with second page memory option, visual bell
+# and no magic cookies would be tvi920c-vb; a model 912 B without the
+# second page memory option and using magic cookies would be
+# tvi912b-mc
+#
+# PADDING
+#
+# At 9600 baud, the terminal is prone to overflow its input buffer
+# during complex operations (insert/delete
+# character/line/screen/page), and it does not signal this over the
+# RS232 cable. The typical symptom of an overrun is that the terminal
+# starts beeping, and output becomes garbled.
+#
+# The padding delays in this terminfo were derived using tack(1)
+# running on a Linux box connected to a TVI-920C with a later-model
+# (A49C1-style) ROM running at 9600 baud, so your mileage may
+# vary. The numbers below seem to give the terminal enough time so
+# that it doesn't overflow its input buffer and start losing
+# characters.
+#
+# KEYS
+#
+# If you want to use the FUNCT key on a tvi912[bc], use the
+# corresponding tvi920[bc] terminfo with FUNCT + ... equivalents from
+# the following table (these also work on the 920 series):
+#
+# Unshifted Function Keys:
+#
+#  Key | capname|| Equivalent
+# -----|--------||------------
+#   F1 |  <kf1> || FUNCT + @
+#   F2 |  <kf2> || FUNCT + A
+#   F3 |  <kf3> || FUNCT + B
+#   F4 |  <kf4> || FUNCT + C
+#   F5 |  <kf5> || FUNCT + D
+#   F6 |  <kf6> || FUNCT + E
+#   F7 |  <kf7> || FUNCT + F
+#   F8 |  <kf8> || FUNCT + G
+#   F9 |  <kf9> || FUNCT + H
+#  F10 | <kf10> || FUNCT + I
+#  F11 | <kf11> || FUNCT + J
+#
+# Shifted Function Keys:
+#
+#  SHIFT + Key | capname|| Equivalent
+# -------------|--------||------------
+#   SHIFT + F1 | <kf12> || FUNCT + `
+#   SHIFT + F2 | <kf13> || FUNCT + a
+#   SHIFT + F3 | <kf14> || FUNCT + b
+#   SHIFT + F4 | <kf15> || FUNCT + c
+#   SHIFT + F5 | <kf16> || FUNCT + d
+#   SHIFT + F6 | <kf17> || FUNCT + e
+#   SHIFT + F7 | <kf18> || FUNCT + f
+#   SHIFT + F8 | <kf19> || FUNCT + g
+#   SHIFT + F9 | <kf20> || FUNCT + h
+#  SHIFT + F10 | <kf21> || FUNCT + i
+#  SHIFT + F11 | <kf22> || FUNCT + j
+#
+# PORTS AND SWITCH SETTINGS
+#
+# Here are the switch settings for the TVI-912B/TVI-920B and
+# TVI-912C/TVI-920C:
 #
 # S1 (Line), and S3 (Printer) baud rates -- put one, and only one, switch down:
 # 2: 9600      3: 4800         4: 2400         5: 1200
@@ -5680,10 +6363,223 @@ tvi912cc|tvi912 at cowell college,
 # S4/W34:      Selects Page Print Mode as initial condition.  If not 
 #              installed, Extension Mode is selected.
 #
-tvi920b|tvi920c|new televideo 920, 
-       dl1=\ER$<5*>, il1=\EE$<5*>, kf0=^AI\r, kf1=^A@\r, 
-       kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, 
-       kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, use=tvi912, 
+# NON-STANDARD CAPABILITIES
+#
+# Sending <u9> or <u7> returns a cursor position report in the format
+# YX\r, where Y and X are as in <cup>. This format is described in
+# <u8> and <u6>, but it's not clear how one should write an
+# appropriate scanf string, since we need to subtract %' ' from the
+# character after reading it. The <u9> capability is used by tack(1)
+# to synchronize during padding tests, and seems to work for that
+# purpose.
+#
+# This description also includes the obsolete termcap capabilities
+# has_hardware_tabs (<OTpt>) and backspaces_with_bs (<OTbs>).
+#
+# FEATURES NOT YET DESCRIBED IN THIS TERMINFO
+#
+# The FUNCT modifier actually works with every normal key by sending
+# ^AX\r, where X is the sequence normally sent by that key. This is a
+# sort of meta key not currently describable in terminfo.
+#
+# There are quite a few other keys (especially on the 920 models,) but
+# they are for the most part only useful in block mode.
+#
+# These terminals have lots of forms manipulation features, mainly
+# useful in block mode, including "clear X to nulls" (vs. "clear X to
+# spaces"; nulls are sentinels for "send X" operations); "send X"
+# operations for uploading all or part of the screen; and block-mode
+# editing keys (they don't send escape sequences, but manipulate video
+# memory directly). Block mode is used for local editing, and protect
+# mode (in conjunction with the "write protect" attribute,
+# a.k.a. half-intensity outside of protect mode) is used to control
+# which parts of the screen are edited/sent/printed (by <mc0>).
+#
+# There are at least two major families of ROM, "early" and
+# A49B1/A49C1; the major difference seems to be that the latter ROMs
+# support a few extra escape sequences for manipulating the off-screen
+# memory page, and for sending whole pages back to the host (mainly
+# useful in block mode.) The descriptions in this file don't use any
+# of those sequences: set cursor position including page (\E-PYX,
+# where P is \s for page 0 and ! for page 1 [actually only the LSB of
+# P is taken into account, so e.g. 0 and 1 work too,] and Y and X are
+# as in <cup>); read cursor position (\E/), which is analogous to <u9>
+# and returns PYX\r, where P is \s for page 0 or ! for page 1, and YX
+# are as in <cup>, and some "send page" features mainly useful for
+# forms manipulation.
+#
+# The keyboard enable (\E") and disable (\E#) sequences are unused,
+# except that a terminal reset (<is2>) enables the keyboard.
+#
+# Auto-flip mode (\Ev) is likely faster than the scrolling mode (\Ew)
+# enabled in <is2>, but auto-flip is very jarring so we don't use it.
+#
+# BUGS
+#
+# At least up to the A49B1 and A49C1 ROMs, there are no \Eb and \Ed
+# sequences (I infer that in some TeleVideo terminal they may invert
+# and uninvert the display) so the <flash> sequence given here is a
+# cheesy page-flip instead.
+#
+# The back_tab (<cbt>) sequence (\EI) doesn't work according to
+# tack(1), so it is not included in the descriptions below.
+#
+# It's not clear whether auto_left_margin (<bw>) flag should be set
+# for these terminals; tack says yes, so it is set here, but this
+# differs from other descriptions I've seen.
+#
+# Extension print mode (<mc5>) echoes all characters to the printer
+# port [in addition to displaying them] except for the page print mode
+# sequence (<mc4>); this is a slight violation of the terminfo
+# definition for <mc5> but I don't expect it to cause problems.  We
+# reset to page print mode in <rs1> since it may have been enabled
+# accidentally.
+#
+# The descriptions with plus signs (+) are building blocks.
+
+tvi912b-unk|tvi912c-unk|TeleVideo TVI-912B or TVI-912C (no attributes), 
+       OTbs, OTpt, am, bw, 
+       cols#80, it#8, lines#24, 
+       bel=^G, clear=\032$<50>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, 
+       cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=^K, dch1=\EW$<30>, 
+       dl1=\ER$<1*>$<100>, ed=\Ey$<2*>$<10>, el=\ET$<15>, 
+       home=^^, ht=^I, hts=\E1, ich1=\EQ$<30>, 
+       if=/usr/share/tabset/stdcrt, il1=\EE$<1*>$<100>, 
+       ind=\n$<10>, is2=\Ew\EA\E'\E"\E(, kcub1=^H, kcud1=^J, 
+       kcuf1=^L, kcuu1=^K, kdch1=\177, kent=^M, khome=^^, mc4=\EA, 
+       mc5=\E@, rs1=\Ek\010\Em\010\Eq\032, tbc=\E3, u6=%c%c\r, 
+       u7=\E?, u8=%c%c\r, u9=\E?, 
+
+# This isn't included in the basic capabilities because it is
+# typically unusable in combination with the full range of video
+# attributes, since the magic cookie attributes turn into ASCII
+# control characters, and the half-intensity ("protected") attribute
+# converts all affected characters to spaces.
+
+tvi912b+printer|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C page print support, 
+       mc0=\EP, 
+
+# This uses half-intensity mode (<dim>) for standout (<smso>), and
+# exposes no other attributes (half-intensity is the only attribute
+# that does not generate a magic cookie.)
+
+tvi912b+dim|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C half-intensity attribute support, 
+       msgr, 
+       dim=\E), rmso=\E(, sgr=\E%?%p1%p5%|%t)%e(%;, sgr0=\E(, 
+       smso=\E), 
+
+# Full magic-cookie attribute support, with half-intensity reverse
+# video for standout. Note that we add a space in the <dim> sequence
+# to give a consistent magic-cookie count. Also note that <sgr> uses
+# backspacing (in the TVI-supported order) to apply all requested
+# attributes with only a single magic cookie.
+
+tvi912b+mc|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C full magic-cookie attribute support, 
+       xmc#1, 
+       blink=\E\^, dim=\E)\s, invis=\E_, rev=\Ej, rmso=\E(\Ek, 
+       rmul=\Em, 
+       sgr=\E%?%p1%p5%|%t)%e(%; \010\E%?%p1%p3%|%tj%ek%;\010\E%?%p2%tl%em%;\010\E%?%p7%t_%e%?%p4%t\^%eq%;%;, 
+       sgr0=\E(\Ek\010\Em\010\Eq, smso=\E)\Ej, smul=\El, 
+
+# This uses the second page memory option to save & restore screen
+# contents. If your terminal is missing the option, this description
+# should still work, but that has not been tested.
+
+tvi912b+2p|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option support, 
+       flash=\EK$<100>\EK, rmcup=\032$<50>\EK\E=7\s, 
+       smcup=\EK\032$<50>\E(\Ek\010\Em\010\Eq\032$<50>, 
+
+# This simulates flashing by briefly toggling to the other page
+# (kludge!)
+
+tvi912b+vb|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option "visible bell" support, 
+       bel=\EK$<100>\EK, use=tvi912b+2p, 
+
+# Function keys (<kf12> .. <kf22> are shifted <kf1> .. <kf11>)
+
+tvi920b+fn|TeleVideo TVI-920B and TVI-920C function key support, 
+       kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^A`\r, kf13=^Aa\r, 
+       kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r, kf17=^Ae\r, kf18=^Af\r, 
+       kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r, kf21=^Ai\r, kf22=^Aj\r, 
+       kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, 
+       kf8=^AG\r, kf9=^AH\r, 
+
+# Combinations of the basic building blocks
+
+tvi912b-2p-unk|tvi912c-2p-unk|tvi912b-unk-2p|tvi912c-unk-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes), 
+       use=tvi912b+2p, use=tvi912b-unk, 
+
+tvi912b-vb-unk|tvi912c-vb-unk|tvi912b-unk-vb|tvi912c-unk-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes), 
+       use=tvi912b+vb, use=tvi912b-unk, 
+
+tvi912b-p|tvi912c-p|TeleVideo TVI-912B or TVI-912C (no attributes; page print), 
+       use=tvi912b+printer, use=tvi912b-unk, 
+
+tvi912b-2p-p|tvi912c-2p-p|tvi912b-p-2p|tvi912c-p-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes; page print), 
+       use=tvi912b+2p, use=tvi912b+printer, use=tvi912b-unk, 
+
+tvi912b-vb-p|tvi912c-vb-p|tvi912b-p-vb|tvi912c-p-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes; page print), 
+       use=tvi912b+vb, use=tvi912b+printer, use=tvi912b-unk, 
+
+tvi912b-2p|tvi912c-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; half-intensity attribute), 
+       use=tvi912b+2p, use=tvi912b+dim, use=tvi912b-unk, 
+
+tvi912b-2p-mc|tvi912c-2p-mc|tvi912b-mc-2p|tvi912c-mc-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; magic cookies), 
+       use=tvi912b+2p, use=tvi912b+mc, use=tvi912b-unk, 
+
+tvi912b-vb|tvi912c-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; half-intensity attribute), 
+       use=tvi912b+vb, use=tvi912b+dim, use=tvi912b-unk, 
+
+tvi912b-vb-mc|tvi912c-vb-mc|tvi912b-mc-vb|tvi912c-mc-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; magic cookies), 
+       use=tvi912b+vb, use=tvi912b+mc, use=tvi912b-unk, 
+
+tvi912b|tvi912c|TeleVideo TVI-912B or TVI-912C (half-intensity attribute), 
+       use=tvi912b+dim, use=tvi912b-unk, 
+
+tvi912b-mc|tvi912c-mc|TeleVideo TVI-912B or TVI-912C (magic cookies), 
+       use=tvi912b+mc, use=tvi912b-unk, 
+
+tvi920b-unk|tvi920c-unk|TeleVideo TVI-920B or TVI-920C (no attributes), 
+       use=tvi920b+fn, use=tvi912b-unk, 
+
+tvi920b-2p-unk|tvi920c-2p-unk|tvi920b-unk-2p|tvi920c-unk-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes), 
+       use=tvi920b+fn, use=tvi912b+2p, use=tvi912b-unk, 
+
+tvi920b-vb-unk|tvi920c-vb-unk|tvi920b-unk-vb|tvi920c-unk-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes), 
+       use=tvi920b+fn, use=tvi912b+vb, use=tvi912b-unk, 
+
+tvi920b-p|tvi920c-p|TeleVideo TVI-920B or TVI-920C (no attributes; page print), 
+       use=tvi920b+fn, use=tvi912b+printer, use=tvi912b-unk, 
+
+tvi920b-2p-p|tvi920c-2p-p|tvi920b-p-2p|tvi920c-p-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes; page print), 
+       use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+printer, 
+       use=tvi912b-unk, 
+
+tvi920b-vb-p|tvi920c-vb-p|tvi920b-p-vb|tvi920c-p-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes; page print), 
+       use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+printer, 
+       use=tvi912b-unk, 
+
+tvi920b-2p|tvi920c-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; half-intensity attribute), 
+       use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+dim, 
+       use=tvi912b-unk, 
+
+tvi920b-2p-mc|tvi920c-2p-mc|tvi920b-mc-2p|tvi920c-mc-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; magic cookies), 
+       use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+mc, 
+       use=tvi912b-unk, 
+
+tvi920b-vb|tvi920c-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; half-intensity attribute), 
+       use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+dim, 
+       use=tvi912b-unk, 
+
+tvi920b-vb-mc|tvi920c-vb-mc|tvi920b-mc-vb|tvi920c-mc-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; magic cookies), 
+       use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+mc, 
+       use=tvi912b-unk, 
+
+tvi920b|tvi920c|TeleVideo TVI-920B or TVI-920C (half-intensity attribute), 
+       use=tvi920b+fn, use=tvi912b+dim, use=tvi912b-unk, 
+
+tvi920b-mc|tvi920c-mc|TeleVideo TVI-920B or TVI-920C (magic cookies), 
+       use=tvi920b+fn, use=tvi912b+mc, use=tvi912b-unk, 
 
 # Televideo 921 and variants
 # From: Tim Theisen <tim@cs.wisc.edu> 22 Sept 1995
@@ -6939,9 +7835,8 @@ wy75|wyse75|wyse 75,
        ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>, 
        ind=\n$<2>, ip=$<1>, 
        is1=\E[2;4;20;30l\E[?1;10l\E[12h\E[?7;8;25h, 
-       is2=\E>\E(B\E)0\017, is3=\E[m, ka1=\EOw, ka3=\EOy, 
-       kb2=\EOu, kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\E[D, kcud1=\E[B, 
-       kcuf1=\E[C, kcuu1=\E[A, kdl1=\E[M, kel=\E[K, kent=\EOM, 
+       is2=\E>\E(B\E)0\017, is3=\E[m, kbs=^H, kcub1=\E[D, 
+       kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\E[M, kel=\E[K, 
        kf1=\E[?5i, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, 
        kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, 
        kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\E[?3i, 
@@ -6956,7 +7851,7 @@ wy75|wyse75|wyse 75,
        sgr=%?%p5%t\E[0t%;%?%p3%p1%|%t\E[1t%;%?%p2%t\E[2t%;%?%p4%t\E[3t%;%?%p1%p2%p3%p4%p5%|%|%|%|%t\E[7m%e\E[m%;%?%p9%t\016%e\017%;, 
        sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, 
        smkx=\E[?1l\E[?7h\E=, smso=\E[1t\E[7m, smul=\E[2t\E[4m, 
-       tbc=\E[3g, tsl=\E[>\,\001, 
+       tbc=\E[3g, tsl=\E[>\,\001, use=vt220+keypad, 
 #
 #      This terminal description uses the non-hidden attribute mode
 #      (with magic cookie).
@@ -7008,23 +7903,22 @@ wy85|wyse85|wyse 85,
        ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>, 
        ind=\n$<3>, invis=\E[8m, ip=$<3>, is1=\E[62;1"p\E[?5W, 
        is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h$<16>, 
-       is3=\E>\E(B\E)0\017\E[m, ka1=\EOw, ka3=\EOy, kb2=\EOu, 
-       kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\E[D, kcud1=\E[B, 
-       kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kent=\EOM, kf1=\EOP, 
-       kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, 
-       kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, 
-       kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, 
-       kf4=\EOS, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, 
-       kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, kich1=\E[2~, 
-       knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, 
-       lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, 
-       ri=\EM$<3>, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, 
-       rmso=\E[m, rmul=\E[m, rs1=\E[13l\E[3l\E!p, 
-       rs2=\E[35h\E[?3l$<70>, rs3=\E[?5l, sc=\E7, 
+       is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcub1=\E[D, kcud1=\E[B, 
+       kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf10=\E[21~, 
+       kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, 
+       kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, 
+       kf19=\E[33~, kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, 
+       kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, 
+       khome=\E[26~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, 
+       kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, 
+       mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM$<3>, 
+       rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, 
+       rmul=\E[m, rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<70>, 
+       rs3=\E[?5l, sc=\E7, 
        sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, 
        sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, 
        smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, 
-       tsl=\E[40h\E7\E[25;%i%p1%dH, 
+       tsl=\E[40h\E7\E[25;%i%p1%dH, use=vt220+keypad, 
 #
 #      Wyse 85 with visual bell.
 wy85-vb|wyse85-vb|wyse 85 with visible bell, 
@@ -7113,25 +8007,24 @@ wy185|wyse185|wyse 185,
        ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, il1=\E[L$<3>, 
        ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W, 
        is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h, 
-       is3=\E>\E(B\E)0\017\E[m, ka1=\EOw, ka3=\EOy, kb2=\EOu, 
-       kbs=^H, kc1=\EOq, kc3=\EOs, kcbt=\E[Z, kcub1=\E[D, 
-       kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kent=\EOM, 
-       kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, 
-       kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, 
-       kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, 
-       kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, kf7=\E[18~, 
-       kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, 
-       khome=\E[26~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, 
-       kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, 
-       mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM$<2>, 
-       rmacs=^O, rmam=\E[?7l, rmcup=\E[ R, rmir=\E[4l, rmkx=\E>, 
-       rmso=\E[27m, rmul=\E[24m, 
+       is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D, 
+       kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, 
+       kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, 
+       kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, 
+       kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, 
+       kf4=\EOS, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, 
+       kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, kich1=\E[2~, 
+       knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, 
+       lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, 
+       ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, rmcup=\E[ R, rmir=\E[4l, 
+       rmkx=\E>, rmso=\E[27m, rmul=\E[24m, 
        rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l, 
        rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7, 
        sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, 
        sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[ Q, 
        smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, 
        tbc=\E[3g, tsl=\E7\E[99;%i%p1%dH, vpa=\E[%i%p1%dd, 
+       use=vt220+keypad, 
 #
 #      Wyse 185 with 24 data lines and top status (terminal status)
 wy185-24|wyse185-24|wyse 185 with 24 data lines, 
@@ -7322,16 +8215,14 @@ wy370|wyse370|wy370-101k|Wyse 370 with 101 key keyboard,
 #      Function key set for the VT-320 (and wy85) compatible keyboard
 #
 wy370-105k|Wyse 370 with 105 key keyboard, 
-       ka1=\EOw, ka3=\EOy, kb2=\EOu, kbs=^H, kc1=\EOq, kc3=\EOs, 
-       kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, 
-       kdch1=\E[3~, kent=\EOM, kf1=\EOP, kf10=\E[21~, kf11=\E[23~, 
-       kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, 
-       kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, 
-       kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, 
-       kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, 
+       kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, 
+       kdch1=\E[3~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, 
+       kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, 
+       kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~, 
+       kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, 
        khlp=\E[28~, khome=\E[26~, kich1=\E[2~, knp=\E[6~, 
        kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, 
-       use=wy370-nk, 
+       use=wy370-nk, use=vt220+keypad, 
 #
 #      Function key set for the PC compatible keyboard
 #
@@ -7435,26 +8326,24 @@ wy520|wyse520|wyse 520,
        hts=\EH, ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, 
        il1=\E[L$<3>, ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W, 
        is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h, 
-       is3=\E>\E(B\E)0\017\E[m, ka1=\EOw, ka3=\EOu, kb2=\EOy, 
-       kbs=^H, kc1=\EOq, kc3=\EOs, kcbt=\E[Z, kcub1=\E[D, 
+       is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D, 
        kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, ked=\E[1~, 
-       kel=\E[4~, kent=\EOM, kf1=\EOP, kf10=\E[21~, kf11=\E[23~, 
+       kel=\E[4~, kent=\EOM, kf10=\E[21~, kf11=\E[23~, 
        kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, 
        kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, 
-       kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, 
-       kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, 
-       khlp=\E[28~, khome=\E[26~, kich1=\E[2~, knp=\E[6~, 
-       kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, 
-       mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, 
-       ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, rmcup=\E[ R, rmir=\E[4l, 
-       rmso=\E[m, rmul=\E[24m, 
+       kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, 
+       kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, 
+       kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, 
+       lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, 
+       rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, 
+       rmcup=\E[ R, rmir=\E[4l, rmso=\E[m, rmul=\E[24m, 
        rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l, 
        rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7, 
        sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, 
        sgr0=\E[m\017, smacs=^N, smam=\E[?7h, 
        smcup=\E[ Q\E[?67;8h, smir=\E[4h, smso=\E[7m, smul=\E[4m, 
        tbc=\E[3g, tsl=\E[2$~\E[1$}\E[%i%p1%d`, 
-       vpa=\E[%i%p1%dd, 
+       vpa=\E[%i%p1%dd, use=vt220+keypad, 
 #
 #       Wyse 520 with 24 data lines and status (terminal status)
 wy520-24|wyse520-24|wyse 520 with 24 data lines, 
@@ -7976,17 +8865,15 @@ v5410|att5410 in terms of a vt100,
        cup=\E[%i%p1%d;%p2%dH$<5>, cuu1=\E[A$<2>, dch1=\E[P, 
        dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, 
        enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ich1=\E[@, 
-       il1=\E[L, ind=^J, ka1=\EOq, ka3=\EOs, kb2=\EOr, kbs=^H, 
-       kc1=\EOp, kc3=\EOn, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, 
-       kcuu1=\EOA, kent=\EOM, kf0=\EOy, kf1=\EOP, kf10=\EOx, 
-       kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, kf6=\EOu, kf7=\EOv, 
-       kf8=\EOl, kf9=\EOw, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, 
-       rmacs=^O, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>, 
+       il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, 
+       kcuu1=\EOA, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, 
+       rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>, 
        rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, 
        sc=\E7, 
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, 
        sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, 
        smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, 
+       use=vt100+fnkeys, 
 
 # 
 # Teletype Model 5420 -- A souped up 5410, with multiple windows,
@@ -11380,16 +12267,14 @@ ts100|ts100-sp|falco ts100-sp,
        cuu1=\E[A$<2>, dch1=\E~W, dl1=\E~R, ed=\E[J$<50>, 
        el=\E[K$<3>, el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, 
        ht=^I, hts=\EH, ich1=\E~Q, il1=\E~E, ind=^J, is1=\E~)\E~ea, 
-       ka1=\EOq, ka3=\EOs, kb2=\EOr, kbs=^H, kc1=\EOp, kc3=\EOn, 
-       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, 
-       kf0=\EOy, kf1=\EOP, kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, 
-       kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, rc=\E8, 
-       rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, 
+       kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
+       rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, 
        rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, 
        rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, 
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, 
        sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, 
        smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, 
+       use=vt100+fnkeys, 
 ts100-ctxt|falco ts-100 saving context, 
        rmcup=\E~_b, smcup=\E~_d\E[2J, use=ts100, 
 
@@ -13192,19 +14077,17 @@ ncr260vt100an|NCR 2900_260 vt100 with ansi kybd,
        il1=\E[L$<5>, ind=\ED$<5>, indn=\E[%p1%dE$<5>, 
        invis=\E[8m, 
        is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, 
-       ka1=\EOw, ka3=\EOu, kb2=\EOy, kbs=^H, kc1=\EOq, kc3=\EOs, 
-       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
-       kdch1=\E[3~, kent=\EOM, kf1=\EOP, kf2=\EOQ, kf3=\EOR, 
-       kf4=\EOS, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, knp=\E[6~, 
-       kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, nel=\EE$<5>, rc=\E8, 
-       rev=\E[7m, ri=\EM$<5>, rmacs=^O, rmir=\E[4l, 
+       kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
+       kdch1=\E[3~, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, 
+       knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, nel=\EE$<5>, 
+       rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=^O, rmir=\E[4l, 
        rmkx=\E[?1l\E>, rmso=\E[0m, rmul=\E[0m, 
        rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, 
        sc=\E7, 
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>, 
        sgr0=\E[0m\017$<20>, smacs=^N, smir=\E[4h, 
        smkx=\E[?1h\E=, smso=\E[1;7m, smul=\E[4m, tbc=\E[3g, 
-       tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, 
+       tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, use=vt220+keypad, 
 ncr260vt100wan|NCR 2900_260 vt100 wide mode ansi kybd, 
        cols#132, 
        cup=\E[%i%p1%d;%p2%dH$<30>, 
@@ -13242,15 +14125,14 @@ ncr260vt200an|NCR 2900_260 vt200 with ansi kybd,
        ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>, 
        ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m, 
        is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, 
-       ka1=\EOw, ka3=\EOu, kb2=\EOy, kbs=^H, kc1=\EOq, kc3=\EOs, 
-       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
-       kdch1=\E[3~, kent=\EOM, kf0=\EOy, kf1=\EOP, kf10=\E[21~, 
-       kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, 
-       kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, 
-       kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf21=\E[31~, 
-       kf22=\E[32~, kf23=\E[33~, kf24=\E[34~, kf25=\E[35~, 
-       kf26=\E[1~, kf27=\E[2~, kf28=\E[3~, kf29=\E[4~, kf3=\EOR, 
-       kf30=\E[5~, kf31=\E[6~, kf32=\E[7~, kf33=\E[8~, kf34=\E[9~, 
+       kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
+       kdch1=\E[3~, kf0=\EOy, kf10=\E[21~, kf11=\E[23~, 
+       kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, 
+       kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, 
+       kf2=\EOQ, kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, 
+       kf23=\E[33~, kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, 
+       kf27=\E[2~, kf28=\E[3~, kf29=\E[4~, kf3=\EOR, kf30=\E[5~, 
+       kf31=\E[6~, kf32=\E[7~, kf33=\E[8~, kf34=\E[9~, 
        kf35=\E[10~, kf4=\EOS, kf5=\E[M, kf6=\E[17~, kf7=\E[18~, 
        kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, 
        kich1=\E[2~, knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, 
@@ -13263,6 +14145,7 @@ ncr260vt200an|NCR 2900_260 vt200 with ansi kybd,
        sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h, 
        smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, 
        tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, 
+       use=vt220+keypad, 
 ncr260vt200wan|NCR 2900_260 vt200 wide mode ansi kybd, 
        cols#132, 
        cup=\E[%i%p1%d;%p2%dH$<30>, 
@@ -13298,27 +14181,27 @@ ncr260vt300an|NCR 2900_260 vt300 with ansi kybd,
        ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>, 
        ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m, 
        is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, 
-       ka1=\EOw, ka3=\EOu, kb2=\EOy, kbs=^H, kc1=\EOq, kc3=\EOs, 
-       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
-       kdch1=\E[3~, kent=\EOM, kf0=\EOy, kf1=\EOP, kf10=\E[21~, 
-       kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, 
-       kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, 
-       kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf21=\E[31~, 
-       kf22=\E[32~, kf23=\E[33~, kf24=\E[34~, kf25=\E[35~, 
-       kf26=\E[1~, kf27=\E[2~, kf28=\E[3~, kf29=\E[4~, kf3=\EOR, 
-       kf30=\E[5~, kf31=\E[6~, kf32=\E[7~, kf33=\E[8~, kf34=\E[9~, 
-       kf35=\E[10~, kf4=\EOS, kf5=\E[M, kf6=\E[17~, kf7=\E[18~, 
-       kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, 
-       kich1=\E[2~, knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, 
-       mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, 
-       ri=\EM$<5>, rmacs=\017$<20>, rmam=\E[?7l, rmir=\E[4l, 
-       rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, 
+       kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
+       kdch1=\E[3~, kf0=\EOy, kf10=\E[21~, kf11=\E[23~, 
+       kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, 
+       kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, 
+       kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, kf23=\E[33~, 
+       kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, kf27=\E[2~, 
+       kf28=\E[3~, kf29=\E[4~, kf30=\E[5~, kf31=\E[6~, kf32=\E[7~, 
+       kf33=\E[8~, kf34=\E[9~, kf35=\E[10~, kf5=\E[M, kf6=\E[17~, 
+       kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, 
+       khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, 
+       krdo=\E[29~, kslt=\E[4~, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, 
+       nel=\EE, rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=\017$<20>, 
+       rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, 
+       rmul=\E[24m, 
        rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, 
        sc=\E7, 
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>, 
        sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h, 
        smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, 
        tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, 
+       use=vt220+keypad, 
 ncr260vt300wan|NCR 2900_260 vt300 wide mode ansi kybd, 
        cols#132, 
        cup=\E[%i%p1%d;%p2%dH$<30>, 
@@ -13406,7 +14289,7 @@ ncr260wy325wpp|NCR 2900_260 wyse 325 wide mode,
 #
 ncr260wy350pp|NCR 2900_260 wyse 350, 
        am, bw, hs, km, mc5i, mir, msgr, xon, 
-       colors#16, cols#80, lines#24, ncv#33, nlab#32, xmc#1, 
+       colors#16, cols#80, lines#24, ncv#33, nlab#32, pairs#16, xmc#1, 
        acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, 
        cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, 
        cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, 
@@ -14005,17 +14888,15 @@ tek4105-30|4015 emulating 30 line vt100,
        cuf=\E[%p1%dC, cuf1=\E[C$<2>, 
        cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, 
        cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, 
-       enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, ka1=\EOq, 
-       ka3=\EOs, kb2=\EOr, kbs=^H, kc1=\EOp, kc3=\EOn, kcub1=\EOD, 
-       kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, kf0=\EOy, 
-       kf1=\EOP, kf10=\EOx, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, 
-       kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, rc=\E8, 
+       enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, 
+       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8, 
        rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, 
        rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, 
        rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, 
        sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, 
        sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, 
        smso=\E[1;7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, 
+       use=vt100+fnkeys, 
 
 # Tektronix 4105 from BRL
 # The following setup modes are assumed for normal operation:
@@ -14831,15 +15712,14 @@ nsterm+7|AppKit Terminal.app v41+ basic capabilities w/ASCII charset,
        cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, 
        dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, 
        home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, 
-       ka1=\EOq, ka3=\EOs, kb2=\EOr, kbs=\177, kc1=\EOp, kc3=\EOn, 
-       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, 
-       kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, rev=\E[7m, 
-       ri=\EM, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, 
+       kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
+       kent=\EOM, rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, 
+       rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, 
        rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, 
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m, 
        sgr0=\E[m\017, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, 
        smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, 
-       u8=\E[?1;2c, u9=\E[c, 
+       u8=\E[?1;2c, u9=\E[c, use=vt100+pfkeys, 
 
 nsterm+acs|AppKit Terminal.app v41+ basic capabilities w/VT100 alternate-charset, 
        acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, 
@@ -15026,14 +15906,14 @@ xnuppc+basic|Darwin PowerPC Console basic capabilities,
        cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, 
        cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, 
        cuu=\E[%p1%dA, cuu1=\E[A, dsl=\E]2;\007, ed=\E[J, el=\E[K, 
-       el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ind=^J, ka1=\EOq
-       ka3=\EOs, kb2=\EOr, kbs=\177, kc1=\EOp, kc3=\EOn, kcub1=\EOD
-       kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8, rev=\E[7m, 
-       ri=\EM, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m
-       rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, 
+       el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=\177
+       kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8
+       rev=\E[7m, ri=\EM, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, 
+       rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h
+       sc=\E7, 
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, 
        sgr0=\E[m\017, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, 
-       smul=\E[4m, tbc=\E[3g, 
+       smul=\E[4m, tbc=\E[3g, use=vt100+keypad, 
 
 xnuppc+c|Darwin PowerPC Console ANSI color support, 
        colors#8, ncv#32, pairs#64, 
@@ -17642,7 +18522,7 @@ masscomp2|masscomp large screen version 2,
 # respectively, to be able to restore them when color changes
 # (because any color change turns off ALL attributes)
 # 3. <bold> and <rev> sequences alternate modes,
-# rather then simply  entering them.  Thus we have to check the
+# rather than simply  entering them.  Thus we have to check the
 # static register B and H to determine the status, before sending the 
 # escape sequence.
 # 4. <sgr0> now must set the status of all 3 register (A,B,H) to zero
@@ -17744,15 +18624,12 @@ xtalk|IBM PC with xtalk communication program (versions up to 3.4),
        cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, 
        cuu1=\E[A$<2>, dl1=\E[M$<99>, ed=\E[J$<50>, el=\E[K$<3>, 
        el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, 
-       il1=\E[L$<99>, ind=^J, ka1=\EOq, ka3=\EOs, kb2=\EOr, kbs=^H, 
-       kc1=\EOp, kc3=\EOn, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, 
-       kcuu1=\EOA, kent=\EOM, kf0=\EOy, kf1=\EOP, kf10=\EOx, 
-       kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOt, kf6=\EOu, kf7=\EOv, 
-       kf8=\EOl, kf9=\EOw, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, 
+       il1=\E[L$<99>, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, 
+       kcuf1=\EOC, kcuu1=\EOA, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, 
        rmkx=\E[?1l\E>, rmso=\E[m\s, 
        rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sgr0=\E[m, 
        smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m\s, 
-       tbc=\E[3g, 
+       tbc=\E[3g, use=vt100+fnkeys, 
 
 # The official PC terminal emulator program of the AT&T Product Centers.
 # Note - insert mode commented out - doesn't seem to work on AT&T PC.
@@ -18325,12 +19202,12 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 # (T) ECMA-48 calls this "Partial Line Forward" but retains the PLD
 # abbreviation.
 #
-# (U) ECMA-48 calls this "Partial Line Backward" but retains the PLD
+# (U) ECMA-48 calls this "Partial Line Backward" but retains the PLU
 # abbreviation.
 #
 # (V) ECMA-48 calls this "Reverse Line Feed" but retains the RI abbreviation.
 #
-# (W) RM/SM modes are as follows: 1 = Guarder Area Transfer Mode (GATM), 
+# (W) RM/SM modes are as follows: 1 = Guarded Area Transfer Mode (GATM), 
 # 2 = Keyboard Action Mode (KAM), 3 = Control Representation Mode (CRM), 
 # 4 = Insertion Replacement Mode, 5 = Status Report Transfer Mode (SRTM),
 # 6 = Erasure Mode (ERM), 7 = Line Editing Mode (LEM), 8 = Bi-Directional
@@ -19536,9 +20413,70 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 #      * scaled the linux-c terminfo entry to match linux-c-nc, i.e., the
 #        r/g/b parameters of initc are in the range 0 to 1000 -TD
 #
-# 2002-1005
+# 2002-10-05
 #      * minor fix for scale-factor of linux-c and linux-c-nc -TD
 #
+# 2002-11-09
+#      * split-out vt100+keypad and vt220+keypad, fix interchanged ka3/kb2
+#        in the latter -TD
+#
+# 2002-11-16
+#      * add entries for mterm (mterm, mterm-ansi, decansi) -TD
+#      * ncr260wy350pp has only 16 color pairs -TD
+#      * add sun-type4 from NetBSD -TD
+#      * update xterm-xfree86 to current (patch 170) -TD
+#      * add screen-bce, screen-s entries -TD
+#      * add xterm-1002, xterm-1003 entries -TD
+#
+# 2003-01-11
+#      * update homepage for Top Gun Telnet/SSH
+#
+# 2003-01-25
+#      * reduce duplication in emx entries, added emx-base -TD
+#
+# 2003-05-24
+#      * corrected acs for screen.teraterm -TD
+#      * add tkterm entry -TD
+#
+# 2003-07-15
+#      * cygwin changes from Charles Wilson:
+#        misc/terminfo.src (nxterm|xterm-color): make xterm-color
+#        primary instead of nxterm, to match XFree86's xterm.terminfo
+#        usage and to prevent circular links.
+#        (rxvt): add additional codes from rxvt.org.
+#        (rxvt-color): new alias
+#        (rxvt-xpm): new alias
+#        (rxvt-cygwin): like rxvt, but with special acsc codes.
+#        (rxvt-cygwin-native): ditto.  rxvt may be run under XWindows, or
+#        with a "native" MSWin GUI.  Each takes different acsc codes,
+#        which are both different from the "normal" rxvt's acsc.
+#        (cygwin): cygwin-in-cmd.exe window.  Lots of fixes.
+#        (cygwinDBG): ditto.
+#
+# 2003-09-27
+#      * update gnome terminal entries -TD
+#
+# 2003-10-04
+#      * add entries for djgpp 2.03 and 2.04 -TD
+#
+# 2003-10-25
+#      * add alias for vtnt -TD
+#      * update xterm-xfree86 for XFree86 4.4 -TD
+#
+# 2003-11-22
+#      * add linux-vt (Andrey V Lukyanov)
+#
+# 2003-12-20
+#      * add screen.linux -TD
+#
+# 2004-01-10
+#      * revised/improved entries for tvi912b, tvi920b (Benjamin Sittler)
+#
+# 2004-01-17
+#      * add OpenNT/Interix/SFU entries (Federico Bianchi)
+#      * add vt100+ and vt-utf8 entries -TD
+#      * add uwin entry -TD
+#
 # The following sets edit modes for GNU EMACS.
 # Local Variables:
 # fill-prefix:"\t"
index bbd7c40efa561d55ad7580a8d0ffe0e974d442aa..8ce72f5c6bdf31ea67f7fd3fe2a044b6ad82a8ab 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: mk-1st.awk,v 1.55 2002/04/20 17:32:47 tom Exp $
+# $Id: mk-1st.awk,v 1.62 2004/01/10 20:48:43 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,2000,2002 Free Software Foundation, Inc.                #
+# Copyright (c) 1998-2003,2004 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"), #
@@ -27,7 +27,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997,2000
+# Author: Thomas E. Dickey
 #
 # Generate list of objects for a given model library
 # Variables:
@@ -38,7 +38,7 @@
 #      MODEL (e.g., "DEBUG", uppercase; toupper is not portable)
 #      depend (optional dependencies for all objects, e.g, ncurses_cfg.h)
 #      subset ("none", "base", "base+ext_funcs" or "termlib")
-#      target (cross-compile target, if any)
+#      host (cross-compile host, if any)
 #      ShlibVer ("rel", "abi" or "auto", to augment DoLinks variable)
 #      ShlibVerInfix ("yes" or "no", determines location of version #)
 #      DoLinks ("yes", "reverse" or "no", flag to add symbolic links)
@@ -110,12 +110,12 @@ BEGIN     {
                        if (using == 0) {
                                if (found == 0) {
                                        print  ""
-                                       print  "# generated by mk-1st.awk"
+                                       printf "# generated by mk-1st.awk (subset=%s)\n", subset
                                        print  ""
                                }
                                using = 1
                        }
-                       if ( subset == "termlib") {
+                       if ( subset == "termlib" || subset == "termlib+ext_tinfo" ) {
                                name  = "tinfo"
                                OBJS  = MODEL "_T"
                        } else {
@@ -146,7 +146,7 @@ BEGIN       {
                                else
                                        found = 2
                        }
-                       printf " \\\n\t../%s/%s.o", model, $1
+                       printf " \\\n\t../%s/%s$o", model, $1
                }
        }
 END    {
@@ -162,8 +162,8 @@ END {
                        if ( MODEL == "SHARED" )
                        {
                                if (ShlibVerInfix == "cygdll") {
-                                       abi_name = sprintf("%s%s$(ABI_VERSION)%s", prefix, name, suffix);
-                                       rel_name = sprintf("%s%s$(REL_VERSION)%s", prefix, name, suffix);
+                                       abi_name = sprintf("%s%s$(ABI_VERSION)%s", "cyg", name, suffix);
+                                       rel_name = sprintf("%s%s$(REL_VERSION)%s", "cyg", name, suffix);
                                        imp_name = sprintf("%s%s%s.a", prefix, name, suffix);
                                } else if (ShlibVerInfix == "yes") {
                                        abi_name = sprintf("%s%s.$(ABI_VERSION)%s", prefix, name, suffix);
@@ -193,8 +193,8 @@ END {
                                        printf "../lib/%s : $(%s_OBJS)\n", end_name, OBJS
                                        print "\t-@rm -f $@";
                                }
-                               if ( subset == "termlib") {
-                                       printf "\t$(MK_SHARED_LIB) $(%s_OBJS) $(TINFO_LIST)\n", OBJS
+                               if ( subset == "termlib" || subset == "termlib+ext_tinfo" ) {
+                                       printf "\t$(MK_SHARED_LIB) $(%s_OBJS) $(TINFO_LIST) $(LDFLAGS)\n", OBJS
                                } else {
                                        printf "\t$(MK_SHARED_LIB) $(%s_OBJS) $(SHLIB_LIST) $(LDFLAGS)\n", OBJS
                                }
@@ -233,9 +233,15 @@ END        {
 
                                if ( overwrite == "yes" && name == "ncurses" )
                                {
-                                       ovr_name = sprintf("libcurses%s", suffix)
-                                       printf "\t@echo linking %s to %s\n", end_name, ovr_name
-                                       printf "\tcd $(DESTDIR)$(libdir) && (rm -f %s; $(LN_S) %s %s; )\n", ovr_name, end_name, ovr_name
+                                       if ( ShlibVer == "cygdll" ) {
+                                               ovr_name = sprintf("libcurses%s.a", suffix)
+                                               printf "\t@echo linking %s to %s\n", imp_name, ovr_name
+                                               printf "\tcd $(DESTDIR)$(libdir) && (rm -f %s; $(LN_S) %s %s; )\n", ovr_name, imp_name, ovr_name
+                                       } else {
+                                               ovr_name = sprintf("libcurses%s", suffix)
+                                               printf "\t@echo linking %s to %s\n", end_name, ovr_name
+                                               printf "\tcd $(DESTDIR)$(libdir) && (rm -f %s; $(LN_S) %s %s; )\n", ovr_name, end_name, ovr_name
+                                       }
                                }
                                if ( ldconfig != "" ) {
                                        printf "\t- test -z \"$(DESTDIR)\" && %s\n", ldconfig
@@ -257,7 +263,11 @@ END        {
                                        removelinks("$(DESTDIR)$(libdir)")
                                        if ( overwrite == "yes" && name == "ncurses" )
                                        {
-                                               ovr_name = sprintf("libcurses%s", suffix)
+                                               if ( ShlibVer == "cygdll" ) {
+                                                       ovr_name = sprintf("libcurses%s.a", suffix)
+                                               } else {
+                                                       ovr_name = sprintf("libcurses%s", suffix)
+                                               }
                                                printf "\t-@rm -f $(DESTDIR)$(libdir)/%s\n", ovr_name
                                        }
                                }
@@ -277,19 +287,19 @@ END       {
                                }
                                end_name = lib_name;
                                printf "../lib/%s : $(%s_OBJS)\n", lib_name, OBJS
-                               printf "\tcd ../lib && $(LIBTOOL) $(%s) -o %s $(%s_OBJS:.o=.lo) -rpath $(DESTDIR)$(libdir) -version-info $(NCURSES_MAJOR):$(NCURSES_MINOR)\n", compile, lib_name, OBJS
+                               printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) -version-info $(NCURSES_MAJOR):$(NCURSES_MINOR) $(SHLIB_LIST)\n", compile, lib_name, OBJS
                                print  ""
                                print  "install \\"
                                print  "install.libs \\"
                                printf "install.%s :: $(DESTDIR)$(libdir) ../lib/%s\n", name, lib_name
                                printf "\t@echo installing ../lib/%s as $(DESTDIR)$(libdir)/%s\n", lib_name, lib_name
-                               printf "\tcd ../lib; $(LIBTOOL) $(INSTALL_DATA) %s $(DESTDIR)$(libdir)\n", lib_name
+                               printf "\tcd ../lib; $(LIBTOOL_INSTALL) $(INSTALL) %s $(DESTDIR)$(libdir)\n", lib_name
                                print  ""
                                print  "uninstall \\"
                                print  "uninstall.libs \\"
                                printf "uninstall.%s ::\n", name
                                printf "\t@echo uninstalling $(DESTDIR)$(libdir)/%s\n", lib_name
-                               printf "\t-@$(LIBTOOL) rm -f $(DESTDIR)$(libdir)/%s\n", lib_name
+                               printf "\t-@$(LIBTOOL_CLEAN) rm -f $(DESTDIR)$(libdir)/%s\n", lib_name
                        }
                        else
                        {
@@ -297,9 +307,9 @@ END {
                                printf "../lib/%s : $(%s_OBJS)\n", lib_name, OBJS
                                printf "\t$(AR) $(AR_OPTS) $@ $?\n"
                                printf "\t$(RANLIB) $@\n"
-                               if ( target == "vxworks" )
+                               if ( host == "vxworks" )
                                {
-                                       printf "\t$(LD) $(LD_OPTS) $? -o $(@:.a=.o)\n"
+                                       printf "\t$(LD) $(LD_OPTS) $? -o $(@:.a=$o)\n"
                                }
                                print  ""
                                print  "install \\"
@@ -314,10 +324,10 @@ END       {
                                        printf "\t(cd $(DESTDIR)$(libdir) && $(LN_S) libncurses.a libcurses.a)\n"
                                }
                                printf "\t$(RANLIB) $(DESTDIR)$(libdir)/%s\n", lib_name
-                               if ( target == "vxworks" )
+                               if ( host == "vxworks" )
                                {
-                                       printf "\t@echo installing ../lib/lib%s.o as $(DESTDIR)$(libdir)/lib%s.o\n", name, name
-                                       printf "\t$(INSTALL_DATA) ../lib/lib%s.o $(DESTDIR)$(libdir)/lib%s.o\n", name, name
+                                       printf "\t@echo installing ../lib/lib%s$o as $(DESTDIR)$(libdir)/lib%s$o\n", name, name
+                                       printf "\t$(INSTALL_DATA) ../lib/lib%s$o $(DESTDIR)$(libdir)/lib%s$o\n", name, name
                                }
                                print  ""
                                print  "uninstall \\"
@@ -330,10 +340,10 @@ END       {
                                        printf "\t@echo linking libcurses.a to libncurses.a\n"
                                        printf "\t-@rm -f $(DESTDIR)$(libdir)/libcurses.a\n"
                                }
-                               if ( target == "vxworks" )
+                               if ( host == "vxworks" )
                                {
-                                       printf "\t@echo uninstalling $(DESTDIR)$(libdir)/lib%s.o\n", name
-                                       printf "\t-@rm -f $(DESTDIR)$(libdir)/lib%s.o\n", name
+                                       printf "\t@echo uninstalling $(DESTDIR)$(libdir)/lib%s$o\n", name
+                                       printf "\t-@rm -f $(DESTDIR)$(libdir)/lib%s$o\n", name
                                }
                        }
                        print ""
@@ -343,7 +353,7 @@ END {
                        print "mostlyclean::"
                        printf "\t-rm -f $(%s_OBJS)\n", OBJS
                        if ( MODEL == "LIBTOOL" ) {
-                               printf "\t-rm -f $(%s_OBJS:.o=.lo)\n", OBJS
+                               printf "\t-$(LIBTOOL_CLEAN) rm -f $(%s_OBJS:$o=.lo)\n", OBJS
                        }
                }
                else if ( found == 2 )
@@ -352,13 +362,13 @@ END       {
                        print "mostlyclean::"
                        printf "\t-rm -f $(%s_OBJS)\n", OBJS
                        if ( MODEL == "LIBTOOL" ) {
-                               printf "\t-rm -f $(%s_OBJS:.o=.lo)\n", OBJS
+                               printf "\t-$(LIBTOOL_CLEAN) rm -f $(%s_OBJS:$o=.lo)\n", OBJS
                        }
                        print ""
                        print "clean ::"
                        printf "\t-rm -f $(%s_OBJS)\n", OBJS
                        if ( MODEL == "LIBTOOL" ) {
-                               printf "\t-rm -f $(%s_OBJS:.o=.lo)\n", OBJS
+                               printf "\t-$(LIBTOOL_CLEAN) rm -f $(%s_OBJS:$o=.lo)\n", OBJS
                        }
                }
        }
index 45def01202e390093790645cc01c34f0a6d0fc5d..629b1697a2e88dbf84147f8d2f8f606b856dd18f 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: mk-2nd.awk,v 1.13 2000/10/14 17:57:02 Johnny.C.Lam Exp $
+# $Id: mk-2nd.awk,v 1.15 2003/11/01 22:42:50 tom Exp $
 ##############################################################################
-# Copyright (c) 1998 Free Software Foundation, Inc.                          #
+# Copyright (c) 1998-2000,2003 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"), #
@@ -27,7 +27,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997
+# Author: Thomas E. Dickey
 #
 # Generate compile-rules for the modules that we are using in libraries or
 # programs.  We are listing them explicitly because we have turned off the
@@ -87,7 +87,7 @@ BEGIN {
                                        compile="CC"
                                        suffix=".c"
                                }
-                               printf "../%s/%s.o :\t%s/%s%s", model, $1, $3, $1, suffix
+                               printf "../%s/%s$o :\t%s/%s%s", model, $1, $3, $1, suffix
                                for (n = 4; n <= NF; n++) printf " \\\n\t\t\t%s", $n
                                print  ""
                                if ( echo == "yes" )
@@ -100,9 +100,9 @@ BEGIN       {
                                        dir = $3 "/"
                                        sub("^\\$\\(srcdir\\)/","",dir);
                                        sub("^\\./","",dir);
-                                       printf "\t%scd ../%s; $(LIBTOOL) $(%s) $(CFLAGS_%s) -c ../%s/%s%s%s", atsign, model, compile, MODEL, name, dir, $1, suffix
+                                       printf "\t%scd ../%s; $(LIBTOOL_COMPILE) $(%s) $(CFLAGS_%s) -c ../%s/%s%s%s", atsign, model, compile, MODEL, name, dir, $1, suffix
                                } else
-                                       printf "\t%scd ../%s; $(LIBTOOL) $(%s) $(CFLAGS_%s) -c %s/%s%s", atsign, model, compile, MODEL, $3, $1, suffix
+                                       printf "\t%scd ../%s; $(LIBTOOL_COMPILE) $(%s) $(CFLAGS_%s) -c %s/%s%s", atsign, model, compile, MODEL, $3, $1, suffix
                        } else {
                                printf "%s", $1
                                for (n = 2; n <= NF; n++) printf " %s", $n
index bbc7622c29b53da77ad3d80bbf2194b3f0296046..5b009107d29d1282c7da2579ca466dc937f82256 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.84 2002/06/29 22:36:25 tom Exp $
+# $Id: Makefile.in,v 1.91 2003/11/01 22:48:53 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,1999,2000,2001,2002 Free Software Foundation, Inc.      #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -27,7 +27,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey 1996-2001
+# Author: Thomas E. Dickey 1996-2002
 #
 # Makefile for ncurses source code.
 #
 SHELL          = /bin/sh
 THIS           = Makefile
 
-x              = @PROG_EXT@
-
 CF_MFLAGS      = @cf_cv_makeflags@
 @SET_MAKE@
 
+x              = @EXEEXT@
+o              = .@OBJEXT@
+
 MODEL          = @DFT_LWR_MODEL@
 DESTDIR                = @DESTDIR@
 top_srcdir     = @top_srcdir@
@@ -65,6 +66,11 @@ includedir   = @includedir@
 datadir                = @datadir@
 
 LIBTOOL                = @LIBTOOL@
+LIBTOOL_CLEAN  = @LIB_CLEAN@
+LIBTOOL_COMPILE        = @LIB_COMPILE@
+LIBTOOL_LINK   = @LIB_LINK@
+LIBTOOL_INSTALL        = @LIB_INSTALL@
+LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
 
 INSTALL                = @INSTALL@
 INSTALL_LIB    = @INSTALL@ @INSTALL_LIB@
@@ -86,10 +92,16 @@ CPPFLAGS    = -DHAVE_CONFIG_H -I../ncurses -I$(srcdir) @CPPFLAGS@
 
 CCFLAGS                = $(CPPFLAGS) $(CFLAGS)
 
-HOSTCC         = @BUILD_CC@
-HOSTCCFLAGS    = -DHAVE_CONFIG_H -I../ncurses -I$(srcdir) @BUILD_CFLAGS@ @BUILD_CPPFLAGS@
-HOSTLDFLAGS    = @BUILD_LDFLAGS@
-HOSTLIBS       = @BUILD_LIBS@
+BUILD_CC       = @BUILD_CC@
+BUILD_CCFLAGS  = -DHAVE_CONFIG_H -I../ncurses -I$(srcdir) @BUILD_CPPFLAGS@ @BUILD_CFLAGS@
+BUILD_LDFLAGS  = @BUILD_LDFLAGS@
+BUILD_LIBS     = @BUILD_LIBS@
+
+# The executables built in this directory are used for generating source that
+# is compiled into the build, or are test-programs that are not installed.
+
+BUILD_EXEEXT   = @BUILD_EXEEXT@
+x              = @PROG_EXT@
 
 CFLAGS_LIBTOOL = $(CCFLAGS)
 CFLAGS_NORMAL  = $(CCFLAGS)
@@ -113,7 +125,7 @@ NCURSES_MINOR       = @NCURSES_MINOR@
 REL_VERSION    = @cf_cv_rel_version@
 ABI_VERSION    = @cf_cv_abi_version@
 
-RANLIB         = @RANLIB@
+RANLIB         = @LIB_PREP@
 
 IMPORT_LIB     = @IMPORT_LIB@
 SHARED_LIB     = @SHARED_LIB@
@@ -180,27 +192,27 @@ lib_gen.c : $(base)/MKlib_gen.sh ../include/curses.h
        sh $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" generated <../include/curses.h | \
                fgrep undef >$@
 
-init_keytry.h: make_keys$x keys.list
+init_keytry.h: make_keys$(BUILD_EXEEXT) keys.list
        ./make_keys keys.list > $@
 
 keys.list :    $(tinfo)/MKkeys_list.sh
        AWK=$(AWK) sh $(tinfo)/MKkeys_list.sh $(TERMINFO_CAPS) | sort >$@
 
-make_keys$x : \
+make_keys$(BUILD_EXEEXT) : \
                $(tinfo)/make_keys.c \
                names.c
-       $(HOSTCC) -o $@ $(HOSTCCFLAGS) $(tinfo)/make_keys.c $(HOSTLDFLAGS) $(HOSTLIBS)
+       $(BUILD_CC) -o $@ $(BUILD_CCFLAGS) $(tinfo)/make_keys.c $(BUILD_LDFLAGS) $(BUILD_LIBS)
 
-make_hash$x : \
+make_hash$(BUILD_EXEEXT) : \
                $(tinfo)/comp_hash.c \
                ../include/hashsize.h
-       $(HOSTCC) -o $@ $(HOSTCCFLAGS) -DMAIN_PROGRAM $(tinfo)/comp_hash.c $(HOSTLDFLAGS) $(HOSTLIBS)
+       $(BUILD_CC) -o $@ $(BUILD_CCFLAGS) -DMAIN_PROGRAM $(tinfo)/comp_hash.c $(BUILD_LDFLAGS) $(BUILD_LIBS)
 
 expanded.c : $(serial)/MKexpanded.sh
        sh $(serial)/MKexpanded.sh "$(CPP)" $(CPPFLAGS) > $@
 
 comp_captab.c: \
-               make_hash$x \
+               make_hash$(BUILD_EXEEXT) \
                ../include/hashsize.h \
                $(tinfo)/MKcaptab.awk
        sh $(tinfo)/MKcaptab.awk $(AWK) $(srcdir)/../include/@TERMINFO_CAPS@ > $@
@@ -229,8 +241,8 @@ mostlyclean ::
 
 clean :: mostlyclean
        -rm -f $(AUTO_SRC)
-       -rm -f make_keys$x
-       -rm -f make_hash$x
+       -rm -f make_keys$(BUILD_EXEEXT)
+       -rm -f make_hash$(BUILD_EXEEXT)
        -rm -rf .libs
 
 distclean :: clean
@@ -260,15 +272,15 @@ hashmap$x : $(serial)/hashmap.c $(TEST_DEPS)
        @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) -DHASHDEBUG $(serial)/hashmap.c $(TEST_LDFLAGS)
 
 lib_mvcur$x : $(serial)/lib_mvcur.c $(TEST_DEPS) \
-               ../@DFT_OBJ_SUBDIR@/dump_entry.o
-       @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) -DNCURSES_TEST -I$(serial)/../../progs $(serial)/lib_mvcur.c ../@DFT_OBJ_SUBDIR@/dump_entry.o $(TEST_LDFLAGS)
+               ../@DFT_OBJ_SUBDIR@/dump_entry$o
+       @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) -DNCURSES_TEST -I$(serial)/../../progs $(serial)/lib_mvcur.c ../@DFT_OBJ_SUBDIR@/dump_entry$o $(TEST_LDFLAGS)
 
 link_test$x : link_test.c $(TEST_DEPS) \
-               ../@DFT_OBJ_SUBDIR@/link_test.o
-       @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) ../@DFT_OBJ_SUBDIR@/link_test.o $(TEST_LDFLAGS)
+               ../@DFT_OBJ_SUBDIR@/link_test$o
+       @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) ../@DFT_OBJ_SUBDIR@/link_test$o $(TEST_LDFLAGS)
 
-../@DFT_OBJ_SUBDIR@/dump_entry.o:
-       cd ../progs && $(MAKE) ../@DFT_OBJ_SUBDIR@/dump_entry.o
+../@DFT_OBJ_SUBDIR@/dump_entry$o:
+       cd ../progs && $(MAKE) ../@DFT_OBJ_SUBDIR@/dump_entry$o
 
 ###############################################################################
 # The remainder of this file is automatically generated during configuration
index 53d12bfd42bc6f0c5ab3fd9ee7d19992ecafe0af..150fc42b05a9a86c90a9095dcb1436bc2cd4ac0a 100644 (file)
@@ -32,7 +32,7 @@
  ****************************************************************************/
 
 /*
- * $Id: SigAction.h,v 1.6 2000/12/10 02:36:10 tom Exp $
+ * $Id: SigAction.h,v 1.7 2003/12/07 01:00:03 tom Exp $
  *
  * This file exists to handle non-POSIX systems which don't have <unistd.h>,
  * and usually no sigaction() nor <termios.h>
@@ -105,12 +105,8 @@ typedef unsigned long sigset_t;
 #undef  sigaddset
 #define sigaddset   _nc_sigaddset
 
-extern NCURSES_EXPORT(int) sigaction (int sig, sigaction_t * sigact, sigaction_t *  osigact);
-extern NCURSES_EXPORT(int) sigprocmask (int how, sigset_t *mask, sigset_t *omask);
-extern NCURSES_EXPORT(int) sigemptyset (sigset_t *mask);
-extern NCURSES_EXPORT(int) sigsuspend (sigset_t *mask);
-extern NCURSES_EXPORT(int) sigdelset (sigset_t *mask, int sig);
-extern NCURSES_EXPORT(int) sigaddset (sigset_t *mask, int sig);
+/* tty/lib_tstp.c is the only user */
+#include <base/sigaction.c>
 
 #endif /* HAVE_SIGVEC */
 #endif /* HAVE_SIGACTION */
index 7dcef086d7103cfdaf120dcbc7c6b69515bfaaad..583a349b6bf4f798eb6379f618ba66ea19f1fd61 100755 (executable)
@@ -2,10 +2,10 @@
 #
 # MKlib_gen.sh -- generate sources from curses.h macro definitions
 #
-# ($Id: MKlib_gen.sh,v 1.20 2002/09/28 15:02:11 tom Exp $)
+# ($Id: MKlib_gen.sh,v 1.23 2004/02/07 13:31:35 tom Exp $)
 #
 ##############################################################################
-# Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.                #
+# Copyright (c) 1998-2003,2004 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"), #
@@ -82,19 +82,19 @@ if test "$USE" = implemented ; then
        cat >$ED1 <<EOF1
 /^extern.*implemented/{
        h
-       s/^.*implemented:\([^   *]*\).*/P_#if_USE_\1_SUPPORT/p
+       s/^.*implemented:\([^   *]*\).*/P_POUNDCif_USE_\1_SUPPORT/p
        g
        s/^extern \([^;]*\);.*/\1/p
        g
-       s/^.*implemented:\([^   *]*\).*/P_#endif/p
+       s/^.*implemented:\([^   *]*\).*/P_POUNDCendif/p
 }
 /^extern.*generated/{
        h
-       s/^.*generated:\([^     *]*\).*/P_#if_USE_\1_SUPPORT/p
+       s/^.*generated:\([^     *]*\).*/P_POUNDCif_USE_\1_SUPPORT/p
        g
        s/^extern \([^;]*\);.*/\1/p
        g
-       s/^.*generated:\([^     *]*\).*/P_#endif/p
+       s/^.*generated:\([^     *]*\).*/P_POUNDCendif/p
 }
 EOF1
 else
@@ -102,11 +102,11 @@ else
        cat >$ED1 <<EOF1
 /^extern.*${ALL}/{
        h
-       s/^.*${ALL}:\([^        *]*\).*/P_#if_USE_\1_SUPPORT/p
+       s/^.*${ALL}:\([^        *]*\).*/P_POUNDCif_USE_\1_SUPPORT/p
        g
        s/^extern \([^;]*\);.*/\1/p
        g
-       s/^.*${ALL}:\([^        *]*\).*/P_#endif/p
+       s/^.*${ALL}:\([^        *]*\).*/P_POUNDCendif/p
 }
 EOF1
 fi
@@ -134,13 +134,14 @@ cat >$ED2 <<EOF2
        s/)/ z)/
        s/\.\.\. z)/...)/
 :nc
-       /(/s// ( /
+       s/(/ ( /
        s/)/ )/
 EOF2
 
 cat >$ED3 <<EOF3
 /^P_/{
-       s/^P_#if_/#if /
+       s/^P_POUNDCif_/#if /
+       s/^P_POUNDCendif/#endif/
        s/^P_//
        b done
 }
@@ -151,7 +152,7 @@ cat >$ED3 <<EOF3
        s/ )/)/g
        s/ gen_/ /
        s/^M_/#undef /
-       /^%%/s//        /
+       s/^[    ]*%[    ]*%[    ]*/     /
 :done
 EOF3
 
@@ -175,12 +176,12 @@ cat >$AW1 <<\EOF1
 BEGIN  {
                skip=0;
        }
-/^P_#if/ {
+/^P_POUNDCif/ {
                print "\n"
                print $0
                skip=0;
 }
-/^P_#endif/ {
+/^P_POUNDCendif/ {
                print $0
                skip=1;
 }
index 7fc885f8d9b30288d7c056e30df4fc0616245d9c..0c8bc48debe25ad34133b76ddafaf57f8f0ad130 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2000,2003 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            *
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: define_key.c,v 1.6 2000/12/10 02:43:26 tom Exp $")
+MODULE_ID("$Id: define_key.c,v 1.8 2003/05/17 23:28:05 tom Exp $")
 
 NCURSES_EXPORT(int)
-define_key
-(char *str, int keycode)
+define_key(const char *str, int keycode)
 {
     int code = ERR;
 
@@ -49,8 +48,12 @@ define_key
                code = OK;
        }
        if (str != 0) {
-           (void) _nc_add_to_try(&(SP->_keytry), str, keycode);
-           code = OK;
+           if (key_defined(str) == 0) {
+               (void) _nc_add_to_try(&(SP->_keytry), str, keycode);
+               code = OK;
+           } else {
+               code = ERR;
+           }
        }
     } else {
        while (_nc_remove_string(&(SP->_keytry), str))
similarity index 68%
rename from ncurses/widechar/lib_ins_nwstr.c
rename to ncurses/base/key_defined.c
index 4b737713d4f8805bb6c82df22369561cac4a0c25..dac188748770e717fd40b6bd6fe91269415e39f8 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2002 Free Software Foundation, Inc.                        *
+ * Copyright (c) 2003 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            *
  ****************************************************************************/
 
 /****************************************************************************
- * Author: Thomas Dickey 2002                                               *
+ *  Author: Thomas E. Dickey, 2003                                          *
  ****************************************************************************/
 
-/*
-**     lib_ins_nwstr.c
-**
-**     The routine wins_nwstr().
-**
-*/
-
 #include <curses.priv.h>
-#include <ctype.h>
 
-MODULE_ID("$Id: lib_ins_nwstr.c,v 1.3 2002/09/28 16:31:33 tom Exp $")
+MODULE_ID("$Id: key_defined.c,v 1.3 2003/05/17 23:12:27 tom Exp $")
 
-NCURSES_EXPORT(int)
-wins_nwstr(WINDOW *win, const wchar_t * wstr, int n)
+static int
+find_definition(struct tries *tree, const char *str)
 {
-    int code = ERR;
-    NCURSES_SIZE_T oy;
-    NCURSES_SIZE_T ox;
-    const wchar_t *cp;
+    struct tries *ptr;
+    int result = 0;
 
-    T((T_CALLED("wins_nwstr(%p,%s,%d)"), win, _nc_viswbufn(wstr,n), n));
-
-    if (win != 0
-       && wstr != 0
-       && wcwidth(*wstr) > 0) {
-       code = OK;
-       if (n < 1)
-           n = wcslen(wstr);
-       oy = win->_cury;
-       ox = win->_curx;
-       for (cp = wstr; *cp && ((cp - wstr) < n); cp++) {
-           NCURSES_CH_T wch;
-           SetChar2(wch, *cp);
-           if (*cp == '\n' || *cp == '\r' || *cp == '\t' || *cp == '\b') {
-               _nc_waddch_nosync(win, wch);
-           } else if (is7bits(*cp) && iscntrl(*cp)) {
-               winsch(win, ' ' + (chtype) (*cp));
-               winsch(win, (chtype) '^');
-               win->_curx += 2;
-           } else if (wins_wch(win, &wch) == ERR
-                      || win->_curx > win->_maxx) {
-               break;
+    if (str != 0 && *str != '\0') {
+       for (ptr = tree; ptr != 0; ptr = ptr->sibling) {
+           if (UChar(*str) == UChar(ptr->ch)) {
+               if (str[1] == '\0' && ptr->child != 0) {
+                   result = -1;
+               } else if ((result = find_definition(ptr->child, str + 1)) == 0) {
+                   result = ptr->value;
+               } else if (str[1] == '\0') {
+                   result = -1;
+               }
            }
+           if (result != 0)
+               break;
        }
+    }
+    return (result);
+}
 
-       win->_curx = ox;
-       win->_cury = oy;
-       _nc_synchook(win);
-       code = OK;
+/*
+ * Returns the keycode associated with the given string.  If none is found,
+ * return 0.  If the string is only a prefix to other strings, return -1.
+ */
+NCURSES_EXPORT(int)
+key_defined(const char *str)
+{
+    int code = ERR;
+
+    T((T_CALLED("key_defined(%s)"), _nc_visbuf(str)));
+    if (SP != 0 && str != 0) {
+       code = find_definition(SP->_keytry, str);
     }
+
     returnCode(code);
 }
index c8ca2856bb977554ff5198570de271fed2b012ad..06a1f44fc2f8e28a07da041dc8239643ff33be9a 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1999,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1999-2000,2003 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            *
@@ -32,7 +32,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: keybound.c,v 1.3 2000/12/10 02:43:26 tom Exp $")
+MODULE_ID("$Id: keybound.c,v 1.4 2003/03/08 19:39:31 tom Exp $")
 
 /*
  * Returns the count'th string definition which is associated with the
@@ -42,5 +42,6 @@ MODULE_ID("$Id: keybound.c,v 1.3 2000/12/10 02:43:26 tom Exp $")
 NCURSES_EXPORT(char *)
 keybound(int code, int count)
 {
-    return _nc_expand_try(SP->_key_ok, code, &count, 0);
+    T((T_CALLED("keybound(%d,%d)"), code, count));
+    returnPtr(_nc_expand_try(SP->_keytry, code, &count, 0));
 }
index 5b41fedf3a2c851bfb3b47b0b881531104804fe0..63b63bdd20e63dbcf27d96aebbbdc0b683c85627 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2003,2004 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            *
@@ -36,7 +36,7 @@
 #include <curses.priv.h>
 #include <ctype.h>
 
-MODULE_ID("$Id: lib_addch.c,v 1.68 2002/09/28 17:48:13 tom Exp $")
+MODULE_ID("$Id: lib_addch.c,v 1.80 2004/02/07 18:20:46 tom Exp $")
 
 /*
  * Ugly microtweaking alert.  Everything from here to end of module is
@@ -68,7 +68,7 @@ render_char(WINDOW *win, NCURSES_CH_T ch)
        AddAttr(ch, (a & COLOR_MASK(AttrOf(ch))));
     }
 
-    TR(TRACE_VIRTPUT, ("bkg = %s, attrs = %s -> ch = %s",
+    TR(TRACE_VIRTPUT, ("render_char bkg %s, attrs %s -> ch %s",
                       _tracech_t2(1, CHREF(win->_nc_bkgd)),
                       _traceattr(win->_attrs),
                       _tracech_t2(3, CHREF(ch))));
@@ -99,15 +99,21 @@ _nc_render(WINDOW *win, NCURSES_CH_T ch)
 #define CHECK_POSITION(win, x, y)      /* nothing */
 #endif
 
-static inline int
+static
+#if !USE_WIDEC_SUPPORT         /* cannot be inline if it is recursive */
+  inline
+#endif
+int
 waddch_literal(WINDOW *win, NCURSES_CH_T ch)
 {
     int x;
+    int y;
     struct ldat *line;
 
     x = win->_curx;
+    y = win->_cury;
 
-    CHECK_POSITION(win, x, win->_cury);
+    CHECK_POSITION(win, x, y);
 
     /*
      * If we're trying to add a character at the lower-right corner more
@@ -122,20 +128,71 @@ waddch_literal(WINDOW *win, NCURSES_CH_T ch)
 #endif
 
     ch = render_char(win, ch);
-    TR(TRACE_VIRTPUT, ("win attr = %s", _traceattr(win->_attrs)));
 
-    line = win->_line + win->_cury;
+    line = win->_line + y;
 
     CHANGED_CELL(line, x);
 
+    /*
+     * Build up multibyte characters until we have a wide-character.
+     */
+    if_WIDEC({
+       if (WINDOW_EXT(win, addch_used) == 0 && Charable(ch)) {
+           WINDOW_EXT(win, addch_used) = 0;
+       } else {
+           char *buffer = WINDOW_EXT(win, addch_work);
+           int len;
+           mbstate_t state;
+           wchar_t result;
+
+           if ((WINDOW_EXT(win, addch_used) != 0) &&
+               (WINDOW_EXT(win, addch_x) != x ||
+                WINDOW_EXT(win, addch_y) != y)) {
+               /* discard the incomplete multibyte character */
+               WINDOW_EXT(win, addch_used) = 0;
+           }
+           WINDOW_EXT(win, addch_x) = x;
+           WINDOW_EXT(win, addch_y) = y;
+
+           memset(&state, 0, sizeof(state));
+           buffer[WINDOW_EXT(win, addch_used)] = CharOf(ch);
+           WINDOW_EXT(win, addch_used) += 1;
+           buffer[WINDOW_EXT(win, addch_used)] = '\0';
+           if ((len = mbrtowc(&result,
+                              buffer,
+                              WINDOW_EXT(win, addch_used), &state)) > 0) {
+               attr_t attrs = AttrOf(ch);
+               SetChar(ch, result, attrs);
+               WINDOW_EXT(win, addch_used) = 0;
+               if (CharOf(ch) < 256) {
+                   const char *s = unctrl(CharOf(ch));
+                   if (s[1] != 0) {
+                       return waddstr(win, s);
+                   }
+               }
+           } else {
+               if (len == -1) {
+                   /*
+                    * An error occurred.  We could either discard everything,
+                    * or assume that the error was in the previous input.
+                    * Try the latter.
+                    */
+                   TR(TRACE_VIRTPUT, ("Alert! mbrtowc returns error"));
+                   buffer[0] = CharOf(ch);
+                   WINDOW_EXT(win, addch_used) = 1;
+               }
+               return OK;
+           }
+       }
+    });
+
     /*
      * Handle non-spacing characters
      */
     if_WIDEC({
        if (wcwidth(CharOf(ch)) == 0) {
            int i;
-           int y;
-           if ((x > 0 && ((y = win->_cury) >= 0))
+           if ((x > 0 && y >= 0)
                || ((y = win->_cury - 1) >= 0 &&
                    (x = win->_maxx) > 0)) {
                wchar_t *chars = (win->_line[y].text[x - 1].chars);
@@ -154,8 +211,18 @@ waddch_literal(WINDOW *win, NCURSES_CH_T ch)
      * Provide for multi-column characters
      */
     if_WIDEC({
-       if (wcwidth(CharOf(ch)) > 1)
+       int len = wcwidth(CharOf(ch));
+       while (len-- > 1) {
+           if (x + (len - 1) > win->_maxx) {
+               NCURSES_CH_T blank = NewChar2(BLANK_TEXT, BLANK_ATTR);
+               AddAttr(blank, AttrOf(ch));
+               if (waddch_literal(win, blank) != ERR)
+                   return waddch_literal(win, ch);
+               return ERR;
+           }
            AddAttr(line->text[x++], WA_NAC);
+           TR(TRACE_VIRTPUT, ("added NAC %d", x - 1));
+       }
     }
   testwrapping:
     );
@@ -192,14 +259,28 @@ waddch_nosync(WINDOW *win, const NCURSES_CH_T ch)
 /* the workhorse function -- add a character to the given window */
 {
     int x, y;
-    chtype t = 0;
+    chtype t = CharOf(ch);
     const char *s = 0;
 
+    /*
+     * If we are using the alternate character set, forget about locale.
+     * Otherwise, if unctrl() returns a single-character or the locale
+     * claims the code is printable, treat it that way.
+     */
     if ((AttrOf(ch) & A_ALTCHARSET)
-       || ((t = CharOf(ch)) > 127)
-       || ((s = unctrl(t))[1] == 0))
+       || ((s = unctrl(t))[1] == 0 ||
+               (
+               isprint(t)
+#if USE_WIDEC_SUPPORT
+               || WINDOW_EXT(win, addch_used)
+#endif
+               )))
        return waddch_literal(win, ch);
 
+    /*
+     * Handle carriage control and other codes that are not printable, or are
+     * known to expand to more than one character according to unctrl().
+     */
     x = win->_curx;
     y = win->_cury;
 
@@ -325,41 +406,3 @@ wechochar(WINDOW *win, const chtype ch)
     TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_RETURN("%d"), code));
     return (code);
 }
-
-#if USE_WIDEC_SUPPORT
-NCURSES_EXPORT(int)
-wadd_wch(WINDOW *win, const cchar_t * wch)
-{
-    int code = ERR;
-
-    TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_CALLED("wadd_wch(%p, %s)"), win,
-                                     _tracech_t(wch)));
-
-    if (win && (waddch_nosync(win, *wch) != ERR)) {
-       _nc_synchook(win);
-       code = OK;
-    }
-
-    TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_RETURN("%d"), code));
-    return (code);
-}
-
-NCURSES_EXPORT(int)
-wecho_wchar(WINDOW *win, const cchar_t * wch)
-{
-    int code = ERR;
-
-    TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_CALLED("wecho_wchar(%p, %s)"), win,
-                                     _tracech_t(wch)));
-
-    if (win && (waddch_nosync(win, *wch) != ERR)) {
-       bool save_immed = win->_immed;
-       win->_immed = TRUE;
-       _nc_synchook(win);
-       win->_immed = save_immed;
-       code = OK;
-    }
-    TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_RETURN("%d"), code));
-    return (code);
-}
-#endif /* USE_WIDEC_SUPPORT */
index d6f9345542e34427b3a4c061c418b0e0b8fc9934..1c3e19a46e09ce275bbd6e7cfb31a027a187cbc9 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *                                                                          *
+ *  Rewritten 2001-2002 to support wide-characters by                       *
+ *     Sven Verdoolaege                                                    *
+ *     Thomas Dickey                                                       *
  ****************************************************************************/
 
 /*
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_addstr.c,v 1.34 2002/10/06 00:25:25 tom Exp $")
-
-#if USE_WIDEC_SUPPORT
-#define CONV_DATA   mbstate_t state; wchar_t cached; int clen = 0
-#define CONV_INIT   memset (&state, '\0', sizeof (state)); cached = (wchar_t)WEOF
-#define NEXT_CHAR(s,ch, n)                                             \
-    {                                                                  \
-       int len, i = 0;                                                 \
-       memset(&ch, 0, sizeof(cchar_t));                                \
-       if (cached != (wchar_t) WEOF) {                                 \
-           ch.chars[i++] = cached;                                     \
-           cached = (wchar_t) WEOF;                                    \
-           n -= clen;                                                  \
-           s += clen;                                                  \
-       }                                                               \
-       for (; i < CCHARW_MAX && n > 0; ++i) {                          \
-           if ((len = mbrtowc(&ch.chars[i], s, n, &state)) < 0) {      \
-               code = ERR;                                             \
-               break;                                                  \
-           }                                                           \
-           if (i == 0 || wcwidth(ch.chars[i]) == 0) {                  \
-               n -= len;                                               \
-               s += len;                                               \
-           } else {                                                    \
-               cached = ch.chars[i];                                   \
-               clen = len;                                             \
-               ch.chars[i] = L'\0';                                    \
-               break;                                                  \
-           }                                                           \
-       }                                                               \
-       if (code == ERR)                                                \
-           break;                                                      \
-    }
-#else
-#define CONV_DATA
-#define CONV_INIT
-#define NEXT_CHAR(s,ch, n)                                             \
-    ch = *s++;                                                         \
-    --n
-#endif
+MODULE_ID("$Id: lib_addstr.c,v 1.39 2003/12/06 18:04:33 tom Exp $")
 
 NCURSES_EXPORT(int)
 waddnstr(WINDOW *win, const char *astr, int n)
 {
-    unsigned const char *str = (unsigned const char *) astr;
+    const char *str = astr;
     int code = ERR;
-    CONV_DATA;
 
     T((T_CALLED("waddnstr(%p,%s,%d)"), win, _nc_visbufn(astr, n), n));
 
@@ -97,11 +61,10 @@ waddnstr(WINDOW *win, const char *astr, int n)
            n = (int) strlen(astr);
 
        TR(TRACE_VIRTPUT, ("str is not null, length = %d", n));
-       CONV_INIT;
-       while ((n > 0) && (*str != '\0')) {
+       while ((n-- > 0) && (*str != '\0')) {
            NCURSES_CH_T ch;
-           TR(TRACE_VIRTPUT, ("*str = %#x", *str));
-           NEXT_CHAR(str, ch, n);
+           TR(TRACE_VIRTPUT, ("*str = %#o", UChar(*str)));
+           SetChar(ch, UChar(*str++), A_NORMAL);
            if (_nc_waddch_nosync(win, ch) == ERR) {
                code = ERR;
                break;
@@ -114,7 +77,7 @@ waddnstr(WINDOW *win, const char *astr, int n)
 }
 
 NCURSES_EXPORT(int)
-waddchnstr(WINDOW *win, const chtype * astr, int n)
+waddchnstr(WINDOW *win, const chtype *astr, int n)
 {
     NCURSES_SIZE_T y = win->_cury;
     NCURSES_SIZE_T x = win->_curx;
@@ -155,7 +118,7 @@ waddchnstr(WINDOW *win, const chtype * astr, int n)
 
 #if USE_WIDEC_SUPPORT
 
-int
+NCURSES_EXPORT(int)
 _nc_wchstrlen(const cchar_t * s)
 {
     int result = 0;
@@ -166,7 +129,7 @@ _nc_wchstrlen(const cchar_t * s)
 }
 
 NCURSES_EXPORT(int)
-wadd_wchnstr(WINDOW *win, const cchar_t * const astr, int n)
+wadd_wchnstr(WINDOW *win, const cchar_t * astr, int n)
 {
     NCURSES_SIZE_T y = win->_cury;
     NCURSES_SIZE_T x = win->_curx;
@@ -217,9 +180,8 @@ NCURSES_EXPORT(int)
 waddnwstr(WINDOW *win, const wchar_t * str, int n)
 {
     int code = ERR;
-    int i;
 
-    T((T_CALLED("waddnwstr(%p,%s,%d)"), win, _nc_viswbufn(str,n), n));
+    T((T_CALLED("waddnwstr(%p,%s,%d)"), win, _nc_viswbufn(str, n), n));
 
     if (win && (str != 0)) {
        TR(TRACE_VIRTPUT | TRACE_ATTRS, ("... current %s", _traceattr(win->_attrs)));
@@ -230,16 +192,9 @@ waddnwstr(WINDOW *win, const wchar_t * str, int n)
        TR(TRACE_VIRTPUT, ("str is not null, length = %d", n));
        while ((n-- > 0) && (*str != L('\0'))) {
            NCURSES_CH_T ch;
-           TR(TRACE_VIRTPUT, ("*str[0] = %#lx", *str));
+           TR(TRACE_VIRTPUT, ("*str[0] = %#lx", (unsigned long) *str));
            SetChar(ch, *str++, A_NORMAL);
-           i = 1;
-           while (i < CCHARW_MAX && n > 0 && (*str != L('\0'))
-                  && wcwidth(*str) == 0) {
-               TR(TRACE_VIRTPUT, ("*str[%d] = %#lx", i, *str));
-               ch.chars[i++] = *str++;
-               --n;
-           }
-           if (_nc_waddch_nosync(win, ch) == ERR) {
+           if (wadd_wch(win, &ch) == ERR) {
                code = ERR;
                break;
            }
index ca189a656ebd8de87ae7600be85b91a4c64316ae..3f3a2ac79bd90af8f050cd9f5a06d76d9c0c1475 100644 (file)
@@ -33,7 +33,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_bkgd.c,v 1.29 2002/09/22 20:30:32 tom Exp $")
+MODULE_ID("$Id: lib_bkgd.c,v 1.30 2003/07/05 16:46:49 tom Exp $")
 
 /*
  * Set the window's background information.
@@ -70,7 +70,7 @@ wbkgrndset(WINDOW *win, const ARG_CH_T ch)
            int tmp;
 
            wgetbkgrnd(win, &wch);
-           tmp = wctob(CharOf(wch));
+           tmp = _nc_to_char(CharOf(wch));
 
            win->_bkgd = ((tmp == EOF) ? ' ' : (chtype) tmp) | AttrOf(wch);
        }
index f480bc16703b9b142ad053331ccc5655673ba598..cd3f7f6638db68d246b77f5fa4e94232a9f92a4f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *  Author: Juergen Pfeifer, 1998                                           *
- *  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en              *
  ****************************************************************************/
 
 /*
 #include <curses.priv.h>
 #include <ctype.h>
 
-MODULE_ID("$Id: lib_colorset.c,v 1.8 2002/07/13 11:35:08 juergen Exp $")
+MODULE_ID("$Id: lib_colorset.c,v 1.10 2003/12/07 00:15:27 tom Exp $")
 
 NCURSES_EXPORT(int)
-wcolor_set
-(WINDOW *win, short color_pair_number, void *opts)
+wcolor_set(WINDOW *win, short color_pair_number, void *opts)
 {
     T((T_CALLED("wcolor_set(%p,%d)"), win, color_pair_number));
     if (win
@@ -53,7 +51,8 @@ wcolor_set
        && (color_pair_number >= 0)
        && (color_pair_number < COLOR_PAIRS)) {
        TR(TRACE_ATTRS, ("... current %ld", (long) PAIR_NUMBER(win->_attrs)));
-       toggle_attr_on(win->_attrs, COLOR_PAIR(color_pair_number));
+       win->_attrs &= ALL_BUT_COLOR;
+       win->_attrs |= COLOR_PAIR(color_pair_number);
        returnCode(OK);
     } else
        returnCode(ERR);
index bce0a73ef30faedbaf0e8b8e4df0d9ebd881a381..607d3495847213d1f11965d390e4928bf94c5365 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -39,7 +39,7 @@
 extern int malloc_errfd;       /* FIXME */
 #endif
 
-MODULE_ID("$Id: lib_freeall.c,v 1.20 2002/07/28 00:35:25 tom Exp $")
+MODULE_ID("$Id: lib_freeall.c,v 1.26 2003/12/27 18:21:57 tom Exp $")
 
 /*
  * Free all ncurses data.  This is used for testing only (there's no practical
@@ -51,8 +51,10 @@ _nc_freeall(void)
     WINDOWLIST *p, *q;
     char *s;
 
+    T((T_CALLED("_nc_freeall()")));
 #if NO_LEAKS
     _nc_free_tparm();
+    FreeAndNull(_nc_oldnums);
 #endif
     if (SP != 0) {
        while (_nc_windows != 0) {
@@ -78,28 +80,38 @@ _nc_freeall(void)
        delscreen(SP);
     }
 
-    if (cur_term != 0) {
-       _nc_free_termtype(&(cur_term->type));
-       free(cur_term);
-    }
+    del_curterm(cur_term);
+    _nc_free_entries(_nc_head);
 
     if ((s = _nc_home_terminfo()) != 0)
        free(s);
+
+    (void) _nc_printf_string(0, 0);
 #ifdef TRACE
     (void) _nc_trace_buf(-1, 0);
 #endif
+
 #if HAVE_LIBDBMALLOC
     malloc_dump(malloc_errfd);
 #elif HAVE_LIBDMALLOC
 #elif HAVE_PURIFY
     purify_all_inuse();
 #endif
+    returnVoid;
 }
 
 NCURSES_EXPORT(void)
 _nc_free_and_exit(int code)
 {
+    char *last_setbuf = (SP != 0) ? SP->_setbuf : 0;
+
     _nc_freeall();
+#ifdef TRACE
+    trace(0);                  /* close trace file, freeing its setbuf */
+    free(_nc_varargs("?", 0));
+#endif
+    fclose(stdout);
+    FreeIfNeeded(last_setbuf);
     exit(code);
 }
 
index 757703d8afeaebb756eda4f400257651e307c170..84700cc7a1bf20be2d0863d76781ad24b4e8a2ef 100644 (file)
@@ -40,7 +40,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_getch.c,v 1.67 2002/09/07 17:17:59 tom Exp $")
+MODULE_ID("$Id: lib_getch.c,v 1.71 2003/05/17 23:49:28 tom Exp $")
 
 #include <fifo_defs.h>
 
@@ -53,6 +53,32 @@ ESCDELAY = 1000;             /* max interval betw. chars in funkeys, in millisecs */
 #define TWAIT_MASK 3
 #endif
 
+/*
+ * Check for mouse activity, returning nonzero if we find any.
+ */
+static int
+check_mouse_activity(int delay EVENTLIST_2nd(_nc_eventlist * evl))
+{
+    int rc;
+
+#if USE_SYSMOUSE
+    if ((SP->_mouse_type == M_SYSMOUSE)
+       && (SP->_sysmouse_head < SP->_sysmouse_tail)) {
+       return 2;
+    }
+#endif
+    rc = _nc_timed_wait(TWAIT_MASK, delay, (int *) 0 EVENTLIST_2nd(evl));
+#if USE_SYSMOUSE
+    if ((SP->_mouse_type == M_SYSMOUSE)
+       && (SP->_sysmouse_head < SP->_sysmouse_tail)
+       && (rc == 0)
+       && (errno == EINTR)) {
+       rc |= 2;
+    }
+#endif
+    return rc;
+}
+
 static inline int
 fifo_peek(void)
 {
@@ -88,7 +114,7 @@ fifo_push(EVENTLIST_0th(_nc_eventlist * evl))
 {
     int n;
     int ch = 0;
-    int mask;
+    int mask = 0;
 
     (void) mask;
     if (tail == -1)
@@ -101,11 +127,11 @@ fifo_push(EVENTLIST_0th(_nc_eventlist * evl))
 
 #ifdef NCURSES_WGETCH_EVENTS
     if (evl
-#if USE_GPM_SUPPORT || defined(USE_EMX_MOUSE)
+#if USE_GPM_SUPPORT || USE_EMX_MOUSE || USE_SYSMOUSE
        || (SP->_mouse_fd >= 0)
 #endif
        ) {
-       mask = _nc_timed_wait(TWAIT_MASK, -1, (int *) 0, evl);
+       mask = check_mouse_activity(-1 EVENTLIST_2nd(evl));
     } else
        mask = 0;
 
@@ -114,17 +140,31 @@ fifo_push(EVENTLIST_0th(_nc_eventlist * evl))
        ungetch(KEY_EVENT);
        return KEY_EVENT;
     }
-#elif USE_GPM_SUPPORT || defined(USE_EMX_MOUSE)
-    if (SP->_mouse_fd >= 0)
-       mask = _nc_timed_wait(TWAIT_MASK, -1, (int *) 0 EVENTLIST_2nd(evl));
+#elif USE_GPM_SUPPORT || USE_EMX_MOUSE || USE_SYSMOUSE
+    if (SP->_mouse_fd >= 0) {
+       mask = check_mouse_activity(-1 EVENTLIST_2nd(evl));
+    }
 #endif
 
-#if USE_GPM_SUPPORT || defined(USE_EMX_MOUSE)
+#if USE_GPM_SUPPORT || USE_EMX_MOUSE
     if ((SP->_mouse_fd >= 0) && (mask & 2)) {
        SP->_mouse_event(SP);
        ch = KEY_MOUSE;
        n = 1;
     } else
+#endif
+#if USE_SYSMOUSE
+       if ((SP->_mouse_type == M_SYSMOUSE)
+           && (SP->_sysmouse_head < SP->_sysmouse_tail)) {
+       SP->_mouse_event(SP);
+       ch = KEY_MOUSE;
+       n = 1;
+    } else if ((SP->_mouse_type == M_SYSMOUSE)
+              && (mask <= 0) && errno == EINTR) {
+       SP->_mouse_event(SP);
+       ch = KEY_MOUSE;
+       n = 1;
+    } else
 #endif
     {                          /* Can block... */
        unsigned char c2 = 0;
@@ -214,13 +254,19 @@ _nc_wgetch(WINDOW *win,
      * stuff its contents in the FIFO queue, and pop off
      * the first character to return it.
      */
-    if (head == -1 && !SP->_raw && !SP->_cbreak) {
+    if (head == -1 &&
+       !SP->_notty &&
+       !SP->_raw &&
+       !SP->_cbreak &&
+       !SP->_called_wgetch) {
        char buf[MAXCOLUMNS], *sp;
        int rc;
 
        TR(TRACE_IEVENT, ("filling queue in cooked mode"));
 
+       SP->_called_wgetch = TRUE;
        rc = wgetnstr(win, buf, MAXCOLUMNS);
+       SP->_called_wgetch = FALSE;
 
        /* ungetch in reverse order */
 #ifdef NCURSES_WGETCH_EVENTS
@@ -265,10 +311,7 @@ _nc_wgetch(WINDOW *win,
        TR(TRACE_IEVENT, ("delay is %d milliseconds", delay));
 
        if (head == -1) {       /* fifo is empty */
-           int rc = _nc_timed_wait(TWAIT_MASK,
-                                   delay,
-                                   (int *) 0
-                                   EVENTLIST_2nd(evl));
+           int rc = check_mouse_activity(delay EVENTLIST_2nd(evl));
 
 #ifdef NCURSES_WGETCH_EVENTS
            if (rc & 4) {
@@ -308,10 +351,8 @@ _nc_wgetch(WINDOW *win,
                break;
        } while
            (ch == KEY_MOUSE
-            && (((rc = _nc_timed_wait(TWAIT_MASK,
-                                      SP->_maxclick,
-                                      (int *) 0
-                                      EVENTLIST_2nd(evl))) != 0
+            && (((rc = check_mouse_activity(SP->_maxclick
+                                            EVENTLIST_2nd(evl))) != 0
                  && !(rc & 4))
                 || !SP->_mouse_parse(runcount)));
 #ifdef NCURSES_WGETCH_EVENTS
@@ -513,14 +554,11 @@ kgetch(EVENTLIST_0th(_nc_eventlist * evl))
            int rc;
 
            TR(TRACE_IEVENT, ("waiting for rest of sequence"));
-           rc = _nc_timed_wait(TWAIT_MASK,
-                               timeleft,
-                               &timeleft
-                               EVENTLIST_2nd(evl));
+           rc = check_mouse_activity(timeleft EVENTLIST_2nd(evl));
 #ifdef NCURSES_WGETCH_EVENTS
            if (rc & 4) {
                TR(TRACE_IEVENT, ("interrupted by a user event"));
-               /* FIXME Should have preserved timeleft for reusal... */
+               /* FIXME Should have preserved remainder timeleft for reusal... */
                peek = head;    /* Restart interpreting later */
                return KEY_EVENT;
            }
index 1b7750d5ac9fd252c7876dd576d774194c15f019..d8ac5c6ce3f3023cbb323ec01ea6583ce683cd40 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey                        1996-2003               *
  ****************************************************************************/
 
 /*
 */
 
 #include <curses.priv.h>
-#include <tic.h>               /* for MAX_ALIAS */
 
 #if HAVE_SYS_TERMIO_H
 #include <sys/termio.h>                /* needed for ISC */
 #endif
 
-MODULE_ID("$Id: lib_initscr.c,v 1.32 2002/10/12 15:24:34 tom Exp $")
+MODULE_ID("$Id: lib_initscr.c,v 1.33 2003/12/27 19:13:51 tom Exp $")
 
 NCURSES_EXPORT(WINDOW *)
 initscr(void)
index c3671e5d235bffbdd6492aac3349b0ff513e9417..419c9a8b145ec98cf59534798abcd15c73b0c0b1 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2001,2002 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            *
@@ -29,6 +29,8 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Sven Verdoolaege                                                *
+ *     and: Thomas E. Dickey                                                *
  ****************************************************************************/
 
 /*
 */
 
 #include <curses.priv.h>
+#include <ctype.h>
 
-MODULE_ID("$Id: lib_insch.c,v 1.15 2001/06/09 23:47:38 skimo Exp $")
+MODULE_ID("$Id: lib_insch.c,v 1.18 2002/11/23 21:41:05 tom Exp $")
+
+/*
+ * Insert the given character, updating the current location to simplify
+ * inserting a string.
+ */
+void
+_nc_insert_ch(WINDOW *win, chtype ch)
+{
+    NCURSES_CH_T wch;
+    int count;
+
+    switch (ch) {
+    case '\t':
+       for (count = (TABSIZE - (win->_curx % TABSIZE)); count > 0; count--)
+           _nc_insert_ch(win, ' ');
+       break;
+    case '\n':
+    case '\r':
+    case '\b':
+       SetChar2(wch, ch);
+       _nc_waddch_nosync(win, wch);
+       break;
+    default:
+       if (is7bits(ch) && iscntrl(ch)) {
+           _nc_insert_ch(win, '^');
+           _nc_insert_ch(win, '@' + (ch));
+       } else if (win->_curx <= win->_maxx) {
+           struct ldat *line = &(win->_line[win->_cury]);
+           NCURSES_CH_T *end = &(line->text[win->_curx]);
+           NCURSES_CH_T *temp1 = &(line->text[win->_maxx]);
+           NCURSES_CH_T *temp2 = temp1 - 1;
+
+           SetChar2(wch, ch);
+
+           CHANGED_TO_EOL(line, win->_curx, win->_maxx);
+           while (temp1 > end)
+               *temp1-- = *temp2--;
+
+           *temp1 = _nc_render(win, wch);
+
+           win->_curx++;
+       }
+       break;
+    }
+}
 
 NCURSES_EXPORT(int)
 winsch(WINDOW *win, chtype c)
 {
+    NCURSES_SIZE_T oy;
+    NCURSES_SIZE_T ox;
     int code = ERR;
 
     T((T_CALLED("winsch(%p, %s)"), win, _tracechtype(c)));
 
-    if (win) {
-       struct ldat *line = &(win->_line[win->_cury]);
-       NCURSES_CH_T *end = &(line->text[win->_curx]);
-       NCURSES_CH_T *temp1 = &(line->text[win->_maxx]);
-       NCURSES_CH_T *temp2 = temp1 - 1;
-       NCURSES_CH_T wch;
-       SetChar2(wch, c);
+    if (win != 0) {
+       oy = win->_cury;
+       ox = win->_curx;
+
+       _nc_insert_ch(win, c);
+
+       win->_curx = ox;
+       win->_cury = oy;
+       _nc_synchook(win);
+       code = OK;
+    }
+    returnCode(code);
+}
+
+NCURSES_EXPORT(int)
+winsnstr(WINDOW *win, const char *s, int n)
+{
+    int code = ERR;
+    NCURSES_SIZE_T oy;
+    NCURSES_SIZE_T ox;
+    const unsigned char *str = (const unsigned char *) s;
+    const unsigned char *cp;
 
-       CHANGED_TO_EOL(line, win->_curx, win->_maxx);
-       while (temp1 > end)
-           *temp1-- = *temp2--;
+    T((T_CALLED("winsnstr(%p,%s,%d)"), win, _nc_visbufn(s, n), n));
 
-       *temp1 = _nc_render(win, wch);
+    if (win != 0 && str != 0) {
+       oy = win->_cury;
+       ox = win->_curx;
+       for (cp = str; *cp && (n <= 0 || (cp - str) < n); cp++) {
+           _nc_insert_ch(win, (chtype) UChar(*cp));
+       }
+       win->_curx = ox;
+       win->_cury = oy;
+       _nc_synchook(win);
        code = OK;
     }
     returnCode(code);
index 432bcace9e6a14ae5e1ed9af33e048939f9e24f4..342c6541f95f7e213890ee12977cfbbb99f4517b 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2001,2003 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            *
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_insdel.c,v 1.11 2001/12/19 01:10:49 tom Exp $")
+MODULE_ID("$Id: lib_insdel.c,v 1.12 2003/07/26 22:40:06 tom Exp $")
 
 NCURSES_EXPORT(int)
 winsdelln(WINDOW *win, int n)
 {
     int code = ERR;
 
-    T((T_CALLED("winsdel(%p,%d)"), win, n));
+    T((T_CALLED("winsdelln(%p,%d)"), win, n));
 
     if (win) {
        if (n != 0) {
index 0555f1fd2ce74a7cc3f88adfdc9c0530634d9f61..b2fc9d547acff9a1a0777599c7708f45f8ffb175 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey 1996-2003                                      *
  ****************************************************************************/
 
 /*
 #endif
 
 #include <curses.priv.h>
+
+MODULE_ID("$Id: lib_mouse.c,v 1.68 2003/11/08 21:50:50 tom Exp $")
+
 #include <term.h>
+#include <tic.h>
 
 #if USE_GPM_SUPPORT
 #ifndef LINT                   /* don't need this for llib-lncurses */
 #endif
 #endif
 
-MODULE_ID("$Id: lib_mouse.c,v 1.61 2002/09/28 16:08:58 tom Exp $")
+#if USE_SYSMOUSE
+#undef buttons                 /* symbol conflict in consio.h */
+#undef mouse_info              /* symbol conflict in consio.h */
+#include <osreldate.h>
+#if (__FreeBSD_version >= 400017)
+#include <sys/consio.h>
+#include <sys/fbio.h>
+#else
+#include <machine/console.h>
+#endif
+#endif /* use_SYSMOUSE */
 
 #define MY_TRACE TRACE_ICALLS|TRACE_IEVENT
 
-#define INVALID_EVENT  -1
+#define        MASK_RELEASE(x)         ((001 << (6 * ((x) - 1))))
+#define        MASK_PRESS(x)           ((002 << (6 * ((x) - 1))))
+#define        MASK_CLICK(x)           ((004 << (6 * ((x) - 1))))
+#define        MASK_DOUBLE_CLICK(x)    ((010 << (6 * ((x) - 1))))
+#define        MASK_TRIPLE_CLICK(x)    ((020 << (6 * ((x) - 1))))
+#define        MASK_RESERVED_EVENT(x)  ((040 << (6 * ((x) - 1))))
+
+#define BUTTON_CLICKED  (BUTTON1_CLICKED  | BUTTON2_CLICKED  | BUTTON3_CLICKED)
+#define BUTTON_PRESSED  (BUTTON1_PRESSED  | BUTTON2_PRESSED  | BUTTON3_PRESSED)
+#define BUTTON_RELEASED (BUTTON1_RELEASED | BUTTON2_RELEASED | BUTTON3_RELEASED)
 
-static int mousetype;
-#define M_XTERM                -1      /* use xterm's mouse tracking? */
-#define M_NONE         0       /* no mouse device */
-#define M_GPM          1       /* use GPM */
-#define M_QNX          2       /* QNX mouse on console */
-#define M_QNX_TERM     3       /* QNX mouse on pterm/xterm (using qansi-m) */
+#define INVALID_EVENT  -1
+#define NORMAL_EVENT   0
 
 #if USE_GPM_SUPPORT
 #ifndef LINT
@@ -117,7 +137,11 @@ static void _nc_mouse_wrap(SCREEN *);
  */
 static MEVENT events[EV_MAX];  /* hold the last mouse event seen */
 static MEVENT *eventp = events;        /* next free slot in event queue */
+
+#undef  NEXT
 #define NEXT(ep)       ((ep == events + EV_MAX - 1) ? events : ep + 1)
+
+#undef  PREV
 #define PREV(ep)       ((ep == events) ? events + EV_MAX - 1 : ep - 1)
 
 #ifdef TRACE
@@ -135,7 +159,7 @@ _trace_slot(const char *tag)
 }
 #endif
 
-#ifdef USE_EMX_MOUSE
+#if USE_EMX_MOUSE
 
 #  define TOP_ROW          0
 #  define LEFT_COL         0
@@ -229,10 +253,86 @@ server_state(const int state)
     mouse_activated = state;
 }
 
+#endif /* USE_EMX_MOUSE */
+
+#if USE_SYSMOUSE
+static void
+handle_sysmouse(int sig GCC_UNUSED)
+{
+    struct mouse_info the_mouse;
+    MEVENT *work;
+
+    the_mouse.operation = MOUSE_GETINFO;
+    if (SP != 0
+       && SP->_mouse_fd >= 0
+       && SP->_sysmouse_tail < FIFO_SIZE
+       && ioctl(SP->_mouse_fd, CONS_MOUSECTL, &the_mouse) != -1) {
+
+       if (SP->_sysmouse_head > SP->_sysmouse_tail) {
+           SP->_sysmouse_tail = 0;
+           SP->_sysmouse_head = 0;
+       }
+       work = &(SP->_sysmouse_fifo[SP->_sysmouse_tail]);
+       memset(work, 0, sizeof(*work));
+       work->id = NORMAL_EVENT;        /* there's only one mouse... */
+
+       SP->_sysmouse_old_buttons = SP->_sysmouse_new_buttons;
+       SP->_sysmouse_new_buttons = the_mouse.u.data.buttons & 0x7;
+
+       if (SP->_sysmouse_new_buttons) {
+           if (SP->_sysmouse_new_buttons & 1)
+               work->bstate |= BUTTON1_PRESSED;
+           if (SP->_sysmouse_new_buttons & 2)
+               work->bstate |= BUTTON2_PRESSED;
+           if (SP->_sysmouse_new_buttons & 4)
+               work->bstate |= BUTTON3_PRESSED;
+       } else {
+           if (SP->_sysmouse_old_buttons & 1)
+               work->bstate |= BUTTON1_RELEASED;
+           if (SP->_sysmouse_old_buttons & 2)
+               work->bstate |= BUTTON2_RELEASED;
+           if (SP->_sysmouse_old_buttons & 4)
+               work->bstate |= BUTTON3_RELEASED;
+       }
+
+       /* for cosmetic bug in syscons.c on FreeBSD 3.[34] */
+       the_mouse.operation = MOUSE_HIDE;
+       ioctl(SP->_mouse_fd, CONS_MOUSECTL, &the_mouse);
+       the_mouse.operation = MOUSE_SHOW;
+       ioctl(SP->_mouse_fd, CONS_MOUSECTL, &the_mouse);
+
+       /*
+        * We're only interested if the button is pressed or released.
+        * FIXME: implement continuous event-tracking.
+        */
+       if (SP->_sysmouse_new_buttons != SP->_sysmouse_old_buttons) {
+           SP->_sysmouse_tail += 1;
+       }
+       work->x = the_mouse.u.data.x / SP->_sysmouse_char_width;
+       work->y = the_mouse.u.data.y / SP->_sysmouse_char_height;
+    }
+}
 #endif
 
 static int initialized;
 
+static void
+init_xterm_mouse(void)
+{
+    SP->_mouse_type = M_XTERM;
+    SP->_mouse_xtermcap = tigetstr("XM");
+    if (!VALID_STRING(SP->_mouse_xtermcap))
+       SP->_mouse_xtermcap = "\033[?1000%?%p1%{1}%=%th%el%;";
+}
+
+#if !USE_EMX_MOUSE
+static void
+enable_xterm_mouse(int enable)
+{
+    putp(tparm(SP->_mouse_xtermcap, enable));
+}
+#endif /* !USE_EMX_MOUSE */
+
 static void
 initialize_mousetype(void)
 {
@@ -240,20 +340,23 @@ initialize_mousetype(void)
 
     /* Try gpm first, because gpm may be configured to run in xterm */
 #if USE_GPM_SUPPORT
-    /* GPM: initialize connection to gpm server */
-    gpm_connect.eventMask = GPM_DOWN | GPM_UP;
-    gpm_connect.defaultMask = ~(gpm_connect.eventMask | GPM_HARD);
-    gpm_connect.minMod = 0;
-    gpm_connect.maxMod = ~((1 << KG_SHIFT) | (1 << KG_SHIFTL) | (1 << KG_SHIFTR));
-    if (Gpm_Open(&gpm_connect, 0) >= 0) {      /* returns the file-descriptor */
-       mousetype = M_GPM;
-       SP->_mouse_fd = gpm_fd;
-       return;
+    /* GPM does printf's without checking if stdout is a terminal */
+    if (isatty(fileno(stdout))) {
+       /* GPM: initialize connection to gpm server */
+       gpm_connect.eventMask = GPM_DOWN | GPM_UP;
+       gpm_connect.defaultMask = ~(gpm_connect.eventMask | GPM_HARD);
+       gpm_connect.minMod = 0;
+       gpm_connect.maxMod = ~((1 << KG_SHIFT) | (1 << KG_SHIFTL) | (1 << KG_SHIFTR));
+       if (Gpm_Open(&gpm_connect, 0) >= 0) {   /* returns the file-descriptor */
+           SP->_mouse_type = M_GPM;
+           SP->_mouse_fd = gpm_fd;
+           return;
+       }
     }
 #endif
 
     /* OS/2 VIO */
-#ifdef USE_EMX_MOUSE
+#if USE_EMX_MOUSE
     if (!mouse_thread
        && strstr(cur_term->type.term_names, "xterm") == 0
        && key_mouse) {
@@ -287,22 +390,87 @@ initialize_mousetype(void)
                printf("mouse thread error %d=%#x", rc, rc);
                return;
            } else {
-               mousetype = M_XTERM;
+               SP->_mouse_type = M_XTERM;
                return;
            }
        }
     }
 #endif
 
+#if USE_SYSMOUSE
+    {
+       struct mouse_info the_mouse;
+       char *the_device = 0;
+
+       if (isatty(SP->_ifd))
+           the_device = ttyname(SP->_ifd);
+       if (the_device == 0)
+           the_device = "/dev/tty";
+
+       SP->_mouse_fd = open(the_device, O_RDWR);
+
+       if (SP->_mouse_fd >= 0) {
+           /*
+            * sysmouse does not have a usable user interface for obtaining
+            * mouse events.  The logical way to proceed (reading data on a
+            * stream) only works if one opens the device as root.  Even in
+            * that mode, careful examination shows we lose events
+            * occasionally.  The interface provided for user programs is to
+            * establish a signal handler.  really.
+            *
+            * Take over SIGUSR2 for this purpose since SIGUSR1 is more
+            * likely to be used by an application.  getch() will have to
+            * handle the misleading EINTR's.
+            */
+           signal(SIGUSR2, SIG_IGN);
+           the_mouse.operation = MOUSE_MODE;
+           the_mouse.u.mode.mode = 0;
+           the_mouse.u.mode.signal = SIGUSR2;
+           if (ioctl(SP->_mouse_fd, CONS_MOUSECTL, &the_mouse) != -1) {
+               signal(SIGUSR2, handle_sysmouse);
+               the_mouse.operation = MOUSE_SHOW;
+               ioctl(SP->_mouse_fd, CONS_MOUSECTL, &the_mouse);
+
+#if defined(FBIO_MODEINFO) || defined(CONS_MODEINFO)   /* FreeBSD > 2.x */
+               {
+#ifndef FBIO_GETMODE           /* FreeBSD 3.x */
+#define FBIO_GETMODE    CONS_GET
+#define FBIO_MODEINFO   CONS_MODEINFO
+#endif /* FBIO_GETMODE */
+                   video_info_t the_video;
+
+                   if (ioctl(SP->_mouse_fd,
+                             FBIO_GETMODE,
+                             &the_video.vi_mode) != -1
+                       && ioctl(SP->_mouse_fd,
+                                FBIO_MODEINFO,
+                                &the_video) != -1) {
+                       SP->_sysmouse_char_width = the_video.vi_cwidth;
+                       SP->_sysmouse_char_height = the_video.vi_cheight;
+                   }
+               }
+#endif /* defined(FBIO_MODEINFO) || defined(CONS_MODEINFO) */
+
+               if (SP->_sysmouse_char_width <= 0)
+                   SP->_sysmouse_char_width = 8;
+               if (SP->_sysmouse_char_height <= 0)
+                   SP->_sysmouse_char_height = 16;
+               SP->_mouse_type = M_SYSMOUSE;
+               return;
+           }
+       }
+    }
+#endif /* USE_SYSMOUSE */
+
     /* we know how to recognize mouse events under "xterm" */
     if (key_mouse != 0) {
        if (!strcmp(key_mouse, xterm_kmous)) {
-           mousetype = M_XTERM;
+           init_xterm_mouse();
            return;
        }
     } else if (strstr(cur_term->type.term_names, "xterm") != 0) {
        (void) _nc_add_to_try(&(SP->_keytry), xterm_kmous, KEY_MOUSE);
-       mousetype = M_XTERM;
+       init_xterm_mouse();
        return;
     }
 }
@@ -323,7 +491,7 @@ _nc_mouse_init(void)
 
        initialize_mousetype();
 
-       T(("_nc_mouse_init() set mousetype to %d", mousetype));
+       T(("_nc_mouse_init() set mousetype to %d", SP->_mouse_type));
     }
 }
 
@@ -334,74 +502,113 @@ _nc_mouse_init(void)
 static bool
 _nc_mouse_event(SCREEN * sp GCC_UNUSED)
 {
+    bool result = FALSE;
+
+    switch (SP->_mouse_type) {
+    case M_XTERM:
+       /* xterm: never have to query, mouse events are in the keyboard stream */
+#if USE_EMX_MOUSE
+       {
+           char kbuf[3];
+
+           int i, res = read(M_FD(sp), &kbuf, 3);      /* Eat the prefix */
+           if (res != 3)
+               printf("Got %d chars instead of 3 for prefix.\n", res);
+           for (i = 0; i < res; i++) {
+               if (kbuf[i] != key_mouse[i])
+                   printf("Got char %d instead of %d for prefix.\n",
+                          (int) kbuf[i], (int) key_mouse[i]);
+           }
+           result = TRUE;
+       }
+#endif /* USE_EMX_MOUSE */
+       break;
+
 #if USE_GPM_SUPPORT
-    /* GPM: query server for event, return TRUE if we find one */
-    Gpm_Event ev;
+    case M_GPM:
+       {
+           /* query server for event, return TRUE if we find one */
+           Gpm_Event ev;
+
+           if (Gpm_GetEvent(&ev) == 1) {
+               /* there's only one mouse... */
+               eventp->id = NORMAL_EVENT;
+
+               eventp->bstate = 0;
+               switch (ev.type & 0x0f) {
+               case (GPM_DOWN):
+                   if (ev.buttons & GPM_B_LEFT)
+                       eventp->bstate |= BUTTON1_PRESSED;
+                   if (ev.buttons & GPM_B_MIDDLE)
+                       eventp->bstate |= BUTTON2_PRESSED;
+                   if (ev.buttons & GPM_B_RIGHT)
+                       eventp->bstate |= BUTTON3_PRESSED;
+                   break;
+               case (GPM_UP):
+                   if (ev.buttons & GPM_B_LEFT)
+                       eventp->bstate |= BUTTON1_RELEASED;
+                   if (ev.buttons & GPM_B_MIDDLE)
+                       eventp->bstate |= BUTTON2_RELEASED;
+                   if (ev.buttons & GPM_B_RIGHT)
+                       eventp->bstate |= BUTTON3_RELEASED;
+                   break;
+               default:
+                   break;
+               }
 
-    if (Gpm_GetEvent(&ev) == 1) {
-       eventp->id = 0;         /* there's only one mouse... */
+               eventp->x = ev.x - 1;
+               eventp->y = ev.y - 1;
+               eventp->z = 0;
 
-       eventp->bstate = 0;
-       switch (ev.type & 0x0f) {
-       case (GPM_DOWN):
-           if (ev.buttons & GPM_B_LEFT)
-               eventp->bstate |= BUTTON1_PRESSED;
-           if (ev.buttons & GPM_B_MIDDLE)
-               eventp->bstate |= BUTTON2_PRESSED;
-           if (ev.buttons & GPM_B_RIGHT)
-               eventp->bstate |= BUTTON3_PRESSED;
-           break;
-       case (GPM_UP):
-           if (ev.buttons & GPM_B_LEFT)
-               eventp->bstate |= BUTTON1_RELEASED;
-           if (ev.buttons & GPM_B_MIDDLE)
-               eventp->bstate |= BUTTON2_RELEASED;
-           if (ev.buttons & GPM_B_RIGHT)
-               eventp->bstate |= BUTTON3_RELEASED;
-           break;
-       default:
-           break;
+               /* bump the next-free pointer into the circular list */
+               eventp = NEXT(eventp);
+               result = TRUE;
+           }
        }
+       break;
+#endif
 
-       eventp->x = ev.x - 1;
-       eventp->y = ev.y - 1;
-       eventp->z = 0;
+#if USE_SYSMOUSE
+    case M_SYSMOUSE:
+       if (SP->_sysmouse_head < SP->_sysmouse_tail) {
+           *eventp = SP->_sysmouse_fifo[SP->_sysmouse_head];
 
-       /* bump the next-free pointer into the circular list */
-       eventp = NEXT(eventp);
-       return (TRUE);
-    }
-#endif
+           /*
+            * Point the fifo-head to the next possible location.  If there
+            * are none, reset the indices.  This may be interrupted by the
+            * signal handler, doing essentially the same reset.
+            */
+           SP->_sysmouse_head += 1;
+           if (SP->_sysmouse_head == SP->_sysmouse_tail) {
+               SP->_sysmouse_tail = 0;
+               SP->_sysmouse_head = 0;
+           }
 
-#ifdef USE_EMX_MOUSE
-    {
-       char kbuf[3];
-
-       int i, res = read(M_FD(sp), &kbuf, 3);  /* Eat the prefix */
-       if (res != 3)
-           printf("Got %d chars instead of 3 for prefix.\n", res);
-       for (i = 0; i < res; i++) {
-           if (kbuf[i] != key_mouse[i])
-               printf("Got char %d instead of %d for prefix.\n",
-                      (int) kbuf[i], (int) key_mouse[i]);
+           /* bump the next-free pointer into the circular list */
+           eventp = NEXT(eventp);
+           result = TRUE;
        }
-       return TRUE;
+       break;
+#endif /* USE_SYSMOUSE */
+
+    case M_NONE:
+       break;
     }
-#endif /* USE_EMX_MOUSE */
 
-    /* xterm: never have to query, mouse events are in the keyboard stream */
-    return (FALSE);            /* no event waiting */
+    return result;             /* true if we found an event */
 }
 
 static bool
 _nc_mouse_inline(SCREEN * sp)
 /* mouse report received in the keyboard stream -- parse its info */
 {
+    bool result = FALSE;
+
     TR(MY_TRACE, ("_nc_mouse_inline() called"));
 
-    if (mousetype == M_XTERM) {
+    if (SP->_mouse_type == M_XTERM) {
        unsigned char kbuf[4];
-       MEVENT *prev;
+       mmask_t prev;
        size_t grabbed;
        int res;
 
@@ -438,7 +645,7 @@ _nc_mouse_inline(SCREEN * sp)
        for (grabbed = 0; grabbed < 3; grabbed += res) {
 
            /* For VIO mouse we add extra bit 64 to disambiguate button-up. */
-#ifdef USE_EMX_MOUSE
+#if USE_EMX_MOUSE
            res = read(M_FD(sp) >= 0 ? M_FD(sp) : sp->_ifd, &kbuf, 3);
 #else
            res = read(sp->_ifd, kbuf + grabbed, 3 - grabbed);
@@ -451,59 +658,65 @@ _nc_mouse_inline(SCREEN * sp)
        TR(TRACE_IEVENT,
           ("_nc_mouse_inline sees the following xterm data: '%s'", kbuf));
 
-       eventp->id = 0;         /* there's only one mouse... */
+       /* there's only one mouse... */
+       eventp->id = NORMAL_EVENT;
 
        /* processing code goes here */
        eventp->bstate = 0;
+       prev = PREV(eventp)->bstate;
+
+#if USE_EMX_MOUSE
+#define PRESS_POSITION(n) \
+       eventp->bstate = MASK_PRESS(n); \
+       if (kbuf[0] & 0x40) \
+           eventp->bstate = MASK_RELEASE(n)
+#else
+#define PRESS_POSITION(n) \
+       eventp->bstate = (prev & MASK_PRESS(n) \
+                       ? REPORT_MOUSE_POSITION \
+                       : MASK_PRESS(n))
+#endif
+
        switch (kbuf[0] & 0x3) {
        case 0x0:
-           eventp->bstate = BUTTON1_PRESSED;
-#ifdef USE_EMX_MOUSE
-           if (kbuf[0] & 0x40)
-               eventp->bstate = BUTTON1_RELEASED;
-#endif
+           PRESS_POSITION(1);
            break;
 
        case 0x1:
-           eventp->bstate = BUTTON2_PRESSED;
-#ifdef USE_EMX_MOUSE
-           if (kbuf[0] & 0x40)
-               eventp->bstate = BUTTON2_RELEASED;
-#endif
+           PRESS_POSITION(2);
            break;
 
        case 0x2:
-           eventp->bstate = BUTTON3_PRESSED;
-#ifdef USE_EMX_MOUSE
-           if (kbuf[0] & 0x40)
-               eventp->bstate = BUTTON3_RELEASED;
-#endif
+           PRESS_POSITION(3);
            break;
 
        case 0x3:
            /*
-            * Release events aren't reported for individual buttons,
-            * just for the button set as a whole...
+            * Release events aren't reported for individual buttons, just for
+            * the button set as a whole.  However, because there are normally
+            * no mouse events under xterm that intervene between press and
+            * release, we can infer the button actually released by looking at
+            * the previous event.
             */
-           eventp->bstate =
-               (BUTTON1_RELEASED |
-                BUTTON2_RELEASED |
-                BUTTON3_RELEASED);
-           /*
-            * ...however, because there are no kinds of mouse events under
-            * xterm that can intervene between press and release, we can
-            * deduce which buttons were actually released by looking at the
-            * previous event.
-            */
-           prev = PREV(eventp);
-           if (!(prev->bstate & BUTTON1_PRESSED))
-               eventp->bstate &= ~BUTTON1_RELEASED;
-           if (!(prev->bstate & BUTTON2_PRESSED))
-               eventp->bstate &= ~BUTTON2_RELEASED;
-           if (!(prev->bstate & BUTTON3_PRESSED))
-               eventp->bstate &= ~BUTTON3_RELEASED;
+           if (prev & (BUTTON_PRESSED | BUTTON_RELEASED)) {
+               eventp->bstate = BUTTON_RELEASED;
+               if (!(prev & BUTTON1_PRESSED))
+                   eventp->bstate &= ~BUTTON1_RELEASED;
+               if (!(prev & BUTTON2_PRESSED))
+                   eventp->bstate &= ~BUTTON2_RELEASED;
+               if (!(prev & BUTTON3_PRESSED))
+                   eventp->bstate &= ~BUTTON3_RELEASED;
+           } else {
+               /*
+                * XFree86 xterm will return a stream of release-events to
+                * let the application know where the mouse is going, if the
+                * private mode 1002 or 1003 is enabled.
+                */
+               eventp->bstate = REPORT_MOUSE_POSITION;
+           }
            break;
        }
+       result = (eventp->bstate & REPORT_MOUSE_POSITION) ? TRUE : FALSE;
 
        if (kbuf[0] & 4) {
            eventp->bstate |= BUTTON_SHIFT;
@@ -529,7 +742,7 @@ _nc_mouse_inline(SCREEN * sp)
 #endif
     }
 
-    return (FALSE);
+    return (result);
 }
 
 static void
@@ -542,16 +755,16 @@ mouse_activate(bool on)
 
     if (on) {
 
-       switch (mousetype) {
+       switch (SP->_mouse_type) {
        case M_XTERM:
 #if NCURSES_EXT_FUNCS
            keyok(KEY_MOUSE, on);
 #endif
            TPUTS_TRACE("xterm mouse initialization");
-#ifdef USE_EMX_MOUSE
+#if USE_EMX_MOUSE
            server_state(1);
 #else
-           putp("\033[?1000h");
+           enable_xterm_mouse(1);
 #endif
            break;
 #if USE_GPM_SUPPORT
@@ -559,6 +772,13 @@ mouse_activate(bool on)
            SP->_mouse_fd = gpm_fd;
            break;
 #endif
+#if USE_SYSMOUSE
+       case M_SYSMOUSE:
+           signal(SIGUSR2, handle_sysmouse);
+           break;
+#endif
+       case M_NONE:
+           return;
        }
        /* Make runtime binding to cut down on object size of applications that
         * do not use the mouse (e.g., 'clear').
@@ -571,19 +791,26 @@ mouse_activate(bool on)
 
     } else {
 
-       switch (mousetype) {
+       switch (SP->_mouse_type) {
        case M_XTERM:
            TPUTS_TRACE("xterm mouse deinitialization");
-#ifdef USE_EMX_MOUSE
+#if USE_EMX_MOUSE
            server_state(0);
 #else
-           putp("\033[?1000l");
+           enable_xterm_mouse(0);
 #endif
            break;
 #if USE_GPM_SUPPORT
        case M_GPM:
            break;
 #endif
+#if USE_SYSMOUSE
+       case M_SYSMOUSE:
+           signal(SIGUSR2, SIG_IGN);
+           break;
+#endif
+       case M_NONE:
+           return;
        }
     }
     _nc_flush();
@@ -609,7 +836,7 @@ _nc_mouse_parse(int runcount)
      * When we enter this routine, the event list next-free pointer
      * points just past a run of mouse events that we know were separated
      * in time by less than the critical click interval. The job of this
-     * routine is to collaps this run into a single higher-level event
+     * routine is to collapse this run into a single higher-level event
      * or gesture.
      *
      * We accomplish this in two passes.  The first pass merges press/release
@@ -631,7 +858,7 @@ _nc_mouse_parse(int runcount)
           ("_nc_mouse_parse: returning simple mouse event %s at slot %ld",
            _tracemouse(prev),
            (long) (prev - events)));
-       return (prev->id >= 0)
+       return (prev->id >= NORMAL_EVENT)
            ? ((prev->bstate & eventmask) ? TRUE : FALSE)
            : FALSE;
     }
@@ -657,7 +884,7 @@ _nc_mouse_parse(int runcount)
        merge = FALSE;
        for (ep = runp; (next = NEXT(ep)) != eventp; ep = next) {
            if (ep->x == next->x && ep->y == next->y
-               && (ep->bstate & (BUTTON1_PRESSED | BUTTON2_PRESSED | BUTTON3_PRESSED))
+               && (ep->bstate & BUTTON_PRESSED)
                && (!(ep->bstate & BUTTON1_PRESSED)
                    == !(next->bstate & BUTTON1_RELEASED))
                && (!(ep->bstate & BUTTON2_PRESSED)
@@ -729,10 +956,8 @@ _nc_mouse_parse(int runcount)
                    continue;
 
                /* merge click events forward */
-               if ((ep->bstate &
-                    (BUTTON1_CLICKED | BUTTON2_CLICKED | BUTTON3_CLICKED))
-                   && (follower->bstate &
-                       (BUTTON1_CLICKED | BUTTON2_CLICKED | BUTTON3_CLICKED))) {
+               if ((ep->bstate & BUTTON_CLICKED)
+                   && (follower->bstate & BUTTON_CLICKED)) {
                    if ((eventmask & BUTTON1_DOUBLE_CLICKED)
                        && (follower->bstate & BUTTON1_CLICKED)) {
                        follower->bstate &= ~BUTTON1_CLICKED;
@@ -760,8 +985,7 @@ _nc_mouse_parse(int runcount)
                     (BUTTON1_DOUBLE_CLICKED
                      | BUTTON2_DOUBLE_CLICKED
                      | BUTTON3_DOUBLE_CLICKED))
-                   && (follower->bstate &
-                       (BUTTON1_CLICKED | BUTTON2_CLICKED | BUTTON3_CLICKED))) {
+                   && (follower->bstate & BUTTON_CLICKED)) {
                    if ((eventmask & BUTTON1_TRIPLE_CLICKED)
                        && (follower->bstate & BUTTON1_CLICKED)) {
                        follower->bstate &= ~BUTTON1_CLICKED;
@@ -831,7 +1055,7 @@ _nc_mouse_wrap(SCREEN * sp GCC_UNUSED)
 {
     TR(MY_TRACE, ("_nc_mouse_wrap() called"));
 
-    switch (mousetype) {
+    switch (SP->_mouse_type) {
     case M_XTERM:
        if (eventmask)
            mouse_activate(FALSE);
@@ -841,6 +1065,13 @@ _nc_mouse_wrap(SCREEN * sp GCC_UNUSED)
     case M_GPM:
        break;
 #endif
+#if USE_SYSMOUSE
+    case M_SYSMOUSE:
+       mouse_activate(FALSE);
+       break;
+#endif
+    case M_NONE:
+       break;
     }
 }
 
@@ -850,11 +1081,27 @@ _nc_mouse_resume(SCREEN * sp GCC_UNUSED)
 {
     TR(MY_TRACE, ("_nc_mouse_resume() called"));
 
-    /* xterm: re-enable reporting */
-    if (mousetype == M_XTERM && eventmask)
-       mouse_activate(TRUE);
+    switch (SP->_mouse_type) {
+    case M_XTERM:
+       /* xterm: re-enable reporting */
+       if (eventmask)
+           mouse_activate(TRUE);
+       break;
 
-    /* GPM: reclaim our event set */
+#if USE_GPM_SUPPORT
+    case M_GPM:
+       /* GPM: reclaim our event set */
+       break;
+#endif
+
+#if USE_SYSMOUSE
+    case M_SYSMOUSE:
+       mouse_activate(TRUE);
+       break;
+#endif
+    case M_NONE:
+       break;
+    }
 }
 
 /**************************************************************************
@@ -869,7 +1116,7 @@ getmouse(MEVENT * aevent)
 {
     T((T_CALLED("getmouse(%p)"), aevent));
 
-    if (aevent && (mousetype != M_NONE)) {
+    if (aevent && (SP->_mouse_type != M_NONE)) {
        /* compute the current-event pointer */
        MEVENT *prev = PREV(eventp);
 
@@ -917,14 +1164,14 @@ mousemask(mmask_t newmask, mmask_t * oldmask)
        returnBits(0);
 
     _nc_mouse_init();
-    if (mousetype != M_NONE) {
+    if (SP->_mouse_type != M_NONE) {
        eventmask = newmask &
-           (BUTTON_ALT | BUTTON_CTRL | BUTTON_SHIFT
-            | BUTTON1_PRESSED | BUTTON1_RELEASED | BUTTON1_CLICKED
+           (REPORT_MOUSE_POSITION | BUTTON_ALT | BUTTON_CTRL | BUTTON_SHIFT
+            | BUTTON_PRESSED
+            | BUTTON_RELEASED
+            | BUTTON_CLICKED
             | BUTTON1_DOUBLE_CLICKED | BUTTON1_TRIPLE_CLICKED
-            | BUTTON2_PRESSED | BUTTON2_RELEASED | BUTTON2_CLICKED
             | BUTTON2_DOUBLE_CLICKED | BUTTON2_TRIPLE_CLICKED
-            | BUTTON3_PRESSED | BUTTON3_RELEASED | BUTTON3_CLICKED
             | BUTTON3_DOUBLE_CLICKED | BUTTON3_TRIPLE_CLICKED);
 
        mouse_activate(eventmask != 0);
@@ -977,7 +1224,7 @@ mouseinterval(int maxclick)
 NCURSES_EXPORT(int)
 _nc_has_mouse(void)
 {
-    return (mousetype == M_NONE ? 0 : 1);
+    return (SP->_mouse_type == M_NONE ? 0 : 1);
 }
 
 NCURSES_EXPORT(bool)
@@ -1010,5 +1257,3 @@ wmouse_trafo(const WINDOW *win, int *pY, int *pX, bool to_screen)
     }
     returnBool(result);
 }
-
-/* lib_mouse.c ends here */
index 8d6dd97e001cc38a7693f8be43d53263fc57f5d1..41bbc4ee660e20be91513b11dec016ed96152d68 100644 (file)
@@ -47,7 +47,7 @@
 #include <term.h>              /* clear_screen, cup & friends, cur_term */
 #include <tic.h>
 
-MODULE_ID("$Id: lib_newterm.c,v 1.56 2002/10/12 15:24:08 tom Exp $")
+MODULE_ID("$Id: lib_newterm.c,v 1.57 2002/10/20 00:10:56 Philippe.Blain Exp $")
 
 #ifndef ONLCR                  /* Allows compilation under the QNX 4.2 OS */
 #define ONLCR 0
@@ -119,13 +119,6 @@ newterm(NCURSES_CONST char *name, FILE * ofp, FILE * ifp)
     if (filter_mode) {
        LINES = 1;
 
-       if (VALID_NUMERIC(init_tabs))
-           TABSIZE = init_tabs;
-       else
-           TABSIZE = 8;
-
-       T(("TABSIZE = %d", TABSIZE));
-
        clear_screen = 0;
        cursor_down = parm_down_cursor = 0;
        cursor_address = 0;
index d08a0b42dc204393c1dac49143cc091ad8c51805..03ec64294c0bf4956ac6ed6a04d7f7f3bb9b5885 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_printw.c,v 1.13 2002/10/05 22:52:21 tom Exp $")
+MODULE_ID("$Id: lib_printw.c,v 1.15 2003/02/08 20:50:13 tom Exp $")
 
 NCURSES_EXPORT(int)
-printw(NCURSES_CONST char *fmt,...)
+printw(const char *fmt,...)
 {
     va_list argp;
     int code;
@@ -62,7 +62,7 @@ printw(NCURSES_CONST char *fmt,...)
 }
 
 NCURSES_EXPORT(int)
-wprintw(WINDOW *win, NCURSES_CONST char *fmt,...)
+wprintw(WINDOW *win, const char *fmt,...)
 {
     va_list argp;
     int code;
@@ -82,7 +82,7 @@ wprintw(WINDOW *win, NCURSES_CONST char *fmt,...)
 }
 
 NCURSES_EXPORT(int)
-mvprintw(int y, int x, NCURSES_CONST char *fmt,...)
+mvprintw(int y, int x, const char *fmt,...)
 {
     va_list argp;
     int code;
@@ -103,7 +103,7 @@ mvprintw(int y, int x, NCURSES_CONST char *fmt,...)
 }
 
 NCURSES_EXPORT(int)
-mvwprintw(WINDOW *win, int y, int x, NCURSES_CONST char *fmt,...)
+mvwprintw(WINDOW *win, int y, int x, const char *fmt,...)
 {
     va_list argp;
     int code;
@@ -124,7 +124,7 @@ mvwprintw(WINDOW *win, int y, int x, NCURSES_CONST char *fmt,...)
 }
 
 NCURSES_EXPORT(int)
-vwprintw(WINDOW *win, NCURSES_CONST char *fmt, va_list argp)
+vwprintw(WINDOW *win, const char *fmt, va_list argp)
 {
     char *buf;
     int code = ERR;
@@ -134,9 +134,6 @@ vwprintw(WINDOW *win, NCURSES_CONST char *fmt, va_list argp)
 
     if ((buf = _nc_printf_string(fmt, argp)) != 0) {
        code = waddstr(win, buf);
-#if USE_SAFE_SPRINTF
-       free(buf);
-#endif
     }
     returnCode(code);
 }
index 39c62d0850e58b3964071e8556c9b88e50a40400..f8e16bafa8743cec7264f92db7e9de66aa240743 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998,2001,2003 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            *
@@ -27,7 +27,7 @@
  ****************************************************************************/
 
 /****************************************************************************
- *  Author: Thomas E. Dickey 1996-2001                                      *
+ *  Author: Thomas E. Dickey 1996-2003                                      *
  *     and: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
  ****************************************************************************/
@@ -43,7 +43,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_scroll.c,v 1.23 2001/12/19 01:06:55 tom Exp $")
+MODULE_ID("$Id: lib_scroll.c,v 1.24 2003/07/26 23:25:26 tom Exp $")
 
 NCURSES_EXPORT(void)
 _nc_scroll_window(WINDOW *win, int const n, NCURSES_SIZE_T const top,
@@ -77,24 +77,15 @@ _nc_scroll_window(WINDOW *win, int const n, NCURSES_SIZE_T const top,
     /* shift n lines downwards */
     if (n < 0) {
        limit = top - n;
-       if (limit > win->_maxy)
-           limit = win->_maxy;
-       for (line = bottom; line >= limit; line--) {
-           if (line + n >= 0) {
-               TR(TRACE_MOVE, ("...copying %d to %d", line + n, line));
-               memcpy(win->_line[line].text,
-                      win->_line[line + n].text,
-                      to_copy);
-               if_USE_SCROLL_HINTS(win->_line[line].oldindex =
-                                   win->_line[line + n].oldindex);
-           } else {
-               TR(TRACE_MOVE, ("...filling %d", line));
-               for (j = 0; j <= win->_maxx; j++)
-                   win->_line[line].text[j] = blank;
-               if_USE_SCROLL_HINTS(win->_line[line].oldindex = _NEWINDEX);
-           }
+       for (line = bottom; line >= limit && line >= 0; line--) {
+           TR(TRACE_MOVE, ("...copying %d to %d", line + n, line));
+           memcpy(win->_line[line].text,
+                  win->_line[line + n].text,
+                  to_copy);
+           if_USE_SCROLL_HINTS(win->_line[line].oldindex =
+                               win->_line[line + n].oldindex);
        }
-       for (line = top; line < limit; line++) {
+       for (line = top; line < limit && line <= win->_maxy; line++) {
            TR(TRACE_MOVE, ("...filling %d", line));
            for (j = 0; j <= win->_maxx; j++)
                win->_line[line].text[j] = blank;
@@ -105,25 +96,14 @@ _nc_scroll_window(WINDOW *win, int const n, NCURSES_SIZE_T const top,
     /* shift n lines upwards */
     if (n > 0) {
        limit = bottom - n;
-       if (limit < 0)
-           limit = 0;
-       for (line = top; line <= limit; line++) {
-           if (line + n <= win->_maxy) {
-               TR(TRACE_MOVE, ("...copying %d to %d", line + n, line));
-               memcpy(win->_line[line].text,
-                      win->_line[line + n].text,
-                      to_copy);
-               if_USE_SCROLL_HINTS(win->_line[line].oldindex =
-                                   win->_line[line + n].oldindex);
-           } else {
-               TR(TRACE_MOVE, ("...filling %d", line));
-               for (j = 0; j <= win->_maxx; j++)
-                   win->_line[line].text[j] = blank;
-               if_USE_SCROLL_HINTS(win->_line[line].oldindex = _NEWINDEX);
-           }
+       for (line = top; line <= limit && line <= win->_maxy; line++) {
+           memcpy(win->_line[line].text,
+                  win->_line[line + n].text,
+                  to_copy);
+           if_USE_SCROLL_HINTS(win->_line[line].oldindex =
+                               win->_line[line + n].oldindex);
        }
-       for (line = bottom; line > limit; line--) {
-           TR(TRACE_MOVE, ("...filling %d", line));
+       for (line = bottom; line > limit && line >= 0; line--) {
            for (j = 0; j <= win->_maxx; j++)
                win->_line[line].text[j] = blank;
            if_USE_SCROLL_HINTS(win->_line[line].oldindex = _NEWINDEX);
@@ -142,11 +122,9 @@ wscrl(WINDOW *win, int n)
        returnCode(ERR);
     }
 
-    if (n == 0)
-       returnCode(OK);
-
-    _nc_scroll_window(win, n, win->_regtop, win->_regbottom, win->_nc_bkgd);
-
-    _nc_synchook(win);
+    if (n != 0) {
+       _nc_scroll_window(win, n, win->_regtop, win->_regbottom, win->_nc_bkgd);
+       _nc_synchook(win);
+    }
     returnCode(OK);
 }
index ac24ce07878ac3dd876196b222371f70f394ec1b..91f82767e21bea5ab6a14a18396bc10699bae5a7 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey                        1996-2003               *
  ****************************************************************************/
 
 /*
@@ -43,7 +44,7 @@
 #include <term.h>              /* cur_term */
 #include <tic.h>
 
-MODULE_ID("$Id: lib_set_term.c,v 1.71 2002/09/14 22:48:00 tom Exp $")
+MODULE_ID("$Id: lib_set_term.c,v 1.81 2003/11/15 23:57:01 tom Exp $")
 
 NCURSES_EXPORT(SCREEN *)
 set_term(SCREEN * screenp)
@@ -61,7 +62,6 @@ set_term(SCREEN * screenp)
     stdscr = SP->_stdscr;
     COLORS = SP->_color_count;
     COLOR_PAIRS = SP->_pair_count;
-    memcpy(acs_map, SP->_acs_map, sizeof(SP->_acs_map[0]) * ACS_LEN);
 
     T((T_RETURN("%p"), oldSP));
     return (oldSP);
@@ -84,6 +84,7 @@ NCURSES_EXPORT(void)
 delscreen(SCREEN * sp)
 {
     SCREEN **scan = &_nc_screen_chain;
+    int i;
 
     T((T_CALLED("delscreen(%p)"), sp));
 
@@ -100,8 +101,13 @@ delscreen(SCREEN * sp)
     (void) _nc_freewin(sp->_stdscr);
 
     if (sp->_slk != 0) {
-       FreeIfNeeded(sp->_slk->ent);
-       FreeIfNeeded(sp->_slk->buffer);
+       if (sp->_slk->ent != 0) {
+           for (i = 0; i < sp->_slk->labcnt; ++i) {
+               FreeIfNeeded(sp->_slk->ent[i].ent_text);
+               FreeIfNeeded(sp->_slk->ent[i].form_text);
+           }
+           free(sp->_slk->ent);
+       }
        free(sp->_slk);
        sp->_slk = 0;
     }
@@ -204,11 +210,11 @@ extract_fgbg(char *src, int *result)
 #endif
 
 NCURSES_EXPORT(int)
-_nc_setupscreen(short slines, short const scolumns, FILE * output)
+_nc_setupscreen(short slines, short const scolumns, FILE *output)
 /* OS-independent screen initializations */
 {
     int bottom_stolen = 0;
-    size_t i;
+    int i;
 
     T((T_CALLED("_nc_setupscreen(%d, %d, %p)"), slines, scolumns, output));
     assert(SP == 0);           /* has been reset in newterm() ! */
@@ -218,6 +224,11 @@ _nc_setupscreen(short slines, short const scolumns, FILE * output)
     SP->_next_screen = _nc_screen_chain;
     _nc_screen_chain = SP;
 
+#ifdef __DJGPP__
+    T(("setting output mode to binary"));
+    fflush(output);
+    setmode(output, O_BINARY);
+#endif
     _nc_set_buffer(output, TRUE);
     SP->_term = cur_term;
     SP->_lines = slines;
@@ -377,8 +388,15 @@ _nc_setupscreen(short slines, short const scolumns, FILE * output)
     _nc_init_acs();
 #if USE_WIDEC_SUPPORT
     _nc_init_wacs();
+
+    SP->_screen_acs_fix = (_nc_unicode_locale() && _nc_locale_breaks_acs());
+    {
+       char *env = _nc_get_locale();
+       SP->_posix_locale = ((env == 0)
+                            || !strcmp(env, "C")
+                            || !strcmp(env, "POSIX"));
+    }
 #endif
-    memcpy(SP->_acs_map, acs_map, sizeof(chtype) * ACS_LEN);
 
     _nc_idcok = TRUE;
     _nc_idlok = FALSE;
@@ -408,7 +426,7 @@ _nc_setupscreen(short slines, short const scolumns, FILE * output)
     def_shell_mode();
     def_prog_mode();
 
-    for (i = 0, rsp = rippedoff; rsp->line && (i < N_RIPS); rsp++, i++) {
+    for (i = 0, rsp = rippedoff; rsp->line && (i < (int) N_RIPS); rsp++, i++) {
        T(("ripping off line %d at %s", i, rsp->line < 0 ? "bottom" : "top"));
        SP->_rippedoff[i] = rippedoff[i];
        if (rsp->hook) {
index 72fff96d9b3153238bb04812e17b7c64b57f8bc1..4bdf8afc45c138ff54bc183c8df693a7d98f7378 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -41,7 +41,7 @@
 #include <ctype.h>
 #include <term.h>              /* num_labels, label_*, plab_norm */
 
-MODULE_ID("$Id: lib_slk.c,v 1.24 2002/09/28 17:46:40 tom Exp $")
+MODULE_ID("$Id: lib_slk.c,v 1.28 2003/05/24 21:10:28 tom Exp $")
 
 /*
  * We'd like to move these into the screen context structure, but cannot,
@@ -64,11 +64,25 @@ slk_paint_info(WINDOW *win)
        wmove(win, 0, 0);
 
        for (i = 0; i < SP->_slk->maxlab; i++) {
-           mvwprintw(win, 0, SP->_slk->ent[i].x, "F%d", i + 1);
+           mvwprintw(win, 0, SP->_slk->ent[i].ent_x, "F%d", i + 1);
        }
     }
 }
 
+/*
+ * Free any memory related to soft labels, return an error.
+ */
+static int
+slk_failed(void)
+{
+    if (SP->_slk) {
+       FreeIfNeeded(SP->_slk->ent);
+       free(SP->_slk);
+       SP->_slk = (SLK *) 0;
+    }
+    return ERR;
+}
+
 /*
  * Initialize soft labels.
  * Called from newterm()
@@ -78,19 +92,26 @@ _nc_slk_initialize(WINDOW *stwin, int cols)
 {
     int i, x;
     int res = OK;
-    char *p;
     unsigned max_length;
 
-    T(("slk_initialize()"));
+    T((T_CALLED("_nc_slk_initialize()")));
 
     if (SP->_slk) {            /* we did this already, so simply return */
-       return (OK);
+       returnCode(OK);
     } else if ((SP->_slk = typeCalloc(SLK, 1)) == 0)
-       return (ERR);
+       returnCode(ERR);
 
     SP->_slk->ent = NULL;
-    SP->_slk->buffer = NULL;
-    SP->_slk->attr = A_STANDOUT;
+
+    /*
+     * If we use colors, vidputs() will suppress video attributes that conflict
+     * with colors.  In that case, we're still guaranteed that "reverse" would
+     * work.
+     */
+    if ((no_color_video & 1) == 0)
+       SP->_slk->attr = A_STANDOUT;
+    else
+       SP->_slk->attr = A_REVERSE;
 
     SP->_slk->maxlab = ((num_labels > 0)
                        ? num_labels
@@ -106,19 +127,19 @@ _nc_slk_initialize(WINDOW *stwin, int cols)
        || SP->_slk->labcnt <= 0
        || (SP->_slk->ent = typeCalloc(slk_ent,
                                       (unsigned) SP->_slk->labcnt)) == NULL)
-       goto exception;
+       returnCode(slk_failed());
 
     max_length = SP->_slk->maxlen;
-    p = SP->_slk->buffer = (char *) calloc((unsigned) (2 * SP->_slk->labcnt),
-                                          (1 + max_length));
-    if (SP->_slk->buffer == NULL)
-       goto exception;
-
     for (i = 0; i < SP->_slk->labcnt; i++) {
-       SP->_slk->ent[i].text = p;
-       p += (1 + max_length);
-       SP->_slk->ent[i].form_text = p;
-       p += (1 + max_length);
+
+       if ((SP->_slk->ent[i].ent_text = (char *)_nc_doalloc(0, max_length + 1)) == 0)
+           returnCode(slk_failed());
+       memset(SP->_slk->ent[i].ent_text, 0, max_length + 1);
+
+       if ((SP->_slk->ent[i].form_text = (char *)_nc_doalloc(0, max_length + 1)) == 0)
+           returnCode(slk_failed());
+       memset(SP->_slk->ent[i].form_text, 0, max_length + 1);
+
        memset(SP->_slk->ent[i].form_text, ' ', max_length);
        SP->_slk->ent[i].visible = (i < SP->_slk->maxlab);
     }
@@ -129,7 +150,7 @@ _nc_slk_initialize(WINDOW *stwin, int cols)
            gap = 1;
 
        for (i = x = 0; i < SP->_slk->maxlab; i++) {
-           SP->_slk->ent[i].x = x;
+           SP->_slk->ent[i].ent_x = x;
            x += max_length;
            x += (i == 3 || i == 7) ? gap : 1;
        }
@@ -141,7 +162,7 @@ _nc_slk_initialize(WINDOW *stwin, int cols)
            if (gap < 1)
                gap = 1;
            for (i = x = 0; i < SP->_slk->maxlab; i++) {
-               SP->_slk->ent[i].x = x;
+               SP->_slk->ent[i].ent_x = x;
                x += max_length;
                x += (i == 3) ? gap : 1;
            }
@@ -153,24 +174,17 @@ _nc_slk_initialize(WINDOW *stwin, int cols)
                if (gap < 1)
                    gap = 1;
                for (i = x = 0; i < SP->_slk->maxlab; i++) {
-                   SP->_slk->ent[i].x = x;
+                   SP->_slk->ent[i].ent_x = x;
                    x += max_length;
                    x += (i == 2 || i == 4) ? gap : 1;
                }
            } else
-               goto exception;
+               returnCode(slk_failed());
        }
     }
     SP->_slk->dirty = TRUE;
     if ((SP->_slk->win = stwin) == NULL) {
-      exception:
-       if (SP->_slk) {
-           FreeIfNeeded(SP->_slk->buffer);
-           FreeIfNeeded(SP->_slk->ent);
-           free(SP->_slk);
-           SP->_slk = (SLK *) 0;
-           res = (ERR);
-       }
+       returnCode(slk_failed());
     }
 
     /* We now reset the format so that the next newterm has again
@@ -179,7 +193,7 @@ _nc_slk_initialize(WINDOW *stwin, int cols)
      */
     SP->slk_format = _nc_slk_format;
     _nc_slk_format = 0;
-    return (res);
+    returnCode(res);
 }
 
 /*
index ec09fddff4f34789b67848fbc745b0b44c93d66c..45cc89cb0d894ac7cadc65ed734ba7775dd5d33c 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *  Author:  Juergen Pfeifer, 1998                                          *
- *  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en              *
  ****************************************************************************/
 
 /*
@@ -38,7 +37,7 @@
  */
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_slkatr_set.c,v 1.6 2002/07/06 22:47:23 juergen Exp $")
+MODULE_ID("$Id: lib_slkatr_set.c,v 1.7 2003/10/25 15:27:03 tom Exp $")
 
 NCURSES_EXPORT(int)
 slk_attr_set
index b6032b4dde7d9bc60fb7f6a811c0ab596a0a6d79..d7af4a258d88e60baf898d1fceebdca0674f6dce 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -28,7 +28,6 @@
 
 /****************************************************************************
  *  Author:  Juergen Pfeifer, 1998                                          *
- *  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en              *
  ****************************************************************************/
 
 /*
@@ -36,7 +35,7 @@
  */
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_slkcolor.c,v 1.8 2002/07/06 22:49:22 juergen Exp $")
+MODULE_ID("$Id: lib_slkcolor.c,v 1.9 2003/10/25 15:27:03 tom Exp $")
 
 NCURSES_EXPORT(int)
 slk_color(short color_pair_number)
index 0224e9b0c8632dd3daad87d1050ff569adde577a..42bb4ac1425ddeb616ffe49403c45895e934fdc3 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2000,2003 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            *
@@ -38,7 +38,7 @@
  */
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_slklab.c,v 1.6 2000/12/10 02:43:27 tom Exp $")
+MODULE_ID("$Id: lib_slklab.c,v 1.7 2003/03/29 22:53:48 tom Exp $")
 
 NCURSES_EXPORT(char *)
 slk_label(int n)
@@ -47,5 +47,5 @@ slk_label(int n)
 
     if (SP == NULL || SP->_slk == NULL || n < 1 || n > SP->_slk->labcnt)
        returnPtr(0);
-    returnPtr(SP->_slk->ent[n - 1].text);
+    returnPtr(SP->_slk->ent[n - 1].ent_text);
 }
index 18e5b0c1c2f73b53733b403968f05844eff6135c..9040cc0429ecb2b9ac0222b63a7a4b29ae81b3aa 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2000,2003 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            *
@@ -38,7 +38,7 @@
 #include <curses.priv.h>
 #include <term.h>              /* num_labels, label_*, plab_norm */
 
-MODULE_ID("$Id: lib_slkrefr.c,v 1.10 2000/12/10 02:43:27 tom Exp $")
+MODULE_ID("$Id: lib_slkrefr.c,v 1.11 2003/03/29 22:53:48 tom Exp $")
 
 /*
  * Write the soft labels to the soft-key window.
@@ -58,7 +58,7 @@ slk_intern_refresh(SLK * slk)
                        putp(tparm(plab_norm, i + 1, slk->ent[i].form_text));
                    }
                } else {
-                   wmove(slk->win, SLK_LINES(fmt) - 1, slk->ent[i].x);
+                   wmove(slk->win, SLK_LINES(fmt) - 1, slk->ent[i].ent_x);
                    if (SP && SP->_slk)
                        wattrset(slk->win, SP->_slk->attr);
                    waddnstr(slk->win, slk->ent[i].form_text,
index d15002f17dba7205046dce6e0d58678db569b2be..595a8ad1b9b34c0e3463e4f4c446dcae5216c42b 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2001,2003 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            *
 #include <curses.priv.h>
 #include <ctype.h>
 
-MODULE_ID("$Id: lib_slkset.c,v 1.7 2001/06/02 22:50:29 skimo Exp $")
+MODULE_ID("$Id: lib_slkset.c,v 1.10 2003/04/12 21:32:16 tom Exp $")
 
 NCURSES_EXPORT(int)
 slk_set(int i, const char *astr, int format)
 {
     SLK *slk = SP->_slk;
     size_t len;
+    int offset;
     const char *str = astr;
     const char *p;
 
@@ -64,33 +65,30 @@ slk_set(int i, const char *astr, int format)
     --i;                       /* Adjust numbering of labels */
 
     len = (size_t) (p - str);
-    if (len > (unsigned) slk->maxlen)
+    if (len > (size_t) slk->maxlen)
        len = slk->maxlen;
     if (len == 0)
-       slk->ent[i].text[0] = 0;
+       slk->ent[i].ent_text[0] = 0;
     else
-       (void) strncpy(slk->ent[i].text, str, len);
+       strncpy(slk->ent[i].ent_text, str, len)[len] = 0;
     memset(slk->ent[i].form_text, ' ', (unsigned) slk->maxlen);
-    slk->ent[i].text[slk->maxlen] = 0;
-    /* len = strlen(slk->ent[i].text); */
+    slk->ent[i].ent_text[slk->maxlen] = 0;
 
     switch (format) {
+    default:
     case 0:                    /* left-justified */
-       memcpy(slk->ent[i].form_text,
-              slk->ent[i].text,
-              len);
+       offset = 0;
        break;
     case 1:                    /* centered */
-       memcpy(slk->ent[i].form_text + (slk->maxlen - len) / 2,
-              slk->ent[i].text,
-              len);
+       offset = (slk->maxlen - len) / 2;
        break;
     case 2:                    /* right-justified */
-       memcpy(slk->ent[i].form_text + slk->maxlen - len,
-              slk->ent[i].text,
-              len);
+       offset = slk->maxlen - len;
        break;
     }
+    memcpy(slk->ent[i].form_text + offset,
+          slk->ent[i].ent_text,
+          len);
     slk->ent[i].form_text[slk->maxlen] = 0;
     slk->ent[i].dirty = TRUE;
     returnCode(OK);
index 9cc8081b9115ef48de76a567706d89feb6491978..e5b852c70d3a6c2b634b5ffafbee406b9ca269dc 100644 (file)
 #include <curses.priv.h>
 #include <term.h>
 
-MODULE_ID("$Id: resizeterm.c,v 1.14 2002/07/13 21:32:57 tom Exp $")
+MODULE_ID("$Id: resizeterm.c,v 1.15 2002/12/28 01:21:34 tom Exp $")
 
 #define stolen_lines (screen_lines - SP->_lines_avail)
 
+static int current_lines;
+static int current_cols;
+
 NCURSES_EXPORT(bool)
 is_term_resized(int ToLines, int ToCols)
 {
@@ -99,7 +102,7 @@ static int
 adjust_window(WINDOW *win, int ToLines, int ToCols, int stolen)
 {
     int result;
-    int bottom = screen_lines + SP->_topstolen - stolen;
+    int bottom = current_lines + SP->_topstolen - stolen;
     int myLines = win->_maxy + 1;
     int myCols = win->_maxx + 1;
 
@@ -109,13 +112,13 @@ adjust_window(WINDOW *win, int ToLines, int ToCols, int stolen)
        getbegy(win), getbegx(win)));
 
     if (win->_begy >= bottom) {
-       win->_begy += (ToLines - screen_lines);
+       win->_begy += (ToLines - current_lines);
     } else {
-       if (myLines == screen_lines - stolen
-           && ToLines != screen_lines)
+       if (myLines == current_lines - stolen
+           && ToLines != current_lines)
            myLines = ToLines - stolen;
-       else if (myLines == screen_lines
-                && ToLines != screen_lines)
+       else if (myLines == current_lines
+                && ToLines != current_lines)
            myLines = ToLines;
     }
 
@@ -125,12 +128,12 @@ adjust_window(WINDOW *win, int ToLines, int ToCols, int stolen)
     if (myCols > ToCols)
        myCols = ToCols;
 
-    if (myLines == screen_lines
-       && ToLines != screen_lines)
-       myCols = ToLines;
+    if (myLines == current_lines
+       && ToLines != current_lines)
+       myLines = ToLines;
 
-    if (myCols == screen_columns
-       && ToCols != screen_columns)
+    if (myCols == current_cols
+       && ToCols != current_cols)
        myCols = ToCols;
 
     result = wresize(win, myLines, myCols);
@@ -216,15 +219,19 @@ resize_term(int ToLines, int ToCols)
        screen_lines, screen_columns));
 
     if (is_term_resized(ToLines, ToCols)) {
-       int myLines = screen_lines;
-       int myCols = screen_columns;
+       int myLines = current_lines = screen_lines;
+       int myCols = current_cols = screen_columns;
 
        if (ToLines > screen_lines) {
            increase_size(myLines = ToLines, myCols, was_stolen);
+           current_lines = myLines;
+           current_cols = myCols;
        }
 
        if (ToCols > screen_columns) {
            increase_size(myLines, myCols = ToCols, was_stolen);
+           current_lines = myLines;
+           current_cols = myCols;
        }
 
        if (ToLines < myLines ||
index cb48365f7f51074571dd196b8dfebae1161409b7..81fe44f0c783d6945e0618af7eee095d0ea8914a 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2001,2003 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            *
@@ -33,7 +33,7 @@
 #include <curses.priv.h>
 #include <ctype.h>
 
-MODULE_ID("$Id: safe_sprintf.c,v 1.14 2001/07/08 00:58:34 tom Exp $")
+MODULE_ID("$Id: safe_sprintf.c,v 1.18 2003/08/09 21:52:04 tom Exp $")
 
 #if USE_SAFE_SPRINTF
 
@@ -56,10 +56,13 @@ _nc_printf_length(const char *fmt, va_list ap)
     char *buffer;
     char *format;
     int len = 0;
+    size_t fmt_len;
+    char fmt_arg[BUFSIZ];
 
     if (fmt == 0 || *fmt == '\0')
-       return -1;
-    if ((format = typeMalloc(char, strlen(fmt) + 1)) == 0)
+       return 0;
+    fmt_len = strlen(fmt) + 1;
+    if ((format = typeMalloc(char, fmt_len)) == 0)
          return -1;
     if ((buffer = typeMalloc(char, length)) == 0) {
        free(format);
@@ -106,7 +109,12 @@ _nc_printf_length(const char *fmt, va_list ap)
                    } else if (state == Prec) {
                        prec = ival;
                    }
-                   sprintf(&format[--f], "%d", ival);
+                   sprintf(fmt_arg, "%d", ival);
+                   fmt_len += strlen(fmt_arg);
+                   if ((format = realloc(format, fmt_len)) == 0) {
+                       return -1;
+                   }
+                   strcpy(&format[--f], fmt_arg);
                    f = strlen(format);
                } else if (isalpha(UChar(*fmt))) {
                    done = TRUE;
@@ -203,42 +211,52 @@ _nc_printf_length(const char *fmt, va_list ap)
  * Wrapper for vsprintf that allocates a buffer big enough to hold the result.
  */
 NCURSES_EXPORT(char *)
-_nc_printf_string
-(const char *fmt, va_list ap)
+_nc_printf_string(const char *fmt, va_list ap)
 {
+    static char *buf;
+    static size_t used;
+    char *result = 0;
+
+    if (fmt != 0) {
 #if USE_SAFE_SPRINTF
-    char *buf = 0;
-    int len = _nc_printf_length(fmt, ap);
+       int len = _nc_printf_length(fmt, ap);
 
-    if (len > 0) {
-       if ((buf = typeMalloc(char, len + 1)) == 0)
-             return (0);
-       vsprintf(buf, fmt, ap);
-    }
+       if ((int) used < len + 1) {
+           used = 2 * (len + 1);
+           buf = typeRealloc(char, used, buf);
+       }
+       if (buf != 0) {
+           *buf = '\0';
+           if (len >= 0) {
+               vsprintf(buf, fmt, ap);
+           }
+           result = buf;
+       }
 #else
-    static int rows, cols;
-    static char *buf;
-    static size_t len;
-
-    if (screen_lines > rows || screen_columns > cols) {
-       if (screen_lines > rows)
-           rows = screen_lines;
-       if (screen_columns > cols)
-           cols = screen_columns;
-       len = (rows * (cols + 1)) + 1;
-       buf = typeRealloc(char, len, buf);
-       if (buf == 0) {
-           return (0);
+       static int rows, cols;
+
+       if (screen_lines > rows || screen_columns > cols) {
+           if (screen_lines > rows)
+               rows = screen_lines;
+           if (screen_columns > cols)
+               cols = screen_columns;
+           used = (rows * (cols + 1)) + 1;
+           buf = typeRealloc(char, used, buf);
        }
-    }
 
-    if (buf != 0) {
+       if (buf != 0) {
 # if HAVE_VSNPRINTF
-       vsnprintf(buf, len, fmt, ap);   /* GNU extension */
+           vsnprintf(buf, used, fmt, ap);      /* GNU extension */
 # else
-       vsprintf(buf, fmt, ap); /* ANSI */
+           vsprintf(buf, fmt, ap);     /* ANSI */
 # endif
-    }
+           result = buf;
+       }
 #endif
-    return buf;
+    } else if (buf != 0) {     /* see _nc_freeall() */
+       free(buf);
+       buf = 0;
+       used = 0;
+    }
+    return result;
 }
index 8ba8629a4f509dea884c15631354a6dc818bdd55..36442e090a410f6e28e4a90868e79aa3b3988efb 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey                        1996-2003               *
  ****************************************************************************/
 
-#include <curses.priv.h>
-
-#include <SigAction.h>
-
 /* This file provides sigaction() emulation using sigvec() */
 /* Use only if this is non POSIX system */
 
-#if !HAVE_SIGACTION && HAVE_SIGVEC
+MODULE_ID("$Id: sigaction.c,v 1.14 2003/12/07 01:06:52 tom Exp $")
 
-MODULE_ID("$Id: sigaction.c,v 1.13 2002/05/18 19:56:26 tom Exp $")
-
-NCURSES_EXPORT(int)
-sigaction
-(int sig, sigaction_t * sigact, sigaction_t * osigact)
+static int
+_nc_sigaction(int sig, sigaction_t * sigact, sigaction_t * osigact)
 {
     return sigvec(sig, sigact, osigact);
 }
 
-NCURSES_EXPORT(int)
-sigemptyset
-(sigset_t * mask)
+static int
+_nc_sigemptyset(sigset_t * mask)
 {
     *mask = 0;
     return 0;
 }
 
-NCURSES_EXPORT(int)
-sigprocmask
-(int mode, sigset_t * mask, sigset_t * omask)
+static int
+_nc_sigprocmask(int mode, sigset_t * mask, sigset_t * omask)
 {
     sigset_t current = sigsetmask(0);
 
@@ -77,41 +69,31 @@ sigprocmask
     return 0;
 }
 
-NCURSES_EXPORT(int)
-sigsuspend(sigset_t * mask)
+static int
+_nc_sigaddset(sigset_t * mask, int sig)
 {
-    return sigpause(*mask);
+    *mask |= sigmask(sig);
+    return 0;
 }
 
-NCURSES_EXPORT(int)
-sigdelset
-(sigset_t * mask, int sig)
+/* not used in lib_tstp.c */
+#if 0
+static int
+_nc_sigsuspend(sigset_t * mask)
 {
-    *mask &= ~sigmask(sig);
-    return 0;
+    return sigpause(*mask);
 }
 
-NCURSES_EXPORT(int)
-sigaddset
-(sigset_t * mask, int sig)
+static int
+_nc_sigdelset(sigset_t * mask, int sig)
 {
-    *mask |= sigmask(sig);
+    *mask &= ~sigmask(sig);
     return 0;
 }
 
-NCURSES_EXPORT(int)
-sigismember
-(sigset_t * mask, int sig)
+static int
+_nc_sigismember(sigset_t * mask, int sig)
 {
     return (*mask & sigmask(sig)) != 0;
 }
-
-#else
-extern
-NCURSES_EXPORT(void)
-_nc_sigaction(void);           /* quiet's gcc warning */
-NCURSES_EXPORT(void)
-_nc_sigaction(void)
-{
-}                              /* nonempty for strict ANSI compilers */
 #endif
index fe7d93ed5e1012e730ea2c58c3936ed03ba84ee8..3ae47898b29a9651cbac806e89f1ea8cc577fb1b 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2001,2003 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            *
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: tries.c,v 1.15 2001/12/16 00:50:40 tom Exp $")
+MODULE_ID("$Id: tries.c,v 1.19 2003/05/17 23:11:24 tom Exp $")
 
 /*
  * Expand a keycode into the string that it corresponds to, returning null if
  * no match was found, otherwise allocating a string of the result.
  */
 NCURSES_EXPORT(char *)
-_nc_expand_try
-(struct tries *tree, unsigned short code, int *count, size_t len)
+_nc_expand_try(struct tries *tree, unsigned short code, int *count, size_t len)
 {
     struct tries *ptr = tree;
     char *result = 0;
@@ -84,8 +83,7 @@ _nc_expand_try
  * true if the code was found/removed.
  */
 NCURSES_EXPORT(int)
-_nc_remove_key
-(struct tries **tree, unsigned short code)
+_nc_remove_key(struct tries **tree, unsigned short code)
 {
     T((T_CALLED("_nc_remove_key(%p,%d)"), tree, code));
 
@@ -117,7 +115,7 @@ _nc_remove_key
  * true if the string was found/removed.
  */
 NCURSES_EXPORT(int)
-_nc_remove_string(struct tries **tree, char *string)
+_nc_remove_string(struct tries **tree, const char *string)
 {
     T((T_CALLED("_nc_remove_string(%p,%s)"), tree, _nc_visbuf(string)));
 
@@ -125,18 +123,17 @@ _nc_remove_string(struct tries **tree, char *string)
        returnCode(FALSE);
 
     while (*tree != 0) {
-       if ((unsigned char) (*tree)->ch == (unsigned char) *string) {
+       if (UChar((*tree)->ch) == UChar(*string)) {
            if (string[1] != 0)
                returnCode(_nc_remove_string(&(*tree)->child, string + 1));
-           if ((*tree)->child) {
-               /* don't cut the whole sub-tree */
-               (*tree)->value = 0;
-           } else {
+           if ((*tree)->child == 0) {
                struct tries *to_free = *tree;
                *tree = (*tree)->sibling;
                free(to_free);
+               returnCode(TRUE);
+           } else {
+               returnCode(FALSE);
            }
-           returnCode(TRUE);
        }
        tree = &(*tree)->sibling;
     }
index b78c99d00e056b172a5a182ea1113d590b57af62..6e7a9870d3b6415f9faf9f7ddbdd07db3b2065b2 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1999,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1999-2000,2004 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            *
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: version.c,v 1.4 2000/12/10 02:43:28 tom Exp $")
+MODULE_ID("$Id: version.c,v 1.5 2004/01/10 21:18:17 tom Exp $")
 
 NCURSES_EXPORT(const char *)
 curses_version(void)
 {
-    static char my_version[80];
-
     T((T_CALLED("curses_version()")));
-    sprintf(my_version, "ncurses %s.%d",
-           NCURSES_VERSION,
-           NCURSES_VERSION_PATCH);
-    returnPtr(my_version);
+    returnPtr("ncurses " NCURSES_VERSION_STRING);
 }
index 12df4aa3c15d4c9c3170650896852d9aada658e9..4d082ee422d462a73762c256064e61f81fb29c5a 100644 (file)
@@ -38,7 +38,7 @@
 
 #if !HAVE_VSSCANF
 
-MODULE_ID("$Id: vsscanf.c,v 1.16 2002/09/07 17:27:56 tom Exp $")
+MODULE_ID("$Id: vsscanf.c,v 1.17 2003/05/24 21:10:28 tom Exp $")
 
 #if !(HAVE_VFSCANF || HAVE__DOSCAN)
 
@@ -230,7 +230,7 @@ vsscanf(const char *str, const char *format, va_list ap)
                /* find a chunk */
                state = sUnknown;
                chunk = cUnknown;
-               other = cUnknown;
+               other = oUnknown;
                pointer = 0;
                for (n = 0; format[n] != 0 && state != sFinal; ++n) {
                    my_fmt[n] = format[n];
index 403cf50d0a16340d8247b728009d44392ae10073..12492b27f7b2df155ff6dad8a19e7259cc792bde 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2003,2004 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            *
@@ -34,7 +34,7 @@
 
 
 /*
- * $Id: curses.priv.h,v 1.228 2002/10/12 15:49:10 tom Exp $
+ * $Id: curses.priv.h,v 1.255 2004/02/01 01:05:58 Stanislav.Ievlev Exp $
  *
  *     curses.priv.h
  *
@@ -130,7 +130,9 @@ extern int errno;
 
 /* EMX mouse support */
 #ifdef __EMX__
-#define USE_EMX_MOUSE
+#define USE_EMX_MOUSE 1
+#else
+#define USE_EMX_MOUSE 0
 #endif
 
 #define DEFAULT_MAXCLICK 166
@@ -259,21 +261,32 @@ color_t;
 
 struct ldat
 {
-       NCURSES_CH_T    *text;          /* text of the line */
-       NCURSES_SIZE_T  firstchar;      /* first changed character in the line */
-       NCURSES_SIZE_T  lastchar;       /* last changed character in the line */
-       NCURSES_SIZE_T  oldindex;       /* index of the line at last update */
+       NCURSES_CH_T    *text;          /* text of the line */
+       NCURSES_SIZE_T  firstchar;      /* first changed character in the line */
+       NCURSES_SIZE_T  lastchar;       /* last changed character in the line */
+       NCURSES_SIZE_T  oldindex;       /* index of the line at last update */
 };
 
+typedef enum {
+       M_XTERM = -1            /* use xterm's mouse tracking? */
+       ,M_NONE = 0             /* no mouse device */
+#if USE_GPM_SUPPORT
+       ,M_GPM                  /* use GPM */
+#endif
+#if USE_SYSMOUSE
+       ,M_SYSMOUSE             /* FreeBSD sysmouse on console */
+#endif
+} MouseType;
+
 /*
  * Structure for soft labels.
  */
 
 typedef struct
 {
-       char *text;             /* text for the label */
+       char *ent_text;         /* text for the label */
        char *form_text;        /* formatted text (left/center/...) */
-       int x;                  /* x coordinate of this field */
+       int ent_x;              /* x coordinate of this field */
        char dirty;             /* this label has changed */
        char visible;           /* field is visible */
 } slk_ent;
@@ -283,11 +296,10 @@ typedef struct {
        char hidden;            /* soft labels are hidden */
        WINDOW *win;
        slk_ent *ent;
-       char*  buffer;           /* buffer for labels */
-       short  maxlab;           /* number of available labels */
-       short  labcnt;           /* number of allocated labels */
-       short  maxlen;           /* length of labels */
-        chtype attr;             /* soft label attribute */
+       short  maxlab;          /* number of available labels */
+       short  labcnt;          /* number of allocated labels */
+       short  maxlen;          /* length of labels */
+       chtype attr;            /* soft label attribute */
 } SLK;
 
 typedef struct {
@@ -308,7 +320,7 @@ struct screen {
        char            *_setbuf;       /* buffered I/O for output          */
        int             _buffered;      /* setvbuf uses _setbuf data        */
        int             _checkfd;       /* filedesc for typeahead check     */
-       struct term     *_term;         /* terminal type information        */
+       TERMINAL        *_term;         /* terminal type information        */
        short           _lines;         /* screen lines                     */
        short           _columns;       /* screen columns                   */
 
@@ -326,6 +338,7 @@ struct screen {
        bool            _tried;         /* keypad mode was initialized      */
        bool            _keypad_on;     /* keypad mode is currently on      */
 
+       bool            _called_wgetch; /* check for recursion in wgetch()  */
        int             _fifo[FIFO_SIZE];       /* input push-back buffer   */
        short           _fifohead,      /* head of fifo queue               */
                        _fifotail,      /* tail of fifo queue               */
@@ -339,6 +352,7 @@ struct screen {
        int             _cursor;        /* visibility of the cursor         */
        int             _cursrow;       /* physical cursor row              */
        int             _curscol;       /* physical cursor column           */
+       bool            _notty;         /* true if we cannot switch non-tty */
        int             _nl;            /* True if NL -> CR/NL is on        */
        int             _raw;           /* True if in raw mode              */
        int             _cbreak;        /* 1 if in cbreak mode              */
@@ -405,7 +419,7 @@ struct screen {
 #endif
        chtype          _xmc_suppress;  /* attributes to suppress if xmc     */
        chtype          _xmc_triggers;  /* attributes to process if xmc      */
-       chtype          _acs_map[ACS_LEN];
+       chtype          _acs_map[ACS_LEN]; /* the real alternate-charset map */
 
        /* used in lib_vidattr.c */
        bool            _use_rmso;      /* true if we may use 'rmso'         */
@@ -426,6 +440,7 @@ struct screen {
        /*
         * These are the data that support the mouse interface.
         */
+       MouseType       _mouse_type;
        int             _maxclick;
        bool            (*_mouse_event) (SCREEN *);
        bool            (*_mouse_inline)(SCREEN *);
@@ -433,6 +448,16 @@ struct screen {
        void            (*_mouse_resume)(SCREEN *);
        void            (*_mouse_wrap)  (SCREEN *);
        int             _mouse_fd;      /* file-descriptor, if any */
+       NCURSES_CONST char *_mouse_xtermcap; /* string to enable/disable mouse */
+#if USE_SYSMOUSE
+       MEVENT          _sysmouse_fifo[FIFO_SIZE];
+       int             _sysmouse_head;
+       int             _sysmouse_tail;
+       int             _sysmouse_char_width;   /* character width */
+       int             _sysmouse_char_height;  /* character height */
+       int             _sysmouse_old_buttons;
+       int             _sysmouse_new_buttons;
+#endif
 
        /*
         * This supports automatic resizing
@@ -463,6 +488,14 @@ struct screen {
 
        bool            _cleanup;       /* cleanup after int/quit signal */
        int             (*_outch)(int); /* output handler if not putc */
+
+       /* recent versions of 'screen' have partially-working support for
+        * UTF-8, but do not permit ACS at the same time (see tty_update.c).
+        */
+#if USE_WIDEC_SUPPORT
+       bool            _posix_locale;
+       bool            _screen_acs_fix;
+#endif
 };
 
 extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain;
@@ -471,21 +504,19 @@ extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain;
 #include <nomacros.h>
 #endif
 
-/*
- * The margins are used in resizeterm() to retain the original layout after
- * resizing.
- */
        WINDOWLIST {
+       WINDOW  win;    /* first, so WINDOW_EXT() works */
        WINDOWLIST *next;
-#if HAVE_RESIZETERM
-       int     l_margin;
-       int     r_margin;
-       int     t_margin;
-       int     b_margin;
+#ifdef _XOPEN_SOURCE_EXTENDED
+       char addch_work[(MB_LEN_MAX * 9) + 1];
+       int addch_used;
+       int addch_x;
+       int addch_y;
 #endif
-       WINDOW  win;
 };
 
+#define WINDOW_EXT(win,field) (((WINDOWLIST *)(win))->field)
+
 /* The terminfo source is assumed to be 7-bit ASCII */
 #define is7bits(c)     ((unsigned)(c) < 128)
 
@@ -539,18 +570,29 @@ extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain;
 #define O_BINARY 0
 #endif
 
+#ifdef TRACE
+#define TRACE_OUTCHARS(n) _nc_outchars += (n);
+#else
+#define TRACE_OUTCHARS(n) /* nothing */
+#endif
+
 #define UChar(c)       ((unsigned char)(c))
 #define ChCharOf(c)    ((c) & (chtype)A_CHARTEXT)
 #define ChAttrOf(c)     ((c) & (chtype)A_ATTRIBUTES)
 
+#ifndef MB_LEN_MAX
+#define MB_LEN_MAX 8 /* should be >= MB_CUR_MAX, but that may be a function */
+#endif
+
 #if USE_WIDEC_SUPPORT /* { */
+#define NulChar                0,0,0,0 /* FIXME: see CCHARW_MAX */
 #define CharOf(c)      ((c).chars[0])
 #define AttrOf(c)      ((c).attr)
 #define AddAttr(c,a)   (c).attr |= a
 #define RemAttr(c,a)   (c).attr &= ~(a)
 #define SetAttr(c,a)   (c).attr = a
-#define NewChar(ch)    { ChAttrOf(ch), { ChCharOf(ch) } }
-#define NewChar2(c,a)  { a, { c } }
+#define NewChar(ch)    { ChAttrOf(ch), { ChCharOf(ch), NulChar } }
+#define NewChar2(c,a)  { a, { c, NulChar } }
 #define CharEq(a,b)    (!memcmp(&a, &b, sizeof(a)))
 #define SetChar(ch,c,a)        do {                                                        \
                            NCURSES_CH_T *_cp = &ch;                                \
@@ -562,9 +604,14 @@ extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain;
 #define CARG_CH_T      const NCURSES_CH_T *
 #define PUTC_DATA      char PUTC_buf[MB_LEN_MAX]; int PUTC_i, PUTC_n; \
                        mbstate_t PUT_st; wchar_t PUTC_ch
+#define PUTC_INIT      memset (&PUT_st, '\0', sizeof (PUT_st));                    \
+                       PUTC_i = 0
 #define PUTC(ch,b)     do { if(!isnac(ch)) {                                       \
-                           memset (&PUT_st, '\0', sizeof (PUT_st));                \
-                           PUTC_i = 0;                                             \
+                       if (Charable(ch)) {                                         \
+                           fputc(CharOf(ch), b);                                   \
+                           TRACE_OUTCHARS(1);                                      \
+                       } else {                                                    \
+                           PUTC_INIT;                                              \
                            do {                                                    \
                                PUTC_ch = PUTC_i < CCHARW_MAX ?                     \
                                            (ch).chars[PUTC_i] : L'\0';             \
@@ -577,7 +624,8 @@ extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain;
                                fwrite(PUTC_buf, (unsigned) PUTC_n, 1, b);          \
                                ++PUTC_i;                                           \
                            } while (PUTC_ch != L'\0');                             \
-                       } } while (0)
+                           TRACE_OUTCHARS(PUTC_i);                                 \
+                       } } } while (0)
 
 #define BLANK          { WA_NORMAL, ' ' }
 #define ISBLANK(ch)    ((ch).chars[0] == L' ' && (ch).chars[1] == L'\0')
@@ -585,9 +633,10 @@ extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain;
 #define WA_NAC         1
 #define isnac(ch)      (AttrOf(ch) & WA_NAC)
 #define if_WIDEC(code)  code
-#define Charable(ch)   (!isnac(ch) &&                                  \
-                        (ch).chars[1] == L'\0' &&                      \
-                         (wctob(CharOf(ch)) == (char)CharOf(ch)))
+#define Charable(ch)   ((SP != 0 && SP->_posix_locale)                 \
+                        || (!isnac(ch) &&                              \
+                            (ch).chars[1] == L'\0' &&                  \
+                             _nc_is_charable(CharOf(ch))))
 
 #define L(ch)          L ## ch
 #else /* }{ */
@@ -743,7 +792,7 @@ extern      NCURSES_EXPORT(void) name (void); \
 
 #define ALL_BUT_COLOR ((chtype)~(A_COLOR))
 #define IGNORE_COLOR_OFF FALSE
-#define NONBLANK_ATTR (A_BOLD|A_DIM|A_BLINK)
+#define NONBLANK_ATTR (A_NORMAL|A_BOLD|A_DIM|A_BLINK)
 #define XMC_CHANGES(c) ((c) & SP->_xmc_suppress)
 
 #define toggle_attr_on(S,at) {\
@@ -781,7 +830,7 @@ extern      NCURSES_EXPORT(void) name (void); \
                : ((enter_insert_mode && exit_insert_mode) \
                  ? SP->_smir_cost + SP->_rmir_cost + (SP->_ip_cost * count) \
                  : ((insert_character != 0) \
-                   ? (SP->_ich1_cost * count) \
+                   ? ((SP->_ich1_cost + SP->_ip_cost) * count) \
                    : INFINITY)))
 
 #if USE_XMC_SUPPORT
@@ -847,6 +896,13 @@ extern NCURSES_EXPORT(void) _nc_expanded (void);
 #define getcwd(buf,len) getwd(buf)
 #endif
 
+/* charable.c */
+#if USE_WIDEC_SUPPORT
+extern NCURSES_EXPORT(bool) _nc_is_charable(wchar_t);
+extern NCURSES_EXPORT(int) _nc_to_char(wint_t);
+extern NCURSES_EXPORT(wint_t) _nc_to_widechar(int);
+#endif
+
 /* doupdate.c */
 #if USE_XMC_SUPPORT
 extern NCURSES_EXPORT(void) _nc_do_xmc_glitch (attr_t);
@@ -872,6 +928,9 @@ extern NCURSES_EXPORT(bool) _nc_reset_colors(void);
 /* lib_getch.c */
 extern NCURSES_EXPORT(int) _nc_wgetch(WINDOW *, unsigned long *, int EVENTLIST_2nd(_nc_eventlist *));
 
+/* lib_insch.c */
+extern NCURSES_EXPORT(void) _nc_insert_ch(WINDOW *, chtype);
+
 /* lib_mvcur.c */
 #define INFINITY       1000000 /* cost: too high to use */
 
@@ -890,6 +949,12 @@ extern NCURSES_EXPORT(int) _nc_has_mouse (void);
 
 /* lib_mvcur.c */
 #define INFINITY       1000000 /* cost: too high to use */
+#define BAUDBYTE       9       /* 9 = 7 bits + 1 parity + 1 stop */
+
+/* lib_setup.c */
+extern NCURSES_EXPORT(char *) _nc_get_locale(void);
+extern NCURSES_EXPORT(int) _nc_unicode_locale(void);
+extern NCURSES_EXPORT(int) _nc_locale_breaks_acs(void);
 
 /* lib_wacs.c */
 #if USE_WIDEC_SUPPORT
@@ -897,9 +962,10 @@ extern NCURSES_EXPORT(void) _nc_init_wacs(void);
 #endif
 
 typedef struct {
-    char *s_head;
-    char *s_tail;
-    size_t s_size;
+    char *s_head;      /* beginning of the string (may be null) */
+    char *s_tail;      /* end of the string (may be null) */
+    size_t s_size;     /* current remaining size available */
+    size_t s_init;     /* total size available */
 } string_desc;
 
 /* strings.c */
@@ -931,14 +997,15 @@ extern NCURSES_EXPORT(char *) _nc_printf_string (const char *, va_list);
 extern NCURSES_EXPORT(void) _nc_add_to_try (struct tries **, const char *, unsigned short);
 extern NCURSES_EXPORT(char *) _nc_expand_try (struct tries *, unsigned short, int *, size_t);
 extern NCURSES_EXPORT(int) _nc_remove_key (struct tries **, unsigned short);
-extern NCURSES_EXPORT(int) _nc_remove_string (struct tries **, char *);
+extern NCURSES_EXPORT(int) _nc_remove_string (struct tries **, const char *);
 
 /* elsewhere ... */
+extern NCURSES_EXPORT(NCURSES_CH_T) _nc_render (WINDOW *, NCURSES_CH_T);
 extern NCURSES_EXPORT(WINDOW *) _nc_makenew (int, int, int, int, int);
 extern NCURSES_EXPORT(char *) _nc_home_terminfo (void);
 extern NCURSES_EXPORT(char *) _nc_trace_buf (int, size_t);
-extern NCURSES_EXPORT(NCURSES_CH_T) _nc_render (WINDOW *, NCURSES_CH_T);
-extern NCURSES_EXPORT(int)  _nc_access (const char *, int);
+extern NCURSES_EXPORT(char *) _nc_trace_bufcat (int, const char *);
+extern NCURSES_EXPORT(int) _nc_access (const char *, int);
 extern NCURSES_EXPORT(int) _nc_baudrate (int);
 extern NCURSES_EXPORT(int) _nc_freewin (WINDOW *);
 extern NCURSES_EXPORT(int) _nc_getenv_num (const char *);
@@ -955,7 +1022,6 @@ extern NCURSES_EXPORT(void) _nc_hash_map (void);
 extern NCURSES_EXPORT(void) _nc_init_keytry (void);
 extern NCURSES_EXPORT(void) _nc_keep_tic_dir (const char *);
 extern NCURSES_EXPORT(void) _nc_make_oldhash (int i);
-extern NCURSES_EXPORT(void) _nc_outstr (const char *str);
 extern NCURSES_EXPORT(void) _nc_scroll_oldhash (int n, int top, int bot);
 extern NCURSES_EXPORT(void) _nc_scroll_optimize (void);
 extern NCURSES_EXPORT(void) _nc_scroll_window (WINDOW *, int const, short const, short const, NCURSES_CH_T);
@@ -993,9 +1059,7 @@ extern NCURSES_EXPORT_VAR(int *) _nc_oldnums;
 
 #define USE_SETBUF_0 0
 
-#define NC_BUFFERED(flag) \
-       if ((SP->_buffered != 0) != flag) \
-               _nc_set_buffer(SP->_ofp, flag)
+#define NC_BUFFERED(flag) _nc_set_buffer(SP->_ofp, flag)
 
 #define NC_OUTPUT ((SP != 0) ? SP->_ofp : stdout)
 
index 1a378196b560f086882793c083f9b6fa1483bb83..efe7bc7c0d96d5733febb5cf7008f57a2610a233 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2003,2004 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            *
@@ -27,7 +27,7 @@
  ****************************************************************************/
 
 /****************************************************************************
- *  Author: Thomas E. Dickey 1996-2001,2002                                 *
+ *  Author: Thomas E. Dickey 1996-2003,2004                                 *
  ****************************************************************************/
 /* LINTLIBRARY */
 
@@ -59,8 +59,8 @@ void  _nc_make_oldhash(
 
 #undef _nc_scroll_oldhash
 void   _nc_scroll_oldhash(
-               int     n, 
-               int     top, 
+               int     n,
+               int     top,
                int     bot)
                { /* void */ }
 
@@ -70,25 +70,25 @@ void        _nc_scroll_oldhash(
 
 #undef _nc_render
 chtype _nc_render(
-               WINDOW  *win, 
+               WINDOW  *win,
                chtype  ch)
                { return(*(chtype *)0); }
 
 #undef _nc_waddch_nosync
 int    _nc_waddch_nosync(
-               WINDOW  *win, 
+               WINDOW  *win,
                const chtype c)
                { return(*(int *)0); }
 
 #undef waddch
 int    waddch(
-               WINDOW  *win, 
+               WINDOW  *win,
                const chtype ch)
                { return(*(int *)0); }
 
 #undef wechochar
 int    wechochar(
-               WINDOW  *win, 
+               WINDOW  *win,
                const chtype ch)
                { return(*(int *)0); }
 
@@ -96,15 +96,15 @@ int wechochar(
 
 #undef waddnstr
 int    waddnstr(
-               WINDOW  *win, 
-               const char *astr, 
+               WINDOW  *win,
+               const char *astr,
                int     n)
                { return(*(int *)0); }
 
 #undef waddchnstr
 int    waddchnstr(
-               WINDOW  *win, 
-               const chtype *astr, 
+               WINDOW  *win,
+               const chtype *astr,
                int     n)
                { return(*(int *)0); }
 
@@ -118,13 +118,13 @@ int       beep(void)
 
 #undef wbkgdset
 void   wbkgdset(
-               WINDOW  *win, 
+               WINDOW  *win,
                chtype  ch)
                { /* void */ }
 
 #undef wbkgd
 int    wbkgd(
-               WINDOW  *win, 
+               WINDOW  *win,
                chtype  ch)
                { return(*(int *)0); }
 
@@ -132,14 +132,14 @@ int       wbkgd(
 
 #undef wborder
 int    wborder(
-               WINDOW  *win, 
-               chtype  ls, 
-               chtype  rs, 
-               chtype  ts, 
-               chtype  bs, 
-               chtype  tl, 
-               chtype  tr, 
-               chtype  bl, 
+               WINDOW  *win,
+               chtype  ls,
+               chtype  rs,
+               chtype  ts,
+               chtype  bs,
+               chtype  tl,
+               chtype  tr,
+               chtype  bl,
                chtype  br)
                { return(*(int *)0); }
 
@@ -147,10 +147,10 @@ int       wborder(
 
 #undef wchgat
 int    wchgat(
-               WINDOW  *win, 
-               int     n, 
-               attr_t  attr, 
-               short   color, 
+               WINDOW  *win,
+               int     n,
+               attr_t  attr,
+               short   color,
                const void *opts)
                { return(*(int *)0); }
 
@@ -165,7 +165,7 @@ int wclear(
 
 #undef clearok
 int    clearok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -192,22 +192,26 @@ int       COLOR_PAIRS;
 #undef COLORS
 int    COLORS;
 
+#undef _nc_reset_colors
+NCURSES_BOOL _nc_reset_colors(void)
+               { return(*(NCURSES_BOOL *)0); }
+
 #undef start_color
 int    start_color(void)
                { return(*(int *)0); }
 
 #undef init_pair
 int    init_pair(
-               short   pair, 
-               short   f, 
+               short   pair,
+               short   f,
                short   b)
                { return(*(int *)0); }
 
 #undef init_color
 int    init_color(
-               short   color, 
-               short   r, 
-               short   g, 
+               short   color,
+               short   r,
+               short   g,
                short   b)
                { return(*(int *)0); }
 
@@ -221,24 +225,24 @@ NCURSES_BOOL has_colors(void)
 
 #undef color_content
 int    color_content(
-               short   color, 
-               short   *r, 
-               short   *g, 
+               short   color,
+               short   *r,
+               short   *g,
                short   *b)
                { return(*(int *)0); }
 
 #undef pair_content
 int    pair_content(
-               short   pair, 
-               short   *f, 
+               short   pair,
+               short   *f,
                short   *b)
                { return(*(int *)0); }
 
 #undef _nc_do_color
 void   _nc_do_color(
-               int     old_pair, 
-               int     pair, 
-               NCURSES_BOOL reverse, 
+               int     old_pair,
+               int     pair,
+               NCURSES_BOOL reverse,
                int     (*outc)(
                int     p1))
                { /* void */ }
@@ -247,8 +251,8 @@ void        _nc_do_color(
 
 #undef wcolor_set
 int    wcolor_set(
-               WINDOW  *win, 
-               short   color_pair_number, 
+               WINDOW  *win,
+               short   color_pair_number,
                void    *opts)
                { return(*(int *)0); }
 
@@ -304,7 +308,7 @@ int addch(
 
 #undef addchnstr
 int    addchnstr(
-               const chtype *a1, 
+               const chtype *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -315,7 +319,7 @@ int addchstr(
 
 #undef addnstr
 int    addnstr(
-               const char *a1, 
+               const char *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -341,27 +345,27 @@ int       attrset(
 
 #undef attr_get
 int    attr_get(
-               attr_t  *a1, 
-               short   *a2, 
+               attr_t  *a1,
+               short   *a2,
                void    *z)
                { return(*(int *)0); }
 
 #undef attr_off
 int    attr_off(
-               attr_t  a1, 
+               attr_t  a1,
                void    *z)
                { return(*(int *)0); }
 
 #undef attr_on
 int    attr_on(
-               attr_t  a1, 
+               attr_t  a1,
                void    *z)
                { return(*(int *)0); }
 
 #undef attr_set
 int    attr_set(
-               attr_t  a1, 
-               short   a2, 
+               attr_t  a1,
+               short   a2,
                void    *z)
                { return(*(int *)0); }
 
@@ -377,28 +381,28 @@ void      bkgdset(
 
 #undef border
 int    border(
-               chtype  a1, 
-               chtype  a2, 
-               chtype  a3, 
-               chtype  a4, 
-               chtype  a5, 
-               chtype  a6, 
-               chtype  a7, 
+               chtype  a1,
+               chtype  a2,
+               chtype  a3,
+               chtype  a4,
+               chtype  a5,
+               chtype  a6,
+               chtype  a7,
                chtype  z)
                { return(*(int *)0); }
 
 #undef box
 int    box(
-               WINDOW  *a1, 
-               chtype  a2, 
+               WINDOW  *a1,
+               chtype  a2,
                chtype  z)
                { return(*(int *)0); }
 
 #undef chgat
 int    chgat(
-               int     a1, 
-               attr_t  a2, 
-               short   a3, 
+               int     a1,
+               attr_t  a2,
+               short   a3,
                const void *z)
                { return(*(int *)0); }
 
@@ -416,7 +420,7 @@ int clrtoeol(void)
 
 #undef color_set
 int    color_set(
-               short   a1, 
+               short   a1,
                void    *z)
                { return(*(int *)0); }
 
@@ -453,7 +457,7 @@ int getch(void)
 
 #undef getnstr
 int    getnstr(
-               char    *a1, 
+               char    *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -464,7 +468,7 @@ int getstr(
 
 #undef hline
 int    hline(
-               chtype  a1, 
+               chtype  a1,
                int     z)
                { return(*(int *)0); }
 
@@ -474,7 +478,7 @@ chtype      inch(void)
 
 #undef inchnstr
 int    inchnstr(
-               chtype  *a1, 
+               chtype  *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -485,7 +489,7 @@ int inchstr(
 
 #undef innstr
 int    innstr(
-               char    *a1, 
+               char    *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -505,7 +509,7 @@ int insertln(void)
 
 #undef insnstr
 int    insnstr(
-               const char *a1, 
+               const char *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -521,323 +525,323 @@ int     instr(
 
 #undef move
 int    move(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(int *)0); }
 
 #undef mvaddch
 int    mvaddch(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const chtype z)
                { return(*(int *)0); }
 
 #undef mvaddchnstr
 int    mvaddchnstr(
-               int     a1, 
-               int     a2, 
-               const chtype *a3, 
+               int     a1,
+               int     a2,
+               const chtype *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvaddchstr
 int    mvaddchstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const chtype *z)
                { return(*(int *)0); }
 
 #undef mvaddnstr
 int    mvaddnstr(
-               int     a1, 
-               int     a2, 
-               const char *a3, 
+               int     a1,
+               int     a2,
+               const char *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvaddstr
 int    mvaddstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const char *z)
                { return(*(int *)0); }
 
 #undef mvchgat
 int    mvchgat(
-               int     a1, 
-               int     a2, 
-               int     a3, 
-               attr_t  a4, 
-               short   a5, 
+               int     a1,
+               int     a2,
+               int     a3,
+               attr_t  a4,
+               short   a5,
                const void *z)
                { return(*(int *)0); }
 
 #undef mvdelch
 int    mvdelch(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(int *)0); }
 
 #undef mvgetch
 int    mvgetch(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(int *)0); }
 
 #undef mvgetnstr
 int    mvgetnstr(
-               int     a1, 
-               int     a2, 
-               char    *a3, 
+               int     a1,
+               int     a2,
+               char    *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvgetstr
 int    mvgetstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                char    *z)
                { return(*(int *)0); }
 
 #undef mvhline
 int    mvhline(
-               int     a1, 
-               int     a2, 
-               chtype  a3, 
+               int     a1,
+               int     a2,
+               chtype  a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvinch
 chtype mvinch(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(chtype *)0); }
 
 #undef mvinchnstr
 int    mvinchnstr(
-               int     a1, 
-               int     a2, 
-               chtype  *a3, 
+               int     a1,
+               int     a2,
+               chtype  *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvinchstr
 int    mvinchstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                chtype  *z)
                { return(*(int *)0); }
 
 #undef mvinnstr
 int    mvinnstr(
-               int     a1, 
-               int     a2, 
-               char    *a3, 
+               int     a1,
+               int     a2,
+               char    *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvinsch
 int    mvinsch(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                chtype  z)
                { return(*(int *)0); }
 
 #undef mvinsnstr
 int    mvinsnstr(
-               int     a1, 
-               int     a2, 
-               const char *a3, 
+               int     a1,
+               int     a2,
+               const char *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvinsstr
 int    mvinsstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const char *z)
                { return(*(int *)0); }
 
 #undef mvinstr
 int    mvinstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                char    *z)
                { return(*(int *)0); }
 
 #undef mvvline
 int    mvvline(
-               int     a1, 
-               int     a2, 
-               chtype  a3, 
+               int     a1,
+               int     a2,
+               chtype  a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwaddch
 int    mvwaddch(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const chtype z)
                { return(*(int *)0); }
 
 #undef mvwaddchnstr
 int    mvwaddchnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const chtype *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const chtype *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwaddchstr
 int    mvwaddchstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const chtype *z)
                { return(*(int *)0); }
 
 #undef mvwaddnstr
 int    mvwaddnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const char *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const char *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwaddstr
 int    mvwaddstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const char *z)
                { return(*(int *)0); }
 
 #undef mvwchgat
 int    mvwchgat(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               int     a4, 
-               attr_t  a5, 
-               short   a6, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               int     a4,
+               attr_t  a5,
+               short   a6,
                const void *z)
                { return(*(int *)0); }
 
 #undef mvwdelch
 int    mvwdelch(
-               WINDOW  *a1, 
-               int     a2, 
+               WINDOW  *a1,
+               int     a2,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwgetch
 int    mvwgetch(
-               WINDOW  *a1, 
-               int     a2, 
+               WINDOW  *a1,
+               int     a2,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwgetnstr
 int    mvwgetnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               char    *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               char    *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwgetstr
 int    mvwgetstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                char    *z)
                { return(*(int *)0); }
 
 #undef mvwhline
 int    mvwhline(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               chtype  a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               chtype  a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwinch
 chtype mvwinch(
-               WINDOW  *a1, 
-               int     a2, 
+               WINDOW  *a1,
+               int     a2,
                int     z)
                { return(*(chtype *)0); }
 
 #undef mvwinchnstr
 int    mvwinchnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               chtype  *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               chtype  *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwinchstr
 int    mvwinchstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                chtype  *z)
                { return(*(int *)0); }
 
 #undef mvwinnstr
 int    mvwinnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               char    *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               char    *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwinsch
 int    mvwinsch(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                chtype  z)
                { return(*(int *)0); }
 
 #undef mvwinsnstr
 int    mvwinsnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const char *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const char *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwinsstr
 int    mvwinsstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const char *z)
                { return(*(int *)0); }
 
 #undef mvwinstr
 int    mvwinstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                char    *z)
                { return(*(int *)0); }
 
 #undef mvwvline
 int    mvwvline(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               chtype  a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               chtype  a4,
                int     z)
                { return(*(int *)0); }
 
@@ -867,7 +871,7 @@ int scroll(
 
 #undef setscrreg
 int    setscrreg(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(int *)0); }
 
@@ -886,8 +890,8 @@ void        timeout(
 
 #undef touchline
 int    touchline(
-               WINDOW  *a1, 
-               int     a2, 
+               WINDOW  *a1,
+               int     a2,
                int     z)
                { return(*(int *)0); }
 
@@ -903,67 +907,67 @@ int       untouchwin(
 
 #undef vline
 int    vline(
-               chtype  a1, 
+               chtype  a1,
                int     z)
                { return(*(int *)0); }
 
 #undef vw_printw
 int    vw_printw(
-               WINDOW  *a1, 
-               char    *a2, 
+               WINDOW  *a1,
+               const char *a2,
                va_list z)
                { return(*(int *)0); }
 
 #undef vw_scanw
 int    vw_scanw(
-               WINDOW  *a1, 
-               char    *a2, 
+               WINDOW  *a1,
+               char    *a2,
                va_list z)
                { return(*(int *)0); }
 
 #undef waddchstr
 int    waddchstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                const chtype *z)
                { return(*(int *)0); }
 
 #undef waddstr
 int    waddstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                const char *z)
                { return(*(int *)0); }
 
 #undef wattron
 int    wattron(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                int     z)
                { return(*(int *)0); }
 
 #undef wattroff
 int    wattroff(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                int     z)
                { return(*(int *)0); }
 
 #undef wattrset
 int    wattrset(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                int     z)
                { return(*(int *)0); }
 
 #undef wattr_get
 int    wattr_get(
-               WINDOW  *a1, 
-               attr_t  *a2, 
-               short   *a3, 
+               WINDOW  *a1,
+               attr_t  *a2,
+               short   *a3,
                void    *z)
                { return(*(int *)0); }
 
 #undef wattr_set
 int    wattr_set(
-               WINDOW  *a1, 
-               attr_t  a2, 
-               short   a3, 
+               WINDOW  *a1,
+               attr_t  a2,
+               short   a3,
                void    *z)
                { return(*(int *)0); }
 
@@ -974,13 +978,13 @@ int       wdeleteln(
 
 #undef wgetstr
 int    wgetstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                char    *z)
                { return(*(int *)0); }
 
 #undef winchstr
 int    winchstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                chtype  *z)
                { return(*(int *)0); }
 
@@ -991,13 +995,13 @@ int       winsertln(
 
 #undef winsstr
 int    winsstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                const char *z)
                { return(*(int *)0); }
 
 #undef winstr
 int    winstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                char    *z)
                { return(*(int *)0); }
 
@@ -1013,8 +1017,8 @@ int       wstandend(
 
 #undef mouse_trafo
 NCURSES_BOOL mouse_trafo(
-               int     *a1, 
-               int     *a2, 
+               int     *a1,
+               int     *a2,
                NCURSES_BOOL z)
                { return(*(NCURSES_BOOL *)0); }
 
@@ -1027,8 +1031,8 @@ int       ESCDELAY;
 
 #undef _nc_wgetch
 int    _nc_wgetch(
-               WINDOW  *win, 
-               unsigned long *result, 
+               WINDOW  *win,
+               unsigned long *result,
                int     use_meta)
                { return(*(int *)0); }
 
@@ -1041,8 +1045,8 @@ int       wgetch(
 
 #undef wgetnstr
 int    wgetnstr(
-               WINDOW  *win, 
-               char    *str, 
+               WINDOW  *win,
+               char    *str,
                int     maxlen)
                { return(*(int *)0); }
 
@@ -1050,8 +1054,8 @@ int       wgetnstr(
 
 #undef whline
 int    whline(
-               WINDOW  *win, 
-               chtype  ch, 
+               WINDOW  *win,
+               chtype  ch,
                int     n)
                { return(*(int *)0); }
 
@@ -1059,7 +1063,7 @@ int       whline(
 
 #undef immedok
 void   immedok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { /* void */ }
 
@@ -1067,8 +1071,8 @@ void      immedok(
 
 #undef winchnstr
 int    winchnstr(
-               WINDOW  *win, 
-               chtype  *str, 
+               WINDOW  *win,
+               chtype  *str,
                int     n)
                { return(*(int *)0); }
 
@@ -1080,26 +1084,30 @@ WINDOW  *initscr(void)
 
 /* ./base/lib_insch.c */
 
+#undef _nc_insert_ch
+void   _nc_insert_ch(
+               WINDOW  *win,
+               chtype  ch)
+               { /* void */ }
+
 #undef winsch
 int    winsch(
-               WINDOW  *win, 
+               WINDOW  *win,
                chtype  c)
                { return(*(int *)0); }
 
-/* ./base/lib_insdel.c */
-
-#undef winsdelln
-int    winsdelln(
-               WINDOW  *win, 
+#undef winsnstr
+int    winsnstr(
+               WINDOW  *win,
+               const char *s,
                int     n)
                { return(*(int *)0); }
 
-/* ./base/lib_insstr.c */
+/* ./base/lib_insdel.c */
 
-#undef winsnstr
-int    winsnstr(
-               WINDOW  *win, 
-               const char *s, 
+#undef winsdelln
+int    winsdelln(
+               WINDOW  *win,
                int     n)
                { return(*(int *)0); }
 
@@ -1107,8 +1115,8 @@ int       winsnstr(
 
 #undef winnstr
 int    winnstr(
-               WINDOW  *win, 
-               char    *str, 
+               WINDOW  *win,
+               char    *str,
                int     n)
                { return(*(int *)0); }
 
@@ -1122,7 +1130,7 @@ NCURSES_BOOL isendwin(void)
 
 #undef leaveok
 int    leaveok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -1140,14 +1148,14 @@ int     ungetmouse(
 
 #undef mousemask
 mmask_t        mousemask(
-               mmask_t newmask, 
+               mmask_t newmask,
                mmask_t *oldmask)
                { return(*(mmask_t *)0); }
 
 #undef wenclose
 NCURSES_BOOL wenclose(
-               const WINDOW *win, 
-               int     y, 
+               const WINDOW *win,
+               int     y,
                int     x)
                { return(*(NCURSES_BOOL *)0); }
 
@@ -1162,9 +1170,9 @@ int       _nc_has_mouse(void)
 
 #undef wmouse_trafo
 NCURSES_BOOL wmouse_trafo(
-               const WINDOW *win, 
-               int     *pY, 
-               int     *pX, 
+               const WINDOW *win,
+               int     *pY,
+               int     *pX,
                NCURSES_BOOL to_screen)
                { return(*(NCURSES_BOOL *)0); }
 
@@ -1172,8 +1180,8 @@ NCURSES_BOOL wmouse_trafo(
 
 #undef wmove
 int    wmove(
-               WINDOW  *win, 
-               int     y, 
+               WINDOW  *win,
+               int     y,
                int     x)
                { return(*(int *)0); }
 
@@ -1181,7 +1189,7 @@ int       wmove(
 
 #undef _nc_msec_cost
 int    _nc_msec_cost(
-               const char *const cap, 
+               const char *const cap,
                int     affcnt)
                { return(*(int *)0); }
 
@@ -1199,9 +1207,9 @@ void      _nc_mvcur_wrap(void)
 
 #undef mvcur
 int    mvcur(
-               int     yold, 
-               int     xold, 
-               int     ynew, 
+               int     yold,
+               int     xold,
+               int     ynew,
                int     xnew)
                { return(*(int *)0); }
 
@@ -1212,8 +1220,8 @@ int       _nc_optimize_enable;
 
 #undef mvwin
 int    mvwin(
-               WINDOW  *win, 
-               int     by, 
+               WINDOW  *win,
+               int     by,
                int     bx)
                { return(*(int *)0); }
 
@@ -1225,8 +1233,8 @@ void      filter(void)
 
 #undef newterm
 SCREEN *newterm(
-               char    *name, 
-               FILE    *ofp, 
+               char    *name,
+               FILE    *ofp,
                FILE    *ifp)
                { return(*(SCREEN **)0); }
 
@@ -1239,36 +1247,36 @@ int     _nc_freewin(
 
 #undef newwin
 WINDOW *newwin(
-               int     num_lines, 
-               int     num_columns, 
-               int     begy, 
+               int     num_lines,
+               int     num_columns,
+               int     begy,
                int     begx)
                { return(*(WINDOW **)0); }
 
 #undef derwin
 WINDOW *derwin(
-               WINDOW  *orig, 
-               int     num_lines, 
-               int     num_columns, 
-               int     begy, 
+               WINDOW  *orig,
+               int     num_lines,
+               int     num_columns,
+               int     begy,
                int     begx)
                { return(*(WINDOW **)0); }
 
 #undef subwin
 WINDOW *subwin(
-               WINDOW  *w, 
-               int     l, 
-               int     c, 
-               int     y, 
+               WINDOW  *w,
+               int     l,
+               int     c,
+               int     y,
                int     x)
                { return(*(WINDOW **)0); }
 
 #undef _nc_makenew
 WINDOW *_nc_makenew(
-               int     num_lines, 
-               int     num_columns, 
-               int     begy, 
-               int     begx, 
+               int     num_lines,
+               int     num_columns,
+               int     begy,
+               int     begx,
                int     flags)
                { return(*(WINDOW **)0); }
 
@@ -1286,26 +1294,26 @@ int     nonl(void)
 
 #undef overlay
 int    overlay(
-               const WINDOW *win1, 
+               const WINDOW *win1,
                WINDOW  *win2)
                { return(*(int *)0); }
 
 #undef overwrite
 int    overwrite(
-               const WINDOW *win1, 
+               const WINDOW *win1,
                WINDOW  *win2)
                { return(*(int *)0); }
 
 #undef copywin
 int    copywin(
-               const WINDOW *src, 
-               WINDOW  *dst, 
-               int     sminrow, 
-               int     smincol, 
-               int     dminrow, 
-               int     dmincol, 
-               int     dmaxrow, 
-               int     dmaxcol, 
+               const WINDOW *src,
+               WINDOW  *dst,
+               int     sminrow,
+               int     smincol,
+               int     dminrow,
+               int     dmincol,
+               int     dmaxrow,
+               int     dmaxcol,
                int     over)
                { return(*(int *)0); }
 
@@ -1313,44 +1321,44 @@ int     copywin(
 
 #undef newpad
 WINDOW *newpad(
-               int     l, 
+               int     l,
                int     c)
                { return(*(WINDOW **)0); }
 
 #undef subpad
 WINDOW *subpad(
-               WINDOW  *orig, 
-               int     l, 
-               int     c, 
-               int     begy, 
+               WINDOW  *orig,
+               int     l,
+               int     c,
+               int     begy,
                int     begx)
                { return(*(WINDOW **)0); }
 
 #undef prefresh
 int    prefresh(
-               WINDOW  *win, 
-               int     pminrow, 
-               int     pmincol, 
-               int     sminrow, 
-               int     smincol, 
-               int     smaxrow, 
+               WINDOW  *win,
+               int     pminrow,
+               int     pmincol,
+               int     sminrow,
+               int     smincol,
+               int     smaxrow,
                int     smaxcol)
                { return(*(int *)0); }
 
 #undef pnoutrefresh
 int    pnoutrefresh(
-               WINDOW  *win, 
-               int     pminrow, 
-               int     pmincol, 
-               int     sminrow, 
-               int     smincol, 
-               int     smaxrow, 
+               WINDOW  *win,
+               int     pminrow,
+               int     pmincol,
+               int     sminrow,
+               int     smincol,
+               int     smaxrow,
                int     smaxcol)
                { return(*(int *)0); }
 
 #undef pechochar
 int    pechochar(
-               WINDOW  *pad, 
+               WINDOW  *pad,
                const chtype ch)
                { return(*(int *)0); }
 
@@ -1358,38 +1366,38 @@ int     pechochar(
 
 #undef printw
 int    printw(
-               char    *fmt, 
+               const char *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef wprintw
 int    wprintw(
-               WINDOW  *win, 
-               char    *fmt, 
+               WINDOW  *win,
+               const char *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef mvprintw
 int    mvprintw(
-               int     y, 
-               int     x, 
-               char    *fmt, 
+               int     y,
+               int     x,
+               const char *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef mvwprintw
 int    mvwprintw(
-               WINDOW  *win, 
-               int     y, 
-               int     x, 
-               char    *fmt, 
+               WINDOW  *win,
+               int     y,
+               int     x,
+               const char *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef vwprintw
 int    vwprintw(
-               WINDOW  *win, 
-               char    *fmt, 
+               WINDOW  *win,
+               const char *fmt,
                va_list argp)
                { return(*(int *)0); }
 
@@ -1397,8 +1405,8 @@ int       vwprintw(
 
 #undef wredrawln
 int    wredrawln(
-               WINDOW  *win, 
-               int     beg, 
+               WINDOW  *win,
+               int     beg,
                int     num)
                { return(*(int *)0); }
 
@@ -1418,8 +1426,8 @@ int       wnoutrefresh(
 
 #undef restartterm
 int    restartterm(
-               char    *termp, 
-               int     filenum, 
+               char    *termp,
+               int     filenum,
                int     *errret)
                { return(*(int *)0); }
 
@@ -1427,38 +1435,38 @@ int     restartterm(
 
 #undef vwscanw
 int    vwscanw(
-               WINDOW  *win, 
-               char    *fmt, 
+               WINDOW  *win,
+               char    *fmt,
                va_list argp)
                { return(*(int *)0); }
 
 #undef scanw
 int    scanw(
-               char    *fmt, 
+               char    *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef wscanw
 int    wscanw(
-               WINDOW  *win, 
-               char    *fmt, 
+               WINDOW  *win,
+               char    *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef mvscanw
 int    mvscanw(
-               int     y, 
-               int     x, 
-               char    *fmt, 
+               int     y,
+               int     x,
+               char    *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef mvwscanw
 int    mvwscanw(
-               WINDOW  *win, 
-               int     y, 
-               int     x, 
-               char    *fmt, 
+               WINDOW  *win,
+               int     y,
+               int     x,
+               char    *fmt,
                ...)
                { return(*(int *)0); }
 
@@ -1471,7 +1479,7 @@ WINDOW    *getwin(
 
 #undef putwin
 int    putwin(
-               WINDOW  *win, 
+               WINDOW  *win,
                FILE    *filep)
                { return(*(int *)0); }
 
@@ -1499,16 +1507,16 @@ int     scr_set(
 
 #undef _nc_scroll_window
 void   _nc_scroll_window(
-               WINDOW  *win, 
-               int const n, 
-               short const top, 
-               short const bottom, 
+               WINDOW  *win,
+               int const n,
+               short const top,
+               short const bottom,
                chtype  blank)
                { /* void */ }
 
 #undef wscrl
 int    wscrl(
-               WINDOW  *win, 
+               WINDOW  *win,
                int     n)
                { return(*(int *)0); }
 
@@ -1516,7 +1524,7 @@ int       wscrl(
 
 #undef scrollok
 int    scrollok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -1524,8 +1532,8 @@ int       scrollok(
 
 #undef wsetscrreg
 int    wsetscrreg(
-               WINDOW  *win, 
-               int     top, 
+               WINDOW  *win,
+               int     top,
                int     bottom)
                { return(*(int *)0); }
 
@@ -1543,24 +1551,24 @@ void    delscreen(
 
 #undef _nc_setupscreen
 int    _nc_setupscreen(
-               short   slines, 
-               short const scolumns, 
+               short   slines,
+               short const scolumns,
                FILE    *output)
                { return(*(int *)0); }
 
 #undef _nc_ripoffline
 int    _nc_ripoffline(
-               int     line, 
+               int     line,
                int     (*init)(
-               WINDOW  *p1, 
+               WINDOW  *p1,
                int     p2))
                { return(*(int *)0); }
 
 #undef ripoffline
 int    ripoffline(
-               int     line, 
+               int     line,
                int     (*init)(
-               WINDOW  *p1, 
+               WINDOW  *p1,
                int     p2))
                { return(*(int *)0); }
 
@@ -1571,7 +1579,7 @@ int       _nc_slk_format;
 
 #undef _nc_slk_initialize
 int    _nc_slk_initialize(
-               WINDOW  *stwin, 
+               WINDOW  *stwin,
                int     cols)
                { return(*(int *)0); }
 
@@ -1583,8 +1591,8 @@ int       slk_restore(void)
 
 #undef slk_attr_set
 int    slk_attr_set(
-               const attr_t attr, 
-               short   color_pair_number, 
+               const attr_t attr,
+               short   color_pair_number,
                void    *opts)
                { return(*(int *)0); }
 
@@ -1656,8 +1664,8 @@ int       slk_refresh(void)
 
 #undef slk_set
 int    slk_set(
-               int     i, 
-               const char *astr, 
+               int     i,
+               const char *astr,
                int     format)
                { return(*(int *)0); }
 
@@ -1671,7 +1679,7 @@ int       slk_touch(void)
 
 #undef is_linetouched
 NCURSES_BOOL is_linetouched(
-               WINDOW  *win, 
+               WINDOW  *win,
                int     line)
                { return(*(NCURSES_BOOL *)0); }
 
@@ -1682,9 +1690,9 @@ NCURSES_BOOL is_wintouched(
 
 #undef wtouchln
 int    wtouchln(
-               WINDOW  *win, 
-               int     y, 
-               int     n, 
+               WINDOW  *win,
+               int     y,
+               int     n,
                int     changed)
                { return(*(int *)0); }
 
@@ -1692,7 +1700,7 @@ int       wtouchln(
 
 #undef _traceattr2
 char   *_traceattr2(
-               int     bufnum, 
+               int     bufnum,
                attr_t  newmode)
                { return(*(char **)0); }
 
@@ -1708,13 +1716,13 @@ attr_t  _nc_retrace_attr_t(
 
 #undef _nc_altcharset_name
 const char *_nc_altcharset_name(
-               attr_t  attr, 
+               attr_t  attr,
                chtype  ch)
                { return(*(const char **)0); }
 
 #undef _tracechtype2
 char   *_tracechtype2(
-               int     bufnum, 
+               int     bufnum,
                chtype  ch)
                { return(*(char **)0); }
 
@@ -1724,15 +1732,15 @@ char    *_tracechtype(
                { return(*(char **)0); }
 
 #undef _nc_retrace_chtype
-attr_t _nc_retrace_chtype(
-               attr_t  code)
-               { return(*(attr_t *)0); }
+chtype _nc_retrace_chtype(
+               chtype  code)
+               { return(*(chtype *)0); }
 
 /* ./trace/lib_tracedmp.c */
 
 #undef _tracedump
 void   _tracedump(
-               const char *name, 
+               const char *name,
                WINDOW  *win)
                { /* void */ }
 
@@ -1767,7 +1775,7 @@ int       ungetch(
 
 #undef vidputs
 int    vidputs(
-               chtype  newmode, 
+               chtype  newmode,
                int     (*outc)(
                int     p1))
                { return(*(int *)0); }
@@ -1785,8 +1793,8 @@ chtype    termattrs(void)
 
 #undef wvline
 int    wvline(
-               WINDOW  *win, 
-               chtype  ch, 
+               WINDOW  *win,
+               chtype  ch,
                int     n)
                { return(*(int *)0); }
 
@@ -1794,8 +1802,8 @@ int       wvline(
 
 #undef wattr_off
 int    wattr_off(
-               WINDOW  *win, 
-               attr_t  at, 
+               WINDOW  *win,
+               attr_t  at,
                void    *opts)
                { return(*(int *)0); }
 
@@ -1803,8 +1811,8 @@ int       wattr_off(
 
 #undef wattr_on
 int    wattr_on(
-               WINDOW  *win, 
-               attr_t  at, 
+               WINDOW  *win,
+               attr_t  at,
                void    *opts)
                { return(*(int *)0); }
 
@@ -1824,14 +1832,14 @@ void    _nc_synchook(
 
 #undef mvderwin
 int    mvderwin(
-               WINDOW  *win, 
-               int     y, 
+               WINDOW  *win,
+               int     y,
                int     x)
                { return(*(int *)0); }
 
 #undef syncok
 int    syncok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL bf)
                { return(*(int *)0); }
 
@@ -1865,7 +1873,7 @@ struct panelhook *_nc_panelhook(void)
 
 #undef _nc_printf_string
 char   *_nc_printf_string(
-               const char *fmt, 
+               const char *fmt,
                va_list ap)
                { return(*(char **)0); }
 
@@ -1878,16 +1886,11 @@ char    *_nc_printf_string(
 int    doupdate(void)
                { return(*(int *)0); }
 
-#undef _nc_outstr
-void   _nc_outstr(
-               const char *str)
-               { /* void */ }
-
 #undef _nc_scrolln
 int    _nc_scrolln(
-               int     n, 
-               int     top, 
-               int     bot, 
+               int     n,
+               int     top,
+               int     bot,
                int     maxy)
                { return(*(int *)0); }
 
@@ -1910,13 +1913,9 @@ void     _nc_do_xmc_glitch(
 
 /* ./trace/varargs.c */
 
-typedef enum {
-    atUnknown = 0, atInteger, atFloat, atPoint, atString
-} ARGTYPE;
-
 #undef _nc_varargs
 char   *_nc_varargs(
-               const char *fmt, 
+               const char *fmt,
                va_list ap)
                { return(*(char **)0); }
 
@@ -1926,23 +1925,25 @@ char    *_nc_varargs(
 void   _nc_memmove(void)
                { /* void */ }
 
-/* ./base/sigaction.c */
-
-#undef _nc_sigaction
-void   _nc_sigaction(void)
-               { /* void */ }
-
 /* ./base/vsscanf.c */
 
 #undef _nc_vsscanf
 void   _nc_vsscanf(void)
                { /* void */ }
 
+/* ./base/lib_freeall.c */
+
+#include <term_entry.h>
+
+#undef _nc_freeall
+void   _nc_freeall(void)
+               { /* void */ }
+
 /* ./base/define_key.c */
 
 #undef define_key
 int    define_key(
-               char    *str, 
+               const char *str,
                int     keycode)
                { return(*(int *)0); }
 
@@ -1950,13 +1951,13 @@ int     define_key(
 
 #undef _nc_toggle_attr_on
 void   _nc_toggle_attr_on(
-               attr_t  *S, 
+               attr_t  *S,
                attr_t  at)
                { /* void */ }
 
 #undef _nc_toggle_attr_off
 void   _nc_toggle_attr_off(
-               attr_t  *S, 
+               attr_t  *S,
                attr_t  at)
                { /* void */ }
 
@@ -1975,11 +1976,18 @@ void    _nc_UpdateAttrs(
                chtype  c)
                { /* void */ }
 
+/* ./base/key_defined.c */
+
+#undef key_defined
+int    key_defined(
+               const char *str)
+               { return(*(int *)0); }
+
 /* ./base/keybound.c */
 
 #undef keybound
 char   *keybound(
-               int     code, 
+               int     code,
                int     count)
                { return(*(char **)0); }
 
@@ -1987,7 +1995,7 @@ char      *keybound(
 
 #undef keyok
 int    keyok(
-               int     c, 
+               int     c,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -1999,23 +2007,15 @@ int     use_default_colors(void)
 
 #undef assume_default_colors
 int    assume_default_colors(
-               int     fg, 
+               int     fg,
                int     bg)
                { return(*(int *)0); }
 
-/* ./base/lib_freeall.c */
-
-#include <term_entry.h>
-
-#undef _nc_freeall
-void   _nc_freeall(void)
-               { /* void */ }
-
 /* ./tinfo/lib_print.c */
 
 #undef mcprint
 int    mcprint(
-               char    *data, 
+               char    *data,
                int     len)
                { return(*(int *)0); }
 
@@ -2023,19 +2023,19 @@ int     mcprint(
 
 #undef is_term_resized
 NCURSES_BOOL is_term_resized(
-               int     ToLines, 
+               int     ToLines,
                int     ToCols)
                { return(*(NCURSES_BOOL *)0); }
 
 #undef resize_term
 int    resize_term(
-               int     ToLines, 
+               int     ToLines,
                int     ToCols)
                { return(*(int *)0); }
 
 #undef resizeterm
 int    resizeterm(
-               int     ToLines, 
+               int     ToLines,
                int     ToCols)
                { return(*(int *)0); }
 
@@ -2050,22 +2050,22 @@ void    _nc_trace_xnames(
 
 #undef _nc_expand_try
 char   *_nc_expand_try(
-               struct tries *tree, 
-               unsigned short code, 
-               int     *count, 
+               struct tries *tree,
+               unsigned short code,
+               int     *count,
                size_t  len)
                { return(*(char **)0); }
 
 #undef _nc_remove_key
 int    _nc_remove_key(
-               struct tries **tree, 
+               struct tries **tree,
                unsigned short code)
                { return(*(int *)0); }
 
 #undef _nc_remove_string
 int    _nc_remove_string(
-               struct tries **tree, 
-               char    *string)
+               struct tries **tree,
+               const char *string)
                { return(*(int *)0); }
 
 /* ./base/version.c */
@@ -2078,8 +2078,8 @@ const char *curses_version(void)
 
 #undef wresize
 int    wresize(
-               WINDOW  *win, 
-               int     ToLines, 
+               WINDOW  *win,
+               int     ToLines,
                int     ToCols)
                { return(*(int *)0); }
 
@@ -2090,6 +2090,11 @@ char     *_nc_rootname(
                char    *path)
                { return(*(char **)0); }
 
+#undef _nc_pathlast
+unsigned _nc_pathlast(
+               const char *path)
+               { return(*(unsigned *)0); }
+
 #undef _nc_basename
 char   *_nc_basename(
                char    *path)
@@ -2097,7 +2102,7 @@ char      *_nc_basename(
 
 #undef _nc_access
 int    _nc_access(
-               const char *path, 
+               const char *path,
                int     mode)
                { return(*(int *)0); }
 
@@ -2109,8 +2114,8 @@ int       _nc_env_access(void)
 
 #undef _nc_add_to_try
 void   _nc_add_to_try(
-               struct tries **tree, 
-               const char *str, 
+               struct tries **tree,
+               const char *str,
                unsigned short code)
                { /* void */ }
 
@@ -2133,13 +2138,13 @@ char    *_nc_save_str(
 
 #undef _nc_wrap_entry
 void   _nc_wrap_entry(
-               ENTRY   *const ep, 
+               ENTRY   *const ep,
                NCURSES_BOOL copy_strings)
                { /* void */ }
 
 #undef _nc_merge_entry
 void   _nc_merge_entry(
-               TERMTYPE *const to, 
+               TERMTYPE *const to,
                TERMTYPE *const from)
                { /* void */ }
 
@@ -2147,13 +2152,13 @@ void    _nc_merge_entry(
 
 #undef _nc_align_termtype
 void   _nc_align_termtype(
-               TERMTYPE *to, 
+               TERMTYPE *to,
                TERMTYPE *from)
                { /* void */ }
 
 #undef _nc_copy_termtype
 void   _nc_copy_termtype(
-               TERMTYPE *dst, 
+               TERMTYPE *dst,
                TERMTYPE *src)
                { /* void */ }
 
@@ -2161,16 +2166,16 @@ void    _nc_copy_termtype(
 
 #undef _nc_captoinfo
 char   *_nc_captoinfo(
-               const char *cap, 
-               const char *s, 
-               int const parametrized)
+               const char *cap,
+               const char *s,
+               int const parameterized)
                { return(*(char **)0); }
 
 #undef _nc_infotocap
 char   *_nc_infotocap(
-               const char *cap, 
-               const char *str, 
-               int const parametrized)
+               const char *cap,
+               const char *str,
+               int const parameterized)
                { return(*(char **)0); }
 
 /* ./codes.c */
@@ -2231,19 +2236,19 @@ void    _nc_get_type(
 
 #undef _nc_warning
 void   _nc_warning(
-               const char *const fmt, 
+               const char *const fmt,
                ...)
                { /* void */ }
 
 #undef _nc_err_abort
 void   _nc_err_abort(
-               const char *const fmt, 
+               const char *const fmt,
                ...)
                { /* void */ }
 
 #undef _nc_syserr_abort
 void   _nc_syserr_abort(
-               const char *const fmt, 
+               const char *const fmt,
                ...)
                { /* void */ }
 
@@ -2251,8 +2256,8 @@ void      _nc_syserr_abort(
 
 #undef _nc_tic_expand
 char   *_nc_tic_expand(
-               const char *srcp, 
-               NCURSES_BOOL tic_format, 
+               const char *srcp,
+               NCURSES_BOOL tic_format,
                int     numbers)
                { return(*(char **)0); }
 
@@ -2262,14 +2267,14 @@ char    *_nc_tic_expand(
 
 #undef _nc_find_entry
 struct name_table_entry const *_nc_find_entry(
-               const char *string, 
+               const char *string,
                const struct name_table_entry *const *hash_table)
                { return(*(struct name_table_entry const **)0); }
 
 #undef _nc_find_type_entry
 struct name_table_entry const *_nc_find_type_entry(
-               const char *string, 
-               int     type, 
+               const char *string,
+               int     type,
                const struct name_table_entry *table)
                { return(*(struct name_table_entry const **)0); }
 
@@ -2290,16 +2295,16 @@ void    _nc_free_entries(
 
 #undef _nc_entry_match
 NCURSES_BOOL _nc_entry_match(
-               char    *n1, 
+               char    *n1,
                char    *n2)
                { return(*(NCURSES_BOOL *)0); }
 
 #undef _nc_read_entry_source
 void   _nc_read_entry_source(
-               FILE    *fp, 
-               char    *buf, 
-               int     literal, 
-               NCURSES_BOOL silent, 
+               FILE    *fp,
+               char    *buf,
+               int     literal,
+               NCURSES_BOOL silent,
                NCURSES_BOOL (*hook)(
                ENTRY   *p1))
                { /* void */ }
@@ -2333,7 +2338,7 @@ int       _nc_get_token(
 
 #undef _nc_trans_string
 char   _nc_trans_string(
-               char    *ptr, 
+               char    *ptr,
                char    *last)
                { return(*(char *)0); }
 
@@ -2349,7 +2354,7 @@ void      _nc_panic_mode(
 
 #undef _nc_reset_input
 void   _nc_reset_input(
-               FILE    *fp, 
+               FILE    *fp,
                char    *buf)
                { /* void */ }
 
@@ -2357,7 +2362,7 @@ void      _nc_reset_input(
 
 #undef _nc_doalloc
 void   *_nc_doalloc(
-               void    *oldp, 
+               void    *oldp,
                size_t  amount)
                { return(*(void **)0); }
 
@@ -2414,7 +2419,7 @@ void      _nc_init_keytry(void)
 /* ./tinfo/lib_acs.c */
 
 #undef acs_map
-chtype acs_map[128 ];
+chtype acs_map[128];
 
 #undef _nc_init_acs
 void   _nc_init_acs(void)
@@ -2424,11 +2429,6 @@ void     _nc_init_acs(void)
 
 #include <termcap.h>
 
-struct speed {
-    int s;                     
-    int sp;                    
-};
-
 #undef _nc_baudrate
 int    _nc_baudrate(
                int     OSpeed)
@@ -2524,13 +2524,13 @@ int     napms(
 
 #undef idlok
 int    idlok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
 #undef idcok
 void   idcok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { /* void */ }
 
@@ -2541,31 +2541,31 @@ int     halfdelay(
 
 #undef nodelay
 int    nodelay(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
 #undef notimeout
 int    notimeout(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL f)
                { return(*(int *)0); }
 
 #undef wtimeout
 void   wtimeout(
-               WINDOW  *win, 
+               WINDOW  *win,
                int     delay)
                { /* void */ }
 
 #undef keypad
 int    keypad(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
 #undef meta
 int    meta(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -2617,7 +2617,7 @@ void      noqiflush(void)
 
 #undef intrflush
 int    intrflush(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -2625,11 +2625,8 @@ int      intrflush(
 
 #include <sys/ioctl.h>
 
-#undef use_env
-void   use_env(
-               NCURSES_BOOL f)
-               { /* void */ }
-
+#undef ttytype
+char   ttytype[256];
 #undef LINES
 int    LINES;
 #undef COLS
@@ -2637,17 +2634,31 @@ int     COLS;
 #undef TABSIZE
 int    TABSIZE;
 
+#undef use_env
+void   use_env(
+               NCURSES_BOOL f)
+               { /* void */ }
+
 #undef _nc_update_screensize
 void   _nc_update_screensize(void)
                { /* void */ }
 
-#undef ttytype
-char   ttytype[256 ];
+#undef _nc_get_locale
+char   *_nc_get_locale(void)
+               { return(*(char **)0); }
+
+#undef _nc_unicode_locale
+int    _nc_unicode_locale(void)
+               { return(*(int *)0); }
+
+#undef _nc_locale_breaks_acs
+int    _nc_locale_breaks_acs(void)
+               { return(*(int *)0); }
 
 #undef setupterm
 int    setupterm(
-               char    *tname, 
-               int     Filedes, 
+               char    *tname,
+               int     Filedes,
                int     *errret)
                { return(*(int *)0); }
 
@@ -2660,7 +2671,7 @@ char      *BC;
 
 #undef tgetent
 int    tgetent(
-               char    *bufp, 
+               char    *bufp,
                const char *name)
                { return(*(int *)0); }
 
@@ -2682,7 +2693,7 @@ int       tgetnum(
 
 #undef tgetstr
 char   *tgetstr(
-               char    *id, 
+               char    *id,
                char    **area)
                { return(*(char **)0); }
 
@@ -2696,8 +2707,8 @@ char      *termname(void)
 
 #undef tgoto
 char   *tgoto(
-               const char *string, 
-               int     x, 
+               const char *string,
+               int     x,
                int     y)
                { return(*(char **)0); }
 
@@ -2720,20 +2731,19 @@ char    *tigetstr(
 
 /* ./tinfo/lib_tparm.c */
 
-typedef struct {
-    union {
-       int num;
-       char *str;
-    } data;
-    NCURSES_BOOL  num_type;
-} stack_frame;
-
 #undef _nc_tparm_err
 int    _nc_tparm_err;
 
+#undef _nc_tparm_analyze
+int    _nc_tparm_analyze(
+               const char *string,
+               char    *p_is_s[9],
+               int     *popcount)
+               { return(*(int *)0); }
+
 #undef tparm
 char   *tparm(
-               char    *string, 
+               char    *string,
                ...)
                { return(*(char **)0); }
 
@@ -2767,8 +2777,8 @@ int       putp(
 
 #undef tputs
 int    tputs(
-               const char *string, 
-               int     affcnt, 
+               const char *string,
+               int     affcnt,
                int     (*outc)(
                int     p1))
                { return(*(int *)0); }
@@ -2789,15 +2799,25 @@ void    trace(
 
 #undef _tracef
 void   _tracef(
-               const char *fmt, 
+               const char *fmt,
                ...)
                { /* void */ }
 
+#undef _nc_retrace_bool
+NCURSES_BOOL _nc_retrace_bool(
+               NCURSES_BOOL code)
+               { return(*(NCURSES_BOOL *)0); }
+
 #undef _nc_retrace_int
 int    _nc_retrace_int(
                int     code)
                { return(*(int *)0); }
 
+#undef _nc_retrace_unsigned
+unsigned _nc_retrace_unsigned(
+               unsigned code)
+               { return(*(unsigned *)0); }
+
 #undef _nc_retrace_ptr
 char   *_nc_retrace_ptr(
                char    *code)
@@ -2815,11 +2835,6 @@ WINDOW   *_nc_retrace_win(
 
 /* ./trace/lib_tracebits.c */
 
-typedef struct {
-    unsigned int val;
-    const char *name;
-} BITNAMES;
-
 #undef _nc_trace_ttymode
 char   *_nc_trace_ttymode(
                struct termios *tty)
@@ -2876,8 +2891,8 @@ int       resetty(void)
 
 #undef _nc_timed_wait
 int    _nc_timed_wait(
-               int     mode, 
-               int     milliseconds, 
+               int     mode,
+               int     milliseconds,
                int     *timeleft)
                { return(*(int *)0); }
 
@@ -2890,8 +2905,8 @@ char      *_nc_first_name(
 
 #undef _nc_name_match
 int    _nc_name_match(
-               const char *const namelst, 
-               const char *const name, 
+               const char *const namelst,
+               const char *const name,
                const char *const delim)
                { return(*(int *)0); }
 
@@ -2914,22 +2929,17 @@ char    *const strfnames[] = {0};
 
 #undef _nc_parse_entry
 int    _nc_parse_entry(
-               struct entry *entryp, 
-               int     literal, 
+               struct entry *entryp,
+               int     literal,
                NCURSES_BOOL silent)
                { return(*(int *)0); }
 
 #undef _nc_capcmp
 int    _nc_capcmp(
-               const char *s, 
+               const char *s,
                const char *t)
                { return(*(int *)0); }
 
-typedef struct {
-    const char *from;
-    const char *to;
-} assoc;
-
 /* ./tinfo/read_entry.c */
 
 #undef _nc_tic_dir
@@ -2944,14 +2954,14 @@ void    _nc_keep_tic_dir(
 
 #undef _nc_read_file_entry
 int    _nc_read_file_entry(
-               const char *const filename, 
+               const char *const filename,
                TERMTYPE *ptr)
                { return(*(int *)0); }
 
 #undef _nc_read_entry
 int    _nc_read_entry(
-               const char *const tn, 
-               char    *const filename, 
+               const char *const tn,
+               char    *const filename,
                TERMTYPE *const tp)
                { return(*(int *)0); }
 
@@ -2959,7 +2969,7 @@ int       _nc_read_entry(
 
 #undef _nc_read_termcap_entry
 int    _nc_read_termcap_entry(
-               const char *const tn, 
+               const char *const tn,
                TERMTYPE *const tp)
                { return(*(int *)0); }
 
@@ -2967,7 +2977,7 @@ int       _nc_read_termcap_entry(
 
 #undef _nc_set_buffer
 void   _nc_set_buffer(
-               FILE    *ofp, 
+               FILE    *ofp,
                NCURSES_BOOL buffered)
                { /* void */ }
 
@@ -2975,48 +2985,49 @@ void    _nc_set_buffer(
 
 #undef _nc_str_init
 string_desc *_nc_str_init(
-               string_desc *dst, 
-               char    *src, 
+               string_desc *dst,
+               char    *src,
                size_t  len)
                { return(*(string_desc **)0); }
 
 #undef _nc_str_null
 string_desc *_nc_str_null(
-               string_desc *dst, 
+               string_desc *dst,
                size_t  len)
                { return(*(string_desc **)0); }
 
 #undef _nc_str_copy
 string_desc *_nc_str_copy(
-               string_desc *dst, 
+               string_desc *dst,
                string_desc *src)
                { return(*(string_desc **)0); }
 
 #undef _nc_safe_strcat
 NCURSES_BOOL _nc_safe_strcat(
-               string_desc *dst, 
+               string_desc *dst,
                const char *src)
                { return(*(NCURSES_BOOL *)0); }
 
 #undef _nc_safe_strcpy
 NCURSES_BOOL _nc_safe_strcpy(
-               string_desc *dst, 
+               string_desc *dst,
                const char *src)
                { return(*(NCURSES_BOOL *)0); }
 
 /* ./trace/trace_buf.c */
 
-typedef struct {
-    char *text;
-    size_t size;
-} LIST;
-
 #undef _nc_trace_buf
 char   *_nc_trace_buf(
-               int     bufnum, 
+               int     bufnum,
                size_t  want)
                { return(*(char **)0); }
 
+#undef _nc_trace_bufcat
+char   *_nc_trace_bufcat(
+               int     bufnum,
+               const char *value)
+               { return(*(char **)0); }
+
 /* ./trace/trace_tries.c */
 
 #undef _nc_trace_tries
@@ -3035,7 +3046,7 @@ char      *unctrl(
 
 #undef _nc_visbuf2
 const char *_nc_visbuf2(
-               int     bufnum, 
+               int     bufnum,
                const char *buf)
                { return(*(const char **)0); }
 
@@ -3044,6 +3055,12 @@ const char *_nc_visbuf(
                const char *buf)
                { return(*(const char **)0); }
 
+#undef _nc_visbufn
+const char *_nc_visbufn(
+               const char *buf,
+               int     len)
+               { return(*(const char **)0); }
+
 /* ./tinfo/write_entry.c */
 
 #undef _nc_set_writedir
index 7256eb98dd44e27e27310751be3392a76585e833..ab8b1d4fb57bb91fd9bbd88417baa20db0da564b 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2001,2002 Free Software Foundation, Inc.                   *
+ * Copyright (c) 2001-2003,2004 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            *
@@ -27,7 +27,7 @@
  ****************************************************************************/
 
 /****************************************************************************
- *  Author: Thomas E. Dickey 2001,2002                                      *
+ *  Author: Thomas E. Dickey 2001-2004                                      *
  ****************************************************************************/
 /* LINTLIBRARY */
 
@@ -59,8 +59,8 @@ void  _nc_make_oldhash(
 
 #undef _nc_scroll_oldhash
 void   _nc_scroll_oldhash(
-               int     n, 
-               int     top, 
+               int     n,
+               int     top,
                int     bot)
                { /* void */ }
 
@@ -70,53 +70,41 @@ void        _nc_scroll_oldhash(
 
 #undef _nc_render
 cchar_t        _nc_render(
-               WINDOW  *win, 
+               WINDOW  *win,
                cchar_t ch)
                { return(*(cchar_t *)0); }
 
 #undef _nc_waddch_nosync
 int    _nc_waddch_nosync(
-               WINDOW  *win, 
+               WINDOW  *win,
                const cchar_t c)
                { return(*(int *)0); }
 
 #undef waddch
 int    waddch(
-               WINDOW  *win, 
+               WINDOW  *win,
                const chtype ch)
                { return(*(int *)0); }
 
 #undef wechochar
 int    wechochar(
-               WINDOW  *win, 
+               WINDOW  *win,
                const chtype ch)
                { return(*(int *)0); }
 
-#undef wadd_wch
-int    wadd_wch(
-               WINDOW  *win, 
-               const cchar_t *wch)
-               { return(*(int *)0); }
-
-#undef wecho_wchar
-int    wecho_wchar(
-               WINDOW  *win, 
-               const cchar_t *wch)
-               { return(*(int *)0); }
-
 /* ./base/lib_addstr.c */
 
 #undef waddnstr
 int    waddnstr(
-               WINDOW  *win, 
-               const char *astr, 
+               WINDOW  *win,
+               const char *astr,
                int     n)
                { return(*(int *)0); }
 
 #undef waddchnstr
 int    waddchnstr(
-               WINDOW  *win, 
-               const chtype *astr, 
+               WINDOW  *win,
+               const chtype *astr,
                int     n)
                { return(*(int *)0); }
 
@@ -127,15 +115,15 @@ int       _nc_wchstrlen(
 
 #undef wadd_wchnstr
 int    wadd_wchnstr(
-               WINDOW  *win, 
-               const cchar_t *const astr, 
+               WINDOW  *win,
+               const cchar_t *astr,
                int     n)
                { return(*(int *)0); }
 
 #undef waddnwstr
 int    waddnwstr(
-               WINDOW  *win, 
-               const wchar_t *str, 
+               WINDOW  *win,
+               const wchar_t *str,
                int     n)
                { return(*(int *)0); }
 
@@ -149,25 +137,25 @@ int       beep(void)
 
 #undef wbkgrndset
 void   wbkgrndset(
-               WINDOW  *win, 
+               WINDOW  *win,
                const cchar_t *ch)
                { /* void */ }
 
 #undef wbkgdset
 void   wbkgdset(
-               WINDOW  *win, 
+               WINDOW  *win,
                chtype  ch)
                { /* void */ }
 
 #undef wbkgrnd
 int    wbkgrnd(
-               WINDOW  *win, 
+               WINDOW  *win,
                const cchar_t *ch)
                { return(*(int *)0); }
 
 #undef wbkgd
 int    wbkgd(
-               WINDOW  *win, 
+               WINDOW  *win,
                chtype  ch)
                { return(*(int *)0); }
 
@@ -175,14 +163,14 @@ int       wbkgd(
 
 #undef wborder
 int    wborder(
-               WINDOW  *win, 
-               chtype  ls, 
-               chtype  rs, 
-               chtype  ts, 
-               chtype  bs, 
-               chtype  tl, 
-               chtype  tr, 
-               chtype  bl, 
+               WINDOW  *win,
+               chtype  ls,
+               chtype  rs,
+               chtype  ts,
+               chtype  bs,
+               chtype  tl,
+               chtype  tr,
+               chtype  bl,
                chtype  br)
                { return(*(int *)0); }
 
@@ -190,10 +178,10 @@ int       wborder(
 
 #undef wchgat
 int    wchgat(
-               WINDOW  *win, 
-               int     n, 
-               attr_t  attr, 
-               short   color, 
+               WINDOW  *win,
+               int     n,
+               attr_t  attr,
+               short   color,
                const void *opts)
                { return(*(int *)0); }
 
@@ -208,7 +196,7 @@ int wclear(
 
 #undef clearok
 int    clearok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -235,22 +223,26 @@ int       COLOR_PAIRS;
 #undef COLORS
 int    COLORS;
 
+#undef _nc_reset_colors
+NCURSES_BOOL _nc_reset_colors(void)
+               { return(*(NCURSES_BOOL *)0); }
+
 #undef start_color
 int    start_color(void)
                { return(*(int *)0); }
 
 #undef init_pair
 int    init_pair(
-               short   pair, 
-               short   f, 
+               short   pair,
+               short   f,
                short   b)
                { return(*(int *)0); }
 
 #undef init_color
 int    init_color(
-               short   color, 
-               short   r, 
-               short   g, 
+               short   color,
+               short   r,
+               short   g,
                short   b)
                { return(*(int *)0); }
 
@@ -264,24 +256,24 @@ NCURSES_BOOL has_colors(void)
 
 #undef color_content
 int    color_content(
-               short   color, 
-               short   *r, 
-               short   *g, 
+               short   color,
+               short   *r,
+               short   *g,
                short   *b)
                { return(*(int *)0); }
 
 #undef pair_content
 int    pair_content(
-               short   pair, 
-               short   *f, 
+               short   pair,
+               short   *f,
                short   *b)
                { return(*(int *)0); }
 
 #undef _nc_do_color
 void   _nc_do_color(
-               int     old_pair, 
-               int     pair, 
-               NCURSES_BOOL reverse, 
+               int     old_pair,
+               int     pair,
+               NCURSES_BOOL reverse,
                int     (*outc)(
                int     p1))
                { /* void */ }
@@ -290,8 +282,8 @@ void        _nc_do_color(
 
 #undef wcolor_set
 int    wcolor_set(
-               WINDOW  *win, 
-               short   color_pair_number, 
+               WINDOW  *win,
+               short   color_pair_number,
                void    *opts)
                { return(*(int *)0); }
 
@@ -347,7 +339,7 @@ int addch(
 
 #undef addchnstr
 int    addchnstr(
-               const chtype *a1, 
+               const chtype *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -358,7 +350,7 @@ int addchstr(
 
 #undef addnstr
 int    addnstr(
-               const char *a1, 
+               const char *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -384,27 +376,27 @@ int       attrset(
 
 #undef attr_get
 int    attr_get(
-               attr_t  *a1, 
-               short   *a2, 
+               attr_t  *a1,
+               short   *a2,
                void    *z)
                { return(*(int *)0); }
 
 #undef attr_off
 int    attr_off(
-               attr_t  a1, 
+               attr_t  a1,
                void    *z)
                { return(*(int *)0); }
 
 #undef attr_on
 int    attr_on(
-               attr_t  a1, 
+               attr_t  a1,
                void    *z)
                { return(*(int *)0); }
 
 #undef attr_set
 int    attr_set(
-               attr_t  a1, 
-               short   a2, 
+               attr_t  a1,
+               short   a2,
                void    *z)
                { return(*(int *)0); }
 
@@ -420,28 +412,28 @@ void      bkgdset(
 
 #undef border
 int    border(
-               chtype  a1, 
-               chtype  a2, 
-               chtype  a3, 
-               chtype  a4, 
-               chtype  a5, 
-               chtype  a6, 
-               chtype  a7, 
+               chtype  a1,
+               chtype  a2,
+               chtype  a3,
+               chtype  a4,
+               chtype  a5,
+               chtype  a6,
+               chtype  a7,
                chtype  z)
                { return(*(int *)0); }
 
 #undef box
 int    box(
-               WINDOW  *a1, 
-               chtype  a2, 
+               WINDOW  *a1,
+               chtype  a2,
                chtype  z)
                { return(*(int *)0); }
 
 #undef chgat
 int    chgat(
-               int     a1, 
-               attr_t  a2, 
-               short   a3, 
+               int     a1,
+               attr_t  a2,
+               short   a3,
                const void *z)
                { return(*(int *)0); }
 
@@ -459,7 +451,7 @@ int clrtoeol(void)
 
 #undef color_set
 int    color_set(
-               short   a1, 
+               short   a1,
                void    *z)
                { return(*(int *)0); }
 
@@ -496,7 +488,7 @@ int getch(void)
 
 #undef getnstr
 int    getnstr(
-               char    *a1, 
+               char    *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -507,7 +499,7 @@ int getstr(
 
 #undef hline
 int    hline(
-               chtype  a1, 
+               chtype  a1,
                int     z)
                { return(*(int *)0); }
 
@@ -517,7 +509,7 @@ chtype      inch(void)
 
 #undef inchnstr
 int    inchnstr(
-               chtype  *a1, 
+               chtype  *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -528,7 +520,7 @@ int inchstr(
 
 #undef innstr
 int    innstr(
-               char    *a1, 
+               char    *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -548,7 +540,7 @@ int insertln(void)
 
 #undef insnstr
 int    insnstr(
-               const char *a1, 
+               const char *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -564,323 +556,323 @@ int     instr(
 
 #undef move
 int    move(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(int *)0); }
 
 #undef mvaddch
 int    mvaddch(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const chtype z)
                { return(*(int *)0); }
 
 #undef mvaddchnstr
 int    mvaddchnstr(
-               int     a1, 
-               int     a2, 
-               const chtype *a3, 
+               int     a1,
+               int     a2,
+               const chtype *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvaddchstr
 int    mvaddchstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const chtype *z)
                { return(*(int *)0); }
 
 #undef mvaddnstr
 int    mvaddnstr(
-               int     a1, 
-               int     a2, 
-               const char *a3, 
+               int     a1,
+               int     a2,
+               const char *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvaddstr
 int    mvaddstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const char *z)
                { return(*(int *)0); }
 
 #undef mvchgat
 int    mvchgat(
-               int     a1, 
-               int     a2, 
-               int     a3, 
-               attr_t  a4, 
-               short   a5, 
+               int     a1,
+               int     a2,
+               int     a3,
+               attr_t  a4,
+               short   a5,
                const void *z)
                { return(*(int *)0); }
 
 #undef mvdelch
 int    mvdelch(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(int *)0); }
 
 #undef mvgetch
 int    mvgetch(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(int *)0); }
 
 #undef mvgetnstr
 int    mvgetnstr(
-               int     a1, 
-               int     a2, 
-               char    *a3, 
+               int     a1,
+               int     a2,
+               char    *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvgetstr
 int    mvgetstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                char    *z)
                { return(*(int *)0); }
 
 #undef mvhline
 int    mvhline(
-               int     a1, 
-               int     a2, 
-               chtype  a3, 
+               int     a1,
+               int     a2,
+               chtype  a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvinch
 chtype mvinch(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(chtype *)0); }
 
 #undef mvinchnstr
 int    mvinchnstr(
-               int     a1, 
-               int     a2, 
-               chtype  *a3, 
+               int     a1,
+               int     a2,
+               chtype  *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvinchstr
 int    mvinchstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                chtype  *z)
                { return(*(int *)0); }
 
 #undef mvinnstr
 int    mvinnstr(
-               int     a1, 
-               int     a2, 
-               char    *a3, 
+               int     a1,
+               int     a2,
+               char    *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvinsch
 int    mvinsch(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                chtype  z)
                { return(*(int *)0); }
 
 #undef mvinsnstr
 int    mvinsnstr(
-               int     a1, 
-               int     a2, 
-               const char *a3, 
+               int     a1,
+               int     a2,
+               const char *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvinsstr
 int    mvinsstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const char *z)
                { return(*(int *)0); }
 
 #undef mvinstr
 int    mvinstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                char    *z)
                { return(*(int *)0); }
 
 #undef mvvline
 int    mvvline(
-               int     a1, 
-               int     a2, 
-               chtype  a3, 
+               int     a1,
+               int     a2,
+               chtype  a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwaddch
 int    mvwaddch(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const chtype z)
                { return(*(int *)0); }
 
 #undef mvwaddchnstr
 int    mvwaddchnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const chtype *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const chtype *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwaddchstr
 int    mvwaddchstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const chtype *z)
                { return(*(int *)0); }
 
 #undef mvwaddnstr
 int    mvwaddnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const char *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const char *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwaddstr
 int    mvwaddstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const char *z)
                { return(*(int *)0); }
 
 #undef mvwchgat
 int    mvwchgat(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               int     a4, 
-               attr_t  a5, 
-               short   a6, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               int     a4,
+               attr_t  a5,
+               short   a6,
                const void *z)
                { return(*(int *)0); }
 
 #undef mvwdelch
 int    mvwdelch(
-               WINDOW  *a1, 
-               int     a2, 
+               WINDOW  *a1,
+               int     a2,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwgetch
 int    mvwgetch(
-               WINDOW  *a1, 
-               int     a2, 
+               WINDOW  *a1,
+               int     a2,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwgetnstr
 int    mvwgetnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               char    *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               char    *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwgetstr
 int    mvwgetstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                char    *z)
                { return(*(int *)0); }
 
 #undef mvwhline
 int    mvwhline(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               chtype  a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               chtype  a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwinch
 chtype mvwinch(
-               WINDOW  *a1, 
-               int     a2, 
+               WINDOW  *a1,
+               int     a2,
                int     z)
                { return(*(chtype *)0); }
 
 #undef mvwinchnstr
 int    mvwinchnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               chtype  *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               chtype  *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwinchstr
 int    mvwinchstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                chtype  *z)
                { return(*(int *)0); }
 
 #undef mvwinnstr
 int    mvwinnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               char    *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               char    *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwinsch
 int    mvwinsch(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                chtype  z)
                { return(*(int *)0); }
 
 #undef mvwinsnstr
 int    mvwinsnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const char *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const char *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwinsstr
 int    mvwinsstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const char *z)
                { return(*(int *)0); }
 
 #undef mvwinstr
 int    mvwinstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                char    *z)
                { return(*(int *)0); }
 
 #undef mvwvline
 int    mvwvline(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               chtype  a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               chtype  a4,
                int     z)
                { return(*(int *)0); }
 
@@ -910,19 +902,19 @@ int       scroll(
 
 #undef setscrreg
 int    setscrreg(
-               int     a1, 
+               int     a1,
                int     z)
                { return(*(int *)0); }
 
 #undef slk_attr_off
 int    slk_attr_off(
-               const attr_t a1, 
+               const attr_t a1,
                void    *z)
                { return(*(int *)0); }
 
 #undef slk_attr_on
 int    slk_attr_on(
-               attr_t  a1, 
+               attr_t  a1,
                void    *z)
                { return(*(int *)0); }
 
@@ -941,8 +933,8 @@ void        timeout(
 
 #undef touchline
 int    touchline(
-               WINDOW  *a1, 
-               int     a2, 
+               WINDOW  *a1,
+               int     a2,
                int     z)
                { return(*(int *)0); }
 
@@ -958,67 +950,67 @@ int       untouchwin(
 
 #undef vline
 int    vline(
-               chtype  a1, 
+               chtype  a1,
                int     z)
                { return(*(int *)0); }
 
 #undef vw_printw
 int    vw_printw(
-               WINDOW  *a1, 
-               char    *a2, 
+               WINDOW  *a1,
+               const char *a2,
                va_list z)
                { return(*(int *)0); }
 
 #undef vw_scanw
 int    vw_scanw(
-               WINDOW  *a1, 
-               char    *a2, 
+               WINDOW  *a1,
+               char    *a2,
                va_list z)
                { return(*(int *)0); }
 
 #undef waddchstr
 int    waddchstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                const chtype *z)
                { return(*(int *)0); }
 
 #undef waddstr
 int    waddstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                const char *z)
                { return(*(int *)0); }
 
 #undef wattron
 int    wattron(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                int     z)
                { return(*(int *)0); }
 
 #undef wattroff
 int    wattroff(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                int     z)
                { return(*(int *)0); }
 
 #undef wattrset
 int    wattrset(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                int     z)
                { return(*(int *)0); }
 
 #undef wattr_get
 int    wattr_get(
-               WINDOW  *a1, 
-               attr_t  *a2, 
-               short   *a3, 
+               WINDOW  *a1,
+               attr_t  *a2,
+               short   *a3,
                void    *z)
                { return(*(int *)0); }
 
 #undef wattr_set
 int    wattr_set(
-               WINDOW  *a1, 
-               attr_t  a2, 
-               short   a3, 
+               WINDOW  *a1,
+               attr_t  a2,
+               short   a3,
                void    *z)
                { return(*(int *)0); }
 
@@ -1029,13 +1021,13 @@ int     wdeleteln(
 
 #undef wgetstr
 int    wgetstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                char    *z)
                { return(*(int *)0); }
 
 #undef winchstr
 int    winchstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                chtype  *z)
                { return(*(int *)0); }
 
@@ -1046,13 +1038,13 @@ int     winsertln(
 
 #undef winsstr
 int    winsstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                const char *z)
                { return(*(int *)0); }
 
 #undef winstr
 int    winstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                char    *z)
                { return(*(int *)0); }
 
@@ -1073,7 +1065,7 @@ int       add_wch(
 
 #undef add_wchnstr
 int    add_wchnstr(
-               const cchar_t *a1, 
+               const cchar_t *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -1084,7 +1076,7 @@ int       add_wchstr(
 
 #undef addnwstr
 int    addnwstr(
-               const wchar_t *a1, 
+               const wchar_t *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -1105,20 +1097,20 @@ void    bkgrndset(
 
 #undef border_set
 int    border_set(
-               const cchar_t *a1, 
-               const cchar_t *a2, 
-               const cchar_t *a3, 
-               const cchar_t *a4, 
-               const cchar_t *a5, 
-               const cchar_t *a6, 
-               const cchar_t *a7, 
+               const cchar_t *a1,
+               const cchar_t *a2,
+               const cchar_t *a3,
+               const cchar_t *a4,
+               const cchar_t *a5,
+               const cchar_t *a6,
+               const cchar_t *a7,
                const cchar_t *z)
                { return(*(int *)0); }
 
 #undef box_set
 int    box_set(
-               WINDOW  *a1, 
-               const cchar_t *a2, 
+               WINDOW  *a1,
+               const cchar_t *a2,
                const cchar_t *z)
                { return(*(int *)0); }
 
@@ -1129,12 +1121,12 @@ int     echo_wchar(
 
 #undef get_wch
 int    get_wch(
-               wint_t *z)
+               wint_t  *z)
                { return(*(int *)0); }
 
 #undef get_wstr
 int    get_wstr(
-               wint_t *z)
+               wint_t  *z)
                { return(*(int *)0); }
 
 #undef getbkgrnd
@@ -1144,13 +1136,13 @@ int     getbkgrnd(
 
 #undef getn_wstr
 int    getn_wstr(
-               wint_t *a1, 
+               wint_t  *a1,
                int     z)
                { return(*(int *)0); }
 
 #undef hline_set
 int    hline_set(
-               const cchar_t *a1, 
+               const cchar_t *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -1161,7 +1153,7 @@ int       in_wch(
 
 #undef in_wchnstr
 int    in_wchnstr(
-               cchar_t *a1, 
+               cchar_t *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -1172,13 +1164,13 @@ int     in_wchstr(
 
 #undef innwstr
 int    innwstr(
-               wchar_t *a1, 
+               wchar_t *a1,
                int     z)
                { return(*(int *)0); }
 
 #undef ins_nwstr
 int    ins_nwstr(
-               const wchar_t *a1, 
+               const wchar_t *a1,
                int     z)
                { return(*(int *)0); }
 
@@ -1194,335 +1186,335 @@ int   ins_wstr(
 
 #undef inwstr
 int    inwstr(
-               wchar_t *z)
+               wchar_t *z)
                { return(*(int *)0); }
 
 #undef mvadd_wch
 int    mvadd_wch(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvadd_wchnstr
 int    mvadd_wchnstr(
-               int     a1, 
-               int     a2, 
-               const cchar_t *a3, 
+               int     a1,
+               int     a2,
+               const cchar_t *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvadd_wchstr
 int    mvadd_wchstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvaddnwstr
 int    mvaddnwstr(
-               int     a1, 
-               int     a2, 
-               const wchar_t *a3, 
+               int     a1,
+               int     a2,
+               const wchar_t *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvaddwstr
 int    mvaddwstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const wchar_t *z)
                { return(*(int *)0); }
 
 #undef mvget_wch
 int    mvget_wch(
-               int     a1, 
-               int     a2, 
-               wint_t *z)
+               int     a1,
+               int     a2,
+               wint_t  *z)
                { return(*(int *)0); }
 
 #undef mvget_wstr
 int    mvget_wstr(
-               int     a1, 
-               int     a2, 
-               wint_t *z)
+               int     a1,
+               int     a2,
+               wint_t  *z)
                { return(*(int *)0); }
 
 #undef mvgetn_wstr
 int    mvgetn_wstr(
-               int     a1, 
-               int     a2, 
-               wint_t *a3, 
+               int     a1,
+               int     a2,
+               wint_t  *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvhline_set
 int    mvhline_set(
-               int     a1, 
-               int     a2, 
-               const cchar_t *a3, 
+               int     a1,
+               int     a2,
+               const cchar_t *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvin_wch
 int    mvin_wch(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvin_wchnstr
 int    mvin_wchnstr(
-               int     a1, 
-               int     a2, 
-               cchar_t *a3, 
+               int     a1,
+               int     a2,
+               cchar_t *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvin_wchstr
 int    mvin_wchstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvinnwstr
 int    mvinnwstr(
-               int     a1, 
-               int     a2, 
-               wchar_t *a3, 
+               int     a1,
+               int     a2,
+               wchar_t *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvins_nwstr
 int    mvins_nwstr(
-               int     a1, 
-               int     a2, 
-               const wchar_t *a3, 
+               int     a1,
+               int     a2,
+               const wchar_t *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvins_wch
 int    mvins_wch(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvins_wstr
 int    mvins_wstr(
-               int     a1, 
-               int     a2, 
+               int     a1,
+               int     a2,
                const wchar_t *z)
                { return(*(int *)0); }
 
 #undef mvinwstr
 int    mvinwstr(
-               int     a1, 
-               int     a2, 
-               wchar_t *z)
+               int     a1,
+               int     a2,
+               wchar_t *z)
                { return(*(int *)0); }
 
 #undef mvvline_set
 int    mvvline_set(
-               int     a1, 
-               int     a2, 
-               const cchar_t *a3, 
+               int     a1,
+               int     a2,
+               const cchar_t *a3,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwadd_wch
 int    mvwadd_wch(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvwadd_wchnstr
 int    mvwadd_wchnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const cchar_t *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const cchar_t *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwadd_wchstr
 int    mvwadd_wchstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvwaddnwstr
 int    mvwaddnwstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const wchar_t *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const wchar_t *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwaddwstr
 int    mvwaddwstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const wchar_t *z)
                { return(*(int *)0); }
 
 #undef mvwget_wch
 int    mvwget_wch(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               wint_t *z)
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               wint_t  *z)
                { return(*(int *)0); }
 
 #undef mvwget_wstr
 int    mvwget_wstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               wint_t *z)
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               wint_t  *z)
                { return(*(int *)0); }
 
 #undef mvwgetn_wstr
 int    mvwgetn_wstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               wint_t *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               wint_t  *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwhline_set
 int    mvwhline_set(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const cchar_t *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const cchar_t *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwin_wch
 int    mvwin_wch(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvwin_wchnstr
 int    mvwin_wchnstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               cchar_t *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               cchar_t *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwin_wchstr
 int    mvwin_wchstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvwinnwstr
 int    mvwinnwstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               wchar_t *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               wchar_t *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwins_nwstr
 int    mvwins_nwstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const wchar_t *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const wchar_t *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef mvwins_wch
 int    mvwins_wch(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const cchar_t *z)
                { return(*(int *)0); }
 
 #undef mvwins_wstr
 int    mvwins_wstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
                const wchar_t *z)
                { return(*(int *)0); }
 
 #undef mvwinwstr
 int    mvwinwstr(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               wchar_t *z)
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               wchar_t *z)
                { return(*(int *)0); }
 
 #undef mvwvline_set
 int    mvwvline_set(
-               WINDOW  *a1, 
-               int     a2, 
-               int     a3, 
-               const cchar_t *a4, 
+               WINDOW  *a1,
+               int     a2,
+               int     a3,
+               const cchar_t *a4,
                int     z)
                { return(*(int *)0); }
 
 #undef vline_set
 int    vline_set(
-               const cchar_t *a1, 
+               const cchar_t *a1,
                int     z)
                { return(*(int *)0); }
 
 #undef wadd_wchstr
 int    wadd_wchstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                const cchar_t *z)
                { return(*(int *)0); }
 
 #undef waddwstr
 int    waddwstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                const wchar_t *z)
                { return(*(int *)0); }
 
 #undef wget_wstr
 int    wget_wstr(
-               WINDOW  *a1, 
-               wint_t *z)
+               WINDOW  *a1,
+               wint_t  *z)
                { return(*(int *)0); }
 
 #undef win_wchstr
 int    win_wchstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                cchar_t *z)
                { return(*(int *)0); }
 
 #undef wins_wstr
 int    wins_wstr(
-               WINDOW  *a1, 
+               WINDOW  *a1,
                const wchar_t *z)
                { return(*(int *)0); }
 
 #undef mouse_trafo
 NCURSES_BOOL mouse_trafo(
-               int     *a1, 
-               int     *a2, 
+               int     *a1,
+               int     *a2,
                NCURSES_BOOL z)
                { return(*(NCURSES_BOOL *)0); }
 
@@ -1535,8 +1527,8 @@ int       ESCDELAY;
 
 #undef _nc_wgetch
 int    _nc_wgetch(
-               WINDOW  *win, 
-               unsigned long *result, 
+               WINDOW  *win,
+               unsigned long *result,
                int     use_meta)
                { return(*(int *)0); }
 
@@ -1549,8 +1541,8 @@ int       wgetch(
 
 #undef wgetnstr
 int    wgetnstr(
-               WINDOW  *win, 
-               char    *str, 
+               WINDOW  *win,
+               char    *str,
                int     maxlen)
                { return(*(int *)0); }
 
@@ -1558,8 +1550,8 @@ int       wgetnstr(
 
 #undef whline
 int    whline(
-               WINDOW  *win, 
-               chtype  ch, 
+               WINDOW  *win,
+               chtype  ch,
                int     n)
                { return(*(int *)0); }
 
@@ -1567,7 +1559,7 @@ int       whline(
 
 #undef immedok
 void   immedok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { /* void */ }
 
@@ -1575,8 +1567,8 @@ void      immedok(
 
 #undef winchnstr
 int    winchnstr(
-               WINDOW  *win, 
-               chtype  *str, 
+               WINDOW  *win,
+               chtype  *str,
                int     n)
                { return(*(int *)0); }
 
@@ -1588,26 +1580,30 @@ WINDOW  *initscr(void)
 
 /* ./base/lib_insch.c */
 
+#undef _nc_insert_ch
+void   _nc_insert_ch(
+               WINDOW  *win,
+               chtype  ch)
+               { /* void */ }
+
 #undef winsch
 int    winsch(
-               WINDOW  *win, 
+               WINDOW  *win,
                chtype  c)
                { return(*(int *)0); }
 
-/* ./base/lib_insdel.c */
-
-#undef winsdelln
-int    winsdelln(
-               WINDOW  *win, 
+#undef winsnstr
+int    winsnstr(
+               WINDOW  *win,
+               const char *s,
                int     n)
                { return(*(int *)0); }
 
-/* ./base/lib_insstr.c */
+/* ./base/lib_insdel.c */
 
-#undef winsnstr
-int    winsnstr(
-               WINDOW  *win, 
-               const char *s, 
+#undef winsdelln
+int    winsdelln(
+               WINDOW  *win,
                int     n)
                { return(*(int *)0); }
 
@@ -1615,8 +1611,8 @@ int       winsnstr(
 
 #undef winnstr
 int    winnstr(
-               WINDOW  *win, 
-               char    *str, 
+               WINDOW  *win,
+               char    *str,
                int     n)
                { return(*(int *)0); }
 
@@ -1630,7 +1626,7 @@ NCURSES_BOOL isendwin(void)
 
 #undef leaveok
 int    leaveok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -1648,14 +1644,14 @@ int     ungetmouse(
 
 #undef mousemask
 mmask_t        mousemask(
-               mmask_t newmask, 
+               mmask_t newmask,
                mmask_t *oldmask)
                { return(*(mmask_t *)0); }
 
 #undef wenclose
 NCURSES_BOOL wenclose(
-               const WINDOW *win, 
-               int     y, 
+               const WINDOW *win,
+               int     y,
                int     x)
                { return(*(NCURSES_BOOL *)0); }
 
@@ -1670,9 +1666,9 @@ int       _nc_has_mouse(void)
 
 #undef wmouse_trafo
 NCURSES_BOOL wmouse_trafo(
-               const WINDOW *win, 
-               int     *pY, 
-               int     *pX, 
+               const WINDOW *win,
+               int     *pY,
+               int     *pX,
                NCURSES_BOOL to_screen)
                { return(*(NCURSES_BOOL *)0); }
 
@@ -1680,8 +1676,8 @@ NCURSES_BOOL wmouse_trafo(
 
 #undef wmove
 int    wmove(
-               WINDOW  *win, 
-               int     y, 
+               WINDOW  *win,
+               int     y,
                int     x)
                { return(*(int *)0); }
 
@@ -1689,7 +1685,7 @@ int       wmove(
 
 #undef _nc_msec_cost
 int    _nc_msec_cost(
-               const char *const cap, 
+               const char *const cap,
                int     affcnt)
                { return(*(int *)0); }
 
@@ -1707,9 +1703,9 @@ void      _nc_mvcur_wrap(void)
 
 #undef mvcur
 int    mvcur(
-               int     yold, 
-               int     xold, 
-               int     ynew, 
+               int     yold,
+               int     xold,
+               int     ynew,
                int     xnew)
                { return(*(int *)0); }
 
@@ -1720,8 +1716,8 @@ int       _nc_optimize_enable;
 
 #undef mvwin
 int    mvwin(
-               WINDOW  *win, 
-               int     by, 
+               WINDOW  *win,
+               int     by,
                int     bx)
                { return(*(int *)0); }
 
@@ -1733,8 +1729,8 @@ void      filter(void)
 
 #undef newterm
 SCREEN *newterm(
-               char    *name, 
-               FILE    *ofp, 
+               char    *name,
+               FILE    *ofp,
                FILE    *ifp)
                { return(*(SCREEN **)0); }
 
@@ -1747,36 +1743,36 @@ int     _nc_freewin(
 
 #undef newwin
 WINDOW *newwin(
-               int     num_lines, 
-               int     num_columns, 
-               int     begy, 
+               int     num_lines,
+               int     num_columns,
+               int     begy,
                int     begx)
                { return(*(WINDOW **)0); }
 
 #undef derwin
 WINDOW *derwin(
-               WINDOW  *orig, 
-               int     num_lines, 
-               int     num_columns, 
-               int     begy, 
+               WINDOW  *orig,
+               int     num_lines,
+               int     num_columns,
+               int     begy,
                int     begx)
                { return(*(WINDOW **)0); }
 
 #undef subwin
 WINDOW *subwin(
-               WINDOW  *w, 
-               int     l, 
-               int     c, 
-               int     y, 
+               WINDOW  *w,
+               int     l,
+               int     c,
+               int     y,
                int     x)
                { return(*(WINDOW **)0); }
 
 #undef _nc_makenew
 WINDOW *_nc_makenew(
-               int     num_lines, 
-               int     num_columns, 
-               int     begy, 
-               int     begx, 
+               int     num_lines,
+               int     num_columns,
+               int     begy,
+               int     begx,
                int     flags)
                { return(*(WINDOW **)0); }
 
@@ -1794,26 +1790,26 @@ int     nonl(void)
 
 #undef overlay
 int    overlay(
-               const WINDOW *win1, 
+               const WINDOW *win1,
                WINDOW  *win2)
                { return(*(int *)0); }
 
 #undef overwrite
 int    overwrite(
-               const WINDOW *win1, 
+               const WINDOW *win1,
                WINDOW  *win2)
                { return(*(int *)0); }
 
 #undef copywin
 int    copywin(
-               const WINDOW *src, 
-               WINDOW  *dst, 
-               int     sminrow, 
-               int     smincol, 
-               int     dminrow, 
-               int     dmincol, 
-               int     dmaxrow, 
-               int     dmaxcol, 
+               const WINDOW *src,
+               WINDOW  *dst,
+               int     sminrow,
+               int     smincol,
+               int     dminrow,
+               int     dmincol,
+               int     dmaxrow,
+               int     dmaxcol,
                int     over)
                { return(*(int *)0); }
 
@@ -1821,44 +1817,44 @@ int     copywin(
 
 #undef newpad
 WINDOW *newpad(
-               int     l, 
+               int     l,
                int     c)
                { return(*(WINDOW **)0); }
 
 #undef subpad
 WINDOW *subpad(
-               WINDOW  *orig, 
-               int     l, 
-               int     c, 
-               int     begy, 
+               WINDOW  *orig,
+               int     l,
+               int     c,
+               int     begy,
                int     begx)
                { return(*(WINDOW **)0); }
 
 #undef prefresh
 int    prefresh(
-               WINDOW  *win, 
-               int     pminrow, 
-               int     pmincol, 
-               int     sminrow, 
-               int     smincol, 
-               int     smaxrow, 
+               WINDOW  *win,
+               int     pminrow,
+               int     pmincol,
+               int     sminrow,
+               int     smincol,
+               int     smaxrow,
                int     smaxcol)
                { return(*(int *)0); }
 
 #undef pnoutrefresh
 int    pnoutrefresh(
-               WINDOW  *win, 
-               int     pminrow, 
-               int     pmincol, 
-               int     sminrow, 
-               int     smincol, 
-               int     smaxrow, 
+               WINDOW  *win,
+               int     pminrow,
+               int     pmincol,
+               int     sminrow,
+               int     smincol,
+               int     smaxrow,
                int     smaxcol)
                { return(*(int *)0); }
 
 #undef pechochar
 int    pechochar(
-               WINDOW  *pad, 
+               WINDOW  *pad,
                const chtype ch)
                { return(*(int *)0); }
 
@@ -1866,38 +1862,38 @@ int     pechochar(
 
 #undef printw
 int    printw(
-               char    *fmt, 
+               const char *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef wprintw
 int    wprintw(
-               WINDOW  *win, 
-               char    *fmt, 
+               WINDOW  *win,
+               const char *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef mvprintw
 int    mvprintw(
-               int     y, 
-               int     x, 
-               char    *fmt, 
+               int     y,
+               int     x,
+               const char *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef mvwprintw
 int    mvwprintw(
-               WINDOW  *win, 
-               int     y, 
-               int     x, 
-               char    *fmt, 
+               WINDOW  *win,
+               int     y,
+               int     x,
+               const char *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef vwprintw
 int    vwprintw(
-               WINDOW  *win, 
-               char    *fmt, 
+               WINDOW  *win,
+               const char *fmt,
                va_list argp)
                { return(*(int *)0); }
 
@@ -1905,8 +1901,8 @@ int       vwprintw(
 
 #undef wredrawln
 int    wredrawln(
-               WINDOW  *win, 
-               int     beg, 
+               WINDOW  *win,
+               int     beg,
                int     num)
                { return(*(int *)0); }
 
@@ -1926,8 +1922,8 @@ int       wnoutrefresh(
 
 #undef restartterm
 int    restartterm(
-               char    *termp, 
-               int     filenum, 
+               char    *termp,
+               int     filenum,
                int     *errret)
                { return(*(int *)0); }
 
@@ -1935,38 +1931,38 @@ int     restartterm(
 
 #undef vwscanw
 int    vwscanw(
-               WINDOW  *win, 
-               char    *fmt, 
+               WINDOW  *win,
+               char    *fmt,
                va_list argp)
                { return(*(int *)0); }
 
 #undef scanw
 int    scanw(
-               char    *fmt, 
+               char    *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef wscanw
 int    wscanw(
-               WINDOW  *win, 
-               char    *fmt, 
+               WINDOW  *win,
+               char    *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef mvscanw
 int    mvscanw(
-               int     y, 
-               int     x, 
-               char    *fmt, 
+               int     y,
+               int     x,
+               char    *fmt,
                ...)
                { return(*(int *)0); }
 
 #undef mvwscanw
 int    mvwscanw(
-               WINDOW  *win, 
-               int     y, 
-               int     x, 
-               char    *fmt, 
+               WINDOW  *win,
+               int     y,
+               int     x,
+               char    *fmt,
                ...)
                { return(*(int *)0); }
 
@@ -1979,7 +1975,7 @@ WINDOW    *getwin(
 
 #undef putwin
 int    putwin(
-               WINDOW  *win, 
+               WINDOW  *win,
                FILE    *filep)
                { return(*(int *)0); }
 
@@ -2007,16 +2003,16 @@ int     scr_set(
 
 #undef _nc_scroll_window
 void   _nc_scroll_window(
-               WINDOW  *win, 
-               int const n, 
-               short const top, 
-               short const bottom, 
+               WINDOW  *win,
+               int const n,
+               short const top,
+               short const bottom,
                cchar_t blank)
                { /* void */ }
 
 #undef wscrl
 int    wscrl(
-               WINDOW  *win, 
+               WINDOW  *win,
                int     n)
                { return(*(int *)0); }
 
@@ -2024,7 +2020,7 @@ int       wscrl(
 
 #undef scrollok
 int    scrollok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -2032,8 +2028,8 @@ int       scrollok(
 
 #undef wsetscrreg
 int    wsetscrreg(
-               WINDOW  *win, 
-               int     top, 
+               WINDOW  *win,
+               int     top,
                int     bottom)
                { return(*(int *)0); }
 
@@ -2051,24 +2047,24 @@ void    delscreen(
 
 #undef _nc_setupscreen
 int    _nc_setupscreen(
-               short   slines, 
-               short const scolumns, 
+               short   slines,
+               short const scolumns,
                FILE    *output)
                { return(*(int *)0); }
 
 #undef _nc_ripoffline
 int    _nc_ripoffline(
-               int     line, 
+               int     line,
                int     (*init)(
-               WINDOW  *p1, 
+               WINDOW  *p1,
                int     p2))
                { return(*(int *)0); }
 
 #undef ripoffline
 int    ripoffline(
-               int     line, 
+               int     line,
                int     (*init)(
-               WINDOW  *p1, 
+               WINDOW  *p1,
                int     p2))
                { return(*(int *)0); }
 
@@ -2079,7 +2075,7 @@ int       _nc_slk_format;
 
 #undef _nc_slk_initialize
 int    _nc_slk_initialize(
-               WINDOW  *stwin, 
+               WINDOW  *stwin,
                int     cols)
                { return(*(int *)0); }
 
@@ -2091,8 +2087,8 @@ int       slk_restore(void)
 
 #undef slk_attr_set
 int    slk_attr_set(
-               const attr_t attr, 
-               short   color_pair_number, 
+               const attr_t attr,
+               short   color_pair_number,
                void    *opts)
                { return(*(int *)0); }
 
@@ -2164,8 +2160,8 @@ int       slk_refresh(void)
 
 #undef slk_set
 int    slk_set(
-               int     i, 
-               const char *astr, 
+               int     i,
+               const char *astr,
                int     format)
                { return(*(int *)0); }
 
@@ -2179,7 +2175,7 @@ int       slk_touch(void)
 
 #undef is_linetouched
 NCURSES_BOOL is_linetouched(
-               WINDOW  *win, 
+               WINDOW  *win,
                int     line)
                { return(*(NCURSES_BOOL *)0); }
 
@@ -2190,9 +2186,9 @@ NCURSES_BOOL is_wintouched(
 
 #undef wtouchln
 int    wtouchln(
-               WINDOW  *win, 
-               int     y, 
-               int     n, 
+               WINDOW  *win,
+               int     y,
+               int     n,
                int     changed)
                { return(*(int *)0); }
 
@@ -2200,7 +2196,7 @@ int       wtouchln(
 
 #undef _traceattr2
 char   *_traceattr2(
-               int     bufnum, 
+               int     bufnum,
                attr_t  newmode)
                { return(*(char **)0); }
 
@@ -2216,13 +2212,13 @@ attr_t  _nc_retrace_attr_t(
 
 #undef _nc_altcharset_name
 const char *_nc_altcharset_name(
-               attr_t  attr, 
+               attr_t  attr,
                chtype  ch)
                { return(*(const char **)0); }
 
 #undef _tracechtype2
 char   *_tracechtype2(
-               int     bufnum, 
+               int     bufnum,
                chtype  ch)
                { return(*(char **)0); }
 
@@ -2232,13 +2228,13 @@ char    *_tracechtype(
                { return(*(char **)0); }
 
 #undef _nc_retrace_chtype
-attr_t _nc_retrace_chtype(
-               attr_t  code)
-               { return(*(attr_t *)0); }
+chtype _nc_retrace_chtype(
+               chtype  code)
+               { return(*(chtype *)0); }
 
 #undef _tracecchar_t2
 char   *_tracecchar_t2(
-               int     bufnum, 
+               int     bufnum,
                const cchar_t *ch)
                { return(*(char **)0); }
 
@@ -2251,7 +2247,7 @@ char      *_tracecchar_t(
 
 #undef _tracedump
 void   _tracedump(
-               const char *name, 
+               const char *name,
                WINDOW  *win)
                { /* void */ }
 
@@ -2286,7 +2282,7 @@ int       ungetch(
 
 #undef vidputs
 int    vidputs(
-               chtype  newmode, 
+               chtype  newmode,
                int     (*outc)(
                int     p1))
                { return(*(int *)0); }
@@ -2304,8 +2300,8 @@ chtype    termattrs(void)
 
 #undef wvline
 int    wvline(
-               WINDOW  *win, 
-               chtype  ch, 
+               WINDOW  *win,
+               chtype  ch,
                int     n)
                { return(*(int *)0); }
 
@@ -2313,8 +2309,8 @@ int       wvline(
 
 #undef wattr_off
 int    wattr_off(
-               WINDOW  *win, 
-               attr_t  at, 
+               WINDOW  *win,
+               attr_t  at,
                void    *opts)
                { return(*(int *)0); }
 
@@ -2322,8 +2318,8 @@ int       wattr_off(
 
 #undef wattr_on
 int    wattr_on(
-               WINDOW  *win, 
-               attr_t  at, 
+               WINDOW  *win,
+               attr_t  at,
                void    *opts)
                { return(*(int *)0); }
 
@@ -2343,14 +2339,14 @@ void    _nc_synchook(
 
 #undef mvderwin
 int    mvderwin(
-               WINDOW  *win, 
-               int     y, 
+               WINDOW  *win,
+               int     y,
                int     x)
                { return(*(int *)0); }
 
 #undef syncok
 int    syncok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL bf)
                { return(*(int *)0); }
 
@@ -2384,7 +2380,7 @@ struct panelhook *_nc_panelhook(void)
 
 #undef _nc_printf_string
 char   *_nc_printf_string(
-               const char *fmt, 
+               const char *fmt,
                va_list ap)
                { return(*(char **)0); }
 
@@ -2397,16 +2393,11 @@ char    *_nc_printf_string(
 int    doupdate(void)
                { return(*(int *)0); }
 
-#undef _nc_outstr
-void   _nc_outstr(
-               const char *str)
-               { /* void */ }
-
 #undef _nc_scrolln
 int    _nc_scrolln(
-               int     n, 
-               int     top, 
-               int     bot, 
+               int     n,
+               int     top,
+               int     bot,
                int     maxy)
                { return(*(int *)0); }
 
@@ -2429,13 +2420,9 @@ void     _nc_do_xmc_glitch(
 
 /* ./trace/varargs.c */
 
-typedef enum {
-    atUnknown = 0, atInteger, atFloat, atPoint, atString
-} ARGTYPE;
-
 #undef _nc_varargs
 char   *_nc_varargs(
-               const char *fmt, 
+               const char *fmt,
                va_list ap)
                { return(*(char **)0); }
 
@@ -2445,30 +2432,63 @@ char    *_nc_varargs(
 void   _nc_memmove(void)
                { /* void */ }
 
-/* ./base/sigaction.c */
-
-#undef _nc_sigaction
-void   _nc_sigaction(void)
-               { /* void */ }
-
 /* ./base/vsscanf.c */
 
 #undef _nc_vsscanf
 void   _nc_vsscanf(void)
                { /* void */ }
 
+/* ./base/lib_freeall.c */
+
+#include <term_entry.h>
+
+#undef _nc_freeall
+void   _nc_freeall(void)
+               { /* void */ }
+
+/* ./widechar/charable.c */
+
+#undef _nc_is_charable
+NCURSES_BOOL _nc_is_charable(
+               wchar_t ch)
+               { return(*(NCURSES_BOOL *)0); }
+
+#undef _nc_to_char
+int    _nc_to_char(
+               wint_t  ch)
+               { return(*(int *)0); }
+
+#undef _nc_to_widechar
+wint_t _nc_to_widechar(
+               int     ch)
+               { return(*(wint_t *)0); }
+
+/* ./widechar/lib_add_wch.c */
+
+#undef wadd_wch
+int    wadd_wch(
+               WINDOW  *win,
+               const cchar_t *wch)
+               { return(*(int *)0); }
+
+#undef wecho_wchar
+int    wecho_wchar(
+               WINDOW  *win,
+               const cchar_t *wch)
+               { return(*(int *)0); }
+
 /* ./widechar/lib_box_set.c */
 
 #undef wborder_set
 int    wborder_set(
-               WINDOW  *win, 
-               const cchar_t *ls, 
-               const cchar_t *rs, 
-               const cchar_t *ts, 
-               const cchar_t *bs, 
-               const cchar_t *tl, 
-               const cchar_t *tr, 
-               const cchar_t *bl, 
+               WINDOW  *win,
+               const cchar_t *ls,
+               const cchar_t *rs,
+               const cchar_t *ts,
+               const cchar_t *bs,
+               const cchar_t *tl,
+               const cchar_t *tr,
+               const cchar_t *bl,
                const cchar_t *br)
                { return(*(int *)0); }
 
@@ -2476,19 +2496,19 @@ int     wborder_set(
 
 #undef setcchar
 int    setcchar(
-               cchar_t *wcval, 
-               const wchar_t *wch, 
-               const attr_t attrs, 
-               short   color_pair, 
+               cchar_t *wcval,
+               const wchar_t *wch,
+               const attr_t attrs,
+               short   color_pair,
                const void *opts)
                { return(*(int *)0); }
 
 #undef getcchar
 int    getcchar(
-               const cchar_t *wcval, 
-               wchar_t *wch, 
-               attr_t  *attrs, 
-               short   *color_pair, 
+               const cchar_t *wcval,
+               wchar_t *wch,
+               attr_t  *attrs,
+               short   *color_pair,
                void    *opts)
                { return(*(int *)0); }
 
@@ -2496,28 +2516,28 @@ int     getcchar(
 
 #undef wget_wch
 int    wget_wch(
-               WINDOW  *win, 
-               wint_t *result)
+               WINDOW  *win,
+               wint_t  *result)
                { return(*(int *)0); }
 
 /* ./widechar/lib_erasewchar.c */
 
 #undef erasewchar
 int    erasewchar(
-               wchar_t *wch)
+               wchar_t *wch)
                { return(*(int *)0); }
 
 #undef killwchar
 int    killwchar(
-               wchar_t *wch)
+               wchar_t *wch)
                { return(*(int *)0); }
 
 /* ./widechar/lib_get_wstr.c */
 
 #undef wgetn_wstr
 int    wgetn_wstr(
-               WINDOW  *win, 
-               wint_t *str, 
+               WINDOW  *win,
+               wint_t  *str,
                int     maxlen)
                { return(*(int *)0); }
 
@@ -2525,8 +2545,8 @@ int       wgetn_wstr(
 
 #undef whline_set
 int    whline_set(
-               WINDOW  *win, 
-               const cchar_t *ch, 
+               WINDOW  *win,
+               const cchar_t *ch,
                int     n)
                { return(*(int *)0); }
 
@@ -2534,7 +2554,7 @@ int       whline_set(
 
 #undef win_wch
 int    win_wch(
-               WINDOW  *win, 
+               WINDOW  *win,
                cchar_t *wcval)
                { return(*(int *)0); }
 
@@ -2542,17 +2562,8 @@ int      win_wch(
 
 #undef win_wchnstr
 int    win_wchnstr(
-               WINDOW  *win, 
-               cchar_t *wchstr, 
-               int     n)
-               { return(*(int *)0); }
-
-/* ./widechar/lib_ins_nwstr.c */
-
-#undef wins_nwstr
-int    wins_nwstr(
-               WINDOW  *win, 
-               const wchar_t *wstr, 
+               WINDOW  *win,
+               cchar_t *wchstr,
                int     n)
                { return(*(int *)0); }
 
@@ -2560,23 +2571,47 @@ int     wins_nwstr(
 
 #undef wins_wch
 int    wins_wch(
-               WINDOW  *win, 
+               WINDOW  *win,
                const cchar_t *wch)
                { return(*(int *)0); }
 
+#undef wins_nwstr
+int    wins_nwstr(
+               WINDOW  *win,
+               const wchar_t *wstr,
+               int     n)
+               { return(*(int *)0); }
+
 /* ./widechar/lib_inwstr.c */
 
 #undef winnwstr
 int    winnwstr(
-               WINDOW  *win, 
-               wchar_t *wstr, 
+               WINDOW  *win,
+               wchar_t *wstr,
                int     n)
                { return(*(int *)0); }
 
 #undef winwstr
 int    winwstr(
-               WINDOW  *win, 
-               wchar_t *wstr)
+               WINDOW  *win,
+               wchar_t *wstr)
+               { return(*(int *)0); }
+
+/* ./widechar/lib_pecho_wchar.c */
+
+#undef pecho_wchar
+int    pecho_wchar(
+               WINDOW  *pad,
+               const cchar_t *wch)
+               { return(*(int *)0); }
+
+/* ./widechar/lib_slk_wset.c */
+
+#undef slk_wset
+int    slk_wset(
+               int     i,
+               const wchar_t *astr,
+               int     format)
                { return(*(int *)0); }
 
 /* ./widechar/lib_unget_wch.c */
@@ -2590,17 +2625,17 @@ int     unget_wch(
 
 #undef vid_puts
 int    vid_puts(
-               attr_t  newmode, 
-               short   pair, 
-               void    *opts, 
+               attr_t  newmode,
+               short   pair,
+               void    *opts,
                int     (*outc)(
                int     p1))
                { return(*(int *)0); }
 
 #undef vid_attr
 int    vid_attr(
-               attr_t  newmode, 
-               short   pair, 
+               attr_t  newmode,
+               short   pair,
                void    *opts)
                { return(*(int *)0); }
 
@@ -2612,8 +2647,8 @@ attr_t    term_attrs(void)
 
 #undef wvline_set
 int    wvline_set(
-               WINDOW  *win, 
-               const cchar_t *ch, 
+               WINDOW  *win,
+               const cchar_t *ch,
                int     n)
                { return(*(int *)0); }
 
@@ -2629,7 +2664,7 @@ void      _nc_init_wacs(void)
 /* ./widechar/lib_wunctrl.c */
 
 #undef wunctrl
-wchar_t *wunctrl(
+wchar_t        *wunctrl(
                cchar_t *wc)
                { return(*(wchar_t **)0); }
 
@@ -2637,7 +2672,7 @@ wchar_t *wunctrl(
 
 #undef define_key
 int    define_key(
-               char    *str, 
+               const char *str,
                int     keycode)
                { return(*(int *)0); }
 
@@ -2645,13 +2680,13 @@ int     define_key(
 
 #undef _nc_toggle_attr_on
 void   _nc_toggle_attr_on(
-               attr_t  *S, 
+               attr_t  *S,
                attr_t  at)
                { /* void */ }
 
 #undef _nc_toggle_attr_off
 void   _nc_toggle_attr_off(
-               attr_t  *S, 
+               attr_t  *S,
                attr_t  at)
                { /* void */ }
 
@@ -2670,11 +2705,18 @@ void    _nc_UpdateAttrs(
                chtype  c)
                { /* void */ }
 
+/* ./base/key_defined.c */
+
+#undef key_defined
+int    key_defined(
+               const char *str)
+               { return(*(int *)0); }
+
 /* ./base/keybound.c */
 
 #undef keybound
 char   *keybound(
-               int     code, 
+               int     code,
                int     count)
                { return(*(char **)0); }
 
@@ -2682,7 +2724,7 @@ char      *keybound(
 
 #undef keyok
 int    keyok(
-               int     c, 
+               int     c,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -2694,23 +2736,15 @@ int     use_default_colors(void)
 
 #undef assume_default_colors
 int    assume_default_colors(
-               int     fg, 
+               int     fg,
                int     bg)
                { return(*(int *)0); }
 
-/* ./base/lib_freeall.c */
-
-#include <term_entry.h>
-
-#undef _nc_freeall
-void   _nc_freeall(void)
-               { /* void */ }
-
 /* ./tinfo/lib_print.c */
 
 #undef mcprint
 int    mcprint(
-               char    *data, 
+               char    *data,
                int     len)
                { return(*(int *)0); }
 
@@ -2718,19 +2752,19 @@ int     mcprint(
 
 #undef is_term_resized
 NCURSES_BOOL is_term_resized(
-               int     ToLines, 
+               int     ToLines,
                int     ToCols)
                { return(*(NCURSES_BOOL *)0); }
 
 #undef resize_term
 int    resize_term(
-               int     ToLines, 
+               int     ToLines,
                int     ToCols)
                { return(*(int *)0); }
 
 #undef resizeterm
 int    resizeterm(
-               int     ToLines, 
+               int     ToLines,
                int     ToCols)
                { return(*(int *)0); }
 
@@ -2745,22 +2779,22 @@ void    _nc_trace_xnames(
 
 #undef _nc_expand_try
 char   *_nc_expand_try(
-               struct tries *tree, 
-               unsigned short code, 
-               int     *count, 
+               struct tries *tree,
+               unsigned short code,
+               int     *count,
                size_t  len)
                { return(*(char **)0); }
 
 #undef _nc_remove_key
 int    _nc_remove_key(
-               struct tries **tree, 
+               struct tries **tree,
                unsigned short code)
                { return(*(int *)0); }
 
 #undef _nc_remove_string
 int    _nc_remove_string(
-               struct tries **tree, 
-               char    *string)
+               struct tries **tree,
+               const char *string)
                { return(*(int *)0); }
 
 /* ./base/version.c */
@@ -2773,8 +2807,8 @@ const char *curses_version(void)
 
 #undef wresize
 int    wresize(
-               WINDOW  *win, 
-               int     ToLines, 
+               WINDOW  *win,
+               int     ToLines,
                int     ToCols)
                { return(*(int *)0); }
 
@@ -2785,6 +2819,11 @@ char     *_nc_rootname(
                char    *path)
                { return(*(char **)0); }
 
+#undef _nc_pathlast
+unsigned _nc_pathlast(
+               const char *path)
+               { return(*(unsigned *)0); }
+
 #undef _nc_basename
 char   *_nc_basename(
                char    *path)
@@ -2792,7 +2831,7 @@ char      *_nc_basename(
 
 #undef _nc_access
 int    _nc_access(
-               const char *path, 
+               const char *path,
                int     mode)
                { return(*(int *)0); }
 
@@ -2804,8 +2843,8 @@ int       _nc_env_access(void)
 
 #undef _nc_add_to_try
 void   _nc_add_to_try(
-               struct tries **tree, 
-               const char *str, 
+               struct tries **tree,
+               const char *str,
                unsigned short code)
                { /* void */ }
 
@@ -2828,13 +2867,13 @@ char    *_nc_save_str(
 
 #undef _nc_wrap_entry
 void   _nc_wrap_entry(
-               ENTRY   *const ep, 
+               ENTRY   *const ep,
                NCURSES_BOOL copy_strings)
                { /* void */ }
 
 #undef _nc_merge_entry
 void   _nc_merge_entry(
-               TERMTYPE *const to, 
+               TERMTYPE *const to,
                TERMTYPE *const from)
                { /* void */ }
 
@@ -2842,13 +2881,13 @@ void    _nc_merge_entry(
 
 #undef _nc_align_termtype
 void   _nc_align_termtype(
-               TERMTYPE *to, 
+               TERMTYPE *to,
                TERMTYPE *from)
                { /* void */ }
 
 #undef _nc_copy_termtype
 void   _nc_copy_termtype(
-               TERMTYPE *dst, 
+               TERMTYPE *dst,
                TERMTYPE *src)
                { /* void */ }
 
@@ -2856,16 +2895,16 @@ void    _nc_copy_termtype(
 
 #undef _nc_captoinfo
 char   *_nc_captoinfo(
-               const char *cap, 
-               const char *s, 
-               int const parametrized)
+               const char *cap,
+               const char *s,
+               int const parameterized)
                { return(*(char **)0); }
 
 #undef _nc_infotocap
 char   *_nc_infotocap(
-               const char *cap, 
-               const char *str, 
-               int const parametrized)
+               const char *cap,
+               const char *str,
+               int const parameterized)
                { return(*(char **)0); }
 
 /* ./codes.c */
@@ -2926,19 +2965,19 @@ void    _nc_get_type(
 
 #undef _nc_warning
 void   _nc_warning(
-               const char *const fmt, 
+               const char *const fmt,
                ...)
                { /* void */ }
 
 #undef _nc_err_abort
 void   _nc_err_abort(
-               const char *const fmt, 
+               const char *const fmt,
                ...)
                { /* void */ }
 
 #undef _nc_syserr_abort
 void   _nc_syserr_abort(
-               const char *const fmt, 
+               const char *const fmt,
                ...)
                { /* void */ }
 
@@ -2946,8 +2985,8 @@ void      _nc_syserr_abort(
 
 #undef _nc_tic_expand
 char   *_nc_tic_expand(
-               const char *srcp, 
-               NCURSES_BOOL tic_format, 
+               const char *srcp,
+               NCURSES_BOOL tic_format,
                int     numbers)
                { return(*(char **)0); }
 
@@ -2957,14 +2996,14 @@ char    *_nc_tic_expand(
 
 #undef _nc_find_entry
 struct name_table_entry const *_nc_find_entry(
-               const char *string, 
+               const char *string,
                const struct name_table_entry *const *hash_table)
                { return(*(struct name_table_entry const **)0); }
 
 #undef _nc_find_type_entry
 struct name_table_entry const *_nc_find_type_entry(
-               const char *string, 
-               int     type, 
+               const char *string,
+               int     type,
                const struct name_table_entry *table)
                { return(*(struct name_table_entry const **)0); }
 
@@ -2985,16 +3024,16 @@ void    _nc_free_entries(
 
 #undef _nc_entry_match
 NCURSES_BOOL _nc_entry_match(
-               char    *n1, 
+               char    *n1,
                char    *n2)
                { return(*(NCURSES_BOOL *)0); }
 
 #undef _nc_read_entry_source
 void   _nc_read_entry_source(
-               FILE    *fp, 
-               char    *buf, 
-               int     literal, 
-               NCURSES_BOOL silent, 
+               FILE    *fp,
+               char    *buf,
+               int     literal,
+               NCURSES_BOOL silent,
                NCURSES_BOOL (*hook)(
                ENTRY   *p1))
                { /* void */ }
@@ -3028,7 +3067,7 @@ int       _nc_get_token(
 
 #undef _nc_trans_string
 char   _nc_trans_string(
-               char    *ptr, 
+               char    *ptr,
                char    *last)
                { return(*(char *)0); }
 
@@ -3044,7 +3083,7 @@ void      _nc_panic_mode(
 
 #undef _nc_reset_input
 void   _nc_reset_input(
-               FILE    *fp, 
+               FILE    *fp,
                char    *buf)
                { /* void */ }
 
@@ -3052,7 +3091,7 @@ void      _nc_reset_input(
 
 #undef _nc_doalloc
 void   *_nc_doalloc(
-               void    *oldp, 
+               void    *oldp,
                size_t  amount)
                { return(*(void **)0); }
 
@@ -3109,7 +3148,7 @@ void      _nc_init_keytry(void)
 /* ./tinfo/lib_acs.c */
 
 #undef acs_map
-chtype acs_map[128 ];
+chtype acs_map[128];
 
 #undef _nc_init_acs
 void   _nc_init_acs(void)
@@ -3119,11 +3158,6 @@ void     _nc_init_acs(void)
 
 #include <termcap.h>
 
-struct speed {
-    int s;                     
-    int sp;                    
-};
-
 #undef _nc_baudrate
 int    _nc_baudrate(
                int     OSpeed)
@@ -3202,7 +3236,7 @@ char      *keyname(
 
 #undef key_name
 char   *key_name(
-               wchar_t c)
+               wchar_t c)
                { return(*(char **)0); }
 
 /* ./tinfo/lib_longname.c */
@@ -3224,13 +3258,13 @@ int     napms(
 
 #undef idlok
 int    idlok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
 #undef idcok
 void   idcok(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { /* void */ }
 
@@ -3241,31 +3275,31 @@ int     halfdelay(
 
 #undef nodelay
 int    nodelay(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
 #undef notimeout
 int    notimeout(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL f)
                { return(*(int *)0); }
 
 #undef wtimeout
 void   wtimeout(
-               WINDOW  *win, 
+               WINDOW  *win,
                int     delay)
                { /* void */ }
 
 #undef keypad
 int    keypad(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
 #undef meta
 int    meta(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -3317,7 +3351,7 @@ void      noqiflush(void)
 
 #undef intrflush
 int    intrflush(
-               WINDOW  *win, 
+               WINDOW  *win,
                NCURSES_BOOL flag)
                { return(*(int *)0); }
 
@@ -3325,11 +3359,8 @@ int      intrflush(
 
 #include <sys/ioctl.h>
 
-#undef use_env
-void   use_env(
-               NCURSES_BOOL f)
-               { /* void */ }
-
+#undef ttytype
+char   ttytype[256];
 #undef LINES
 int    LINES;
 #undef COLS
@@ -3337,17 +3368,31 @@ int     COLS;
 #undef TABSIZE
 int    TABSIZE;
 
+#undef use_env
+void   use_env(
+               NCURSES_BOOL f)
+               { /* void */ }
+
 #undef _nc_update_screensize
 void   _nc_update_screensize(void)
                { /* void */ }
 
-#undef ttytype
-char   ttytype[256 ];
+#undef _nc_get_locale
+char   *_nc_get_locale(void)
+               { return(*(char **)0); }
+
+#undef _nc_unicode_locale
+int    _nc_unicode_locale(void)
+               { return(*(int *)0); }
+
+#undef _nc_locale_breaks_acs
+int    _nc_locale_breaks_acs(void)
+               { return(*(int *)0); }
 
 #undef setupterm
 int    setupterm(
-               char    *tname, 
-               int     Filedes, 
+               char    *tname,
+               int     Filedes,
                int     *errret)
                { return(*(int *)0); }
 
@@ -3360,7 +3405,7 @@ char      *BC;
 
 #undef tgetent
 int    tgetent(
-               char    *bufp, 
+               char    *bufp,
                const char *name)
                { return(*(int *)0); }
 
@@ -3382,7 +3427,7 @@ int       tgetnum(
 
 #undef tgetstr
 char   *tgetstr(
-               char    *id, 
+               char    *id,
                char    **area)
                { return(*(char **)0); }
 
@@ -3396,8 +3441,8 @@ char      *termname(void)
 
 #undef tgoto
 char   *tgoto(
-               const char *string, 
-               int     x, 
+               const char *string,
+               int     x,
                int     y)
                { return(*(char **)0); }
 
@@ -3420,20 +3465,19 @@ char    *tigetstr(
 
 /* ./tinfo/lib_tparm.c */
 
-typedef struct {
-    union {
-       int num;
-       char *str;
-    } data;
-    NCURSES_BOOL  num_type;
-} stack_frame;
-
 #undef _nc_tparm_err
 int    _nc_tparm_err;
 
+#undef _nc_tparm_analyze
+int    _nc_tparm_analyze(
+               const char *string,
+               char    *p_is_s[9],
+               int     *popcount)
+               { return(*(int *)0); }
+
 #undef tparm
 char   *tparm(
-               char    *string, 
+               char    *string,
                ...)
                { return(*(char **)0); }
 
@@ -3442,7 +3486,7 @@ char      *tparm(
 #undef PC
 char   PC;
 #undef ospeed
-short  ospeed;
+NCURSES_OSPEED ospeed;
 #undef _nc_nulls_sent
 int    _nc_nulls_sent;
 
@@ -3467,8 +3511,8 @@ int       putp(
 
 #undef tputs
 int    tputs(
-               const char *string, 
-               int     affcnt, 
+               const char *string,
+               int     affcnt,
                int     (*outc)(
                int     p1))
                { return(*(int *)0); }
@@ -3489,15 +3533,25 @@ void    trace(
 
 #undef _tracef
 void   _tracef(
-               const char *fmt, 
+               const char *fmt,
                ...)
                { /* void */ }
 
+#undef _nc_retrace_bool
+NCURSES_BOOL _nc_retrace_bool(
+               NCURSES_BOOL code)
+               { return(*(NCURSES_BOOL *)0); }
+
 #undef _nc_retrace_int
 int    _nc_retrace_int(
                int     code)
                { return(*(int *)0); }
 
+#undef _nc_retrace_unsigned
+unsigned _nc_retrace_unsigned(
+               unsigned code)
+               { return(*(unsigned *)0); }
+
 #undef _nc_retrace_ptr
 char   *_nc_retrace_ptr(
                char    *code)
@@ -3515,11 +3569,6 @@ WINDOW   *_nc_retrace_win(
 
 /* ./trace/lib_tracebits.c */
 
-typedef struct {
-    unsigned int val;
-    const char *name;
-} BITNAMES;
-
 #undef _nc_trace_ttymode
 char   *_nc_trace_ttymode(
                struct termios *tty)
@@ -3576,8 +3625,8 @@ int       resetty(void)
 
 #undef _nc_timed_wait
 int    _nc_timed_wait(
-               int     mode, 
-               int     milliseconds, 
+               int     mode,
+               int     milliseconds,
                int     *timeleft)
                { return(*(int *)0); }
 
@@ -3590,8 +3639,8 @@ char      *_nc_first_name(
 
 #undef _nc_name_match
 int    _nc_name_match(
-               const char *const namelst, 
-               const char *const name, 
+               const char *const namelst,
+               const char *const name,
                const char *const delim)
                { return(*(int *)0); }
 
@@ -3614,22 +3663,17 @@ char    *const strfnames[] = {0};
 
 #undef _nc_parse_entry
 int    _nc_parse_entry(
-               struct entry *entryp, 
-               int     literal, 
+               struct entry *entryp,
+               int     literal,
                NCURSES_BOOL silent)
                { return(*(int *)0); }
 
 #undef _nc_capcmp
 int    _nc_capcmp(
-               const char *s, 
+               const char *s,
                const char *t)
                { return(*(int *)0); }
 
-typedef struct {
-    const char *from;
-    const char *to;
-} assoc;
-
 /* ./tinfo/read_entry.c */
 
 #undef _nc_tic_dir
@@ -3644,14 +3688,14 @@ void    _nc_keep_tic_dir(
 
 #undef _nc_read_file_entry
 int    _nc_read_file_entry(
-               const char *const filename, 
+               const char *const filename,
                TERMTYPE *ptr)
                { return(*(int *)0); }
 
 #undef _nc_read_entry
 int    _nc_read_entry(
-               const char *const tn, 
-               char    *const filename, 
+               const char *const tn,
+               char    *const filename,
                TERMTYPE *const tp)
                { return(*(int *)0); }
 
@@ -3659,7 +3703,7 @@ int       _nc_read_entry(
 
 #undef _nc_read_termcap_entry
 int    _nc_read_termcap_entry(
-               const char *const tn, 
+               const char *const tn,
                TERMTYPE *const tp)
                { return(*(int *)0); }
 
@@ -3667,7 +3711,7 @@ int       _nc_read_termcap_entry(
 
 #undef _nc_set_buffer
 void   _nc_set_buffer(
-               FILE    *ofp, 
+               FILE    *ofp,
                NCURSES_BOOL buffered)
                { /* void */ }
 
@@ -3675,48 +3719,49 @@ void    _nc_set_buffer(
 
 #undef _nc_str_init
 string_desc *_nc_str_init(
-               string_desc *dst, 
-               char    *src, 
+               string_desc *dst,
+               char    *src,
                size_t  len)
                { return(*(string_desc **)0); }
 
 #undef _nc_str_null
 string_desc *_nc_str_null(
-               string_desc *dst, 
+               string_desc *dst,
                size_t  len)
                { return(*(string_desc **)0); }
 
 #undef _nc_str_copy
 string_desc *_nc_str_copy(
-               string_desc *dst, 
+               string_desc *dst,
                string_desc *src)
                { return(*(string_desc **)0); }
 
 #undef _nc_safe_strcat
 NCURSES_BOOL _nc_safe_strcat(
-               string_desc *dst, 
+               string_desc *dst,
                const char *src)
                { return(*(NCURSES_BOOL *)0); }
 
 #undef _nc_safe_strcpy
 NCURSES_BOOL _nc_safe_strcpy(
-               string_desc *dst, 
+               string_desc *dst,
                const char *src)
                { return(*(NCURSES_BOOL *)0); }
 
 /* ./trace/trace_buf.c */
 
-typedef struct {
-    char *text;
-    size_t size;
-} LIST;
-
 #undef _nc_trace_buf
 char   *_nc_trace_buf(
-               int     bufnum, 
+               int     bufnum,
                size_t  want)
                { return(*(char **)0); }
 
+#undef _nc_trace_bufcat
+char   *_nc_trace_bufcat(
+               int     bufnum,
+               const char *value)
+               { return(*(char **)0); }
+
 /* ./trace/trace_tries.c */
 
 #undef _nc_trace_tries
@@ -3735,7 +3780,7 @@ char      *unctrl(
 
 #undef _nc_visbuf2
 const char *_nc_visbuf2(
-               int     bufnum, 
+               int     bufnum,
                const char *buf)
                { return(*(const char **)0); }
 
@@ -3744,9 +3789,15 @@ const char *_nc_visbuf(
                const char *buf)
                { return(*(const char **)0); }
 
+#undef _nc_visbufn
+const char *_nc_visbufn(
+               const char *buf,
+               int     len)
+               { return(*(const char **)0); }
+
 #undef _nc_viswbuf2
 const char *_nc_viswbuf2(
-               int     bufnum, 
+               int     bufnum,
                const wchar_t *buf)
                { return(*(const char **)0); }
 
@@ -3755,16 +3806,22 @@ const char *_nc_viswbuf(
                const wchar_t *buf)
                { return(*(const char **)0); }
 
+#undef _nc_viswbufn
+const char *_nc_viswbufn(
+               const wchar_t *buf,
+               int     len)
+               { return(*(const char **)0); }
+
 #undef _nc_viscbuf2
 const char *_nc_viscbuf2(
-               int     bufnum, 
-               const cchar_t *buf, 
+               int     bufnum,
+               const cchar_t *buf,
                int     len)
                { return(*(const char **)0); }
 
 #undef _nc_viscbuf
 const char *_nc_viscbuf(
-               const cchar_t *buf, 
+               const cchar_t *buf,
                int     len)
                { return(*(const char **)0); }
 
index 541df6f2493c172a6585846f933372cb6400e962..bd08c3920a847491b1f6e943795ec78ff78883aa 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: modules,v 1.90 2002/05/11 20:14:41 tom Exp $
+# $Id: modules,v 1.100 2004/01/10 19:08:23 tom Exp $
 ##############################################################################
-# Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.                #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -61,7 +61,6 @@ lib_inchstr   lib             $(base)
 lib_initscr    lib             $(base)         $(INCDIR)/tic.h
 lib_insch      lib             $(base)
 lib_insdel     lib             $(base)
-lib_insstr     lib             $(base)
 lib_instr      lib             $(base)
 lib_isendwin   lib             $(base)
 lib_leaveok    lib             $(base)
@@ -101,7 +100,7 @@ lib_touch   lib             $(base)
 lib_traceatr   lib             $(trace)        ../include/term.h
 lib_tracedmp   lib             $(trace)
 lib_tracemse   lib             $(trace)
-lib_tstp       lib             $(serial)
+lib_tstp       lib             $(serial)       $(srcdir)/SigAction.h
 lib_ungetch    lib             $(base)
 lib_vidattr    lib             $(serial)       ../include/term.h
 lib_vline      lib             $(base)
@@ -117,11 +116,15 @@ varargs           lib             $(trace)
 
 # Modules for porting
 memmove                lib             $(base)
-sigaction      lib             $(base)
 vsscanf        lib             $(base)
 
+# actually an extension, but with its own configure option (--disable-leaks)
+lib_freeall    lib             $(base)
+
 # XSI extensions to the base library (wide-character)
 @ widechar
+charable       lib             $(wide)
+lib_add_wch    lib             $(wide)
 lib_box_set    lib             $(wide)
 lib_cchar      lib             $(wide)
 lib_get_wch    lib             $(wide)
@@ -130,9 +133,10 @@ lib_get_wstr       lib             $(wide)
 lib_hline_set  lib             $(wide)
 lib_in_wch     lib             $(wide)
 lib_in_wchnstr lib             $(wide)
-lib_ins_nwstr  lib             $(wide)
 lib_ins_wch    lib             $(wide)
 lib_inwstr     lib             $(wide)
+lib_pecho_wchar        lib             $(wide)
+lib_slk_wset   lib             $(wide)
 lib_unget_wch  lib             $(wide)
 lib_vid_attr   lib             $(wide)         ../include/term.h
 lib_vline_set  lib             $(wide)
@@ -143,15 +147,14 @@ lib_wunctrl       lib             $(wide)
 @ ext_funcs
 define_key     lib             $(base)
 expanded       lib             .
+key_defined    lib             $(base)
 keybound       lib             $(base)
 keyok          lib             $(base)
 lib_dft_fgbg   lib             $(base)         ../include/term.h
-lib_freeall    lib             $(base)
 lib_print      lib             $(tinfo)        ../include/term.h
 resizeterm     lib             $(base)         ../include/term.h
 trace_xnames   lib             $(trace)        ../include/term.h $(INCDIR)/term_entry.h
 tries          lib             $(base)
-version                lib             $(base)
 wresize                lib             $(base)         ../include/term.h
 
 # Support for termcap (and tic, etc.), which can be a separate library
@@ -209,3 +212,7 @@ trace_tries lib             $(trace)
 unctrl         lib             .
 visbuf         lib             $(trace)        $(INCDIR)/tic.h
 write_entry    lib             $(tinfo)        ../include/term.h $(INCDIR)/term_entry.h $(INCDIR)/tic.h
+
+# Extensions to the termlib library
+@ ext_tinfo
+version                lib             $(base)
index 98d5b1379a1c6f5b160abba616d7848fc5af14c6..14017b0168963e657e799be4134a0f32d17f0a5c 100755 (executable)
@@ -1,7 +1,7 @@
 #! /bin/sh
-# $Id: MKkeys_list.sh,v 1.2 2001/06/16 16:50:35 tom Exp $
+# $Id: MKkeys_list.sh,v 1.4 2003/10/25 16:19:54 tom Exp $
 ##############################################################################
-# Copyright (c) 2001 Free Software Foundation, Inc.                          #
+# Copyright (c) 2001,2003 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"), #
@@ -30,7 +30,7 @@
 #
 # MKkey_defs.sh -- generate list of function-keys for terminfo database
 #
-# Author: Thomas E. Dickey <dickey@herndon4.his.com> 2001
+# Author: Thomas E. Dickey 2001
 #
 # Extract function-key names from the Caps file
 #
@@ -39,7 +39,7 @@ DATA=${1-../../include/Caps}
 
 data=data$$
 trap 'rm -f $data' 0 1 2 5 15
-sed -e 's/[    ]\+/    /g' < $DATA >$data
+sed -e 's/[    ][      ]*/     /g' < $DATA >$data
 
 cat <<EOF
 # These definitions were generated by $0 $DATA
index f5240c121c26bf2003a5a1c2423b62140b1e177a..44c7e1b2f5d129d366bcaf45341eaadbbbf39eb5 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998,2001,2003 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            *
@@ -34,7 +34,7 @@
 #include <tic.h>
 #include <nc_alloc.h>
 
-MODULE_ID("$Id: access.c,v 1.9 2001/06/23 22:11:49 tom Exp $")
+MODULE_ID("$Id: access.c,v 1.10 2003/07/05 19:31:28 tom Exp $")
 
 #define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
 
@@ -64,19 +64,28 @@ _nc_rootname(char *path)
     return result;
 }
 
-NCURSES_EXPORT(char *)
-_nc_basename(char *path)
+/*
+ * Return index of the basename
+ */
+NCURSES_EXPORT(unsigned)
+_nc_pathlast(const char *path)
 {
-    char *result = strrchr(path, '/');
+    const char *test = strrchr(path, '/');
 #ifdef __EMX__
-    if (result == 0)
-       result = strrchr(path, '\\');
+    if (test == 0)
+       test = strrchr(path, '\\');
 #endif
-    if (result == 0)
-       result = path;
+    if (test == 0)
+       test = path;
     else
-       result++;
-    return result;
+       test++;
+    return (test - path);
+}
+
+NCURSES_EXPORT(char *)
+_nc_basename(char *path)
+{
+    return path + _nc_pathlast(path);
 }
 
 NCURSES_EXPORT(int)
index 16f04f8d50cdd7c425b886c9fb7d50a4ef548ee4..2ff0cdf1614829c0c183ccc7c9f190ca04e57d8c 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey                        1996-2003               *
  ****************************************************************************/
 
 /*
@@ -47,7 +48,7 @@
 #include <tic.h>
 #include <term_entry.h>
 
-MODULE_ID("$Id: alloc_entry.c,v 1.37 2002/09/07 20:04:15 tom Exp $")
+MODULE_ID("$Id: alloc_entry.c,v 1.40 2003/11/08 21:29:54 tom Exp $")
 
 #define ABSENT_OFFSET    -1
 #define CANCELLED_OFFSET -2
@@ -61,10 +62,10 @@ NCURSES_EXPORT(void)
 _nc_init_entry(TERMTYPE * const tp)
 /* initialize a terminal type data block */
 {
-    int i;
+    unsigned i;
 
     if (stringbuf == 0)
-       stringbuf = malloc(MAX_STRTAB);
+       stringbuf = (char *) malloc(MAX_STRTAB);
 
 #if NCURSES_XNAMES
     tp->num_Booleans = BOOLCOUNT;
@@ -126,7 +127,8 @@ _nc_wrap_entry(ENTRY * const ep, bool copy_strings)
 /* copy the string parts to allocated storage, preserving pointers to it */
 {
     int offsets[MAX_ENTRY_SIZE / 2], useoffsets[MAX_USES];
-    int i, n;
+    unsigned i, n;
+    unsigned nuses = ep->nuses;
     TERMTYPE *tp = &(ep->tterm);
 
     if (copy_strings) {
@@ -141,7 +143,7 @@ _nc_wrap_entry(ENTRY * const ep, bool copy_strings)
            }
        }
 
-       for (i = 0; i < ep->nuses; i++) {
+       for (i = 0; i < nuses; i++) {
            if (ep->uses[i].name == 0) {
                ep->uses[i].name = _nc_save_str(ep->uses[i].name);
            }
@@ -160,7 +162,7 @@ _nc_wrap_entry(ENTRY * const ep, bool copy_strings)
            offsets[i] = tp->Strings[i] - stringbuf;
     }
 
-    for (i = 0; i < ep->nuses; i++) {
+    for (i = 0; i < nuses; i++) {
        if (ep->uses[i].name == 0)
            useoffsets[i] = ABSENT_OFFSET;
        else
@@ -200,7 +202,7 @@ _nc_wrap_entry(ENTRY * const ep, bool copy_strings)
     }
 #endif
 
-    for (i = 0; i < ep->nuses; i++) {
+    for (i = 0; i < nuses; i++) {
        if (useoffsets[i] == ABSENT_OFFSET)
            ep->uses[i].name = 0;
        else
@@ -209,31 +211,34 @@ _nc_wrap_entry(ENTRY * const ep, bool copy_strings)
 }
 
 NCURSES_EXPORT(void)
-_nc_merge_entry
-(TERMTYPE * const to, TERMTYPE * const from)
+_nc_merge_entry(TERMTYPE * const to, TERMTYPE * const from)
 /* merge capabilities from `from' entry into `to' entry */
 {
-    int i;
+    unsigned i;
 
 #if NCURSES_XNAMES
     _nc_align_termtype(to, from);
 #endif
     for_each_boolean(i, from) {
-       int mergebool = from->Booleans[i];
+       if (to->Booleans[i] != CANCELLED_BOOLEAN) {
+           int mergebool = from->Booleans[i];
 
-       if (mergebool == CANCELLED_BOOLEAN)
-           to->Booleans[i] = FALSE;
-       else if (mergebool == TRUE)
-           to->Booleans[i] = mergebool;
+           if (mergebool == CANCELLED_BOOLEAN)
+               to->Booleans[i] = FALSE;
+           else if (mergebool == TRUE)
+               to->Booleans[i] = mergebool;
+       }
     }
 
     for_each_number(i, from) {
-       int mergenum = from->Numbers[i];
+       if (to->Numbers[i] != CANCELLED_NUMERIC) {
+           int mergenum = from->Numbers[i];
 
-       if (mergenum == CANCELLED_NUMERIC)
-           to->Numbers[i] = ABSENT_NUMERIC;
-       else if (mergenum != ABSENT_NUMERIC)
-           to->Numbers[i] = mergenum;
+           if (mergenum == CANCELLED_NUMERIC)
+               to->Numbers[i] = ABSENT_NUMERIC;
+           else if (mergenum != ABSENT_NUMERIC)
+               to->Numbers[i] = mergenum;
+       }
     }
 
     /*
@@ -242,11 +247,13 @@ _nc_merge_entry
      * we ever want to deallocate entries.
      */
     for_each_string(i, from) {
-       char *mergestring = from->Strings[i];
+       if (to->Strings[i] != CANCELLED_STRING) {
+           char *mergestring = from->Strings[i];
 
-       if (mergestring == CANCELLED_STRING)
-           to->Strings[i] = ABSENT_STRING;
-       else if (mergestring != ABSENT_STRING)
-           to->Strings[i] = mergestring;
+           if (mergestring == CANCELLED_STRING)
+               to->Strings[i] = ABSENT_STRING;
+           else if (mergestring != ABSENT_STRING)
+               to->Strings[i] = mergestring;
+       }
     }
 }
index bbc850e8c646d7e671e73cff5f429b754a15114f..36747186e182e47369c8cca8a04aad9d8c3e4650 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1999-2000,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1999-2002,2003 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            *
@@ -43,7 +43,7 @@
 #include <tic.h>
 #include <term_entry.h>
 
-MODULE_ID("$Id: alloc_ttype.c,v 1.13 2002/09/28 15:28:43 tom Exp $")
+MODULE_ID("$Id: alloc_ttype.c,v 1.14 2003/05/24 21:10:28 tom Exp $")
 
 #if NCURSES_XNAMES
 /*
@@ -92,8 +92,10 @@ find_name(char **table, int length, char *name)
 }
 
 static void
-realign_data(TERMTYPE * to, char **ext_Names, int ext_Booleans, int
-            ext_Numbers, int ext_Strings)
+realign_data(TERMTYPE * to, char **ext_Names,
+            int ext_Booleans,
+            int ext_Numbers,
+            int ext_Strings)
 {
     int n, m, base;
     int limit = (to->ext_Booleans + to->ext_Numbers + to->ext_Strings);
@@ -371,8 +373,7 @@ adjust_cancels(TERMTYPE * to, TERMTYPE * from)
 }
 
 NCURSES_EXPORT(void)
-_nc_align_termtype
-(TERMTYPE * to, TERMTYPE * from)
+_nc_align_termtype(TERMTYPE * to, TERMTYPE * from)
 {
     int na = NUM_EXT_NAMES(to);
     int nb = NUM_EXT_NAMES(from);
@@ -457,10 +458,9 @@ _nc_align_termtype
 #endif
 
 NCURSES_EXPORT(void)
-_nc_copy_termtype
-(TERMTYPE * dst, TERMTYPE * src)
+_nc_copy_termtype(TERMTYPE * dst, TERMTYPE * src)
 {
-    int i;
+    unsigned i;
 
     *dst = *src;               /* ...to copy the sizes and string-tables */
     dst->Booleans = typeMalloc(char, NUM_BOOLEANS(dst));
index e1b50b7b4f2e621b72aa32cacd7cd4cfdbcf8e3b..e2c81308e2c1a3f2bbbb83b20c19880578b8a836 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -39,7 +39,7 @@
  *
  *     There is just one entry point:
  *
- *     char *_nc_captoinfo(n, s, parametrized)
+ *     char *_nc_captoinfo(n, s, parameterized)
  *
  *     Convert value s for termcap string capability named n into terminfo
  *     format.
@@ -92,7 +92,7 @@
 #include <ctype.h>
 #include <tic.h>
 
-MODULE_ID("$Id: captoinfo.c,v 1.43 2002/09/28 16:38:59 tom Exp $")
+MODULE_ID("$Id: captoinfo.c,v 1.45 2003/11/08 21:28:04 tom Exp $")
 
 #define MAX_PUSHED     16      /* max # args we can push onto the stack */
 
@@ -272,12 +272,12 @@ getparm(int parm, int n)
  * Convert a termcap string to terminfo format.
  * 'cap' is the relevant terminfo capability index.
  * 's' is the string value of the capability.
- * 'parametrized' tells what type of translations to do:
+ * 'parameterized' tells what type of translations to do:
  *     % translations if 1
  *     pad translations if >=0
  */
 char *
-_nc_captoinfo(const char *cap, const char *s, int const parametrized)
+_nc_captoinfo(const char *cap, const char *s, int const parameterized)
 {
     const char *capstart;
 
@@ -294,7 +294,7 @@ _nc_captoinfo(const char *cap, const char *s, int const parametrized)
     capstart = 0;
     if (s == 0)
        s = "";
-    if (parametrized >= 0 && isdigit(UChar(*s)))
+    if (parameterized >= 0 && isdigit(UChar(*s)))
        for (capstart = s;; s++)
            if (!(isdigit(UChar(*s)) || *s == '*' || *s == '.'))
                break;
@@ -303,7 +303,7 @@ _nc_captoinfo(const char *cap, const char *s, int const parametrized)
        switch (*s) {
        case '%':
            s++;
-           if (parametrized < 1) {
+           if (parameterized < 1) {
                dp = save_char(dp, '%');
                break;
            }
@@ -637,7 +637,7 @@ save_tc_inequality(char *bufptr, int c1, int c2)
  * _nc_captoinfo().
  */
 char *
-_nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parametrized)
+_nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parameterized)
 {
     int seenone = 0, seentwo = 0, saw_m = 0, saw_n = 0;
     const char *padding;
@@ -649,11 +649,11 @@ _nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parametrize
 
     /* we may have to move some trailing mandatory padding up front */
     padding = str + strlen(str) - 1;
-    if (*padding == '>' && *--padding == '/') {
+    if (padding > str && *padding == '>' && *--padding == '/') {
        --padding;
        while (isdigit(UChar(*padding)) || *padding == '.' || *padding == '*')
            padding--;
-       if (*padding == '<' && *--padding == '$')
+       if (padding > str && *padding == '<' && *--padding == '$')
            trimmed = padding;
        padding += 2;
 
@@ -678,7 +678,7 @@ _nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parametrize
            --str;
        } else if (str[0] == '%' && str[1] == '%') {    /* escaped '%' */
            bufptr = save_string(bufptr, "%%");
-       } else if (*str != '%' || (parametrized < 1)) {
+       } else if (*str != '%' || (parameterized < 1)) {
            bufptr = save_char(bufptr, *str);
        } else if (sscanf(str, "%%?%%{%d}%%>%%t%%{%d}%%+%%;", &c1, &c2) == 2) {
            str = strchr(str, ';');
index 9f2ee71041e4650da7592167774fe32d789e0921..dabc0c55a0fb7ea9906586dba2c567a24a213e6d 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998,2001,2003 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            *
@@ -48,7 +48,7 @@
 #define DEBUG(level, params)   /*nothing */
 #endif
 
-MODULE_ID("$Id: comp_hash.c,v 1.25 2001/06/02 22:50:42 skimo Exp $")
+MODULE_ID("$Id: comp_hash.c,v 1.26 2003/11/08 21:58:36 tom Exp $")
 
 static int hash_function(const char *);
 
@@ -97,7 +97,7 @@ _nc_make_hash_table(struct name_table_entry *table,
  *     Computes the hashing function on the given string.
  *
  *     The current hash function is the sum of each consectutive pair
- *     of characters, taken as two-byte integers, mod Hashtabsize.
+ *     of characters, taken as two-byte integers, mod HASHTABSIZE.
  *
  */
 
index a5dc70ce180282b4eb41a8109c8de70508ad567c..203276cd1c917312e10b2dfa912f33d26455dd62 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -52,7 +52,7 @@
 #include <tic.h>
 #include <term_entry.h>
 
-MODULE_ID("$Id: comp_parse.c,v 1.53 2002/09/07 20:01:28 tom Exp $")
+MODULE_ID("$Id: comp_parse.c,v 1.57 2003/10/25 22:25:36 tom Exp $")
 
 static void sanity_check(TERMTYPE *);
 NCURSES_IMPEXP void NCURSES_API(*_nc_check_termtype) (TERMTYPE *) = sanity_check;
@@ -163,7 +163,7 @@ _nc_entry_match(char *n1, char *n2)
  ****************************************************************************/
 
 NCURSES_EXPORT(void)
-_nc_read_entry_source(FILE * fp, char *buf,
+_nc_read_entry_source(FILE *fp, char *buf,
                      int literal, bool silent,
                      bool(*hook) (ENTRY *))
 /* slurp all entries in the given file into core */
@@ -216,7 +216,7 @@ _nc_resolve_uses(bool fullresolve)
 {
     ENTRY *qp, *rp, *lastread = 0;
     bool keepgoing;
-    int i, j, unresolved, total_unresolved, multiples;
+    int i, unresolved, total_unresolved, multiples;
 
     DEBUG(2, ("RESOLUTION BEGINNING"));
 
@@ -389,26 +389,6 @@ _nc_resolve_uses(bool fullresolve)
            (keepgoing);
 
        DEBUG(2, ("MERGES COMPLETED OK"));
-
-       /*
-        * The exit condition of the loop above is such that all entries
-        * must now be resolved.  Now handle cancellations.  In a resolved
-        * entry there should be no cancellation markers.
-        */
-       for_entry_list(qp) {
-           for_each_boolean(j, &(qp->tterm)) {
-               if ((int) qp->tterm.Booleans[j] == CANCELLED_BOOLEAN)
-                   qp->tterm.Booleans[j] = ABSENT_BOOLEAN;
-           }
-           for_each_number(j, &(qp->tterm)) {
-               if (qp->tterm.Numbers[j] == CANCELLED_NUMERIC)
-                   qp->tterm.Numbers[j] = ABSENT_NUMERIC;
-           }
-           for_each_string(j, &(qp->tterm)) {
-               if (qp->tterm.Strings[j] == CANCELLED_STRING)
-                   qp->tterm.Strings[j] = ABSENT_STRING;
-           }
-       }
     }
 
     /*
index 2c82b4b90baa16449710802e225b6c125d2cc6bb..c819edcaaf3f5755e9e2b89cbe9320874e2cdbed 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -50,7 +50,7 @@
 #include <term_entry.h>
 #include <tic.h>
 
-MODULE_ID("$Id: comp_scan.c,v 1.61 2002/09/07 20:04:09 tom Exp $")
+MODULE_ID("$Id: comp_scan.c,v 1.66 2003/12/14 00:32:40 tom Exp $")
 
 /*
  * Maximum length of string capability we'll accept before raising an error.
@@ -84,6 +84,7 @@ _nc_curr_token =
  *****************************************************************************/
 
 static bool first_column;      /* See 'next_char()' below */
+static bool had_newline;
 static char separator;         /* capability separator */
 static int pushtype;           /* type of pushback token */
 static char *pushname;
@@ -93,10 +94,10 @@ NCURSES_EXPORT_VAR(bool)
 _nc_disable_period = FALSE;    /* used by tic -a option */
 #endif
 
+static bool end_of_stream(void);
 static int last_char(void);
 static int next_char(void);
 static long stream_pos(void);
-static bool end_of_stream(void);
 static void push_back(char c);
 
 /* Assume we may be looking at a termcap-style continuation */
@@ -148,8 +149,11 @@ _nc_get_token(bool silent)
     static const char terminfo_punct[] = "@%&*!#";
     static char *buffer;
 
+    char *after_list;
+    char *after_name;
     char *numchk;
     char *ptr;
+    char *s;
     char numbuf[80];
     int ch;
     int dot_flag = FALSE;
@@ -173,13 +177,20 @@ _nc_get_token(bool silent)
        return (retval);
     }
 
-    if (end_of_stream())
+    if (end_of_stream()) {
+       if (buffer != 0) {
+           FreeAndNull(buffer);
+       }
        return (EOF);
+    }
 
   start_token:
     token_start = stream_pos();
-    while ((ch = next_char()) == '\n' || iswhite(ch))
+    while ((ch = next_char()) == '\n' || iswhite(ch)) {
+       if (ch == '\n')
+           had_newline = TRUE;
        continue;
+    }
 
     ch = eat_escaped_newline(ch);
 
@@ -227,17 +238,21 @@ _nc_get_token(bool silent)
        *(ptr++) = ch;
 
        if (first_column) {
-           char *desc;
-
            _nc_comment_start = token_start;
            _nc_comment_end = _nc_curr_file_pos;
            _nc_start_line = _nc_curr_line;
 
            _nc_syntax = ERR;
+           after_name = 0;
+           after_list = 0;
            while ((ch = next_char()) != '\n') {
-               if (ch == EOF)
+               if (ch == EOF) {
                    _nc_err_abort(MSG_NO_MEMORY);
-               else if (ch == ':' && last_char() != ',') {
+               } else if (ch == '|') {
+                   after_list = ptr;
+                   if (after_name == 0)
+                       after_name = ptr;
+               } else if (ch == ':' && last_char() != ',') {
                    _nc_syntax = SYN_TERMCAP;
                    separator = ':';
                    break;
@@ -245,14 +260,18 @@ _nc_get_token(bool silent)
                    _nc_syntax = SYN_TERMINFO;
                    separator = ',';
                    /*
-                    * Fall-through here is not an accident.  The idea is that
-                    * if we see a comma, we figure this is terminfo unless we
-                    * subsequently run into a colon -- but we don't stop
-                    * looking for that colon until hitting a newline.  This
+                    * If we did not see a '|', then we found a name with no
+                    * aliases or description.
+                    */
+                   if (after_name == 0)
+                       break;
+                   /*
+                    * If we see a comma, we assume this is terminfo unless we
+                    * subsequently run into a colon.  But we don't stop
+                    * looking for a colon until hitting a newline.  This
                     * allows commas to be embedded in description fields of
                     * either syntax.
                     */
-                   /* FALLTHRU */
                } else
                    ch = eat_escaped_newline(ch);
 
@@ -277,56 +296,60 @@ _nc_get_token(bool silent)
 
            /*
             * This is the soonest we have the terminal name fetched.  Set up
-            * for following warning messages.
+            * for following warning messages.  If there's no '|', then there
+            * is no description.
             */
-           ptr = strchr(buffer, '|');
-           if (ptr == (char *) NULL)
-               ptr = buffer + strlen(buffer);
-           ch = *ptr;
-           *ptr = '\0';
-           _nc_set_type(buffer);
-           *ptr = ch;
+           if (after_name != 0) {
+               ch = *after_name;
+               *after_name = '\0';
+               _nc_set_type(buffer);
+               *after_name = ch;
+           }
 
            /*
             * Compute the boundary between the aliases and the description
             * field for syntax-checking purposes.
             */
-           desc = strrchr(buffer, '|');
-           if (!silent && desc) {
-               if (*desc == '\0')
-                   _nc_warning("empty longname field");
-               else if (strchr(desc, ' ') == (char *) NULL)
-                   _nc_warning("older tic versions may treat the description field as an alias");
+           if (after_list != 0) {
+               if (!silent) {
+                   if (*after_list == '\0')
+                       _nc_warning("empty longname field");
+                   else if (strchr(after_list, ' ') == 0)
+                       _nc_warning("older tic versions may treat the description field as an alias");
+               }
+           } else {
+               after_list = buffer + strlen(buffer);
+               DEBUG(1, ("missing description"));
            }
-           if (!desc)
-               desc = buffer + strlen(buffer);
 
            /*
             * Whitespace in a name field other than the long name can confuse
             * rdist and some termcap tools.  Slashes are a no-no.  Other
             * special characters can be dangerous due to shell expansion.
             */
-           for (ptr = buffer; ptr < desc; ptr++) {
-               if (isspace(UChar(*ptr))) {
+           for (s = buffer; s < after_list; ++s) {
+               if (isspace(UChar(*s))) {
                    if (!silent)
                        _nc_warning("whitespace in name or alias field");
                    break;
-               } else if (*ptr == '/') {
+               } else if (*s == '/') {
                    if (!silent)
                        _nc_warning("slashes aren't allowed in names or aliases");
                    break;
-               } else if (strchr("$[]!*?", *ptr)) {
+               } else if (strchr("$[]!*?", *s)) {
                    if (!silent)
-                       _nc_warning("dubious character `%c' in name or alias field", *ptr);
+                       _nc_warning("dubious character `%c' in name or alias field", *s);
                    break;
                }
            }
 
-           ptr = buffer;
-
            _nc_curr_token.tk_name = buffer;
            type = NAMES;
        } else {
+           if (had_newline && _nc_syntax == SYN_TERMCAP) {
+               _nc_warning("Missing backslash before newline");
+               had_newline = FALSE;
+           }
            while ((ch = next_char()) != EOF) {
                if (!isalnum(ch)) {
                    if (_nc_syntax == SYN_TERMINFO) {
@@ -592,6 +615,8 @@ _nc_trans_string(char *ptr, char *last)
                default:
                    _nc_warning("Illegal character %s in \\ sequence",
                                unctrl(ch));
+                   /* FALLTHRU */
+               case '|':
                    *(ptr++) = (char) ch;
                }               /* endswitch (ch) */
            }                   /* endelse (ch < '0' ||  ch > '7') */
@@ -684,7 +709,7 @@ static FILE *yyin;          /* scanner's input file descriptor */
  */
 
 NCURSES_EXPORT(void)
-_nc_reset_input(FILE * fp, char *buf)
+_nc_reset_input(FILE *fp, char *buf)
 {
     pushtype = NO_PUSHBACK;
     if (pushname != 0)
@@ -766,7 +791,7 @@ next_char(void)
                if (used == 0)
                    _nc_curr_file_pos = ftell(yyin);
 
-               if (fgets(result + used, allocated - used, yyin) != NULL) {
+               if (fgets(result + used, allocated - used, yyin) != 0) {
                    bufstart = result;
                    if (used == 0) {
                        _nc_curr_line++;
@@ -801,6 +826,8 @@ next_char(void)
     }
 
     first_column = (bufptr == bufstart);
+    if (first_column)
+       had_newline = FALSE;
 
     _nc_curr_col++;
     return (*bufptr++);
index b8b9c592037dae13ff9744a287391a72cc65e8a1..08dac4ec203dd44b6edb02639a64f04aee17a11a 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1999-2000,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1999-2002,2003 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            *
 #include <tic.h>
 #include <term_entry.h>
 
-MODULE_ID("$Id: free_ttype.c,v 1.8 2002/09/01 20:29:03 tom Exp $")
+MODULE_ID("$Id: free_ttype.c,v 1.10 2003/08/09 21:22:03 tom Exp $")
 
 NCURSES_EXPORT(void)
 _nc_free_termtype(TERMTYPE * ptr)
 {
+    T(("_nc_free_termtype(%s)", ptr->term_names));
+
+    if (ptr->str_table == 0
+       || (ptr->term_names < ptr->str_table
+           || ptr->term_names >= ptr->str_table + MAX_ENTRY_SIZE)) {
+       FreeIfNeeded(ptr->term_names);
+    }
+#if NO_LEAKS
+    else {
+       if (ptr->str_table != 0
+           && (ptr->term_names < ptr->str_table + MAX_ENTRY_SIZE)) {
+           int j;
+           char *last = ptr->str_table;
+           /*
+            * We should have saved the entry-size someplace.  Too late,
+            * but this is useful for the memory-leak checking, though more
+            * work/time than should be in the normal library.
+            */
+           for (j = 0; j < NUM_STRINGS(ptr); j++) {
+               char *s = ptr->Strings[j];
+               if (VALID_STRING(s)) {
+                   char *t = s + strlen(s) + 1;
+                   if (t > last)
+                       last = t;
+               }
+           }
+           if (last < ptr->term_names) {
+               FreeIfNeeded(ptr->term_names);
+           }
+       }
+    }
+#endif
     FreeIfNeeded(ptr->str_table);
     FreeIfNeeded(ptr->Booleans);
     FreeIfNeeded(ptr->Numbers);
@@ -66,7 +98,9 @@ NCURSES_EXPORT(int)
 use_extended_names(bool flag)
 {
     int oldflag = _nc_user_definable;
+
+    T((T_CALLED("use_extended_names(%d)"), flag));
     _nc_user_definable = flag;
-    return oldflag;
+    returnBool(oldflag);
 }
 #endif
index ad2f5f6e5bcdceee653a82595ada3aa726580e9a..fac19bf52418a8cb7bbdc44111362628ebbe7fec 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2004 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            *
@@ -27,7 +27,7 @@
  ****************************************************************************/
 
 /****************************************************************************
- *  Author: Thomas E. Dickey <dickey@clark.net> 1998,2000                   *
+ *  Author: Thomas E. Dickey 1998,2000,2004                                 *
  ****************************************************************************/
 
 /*
@@ -37,7 +37,7 @@
 #include <curses.priv.h>
 #include <tic.h>
 
-MODULE_ID("$Id: home_terminfo.c,v 1.7 2002/09/07 20:04:51 tom Exp $")
+MODULE_ID("$Id: home_terminfo.c,v 1.8 2004/01/14 02:18:16 tom Exp $")
 
 #define my_length (strlen(home) + sizeof(PRIVATE_INFO))
 
@@ -46,6 +46,7 @@ MODULE_ID("$Id: home_terminfo.c,v 1.7 2002/09/07 20:04:51 tom Exp $")
 NCURSES_EXPORT(char *)
 _nc_home_terminfo(void)
 {
+#ifdef USE_HOME_TERMINFO
     char *home;
     static char *temp = 0;
 
@@ -61,5 +62,6 @@ _nc_home_terminfo(void)
        }
        return temp;
     }
+#endif
     return 0;
 }
index ba35ab70b0bd5d6e49d12726de3c87fb63118866..3b017450a683b7b39ba11e38770a7522f1875500 100644 (file)
@@ -34,7 +34,7 @@
 #include <curses.priv.h>
 #include <term.h>              /* ena_acs, acs_chars */
 
-MODULE_ID("$Id: lib_acs.c,v 1.22 2002/09/01 19:26:57 tom Exp $")
+MODULE_ID("$Id: lib_acs.c,v 1.25 2002/12/28 16:26:46 tom Exp $")
 
 #if BROKEN_LINKER
 NCURSES_EXPORT_VAR(chtype *)
@@ -55,101 +55,88 @@ NCURSES_EXPORT_VAR(chtype) acs_map[ACS_LEN] =
 NCURSES_EXPORT(void)
 _nc_init_acs(void)
 {
+    chtype *fake_map = acs_map;
+    chtype *real_map = SP != 0 ? SP->_acs_map : fake_map;
+    int j;
+
     T(("initializing ACS map"));
-#if !BROKEN_LINKER
-    memset(acs_map, 0, sizeof(acs_map));
-#endif
+
+    /*
+     * If we're using this from curses (rather than terminfo), we are storing
+     * the mapping information in the SCREEN struct so we can decide how to
+     * render it.
+     */
+    if (real_map != fake_map) {
+       for (j = 1; j < ACS_LEN; ++j) {
+           real_map[j] = 0;
+           fake_map[j] = A_ALTCHARSET | j;
+       }
+    } else {
+       for (j = 1; j < ACS_LEN; ++j) {
+           real_map[j] = 0;
+       }
+    }
 
     /*
      * Initializations for a UNIX-like multi-terminal environment.  Use
      * ASCII chars and count on the terminfo description to do better.
      */
-    ACS_ULCORNER = '+';                /* should be upper left corner */
-    ACS_LLCORNER = '+';                /* should be lower left corner */
-    ACS_URCORNER = '+';                /* should be upper right corner */
-    ACS_LRCORNER = '+';                /* should be lower right corner */
-    ACS_RTEE = '+';            /* should be tee pointing left */
-    ACS_LTEE = '+';            /* should be tee pointing right */
-    ACS_BTEE = '+';            /* should be tee pointing up */
-    ACS_TTEE = '+';            /* should be tee pointing down */
-    ACS_HLINE = '-';           /* should be horizontal line */
-    ACS_VLINE = '|';           /* should be vertical line */
-    ACS_PLUS = '+';            /* should be large plus or crossover */
-    ACS_S1 = '~';              /* should be scan line 1 */
-    ACS_S9 = '_';              /* should be scan line 9 */
-    ACS_DIAMOND = '+';         /* should be diamond */
-    ACS_CKBOARD = ':';         /* should be checker board (stipple) */
-    ACS_DEGREE = '\'';         /* should be degree symbol */
-    ACS_PLMINUS = '#';         /* should be plus/minus */
-    ACS_BULLET = 'o';          /* should be bullet */
-    ACS_LARROW = '<';          /* should be arrow pointing left */
-    ACS_RARROW = '>';          /* should be arrow pointing right */
-    ACS_DARROW = 'v';          /* should be arrow pointing down */
-    ACS_UARROW = '^';          /* should be arrow pointing up */
-    ACS_BOARD = '#';           /* should be board of squares */
-    ACS_LANTERN = '#';         /* should be lantern symbol */
-    ACS_BLOCK = '#';           /* should be solid square block */
+    real_map['l'] = '+';       /* should be upper left corner */
+    real_map['m'] = '+';       /* should be lower left corner */
+    real_map['k'] = '+';       /* should be upper right corner */
+    real_map['j'] = '+';       /* should be lower right corner */
+    real_map['u'] = '+';       /* should be tee pointing left */
+    real_map['t'] = '+';       /* should be tee pointing right */
+    real_map['v'] = '+';       /* should be tee pointing up */
+    real_map['w'] = '+';       /* should be tee pointing down */
+    real_map['q'] = '-';       /* should be horizontal line */
+    real_map['x'] = '|';       /* should be vertical line */
+    real_map['n'] = '+';       /* should be large plus or crossover */
+    real_map['o'] = '~';       /* should be scan line 1 */
+    real_map['s'] = '_';       /* should be scan line 9 */
+    real_map['`'] = '+';       /* should be diamond */
+    real_map['a'] = ':';       /* should be checker board (stipple) */
+    real_map['f'] = '\'';      /* should be degree symbol */
+    real_map['g'] = '#';       /* should be plus/minus */
+    real_map['~'] = 'o';       /* should be bullet */
+    real_map[','] = '<';       /* should be arrow pointing left */
+    real_map['+'] = '>';       /* should be arrow pointing right */
+    real_map['.'] = 'v';       /* should be arrow pointing down */
+    real_map['-'] = '^';       /* should be arrow pointing up */
+    real_map['h'] = '#';       /* should be board of squares */
+    real_map['i'] = '#';       /* should be lantern symbol */
+    real_map['0'] = '#';       /* should be solid square block */
     /* these defaults were invented for ncurses */
-    ACS_S3 = '-';              /* should be scan line 3 */
-    ACS_S7 = '-';              /* should be scan line 7 */
-    ACS_LEQUAL = '<';          /* should be less-than-or-equal-to */
-    ACS_GEQUAL = '>';          /* should be greater-than-or-equal-to */
-    ACS_PI = '*';              /* should be greek pi */
-    ACS_NEQUAL = '!';          /* should be not-equal */
-    ACS_STERLING = 'f';                /* should be pound-sterling symbol */
+    real_map['p'] = '-';       /* should be scan line 3 */
+    real_map['r'] = '-';       /* should be scan line 7 */
+    real_map['y'] = '<';       /* should be less-than-or-equal-to */
+    real_map['z'] = '>';       /* should be greater-than-or-equal-to */
+    real_map['{'] = '*';       /* should be greek pi */
+    real_map['|'] = '!';       /* should be not-equal */
+    real_map['}'] = 'f';       /* should be pound-sterling symbol */
+
+#if !USE_WIDEC_SUPPORT
+    if (_nc_unicode_locale() && _nc_locale_breaks_acs()) {
+       acs_chars = NULL;
+       ena_acs = NULL;
+    }
+#endif
 
     if (ena_acs != NULL) {
        TPUTS_TRACE("ena_acs");
        putp(ena_acs);
     }
-#define ALTCHAR(c)     ((chtype)(((unsigned char)(c)) | A_ALTCHARSET))
 
     if (acs_chars != NULL) {
        size_t i = 0;
        size_t length = strlen(acs_chars);
 
-       while (i < length)
-           switch (acs_chars[i]) {
-           case 'l':
-           case 'm':
-           case 'k':
-           case 'j':
-           case 'u':
-           case 't':
-           case 'v':
-           case 'w':
-           case 'q':
-           case 'x':
-           case 'n':
-           case 'o':
-           case 's':
-           case '`':
-           case 'a':
-           case 'f':
-           case 'g':
-           case '~':
-           case ',':
-           case '+':
-           case '.':
-           case '-':
-           case 'h':
-           case 'i':
-           case '0':
-           case 'p':
-           case 'r':
-           case 'y':
-           case 'z':
-           case '{':
-           case '|':
-           case '}':
-               acs_map[(unsigned int) acs_chars[i]] =
-                   ALTCHAR(acs_chars[i + 1]);
-               i++;
-               /* FALLTHRU */
-           default:
-               i++;
-               break;
+       while (i + 1 < length) {
+           if (acs_chars[i] != 0 && UChar(acs_chars[i]) < ACS_LEN) {
+               real_map[UChar(acs_chars[i])] = UChar(acs_chars[i + 1]) | A_ALTCHARSET;
            }
+           i += 2;
+       }
     }
 #ifdef TRACE
     /* Show the equivalent mapping, noting if it does not match the
@@ -159,9 +146,9 @@ _nc_init_acs(void)
        size_t n, m;
        char show[ACS_LEN + 1];
        for (n = 1, m = 0; n < ACS_LEN; n++) {
-           if (acs_map[n] != 0) {
+           if (real_map[n] != 0) {
                show[m++] = (char) n;
-               show[m++] = ChCharOf(acs_map[n]);
+               show[m++] = ChCharOf(real_map[n]);
            }
        }
        show[m] = 0;
index 8f269e591d0c24d81592e7dc5616d4cbde51c9d7..8fccc2f88d08bd3c2d9672e440725d886f4f631b 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2000,2003 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            *
@@ -40,7 +40,7 @@
 #include <term_entry.h>                /* TTY, cur_term */
 #include <termcap.h>           /* ospeed */
 
-MODULE_ID("$Id: lib_cur_term.c,v 1.11 2000/12/10 02:55:07 tom Exp $")
+MODULE_ID("$Id: lib_cur_term.c,v 1.13 2003/12/27 18:21:30 tom Exp $")
 
 NCURSES_EXPORT_VAR(TERMINAL *) cur_term = 0;
 
@@ -49,11 +49,14 @@ set_curterm(TERMINAL * termp)
 {
     TERMINAL *oldterm = cur_term;
 
+    T((T_CALLED("set_curterm(%p)"), termp));
+
     if ((cur_term = termp) != 0) {
        ospeed = _nc_ospeed(cur_term->_baudrate);
        PC = (pad_char != NULL) ? pad_char[0] : 0;
     }
-    return oldterm;
+    T((T_RETURN("%p"), oldterm));
+    return (oldterm);
 }
 
 NCURSES_EXPORT(int)
@@ -63,6 +66,7 @@ del_curterm(TERMINAL * termp)
 
     if (termp != 0) {
        _nc_free_termtype(&(termp->type));
+       FreeIfNeeded(termp->_termname);
        free(termp);
        if (termp == cur_term)
            cur_term = 0;
index 6fb7b3a9c8c0d588248b239afe5a7bd3a73acf9e..0dc66bd9b918a4e5f59dab10f1278645389a12b5 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2000,2003 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey                        1996-2003               *
  ****************************************************************************/
 
 /*
@@ -42,7 +43,7 @@
 
 #include <term.h>
 
-MODULE_ID("$Id: lib_has_cap.c,v 1.3 2000/12/10 02:55:07 tom Exp $")
+MODULE_ID("$Id: lib_has_cap.c,v 1.4 2003/10/25 19:43:55 tom Exp $")
 
 NCURSES_EXPORT(bool)
 has_ic(void)
index b4d3c7f45aca465c946c48a012ce8d623547deb6..84d40d6b1a207d57615c3319be85eb10ceafd08f 100644 (file)
 #include <curses.priv.h>
 #include <term.h>              /* cur_term */
 
-MODULE_ID("$Id: lib_kernel.c,v 1.22 2002/05/11 20:32:18 tom Exp $")
+MODULE_ID("$Id: lib_kernel.c,v 1.23 2003/01/26 00:24:53 tom Exp $")
 
 static int
 _nc_vdisable(void)
 {
-    int value;
+    int value = -1;
 #if defined(_POSIX_VDISABLE) && defined(HAVE_UNISTD_H)
     value = _POSIX_VDISABLE;
 #endif
index f4975ad565bcaefa5f32c599a8e00671c07636f7..1003fa411c2cfa5167a50da2e27ca4d3e7d33fb1 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -36,6 +36,8 @@
  *
  *     The routine napms.
  *
+ *     (This file was originally written by Eric Raymond; however except for
+ *     comments, none of the original code remains - T.Dickey).
  */
 
 #include <curses.priv.h>
@@ -47,7 +49,7 @@
 #endif
 #endif
 
-MODULE_ID("$Id: lib_napms.c,v 1.13 2002/09/01 17:46:11 tom Exp $")
+MODULE_ID("$Id: lib_napms.c,v 1.14 2003/11/30 00:54:29 Philippe.Blain Exp $")
 
 NCURSES_EXPORT(int)
 napms(int ms)
@@ -56,10 +58,14 @@ napms(int ms)
 
 #if HAVE_NANOSLEEP
     {
-       struct timespec ts;
-       ts.tv_sec = ms / 1000;
-       ts.tv_nsec = (ms % 1000) * 1000000;
-       nanosleep(&ts, NULL);
+       struct timespec request, remaining;
+       int err;
+       request.tv_sec = ms / 1000;
+       request.tv_nsec = (ms % 1000) * 1000000;
+       while ((err = nanosleep(&request, &remaining)) == -1
+              && errno == EINTR) {
+           request = remaining;
+       }
     }
 #else
     _nc_timed_wait(0, ms, (int *) 0 EVENTLIST_2nd(0));
index 05bd47685dd617543bd937d9f086667d24d9da7d..0edf9d5a9a0191094e9a5c235c54896887fe61ad 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,1999,2000,2001,2002 Free Software Foundation, Inc.    *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey                        1996-2003               *
  ****************************************************************************/
 
 /*
@@ -42,7 +43,7 @@
 
 #include <term.h>
 
-MODULE_ID("$Id: lib_options.c,v 1.46 2002/02/02 19:40:54 tom Exp $")
+MODULE_ID("$Id: lib_options.c,v 1.47 2003/10/25 19:51:38 tom Exp $")
 
 NCURSES_EXPORT(int)
 idlok(WINDOW *win, bool flag)
@@ -72,7 +73,7 @@ halfdelay(int t)
 {
     T((T_CALLED("halfdelay(%d)"), t));
 
-    if (t < 1 || t > 255)
+    if (t < 1 || t > 255 || SP == 0)
        returnCode(ERR);
 
     cbreak();
@@ -133,19 +134,24 @@ keypad(WINDOW *win, bool flag)
 NCURSES_EXPORT(int)
 meta(WINDOW *win GCC_UNUSED, bool flag)
 {
+    int result = ERR;
+
     /* Ok, we stay relaxed and don't signal an error if win is NULL */
     T((T_CALLED("meta(%p,%d)"), win, flag));
 
-    SP->_use_meta = flag;
-
-    if (flag && meta_on) {
-       TPUTS_TRACE("meta_on");
-       putp(meta_on);
-    } else if (!flag && meta_off) {
-       TPUTS_TRACE("meta_off");
-       putp(meta_off);
+    if (SP != 0) {
+       SP->_use_meta = flag;
+
+       if (flag && meta_on) {
+           TPUTS_TRACE("meta_on");
+           putp(meta_on);
+       } else if (!flag && meta_off) {
+           TPUTS_TRACE("meta_off");
+           putp(meta_off);
+       }
+       result = OK;
     }
-    returnCode(OK);
+    returnCode(result);
 }
 
 /* curs_set() moved here to narrow the kernel interface */
@@ -196,8 +202,12 @@ NCURSES_EXPORT(int)
 typeahead(int fd)
 {
     T((T_CALLED("typeahead(%d)"), fd));
-    SP->_checkfd = fd;
-    returnCode(OK);
+    if (SP != 0) {
+       SP->_checkfd = fd;
+       returnCode(OK);
+    } else {
+       returnCode(ERR);
+    }
 }
 
 /*
@@ -224,7 +234,7 @@ NCURSES_EXPORT(int)
 has_key(int keycode)
 {
     T((T_CALLED("has_key(%d)"), keycode));
-    returnCode(has_key_internal(keycode, SP->_keytry));
+    returnCode(SP != 0 ? has_key_internal(keycode, SP->_keytry) : FALSE);
 }
 #endif /* NCURSES_EXT_FUNCS */
 
@@ -248,7 +258,7 @@ _nc_keypad(bool flag)
        _nc_flush();
     }
 
-    if (flag && !SP->_tried) {
+    if (flag && SP != 0 && !SP->_tried) {
        _nc_init_keytry();
        SP->_tried = TRUE;
     }
index 6a69493bea5bd18738c5bc182972ce8fce4c68f8..05caca22dcb7dd1ad8a44b8f43296b1eb139f71c 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey 1996-2003                                      *
  ****************************************************************************/
 
 /*
@@ -48,7 +49,7 @@
 
 #include <term.h>              /* lines, columns, cur_term */
 
-MODULE_ID("$Id: lib_setup.c,v 1.70 2002/10/12 21:50:18 tom Exp $")
+MODULE_ID("$Id: lib_setup.c,v 1.79 2003/12/27 18:24:26 tom Exp $")
 
 /****************************************************************************
  *
@@ -90,9 +91,12 @@ MODULE_ID("$Id: lib_setup.c,v 1.70 2002/10/12 21:50:18 tom Exp $")
 # endif
 #endif
 
-static int _use_env = TRUE;
+NCURSES_EXPORT_VAR(char) ttytype[NAMESIZE] = "";
+NCURSES_EXPORT_VAR(int) LINES = 0;
+NCURSES_EXPORT_VAR(int) COLS = 0;
+NCURSES_EXPORT_VAR(int) TABSIZE = 0;
 
-static void do_prototype(void);
+static int _use_env = TRUE;
 
 NCURSES_EXPORT(void)
 use_env(bool f)
@@ -102,10 +106,6 @@ use_env(bool f)
     returnVoid;
 }
 
-NCURSES_EXPORT_VAR(int) LINES = 0;
-NCURSES_EXPORT_VAR(int) COLS = 0;
-NCURSES_EXPORT_VAR(int) TABSIZE = 0;
-
 static void
 _nc_get_screensize(int *linep, int *colp)
 /* Obtain lines/columns values from the environment and/or terminfo entry */
@@ -199,7 +199,6 @@ _nc_get_screensize(int *linep, int *colp)
     else
        TABSIZE = 8;
     T(("TABSIZE = %d", TABSIZE));
-
 }
 
 #if USE_SIZECHANGE
@@ -241,7 +240,9 @@ static int
 grab_entry(const char *const tn, TERMTYPE * const tp)
 /* return 1 if entry found, 0 if not found, -1 if database not accessible */
 {
+#if USE_DATABASE
     char filename[PATH_MAX];
+#endif
     int status;
 
     /*
@@ -275,7 +276,7 @@ grab_entry(const char *const tn, TERMTYPE * const tp)
      * a string is cancelled, for merging entries).
      */
     if (status == 1) {
-       int n;
+       unsigned n;
        for_each_boolean(n, tp) {
            if (!VALID_BOOLEAN(tp->Booleans[n]))
                tp->Booleans[n] = FALSE;
@@ -289,7 +290,82 @@ grab_entry(const char *const tn, TERMTYPE * const tp)
 }
 #endif
 
-NCURSES_EXPORT_VAR(char) ttytype[NAMESIZE] = "";
+/*
+**     do_prototype()
+**
+**     Take the real command character out of the CC environment variable
+**     and substitute it in for the prototype given in 'command_character'.
+**
+*/
+static void
+do_prototype(void)
+{
+    int i;
+    char CC;
+    char proto;
+    char *tmp;
+
+    tmp = getenv("CC");
+    CC = *tmp;
+    proto = *command_character;
+
+    for_each_string(i, &(cur_term->type)) {
+       for (tmp = cur_term->type.Strings[i]; *tmp; tmp++) {
+           if (*tmp == proto)
+               *tmp = CC;
+       }
+    }
+}
+
+/*
+ * Check if we are running in a UTF-8 locale.
+ */
+NCURSES_EXPORT(char *)
+_nc_get_locale(void)
+{
+    char *env;
+    if (((env = getenv("LC_ALL")) != 0 && *env != '\0')
+       || ((env = getenv("LC_CTYPE")) != 0 && *env != '\0')
+       || ((env = getenv("LANG")) != 0 && *env != '\0')) {
+       return env;
+    }
+    return 0;
+}
+
+/*
+ * Check if we are running in a UTF-8 locale.
+ */
+NCURSES_EXPORT(int)
+_nc_unicode_locale(void)
+{
+    char *env = _nc_get_locale();
+    if (env != 0) {
+       if (strstr(env, ".UTF-8") != 0)
+           return 1;
+    }
+    return 0;
+}
+
+/*
+ * Check for known broken cases where a UTF-8 locale breaks the alternate
+ * character set.
+ */
+NCURSES_EXPORT(int)
+_nc_locale_breaks_acs(void)
+{
+    char *env = getenv("TERM");
+    if (env != 0) {
+       if (strstr(env, "linux"))
+           return 1;           /* always broken */
+       if (strstr(env, "screen") != 0
+           && ((env = getenv("TERMCAP")) != 0
+               && strstr(env, "screen") != 0)
+           && strstr(env, "hhII00") != 0) {
+           return 1;
+       }
+    }
+    return 0;
+}
 
 /*
  *     setupterm(termname, Filedes, errret)
@@ -302,7 +378,6 @@ NCURSES_EXPORT_VAR(char) ttytype[NAMESIZE] = "";
 NCURSES_EXPORT(int)
 setupterm(NCURSES_CONST char *tname, int Filedes, int *errret)
 {
-    struct term *term_ptr;
     int status;
 
     START_TRACE();
@@ -321,77 +396,95 @@ setupterm(NCURSES_CONST char *tname, int Filedes, int *errret)
 
     T(("your terminal name is %s", tname));
 
-    term_ptr = typeCalloc(TERMINAL, 1);
+    /*
+     * Allow output redirection.  This is what SVr3 does.  If stdout is
+     * directed to a file, screen updates go to standard error.
+     */
+    if (Filedes == STDOUT_FILENO && !isatty(Filedes))
+       Filedes = STDERR_FILENO;
 
-    if (term_ptr == 0) {
-       ret_error0(-1, "Not enough memory to create terminal structure.\n");
-    }
+    /*
+     * Check if we have already initialized to use this terminal.  If so, we
+     * do not need to re-read the terminfo entry, or obtain TTY settings.
+     *
+     * This is an improvement on SVr4 curses.  If an application mixes curses
+     * and termcap calls, it may call both initscr and tgetent.  This is not
+     * really a good thing to do, but can happen if someone tries using ncurses
+     * with the readline library.  The problem we are fixing is that when
+     * tgetent calls setupterm, the resulting Ottyb struct in cur_term is
+     * zeroed.  A subsequent call to endwin uses the zeroed terminal settings
+     * rather than the ones saved in initscr.  So we check if cur_term appears
+     * to contain terminal settings for the same output file as our current
+     * call - and copy those terminal settings.  (SVr4 curses does not do this,
+     * however applications that are working around the problem will still work
+     * properly with this feature).
+     */
+    if (cur_term != 0
+       && cur_term->Filedes == Filedes
+       && cur_term->_termname != 0
+       && !strcmp(cur_term->_termname, tname)
+       && _nc_name_match(cur_term->type.term_names, tname, "|")) {
+       T(("reusing existing terminal information and mode-settings"));
+    } else {
+       TERMINAL *term_ptr;
+
+       term_ptr = typeCalloc(TERMINAL, 1);
+
+       if (term_ptr == 0) {
+           ret_error0(-1,
+                      "Not enough memory to create terminal structure.\n");
+       }
 #if USE_DATABASE || USE_TERMCAP
-    status = grab_entry(tname, &term_ptr->type);
+       status = grab_entry(tname, &term_ptr->type);
 #else
-    status = 0;
+       status = 0;
 #endif
 
-    /* try fallback list if entry on disk */
-    if (status != 1) {
-       const TERMTYPE *fallback = _nc_fallback(tname);
+       /* try fallback list if entry on disk */
+       if (status != 1) {
+           const TERMTYPE *fallback = _nc_fallback(tname);
 
-       if (fallback) {
-           term_ptr->type = *fallback;
-           status = 1;
+           if (fallback) {
+               term_ptr->type = *fallback;
+               status = 1;
+           }
        }
-    }
 
-    if (status == -1) {
-       ret_error0(-1, "terminals database is inaccessible\n");
-    } else if (status == 0) {
-       ret_error(0, "'%s': unknown terminal type.\n", tname);
-    }
+       if (status <= 0) {
+           del_curterm(term_ptr);
+           if (status == -1) {
+               ret_error0(-1, "terminals database is inaccessible\n");
+           } else if (status == 0) {
+               ret_error(0, "'%s': unknown terminal type.\n", tname);
+           }
+       }
 
-    /*
-     * Improve on SVr4 curses.  If an application mixes curses and termcap
-     * calls, it may call both initscr and tgetent.  This is not really a
-     * good thing to do, but can happen if someone tries using ncurses with
-     * the readline library.  The problem we are fixing is that when
-     * tgetent calls setupterm, the resulting Ottyb struct in cur_term is
-     * zeroed.  A subsequent call to endwin uses the zeroed terminal
-     * settings rather than the ones saved in initscr.  So we check if
-     * cur_term appears to contain terminal settings for the same output
-     * file as our current call - and copy those terminal settings.  (SVr4
-     * curses does not do this, however applications that are working
-     * around the problem will still work properly with this feature).
-     */
-    if (cur_term != 0) {
-       if (cur_term->Filedes == Filedes)
-           term_ptr->Ottyb = cur_term->Ottyb;
-    }
+       set_curterm(term_ptr);
 
-    set_curterm(term_ptr);
+       if (command_character && getenv("CC"))
+           do_prototype();
 
-    if (command_character && getenv("CC"))
-       do_prototype();
+       strncpy(ttytype, cur_term->type.term_names, NAMESIZE - 1);
+       ttytype[NAMESIZE - 1] = '\0';
 
-    strncpy(ttytype, cur_term->type.term_names, NAMESIZE - 1);
-    ttytype[NAMESIZE - 1] = '\0';
+       cur_term->Filedes = Filedes;
+       cur_term->_termname = strdup(tname);
 
-    /*
-     * Allow output redirection.  This is what SVr3 does.  If stdout is
-     * directed to a file, screen updates go to standard error.
-     */
-    if (Filedes == STDOUT_FILENO && !isatty(Filedes))
-       Filedes = STDERR_FILENO;
-    cur_term->Filedes = Filedes;
+       /*
+        * If an application calls setupterm() rather than initscr() or
+        * newterm(), we will not have the def_prog_mode() call in
+        * _nc_setupscreen().  Do it now anyway, so we can initialize the
+        * baudrate.
+        */
+       if (isatty(Filedes)) {
+           def_prog_mode();
+           baudrate();
+       }
+    }
 
     /*
-     * If an application calls setupterm() rather than initscr() or newterm(),
-     * we will not have the def_prog_mode() call in _nc_setupscreen().  Do it
-     * now anyway, so we can initialize the baudrate.
+     * We should always check the screensize, just in case.
      */
-    if (isatty(Filedes)) {
-       def_prog_mode();
-       baudrate();
-    }
-
     _nc_get_screensize(&LINES, &COLS);
 
     if (errret)
@@ -407,31 +500,3 @@ setupterm(NCURSES_CONST char *tname, int Filedes, int *errret)
     }
     returnCode(OK);
 }
-
-/*
-**     do_prototype()
-**
-**     Take the real command character out of the CC environment variable
-**     and substitute it in for the prototype given in 'command_character'.
-**
-*/
-
-static void
-do_prototype(void)
-{
-    int i;
-    char CC;
-    char proto;
-    char *tmp;
-
-    tmp = getenv("CC");
-    CC = *tmp;
-    proto = *command_character;
-
-    for_each_string(i, &(cur_term->type)) {
-       for (tmp = cur_term->type.Strings[i]; *tmp; tmp++) {
-           if (*tmp == proto)
-               *tmp = CC;
-       }
-    }
-}
index c03a601f49689e262d73a4a6211f3bb9c2e02dac..d03488cf1c3ccc2bc69fd8cd6a8bed847bd2e51b 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -43,7 +43,7 @@
 
 #include <term_entry.h>
 
-MODULE_ID("$Id: lib_termcap.c,v 1.43 2002/05/25 12:24:13 tom Exp $")
+MODULE_ID("$Id: lib_termcap.c,v 1.44 2003/05/24 21:10:28 tom Exp $")
 
 #define CSI       233
 #define ESC       033          /* ^[ */
@@ -233,7 +233,7 @@ tgetent(char *bufp GCC_UNUSED, const char *name)
 NCURSES_EXPORT(int)
 tgetflag(NCURSES_CONST char *id)
 {
-    int i;
+    unsigned i;
 
     T((T_CALLED("tgetflag(%s)"), id));
     if (cur_term != 0) {
@@ -261,7 +261,7 @@ tgetflag(NCURSES_CONST char *id)
 NCURSES_EXPORT(int)
 tgetnum(NCURSES_CONST char *id)
 {
-    int i;
+    unsigned i;
 
     T((T_CALLED("tgetnum(%s)"), id));
     if (cur_term != 0) {
@@ -290,7 +290,7 @@ tgetnum(NCURSES_CONST char *id)
 NCURSES_EXPORT(char *)
 tgetstr(NCURSES_CONST char *id, char **area)
 {
-    int i;
+    unsigned i;
     char *result = NULL;
 
     T((T_CALLED("tgetstr(%s,%p)"), id, area));
index 57ce807a9e5f5b9c983e55c1fc241353e4156bfa..713d0be8c360abe75393d3e1640e74e3b78cddcb 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000,2001 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2001,2003 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            *
  ****************************************************************************/
 
 #include <curses.priv.h>
-#include <tic.h>               /* for MAX_ALIAS */
 
-MODULE_ID("$Id: lib_termname.c,v 1.7 2001/08/04 19:29:38 tom Exp $")
+MODULE_ID("$Id: lib_termname.c,v 1.8 2003/12/27 18:23:01 tom Exp $")
 
 NCURSES_EXPORT(char *)
 termname(void)
 {
-    char *name = getenv("TERM");
-    static char ret[MAX_ALIAS + 1];
+    char *name = 0;
 
     T((T_CALLED("termname()")));
 
-    if (name != 0) {
-       ret[0] = '\0';
-       (void) strncat(ret, name, sizeof(ret) - 1);
-       name = ret;
-    }
+    if (cur_term != 0)
+       name = cur_term->_termname;
+
     returnPtr(name);
 }
index 77fc6ceabd4a8caad6f7623c67f4ad8bfd5afffe..84d4a7f36d8713500207267088c4460ff97d5617 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2000-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 2000-2002,2003 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            *
@@ -35,7 +35,7 @@
 #include <ctype.h>
 #include <termcap.h>
 
-MODULE_ID("$Id: lib_tgoto.c,v 1.10 2002/08/31 22:14:47 Philippe.Blain Exp $")
+MODULE_ID("$Id: lib_tgoto.c,v 1.11 2003/11/30 00:22:18 Juha.Jarvi Exp $")
 
 #if !PURE_TERMINFO
 static bool
@@ -155,7 +155,7 @@ tgoto_internal(const char *string, int x, int y)
                *value = 16 * (*value / 10) + (*value % 10);
                break;
            case 'D':           /* Reverse coding (Delta Data) */
-               *value -= 2 * (*value / 16);
+               *value -= 2 * (*value % 16);
                break;
            }
            if (fmt != 0) {
index 8ef8665881974166afd31d84a417a7ce0e49a8b9..df460f953ea71aa081ee0e8e397c7b802dddd826 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2000,2003 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            *
 #include <term_entry.h>
 #include <tic.h>
 
-MODULE_ID("$Id: lib_ti.c,v 1.22 2000/12/10 02:55:08 tom Exp $")
+MODULE_ID("$Id: lib_ti.c,v 1.23 2003/05/24 21:10:28 tom Exp $")
 
 NCURSES_EXPORT(int)
 tigetflag(NCURSES_CONST char *str)
 {
-    int i;
+    unsigned i;
 
     T((T_CALLED("tigetflag(%s)"), str));
 
@@ -62,7 +62,7 @@ tigetflag(NCURSES_CONST char *str)
 NCURSES_EXPORT(int)
 tigetnum(NCURSES_CONST char *str)
 {
-    int i;
+    unsigned i;
 
     T((T_CALLED("tigetnum(%s)"), str));
 
@@ -84,7 +84,7 @@ tigetnum(NCURSES_CONST char *str)
 NCURSES_EXPORT(char *)
 tigetstr(NCURSES_CONST char *str)
 {
-    int i;
+    unsigned i;
 
     T((T_CALLED("tigetstr(%s)"), str));
 
index 6df1e2d085722d3a1bc7222aab7fffb89011d3e0..041667b4f7c3c5814b9934a62f75dfcbe4b9e56d 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2003,2004 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            *
@@ -43,7 +43,7 @@
 #include <term.h>
 #include <tic.h>
 
-MODULE_ID("$Id: lib_tparm.c,v 1.62 2002/10/05 19:33:24 Frank.Henigman Exp $")
+MODULE_ID("$Id: lib_tparm.c,v 1.68 2004/02/07 20:52:51 tom Exp $")
 
 /*
  *     char *
@@ -129,6 +129,9 @@ static char *out_buff;
 static size_t out_size;
 static size_t out_used;
 
+static char *fmt_buff;
+static size_t fmt_size;
+
 #if NO_LEAKS
 NCURSES_EXPORT(void)
 _nc_free_tparm(void)
@@ -137,6 +140,8 @@ _nc_free_tparm(void)
        FreeAndNull(out_buff);
        out_size = 0;
        out_used = 0;
+       FreeAndNull(fmt_buff);
+       fmt_size = 0;
     }
 }
 #endif
@@ -247,153 +252,136 @@ spop(void)
 static inline const char *
 parse_format(const char *s, char *format, int *len)
 {
-    bool done = FALSE;
-    bool allowminus = FALSE;
-    bool dot = FALSE;
-    bool err = FALSE;
-    char *fmt = format;
-    int my_width = 0;
-    int my_prec = 0;
-    int value = 0;
-
     *len = 0;
-    *format++ = '%';
-    while (*s != '\0' && !done) {
-       switch (*s) {
-       case 'c':               /* FALLTHRU */
-       case 'd':               /* FALLTHRU */
-       case 'o':               /* FALLTHRU */
-       case 'x':               /* FALLTHRU */
-       case 'X':               /* FALLTHRU */
-       case 's':
-           *format++ = *s;
-           done = TRUE;
-           break;
-       case '.':
-           *format++ = *s++;
-           if (dot) {
-               err = TRUE;
-           } else {            /* value before '.' is the width */
-               dot = TRUE;
-               my_width = value;
-           }
-           value = 0;
-           break;
-       case '#':
-           *format++ = *s++;
-           break;
-       case ' ':
-           *format++ = *s++;
-           break;
-       case ':':
-           s++;
-           allowminus = TRUE;
-           break;
-       case '-':
-           if (allowminus) {
-               *format++ = *s++;
-           } else {
+    if (format != 0) {
+       bool done = FALSE;
+       bool allowminus = FALSE;
+       bool dot = FALSE;
+       bool err = FALSE;
+       char *fmt = format;
+       int my_width = 0;
+       int my_prec = 0;
+       int value = 0;
+
+       *len = 0;
+       *format++ = '%';
+       while (*s != '\0' && !done) {
+           switch (*s) {
+           case 'c':           /* FALLTHRU */
+           case 'd':           /* FALLTHRU */
+           case 'o':           /* FALLTHRU */
+           case 'x':           /* FALLTHRU */
+           case 'X':           /* FALLTHRU */
+           case 's':
+               *format++ = *s;
                done = TRUE;
-           }
-           break;
-       default:
-           if (isdigit(UChar(*s))) {
-               value = (value * 10) + (*s - '0');
-               if (value > 10000)
+               break;
+           case '.':
+               *format++ = *s++;
+               if (dot) {
                    err = TRUE;
+               } else {        /* value before '.' is the width */
+                   dot = TRUE;
+                   my_width = value;
+               }
+               value = 0;
+               break;
+           case '#':
                *format++ = *s++;
-           } else {
-               done = TRUE;
+               break;
+           case ' ':
+               *format++ = *s++;
+               break;
+           case ':':
+               s++;
+               allowminus = TRUE;
+               break;
+           case '-':
+               if (allowminus) {
+                   *format++ = *s++;
+               } else {
+                   done = TRUE;
+               }
+               break;
+           default:
+               if (isdigit(UChar(*s))) {
+                   value = (value * 10) + (*s - '0');
+                   if (value > 10000)
+                       err = TRUE;
+                   *format++ = *s++;
+               } else {
+                   done = TRUE;
+               }
            }
        }
-    }
 
-    /*
-     * If we found an error, ignore (and remove) the flags.
-     */
-    if (err) {
-       my_width = my_prec = value = 0;
-       format = fmt;
-       *format++ = '%';
-       *format++ = *s;
-    }
+       /*
+        * If we found an error, ignore (and remove) the flags.
+        */
+       if (err) {
+           my_width = my_prec = value = 0;
+           format = fmt;
+           *format++ = '%';
+           *format++ = *s;
+       }
 
-    /*
-     * Any value after '.' is the precision.  If we did not see '.', then
-     * the value is the width.
-     */
-    if (dot)
-       my_prec = value;
-    else
-       my_width = value;
-
-    *format = '\0';
-    /* return maximum string length in print */
-    *len = (my_width > my_prec) ? my_width : my_prec;
+       /*
+        * Any value after '.' is the precision.  If we did not see '.', then
+        * the value is the width.
+        */
+       if (dot)
+           my_prec = value;
+       else
+           my_width = value;
+
+       *format = '\0';
+       /* return maximum string length in print */
+       *len = (my_width > my_prec) ? my_width : my_prec;
+    }
     return s;
 }
 
 #define isUPPER(c) ((c) >= 'A' && (c) <= 'Z')
 #define isLOWER(c) ((c) >= 'a' && (c) <= 'z')
 
-static inline char *
-tparam_internal(const char *string, va_list ap)
+/*
+ * Analyze the string to see how many parameters we need from the varargs list,
+ * and what their types are.  We will only accept string parameters if they
+ * appear as a %l or %s format following an explicit parameter reference (e.g.,
+ * %p2%s).  All other parameters are numbers.
+ *
+ * 'number' counts coarsely the number of pop's we see in the string, and
+ * 'popcount' shows the highest parameter number in the string.  We would like
+ * to simply use the latter count, but if we are reading termcap strings, there
+ * may be cases that we cannot see the explicit parameter numbers.
+ */
+NCURSES_EXPORT(int)
+_nc_tparm_analyze(const char *string, char *p_is_s[NUM_PARM], int *popcount)
 {
-#define NUM_VARS 26
-    char *p_is_s[9];
-    long param[9];
-    int lastpop;
-    int popcount;
-    int number;
-    int len;
-    int level;
-    int x, y;
-    int i;
     size_t len2;
-    register const char *cp;
-    static size_t len_fmt;
+    int i;
+    int lastpop = -1;
+    int len;
+    int number = 0;
+    const char *cp = string;
     static char dummy[] = "";
-    static char *format;
-    static int dynamic_var[NUM_VARS];
-    static int static_vars[NUM_VARS];
 
-    out_used = 0;
-    if (string == NULL)
-       return NULL;
+    if (cp == 0)
+       return 0;
 
-    if ((len2 = strlen(string)) > len_fmt) {
-       len_fmt = len2 + len_fmt + 2;
-       if ((format = typeRealloc(char, len_fmt, format)) == 0)
+    if ((len2 = strlen(cp)) > fmt_size) {
+       fmt_size = len2 + fmt_size + 2;
+       if ((fmt_buff = typeRealloc(char, fmt_size, fmt_buff)) == 0)
              return 0;
     }
 
-    /*
-     * Find the highest parameter-number referred to in the format string.
-     * Use this value to limit the number of arguments copied from the
-     * variable-length argument list.
-     */
-
-    number = 0;
-    lastpop = -1;
-    popcount = 0;
-    memset(p_is_s, 0, sizeof(p_is_s));
+    memset(p_is_s, 0, sizeof(p_is_s[0]) * NUM_PARM);
+    *popcount = 0;
 
-    /*
-     * Analyze the string to see how many parameters we need from the varargs
-     * list, and what their types are.  We will only accept string parameters
-     * if they appear as a %l or %s format following an explicit parameter
-     * reference (e.g., %p2%s).  All other parameters are numbers.
-     *
-     * 'number' counts coarsely the number of pop's we see in the string, and
-     * 'popcount' shows the highest parameter number in the string.  We would
-     * like to simply use the latter count, but if we are reading termcap
-     * strings, there may be cases that we cannot see the explicit parameter
-     * numbers.
-     */
-    for (cp = string; (cp - string) < (int) len2;) {
+    while ((cp - string) < (int) len2) {
        if (*cp == '%') {
            cp++;
-           cp = parse_format(cp, format, &len);
+           cp = parse_format(cp, fmt_buff, &len);
            switch (*cp) {
            default:
                break;
@@ -403,7 +391,8 @@ tparam_internal(const char *string, va_list ap)
            case 'x':           /* FALLTHRU */
            case 'X':           /* FALLTHRU */
            case 'c':           /* FALLTHRU */
-               number++;
+               if (lastpop <= 0)
+                   number++;
                lastpop = -1;
                break;
 
@@ -416,11 +405,11 @@ tparam_internal(const char *string, va_list ap)
 
            case 'p':
                cp++;
-               i = (*cp - '0');
-               if (i >= 0 && i <= 9) {
+               i = (UChar(*cp) - '0');
+               if (i >= 0 && i <= NUM_PARM) {
                    lastpop = i;
-                   if (lastpop > popcount)
-                       popcount = lastpop;
+                   if (lastpop > *popcount)
+                       *popcount = lastpop;
                }
                break;
 
@@ -440,7 +429,7 @@ tparam_internal(const char *string, va_list ap)
 
            case L_BRACE:
                cp++;
-               while (*cp >= '0' && *cp <= '9') {
+               while (isdigit(UChar(*cp))) {
                    cp++;
                }
                break;
@@ -469,9 +458,7 @@ tparam_internal(const char *string, va_list ap)
                break;
 
            case 'i':
-               lastpop = -1;
-               if (popcount < 2)
-                   popcount = 2;
+               /* will add 1 to first (usually two) parameters */
                break;
            }
        }
@@ -479,8 +466,43 @@ tparam_internal(const char *string, va_list ap)
            cp++;
     }
 
-    if (number > 9)
-       number = 9;
+    if (number > NUM_PARM)
+       number = NUM_PARM;
+    return number;
+}
+
+static inline char *
+tparam_internal(const char *string, va_list ap)
+{
+#define NUM_VARS 26
+    char *p_is_s[NUM_PARM];
+    long param[NUM_PARM];
+    int popcount;
+    int number;
+    int len;
+    int level;
+    int x, y;
+    int i;
+    const char *cp = string;
+    size_t len2;
+    static int dynamic_var[NUM_VARS];
+    static int static_vars[NUM_VARS];
+
+    if (cp == NULL)
+       return NULL;
+
+    out_used = 0;
+    len2 = strlen(cp);
+
+    /*
+     * Find the highest parameter-number referred to in the format string.
+     * Use this value to limit the number of arguments copied from the
+     * variable-length argument list.
+     */
+    number = _nc_tparm_analyze(cp, p_is_s, &popcount);
+    if (fmt_buff == 0)
+       return NULL;
+
     for (i = 0; i < max(popcount, number); i++) {
        /*
         * A few caps (such as plab_norm) have string-valued parms.
@@ -517,18 +539,18 @@ tparam_internal(const char *string, va_list ap)
            else
                save_number(", %d", param[i], 0);
        }
-       _tracef(T_CALLED("%s(%s%s)"), tname, _nc_visbuf(string), out_buff);
+       _tracef(T_CALLED("%s(%s%s)"), tname, _nc_visbuf(cp), out_buff);
        out_used = 0;
     }
 #endif /* TRACE */
 
-    while (*string) {
-       if (*string != '%') {
-           save_char(*string);
+    while ((cp - string) < (int) len2) {
+       if (*cp != '%') {
+           save_char(UChar(*cp));
        } else {
-           tparam_base = string++;
-           string = parse_format(string, format, &len);
-           switch (*string) {
+           tparam_base = cp++;
+           cp = parse_format(cp, fmt_buff, &len);
+           switch (*cp) {
            default:
                break;
            case '%':
@@ -539,7 +561,7 @@ tparam_internal(const char *string, va_list ap)
            case 'o':           /* FALLTHRU */
            case 'x':           /* FALLTHRU */
            case 'X':           /* FALLTHRU */
-               save_number(format, npop(), len);
+               save_number(fmt_buff, npop(), len);
                break;
 
            case 'c':           /* FALLTHRU */
@@ -551,13 +573,13 @@ tparam_internal(const char *string, va_list ap)
                break;
 
            case 's':
-               save_text(format, spop(), len);
+               save_text(fmt_buff, spop(), len);
                break;
 
            case 'p':
-               string++;
-               i = (*string - '1');
-               if (i >= 0 && i < 9) {
+               cp++;
+               i = (UChar(*cp) - '1');
+               if (i >= 0 && i < NUM_PARM) {
                    if (p_is_s[i])
                        spush(p_is_s[i]);
                    else
@@ -566,39 +588,39 @@ tparam_internal(const char *string, va_list ap)
                break;
 
            case 'P':
-               string++;
-               if (isUPPER(*string)) {
-                   i = (*string - 'A');
+               cp++;
+               if (isUPPER(*cp)) {
+                   i = (UChar(*cp) - 'A');
                    static_vars[i] = npop();
-               } else if (isLOWER(*string)) {
-                   i = (*string - 'a');
+               } else if (isLOWER(*cp)) {
+                   i = (UChar(*cp) - 'a');
                    dynamic_var[i] = npop();
                }
                break;
 
            case 'g':
-               string++;
-               if (isUPPER(*string)) {
-                   i = (*string - 'A');
+               cp++;
+               if (isUPPER(*cp)) {
+                   i = (UChar(*cp) - 'A');
                    npush(static_vars[i]);
-               } else if (isLOWER(*string)) {
-                   i = (*string - 'a');
+               } else if (isLOWER(*cp)) {
+                   i = (UChar(*cp) - 'a');
                    npush(dynamic_var[i]);
                }
                break;
 
            case S_QUOTE:
-               string++;
-               npush(*string);
-               string++;
+               cp++;
+               npush(UChar(*cp));
+               cp++;
                break;
 
            case L_BRACE:
                number = 0;
-               string++;
-               while (*string >= '0' && *string <= '9') {
-                   number = number * 10 + *string - '0';
-                   string++;
+               cp++;
+               while (isdigit(UChar(*cp))) {
+                   number = (number * 10) + (UChar(*cp) - '0');
+                   cp++;
                }
                npush(number);
                break;
@@ -689,38 +711,38 @@ tparam_internal(const char *string, va_list ap)
                x = npop();
                if (!x) {
                    /* scan forward for %e or %; at level zero */
-                   string++;
+                   cp++;
                    level = 0;
-                   while (*string) {
-                       if (*string == '%') {
-                           string++;
-                           if (*string == '?')
+                   while (*cp) {
+                       if (*cp == '%') {
+                           cp++;
+                           if (*cp == '?')
                                level++;
-                           else if (*string == ';') {
+                           else if (*cp == ';') {
                                if (level > 0)
                                    level--;
                                else
                                    break;
-                           } else if (*string == 'e' && level == 0)
+                           } else if (*cp == 'e' && level == 0)
                                break;
                        }
 
-                       if (*string)
-                           string++;
+                       if (*cp)
+                           cp++;
                    }
                }
                break;
 
            case 'e':
                /* scan forward for a %; at level zero */
-               string++;
+               cp++;
                level = 0;
-               while (*string) {
-                   if (*string == '%') {
-                       string++;
-                       if (*string == '?')
+               while (*cp) {
+                   if (*cp == '%') {
+                       cp++;
+                       if (*cp == '?')
                            level++;
-                       else if (*string == ';') {
+                       else if (*cp == ';') {
                            if (level > 0)
                                level--;
                            else
@@ -728,22 +750,22 @@ tparam_internal(const char *string, va_list ap)
                        }
                    }
 
-                   if (*string)
-                       string++;
+                   if (*cp)
+                       cp++;
                }
                break;
 
            case ';':
                break;
 
-           }                   /* endswitch (*string) */
-       }                       /* endelse (*string == '%') */
+           }                   /* endswitch (*cp) */
+       }                       /* endelse (*cp == '%') */
 
-       if (*string == '\0')
+       if (*cp == '\0')
            break;
 
-       string++;
-    }                          /* endwhile (*string) */
+       cp++;
+    }                          /* endwhile (*cp) */
 
     get_space(1);
     out_buff[out_used] = '\0';
index 2273b877a637a43bf435d5b9397de7f1c4b34af1..3a18ffd7404f2fe50d87e8ef61e2a24b8f184047 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -45,7 +45,7 @@
 #include <termcap.h>           /* ospeed */
 #include <tic.h>
 
-MODULE_ID("$Id: lib_tputs.c,v 1.60 2002/08/17 23:44:08 tom Exp $")
+MODULE_ID("$Id: lib_tputs.c,v 1.62 2003/08/23 21:39:20 tom Exp $")
 
 NCURSES_EXPORT_VAR(char) PC = 0;               /* used by termcap library */
 NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed = 0; /* used by termcap library */
@@ -65,7 +65,7 @@ delay_output(int ms)
     } else {
        register int nullcount;
 
-       nullcount = (ms * _nc_baudrate(ospeed)) / 10000;
+       nullcount = (ms * _nc_baudrate(ospeed)) / (BAUDBYTE * 1000);
        for (_nc_nulls_sent += nullcount; nullcount > 0; nullcount--)
            my_outch(PC);
        if (my_outch == _nc_outch)
@@ -84,9 +84,7 @@ _nc_flush(void)
 NCURSES_EXPORT(int)
 _nc_outch(int ch)
 {
-#ifdef TRACE
-    _nc_outchars++;
-#endif /* TRACE */
+    TRACE_OUTCHARS(1);
 
     if (SP != 0
        && SP->_cleanup) {
index 8c420e8232eb4d1d5506b5eb5153d2f0e09c9dae..ab9c004536ac29ed7789bfdc561120f06d77b35b 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -38,7 +38,7 @@
 #include <curses.priv.h>
 #include <term.h>              /* cur_term */
 
-MODULE_ID("$Id: lib_ttyflags.c,v 1.9 2002/10/12 21:28:16 tom Exp $")
+MODULE_ID("$Id: lib_ttyflags.c,v 1.11 2003/05/17 23:50:37 tom Exp $")
 
 #undef tabs
 
@@ -60,8 +60,10 @@ NCURSES_EXPORT(int)
 _nc_get_tty_mode(TTY * buf)
 {
     if (cur_term == 0
-       || GET_TTY(cur_term->Filedes, buf) != 0)
+       || GET_TTY(cur_term->Filedes, buf) != 0) {
+       memset(buf, 0, sizeof(*buf));
        return (ERR);
+    }
     TR(TRACE_BITS, ("_nc_get_tty_mode(%d): %s",
                    cur_term->Filedes, _nc_trace_ttymode(buf)));
     return (OK);
@@ -71,8 +73,11 @@ NCURSES_EXPORT(int)
 _nc_set_tty_mode(TTY * buf)
 {
     if (cur_term == 0
-       || SET_TTY(cur_term->Filedes, buf) != 0)
+       || SET_TTY(cur_term->Filedes, buf) != 0) {
+       if ((errno == ENOTTY) && (SP != 0))
+           SP->_notty = TRUE;
        return (ERR);
+    }
     TR(TRACE_BITS, ("_nc_set_tty_mode(%d): %s",
                    cur_term->Filedes, _nc_trace_ttymode(buf)));
     return (OK);
index 87e424f7eca7551c8106be016cf25873c25affbd..578e86eec2401b588d53d6854b26718a298ded5c 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey                        1996-2003               *
  ****************************************************************************/
 
 /*
@@ -47,7 +48,7 @@
 #include <tic.h>
 #include <term_entry.h>
 
-MODULE_ID("$Id: parse_entry.c,v 1.57 2002/08/31 17:02:02 tom Exp $")
+MODULE_ID("$Id: parse_entry.c,v 1.60 2003/11/08 21:57:09 tom Exp $")
 
 #ifdef LINT
 static short const parametrized[] =
@@ -188,20 +189,24 @@ _nc_extend_names(ENTRY * entryp, char *name, int token_type)
  *     if the token was not a name in column 1, complain and die
  *     save names in entry's string table
  *     while (get_token() is not EOF and not NAMES)
- *             check for existance and type-correctness
+ *             check for existence and type-correctness
  *             enter cap into structure
  *             if STRING
  *                 save string in entry's string table
  *     push back token
  */
 
+#define BAD_TC_USAGE if (!bad_tc_usage) \
+       { bad_tc_usage = TRUE; \
+        _nc_warning("Legacy termcap allows only a trailing tc= clause"); }
+
 NCURSES_EXPORT(int)
-_nc_parse_entry
-(struct entry *entryp, int literal, bool silent)
+_nc_parse_entry(struct entry *entryp, int literal, bool silent)
 {
     int token_type;
     struct name_table_entry const *entry_ptr;
     char *ptr, *base;
+    bool bad_tc_usage = FALSE;
 
     token_type = _nc_get_token(silent);
 
@@ -217,11 +222,21 @@ _nc_parse_entry
     entryp->startline = _nc_start_line;
     DEBUG(2, ("Comment range is %ld to %ld", entryp->cstart, entryp->cend));
 
-    /* junk the 2-character termcap name, if present */
+    /*
+     * Strip off the 2-character termcap name, if present.  Originally termcap
+     * used that as an indexing aid.  We can retain 2-character terminfo names,
+     * but note that they would be lost if we translate to/from termcap.  This
+     * feature is supposedly obsolete since "newer" BSD implementations do not
+     * use it; however our reference for this feature is SunOS 4.x, which
+     * implemented it.  Note that the resulting terminal type was never the
+     * 2-character name, but was instead the first alias after that.
+     */
     ptr = _nc_curr_token.tk_name;
-    if (ptr[2] == '|') {
-       ptr = _nc_curr_token.tk_name + 3;
-       _nc_curr_token.tk_name[2] = '\0';
+    if (_nc_syntax == SYN_TERMCAP) {
+       if (ptr[2] == '|') {
+           ptr += 3;
+           _nc_curr_token.tk_name[2] = '\0';
+       }
     }
 
     entryp->tterm.str_table = entryp->tterm.term_names = _nc_save_str(ptr);
@@ -252,11 +267,15 @@ _nc_parse_entry
     for (token_type = _nc_get_token(silent);
         token_type != EOF && token_type != NAMES;
         token_type = _nc_get_token(silent)) {
-       if (strcmp(_nc_curr_token.tk_name, "use") == 0
-           || strcmp(_nc_curr_token.tk_name, "tc") == 0) {
+       bool is_use = (strcmp(_nc_curr_token.tk_name, "use") == 0);
+       bool is_tc = !is_use && (strcmp(_nc_curr_token.tk_name, "tc") == 0);
+       if (is_use || is_tc) {
            entryp->uses[entryp->nuses].name = _nc_save_str(_nc_curr_token.tk_valstring);
            entryp->uses[entryp->nuses].line = _nc_curr_line;
            entryp->nuses++;
+           if (entryp->nuses > 1 && is_tc) {
+               BAD_TC_USAGE
+           }
        } else {
            /* normal token lookup */
            entry_ptr = _nc_find_entry(_nc_curr_token.tk_name,
@@ -274,6 +293,9 @@ _nc_parse_entry
                const struct alias *ap;
 
                if (_nc_syntax == SYN_TERMCAP) {
+                   if (entryp->nuses != 0) {
+                       BAD_TC_USAGE
+                   }
                    for (ap = _nc_capalias_table; ap->from; ap++)
                        if (strcmp(ap->from, _nc_curr_token.tk_name) == 0) {
                            if (ap->to == (char *) 0) {
index 006e56c3ddb118b6cc7a146ac38d6abeeba0aa58..363b9970593fc6c5215aa8b48bedeb677c6f602f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2003,2004 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey                                                *
  ****************************************************************************/
 
 /*
 #include <tic.h>
 #include <term_entry.h>
 
-MODULE_ID("$Id: read_entry.c,v 1.72 2000/12/10 02:55:08 tom Exp $")
+MODULE_ID("$Id: read_entry.c,v 1.79 2004/01/11 01:57:05 tom Exp $")
 
 #if !HAVE_TELL
-#define tell(fd) 0             /* lseek() is POSIX, but not tell() - odd... */
+#define tell(fd) lseek(fd, 0, SEEK_CUR)                /* lseek() is POSIX, but not tell() */
 #endif
 
 /*
@@ -156,9 +157,10 @@ read_termtype(int fd, TERMTYPE * ptr)
 {
     int name_size, bool_count, num_count, str_count, str_size;
     int i;
-    char buf[MAX_ENTRY_SIZE];
+    char buf[MAX_ENTRY_SIZE + 1];
+    unsigned want, have;
 
-    TR(TRACE_DATABASE, ("READ termtype header @%d", tell(fd)));
+    TR(TRACE_DATABASE, ("READ termtype header @%ld", (long) tell(fd)));
 
     memset(ptr, 0, sizeof(*ptr));
 
@@ -168,7 +170,6 @@ read_termtype(int fd, TERMTYPE * ptr)
        return (0);
     }
 
-    _nc_free_termtype(ptr);
     name_size = LOW_MSB(buf + 2);
     bool_count = LOW_MSB(buf + 4);
     num_count = LOW_MSB(buf + 6);
@@ -197,16 +198,19 @@ read_termtype(int fd, TERMTYPE * ptr)
        str_count = 0;
     }
 
-    /* grab the name (a null-terminate string) */
-    read(fd, buf, min(MAX_NAME_SIZE, (unsigned) name_size));
-    buf[MAX_NAME_SIZE] = '\0';
+    /* grab the name (a null-terminated string) */
+    want = min(MAX_NAME_SIZE, (unsigned) name_size);
+    if ((have = read(fd, buf, want)) != want) {
+       memset(buf + have, 0, want - have);
+    }
+    buf[want] = '\0';
     ptr->term_names = typeCalloc(char, strlen(buf) + 1);
     if (ptr->term_names == NULL) {
        return (0);
     }
     (void) strcpy(ptr->term_names, buf);
-    if (name_size > MAX_NAME_SIZE)
-       lseek(fd, (off_t) (name_size - MAX_NAME_SIZE), 1);
+    if (have > MAX_NAME_SIZE)
+       lseek(fd, (off_t) (have - MAX_NAME_SIZE), 1);
 
     /* grab the booleans */
     if ((ptr->Booleans = typeCalloc(char, max(BOOLCOUNT, bool_count))) == 0
@@ -252,7 +256,7 @@ read_termtype(int fd, TERMTYPE * ptr)
      * Read extended entries, if any, after the normal end of terminfo data.
      */
     even_boundary(str_size);
-    TR(TRACE_DATABASE, ("READ extended_header @%d", tell(fd)));
+    TR(TRACE_DATABASE, ("READ extended_header @%ld", (long) tell(fd)));
     if (_nc_user_definable && read_shorts(fd, buf, 5)) {
        int ext_bool_count = LOW_MSB(buf + 0);
        int ext_num_count = LOW_MSB(buf + 2);
@@ -284,8 +288,8 @@ read_termtype(int fd, TERMTYPE * ptr)
                            ext_bool_count, ext_num_count, ext_str_count,
                            ext_str_size, ext_str_limit));
 
-       TR(TRACE_DATABASE, ("READ %d extended-booleans @%d",
-                           ext_bool_count, tell(fd)));
+       TR(TRACE_DATABASE, ("READ %d extended-booleans @%ld",
+                           ext_bool_count, (long) tell(fd)));
        if ((ptr->ext_Booleans = ext_bool_count) != 0) {
            if (read(fd, ptr->Booleans + BOOLCOUNT, (unsigned)
                     ext_bool_count) != ext_bool_count)
@@ -293,8 +297,8 @@ read_termtype(int fd, TERMTYPE * ptr)
        }
        even_boundary(ext_bool_count);
 
-       TR(TRACE_DATABASE, ("READ %d extended-numbers @%d",
-                           ext_num_count, tell(fd)));
+       TR(TRACE_DATABASE, ("READ %d extended-numbers @%ld",
+                           ext_num_count, (long) tell(fd)));
        if ((ptr->ext_Numbers = ext_num_count) != 0) {
            if (!read_shorts(fd, buf, ext_num_count))
                return (0);
@@ -302,13 +306,13 @@ read_termtype(int fd, TERMTYPE * ptr)
            convert_shorts(buf, ptr->Numbers + NUMCOUNT, ext_num_count);
        }
 
-       TR(TRACE_DATABASE, ("READ extended-offsets @%d", tell(fd)));
+       TR(TRACE_DATABASE, ("READ extended-offsets @%ld", (long) tell(fd)));
        if ((ext_str_count || need)
            && !read_shorts(fd, buf, ext_str_count + need))
            return (0);
 
-       TR(TRACE_DATABASE, ("READ %d bytes of extended-strings @%d",
-                           ext_str_limit, tell(fd)));
+       TR(TRACE_DATABASE, ("READ %d bytes of extended-strings @%ld",
+                           ext_str_limit, (long) tell(fd)));
 
        if (ext_str_limit) {
            if ((ptr->ext_str_table = typeMalloc(char, ext_str_limit)) == 0)
@@ -374,8 +378,7 @@ read_termtype(int fd, TERMTYPE * ptr)
 }
 
 NCURSES_EXPORT(int)
-_nc_read_file_entry
-(const char *const filename, TERMTYPE * ptr)
+_nc_read_file_entry(const char *const filename, TERMTYPE * ptr)
 /* return 1 if read, 0 if not found or garbled */
 {
     int code, fd = -1;
@@ -383,14 +386,14 @@ _nc_read_file_entry
     if (_nc_access(filename, R_OK) < 0
        || (fd = open(filename, O_RDONLY | O_BINARY)) < 0) {
        T(("cannot open terminfo %s (errno=%d)", filename, errno));
-       return (0);
+       code = 0;
+    } else {
+       T(("read terminfo %s", filename));
+       if ((code = read_termtype(fd, ptr)) == 0)
+           _nc_free_termtype(ptr);
+       close(fd);
     }
 
-    T(("read terminfo %s", filename));
-    if ((code = read_termtype(fd, ptr)) == 0)
-       _nc_free_termtype(ptr);
-    close(fd);
-
     return (code);
 }
 
@@ -402,10 +405,9 @@ static int
 _nc_read_tic_entry(char *const filename,
                   const char *const dir, const char *ttn, TERMTYPE * const tp)
 {
-/* maximum safe length of terminfo root directory name */
-#define MAX_TPATH      (PATH_MAX - MAX_ALIAS - 6)
+    int need = 2 + strlen(dir) + strlen(ttn);
 
-    if (strlen(dir) > MAX_TPATH)
+    if (need > PATH_MAX)
        return 0;
     (void) sprintf(filename, "%s/%s", dir, ttn);
     return _nc_read_file_entry(filename, tp);
@@ -458,14 +460,21 @@ _nc_read_terminfo_dirs(const char *dirs, char *const filename, const char *const
  */
 
 NCURSES_EXPORT(int)
-_nc_read_entry
-(const char *const tn, char *const filename, TERMTYPE * const tp)
+_nc_read_entry(const char *const tn, char *const filename, TERMTYPE * const tp)
 {
     char *envp;
-    char ttn[MAX_ALIAS + 3];
+    char ttn[PATH_MAX];
+
+    if (strlen(tn) == 0
+       || strcmp(tn, ".") == 0
+       || strcmp(tn, "..") == 0
+       || _nc_pathlast(tn) != 0) {
+       T(("illegal or missing entry name '%s'", tn));
+       return 0;
+    }
 
-    /* truncate the terminal name to prevent dangerous buffer airline */
-    (void) sprintf(ttn, "%c/%.*s", *tn, MAX_ALIAS, tn);
+    /* truncate the terminal name to prevent buffer overflow */
+    (void) sprintf(ttn, "%c/%.*s", *tn, (int) sizeof(ttn) - 3, tn);
 
     /* This is System V behavior, in conjunction with our requirements for
      * writing terminfo entries.
@@ -482,7 +491,7 @@ _nc_read_entry
        /* this is an ncurses extension */
        if ((envp = _nc_home_terminfo()) != 0) {
            if (_nc_read_tic_entry(filename, envp, ttn, tp) == 1) {
-               return (1);
+               return 1;
            }
        }
 
index c6e7e358ad911b56106ab2cbe9188f156864635a..e226b69d64b2e7f805240c09cbcc21c38106d77a 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.         *
+ * Copyright (c) 1998-2002,2003 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            *
 #include <tic.h>
 #include <term_entry.h>
 
-MODULE_ID("$Id: read_termcap.c,v 1.58 2001/10/28 01:11:34 tom Exp $")
+MODULE_ID("$Id: read_termcap.c,v 1.61 2003/11/08 20:22:45 tom Exp $")
 
 #if !PURE_TERMINFO
 
-#ifdef __EMX__
+#if defined(__EMX__) || defined(__DJGPP__)
 #define is_pathname(s) ((((s) != 0) && ((s)[0] == '/')) \
                  || (((s)[0] != 0) && ((s)[1] == ':')))
 #else
@@ -945,6 +945,15 @@ _nc_read_termcap_entry(const char *const tn, TERMTYPE * const tp)
     static int lineno;
 
     T(("read termcap entry for %s", tn));
+
+    if (strlen(tn) == 0
+       || strcmp(tn, ".") == 0
+       || strcmp(tn, "..") == 0
+       || _nc_pathlast(tn) != 0) {
+       T(("illegal or missing entry name '%s'", tn));
+       return 0;
+    }
+
     if (use_terminfo_vars() && (p = getenv("TERMCAP")) != 0
        && !is_pathname(p) && _nc_name_match(p, tn, "|:")) {
        /* TERMCAP holds a termcap entry */
index 6d0201bfb2aa4b9580925f0bef7245618420484a..94bb6d3463c518bb7e2fda99f9aac426716ca779 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2000,2003 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            *
@@ -40,7 +40,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: setbuf.c,v 1.7 2000/12/10 02:55:08 tom Exp $")
+MODULE_ID("$Id: setbuf.c,v 1.12 2003/11/15 23:55:34 tom Exp $")
 
 /*
  * If the output file descriptor is connected to a tty (the typical case) it
@@ -98,47 +98,53 @@ MODULE_ID("$Id: setbuf.c,v 1.7 2000/12/10 02:55:08 tom Exp $")
  * buffer.  So we disable this by default (there may yet be a workaround).
  */
 NCURSES_EXPORT(void)
-_nc_set_buffer(FILE * ofp, bool buffered)
+_nc_set_buffer(FILE *ofp, bool buffered)
 {
     /* optional optimization hack -- do before any output to ofp */
 #if HAVE_SETVBUF || HAVE_SETBUFFER
-    unsigned buf_len;
-    char *buf_ptr;
+    if (SP->_buffered != (int)buffered) {
+       unsigned buf_len;
+       char *buf_ptr;
 
-    if (getenv("NCURSES_NO_SETBUF") != 0)
-       return;
+       if (getenv("NCURSES_NO_SETBUF") != 0)
+           return;
 
-    fflush(ofp);
-    if ((SP->_buffered = buffered) != 0) {
-       buf_len = min(LINES * (COLS + 6), 2800);
-       if ((buf_ptr = SP->_setbuf) == 0) {
-           if ((buf_ptr = typeMalloc(char, buf_len)) == NULL)
-                 return;
-           SP->_setbuf = buf_ptr;
-           /* Don't try to free this! */
-       }
+       fflush(ofp);
+#ifdef __DJGPP__
+       setmode(ofp, O_BINARY);
+#endif
+       if (buffered != 0) {
+           buf_len = min(LINES * (COLS + 6), 2800);
+           if ((buf_ptr = SP->_setbuf) == 0) {
+               if ((buf_ptr = typeMalloc(char, buf_len)) == NULL)
+                     return;
+               SP->_setbuf = buf_ptr;
+               /* Don't try to free this! */
+           }
 #if !USE_SETBUF_0
-       else
-           return;
+           else
+               return;
 #endif
-    } else {
+       } else {
 #if !USE_SETBUF_0
-       return;
+           return;
 #else
-       buf_len = 0;
-       buf_ptr = 0;
+           buf_len = 0;
+           buf_ptr = 0;
 #endif
-    }
+       }
 
 #if HAVE_SETVBUF
 #ifdef SETVBUF_REVERSED                /* pre-svr3? */
-    (void) setvbuf(ofp, buf_ptr, buf_len, buf_len ? _IOFBF : _IOLBF);
+       (void) setvbuf(ofp, buf_ptr, buf_len, buf_len ? _IOFBF : _IOLBF);
 #else
-    (void) setvbuf(ofp, buf_ptr, buf_len ? _IOFBF : _IOLBF, buf_len);
+       (void) setvbuf(ofp, buf_ptr, buf_len ? _IOFBF : _IOLBF, buf_len);
 #endif
 #elif HAVE_SETBUFFER
-    (void) setbuffer(ofp, buf_ptr, (int) buf_len);
+       (void) setbuffer(ofp, buf_ptr, (int) buf_len);
 #endif
 
+       SP->_buffered = buffered;
+    }
 #endif /* HAVE_SETVBUF || HAVE_SETBUFFER */
 }
index 5fa68caf75346edb5ad0a366544c790b3e9aeec1..d5377fe07a51bb2f2775e5c67a6f150fa43b1ff2 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2000 Free Software Foundation, Inc.                        *
+ * Copyright (c) 2000,2003 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            *
@@ -36,7 +36,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: strings.c,v 1.3 2000/12/10 02:55:08 tom Exp $")
+MODULE_ID("$Id: strings.c,v 1.5 2003/08/16 23:46:00 tom Exp $")
 
 /****************************************************************************
  * Useful string functions (especially for mvcur)
@@ -44,8 +44,7 @@ MODULE_ID("$Id: strings.c,v 1.3 2000/12/10 02:55:08 tom Exp $")
 
 #if !HAVE_STRSTR
 NCURSES_EXPORT(char *)
-_nc_strstr
-(const char *haystack, const char *needle)
+_nc_strstr(const char *haystack, const char *needle)
 {
     size_t len1 = strlen(haystack);
     size_t len2 = strlen(needle);
@@ -63,16 +62,18 @@ _nc_strstr
 #endif
 
 /*
- * Initialize the descriptor so we can append to it.
+ * Initialize the descriptor so we can append to it.  Note that 'src' may
+ * be a null pointer (see _nc_str_null), so the corresponding strcat and
+ * strcpy calls have to allow for this.
  */
 NCURSES_EXPORT(string_desc *)
-_nc_str_init
-(string_desc * dst, char *src, size_t len)
+_nc_str_init(string_desc * dst, char *src, size_t len)
 {
     if (dst != 0) {
        dst->s_head = src;
        dst->s_tail = src;
        dst->s_size = len - 1;
+       dst->s_init = dst->s_size;
        if (src != 0)
            *src = 0;
     }
@@ -83,8 +84,7 @@ _nc_str_init
  * Initialize the descriptor for only tracking the amount of memory used.
  */
 NCURSES_EXPORT(string_desc *)
-_nc_str_null
-(string_desc * dst, size_t len)
+_nc_str_null(string_desc * dst, size_t len)
 {
     return _nc_str_init(dst, 0, len);
 }
@@ -93,8 +93,7 @@ _nc_str_null
  * Copy a descriptor
  */
 NCURSES_EXPORT(string_desc *)
-_nc_str_copy
-(string_desc * dst, string_desc * src)
+_nc_str_copy(string_desc * dst, string_desc * src)
 {
     *dst = *src;
     return dst;
@@ -135,7 +134,7 @@ _nc_safe_strcpy(string_desc * dst, const char *src)
                strcpy(dst->s_head, src);
                dst->s_tail = dst->s_head + len;
            }
-           dst->s_size -= len;
+           dst->s_size = dst->s_init - len;
            return TRUE;
        }
     }
index 57d49f3d94a102b1e8300190a37b7b8d953ff133..8a5d7e6a650a04c4b9363849103f206bd00c3ddc 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -40,7 +40,7 @@
 
 #include <ctype.h>
 
-MODULE_ID("$Id: lib_trace.c,v 1.50 2002/10/12 15:20:15 tom Exp $")
+MODULE_ID("$Id: lib_trace.c,v 1.53 2003/11/23 00:39:30 tom Exp $")
 
 NCURSES_EXPORT_VAR(unsigned) _nc_tracing = 0;  /* always define this */
 
@@ -48,21 +48,30 @@ NCURSES_EXPORT_VAR(unsigned) _nc_tracing = 0;       /* always define this */
 NCURSES_EXPORT_VAR(const char *) _nc_tputs_trace = "";
 NCURSES_EXPORT_VAR(long) _nc_outchars = 0;
 
-static FILE *tracefp;          /* default to writing to stderr */
+static FILE *tracefp = 0;      /* default to writing to stderr */
 
 NCURSES_EXPORT(void)
-trace(const unsigned int tracelevel GCC_UNUSED)
+trace(const unsigned int tracelevel)
 {
     static bool been_here = FALSE;
-    static char my_name[] = "trace";
+    static char my_name[PATH_MAX];
 
-    if (!been_here && tracelevel) {
-       been_here = TRUE;
+    if ((tracefp == 0) && tracelevel) {
+       const char *mode = been_here ? "ab" : "wb";
+
+       if (*my_name == '\0') {
+           if (getcwd(my_name, sizeof(my_name) - 10) == 0) {
+               perror("curses: Can't get working directory");
+               exit(EXIT_FAILURE);
+           }
+           strcat(my_name, "/trace");
+       }
 
+       been_here = TRUE;
        _nc_tracing = tracelevel;
        if (_nc_access(my_name, W_OK) < 0
-           || (tracefp = fopen(my_name, "wb")) == 0) {
-           perror("curses: Can't open 'trace' file");
+           || (tracefp = fopen(my_name, mode)) == 0) {
+           perror("curses: Can't open 'trace' file");
            exit(EXIT_FAILURE);
        }
        /* Try to set line-buffered mode, or (failing that) unbuffered,
@@ -74,8 +83,16 @@ trace(const unsigned int tracelevel GCC_UNUSED)
 #elif HAVE_SETBUF              /* POSIX */
        (void) setbuffer(tracefp, (char *) 0);
 #endif
-       _tracef("TRACING NCURSES version %s (tracelevel=%#x)",
-               curses_version(), tracelevel);
+       _tracef("TRACING NCURSES version %s.%d (tracelevel=%#x)",
+               NCURSES_VERSION,
+               NCURSES_VERSION_PATCH,
+               tracelevel);
+    } else if (tracelevel == 0) {
+       if (tracefp != 0) {
+           fclose(tracefp);
+           tracefp = 0;
+       }
+       _nc_tracing = tracelevel;
     } else if (_nc_tracing != tracelevel) {
        _nc_tracing = tracelevel;
        _tracef("tracelevel=%#x", tracelevel);
index 6cda1c8dac69152b57d8f5b15ae6c29ed9729ea8..a9c53c9fd1e452194b2a31698c699aa9fb6f3d39 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2003,2004 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            *
@@ -27,7 +27,7 @@
  ****************************************************************************/
 
 /****************************************************************************
- *  Author: Thomas Dickey 1996-2001                                         *
+ *  Author: Thomas Dickey 1996-2003                                         *
  *     and: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
  ****************************************************************************/
@@ -39,7 +39,7 @@
 #include <curses.priv.h>
 #include <term.h>              /* acs_chars */
 
-MODULE_ID("$Id: lib_traceatr.c,v 1.43 2002/09/28 12:37:03 tom Exp $")
+MODULE_ID("$Id: lib_traceatr.c,v 1.48 2004/01/25 22:31:38 tom Exp $")
 
 #define COLOR_OF(c) (c < 0 || c > 7 ? "default" : colors[c].name)
 
@@ -52,7 +52,7 @@ NCURSES_EXPORT(char *)
 _traceattr2(int bufnum, attr_t newmode)
 {
     char *buf = _nc_trace_buf(bufnum, BUFSIZ);
-    char *tmp = buf;
+    char temp[80];
     static const struct {
        unsigned int val;
        const char *name;
@@ -92,39 +92,39 @@ _traceattr2(int bufnum, attr_t newmode)
     unsigned save_nc_tracing = _nc_tracing;
     _nc_tracing = 0;
 
-    strcpy(tmp++, l_brace);
+    strcpy(buf, l_brace);
 
     for (n = 0; n < SIZEOF(names); n++) {
        if ((newmode & names[n].val) != 0) {
            if (buf[1] != '\0')
-               strcat(tmp, "|");
-           strcat(tmp, names[n].name);
-           tmp += strlen(tmp);
+               buf = _nc_trace_bufcat(bufnum, "|");
+           buf = _nc_trace_bufcat(bufnum, names[n].name);
 
            if (names[n].val == A_COLOR) {
                short pairnum = PAIR_NUMBER(newmode);
                short fg, bg;
 
-               if (pair_content(pairnum, &fg, &bg) == OK)
-                   (void) sprintf(tmp,
+               if (pair_content(pairnum, &fg, &bg) == OK) {
+                   (void) sprintf(temp,
                                   "{%d = {%s, %s}}",
                                   pairnum,
                                   COLOR_OF(fg),
-                                  COLOR_OF(bg)
-                       );
-               else
-                   (void) sprintf(tmp, "{%d}", pairnum);
+                                  COLOR_OF(bg));
+               } else {
+                   (void) sprintf(temp, "{%d}", pairnum);
+               }
+               buf = _nc_trace_bufcat(bufnum, temp);
            }
        }
     }
     if (ChAttrOf(newmode) == A_NORMAL) {
        if (buf[1] != '\0')
-           strcat(tmp, "|");
-       strcat(tmp, "A_NORMAL");
+           (void) _nc_trace_bufcat(bufnum, "|");
+       (void) _nc_trace_bufcat(bufnum, "A_NORMAL");
     }
 
     _nc_tracing = save_nc_tracing;
-    return (strcat(buf, r_brace));
+    return (_nc_trace_bufcat(bufnum, r_brace));
 }
 
 NCURSES_EXPORT(char *)
@@ -146,7 +146,7 @@ _nc_altcharset_name(attr_t attr, chtype ch)
 {
     const char *result = 0;
 
-    if (attr & A_ALTCHARSET) {
+    if ((attr & A_ALTCHARSET) && (acs_chars != 0)) {
        char *cp;
        char *found = 0;
        static const struct {
@@ -214,20 +214,21 @@ _nc_altcharset_name(attr_t attr, chtype ch)
 NCURSES_EXPORT(char *)
 _tracechtype2(int bufnum, chtype ch)
 {
-    char *buf = _nc_trace_buf(bufnum, BUFSIZ);
     const char *found;
 
-    strcpy(buf, l_brace);
+    strcpy(_nc_trace_buf(bufnum, BUFSIZ), l_brace);
     if ((found = _nc_altcharset_name(ChAttrOf(ch), ch)) != 0) {
-       (void) strcat(buf, found);
+       (void) _nc_trace_bufcat(bufnum, found);
     } else
-       (void) strcat(buf, _tracechar(ChCharOf(ch)));
+       (void) _nc_trace_bufcat(bufnum, _tracechar(ChCharOf(ch)));
 
-    if (ChAttrOf(ch) != A_NORMAL)
-       (void) sprintf(buf + strlen(buf), " | %s",
+    if (ChAttrOf(ch) != A_NORMAL) {
+       (void) _nc_trace_bufcat(bufnum, " | ");
+       (void) _nc_trace_bufcat(bufnum,
                _traceattr2(bufnum + 20, ChAttrOf(ch)));
+    }
 
-    return (strcat(buf, r_brace));
+    return (_nc_trace_bufcat(bufnum, r_brace));
 }
 
 NCURSES_EXPORT(char *)
@@ -256,37 +257,44 @@ _tracecchar_t2 (int bufnum, const cchar_t *ch)
     if (ch != 0) {
        attr = AttrOfD(ch);
        if ((found = _nc_altcharset_name(attr, CharOfD(ch))) != 0) {
-           (void) strcat(buf, found);
+           (void) _nc_trace_bufcat(bufnum, found);
            attr &= ~A_ALTCHARSET;
-       } else if (!isnac(CHDEREF(ch))) {
+       } else if (isnac(CHDEREF(ch))) {
+           (void) _nc_trace_bufcat(bufnum, "{NAC}");
+       } else {
            PUTC_DATA;
            int n;
 
-           memset (&PUT_st, '\0', sizeof (PUT_st));
-           PUTC_i = 0;
-           (void) strcat(buf, "{ ");
+           PUTC_INIT;
+           (void) _nc_trace_bufcat(bufnum, "{ ");
            do {
                PUTC_ch = PUTC_i < CCHARW_MAX ? ch->chars[PUTC_i] : L'\0';
                PUTC_n = wcrtomb(PUTC_buf, ch->chars[PUTC_i], &PUT_st);
                if (PUTC_ch == L'\0')
                    --PUTC_n;
-               if (PUTC_n <= 0)
+               if (PUTC_n <= 0) {
+                   if (PUTC_ch != L'\0') {
+                       /* it could not be a multibyte sequence */
+                       (void) _nc_trace_bufcat(bufnum, _tracechar(UChar(ch->chars[PUTC_i])));
+                   }
                    break;
+               }
                for (n = 0; n < PUTC_n; n++) {
                    if (n)
-                       (void) strcat(buf, ", ");
-                   (void) strcat(buf, _tracechar(UChar(PUTC_buf[n])));
+                       (void) _nc_trace_bufcat(bufnum, ", ");
+                   (void) _nc_trace_bufcat(bufnum, _tracechar(UChar(PUTC_buf[n])));
                }
                ++PUTC_i;
            } while (PUTC_ch != L'\0');
-           (void) strcat(buf, " }");
+           (void) _nc_trace_bufcat(bufnum, " }");
+       }
+       if (attr != A_NORMAL) {
+           (void) _nc_trace_bufcat(bufnum, " | ");
+           (void) _nc_trace_bufcat(bufnum, _traceattr2(bufnum + 20, attr));
        }
-       if (attr != A_NORMAL)
-           (void) sprintf(buf + strlen(buf), " | %s",
-                   _traceattr2(bufnum + 20, attr));
     }
 
-    return (strcat(buf, r_brace));
+    return (_nc_trace_bufcat(bufnum, r_brace));
 }
 
 NCURSES_EXPORT(char *)
index 2f33391b5505b951eaabfc113e6a96a5688f4a71..5ceeed2aa9ad7f283c9884184e5336315ca8669f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
  */
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_tracechr.c,v 1.9 2002/05/25 23:34:19 tom Exp $")
+#include <ctype.h>
+
+MODULE_ID("$Id: lib_tracechr.c,v 1.10 2003/06/14 11:05:42 tom Exp $")
 
 #ifdef TRACE
 NCURSES_EXPORT(char *)
 _tracechar(int ch)
 {
-    static char crep[40];
-    (void) sprintf(crep, "'%.30s' = %#03o",
-                  ((ch > KEY_MIN || ch < 0)
-                   ? keyname(ch)
-                   : unctrl(ch)),
-                  ch);
-    return (crep);
+    static char result[40];
+    char *name;
+
+    if (ch > KEY_MIN || ch < 0) {
+       name = keyname(ch);
+       if (name == 0 || *name == '\0')
+           name = "NULL";
+       (void) sprintf(result, "'%.30s' = %#03o", name, ch);
+    } else if (!isprint(ch) || ch > 255) {
+       /*
+        * workaround for glibc bug:
+        * sprintf changes the result from unctrl() to an empty string if it
+        * does not correspond to a valid multibyte sequence.
+        */
+       (void) sprintf(result, "%#03o", ch);
+    } else {
+       name = unctrl(ch);
+       if (name == 0 || *name == 0)
+           name = "null";      /* shouldn't happen */
+       (void) sprintf(result, "'%.30s' = %#03o", name, ch);
+    }
+    return (result);
 }
 #else
 empty_module(_nc_lib_tracechr)
index 4fef57eecedb67d07329ca237c5949d59316165f..85b4fbe682e858cbaff1225ff3e33ea1373251bd 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: trace_buf.c,v 1.11 2002/07/14 00:08:08 tom Exp $")
+MODULE_ID("$Id: trace_buf.c,v 1.12 2003/03/15 21:21:36 tom Exp $")
 
 typedef struct {
     char *text;
     size_t size;
 } LIST;
 
-NCURSES_EXPORT(char *)
-_nc_trace_buf(int bufnum, size_t want)
+static char *
+_nc_trace_alloc(int bufnum, size_t want)
 {
     char *result = 0;
     static LIST *list;
@@ -65,8 +65,6 @@ _nc_trace_buf(int bufnum, size_t want)
                  list[bufnum].size = want;
        }
 
-       if (list[bufnum].text != 0)
-           *(list[bufnum].text) = '\0';
        result = list[bufnum].text;
     }
 #if NO_LEAKS
@@ -82,3 +80,30 @@ _nc_trace_buf(int bufnum, size_t want)
 #endif
     return result;
 }
+
+/*
+ * (re)Allocate a buffer big enough for the caller's wants.
+ */
+NCURSES_EXPORT(char *)
+_nc_trace_buf(int bufnum, size_t want)
+{
+    char *result = _nc_trace_alloc(bufnum, want);
+    if (result != 0)
+       *result = '\0';
+    return result;
+}
+
+/*
+ * Append a new string to an existing buffer.
+ */
+NCURSES_EXPORT(char *)
+_nc_trace_bufcat(int bufnum, const char *value)
+{
+    char *buffer = _nc_trace_alloc(bufnum, 0);
+    size_t have = strlen(buffer);
+
+    buffer = _nc_trace_alloc(bufnum, 1 + have + strlen(value));
+    (void) strcpy(buffer + have, value);
+
+    return buffer;
+}
index 0b3c28c4b61e0b4dd47fa073dff8548aa3730527..aee2010546a494ef54a48714c06962cb1957b664 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2001,2002 Free Software Foundation, Inc.                   *
+ * Copyright (c) 2001-2002,2003 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            *
@@ -34,7 +34,7 @@
 
 #include <ctype.h>
 
-MODULE_ID("$Id: varargs.c,v 1.3 2002/10/05 23:04:17 tom Exp $")
+MODULE_ID("$Id: varargs.c,v 1.4 2003/05/24 21:10:28 tom Exp $")
 
 #ifdef TRACE
 
@@ -46,7 +46,7 @@ typedef enum {
 
 #define VA_INT(type) ival = va_arg(ap, type)
 #define VA_FLT(type) fval = va_arg(ap, type)
-#define VA_PTR(type) pval = (void *)va_arg(ap, type)
+#define VA_PTR(type) pval = (char *)va_arg(ap, type)
 #define VA_STR(type) sval = va_arg(ap, type)
 
 /*
index 4fbecc50e4f6132ba50adbe2dd4900dd71f1ce1e..ed8f872ebb436a7dbdd3f3850dffbbeef5ae8100 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2001 Free Software Foundation, Inc.                        *
+ * Copyright (c) 2001-2003,2004 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            *
@@ -27,7 +27,7 @@
  ****************************************************************************/
 
 /****************************************************************************
- *  Author: Thomas E. Dickey 1996-2001                                      *
+ *  Author: Thomas E. Dickey 1996-2004                                      *
  *     and: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
  ****************************************************************************/
@@ -41,7 +41,7 @@
 #include <tic.h>
 #include <ctype.h>
 
-MODULE_ID("$Id: visbuf.c,v 1.6 2002/10/06 00:03:43 tom Exp $")
+MODULE_ID("$Id: visbuf.c,v 1.9 2004/02/03 01:16:37 tom Exp $")
 
 static char *
 _nc_vischar(char *tp, unsigned c)
@@ -71,6 +71,7 @@ _nc_vischar(char *tp, unsigned c)
        sprintf(tp, "\\%03lo", ChCharOf(c));
        tp += strlen(tp);
     }
+    *tp = 0;
     return tp;
 }
 
@@ -187,9 +188,7 @@ _nc_viswbufn(const wchar_t * buf, int len)
 NCURSES_EXPORT(const char *)
 _nc_viscbuf2(int bufnum, const cchar_t * buf, int len)
 {
-    size_t have = BUFSIZ;
-    char *result = _nc_trace_buf(bufnum, have);
-    char *tp = result;
+    char *result = _nc_trace_buf(bufnum, BUFSIZ);
     int n;
     bool same = TRUE;
     attr_t attr = A_NORMAL;
@@ -211,17 +210,18 @@ _nc_viscbuf2(int bufnum, const cchar_t * buf, int len)
      * detailed trace function that displays each character separately.
      */
     if (same) {
-       *tp++ = D_QUOTE;
+       static const char d_quote[] =
+       {D_QUOTE, 0};
+
+       result = _nc_trace_bufcat(bufnum, d_quote);
        while (len-- > 0) {
            if ((found = _nc_altcharset_name(attr, CharOfD(buf))) != 0) {
-               (void) strcpy(tp, found);
-               tp += strlen(tp);
+               result = _nc_trace_bufcat(bufnum, found);
                attr &= ~A_ALTCHARSET;
            } else if (!isnac(CHDEREF(buf))) {
                PUTC_DATA;
 
-               memset(&PUT_st, '\0', sizeof(PUT_st));
-               PUTC_i = 0;
+               PUTC_INIT;
                do {
                    PUTC_ch = PUTC_i < CCHARW_MAX ? buf->chars[PUTC_i] : L'\0';
                    PUTC_n = wcrtomb(PUTC_buf, buf->chars[PUTC_i], &PUT_st);
@@ -230,33 +230,31 @@ _nc_viscbuf2(int bufnum, const cchar_t * buf, int len)
                    if (PUTC_n <= 0)
                        break;
                    for (n = 0; n < PUTC_n; n++) {
-                       tp = _nc_vischar(tp, UChar(PUTC_buf[n]));
+                       char temp[80];
+                       _nc_vischar(temp, UChar(PUTC_buf[n]));
+                       result = _nc_trace_bufcat(bufnum, temp);
                    }
                    ++PUTC_i;
                } while (PUTC_ch != L'\0');
            }
            buf++;
        }
-       *tp++ = D_QUOTE;
-       *tp++ = '\0';
-       if (attr != A_NORMAL)
-           (void) sprintf(tp, " | %s",
-                          _traceattr2(bufnum + 20, attr));
+       result = _nc_trace_bufcat(bufnum, d_quote);
+       if (attr != A_NORMAL) {
+           result = _nc_trace_bufcat(bufnum, " | ");
+           result = _nc_trace_bufcat(bufnum, _traceattr2(bufnum + 20, attr));
+       }
     } else {
-       *tp++ = L_BRACE;
+       static const char l_brace[] =
+       {L_BRACE, 0};
+       static const char r_brace[] =
+       {R_BRACE, 0};
+       strcpy(result, l_brace);
        while (len-- > 0) {
-           char *temp = _tracecchar_t2(bufnum + 20, buf++);
-           size_t used = (tp - result);
-           size_t want = strlen(temp) + 5 + used;
-           if (want > have) {
-               result = _nc_trace_buf(bufnum, have = want);
-               tp = result + used;
-           }
-           (void) strcpy(tp, temp);
-           tp += strlen(tp);
+           result = _nc_trace_bufcat(bufnum,
+                                     _tracecchar_t2(bufnum + 20, buf++));
        }
-       *tp++ = R_BRACE;
-       *tp++ = '\0';
+       result = _nc_trace_bufcat(bufnum, r_brace);
     }
     return result;
 }
index 785812427db05ac2f109e3cb0b26b86f91e83fe8..43ea8e51739059936ad88b2e40cca24c5f589425 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
  * LONG_DIST and (b) further inward from the right or left edge than LONG_DIST,
  * we'll consider nonlocal.
  */
-#define NOT_LOCAL(fy, fx, ty, tx)      ((tx > LONG_DIST) && (tx < screen_lines - 1 - LONG_DIST) && (abs(ty-fy) + abs(tx-fx) > LONG_DIST))
+#define NOT_LOCAL(fy, fx, ty, tx)      ((tx > LONG_DIST) \
+                && (tx < screen_columns - 1 - LONG_DIST) \
+                && (abs(ty-fy) + abs(tx-fx) > LONG_DIST))
 
 /****************************************************************************
  *
 #include <term.h>
 #include <ctype.h>
 
-MODULE_ID("$Id: lib_mvcur.c,v 1.86 2002/09/14 23:02:06 Philippe.Blain Exp $")
+MODULE_ID("$Id: lib_mvcur.c,v 1.97 2003/12/27 16:43:59 tom Exp $")
 
-#define CURRENT_ROW    SP->_cursrow    /* phys cursor row */
-#define CURRENT_COLUMN SP->_curscol    /* phys cursor column */
-#define CURRENT_ATTR   SP->_current_attr       /* current phys attribute */
-#define REAL_ATTR      SP->_current_attr       /* phys current attribute */
 #define WANT_CHAR(y, x)        SP->_newscr->_line[y].text[x]   /* desired state */
 #define BAUDRATE       cur_term->_baudrate     /* bits per second */
 
@@ -296,10 +294,11 @@ NCURSES_EXPORT(void)
 _nc_mvcur_init(void)
 /* initialize the cost structure */
 {
-    /*
-     * 9 = 7 bits + 1 parity + 1 stop.
-     */
-    SP->_char_padding = (9 * 1000 * 10) / (BAUDRATE > 0 ? BAUDRATE : 9600);
+    if (isatty(fileno(SP->_ofp)))
+       SP->_char_padding = ((BAUDBYTE * 1000 * 10)
+                            / (BAUDRATE > 0 ? BAUDRATE : 9600));
+    else
+       SP->_char_padding = 1;  /* must be nonzero */
     if (SP->_char_padding <= 0)
        SP->_char_padding = 1;  /* must be nonzero */
     TR(TRACE_CHARPUT | TRACE_MOVE, ("char_padding %d msecs", SP->_char_padding));
@@ -371,6 +370,13 @@ _nc_mvcur_init(void)
     SP->_dch1_cost = NormalizedCost(delete_character, 1);
     SP->_ich1_cost = NormalizedCost(insert_character, 1);
 
+    /*
+     * If this is a bce-terminal, we want to bias the choice so we use clr_eol
+     * rather than spaces at the end of a line.
+     */
+    if (back_color_erase)
+       SP->_el_cost = 0;
+
     /* parameterized screen-update strings */
     SP->_dch_cost = NormalizedCost(tparm(parm_dch, 23), 1);
     SP->_ich_cost = NormalizedCost(tparm(parm_ich, 23), 1);
@@ -508,10 +514,10 @@ relative_move(string_desc * target, int from_y, int from_x, int to_y, int
            n = (from_y - to_y);
 
            if (parm_up_cursor
-               && SP->_cup_cost < vcost
+               && SP->_cuu_cost < vcost
                && _nc_safe_strcat(_nc_str_copy(target, &save),
                                   tparm(parm_up_cursor, n))) {
-               vcost = SP->_cup_cost;
+               vcost = SP->_cuu_cost;
            }
 
            if (cursor_up && (n * SP->_cuu1_cost < vcost)) {
@@ -570,7 +576,6 @@ relative_move(string_desc * target, int from_y, int from_x, int to_y, int
                }
 #endif /* USE_HARD_TABS */
 
-#if defined(REAL_ATTR) && defined(WANT_CHAR)
                if (n <= 0 || n >= (int) check.s_size)
                    ovw = FALSE;
 #if BSD_TPUTS
@@ -601,7 +606,7 @@ relative_move(string_desc * target, int from_y, int from_x, int to_y, int
 
                    for (i = 0; i < n; i++) {
                        NCURSES_CH_T ch = WANT_CHAR(to_y, from_x + i);
-                       if (AttrOf(ch) != CURRENT_ATTR
+                       if (AttrOf(ch) != SP->_current_attr
 #if USE_WIDEC_SUPPORT
                            || !Charable(ch)
 #endif
@@ -619,9 +624,7 @@ relative_move(string_desc * target, int from_y, int from_x, int to_y, int
                    *check.s_tail = '\0';
                    check.s_size -= n;
                    lhcost += n * SP->_char_padding;
-               } else
-#endif /* defined(REAL_ATTR) && defined(WANT_CHAR) */
-               {
+               } else {
                    lhcost = repeated_append(&check, lhcost, SP->_cuf1_cost,
                                             n, cursor_right);
                }
@@ -817,20 +820,22 @@ onscreen_mvcur(int yold, int xold, int ynew, int xnew, bool ovw)
     }
 #endif /* !NO_OPTIMIZE */
 
+  nonlocal:
 #if defined(MAIN) || defined(NCURSES_TEST)
     gettimeofday(&after, NULL);
     diff = after.tv_usec - before.tv_usec
        + (after.tv_sec - before.tv_sec) * 1000000;
     if (!profiling)
        (void) fprintf(stderr,
-                      "onscreen: %d msec, %f 28.8Kbps char-equivalents\n",
+                      "onscreen: %d microsec, %f 28.8Kbps char-equivalents\n",
                       (int) diff, diff / 288);
 #endif /* MAIN */
 
-  nonlocal:
     if (usecost != INFINITY) {
        TPUTS_TRACE("mvcur");
        tputs(buffer, 1, _nc_outch);
+       SP->_cursrow = ynew;
+       SP->_curscol = xnew;
        return (OK);
     } else
        return (ERR);
@@ -840,67 +845,95 @@ NCURSES_EXPORT(int)
 mvcur(int yold, int xold, int ynew, int xnew)
 /* optimized cursor move from (yold, xold) to (ynew, xnew) */
 {
+    attr_t oldattr;
+    int code;
+
     TR(TRACE_CALLS | TRACE_MOVE, (T_CALLED("mvcur(%d,%d,%d,%d)"),
                                  yold, xold, ynew, xnew));
 
-    if (SP == 0)
-       returnCode(ERR);
+    if (SP == 0) {
+       code = ERR;
+    } else if (yold == ynew && xold == xnew) {
+       code = OK;
+    } else {
 
-    if (yold == ynew && xold == xnew)
-       returnCode(OK);
+       /*
+        * Most work here is rounding for terminal boundaries getting the
+        * column position implied by wraparound or the lack thereof and
+        * rolling up the screen to get ynew on the screen.
+        */
+       if (xnew >= screen_columns) {
+           ynew += xnew / screen_columns;
+           xnew %= screen_columns;
+       }
 
-    /*
-     * Most work here is rounding for terminal boundaries getting the
-     * column position implied by wraparound or the lack thereof and
-     * rolling up the screen to get ynew on the screen.
-     */
+       /*
+        * Force restore even if msgr is on when we're in an alternate
+        * character set -- these have a strong tendency to screw up the CR &
+        * LF used for local character motions!
+        */
+       oldattr = SP->_current_attr;
+       if ((oldattr & A_ALTCHARSET)
+           || (oldattr && !move_standout_mode)) {
+           TR(TRACE_CHARPUT, ("turning off (%#lx) %s before move",
+                              oldattr, _traceattr(oldattr)));
+           (void) vidattr(A_NORMAL);
+       }
 
-    if (xnew >= screen_columns) {
-       ynew += xnew / screen_columns;
-       xnew %= screen_columns;
-    }
-    if (xold >= screen_columns) {
-       int l;
-
-       if (SP->_nl) {
-           l = (xold + 1) / screen_columns;
-           yold += l;
-           if (yold >= screen_lines)
-               l -= (yold - screen_lines - 1);
-
-           while (l > 0) {
-               if (newline) {
-                   TPUTS_TRACE("newline");
-                   tputs(newline, 0, _nc_outch);
-               } else
-                   putchar('\n');
-               l--;
-               if (xold > 0) {
+       if (xold >= screen_columns) {
+           int l;
+
+           if (SP->_nl) {
+               l = (xold + 1) / screen_columns;
+               yold += l;
+               if (yold >= screen_lines)
+                   l -= (yold - screen_lines - 1);
+
+               if (l > 0) {
                    if (carriage_return) {
                        TPUTS_TRACE("carriage_return");
-                       tputs(carriage_return, 0, _nc_outch);
+                       putp(carriage_return);
                    } else
-                       putchar('\r');
+                       _nc_outch('\r');
                    xold = 0;
+
+                   while (l > 0) {
+                       if (newline) {
+                           TPUTS_TRACE("newline");
+                           putp(newline);
+                       } else
+                           _nc_outch('\n');
+                       l--;
+                   }
                }
+           } else {
+               /*
+                * If caller set nonl(), we cannot really use newlines to
+                * position to the next row.
+                */
+               xold = -1;
+               yold = -1;
            }
-       } else {
-           /*
-            * If caller set nonl(), we cannot really use newlines to position
-            * to the next row.
-            */
-           xold = -1;
-           yold = -1;
        }
-    }
 
-    if (yold > screen_lines - 1)
-       yold = screen_lines - 1;
-    if (ynew > screen_lines - 1)
-       ynew = screen_lines - 1;
+       if (yold > screen_lines - 1)
+           yold = screen_lines - 1;
+       if (ynew > screen_lines - 1)
+           ynew = screen_lines - 1;
+
+       /* destination location is on screen now */
+       code = onscreen_mvcur(yold, xold, ynew, xnew, TRUE);
 
-    /* destination location is on screen now */
-    returnCode(onscreen_mvcur(yold, xold, ynew, xnew, TRUE));
+       /*
+        * Restore attributes if we disabled them before moving.
+        */
+       if (oldattr != SP->_current_attr) {
+           TR(TRACE_CHARPUT, ("turning on (%#lx) %s after move",
+                              oldattr, _traceattr(oldattr)));
+           (void) vidattr(oldattr);
+       }
+    }
+    returnCode(code);
 }
 
 #if defined(TRACE) || defined(NCURSES_TEST)
@@ -952,7 +985,7 @@ delay_output(int ms GCC_UNUSED)
     return OK;
 }
 
-static char tname[MAX_ALIAS];
+static char tname[PATH_MAX];
 
 static void
 load_term(void)
index a907914accd71aaa72c0be764771771bf2a68b76..7402a10354fc694c5ac21ebc1d008c7d956614f4 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -61,7 +61,7 @@
 # endif
 #endif
 
-MODULE_ID("$Id: lib_twait.c,v 1.46 2002/09/01 00:28:18 tom Exp $")
+MODULE_ID("$Id: lib_twait.c,v 1.49 2003/11/30 00:34:36 Philippe.Blain Exp $")
 
 static long
 _nc_gettime(bool first)
@@ -75,9 +75,16 @@ _nc_gettime(bool first)
     gettimeofday(&t1, (struct timezone *) 0);
     if (first) {
        t0 = t1;
+       res = 0;
+    } else {
+       /* .tv_sec and .tv_usec are unsigned, be careful when subtracting */
+       if (t0.tv_usec > t1.tv_usec) {  /* Convert 1s in 1e6 microsecs */
+           t1.tv_usec += 1000000;
+           t1.tv_sec--;
+       }
+       res = (t1.tv_sec - t0.tv_sec) * 1000
+           + (t1.tv_usec - t0.tv_usec) / 1000;
     }
-    res = (t1.tv_sec - t0.tv_sec) * 1000
-       + (t1.tv_usec - t0.tv_usec) / 1000;
 #else
 # define PRECISE_GETTIME 0
     static time_t t0;
@@ -380,7 +387,7 @@ _nc_timed_wait(int mode,
     }
 #endif
 
-#if PRECISE_GETTIME
+#if PRECISE_GETTIME && HAVE_NANOSLEEP
     /*
      * If the timeout hasn't expired, and we've gotten no data,
      * this is probably a system where 'select()' needs to be left
@@ -388,7 +395,7 @@ _nc_timed_wait(int mode,
      * then come back for more.
      */
     if (result == 0 && milliseconds > 100) {
-       napms(100);
+       napms(100);             /* FIXME: this won't be right if I recur! */
        milliseconds -= 100;
        goto retry;
     }
index 8382c823f06ab72df27813efc21c268c18ecafba..3322f747ebb2dc461822ebcf0d75b5d3726fde74 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc.                   *
+ * Copyright (c) 1998-2000,2003 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            *
@@ -29,6 +29,9 @@
 #ifndef TTY_DISPLAY_H
 #define TTY_DISPLAY_H 1
 
+/*
+ * $Id: tty_display.h,v 1.5 2003/08/02 22:59:07 Philippe.Blain Exp $
+ */
 extern NCURSES_EXPORT(bool) _nc_tty_beep (void);
 extern NCURSES_EXPORT(bool) _nc_tty_check_resize (void);
 extern NCURSES_EXPORT(bool) _nc_tty_cursor (int);
@@ -111,7 +114,7 @@ struct tty_display_data {
                : ((enter_insert_mode && exit_insert_mode) \
                  ? D->_smir_cost + D->_rmir_cost + (D->_ip_cost * count) \
                  : ((insert_character != 0) \
-                   ? (D->_ich1_cost * count) \
+                   ? ((D->_ich1_cost + D->_ip_cost) * count) \
                    : INFINITY)))
 
 #if USE_XMC_SUPPORT
index c792402dcf112f14ada4ba117090932167e5272b..78dc78cd67915ed5204bd868069db8f8685265e7 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2003,2004 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            *
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey 1996-2004                                      *
  ****************************************************************************/
 
 /*-----------------------------------------------------------------
  *
  *     lib_doupdate.c
  *
- *     The routine doupdate() and its dependents.  Also _nc_outstr(),
- *     so all physical output is concentrated here (except _nc_outch()
    in lib_tputs.c).
+ *     The routine doupdate() and its dependents.
+ *     All physical output is concentrated here (except _nc_outch()
 *    in lib_tputs.c).
  *
  *-----------------------------------------------------------------*/
 
 #endif
 #endif
 
+#include <ctype.h>
 #include <term.h>
 
-MODULE_ID("$Id: tty_update.c,v 1.177 2002/09/28 20:41:55 tom Exp $")
+MODULE_ID("$Id: tty_update.c,v 1.205 2004/02/07 18:02:42 tom Exp $")
 
 /*
  * This define controls the line-breakout optimization.  Every once in a
@@ -165,61 +167,95 @@ position_check(int expected_y, int expected_x, char *legend)
 static inline void
 GoTo(int const row, int const col)
 {
-    attr_t oldattr = SP->_current_attr;
-
     TR(TRACE_MOVE, ("GoTo(%d, %d) from (%d, %d)",
                    row, col, SP->_cursrow, SP->_curscol));
 
     position_check(SP->_cursrow, SP->_curscol, "GoTo");
 
-    /*
-     * Force restore even if msgr is on when we're in an alternate
-     * character set -- these have a strong tendency to screw up the
-     * CR & LF used for local character motions!
-     */
-    if ((oldattr & A_ALTCHARSET)
-       || (oldattr && !move_standout_mode)) {
-       TR(TRACE_CHARPUT, ("turning off (%#lx) %s before move",
-                          oldattr, _traceattr(oldattr)));
-       vidattr(A_NORMAL);
-    }
-
     mvcur(SP->_cursrow, SP->_curscol, row, col);
-    SP->_cursrow = row;
-    SP->_curscol = col;
     position_check(SP->_cursrow, SP->_curscol, "GoTo2");
 }
 
 static inline void
 PutAttrChar(CARG_CH_T ch)
 {
+    int chlen = 1;
+    NCURSES_CH_T my_ch;
     PUTC_DATA;
     NCURSES_CH_T tilde;
+    NCURSES_ATTR_T attr = AttrOfD(ch);
+
+    TR(TRACE_CHARPUT, ("PutAttrChar(%s) at (%d, %d)",
+                      _tracech_t(ch),
+                      SP->_cursrow, SP->_curscol));
+#if USE_WIDEC_SUPPORT
+    /*
+     * If this is not a valid character, there is nothing more to do.
+     */
+    if (isnac(CHDEREF(ch)))
+       return;
+    /*
+     * Determine the number of character cells which the 'ch' value will use
+     * on the screen.  It should be at least one.
+     */
+    if ((chlen = wcwidth(CharOf(CHDEREF(ch)))) <= 0) {
+       static NCURSES_CH_T blank = NewChar(BLANK_TEXT);
 
+       if (isprint(CharOf(CHDEREF(ch)))
+           || (SP->_posix_locale && CharOf(CHDEREF(ch)) >= 160)) {
+           ;
+       } else {
+           ch = CHREF(blank);
+           TR(TRACE_CHARPUT, ("forced to blank"));
+       }
+       chlen = 1;
+    }
+#endif
+
+    if ((attr & A_ALTCHARSET)
+       && SP->_acs_map != 0
+       && CharOfD(ch) < ACS_LEN) {
+       my_ch = CHDEREF(ch);    /* work around const param */
+#if USE_WIDEC_SUPPORT
+       /*
+        * This is crude & ugly, but works most of the time.  It checks if the
+        * acs_chars string specified that we have a mapping for this
+        * character, and uses the wide-character mapping when we expect the
+        * normal one to be broken (by mis-design ;-).
+        */
+       if (SP->_screen_acs_fix
+           && SP->_acs_map[CharOf(my_ch)] & A_ALTCHARSET) {
+           attr &= ~(A_ALTCHARSET);
+           my_ch = _nc_wacs[CharOf(my_ch)];
+       }
+#endif
+       if (attr & A_ALTCHARSET) {
+           chtype temp = UChar(SP->_acs_map[CharOfD(ch)]);
+           if (temp != 0)
+               SetChar(my_ch, temp, attr);
+           RemAttr(my_ch, A_ALTCHARSET);
+       }
+       ch = CHREF(my_ch);
+    }
     if (tilde_glitch && (CharOfD(ch) == L('~'))) {
-       SetChar(tilde, L('`'), AttrOfD(ch));
+       SetChar(tilde, L('`'), attr);
        ch = CHREF(tilde);
     }
 
-    TR(TRACE_CHARPUT, ("PutAttrChar(%s) at (%d, %d)",
-                      _tracech_t(ch),
-                      SP->_cursrow, SP->_curscol));
-    UpdateAttrs(AttrOfD(ch));
+    UpdateAttrs(attr);
 #if !USE_WIDEC_SUPPORT
     /* FIXME - we do this special case for signal handling, should see how to
      * make it work for wide characters.
      */
     if (SP->_outch != 0) {
-       SP->_outch((int) ch);
+       SP->_outch(UChar(ch));
     } else
 #endif
     {
        PUTC(CHDEREF(ch), SP->_ofp);    /* macro's fastest... */
-#ifdef TRACE
-       _nc_outchars++;
-#endif /* TRACE */
+       TRACE_OUTCHARS(1);
     }
-    SP->_curscol++;
+    SP->_curscol += chlen;
     if (char_padding) {
        TPUTS_TRACE("char_padding");
        putp(char_padding);
@@ -456,7 +492,8 @@ EmitRange(const NCURSES_CH_T * ntext, int num)
                    rep_count--;
 
                UpdateAttrs(AttrOf(ntext0));
-               putp(tparm(repeat_char, CharOf(ntext0), rep_count));
+               tputs(tparm(repeat_char, CharOf(ntext0), rep_count),
+                     rep_count, _nc_outch);
                SP->_curscol += rep_count;
 
                if (wrap_possible)
@@ -490,27 +527,32 @@ PutRange(const NCURSES_CH_T * otext,
         int row,
         int first, int last)
 {
-    int j, run;
+    int i, j, same;
 
     TR(TRACE_CHARPUT, ("PutRange(%p, %p, %d, %d, %d)",
                       otext, ntext, row, first, last));
 
     if (otext != ntext
        && (last - first + 1) > SP->_inline_cost) {
-       for (j = first, run = 0; j <= last; j++) {
-           if (!run && isnac(otext[j]))
+       for (j = first, same = 0; j <= last; j++) {
+           if (!same && isnac(otext[j]))
                continue;
            if (CharEq(otext[j], ntext[j])) {
-               run++;
+               same++;
            } else {
-               if (run > SP->_inline_cost) {
-                   int before_run = (j - run);
-                   EmitRange(ntext + first, before_run - first);
+               if (same > SP->_inline_cost) {
+                   EmitRange(ntext + first, j - same - first);
                    GoTo(row, first = j);
                }
-               run = 0;
+               same = 0;
            }
        }
+       i = EmitRange(ntext + first, j - same - first);
+       /*
+        * Always return 1 for the next GoTo() after a PutRange() if we found
+        * identical characters at end of interval
+        */
+       return (same == 0 ? i : 1);
     }
     return EmitRange(ntext + first, last - first + 1);
 }
@@ -888,12 +930,12 @@ ClrToEOL(NCURSES_CH_T blank, bool needclear)
     if (needclear) {
        UpdateAttrs(AttrOf(blank));
        TPUTS_TRACE("clr_eol");
-       if (SP->_el_cost > (screen_columns - SP->_curscol)) {
+       if (clr_eol && SP->_el_cost <= (screen_columns - SP->_curscol)) {
+           putp(clr_eol);
+       } else {
            int count = (screen_columns - SP->_curscol);
            while (count-- > 0)
                PutChar(CHREF(blank));
-       } else {
-           putp(clr_eol);
        }
     }
 }
@@ -939,7 +981,7 @@ ClrBottom(int total)
     int col;
     int top = total;
     int last = min(screen_columns, newscr->_maxx + 1);
-    NCURSES_CH_T blank = ClrBlank(stdscr);
+    NCURSES_CH_T blank = newscr->_line[total - 1].text[last - 1];
     bool ok;
 
     if (clr_eos && can_clear_with(CHREF(blank))) {
@@ -959,17 +1001,16 @@ ClrBottom(int total)
        }
 
        /* don't use clr_eos for just one line if clr_eol available */
-       if (top < total - 1 || (top < total && !clr_eol && !clr_bol)) {
+       if (top < total) {
            GoTo(top, 0);
            ClrToEOS(blank);
-           total = top;
            if (SP->oldhash && SP->newhash) {
                for (row = top; row < screen_lines; row++)
                    SP->oldhash[row] = SP->newhash[row];
            }
        }
     }
-    return total;
+    return top;
 }
 
 #if USE_XMC_SUPPORT
@@ -1060,8 +1101,10 @@ TransformLine(int const lineno)
     if (ceol_standout_glitch && clr_eol) {
        firstChar = 0;
        while (firstChar < screen_columns) {
-           if (AttrOf(newLine[firstChar]) != AttrOf(oldLine[firstChar]))
+           if (AttrOf(newLine[firstChar]) != AttrOf(oldLine[firstChar])) {
                attrchanged = TRUE;
+               break;
+           }
            firstChar++;
        }
     }
@@ -1124,17 +1167,9 @@ TransformLine(int const lineno)
     } else {
        NCURSES_CH_T blank;
 
-       /* find the first differing character */
-       while (firstChar < screen_columns &&
-              CharEq(newLine[firstChar], oldLine[firstChar]))
-           firstChar++;
-
-       /* if there wasn't one, we're done */
-       if (firstChar >= screen_columns)
-           return;
-
        /* it may be cheap to clear leading whitespace with clr_bol */
-       if (clr_bol && (blank = newLine[0], can_clear_with(CHREF(blank)))) {
+       blank = newLine[0];
+       if (clr_bol && can_clear_with(CHREF(blank))) {
            int oFirstChar, nFirstChar;
 
            for (oFirstChar = 0; oFirstChar < screen_columns; oFirstChar++)
@@ -1144,26 +1179,43 @@ TransformLine(int const lineno)
                if (!CharEq(newLine[nFirstChar], blank))
                    break;
 
-           if (nFirstChar > oFirstChar + SP->_el1_cost) {
-               if (nFirstChar >= screen_columns && SP->_el_cost <= SP->_el1_cost) {
-                   GoTo(lineno, 0);
-                   UpdateAttrs(AttrOf(blank));
-                   TPUTS_TRACE("clr_eol");
-                   putp(clr_eol);
-               } else {
-                   GoTo(lineno, nFirstChar - 1);
-                   UpdateAttrs(AttrOf(blank));
-                   TPUTS_TRACE("clr_bol");
-                   putp(clr_bol);
-               }
-
-               while (firstChar < nFirstChar)
-                   oldLine[firstChar++] = blank;
+           if (nFirstChar == oFirstChar) {
+               firstChar = nFirstChar;
+               /* find the first differing character */
+               while (firstChar < screen_columns
+                      && CharEq(newLine[firstChar], oldLine[firstChar]))
+                   firstChar++;
+           } else if (oFirstChar > nFirstChar) {
+               firstChar = nFirstChar;
+           } else {            /* oFirstChar < nFirstChar */
+               firstChar = oFirstChar;
+               if (SP->_el1_cost < nFirstChar - oFirstChar) {
+                   if (nFirstChar >= screen_columns
+                       && SP->_el_cost <= SP->_el1_cost) {
+                       GoTo(lineno, 0);
+                       UpdateAttrs(AttrOf(blank));
+                       TPUTS_TRACE("clr_eol");
+                       putp(clr_eol);
+                   } else {
+                       GoTo(lineno, nFirstChar - 1);
+                       UpdateAttrs(AttrOf(blank));
+                       TPUTS_TRACE("clr_bol");
+                       putp(clr_bol);
+                   }
 
-               if (firstChar >= screen_columns)
-                   return;
+                   while (firstChar < nFirstChar)
+                       oldLine[firstChar++] = blank;
+               }
            }
+       } else {
+           /* find the first differing character */
+           while (firstChar < screen_columns
+                  && CharEq(newLine[firstChar], oldLine[firstChar]))
+               firstChar++;
        }
+       /* if there wasn't one, we're done */
+       if (firstChar >= screen_columns)
+           return;
 
        blank = newLine[screen_columns - 1];
 
@@ -1314,7 +1366,7 @@ ClearScreen(NCURSES_CH_T blank)
 
            UpdateAttrs(AttrOf(blank));
            TPUTS_TRACE("clr_eos");
-           putp(clr_eos);
+           tputs(clr_eos, screen_lines, _nc_outch);
        } else if (clr_eol) {
            SP->_cursrow = SP->_curscol = -1;
 
@@ -1423,19 +1475,6 @@ DelChar(int count)
     }
 }
 
-/*
-**     _nc_outstr(char *str)
-**
-**     Emit a string without waiting for update.
-*/
-
-NCURSES_EXPORT(void)
-_nc_outstr(const char *str)
-{
-    (void) putp(str);
-    _nc_flush();
-}
-
 /*
  * Physical-scrolling support
  *
@@ -1478,12 +1517,12 @@ scroll_csr_forward(int n, int top, int bot, int miny, int maxy, NCURSES_CH_T bla
        GoTo(bot, 0);
        UpdateAttrs(AttrOf(blank));
        TPUTS_TRACE("scroll_forward");
-       tputs(scroll_forward, 0, _nc_outch);
+       putp(scroll_forward);
     } else if (n == 1 && delete_line && bot == maxy) {
        GoTo(top, 0);
        UpdateAttrs(AttrOf(blank));
        TPUTS_TRACE("delete_line");
-       tputs(delete_line, 0, _nc_outch);
+       putp(delete_line);
     } else if (parm_index && top == miny && bot == maxy) {
        GoTo(bot, 0);
        UpdateAttrs(AttrOf(blank));
@@ -1499,14 +1538,14 @@ scroll_csr_forward(int n, int top, int bot, int miny, int maxy, NCURSES_CH_T bla
        UpdateAttrs(AttrOf(blank));
        for (i = 0; i < n; i++) {
            TPUTS_TRACE("scroll_forward");
-           tputs(scroll_forward, 0, _nc_outch);
+           putp(scroll_forward);
        }
     } else if (delete_line && bot == maxy) {
        GoTo(top, 0);
        UpdateAttrs(AttrOf(blank));
        for (i = 0; i < n; i++) {
            TPUTS_TRACE("delete_line");
-           tputs(delete_line, 0, _nc_outch);
+           putp(delete_line);
        }
     } else
        return ERR;
@@ -1536,12 +1575,12 @@ scroll_csr_backward(int n, int top, int bot, int miny, int maxy,
        GoTo(top, 0);
        UpdateAttrs(AttrOf(blank));
        TPUTS_TRACE("scroll_reverse");
-       tputs(scroll_reverse, 0, _nc_outch);
+       putp(scroll_reverse);
     } else if (n == 1 && insert_line && bot == maxy) {
        GoTo(top, 0);
        UpdateAttrs(AttrOf(blank));
        TPUTS_TRACE("insert_line");
-       tputs(insert_line, 0, _nc_outch);
+       putp(insert_line);
     } else if (parm_rindex && top == miny && bot == maxy) {
        GoTo(top, 0);
        UpdateAttrs(AttrOf(blank));
@@ -1557,14 +1596,14 @@ scroll_csr_backward(int n, int top, int bot, int miny, int maxy,
        UpdateAttrs(AttrOf(blank));
        for (i = 0; i < n; i++) {
            TPUTS_TRACE("scroll_reverse");
-           tputs(scroll_reverse, 0, _nc_outch);
+           putp(scroll_reverse);
        }
     } else if (insert_line && bot == maxy) {
        GoTo(top, 0);
        UpdateAttrs(AttrOf(blank));
        for (i = 0; i < n; i++) {
            TPUTS_TRACE("insert_line");
-           tputs(insert_line, 0, _nc_outch);
+           putp(insert_line);
        }
     } else
        return ERR;
@@ -1596,14 +1635,14 @@ scroll_idl(int n, int del, int ins, NCURSES_CH_T blank)
     UpdateAttrs(AttrOf(blank));
     if (n == 1 && delete_line) {
        TPUTS_TRACE("delete_line");
-       tputs(delete_line, 0, _nc_outch);
+       putp(delete_line);
     } else if (parm_delete_line) {
        TPUTS_TRACE("parm_delete_line");
        tputs(tparm(parm_delete_line, n, 0), n, _nc_outch);
     } else {                   /* if (delete_line) */
        for (i = 0; i < n; i++) {
            TPUTS_TRACE("delete_line");
-           tputs(delete_line, 0, _nc_outch);
+           putp(delete_line);
        }
     }
 
@@ -1611,20 +1650,28 @@ scroll_idl(int n, int del, int ins, NCURSES_CH_T blank)
     UpdateAttrs(AttrOf(blank));
     if (n == 1 && insert_line) {
        TPUTS_TRACE("insert_line");
-       tputs(insert_line, 0, _nc_outch);
+       putp(insert_line);
     } else if (parm_insert_line) {
        TPUTS_TRACE("parm_insert_line");
        tputs(tparm(parm_insert_line, n, 0), n, _nc_outch);
     } else {                   /* if (insert_line) */
        for (i = 0; i < n; i++) {
            TPUTS_TRACE("insert_line");
-           tputs(insert_line, 0, _nc_outch);
+           putp(insert_line);
        }
     }
 
     return OK;
 }
 
+/*
+ * Note:  some terminals require the cursor to be within the scrolling margins
+ * before setting them.  Generally, the cursor must be at the appropriate end
+ * of the scrolling margins when issuing an indexing operation (it is not
+ * apparent whether it must also be at the left margin; we do this just to be
+ * safe).  To make the related cursor movement a little faster, we use the
+ * save/restore cursor capabilities if the terminal has them.
+ */
 NCURSES_EXPORT(int)
 _nc_scrolln(int n, int top, int bot, int maxy)
 /* scroll region from top to bot by n lines */
@@ -1658,13 +1705,13 @@ _nc_scrolln(int n, int top, int bot, int maxy)
                && save_cursor && restore_cursor) {
                cursor_saved = TRUE;
                TPUTS_TRACE("save_cursor");
-               tputs(save_cursor, 0, _nc_outch);
+               putp(save_cursor);
            }
            TPUTS_TRACE("change_scroll_region");
-           tputs(tparm(change_scroll_region, top, bot), 0, _nc_outch);
+           putp(tparm(change_scroll_region, top, bot));
            if (cursor_saved) {
                TPUTS_TRACE("restore_cursor");
-               tputs(restore_cursor, 0, _nc_outch);
+               putp(restore_cursor);
            } else {
                SP->_cursrow = SP->_curscol = -1;
            }
@@ -1672,7 +1719,7 @@ _nc_scrolln(int n, int top, int bot, int maxy)
            res = scroll_csr_forward(n, top, bot, top, bot, blank);
 
            TPUTS_TRACE("change_scroll_region");
-           tputs(tparm(change_scroll_region, 0, maxy), 0, _nc_outch);
+           putp(tparm(change_scroll_region, 0, maxy));
            SP->_cursrow = SP->_curscol = -1;
        }
 
@@ -1686,7 +1733,7 @@ _nc_scrolln(int n, int top, int bot, int maxy)
            && (non_dest_scroll_region || (memory_below && bot == maxy))) {
            NCURSES_CH_T blank2 = NewChar(BLANK_TEXT);
            if (bot == maxy && clr_eos) {
-               GoTo(bot - n, 0);
+               GoTo(bot - n + 1, 0);
                ClrToEOS(blank2);
            } else {
                for (i = 0; i < n; i++) {
@@ -1704,13 +1751,13 @@ _nc_scrolln(int n, int top, int bot, int maxy)
                && save_cursor && restore_cursor) {
                cursor_saved = TRUE;
                TPUTS_TRACE("save_cursor");
-               tputs(save_cursor, 0, _nc_outch);
+               putp(save_cursor);
            }
            TPUTS_TRACE("change_scroll_region");
-           tputs(tparm(change_scroll_region, top, bot), 0, _nc_outch);
+           putp(tparm(change_scroll_region, top, bot));
            if (cursor_saved) {
                TPUTS_TRACE("restore_cursor");
-               tputs(restore_cursor, 0, _nc_outch);
+               putp(restore_cursor);
            } else {
                SP->_cursrow = SP->_curscol = -1;
            }
@@ -1718,7 +1765,7 @@ _nc_scrolln(int n, int top, int bot, int maxy)
            res = scroll_csr_backward(-n, top, bot, top, bot, blank);
 
            TPUTS_TRACE("change_scroll_region");
-           tputs(tparm(change_scroll_region, 0, maxy), 0, _nc_outch);
+           putp(tparm(change_scroll_region, 0, maxy));
            SP->_cursrow = SP->_curscol = -1;
        }
 
@@ -1811,8 +1858,6 @@ _nc_screen_wrap(void)
        SP->_default_color = FALSE;
 
        mvcur(SP->_cursrow, SP->_curscol, screen_lines - 1, 0);
-       SP->_cursrow = screen_lines - 1;
-       SP->_curscol = 0;
 
        ClrToEOL(blank, TRUE);
     }
diff --git a/ncurses/widechar/charable.c b/ncurses/widechar/charable.c
new file mode 100644 (file)
index 0000000..7e7dfe6
--- /dev/null
@@ -0,0 +1,77 @@
+/****************************************************************************
+ * Copyright (c) 2003 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.                                                           *
+ ****************************************************************************/
+
+/*
+**     Support functions for wide/narrow conversion.
+*/
+
+#include <curses.priv.h>
+
+MODULE_ID("$Id: charable.c,v 1.2 2003/07/05 18:04:08 tom Exp $")
+
+NCURSES_EXPORT(bool) _nc_is_charable(wchar_t ch)
+{
+    bool result;
+#if HAVE_WCTOB
+    result = (wctob(ch) == ch);
+#else
+    result = (_nc_to_char(ch) >= 0);
+#endif
+    return result;
+}
+
+NCURSES_EXPORT(int) _nc_to_char(wint_t ch)
+{
+    int result;
+#if HAVE_WCTOB
+    result = wctob(ch);
+#elif HAVE_WCTOMB
+    char temp[MB_LEN_MAX];
+    result = wctomb(temp, ch);
+    if (strlen(temp) == 1)
+       result = UChar(temp[0]);
+    else
+       result = -1;
+#endif
+    return result;
+}
+
+NCURSES_EXPORT(wint_t) _nc_to_widechar(int ch)
+{
+    wint_t result;
+#if HAVE_BTOWC
+    result = btowc(ch);
+#elif HAVE_MBTOWC
+    char temp[2];
+    temp[0] = ch;
+    temp[1] = '\0';
+    if (mbtowc((wchar_t *) (&result), temp, 1) != 1)
+       result = WEOF;
+#endif
+    return result;
+}
diff --git a/ncurses/widechar/lib_add_wch.c b/ncurses/widechar/lib_add_wch.c
new file mode 100644 (file)
index 0000000..8d4346e
--- /dev/null
@@ -0,0 +1,109 @@
+/****************************************************************************
+ * Copyright (c) 2004 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.                                                           *
+ ****************************************************************************/
+
+/*
+**     lib_add_wch.c
+**
+**     The routine wadd_wch().
+**
+*/
+
+#include <curses.priv.h>
+
+MODULE_ID("$Id: lib_add_wch.c,v 1.2 2004/02/07 17:53:33 tom Exp $")
+
+NCURSES_EXPORT(int)
+wadd_wch(WINDOW *win, const cchar_t * wch)
+{
+    PUTC_DATA;
+    int n;
+    int code = ERR;
+
+    TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_CALLED("wadd_wch(%p, %s)"), win,
+                                     _tracech_t(wch)));
+
+    if (win != 0) {
+       PUTC_INIT;
+       while (PUTC_i < CCHARW_MAX) {
+           if ((PUTC_ch = wch->chars[PUTC_i++]) == L'\0')
+               break;
+           if ((PUTC_n = wcrtomb(PUTC_buf, PUTC_ch, &PUT_st)) <= 0) {
+               code = ERR;
+               if (PUTC_ch < 256)
+                   code = waddch(win, UChar(PUTC_ch));
+               break;
+           }
+           for (n = 0; n < PUTC_n; n++) {
+               if ((code = waddch(win, UChar(PUTC_buf[n]))) == ERR) {
+                   break;
+               }
+           }
+           if (code == ERR)
+               break;
+       }
+    }
+
+    TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_RETURN("%d"), code));
+    return (code);
+}
+
+NCURSES_EXPORT(int)
+wecho_wchar(WINDOW *win, const cchar_t * wch)
+{
+    PUTC_DATA;
+    int n;
+    int code = ERR;
+
+    TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_CALLED("wecho_wchar(%p, %s)"), win,
+                                     _tracech_t(wch)));
+
+    if (win != 0) {
+       PUTC_INIT;
+       while (PUTC_i < CCHARW_MAX) {
+           if ((PUTC_ch = wch->chars[PUTC_i++]) == L'\0')
+               break;
+           if ((PUTC_n = wcrtomb(PUTC_buf, PUTC_ch, &PUT_st)) <= 0) {
+               code = ERR;
+               if (PUTC_ch < 256)
+                   code = waddch(win, UChar(PUTC_ch));
+               break;
+           }
+           for (n = 0; n < PUTC_n; n++) {
+               if ((code = waddch(win, UChar(PUTC_buf[n]))) == ERR) {
+                   break;
+               }
+           }
+           if (code == ERR)
+               break;
+       }
+       wrefresh(win);
+    }
+
+    TR(TRACE_VIRTPUT | TRACE_CCALLS, (T_RETURN("%d"), code));
+    return (code);
+}
index 1c8480f72e387da91b03cfd98f124211721c2b9c..35fce46d8d408420ecf0ad06876ef2a39695611b 100644 (file)
@@ -39,7 +39,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_box_set.c,v 1.3 2002/09/15 00:18:05 tom Exp $")
+MODULE_ID("$Id: lib_box_set.c,v 1.4 2003/12/06 18:02:13 tom Exp $")
 
 NCURSES_EXPORT(int)
 wborder_set(WINDOW *win,
@@ -66,7 +66,7 @@ wborder_set(WINDOW *win,
     if (!win)
        returnCode(ERR);
 
-#define RENDER_WITH_DEFAULT(ch,def) w ##ch = _nc_render(win, (ch == 0) ? *def : *ch)
+#define RENDER_WITH_DEFAULT(ch,def) w ##ch = _nc_render(win, (ch == 0) ? *(const ARG_CH_T)def : *ch)
 
     RENDER_WITH_DEFAULT(ls, WACS_VLINE);
     RENDER_WITH_DEFAULT(rs, WACS_VLINE);
index 86b5e2efa5105bec45a85e47c3167e8f5f419734..75dbf4a521a2c1cab1f5f63ab5479f7a288aca86 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2001,2002 Free Software Foundation, Inc.                   *
+ * Copyright (c) 2001-2002,2003 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            *
@@ -35,7 +35,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_cchar.c,v 1.6 2002/08/10 22:27:37 tom Exp $")
+MODULE_ID("$Id: lib_cchar.c,v 1.8 2003/05/25 00:07:41 tom Exp $")
 
 /* 
  * The SuSv2 description leaves some room for interpretation.  We'll assume wch
@@ -55,26 +55,28 @@ setcchar(cchar_t * wcval, const wchar_t * wch, const attr_t attrs,
                      wcval, _nc_viswbuf(wch), attrs, color_pair, opts));
 
     if (opts != NULL || (len = wcslen(wch)) > CCHARW_MAX
-       || (len > 0 && wcwidth(wch[0]) < 0)) {
+       || (len > 1 && wcwidth(wch[0]) < 0)) {
        code = ERR;
     } else {
 
+       /*
+        * If we have a following spacing-character, stop at that point.  We
+        * are only interested in adding non-spacing characters.
+        */
        for (i = 1; i < len; ++i) {
            if (wcwidth(wch[i]) != 0) {
-               code = ERR;
+               len = i;
                break;
            }
        }
 
-       if (code != ERR) {
-           memset(wcval, 0, sizeof(*wcval));
+       memset(wcval, 0, sizeof(*wcval));
 
-           if (len != 0) {
-               SetAttr(*wcval, attrs | color_pair);
-               memcpy(&wcval->chars, wch, len * sizeof(wchar_t));
-               TR(TRACE_CCALLS, ("copy %d wchars, first is %s", len,
-                                 _tracecchar_t(wcval)));
-           }
+       if (len != 0) {
+           SetAttr(*wcval, attrs | color_pair);
+           memcpy(&wcval->chars, wch, len * sizeof(wchar_t));
+           TR(TRACE_CCALLS, ("copy %d wchars, first is %s", len,
+                             _tracecchar_t(wcval)));
        }
     }
 
@@ -100,6 +102,8 @@ getcchar(const cchar_t * wcval, wchar_t * wch, attr_t * attrs,
 
        if (wch == NULL) {
            code = len;
+       } else if (attrs == 0 || color_pair == 0) {
+           code = ERR;
        } else if (len >= 0) {
            *attrs = AttrOf(*wcval);
            *color_pair = AttrOf(*wcval) & A_COLOR;
index e2a7ce55980938219dc5b4af60e95d184e16036c..24300f6e5d568f06f466714e7282cc2e0a5f3d50 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2002 Free Software Foundation, Inc.                        *
+ * Copyright (c) 2002,2004 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            *
@@ -27,7 +27,7 @@
  ****************************************************************************/
 
 /****************************************************************************
- *  Author: Thomas E. Dickey 2002                                           *
+ *  Author: Thomas E. Dickey 2002,2004                                      *
  ****************************************************************************/
 
 /*
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_get_wch.c,v 1.5 2002/09/02 00:04:25 tom Exp $")
+MODULE_ID("$Id: lib_get_wch.c,v 1.6 2004/01/18 01:18:17 tom Exp $")
+
+#if HAVE_MBTOWC && HAVE_MBLEN
+#define reset_mbytes(state) mblen(NULL, 0), mbtowc(NULL, NULL, 0)
+#define count_mbytes(buffer,length,state) mblen(buffer,length)
+#define check_mbytes(wch,buffer,length,state) \
+       (int) mbtowc(&wch, buffer, count)
+#elif HAVE_MBRTOWC && HAVE_MBRLEN
+#define reset_mbytes(state) memset(&state, 0, sizeof(state))
+#define count_mbytes(buffer,length,state) mbrlen(buffer,length,&state)
+#define check_mbytes(wch,buffer,length,state) \
+       (int) mbrtowc(&wch, buffer, count, &state)
+#else
+make an error
+#endif
 
 NCURSES_EXPORT(int)
 wget_wch(WINDOW *win, wint_t * result)
@@ -53,6 +67,8 @@ wget_wch(WINDOW *win, wint_t * result)
     wchar_t wch;
 
     T((T_CALLED("wget_wch(%p)"), win));
+    (void) state;
+
     /*
      * We can get a stream of single-byte characters and KEY_xxx codes from
      * _nc_wgetch(), while we want to return a wide character or KEY_xxx code.
@@ -81,11 +97,11 @@ wget_wch(WINDOW *win, wint_t * result)
            break;
        } else {
            buffer[count++] = UChar(value);
-           memset(&state, 0, sizeof(state));
-           status = mbrlen(buffer, count, &state);
+           reset_mbytes(state);
+           status = count_mbytes(buffer, count, state);
            if (status >= 0) {
-               memset(&state, 0, sizeof(state));
-               if ((int) mbrtowc(&wch, buffer, count, &state) != status) {
+               reset_mbytes(state);
+               if (check_mbytes(wch, buffer, count, state) != status) {
                    code = ERR; /* the two calls should match */
                }
                value = wch;
index 9467e53fc9e11e073d86164f1dc0980782127010..906e02a6528ecff1c4e8068c650f6ee25c2b8873 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2002 Free Software Foundation, Inc.                        *
+ * Copyright (c) 2002,2003 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            *
@@ -40,7 +40,7 @@
 #include <curses.priv.h>
 #include <term.h>
 
-MODULE_ID("$Id: lib_get_wstr.c,v 1.4 2002/07/20 19:28:29 tom Exp $")
+MODULE_ID("$Id: lib_get_wstr.c,v 1.6 2003/05/17 21:33:03 tom Exp $")
 
 /*
  * This wipes out the last character, no matter whether it was a tab, control
@@ -109,6 +109,25 @@ wgetn_wstr(WINDOW *win, wint_t * str, int maxlen)
        wrefresh(win);
 
     while ((code = wget_wch(win, &ch)) != ERR) {
+       /*
+        * Map special characters into key-codes.
+        */
+       if (ch == '\r')
+           ch = '\n';
+       if (ch == '\n') {
+           code = KEY_CODE_YES;
+           ch = KEY_ENTER;
+       }
+       if (ch < KEY_MIN) {
+           if (ch == erasec) {
+               ch = KEY_BACKSPACE;
+               code = KEY_CODE_YES;
+           }
+           if (ch == killc) {
+               ch = KEY_EOL;
+               code = KEY_CODE_YES;
+           }
+       }
        if (code == KEY_CODE_YES) {
            /*
             * Some terminals (the Wyse-50 is the most common) generate a \n
@@ -116,21 +135,18 @@ wgetn_wstr(WINDOW *win, wint_t * str, int maxlen)
             * choice whether to set kcud=\n for wget_wch(); terminating
             * *getn_wstr() with \n should work either way.
             */
-           if (ch == '\n'
-               || ch == '\r'
-               || ch == KEY_DOWN
-               || ch == KEY_ENTER) {
+           if (ch == KEY_DOWN || ch == KEY_ENTER) {
                if (oldecho == TRUE
                    && win->_cury == win->_maxy
                    && win->_scroll)
                    wechochar(win, (chtype) '\n');
                break;
            }
-           if (ch == erasec || ch == KEY_LEFT || ch == KEY_BACKSPACE) {
+           if (ch == KEY_LEFT || ch == KEY_BACKSPACE) {
                if (tmpstr > oldstr) {
                    tmpstr = WipeOut(win, y, x, oldstr, tmpstr, oldecho);
                }
-           } else if (ch == killc) {
+           } else if (ch == KEY_EOL) {
                while (tmpstr > oldstr) {
                    tmpstr = WipeOut(win, y, x, oldstr, tmpstr, oldecho);
                }
@@ -141,6 +157,7 @@ wgetn_wstr(WINDOW *win, wint_t * str, int maxlen)
            beep();
        } else {
            *tmpstr++ = ch;
+           *tmpstr = 0;
            if (oldecho == TRUE) {
                int oldy = win->_cury;
                cchar_t tmp;
@@ -193,7 +210,7 @@ wgetn_wstr(WINDOW *win, wint_t * str, int maxlen)
     *tmpstr = 0;
     if (code == ERR) {
        if (tmpstr == oldstr) {
-           *tmpstr++ = (wchar_t)WEOF;
+           *tmpstr++ = (wchar_t) WEOF;
            *tmpstr = 0;
        }
        returnCode(ERR);
index 0821ee590bf810fa2997eccabcd141d015d41da8..6417eea2ed7362af816cea7b124e364e59ae5a74 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2002 Free Software Foundation, Inc.                        *
+ * Copyright (c) 2002,2003 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            *
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_ins_wch.c,v 1.1 2002/03/10 22:25:06 tom Exp $")
+MODULE_ID("$Id: lib_ins_wch.c,v 1.3 2003/03/29 21:52:29 tom Exp $")
 
-NCURSES_EXPORT(int)
-wins_wch(WINDOW *win, const cchar_t * wch)
+/*
+ * Insert the given character, updating the current location to simplify
+ * inserting a string.
+ */
+static void
+_nc_insert_wch(WINDOW *win, const cchar_t * wch)
 {
-    int code = ERR;
-
-    T((T_CALLED("wins_wch(%p, %s)"), win, _tracecchar_t(wch)));
-
-    if (win) {
+    if (win->_curx <= win->_maxx) {
        struct ldat *line = &(win->_line[win->_cury]);
        NCURSES_CH_T *end = &(line->text[win->_curx]);
        NCURSES_CH_T *temp1 = &(line->text[win->_maxx]);
@@ -59,6 +59,71 @@ wins_wch(WINDOW *win, const cchar_t * wch)
            *temp1-- = *temp2--;
 
        *temp1 = _nc_render(win, *wch);
+
+       win->_curx++;
+    }
+}
+
+NCURSES_EXPORT(int)
+wins_wch(WINDOW *win, const cchar_t * wch)
+{
+    NCURSES_SIZE_T oy;
+    NCURSES_SIZE_T ox;
+    int code = ERR;
+
+    T((T_CALLED("wins_wch(%p, %s)"), win, _tracecchar_t(wch)));
+
+    if (win != 0) {
+       oy = win->_cury;
+       ox = win->_curx;
+
+       _nc_insert_wch(win, wch);
+
+       win->_curx = ox;
+       win->_cury = oy;
+       _nc_synchook(win);
+       code = OK;
+    }
+    returnCode(code);
+}
+
+NCURSES_EXPORT(int)
+wins_nwstr(WINDOW *win, const wchar_t * wstr, int n)
+{
+    int code = ERR;
+    NCURSES_SIZE_T oy;
+    NCURSES_SIZE_T ox;
+    const wchar_t *cp;
+
+    T((T_CALLED("wins_nwstr(%p,%s,%d)"), win, _nc_viswbufn(wstr, n), n));
+
+    if (win != 0
+       && wstr != 0) {
+       if (n < 1)
+           n = wcslen(wstr);
+       if (n > 0) {
+           oy = win->_cury;
+           ox = win->_curx;
+           for (cp = wstr; *cp && ((cp - wstr) < n); cp++) {
+               if (wcwidth(*cp) > 1) {
+                   cchar_t tmp_cchar;
+                   wchar_t tmp_wchar = *cp;
+                   memset(&tmp_cchar, 0, sizeof(tmp_cchar));
+                   (void) setcchar(&tmp_cchar,
+                                   &tmp_wchar,
+                                   WA_NORMAL,
+                                   0,
+                                   (void *) 0);
+                   _nc_insert_wch(win, &tmp_cchar);
+               } else {
+                   _nc_insert_ch(win, *cp);    /* tabs, other ASCII stuff */
+               }
+           }
+
+           win->_curx = ox;
+           win->_cury = oy;
+           _nc_synchook(win);
+       }
        code = OK;
     }
     returnCode(code);
similarity index 64%
rename from ncurses/base/lib_insstr.c
rename to ncurses/widechar/lib_pecho_wchar.c
index 347b35611c8f6e386f9a7477c30741eb9a0c0c19..e61277574311bbf7cf83918c2207ea22e09677b9 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.         *
+ * Copyright (c) 2004 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            *
  ****************************************************************************/
 
 /****************************************************************************
- *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
- *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *  Author: Thomas E. Dickey                                                *
  ****************************************************************************/
 
-/*
-**     lib_insstr.c
-**
-**     The routine winsnstr().
-**
-*/
-
 #include <curses.priv.h>
-#include <ctype.h>
 
-MODULE_ID("$Id: lib_insstr.c,v 1.20 2002/09/28 16:22:34 tom Exp $")
+MODULE_ID("$Id: lib_pecho_wchar.c,v 1.1 2004/01/03 21:42:01 tom Exp $")
 
 NCURSES_EXPORT(int)
-winsnstr(WINDOW *win, const char *s, int n)
+pecho_wchar(WINDOW *pad, const cchar_t * wch)
 {
-    int code = ERR;
-    NCURSES_SIZE_T oy;
-    NCURSES_SIZE_T ox;
-    const unsigned char *str = (const unsigned char *) s;
-    const unsigned char *cp;
+    T((T_CALLED("pecho_wchar(%p, %s)"), pad, _tracech_t(wch)));
+
+    if (pad == 0)
+       returnCode(ERR);
 
-    T((T_CALLED("winsnstr(%p,%s,%d)"), win, _nc_visbufn(s,n), n));
+    if (!(pad->_flags & _ISPAD))
+       returnCode(wecho_wchar(pad, wch));
 
-    if (win && str) {
-       oy = win->_cury;
-       ox = win->_curx;
-       for (cp = str; *cp && (n <= 0 || (cp - str) < n); cp++) {
-           if (*cp == '\n' || *cp == '\r' || *cp == '\t' || *cp == '\b') {
-               NCURSES_CH_T wch;
-               SetChar2(wch, *cp);
-               _nc_waddch_nosync(win, wch);
-           } else if (is7bits(*cp) && iscntrl(*cp)) {
-               winsch(win, ' ' + (chtype) (*cp));
-               winsch(win, (chtype) '^');
-               win->_curx += 2;
-           } else {
-               winsch(win, (chtype) (*cp));
-               win->_curx++;
-           }
-           if (win->_curx > win->_maxx)
-               win->_curx = win->_maxx;
-       }
+    wadd_wch(pad, wch);
+    prefresh(pad, pad->_pad._pad_y,
+            pad->_pad._pad_x,
+            pad->_pad._pad_top,
+            pad->_pad._pad_left,
+            pad->_pad._pad_bottom,
+            pad->_pad._pad_right);
 
-       win->_curx = ox;
-       win->_cury = oy;
-       _nc_synchook(win);
-       code = OK;
-    }
-    returnCode(code);
+    returnCode(OK);
 }
diff --git a/ncurses/widechar/lib_slk_wset.c b/ncurses/widechar/lib_slk_wset.c
new file mode 100644 (file)
index 0000000..cda5eae
--- /dev/null
@@ -0,0 +1,149 @@
+/****************************************************************************
+ * Copyright (c) 2003,2004 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: Thomas E. Dickey, 2003                                          *
+ ****************************************************************************/
+
+/*
+ *     lib_slk_wset.c
+ *      Set soft label text.
+ */
+#include <curses.priv.h>
+
+#ifdef HAVE_WCTYPE_H
+#include <wctype.h>
+#endif
+
+MODULE_ID("$Id: lib_slk_wset.c,v 1.6 2004/01/03 21:14:03 tom Exp $")
+
+NCURSES_EXPORT(int)
+slk_wset(int i, const wchar_t * astr, int format)
+{
+    static wchar_t empty[] =
+    {L'\0'};
+    int result = ERR;
+    SLK *slk = SP->_slk;
+    int offset;
+    size_t arglen;
+    const wchar_t *p;
+
+    T((T_CALLED("slk_wset(%d, %s, %d)"), i, _nc_viswbuf(astr), format));
+
+    if (astr == 0)
+       astr = empty;
+    arglen = wcslen(astr);
+    while (iswspace(*astr)) {
+       --arglen;
+       ++astr;                 /* skip over leading spaces  */
+    }
+    p = astr;
+    while (iswprint(*p))
+       p++;                    /* The first non-print stops */
+
+    arglen = (size_t) (p - astr);
+
+    if (slk != NULL &&
+       i >= 1 &&
+       i <= slk->labcnt &&
+       format >= 0 &&
+       format <= 2) {
+       char *new_text;
+       size_t n;
+       size_t used = 0;
+       int mycols;
+       mbstate_t state;
+
+       --i;                    /* Adjust numbering of labels */
+
+       /*
+        * Reduce the actual number of columns to fit in the label field.
+        */
+       while (arglen != 0 && wcswidth(astr, arglen) > slk->maxlen) {
+           --arglen;
+       }
+       mycols = wcswidth(astr, arglen);
+
+       /*
+        * translate the wide-character string to multibyte form.
+        */
+       memset(&state, 0, sizeof(state));
+
+       if ((new_text = (char *) _nc_doalloc(0, MB_LEN_MAX * arglen)) == 0)
+           returnCode(ERR);
+
+       for (n = 0; n < arglen; ++n) {
+           used += wcrtomb(new_text + used, astr[n], &state);
+       }
+       new_text[used] = '\0';
+
+       if (used >= (size_t) (slk->maxlen + 1)) {
+           if ((slk->ent[i].ent_text = (char *) _nc_doalloc(slk->ent[i].ent_text,
+                                                            used + 1)) == 0)
+               returnCode(ERR);
+           if ((slk->ent[i].form_text = (char *) _nc_doalloc(slk->ent[i].form_text,
+                                                             used + 1)) == 0)
+               returnCode(ERR);
+       }
+
+       (void) strcpy(slk->ent[i].ent_text, new_text);
+       free(new_text);
+
+       sprintf(slk->ent[i].form_text, "%*s", (size_t) slk->maxlen, " ");
+
+       switch (format) {
+       default:
+       case 0:         /* left-aligned */
+           offset = 0;
+           break;
+       case 1:         /* centered */
+           offset = (slk->maxlen - mycols) / 2;
+           break;
+       case 2:         /* right-aligned */
+           offset = slk->maxlen - mycols;
+           break;
+       }
+       if (offset < 0)
+           offset = 0;
+       strcpy(slk->ent[i].form_text + offset,
+              slk->ent[i].ent_text);
+       /*
+        * Pad the display with blanks on the right, unless it is already
+        * right-aligned.
+        */
+       if (format != 2 && mycols < slk->maxlen) {
+           sprintf(slk->ent[i].form_text + offset + used,
+                   "%*s",
+                   slk->maxlen - (mycols - offset),
+                   " ");
+       }
+       slk->ent[i].dirty = TRUE;
+       result = OK;
+    }
+    returnCode(result);
+}
index 7a062fd2f30ed14d256ad3b1419038965fd2d8e8..f4d0c518edfd713da1421ae1dc726ca38dac3547 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2002 Free Software Foundation, Inc.                        *
+ * Copyright (c) 2002,2003 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            *
@@ -39,7 +39,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_unget_wch.c,v 1.3 2002/06/29 21:11:02 tom Exp $")
+MODULE_ID("$Id: lib_unget_wch.c,v 1.5 2003/07/05 19:46:51 tom Exp $")
 
 NCURSES_EXPORT(int)
 unget_wch(const wchar_t wch)
@@ -49,25 +49,29 @@ unget_wch(const wchar_t wch)
     size_t length;
     int n;
 
-    T((T_CALLED("unget_wch(%#lx)"), wch));
+    T((T_CALLED("unget_wch(%#lx)"), (unsigned long) wch));
 
     memset(&state, 0, sizeof(state));
     length = wcrtomb(0, wch, &state);
 
     if (length != (size_t) (-1)
        && length != 0) {
-       char *string = malloc(length);
+       char *string;
 
-       memset(&state, 0, sizeof(state));
-       wcrtomb(string, wch, &state);
+       if ((string = (char *) malloc(length)) != 0) {
+           memset(&state, 0, sizeof(state));
+           wcrtomb(string, wch, &state);
 
-       for (n = (int) (length - 1); n >= 0; --n) {
-           if (ungetch(string[n]) != OK) {
-               result = ERR;
-               break;
+           for (n = (int) (length - 1); n >= 0; --n) {
+               if (ungetch(string[n]) != OK) {
+                   result = ERR;
+                   break;
+               }
            }
+           free(string);
+       } else {
+           result = ERR;
        }
-       free(string);
     } else {
        result = ERR;
     }
index 4f8a3f6e4421f3d24c42fb6745ad6ed4f6d0e2c0..c956cfdba7e75ba64bab0dd0f1afb06a1961a8e1 100644 (file)
 #include <curses.priv.h>
 #include <term.h>
 
-MODULE_ID("$Id: lib_wacs.c,v 1.5 2002/08/31 19:44:17 tom Exp $")
+MODULE_ID("$Id: lib_wacs.c,v 1.6 2002/12/21 12:30:19 tom Exp $")
 
 NCURSES_EXPORT_VAR(cchar_t) * _nc_wacs = 0;
 
-static int
-_nc_unicode_locale(void)
-{
-    char *s;
-    if (((s = getenv("LC_ALL")) != 0 && *s != '\0')
-       || ((s = getenv("LC_ALL")) != 0 && *s != '\0')
-       || ((s = getenv("LC_ALL")) != 0 && *s != '\0')) {
-       if (strstr(s, ".UTF-8") != 0)
-           return 1;
-    }
-    return 0;
-}
-
 NCURSES_EXPORT(void)
 _nc_init_wacs(void)
 {
index f4887d125fcfa37dafcb9862aeaf9bd063f21e2f..89430e5681ac4d95270e865575bb34ebf54c6433 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2001 Free Software Foundation, Inc.                        *
+ * Copyright (c) 2001,2003 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            *
@@ -37,7 +37,7 @@
 
 #if USE_WIDEC_SUPPORT
 
-MODULE_ID("$Id: lib_wunctrl.c,v 1.6 2001/09/22 19:18:02 tom Exp $")
+MODULE_ID("$Id: lib_wunctrl.c,v 1.7 2003/07/05 17:01:43 tom Exp $")
 
 NCURSES_EXPORT(wchar_t *)
 wunctrl(cchar_t * wc)
@@ -46,8 +46,8 @@ wunctrl(cchar_t * wc)
 
     if (Charable(*wc)) {
        const char *p;
-       for (p = unctrl(wctob(CharOf(*wc))), sp = str; *p;)
-           *sp++ = btowc(*p++);
+       for (p = unctrl(_nc_to_char(CharOf(*wc))), sp = str; *p;)
+           *sp++ = _nc_to_widechar(*p++);
        return str;
     } else
        return wc->chars;
index c3592526d54830a243e09919824e47fffbd01d23..e796c400b25a4078e9a57b3af6d6a0d758778b13 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.41 2002/01/20 00:41:18 tom Exp $
+# $Id: Makefile.in,v 1.46 2003/11/01 22:44:33 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,1999,2000,2001,2002 Free Software Foundation, Inc.      #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -27,7 +27,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997
+# Author: Thomas E. Dickey 1996-2002
 #
 # Makefile for panels source code.
 #
@@ -45,6 +45,9 @@
 SHELL          = /bin/sh
 THIS           = Makefile
 
+x              = @EXEEXT@
+o              = .@OBJEXT@
+
 MODEL          = @DFT_LWR_MODEL@
 DESTDIR                = @DESTDIR@
 srcdir         = @srcdir@
@@ -56,6 +59,11 @@ includedir   = @includedir@
 datadir                = @datadir@
 
 LIBTOOL                = @LIBTOOL@
+LIBTOOL_CLEAN  = @LIB_CLEAN@
+LIBTOOL_COMPILE        = @LIB_COMPILE@
+LIBTOOL_LINK   = @LIB_LINK@
+LIBTOOL_INSTALL        = @LIB_INSTALL@
+LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
 
 INSTALL                = @INSTALL@
 INSTALL_LIB    = @INSTALL@ @INSTALL_LIB@
@@ -72,8 +80,7 @@ CC            = @CC@
 CPP            = @CPP@
 CFLAGS         = @CFLAGS@
 
-CPPFLAGS       = @CPPFLAGS@ -I@top_srcdir@/ncurses \
-                 -DHAVE_CONFIG_H
+CPPFLAGS       = -I@top_srcdir@/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
 
 CCFLAGS                = $(CPPFLAGS) $(CFLAGS)
 
@@ -85,7 +92,7 @@ CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
 
 CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
 
-LINK           = $(LIBTOOL) $(CC)
+LINK           = $(LIBTOOL_LINK) $(CC)
 LDFLAGS                = @LDFLAGS@ @LD_MODEL@ @LIBS@
 
 SHLIB_DIRS     = -L../lib
@@ -98,7 +105,7 @@ NCURSES_MINOR        = @NCURSES_MINOR@
 REL_VERSION    = @cf_cv_rel_version@
 ABI_VERSION    = @cf_cv_abi_version@
 
-RANLIB         = @RANLIB@
+RANLIB         = @LIB_PREP@
 
 IMPORT_LIB     = @IMPORT_LIB@
 SHARED_LIB     = @SHARED_LIB@
index 7f5b79a8840d957b17ffe12e33c4560c5c535a33..18b90ac265d87a371b6996ec2a3f193840b61ffc 100755 (executable)
@@ -1,10 +1,10 @@
 #!/bin/sh
-# $Id: MKtermsort.sh,v 1.8 2002/06/29 20:02:48 tom Exp $
+# $Id: MKtermsort.sh,v 1.9 2003/01/11 22:23:50 tom Exp $
 #
 # MKtermsort.sh -- generate indirection vectors for the various sort methods
 #
 ##############################################################################
-# Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.                #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -47,7 +47,7 @@ DATA=${2-../include/Caps}
 
 data=data$$
 trap 'rm -f $data' 1 2 5 15
-sed -e 's/[    ]\+/    /g' < $DATA >$data
+sed -e 's/[    ][      ]*/     /g' < $DATA >$data
 DATA=$data
 
 echo "/*";
index 43b85c43faa468be1c1bb4d61a3357ab7041dc2e..c40cd00c5ce0e58419b0284a54dd1b1ed09369fe 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.56 2001/12/08 18:48:01 tom Exp $
+# $Id: Makefile.in,v 1.62 2003/11/01 22:45:57 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.           #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -27,7 +27,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997
+# Author: Thomas E. Dickey 1996-2003
 #
 # Makefile for ncurses source code.
 #
@@ -47,7 +47,9 @@ THIS          = Makefile
 
 CF_MFLAGS      = @cf_cv_makeflags@
 @SET_MAKE@
-x              = @PROG_EXT@
+
+x              = @EXEEXT@
+o              = .@OBJEXT@
 
 MODEL          = ../@DFT_OBJ_SUBDIR@
 DESTDIR                = @DESTDIR@
@@ -60,6 +62,11 @@ includedir   = @includedir@
 datadir                = @datadir@
 
 LIBTOOL                = @LIBTOOL@
+LIBTOOL_CLEAN  = @LIB_CLEAN@
+LIBTOOL_COMPILE        = @LIB_COMPILE@
+LIBTOOL_LINK   = @LIB_LINK@
+LIBTOOL_INSTALL        = @LIB_INSTALL@
+LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
 
 INSTALL                = @INSTALL@
 INSTALL_PROGRAM        = @INSTALL_PROGRAM@
@@ -73,8 +80,7 @@ CPP           = @CPP@
 CFLAGS         = @CFLAGS@
 
 INCDIR         = $(srcdir)/../include
-CPPFLAGS       = -I../progs -I$(srcdir) @CPPFLAGS@ \
-                 -DHAVE_CONFIG_H
+CPPFLAGS       = -I../progs -I$(srcdir) -DHAVE_CONFIG_H @CPPFLAGS@
 
 CCFLAGS                = $(CPPFLAGS) $(CFLAGS)
 
@@ -87,15 +93,15 @@ CFLAGS_SHARED       = $(CCFLAGS) @CC_SHARED_OPTS@
 CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
 
 LD             = @LD@
-LINK           = @LINK_PROGS@ $(LIBTOOL) $(CC)
+LINK           = @LINK_PROGS@ $(LIBTOOL_LINK) $(CC)
 LDFLAGS                = @EXTRA_LDFLAGS@ \
                @PROG_ARGS@ @LDFLAGS@ @LD_MODEL@ @LIBS@ @EXTRA_LIBS@
 
-LDFLAGS_LIBTOOL        = $(LDFLAGS)
-LDFLAGS_NORMAL = $(LDFLAGS)
-LDFLAGS_DEBUG  = $(LDFLAGS) @CC_G_OPT@
-LDFLAGS_PROFILE        = $(LDFLAGS) -pg
-LDFLAGS_SHARED = $(LDFLAGS) @LD_SHARED_OPTS@
+LDFLAGS_LIBTOOL        = $(LDFLAGS) $(CFLAGS_LIBTOOL)
+LDFLAGS_NORMAL = $(LDFLAGS) $(CFLAGS_NORMAL)
+LDFLAGS_DEBUG  = $(LDFLAGS) $(CFLAGS_DEBUG)
+LDFLAGS_PROFILE        = $(LDFLAGS) $(CFLAGS_PROFILE) 
+LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
 
 LDFLAGS_DEFAULT        = $(LDFLAGS_@DFT_UPR_MODEL@)
 
@@ -150,31 +156,31 @@ transform.h :
        echo "#define PROG_INIT      \"$(actual_init)\""      >>$@
 
 install.progs: $(AUTO_SRC) $(PROGS) $(DESTDIR)$(bindir)
-@MAKE_TERMINFO@        $(LIBTOOL) $(INSTALL_PROGRAM) tic$x     $(DESTDIR)$(bindir)/$(actual_tic)
-@MAKE_TERMINFO@        $(LIBTOOL) $(INSTALL_PROGRAM) toe$x     $(DESTDIR)$(bindir)/$(actual_toe)
+@MAKE_TERMINFO@        $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) tic$x     $(DESTDIR)$(bindir)/$(actual_tic)
+@MAKE_TERMINFO@        $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) toe$x     $(DESTDIR)$(bindir)/$(actual_toe)
 @MAKE_TERMINFO@        @echo "linking $(actual_infotocap) to $(actual_tic)"
 @MAKE_TERMINFO@        -@rm -f $(DESTDIR)$(bindir)/$(actual_infotocap)
 @MAKE_TERMINFO@        (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_infotocap))
 @MAKE_TERMINFO@        @echo "linking $(actual_captoinfo) to $(actual_tic)"
 @MAKE_TERMINFO@        -@rm -f $(DESTDIR)$(bindir)/$(actual_captoinfo)
 @MAKE_TERMINFO@        (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_captoinfo))
-       $(LIBTOOL) $(INSTALL_PROGRAM) infocmp$x $(DESTDIR)$(bindir)/$(actual_infocmp)
-       $(LIBTOOL) $(INSTALL_PROGRAM) clear$x   $(DESTDIR)$(bindir)/$(actual_clear)
-       $(LIBTOOL) $(INSTALL_PROGRAM) tput$x    $(DESTDIR)$(bindir)/$(actual_tput)
-       $(LIBTOOL) $(INSTALL_PROGRAM) tset$x    $(DESTDIR)$(bindir)/$(actual_tset)
+       $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) infocmp$x $(DESTDIR)$(bindir)/$(actual_infocmp)
+       $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) clear$x   $(DESTDIR)$(bindir)/$(actual_clear)
+       $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) tput$x    $(DESTDIR)$(bindir)/$(actual_tput)
+       $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) tset$x    $(DESTDIR)$(bindir)/$(actual_tset)
        @echo "linking $(actual_reset) to $(actual_tset)"
        -@rm -f $(DESTDIR)$(bindir)/$(actual_reset)
        (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tset) $(actual_reset))
 
 uninstall.progs:
-@MAKE_TERMINFO@        -@$(LIBTOOL) rm -f $(DESTDIR)$(bindir)/$(actual_tic)
-@MAKE_TERMINFO@        -@$(LIBTOOL) rm -f $(DESTDIR)$(bindir)/$(actual_toe)
+@MAKE_TERMINFO@        -@$(LIBTOOL_CLEAN) rm -f $(DESTDIR)$(bindir)/$(actual_tic)
+@MAKE_TERMINFO@        -@$(LIBTOOL_CLEAN) rm -f $(DESTDIR)$(bindir)/$(actual_toe)
 @MAKE_TERMINFO@        -@rm -f $(DESTDIR)$(bindir)/$(actual_captoinfo)
 @MAKE_TERMINFO@        -@rm -f $(DESTDIR)$(bindir)/$(actual_infotocap)
-       -@$(LIBTOOL) rm -f $(DESTDIR)$(bindir)/$(actual_infocmp)
-       -@$(LIBTOOL) rm -f $(DESTDIR)$(bindir)/$(actual_clear)
-       -@$(LIBTOOL) rm -f $(DESTDIR)$(bindir)/$(actual_tput)
-       -@$(LIBTOOL) rm -f $(DESTDIR)$(bindir)/$(actual_tset)
+       -@$(LIBTOOL_CLEAN) rm -f $(DESTDIR)$(bindir)/$(actual_infocmp)
+       -@$(LIBTOOL_CLEAN) rm -f $(DESTDIR)$(bindir)/$(actual_clear)
+       -@$(LIBTOOL_CLEAN) rm -f $(DESTDIR)$(bindir)/$(actual_tput)
+       -@$(LIBTOOL_CLEAN) rm -f $(DESTDIR)$(bindir)/$(actual_tset)
        -@rm -f $(DESTDIR)$(bindir)/$(actual_reset)
 
 $(DESTDIR)$(bindir) :
@@ -185,47 +191,47 @@ $(DESTDIR)$(bindir) :
 #
 
 DEPS_TIC = \
-       $(MODEL)/tic.o \
-       $(MODEL)/dump_entry.o
+       $(MODEL)/tic$o \
+       $(MODEL)/dump_entry$o
 
 tic$x: $(DEPS_TIC) $(DEPS_CURSES) transform.h
        @ECHO_LINK@ $(LINK) $(DEPS_TIC) $(LDFLAGS_DEFAULT) -o $@
 
 DEPS_TOE = \
-       $(MODEL)/toe.o \
-       $(MODEL)/dump_entry.o
+       $(MODEL)/toe$o \
+       $(MODEL)/dump_entry$o
 
 toe$x: $(DEPS_TOE) $(DEPS_CURSES)
        @ECHO_LINK@ $(LINK) $(DEPS_TOE) $(LDFLAGS_DEFAULT) -o $@
 
 DEPS_CLEAR = \
-       $(MODEL)/clear.o
+       $(MODEL)/clear$o
 
 clear$x: $(DEPS_CLEAR) $(DEPS_CURSES)
        @ECHO_LINK@ $(LINK) $(DEPS_CLEAR) $(LDFLAGS_DEFAULT) -o $@
 
 DEPS_TPUT = \
-       $(MODEL)/tput.o
+       $(MODEL)/tput$o
 
 tput$x: $(DEPS_TPUT) $(DEPS_CURSES) transform.h
        @ECHO_LINK@ $(LINK) $(DEPS_TPUT) $(LDFLAGS_DEFAULT) -o $@
 
 DEPS_INFOCMP = \
-       $(MODEL)/infocmp.o \
-       $(MODEL)/dump_entry.o
+       $(MODEL)/infocmp$o \
+       $(MODEL)/dump_entry$o
 
 infocmp$x: $(DEPS_INFOCMP) $(DEPS_CURSES)
        @ECHO_LINK@ $(LINK) $(DEPS_INFOCMP) $(LDFLAGS_DEFAULT) -o $@
 
 DEPS_TSET = \
-       $(MODEL)/tset.o \
-       $(MODEL)/dump_entry.o
+       $(MODEL)/tset$o \
+       $(MODEL)/dump_entry$o
 
 tset$x: $(DEPS_TSET) $(DEPS_CURSES) transform.h
        @ECHO_LINK@ $(LINK) $(DEPS_TSET) $(LDFLAGS_DEFAULT) -o $@
 
 termsort.c: $(srcdir)/MKtermsort.sh
-       sh -c "$(srcdir)/MKtermsort.sh $(AWK) $(srcdir)/../include/@TERMINFO_CAPS@" >$@
+       sh $(srcdir)/MKtermsort.sh $(AWK) $(srcdir)/../include/@TERMINFO_CAPS@ >$@
 
 #
 # Utility productions start here
@@ -242,6 +248,7 @@ mostlyclean ::
        -rm -f $(TESTPROGS)
 
 clean :: mostlyclean
+       -sh -c "if test -n '$x' ; then $(MAKE) clean x=''; fi"
        -rm -f $(AUTO_SRC)
        -rm -f $(PROGS)
        -rm -rf .libs
index b8d82b77ed39d9c4f06777d73caf2326d7e6d81c..48ef488165b610def2ee07be1f819687b20614a8 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -39,7 +39,7 @@
 #include "termsort.c"          /* this C file is generated */
 #include <parametrized.h>      /* so is this */
 
-MODULE_ID("$Id: dump_entry.c,v 1.64 2002/09/01 17:54:43 tom Exp $")
+MODULE_ID("$Id: dump_entry.c,v 1.66 2003/05/24 22:43:59 tom Exp $")
 
 #define INDENT                 8
 #define DISCARD(string) string = ABSENT_STRING
@@ -913,15 +913,23 @@ dump_entry(TERMTYPE * tterm,
             */
            char *oldsgr = set_attributes;
            char *oldacsc = acs_chars;
-           set_attributes = ABSENT_STRING;
-           SHOW_WHY("# (sgr removed to fit entry within %d bytes)\n",
-                    critlen);
-           if ((len = FMT_ENTRY()) > critlen) {
-               acs_chars = ABSENT_STRING;
-               SHOW_WHY("# (acsc removed to fit entry within %d bytes)\n",
+           bool changed = FALSE;
+
+           if (VALID_STRING(set_attributes)) {
+               set_attributes = ABSENT_STRING;
+               SHOW_WHY("# (sgr removed to fit entry within %d bytes)\n",
                         critlen);
+               changed = TRUE;
+           }
+           if (!changed || ((len = FMT_ENTRY()) > critlen)) {
+               if (VALID_STRING(acs_chars)) {
+                   acs_chars = ABSENT_STRING;
+                   SHOW_WHY("# (acsc removed to fit entry within %d bytes)\n",
+                            critlen);
+                   changed = TRUE;
+               }
            }
-           if ((len = FMT_ENTRY()) > critlen) {
+           if (!changed || ((len = FMT_ENTRY()) > critlen)) {
                int oldversion = tversion;
 
                tversion = V_BSD;
index 5d80511cca323c6e9e06f100293a76477e50af53..e5751fb41a618d879113d13f3b2c34a04acb6f50 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -41,7 +41,7 @@
 #include <term_entry.h>
 #include <dump_entry.h>
 
-MODULE_ID("$Id: infocmp.c,v 1.68 2002/10/06 01:13:04 tom Exp $")
+MODULE_ID("$Id: infocmp.c,v 1.71 2003/10/18 18:01:54 tom Exp $")
 
 #define L_CURL "{"
 #define R_CURL "}"
@@ -120,7 +120,7 @@ canonical_name(char *ptr, char *buf)
  ***************************************************************************/
 
 static int
-capcmp(int idx, const char *s, const char *t)
+capcmp(unsigned idx, const char *s, const char *t)
 /* capability comparison function */
 {
     if (!VALID_STRING(s) && !VALID_STRING(t))
@@ -248,7 +248,7 @@ static bool
 entryeq(TERMTYPE * t1, TERMTYPE * t2)
 /* are two entries equivalent? */
 {
-    int i;
+    unsigned i;
 
     for (i = 0; i < NUM_BOOLEANS(t1); i++)
        if (t1->Booleans[i] != t2->Booleans[i])
@@ -268,7 +268,7 @@ entryeq(TERMTYPE * t1, TERMTYPE * t2)
 #define TIC_EXPAND(result) _nc_tic_expand(result, outform==F_TERMINFO, numbers)
 
 static void
-print_uses(ENTRY * ep, FILE * fp)
+print_uses(ENTRY * ep, FILE *fp)
 /* print an entry's use references */
 {
     int i;
@@ -739,7 +739,7 @@ file_comparison(int argc, char *argv[])
                    (void) fputc('\n', stderr);
                }
            }
-           exit(EXIT_FAILURE);
+           ExitProgram(EXIT_FAILURE);
        }
 
        heads[filecount] = _nc_head;
@@ -936,7 +936,7 @@ usage(void)
        else
            fprintf(stderr, "%s\n", tbl[n]);
     }
-    exit(EXIT_FAILURE);
+    ExitProgram(EXIT_FAILURE);
 }
 
 static char *
@@ -975,7 +975,7 @@ string_variable(const char *type)
 static void
 dump_initializers(TERMTYPE * term)
 {
-    int n;
+    unsigned n;
     int size;
     const char *str = 0;
 
@@ -1145,11 +1145,24 @@ optarg_to_number(void)
 
     if (temp == 0 || temp == optarg || *temp != 0) {
        fprintf(stderr, "Expected a number, not \"%s\"\n", optarg);
-       exit(EXIT_FAILURE);
+       ExitProgram(EXIT_FAILURE);
     }
     return (int) value;
 }
 
+static char *
+terminal_env(void)
+{
+    char *terminal;
+
+    if ((terminal = getenv("TERM")) == 0) {
+       (void) fprintf(stderr,
+                      "infocmp: environment variable TERM not set\n");
+       exit(EXIT_FAILURE);
+    }
+    return terminal;
+}
+
 /***************************************************************************
  *
  * Main sequence
@@ -1159,7 +1172,7 @@ optarg_to_number(void)
 int
 main(int argc, char *argv[])
 {
-    char *terminal, *firstdir, *restdir;
+    char *firstdir, *restdir;
     /* Avoid "local data >32k" error with mwcc */
     /* Also avoid overflowing smaller stacks on systems like AmigaOS */
     path *tfile = (path *) malloc(sizeof(path) * MAXTERMS);
@@ -1170,12 +1183,6 @@ main(int argc, char *argv[])
     bool init_analyze = FALSE;
     bool suppress_untranslatable = FALSE;
 
-    if ((terminal = getenv("TERM")) == 0) {
-       (void) fprintf(stderr,
-                      "infocmp: environment variable TERM not set\n");
-       return EXIT_FAILURE;
-    }
-
     /* where is the terminfo database location going to default to? */
     restdir = firstdir = 0;
 
@@ -1342,11 +1349,11 @@ main(int argc, char *argv[])
 
     /* make sure we have at least one terminal name to work with */
     if (optind >= argc)
-       argv[argc++] = terminal;
+       argv[argc++] = terminal_env();
 
     /* if user is after a comparison, make sure we have two entries */
     if (compare != C_DEFAULT && optind >= argc - 1)
-       argv[argc++] = terminal;
+       argv[argc++] = terminal_env();
 
     /* exactly two terminal names with no options means do -d */
     if (argc - optind == 2 && compare == C_DEFAULT)
index 594474de44cab20b570ddfacbea68f88ef3e8d7b..6312b5c6aa58f029795631806a6970df16174966 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -45,7 +45,7 @@
 #include <term_entry.h>
 #include <transform.h>
 
-MODULE_ID("$Id: tic.c,v 1.102 2002/10/05 19:59:41 tom Exp $")
+MODULE_ID("$Id: tic.c,v 1.109 2003/12/06 17:36:57 tom Exp $")
 
 const char *_nc_progname = "tic";
 
@@ -58,7 +58,7 @@ static int tparm_errs;
 static void (*save_check_termtype) (TERMTYPE *);
 static void check_termtype(TERMTYPE * tt);
 
-static const char usage_string[] = "[-V] [-v[n]] [-e names] [-CILNRTcfrswx1] source-file\n";
+static const char usage_string[] = "[-V] [-v[n]] [-e names] [-o dir] [-R name] [-CILNTcfrswx1] source-file\n";
 
 static void
 cleanup(void)
@@ -79,7 +79,7 @@ failed(const char *msg)
 {
     perror(msg);
     cleanup();
-    exit(EXIT_FAILURE);
+    ExitProgram(EXIT_FAILURE);
 }
 
 static void
@@ -126,7 +126,7 @@ usage(void)
        fputs(tbl[j], stderr);
        putc('\n', stderr);
     }
-    exit(EXIT_FAILURE);
+    ExitProgram(EXIT_FAILURE);
 }
 
 #define L_BRACE '{'
@@ -300,7 +300,7 @@ stripped(char *src)
     while (isspace(UChar(*src)))
        src++;
     if (*src != '\0') {
-       char *dst = strcpy(malloc(strlen(src) + 1), src);
+       char *dst = strcpy((char *) malloc(strlen(src) + 1), src);
        size_t len = strlen(dst);
        while (--len != 0 && isspace(UChar(dst[len])))
            dst[len] = '\0';
@@ -317,12 +317,12 @@ open_input(const char *filename)
 
     if (fp == 0) {
        fprintf(stderr, "%s: Can't open %s\n", _nc_progname, filename);
-       exit(EXIT_FAILURE);
+       ExitProgram(EXIT_FAILURE);
     }
     if (fstat(fileno(fp), &sb) < 0
        || (sb.st_mode & S_IFMT) != S_IFREG) {
        fprintf(stderr, "%s: %s is not a file\n", _nc_progname, filename);
-       exit(EXIT_FAILURE);
+       ExitProgram(EXIT_FAILURE);
     }
     return fp;
 }
@@ -768,6 +768,216 @@ TERMINAL *cur_term;               /* tweak to avoid linking lib_cur_term.c */
 #undef CUR
 #define CUR tp->
 
+/*
+ * Check if the alternate character-set capabilities are consistent.
+ */
+static void
+check_acs(TERMTYPE * tp)
+{
+    if (VALID_STRING(acs_chars)) {
+       const char *boxes = "lmkjtuvwqxn";
+       char mapped[256];
+       char missing[256];
+       const char *p;
+       char *q;
+
+       memset(mapped, 0, sizeof(mapped));
+       for (p = acs_chars; *p != '\0'; p += 2) {
+           if (p[1] == '\0') {
+               _nc_warning("acsc has odd number of characters");
+               break;
+           }
+           mapped[UChar(p[0])] = p[1];
+       }
+       if (mapped[UChar('I')] && !mapped[UChar('i')]) {
+           _nc_warning("acsc refers to 'I', which is probably an error");
+       }
+       for (p = boxes, q = missing; *p != '\0'; ++p) {
+           if (!mapped[UChar(p[0])]) {
+               *q++ = p[0];
+           }
+           *q = '\0';
+       }
+       if (*missing != '\0' && strcmp(missing, boxes)) {
+           _nc_warning("acsc is missing some line-drawing mapping: %s", missing);
+       }
+    }
+}
+
+/*
+ * Check if the color capabilities are consistent
+ */
+static void
+check_colors(TERMTYPE * tp)
+{
+    if ((max_colors > 0) != (max_pairs > 0)
+       || ((max_colors > max_pairs) && (initialize_pair == 0)))
+       _nc_warning("inconsistent values for max_colors (%d) and max_pairs (%d)",
+                   max_colors, max_pairs);
+
+    PAIRED(set_foreground, set_background);
+    PAIRED(set_a_foreground, set_a_background);
+    PAIRED(set_color_pair, initialize_pair);
+
+    if (VALID_STRING(set_foreground)
+       && VALID_STRING(set_a_foreground)
+       && !strcmp(set_foreground, set_a_foreground))
+       _nc_warning("expected setf/setaf to be different");
+
+    if (VALID_STRING(set_background)
+       && VALID_STRING(set_a_background)
+       && !strcmp(set_background, set_a_background))
+       _nc_warning("expected setb/setab to be different");
+
+    /* see: has_colors() */
+    if (VALID_NUMERIC(max_colors) && VALID_NUMERIC(max_pairs)
+       && (((set_foreground != NULL)
+            && (set_background != NULL))
+           || ((set_a_foreground != NULL)
+               && (set_a_background != NULL))
+           || set_color_pair)) {
+       if (!VALID_STRING(orig_pair) && !VALID_STRING(orig_colors))
+           _nc_warning("expected either op/oc string for resetting colors");
+    }
+}
+
+static int
+keypad_final(const char *string)
+{
+    int result = '\0';
+
+    if (VALID_STRING(string)
+       && *string++ == '\033'
+       && *string++ == 'O'
+       && strlen(string) == 1) {
+       result = *string;
+    }
+
+    return result;
+}
+
+static int
+keypad_index(const char *string)
+{
+    char *test;
+    const char *list = "PQRSwxymtuvlqrsPpn";   /* app-keypad except "Enter" */
+    int ch;
+    int result = -1;
+
+    if ((ch = keypad_final(string)) != '\0') {
+       test = strchr(list, ch);
+       if (test != 0)
+           result = (test - list);
+    }
+    return result;
+}
+
+/*
+ * Do a quick sanity-check for vt100-style keypads to see if the 5-key keypad
+ * is mapped inconsistently.
+ */
+static void
+check_keypad(TERMTYPE * tp)
+{
+    char show[80];
+
+    if (VALID_STRING(key_a1) &&
+       VALID_STRING(key_a3) &&
+       VALID_STRING(key_b2) &&
+       VALID_STRING(key_c1) &&
+       VALID_STRING(key_c3)) {
+       char final[6];
+       int list[5];
+       int increase = 0;
+       int j, k, kk;
+       int last;
+       int test;
+
+       final[0] = keypad_final(key_a1);
+       final[1] = keypad_final(key_a3);
+       final[2] = keypad_final(key_b2);
+       final[3] = keypad_final(key_c1);
+       final[4] = keypad_final(key_c3);
+       final[5] = '\0';
+
+       /* special case: legacy coding using 1,2,3,0,. on the bottom */
+       if (!strcmp(final, "qsrpn"))
+           return;
+
+       list[0] = keypad_index(key_a1);
+       list[1] = keypad_index(key_a3);
+       list[2] = keypad_index(key_b2);
+       list[3] = keypad_index(key_c1);
+       list[4] = keypad_index(key_c3);
+
+       /* check that they're all vt100 keys */
+       for (j = 0; j < 5; ++j) {
+           if (list[j] < 0) {
+               return;
+           }
+       }
+
+       /* check if they're all in increasing order */
+       for (j = 1; j < 5; ++j) {
+           if (list[j] > list[j - 1]) {
+               ++increase;
+           }
+       }
+       if (increase != 4) {
+           show[0] = '\0';
+
+           for (j = 0, last = -1; j < 5; ++j) {
+               for (k = 0, kk = -1, test = 100; k < 5; ++k) {
+                   if (list[k] > last &&
+                       list[k] < test) {
+                       test = list[k];
+                       kk = k;
+                   }
+               }
+               last = test;
+               switch (kk) {
+               case 0:
+                   strcat(show, " ka1");
+                   break;
+               case 1:
+                   strcat(show, " ka3");
+                   break;
+               case 2:
+                   strcat(show, " kb2");
+                   break;
+               case 3:
+                   strcat(show, " kc1");
+                   break;
+               case 4:
+                   strcat(show, " kc3");
+                   break;
+               }
+           }
+
+           _nc_warning("vt100 keypad order inconsistent: %s", show);
+       }
+
+    } else if (VALID_STRING(key_a1) ||
+              VALID_STRING(key_a3) ||
+              VALID_STRING(key_b2) ||
+              VALID_STRING(key_c1) ||
+              VALID_STRING(key_c3)) {
+       show[0] = '\0';
+       if (keypad_index(key_a1) >= 0)
+           strcat(show, " ka1");
+       if (keypad_index(key_a3) >= 0)
+           strcat(show, " ka3");
+       if (keypad_index(key_b2) >= 0)
+           strcat(show, " kb2");
+       if (keypad_index(key_c1) >= 0)
+           strcat(show, " kc1");
+       if (keypad_index(key_c3) >= 0)
+           strcat(show, " kc3");
+       if (*show != '\0')
+           _nc_warning("vt100 keypad map incomplete:%s", show);
+    }
+}
+
 /*
  * Returns the expected number of parameters for the given capability.
  */
@@ -1076,17 +1286,9 @@ check_termtype(TERMTYPE * tp)
            check_params(tp, ExtStrname(tp, j, strnames), a);
     }
 
-    /*
-     * Quick check for color.  We could also check if the ANSI versus
-     * non-ANSI strings are misused.
-     */
-    if ((max_colors > 0) != (max_pairs > 0)
-       || ((max_colors > max_pairs) && (initialize_pair == 0)))
-       _nc_warning("inconsistent values for max_colors (%d) and max_pairs (%d)",
-                   max_colors, max_pairs);
-
-    PAIRED(set_foreground, set_background);
-    PAIRED(set_a_foreground, set_a_background);
+    check_acs(tp);
+    check_colors(tp);
+    check_keypad(tp);
 
     /*
      * These may be mismatched because the terminal description relies on
index 3e09eab22ddb357ad8d504e62b72ea192a1e21fc..70b762f7eb3f6c22e6bcc71c5b29fd73120327de 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.         *
+ * Copyright (c) 1998-2003,2004 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            *
@@ -45,7 +45,7 @@
 #endif
 #include <transform.h>
 
-MODULE_ID("$Id: tput.c,v 1.31 2002/07/20 19:09:47 tom Exp $")
+MODULE_ID("$Id: tput.c,v 1.34 2004/01/16 23:23:11 Daniel.Jacobowitz Exp $")
 
 #define PUTS(s)                fputs(s, stdout)
 #define PUTCHAR(c)     putchar(c)
@@ -67,17 +67,18 @@ quit(int status, const char *fmt,...)
     va_list argp;
 
     va_start(argp, fmt);
+    fprintf(stderr, "%s: ", prg_name);
     vfprintf(stderr, fmt, argp);
     fprintf(stderr, "\n");
     va_end(argp);
-    exit(status);
+    ExitProgram(status);
 }
 
 static void
 usage(void)
 {
     fprintf(stderr, "usage: %s [-V] [-S] [-T term] capname\n", prg_name);
-    exit(EXIT_FAILURE);
+    ExitProgram(EXIT_FAILURE);
 }
 
 static void
@@ -292,13 +293,15 @@ tput(int argc, char *argv[])
        (void) printf("%d\n", status);
        return exit_code(NUMBER, 0);
     } else if ((s = tigetstr(name)) == CANCELLED_STRING) {
-       quit(4, "%s: unknown terminfo capability '%s'", prg_name, name);
+       quit(4, "unknown terminfo capability '%s'", name);
     } else if (s != ABSENT_STRING) {
        token = STRING;
        if (argc > 1) {
            int k;
-           int numbers[10];
-           char *strings[10];
+           int popcount;
+           long numbers[1 + NUM_PARM];
+           char *strings[1 + NUM_PARM];
+           char *p_is_s[NUM_PARM];
 
            /* Nasty hack time. The tparm function needs to see numeric
             * parameters as numbers, not as pointers to their string
@@ -312,7 +315,7 @@ tput(int argc, char *argv[])
                if (tmp == 0 || *tmp != 0)
                    numbers[k] = 0;
            }
-           for (k = argc; k <= 9; k++) {
+           for (k = argc; k <= NUM_PARM; k++) {
                numbers[k] = 0;
                strings[k] = 0;
            }
@@ -325,10 +328,18 @@ tput(int argc, char *argv[])
                s = tparm(s, numbers[1], strings[2], strings[3]);
                break;
            default:
+               (void) _nc_tparm_analyze(s, p_is_s, &popcount);
+#define myParam(n) (p_is_s[n - 1] != 0 ? ((long) strings[n]) : numbers[n])
                s = tparm(s,
-                         numbers[1], numbers[2], numbers[3],
-                         numbers[4], numbers[5], numbers[6],
-                         numbers[7], numbers[8], numbers[9]);
+                         myParam(1),
+                         myParam(2),
+                         myParam(3),
+                         myParam(4),
+                         myParam(5),
+                         myParam(6),
+                         myParam(7),
+                         myParam(8),
+                         myParam(9));
                break;
            }
        }
index 03c8ffde33afa611a7391dbc012ef29f8dda23c4..f67931f0506e31766ea6ec3e707e67282eaa5746 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
@@ -103,7 +103,7 @@ char *ttyname(int fd);
 #include <dump_entry.h>
 #include <transform.h>
 
-MODULE_ID("$Id: tset.c,v 0.53 2002/08/24 23:18:16 tom Exp $")
+MODULE_ID("$Id: tset.c,v 0.56 2003/12/06 17:21:01 tom Exp $")
 
 extern char **environ;
 
@@ -142,7 +142,7 @@ exit_error(void)
        SET_TTY(STDERR_FILENO, &original);
     (void) fprintf(stderr, "\n");
     fflush(stderr);
-    exit(EXIT_FAILURE);
+    ExitProgram(EXIT_FAILURE);
     /* NOTREACHED */
 }
 
@@ -350,7 +350,7 @@ add_mapping(const char *port, char *arg)
     char *base = 0;
 
     copy = strdup(arg);
-    mapp = malloc(sizeof(MAP));
+    mapp = (MAP *) malloc(sizeof(MAP));
     if (copy == 0 || mapp == 0)
        failed("malloc");
     mapp->next = 0;
@@ -627,8 +627,10 @@ get_termcap_entry(char *userarg)
  **************************************************************************/
 
 /* some BSD systems have these built in, some systems are missing
- * one or more definitions. The safest solution is to override.
+ * one or more definitions. The safest solution is to override unless the
+ * commonly-altered ones are defined.
  */
+#if !(defined(CERASE) && defined(CINTR) && defined(CKILL) && defined(CQUIT))
 #undef CEOF
 #undef CERASE
 #undef CINTR
@@ -639,18 +641,39 @@ get_termcap_entry(char *userarg)
 #undef CSTART
 #undef CSTOP
 #undef CSUSP
+#endif
 
 /* control-character defaults */
+#ifndef CEOF
 #define CEOF   CTRL('D')
+#endif
+#ifndef CERASE
 #define CERASE CTRL('H')
+#endif
+#ifndef CINTR
 #define CINTR  127             /* ^? */
+#endif
+#ifndef CKILL
 #define CKILL  CTRL('U')
+#endif
+#ifndef CLNEXT
 #define CLNEXT  CTRL('v')
+#endif
+#ifndef CRPRNT
 #define CRPRNT  CTRL('r')
+#endif
+#ifndef CQUIT
 #define CQUIT  CTRL('\\')
+#endif
+#ifndef CSTART
 #define CSTART CTRL('Q')
+#endif
+#ifndef CSTOP
 #define CSTOP  CTRL('S')
+#endif
+#ifndef CSUSP
 #define CSUSP  CTRL('Z')
+#endif
 
 #define        CHK(val, dft)   ((int)val <= 0 ? dft : val)
 
@@ -1183,8 +1206,8 @@ main(int argc, char **argv)
 #ifdef TERMIOS
        if (!quiet) {
            report("Erase", VERASE, CERASE);
-           report("Kill", VKILL, CINTR);
-           report("Interrupt", VINTR, CKILL);
+           report("Kill", VKILL, CKILL);
+           report("Interrupt", VINTR, CINTR);
        }
 #endif
     }
@@ -1193,12 +1216,14 @@ main(int argc, char **argv)
        err("The -S option is not supported under terminfo.");
 
     if (sflag) {
+       int len;
        /*
         * Figure out what shell we're using.  A hack, we look for an
         * environmental variable SHELL ending in "csh".
         */
        if ((p = getenv("SHELL")) != 0
-           && !strcmp(p + strlen(p) - 3, "csh"))
+           && (len = strlen(p)) >= 3
+           && !strcmp(p + len - 3, "csh"))
            p = "set noglob;\nsetenv TERM %s;\nunset noglob;\n";
        else
            p = "TERM=%s;\n";
@@ -1207,5 +1232,3 @@ main(int argc, char **argv)
 
     return EXIT_SUCCESS;
 }
-
-/* tset.c ends here */
diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile
deleted file mode 100644 (file)
index 9489c19..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-ifeq ($(subdir),ncurses)
-
-CPPFLAGS += -DNDEBUG -DHAVE_CONFIG_H
-
-edit_man-sed = sysdeps/unix/sysv/linux/edit_man.sed
-edit_man-sh = sysdeps/unix/sysv/linux/edit_man.sh
-
-run_tic-sh = sysdeps/unix/sysv/linux/run_tic.sh
-
-endif
diff --git a/sysdeps/unix/sysv/linux/alpha/configure b/sysdeps/unix/sysv/linux/alpha/configure
deleted file mode 100755 (executable)
index 6fa2519..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-# Alpha uses long as bool.
-nc_cv_type_of_bool=long
diff --git a/sysdeps/unix/sysv/linux/configure b/sysdeps/unix/sysv/linux/configure
deleted file mode 100755 (executable)
index e83e080..0000000
+++ /dev/null
@@ -1,407 +0,0 @@
-# Local configure fragment for ncurses/sysdeps/unix/sysv/linux.
-
-nc_given_srcdir=${srcdir}/ncurses
-
-NCURSES_MAJOR="`egrep '^NCURSES_MAJOR[         ]*=' $nc_given_srcdir/dist.mk | sed -e 's/^[^0-9]*//'`"
-NCURSES_MINOR="`egrep '^NCURSES_MINOR[         ]*=' $nc_given_srcdir/dist.mk | sed -e 's/^[^0-9]*//'`"
-NCURSES_PATCH="`egrep '^NCURSES_PATCH[         ]*=' $nc_given_srcdir/dist.mk | sed -e 's/^[^0-9]*//'`"
-cf_cv_abi_version=${NCURSES_MAJOR}
-cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR}
-
-# Default to char
-if [ x${cf_cv_type_of_bool} = x ]
-then
-  cf_cv_type_of_bool=char
-fi
-
-rm -f ncurses/MKterm.h.awk \
-       ncurses/codes.c \
-       ncurses/comp_captab.c \
-       ncurses/confdefs.h \
-       ncurses/config.log \
-       ncurses/curses.h \
-       ncurses/expanded.c \
-       ncurses/fallback.c \
-       ncurses/hashsize.h \
-       ncurses/init_keytry.h \
-       ncurses/lib_gen.c \
-       ncurses/lib_keyname.c \
-       ncurses/names.c \
-       ncurses/ncurses_cfg.h \
-       ncurses/nomacros.h \
-       ncurses/parametrized.h \
-       ncurses/term.h \
-       ncurses/termcap.h \
-       ncurses/terminfo.5 \
-       ncurses/termsort.c \
-       ncurses/unctrl.c \
-       ncurses/unctrl.h
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\&%]/\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<EOF
-
-
-s%@DEFS@%-DHAVE_CONFIG_H%g
-s%@NCURSES_MAJOR@%$NCURSES_MAJOR%g
-s%@NCURSES_MINOR@%$NCURSES_MINOR%g
-s%@NCURSES_PATCH@%$NCURSES_PATCH%g
-s%@NCURSES_CONST@%%g
-s%@NCURSES_XNAMES@%1%g
-s%@OSPEED_TYPE@%speed_t%g
-s%@OSPEED_INCLUDES@%#include <termios.h>%g
-s%@cf_cv_rel_version@%$cf_cv_rel_version%g
-s%@cf_cv_abi_version@%$cf_cv_abi_version%g
-s%@cf_cv_builtin_bool@%1%g
-s%@cf_cv_type_of_bool@%$cf_cv_type_of_bool%g
-s%@cf_cv_shift_limit@%32%g
-s%@cf_cv_widec_shift@%8%g
-s%@cf_cv_typeof_chtype@%long%g
-s%@cf_cv_1UL@%1UL%g
-s%@cf_cv_cc_bool_type@%0%g
-
-EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-nc_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-nc_file=1 # Number of current file.
-nc_beg=1 # First line for current file.
-nc_end=$nc_max_sed_cmds # Line after last line for current file.
-nc_more_lines=:
-nc_sed_cmds=""
-while $nc_more_lines; do
-  if test $nc_beg -gt 1; then
-    sed "1,${nc_beg}d; ${nc_end}q" conftest.subs > conftest.s$nc_file
-  else
-    sed "${nc_end}q" conftest.subs > conftest.s$nc_file
-  fi
-  if test ! -s conftest.s$nc_file; then
-    nc_more_lines=false
-    rm -f conftest.s$nc_file
-  else
-    if test -z "$nc_sed_cmds"; then
-      nc_sed_cmds="sed -f conftest.s$nc_file"
-    else
-      nc_sed_cmds="$nc_sed_cmds | sed -f conftest.s$nc_file"
-    fi
-    nc_file=`expr $nc_file + 1`
-    nc_beg=$nc_end
-    nc_end=`expr $nc_end + $nc_max_sed_cmds`
-  fi
-done
-if test -z "$nc_sed_cmds"; then
-  nc_sed_cmds=cat
-fi
-
-NC_CONFIG_FILES=${NC_CONFIG_FILES-"ncurses/MKterm.h.awk        ncurses/curses.h        ncurses/termcap.h       ncurses/unctrl.h"}
-for nc_file in .. $NC_CONFIG_FILES; do if test "x$nc_file" != x..; then
-  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
-  case "$nc_file" in
-  *:*) nc_file_in=`echo "$nc_file"|sed 's%[^:]*:%%'`
-       nc_file=`echo "$nc_file"|sed 's%:.*%%'` ;;
-  *) nc_file_in=`echo "${nc_file}" | sed 's%ncurses%include%'`.in ;;
-  esac
-
-  # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
-  # Remove last slash and all that follows it.  Not all systems have dirname.
-  nc_dir=`echo $nc_file|sed 's%/[^/][^/]*$%%'`
-  if test "$nc_dir" != "$nc_file" && test "$nc_dir" != .; then
-    # The file is in a subdirectory.
-    test ! -d "$nc_dir" && mkdir "$nc_dir"
-    nc_dir_suffix="/`echo $nc_dir|sed 's%^\./%%'`"
-    # A "../" for each directory in $nc_dir_suffix.
-    nc_dots=`echo $nc_dir_suffix|sed 's%/[^/]*%../%g'`
-  else
-    nc_dir_suffix= nc_dots=
-  fi
-
-  case "$nc_given_srcdir" in
-  .)  nc_srcdir=.
-      if test -z "$nc_dots"; then nc_top_srcdir=.
-      else nc_top_srcdir=`echo $nc_dots|sed 's%/$%%'`; fi ;;
-  /*) nc_srcdir="$nc_given_srcdir$nc_dir_suffix"; nc_top_srcdir="$nc_given_srcdir" ;;
-  *) # Relative path.
-    nc_srcdir="$nc_dots$nc_given_srcdir$nc_dir_suffix"
-    nc_top_srcdir="$nc_dots$nc_given_srcdir" ;;
-  esac
-
-  case "$ac_given_INSTALL" in
-  [/$]*) NC_INSTALL="$ac_given_INSTALL" ;;
-  *) NC_INSTALL="$nc_dots$ac_given_INSTALL" ;;
-  esac
-
-  echo creating "$nc_file"
-  rm -f "$nc_file"
-  configure_input="Generated automatically from `echo $nc_file_in|sed 's%.*/%%'` by configure."
-  case "$nc_file" in
-  *Makefile*) nc_comsub="1i\\
-# $configure_input" ;;
-  *) nc_comsub= ;;
-  esac
-
-  nc_file_inputs=`echo $nc_file_in|sed -e "s%^%$nc_given_srcdir/%" -e "s%:% $nc_given_srcdir/%g"`
-  sed -e "$nc_comsub
-s%@configure_input@%$configure_input%g
-s%@nc_srcdir@%$nc_srcdir%g
-s%@nc_top_srcdir@%$nc_top_srcdir%g
-s%@INSTALL@%$NC_INSTALL%g
-" $nc_file_inputs | (eval "$nc_sed_cmds") > $nc_file
-fi; done
-rm -f conftest.s*
-
-# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
-# NAME is the cpp macro being defined and VALUE is the value it is being given.
-#
-# nc_d sets the value in "#define NAME VALUE" lines.
-nc_dA='s%^\([  ]*\)#\([        ]*define[       ][      ]*\)'
-nc_dB='\([     ][      ]*\)[^  ]*%\1#\2'
-nc_dC='\3'
-nc_dD='%g'
-# nc_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
-nc_uA='s%^\([  ]*\)#\([        ]*\)undef\([    ][      ]*\)'
-nc_uB='\([     ]\)%\1#\2define\3'
-nc_uC=' '
-nc_uD='\4%g'
-# nc_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
-nc_eA='s%^\([  ]*\)#\([        ]*\)undef\([    ][      ]*\)'
-nc_eB='$%\1#\2define\3'
-nc_eC=' '
-nc_eD='%g'
-
-NC_CONFIG_HEADERS="ncurses/ncurses_cfg.h:include/ncurses_cfg.hin"
-for nc_file in .. $NC_CONFIG_HEADERS; do if test "x$nc_file" != x..; then
-  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
-  case "$nc_file" in
-  *:*) nc_file_in=`echo "$nc_file"|sed 's%[^:]*:%%'`
-       nc_file=`echo "$nc_file"|sed 's%:.*%%'` ;;
-  *) nc_file_in="${nc_file}.in" ;;
-  esac
-
-  echo creating $nc_file
-
-  rm -f conftest.frag conftest.in conftest.out
-  nc_file_inputs=`echo $nc_file_in|sed -e "s%^%$nc_given_srcdir/%" -e "s%:% $nc_given_srcdir/%g"`
-  cat $nc_file_inputs > conftest.in
-
-  rm -f conftest.frag
-  cat >> conftest.frag <<CEOF
-
-#define CC_HAS_INLINE_FUNCS 1
-#define GCC_NORETURN __attribute__((noreturn))
-#define GCC_PRINTF 1
-#define GCC_SCANF 1
-#define GCC_UNUSED __attribute__((unused))
-#define GOOD_SELECT 1
-#define HAVE_BUILTIN_H 1
-#define HAVE_DIRENT_H 1
-#define HAVE_ERRNO 1
-#define HAVE_FCNTL_H 1
-#define HAVE_FORM_H 1
-#define HAVE_GETOPT_H 1
-CEOF
-  cat >> conftest.frag <<CEOF
-#define HAVE_GETTIMEOFDAY 1
-#define HAVE_GETTTYNAM 1
-#define HAVE_ISASCII 1
-#define HAVE_LIBFORM 1
-#define HAVE_LIBMENU 1
-#define HAVE_LIBPANEL 1
-#define HAVE_LIMITS_H 1
-#define HAVE_LINK 1
-#define HAVE_LOCALE_H 1
-#define HAVE_LONG_FILE_NAMES 1
-#define HAVE_MEMCCPY 1
-#define HAVE_MENU_H 1
-#define HAVE_NANOSLEEP 1
-#define HAVE_NC_ALLOC_H 1
-CEOF
-  cat >> conftest.frag <<CEOF
-#define HAVE_PANEL_H 1
-#define HAVE_POLL 1
-#define HAVE_POLL_H 1
-#define HAVE_REGEX_H_FUNCS 1
-#define HAVE_REMOVE 1
-#define HAVE_SELECT 1
-#define HAVE_SETBUF 1
-#define HAVE_SETBUFFER 1
-#define HAVE_SETVBUF 1
-#define HAVE_SIGACTION 1
-#define HAVE_SIGVEC 1
-#define HAVE_SIZECHANGE 1
-CEOF
-  cat >> conftest.frag <<CEOF
-#define HAVE_STRDUP 1
-#define HAVE_SYMLINK 1
-#define HAVE_SYS_IOCTL_H 1
-#define HAVE_SYS_PARAM_H 1
-#define HAVE_SYS_SELECT_H 1
-#define HAVE_SYS_TIMES_H 1
-#define HAVE_SYS_TIME_H 1
-#define HAVE_SYS_TIME_SELECT 1
-#define HAVE_TCGETATTR 1
-#define HAVE_TERMIOS_H 1
-#define HAVE_TERMIO_H 1
-#define HAVE_TIMES 1
-#define HAVE_TTYENT_H 1
-CEOF
-  cat >> conftest.frag <<CEOF
-#define HAVE_TYPEINFO 1
-#define HAVE_UNISTD_H 1
-#define HAVE_VALUES_H 1
-#define HAVE_VFSCANF 1
-#define HAVE_VSNPRINTF 1
-#define HAVE_VSSCANF 1
-#define NCURSES_EXT_FUNCS 1
-#define NDEBUG 1
-#define PURE_TERMINFO 1
-#define RETSIGTYPE void
-#define STDC_HEADERS 1
-CEOF
-  cat >> conftest.frag <<CEOF
-#define SYSTEM_NAME "linux-gnu"
-#define TYPEOF_CHTYPE long
-#define USE_DATABASE 1
-#define USE_HASHMAP 1
-#define USE_LINKS 1
-#define NCURSES_NO_PADDING 1
-#define USE_SIGWINCH 1
-CEOF
-  cat >> conftest.edit <<CEOF
-/@DEFS@/r conftest.frag
-/@DEFS@/d
-CEOF
-sed -f conftest.edit conftest.in > conftest.out
-rm -f conftest.in
-mv conftest.out conftest.in
-rm -f conftest.edit conftest.frag
-
-  rm -f conftest.frag conftest.h
-  echo "/* $nc_file.  Generated automatically by configure.  */" > conftest.h
-  cat conftest.in >> conftest.h
-  rm -f conftest.in
-  if cmp -s $nc_file conftest.h 2>/dev/null; then
-    echo "$nc_file is unchanged"
-    rm -f conftest.h
-  else
-    # Remove last slash and all that follows it.  Not all systems have dirname.
-      nc_dir=`echo $nc_file|sed 's%/[^/][^/]*$%%'`
-      if test "$nc_dir" != "$nc_file" && test "$nc_dir" != .; then
-      # The file is in a subdirectory.
-      test ! -d "$nc_dir" && mkdir "$nc_dir"
-    fi
-    rm -f $nc_file
-    mv conftest.h $nc_file
-  fi
-fi; done
-
-
-SYS_NAME=`uname -a`
-if test -z "$SYS_NAME"; then SYS_NAME=unknown;fi
-
-NC_AWK=awk
-BUILD_CC=${BUILD_CC-gcc}
-NC_CC="${BUILD_CC} -I${nc_given_srcdir}/ncurses -Incurses -I${nc_given_srcdir}/include"
-NC_CPP="${NC_CC} -E"
-CF_LIST_MODELS="normal"
-#WITH_ECHO="yes"
-#WITH_OVERWRITE="yes"
-nc_cxx_library="yes"
-cf_cv_systype="Linux"
-cf_cv_rel_version="4.2"
-cf_cv_abi_version="4"
-cf_cv_do_symlinks="yes"
-cf_cv_rm_so_locs="no"
-
-
-rm -f headers.sed headers.sh
-
-echo creating headers.sh
-cat >headers.sh <<NC_EOF
-#!/bin/sh
-# This shell script is generated by the 'configure' script.  It is invoked in a
-# subdirectory of the build tree.  It generates a sed-script in the parent
-# directory that is used to adjust includes for header files that reside in a
-# subdirectory of /usr/include, etc.
-PRG=""
-while test \$# != 3
-do
-PRG="\$PRG \$1"; shift
-done
-DST=\$1
-REF=\$2
-SRC=\$3
-echo installing \$SRC in \$DST
-case \$DST in
-/*/include/*)
-       TMP=\${TMPDIR-/tmp}/\`basename \$SRC\`
-       if test ! -f ../headers.sed ; then
-               END=\`basename \$DST\`
-               for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
-               do
-                       NAME=\`basename \$i\`
-                       echo "s/<\$NAME>/<\$END\/\$NAME>/" >> ../headers.sed
-               done
-       fi
-       rm -f \$TMP
-       sed -f ../headers.sed \$SRC > \$TMP
-       eval \$PRG \$TMP \$DST
-       rm -f \$TMP
-       ;;
-*)
-       eval \$PRG \$SRC \$DST
-       ;;
-esac
-NC_EOF
-
-chmod 0755 headers.sh
-
-echo creating ncurses/term.h
-${NC_AWK} -f ncurses/MKterm.h.awk ${nc_given_srcdir}/include/Caps > ncurses/term.h
-sh ${nc_given_srcdir}/include/edit_cfg.sh ncurses/ncurses_cfg.h ncurses/term.h
-
-echo creating ncurses/hashsize.h
-sh ${nc_given_srcdir}/include/MKhashsize.sh ${nc_given_srcdir}/include/Caps > ncurses/hashsize.h
-
-echo creating ncurses/parametrized.h
-sh ${nc_given_srcdir}/include/MKparametrized.sh ${nc_given_srcdir}/include/Caps > ncurses/parametrized.h
-
-echo creating ncurses/termsort.c
-sh ${nc_given_srcdir}/progs/MKtermsort.sh "${NC_AWK}" ${nc_given_srcdir}/include/Caps > ncurses/termsort.c
-
-echo creating ncurses/fallback.c
-sh ${nc_given_srcdir}/ncurses/tinfo/MKfallback.sh > ncurses/fallback.c
-
-echo creating ncurses/lib_gen.c
-sh ${nc_given_srcdir}/ncurses/base/MKlib_gen.sh "${NC_CPP}" "${NC_AWK}" < ncurses/curses.h > ncurses/lib_gen.c
-
-echo creating ncurses/nomacros.h
-sh ${nc_given_srcdir}/ncurses/base/MKlib_gen.sh "${NC_CPP}" "${NC_AWK}" < ncurses/curses.h | fgrep undef > ncurses/nomacros.h
-
-echo creating ncurses/expanded.c
-sh ${nc_given_srcdir}/ncurses/tty/MKexpanded.sh "${NC_CPP}" >ncurses/expanded.c
-
-echo creating ncurses/comp_captab.c
-${NC_CC} -o make_hash -DMAIN_PROGRAM ${nc_given_srcdir}/ncurses/tinfo/comp_hash.c
-sh ${nc_given_srcdir}/ncurses/tinfo/MKcaptab.awk "${NC_AWK}" ${nc_given_srcdir}/include/Caps > ncurses/comp_captab.c
-rm -f make_hash
-
-echo creating ncurses/lib_keyname.c
-${NC_AWK} -f ${nc_given_srcdir}/ncurses/base/MKkeyname.awk ${nc_given_srcdir}/ncurses/tinfo/keys.list > ncurses/lib_keyname.c
-
-echo creating ncurses/names.c and ncurses/codes.c
-${NC_AWK} -f ${nc_given_srcdir}/ncurses/tinfo/MKnames.awk ${nc_given_srcdir}/include/Caps
-cat namehdr boolnames boolfnames numnames numfnames strnames strfnames nameftr >ncurses/names.c
-cat namehdr boolcodes numcodes strcodes codeftr > ncurses/codes.c
-rm -f namehdr nameftr codeftr boolnames boolfnames boolcodes numnames numfnames numcodes strnames strfnames strcodes
-
-echo creating ncurses/init_keytry.h
-${NC_CC} -o make_key ${nc_given_srcdir}/ncurses/tinfo/make_keys.c
-./make_key ${nc_given_srcdir}/ncurses/keys.list > ncurses/init_keytry.h
-rm -f make_key
-
-echo creating ncurses/unctrl.c
-echo | ${NC_AWK} -f ${nc_given_srcdir}/ncurses/base/MKunctrl.awk > ncurses/unctrl.c
-echo creating ncurses/terminfo.5
-sh ${nc_given_srcdir}/man/MKterminfo.sh ${nc_given_srcdir}/man/terminfo.head ${nc_given_srcdir}/include/Caps ${nc_given_srcdir}/man/terminfo.tail > ncurses/terminfo.5
diff --git a/sysdeps/unix/sysv/linux/edit_man.sed b/sysdeps/unix/sysv/linux/edit_man.sed
deleted file mode 100644 (file)
index 163eb7b..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-s/captoinfo\.1m/captoinfo.1m/g
-s/clear\.1/clear.1m/g
-s/curs_addch\.3x/addch.3ncurses/g
-s/curs_addchstr\.3x/addchstr.3ncurses/g
-s/curs_addstr\.3x/addstr.3ncurses/g
-s/curs_attr\.3x/attr.3ncurses/g
-s/curs_beep\.3x/beep.3ncurses/g
-s/curs_bkgd\.3x/bkgd.3ncurses/g
-s/curs_border\.3x/border.3ncurses/g
-s/curs_clear\.3x/clear.3ncurses/g
-s/curs_color\.3x/color.3ncurses/g
-s/curs_delch\.3x/delch.3ncurses/g
-s/curs_deleteln\.3x/deleteln.3ncurses/g
-s/curs_getch\.3x/getch.3ncurses/g
-s/curs_getstr\.3x/getstr.3ncurses/g
-s/curs_getyx\.3x/getyx.3ncurses/g
-s/curs_inch\.3x/inch.3ncurses/g
-s/curs_inchstr\.3x/inchstr.3ncurses/g
-s/curs_initscr\.3x/initscr.3ncurses/g
-s/curs_inopts\.3x/inopts.3ncurses/g
-s/curs_insch\.3x/insch.3ncurses/g
-s/curs_insstr\.3x/insstr.3ncurses/g
-s/curs_instr\.3x/instr.3ncurses/g
-s/curs_kernel\.3x/kernel.3ncurses/g
-s/curs_mouse\.3x/mouse.3ncurses/g
-s/curs_move\.3x/move.3ncurses/g
-s/curs_outopts\.3x/outopts.3ncurses/g
-s/curs_overlay\.3x/overlay.3ncurses/g
-s/curs_pad\.3x/pad.3ncurses/g
-s/curs_print\.3x/print.3ncurses/g
-s/curs_printw\.3x/printw.3ncurses/g
-s/curs_refresh\.3x/refresh.3ncurses/g
-s/curs_scanw\.3x/scanw.3ncurses/g
-s/curs_scr_dmp\.3x/scr_dmp.3ncurses/g
-s/curs_scroll\.3x/scroll.3ncurses/g
-s/curs_slk\.3x/slk.3ncurses/g
-s/curs_termattrs\.3x/termattrs.3ncurses/g
-s/curs_termcap\.3x/termcap.3ncurses/g
-s/curs_terminfo\.3x/terminfo.3ncurses/g
-s/curs_touch\.3x/touch.3ncurses/g
-s/curs_util\.3x/util.3ncurses/g
-s/curs_window\.3x/window.3ncurses/g
-s/form\.3x/form.3form/g
-s/form_cursor\.3x/cursor.3form/g
-s/form_data\.3x/data.3form/g
-s/form_driver\.3x/driver.3form/g
-s/form_field\.3x/field.3form/g
-s/form_field_attributes\.3x/field_attributes.3form/g
-s/form_field_buffer\.3x/field_buffer.3form/g
-s/form_field_info\.3x/field_info.3form/g
-s/form_field_just\.3x/field_just.3form/g
-s/form_field_new\.3x/field_new.3form/g
-s/form_field_opts\.3x/field_opts.3form/g
-s/form_field_userptr\.3x/field_userptr.3form/g
-s/form_field_validation\.3x/field_validation.3form/g
-s/form_fieldtype\.3x/fieldtype.3form/g
-s/form_hook\.3x/hook.3form/g
-s/form_new\.3x/new.3form/g
-s/form_new_page\.3x/new_page.3form/g
-s/form_opts\.3x/opts.3form/g
-s/form_page\.3x/page.3form/g
-s/form_post\.3x/post.3form/g
-s/form_requestname\.3x/requestname.3form/g
-s/form_userptr\.3x/userptr.3form/g
-s/form_win\.3x/win.3form/g
-s/infocmp\.1m/infocmp.1m/g
-s/menu\.3x/menu.3menu/g
-s/menu_attribs\.3x/attribs.3menu/g
-s/menu_cursor\.3x/cursor.3menu/g
-s/menu_driver\.3x/driver.3menu/g
-s/menu_format\.3x/format.3menu/g
-s/menu_hook\.3x/hook.3menu/g
-s/menu_items\.3x/items.3menu/g
-s/menu_mark\.3x/mark.3menu/g
-s/menu_new\.3x/new.3menu/g
-s/menu_opts\.3x/opts.3menu/g
-s/menu_pattern\.3x/pattern.3menu/g
-s/menu_post\.3x/post.3menu/g
-s/menu_requestname\.3x/requestname.3menu/g
-s/menu_spacing\.3x/spacing.3menu/g
-s/menu_userptr\.3x/userptr.3menu/g
-s/menu_win\.3x/win.3menu/g
-s/mitem_current\.3x/menu_current.3menu/g
-s/mitem_name\.3x/menu_name.3menu/g
-s/mitem_new\.3x/menu_new.3menu/g
-s/mitem_opts\.3x/menu_opts.3menu/g
-s/mitem_userptr\.3x/menu_userptr.3menu/g
-s/mitem_value\.3x/menu_value.3menu/g
-s/mitem_visible\.3x/menu_visible.3menu/g
-s/ncurses\.3x/ncurses.3ncurses/g
-s/panel\.3x/panel.3curses/g
-s/resizeterm\.3x/resizeterm.3ncurses/g
-s/term\.5/term.5/g
-s/term\.7/term.7/g
-s/terminfo\.5/terminfo.5/g
-s/tic\.1m/tic.1m/g
-s/toe\.1m/toe.1m/g
-s/tput\.1/tput.1/g
-s/tset\.1/tset.1/g
-s/wresize\.3x/wresize.3ncurses/g
diff --git a/sysdeps/unix/sysv/linux/edit_man.sh b/sysdeps/unix/sysv/linux/edit_man.sh
deleted file mode 100755 (executable)
index 558fff8..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/sh
-# this script is generated by the configure-script
-prefix=$1
-shift
-mandir=$1
-shift
-edit_man_sed=$1
-shift
-
-datadir="${prefix}/share"
-MKDIRS="mkinstalldirs"
-INSTALL="/usr/bin/install -c"
-INSTALL_DATA="${INSTALL} -m 644"
-TMP=${TMPDIR-/tmp}/man$$
-trap "rm -f $TMP" 0 1 2 5 15
-
-for i in $*
-do
-case $i in
-*.[0-9]*)
-       section=`expr "$i" : '.*\.\([0-9]\)[xm]*'`;
-       if [ ! -d $mandir/man${section} ]; then
-               $MKDIRS $mandir/man$section
-       fi
-       source=`basename $i`
-       target=`grep "^$source" man/man_db.renames | awk '{print $2}'` 
-       if test -z "$target" ; then
-               echo '? missing rename for '$source
-               target="$source"
-       fi
-       target="$mandir/man$section/$target"
-       sed -e 's,@DATADIR@,$datadir,' < $i | sed -f ${edit_man_sed} >$TMP
-       echo installing $target
-       $INSTALL_DATA $TMP $target
-       ;;
-esac
-done 
diff --git a/sysdeps/unix/sysv/linux/run_tic.sh b/sysdeps/unix/sysv/linux/run_tic.sh
deleted file mode 100755 (executable)
index 2dccd56..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-#!/bin/sh
-##############################################################################
-# Copyright (c) 1998 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: Thomas E. Dickey <dickey@clark.net> 1996
-#
-# $Id: run_tic.sh,v 1.9 1998/02/11 12:14:03 tom Exp $
-# This script is used to install terminfo.src using tic.  We use a script
-# because the path checking is too awkward to do in a makefile.
-#
-# Parameters:
-#      $1 = the common object directory.
-#      $2 = source-directory, i.e., $(srcdir)
-#      $3 = destination-directory path, i.e., $(ticdir)
-#      $4 = install-prefix, if any
-#
-# Assumes:
-#      The leaf directory names (bin, lib, shared, tabset, terminfo)
-#
-echo '** Building terminfo database, please wait...'
-#
-# Parameter parsing is primarily for debugging.  The script is designed to
-# be run from the misc/Makefile as
-#      make install.data
-
-prefix=/usr
-if test $# != 0 ; then
-       common_objpfx=$1
-       shift
-fi
-
-if test $# != 0 ; then
-       srcdir=$1
-       shift
-else
-       srcdir=.
-fi
-
-if test $# != 0 ; then
-       ticdir=$1
-       shift
-else
-       ticdir=$prefix/share/terminfo
-fi
-
-if test $# != 0 ; then
-       IP=$1
-       shift
-else
-       IP=""
-fi
-
-TERMINFO=$IP$ticdir ; export TERMINFO
-umask 022
-
-# Construct the name of the old (obsolete) pathname, e.g., /usr/lib/terminfo.
-TICDIR=`echo $TERMINFO | sed -e 's/\/share\//\/lib\//'`
-
-# Remove the old terminfo stuff; we don't care if it existed before, and it
-# would generate a lot of confusing error messages if we tried to overwrite it.
-# We explicitly remove its contents rather than the directory itself, in case
-# the directory is actually a symbolic link.
-( rm -fr $TERMINFO/[0-9A-Za-z] 2>/dev/null )
-
-# If we're not installing into /usr/share/, we'll have to adjust the location
-# of the tabset files in terminfo.src (which are in a parallel directory).
-TABSET=`echo $ticdir | sed -e 's/\/terminfo$/\/tabset/'`
-SRC=$srcdir/terminfo.src
-if test "x$TABSET" != "x/usr/share/tabset" ; then
-       echo '** adjusting tabset paths'
-       TMP=${TMPDIR-/tmp}/$$
-       sed -e s:/usr/share/tabset:$TABSET:g $SRC >$TMP
-       trap "rm -f $TMP" 0 1 2 5 15
-       SRC=$TMP
-fi
-
-LD_LIBRARY_PATH=$common_objpfx:$common_objpfx/nss:$common_objpfx/ncurses \
-       $common_objpfx/elf/ld.so \
-       $common_objpfx/ncurses/tic -s $SRC
-if [ $? = 0 ]
-then
-       echo '** built new '$TERMINFO
-else
-       echo '? tic could not build '$TERMINFO
-       exit 1
-fi
-
-# Make a symbolic link to provide compatibility with applications that expect
-# to find terminfo under /usr/lib.  That is, we'll _try_ to do that.  Not
-# all systems support symbolic links, and those that do provide a variety
-# of options for 'test'.
-if test "$TICDIR" != "$TERMINFO" ; then
-       ( rm -f $TICDIR 2>/dev/null )
-       if ( cd $TICDIR 2>/dev/null )
-       then
-               cd $TICDIR
-               TICDIR=`pwd`
-               if test $TICDIR != $TERMINFO ; then
-                       # Well, we tried.  Some systems lie to us, so the
-                       # installer will have to double-check.
-                       echo "Verify if $TICDIR and $TERMINFO are the same."
-                       echo "The new terminfo is in $TERMINFO; the other should be a link to it."
-                       echo "Otherwise, remove $TICDIR and link it to $TERMINFO."
-               fi
-       else
-               cd $IP$prefix
-               # Construct a symbolic link that only assumes $ticdir has the
-               # same $prefix as the other installed directories.
-               RELATIVE=`echo $ticdir|sed -e 's:^'$prefix'/::'`
-               if test "$RELATIVE" != "$ticdir" ; then
-                       RELATIVE=../`echo $ticdir|sed -e 's:^'$prefix'/::' -e 's:^/::'`
-               fi
-               if ( ln -s $RELATIVE $TICDIR )
-               then
-                       echo '** linked '$TICDIR' for compatibility'
-               fi
-       fi
-fi
index 3fe2cab0cd98559e5932a323460317a6c01e2d17..a82110587f80ed1ba1de24a4488d10192b1baaee 100644 (file)
@@ -1,6 +1,9 @@
 
 Current history:
 
+2003/10/18     1.01    Fix some logic in pad.c, improve bce test.
+2003/09/20             Modified to allow running from compiled-in terminfo.
+2001/10/20             Make menu titles agree with descriptions.
 2000/03/04             Fix a few spelling errors
 1999/09/04             Minor fix to build/link on BeOS
 1999/05/16             Minor fix to build/link on CLIX
index 732da7f96e7668187afcf3461decf2abba82fca5..dd7b8b2ed10b5ce854fa8db4adf3b73cf4f007a5 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: Makefile.in,v 1.27 2001/12/08 18:48:01 tom Exp $
+# $Id: Makefile.in,v 1.31 2003/11/01 22:46:24 tom Exp $
 # Makefile for tack
 #
 # The variable 'srcdir' refers to the source-distribution, and can be set with
@@ -15,7 +15,9 @@ THIS          = Makefile
 
 CF_MFLAGS      = @cf_cv_makeflags@
 @SET_MAKE@
-x              = @PROG_EXT@
+
+x              = @EXEEXT@
+o              = .@OBJEXT@
 
 MODEL          = ../@DFT_OBJ_SUBDIR@
 DESTDIR                = @DESTDIR@
@@ -29,6 +31,11 @@ includedir   = @includedir@
 datadir                = @datadir@
 
 LIBTOOL                = @LIBTOOL@
+LIBTOOL_CLEAN  = @LIB_CLEAN@
+LIBTOOL_COMPILE        = @LIB_COMPILE@
+LIBTOOL_LINK   = @LIB_LINK@
+LIBTOOL_INSTALL        = @LIB_INSTALL@
+LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
 
 INSTALL                = @INSTALL@
 INSTALL_PROGRAM        = @INSTALL_PROGRAM@
@@ -55,15 +62,15 @@ CFLAGS_SHARED       = $(CCFLAGS) @CC_SHARED_OPTS@
 CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
 
 LD             = @LD@
-LINK           = @LINK_PROGS@ $(LIBTOOL) $(CC)
+LINK           = @LINK_PROGS@ $(LIBTOOL_LINK) $(CC)
 LDFLAGS                = @EXTRA_LDFLAGS@ \
                @PROG_ARGS@ @LDFLAGS@ @LD_MODEL@ @LIBS@ @EXTRA_LIBS@
 
-LDFLAGS_LIBTOOL        = $(LDFLAGS)
-LDFLAGS_NORMAL = $(LDFLAGS)
-LDFLAGS_DEBUG  = $(LDFLAGS) @CC_G_OPT@
-LDFLAGS_PROFILE        = $(LDFLAGS) -pg
-LDFLAGS_SHARED = $(LDFLAGS) @LD_SHARED_OPTS@
+LDFLAGS_LIBTOOL        = $(LDFLAGS) $(CFLAGS_LIBTOOL)
+LDFLAGS_NORMAL = $(LDFLAGS) $(CFLAGS_NORMAL)
+LDFLAGS_DEBUG  = $(LDFLAGS) $(CFLAGS_DEBUG)
+LDFLAGS_PROFILE        = $(LDFLAGS) $(CFLAGS_PROFILE)
+LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
 
 LDFLAGS_DEFAULT        = $(LDFLAGS_@DFT_UPR_MODEL@)
 
@@ -92,11 +99,11 @@ uninstall.libs:
 install.tack: $(PROGS) \
        $(DESTDIR)$(bindir) \
        $(DESTDIR)$(mandir)
-       $(LIBTOOL) $(INSTALL_PROGRAM) tack$x $(DESTDIR)$(bindir)/tack$x
+       $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) tack$x $(DESTDIR)$(bindir)/tack$x
        $(INSTALL_DATA) $(srcdir)/tack.1 $(DESTDIR)$(mandir)/tack.1
 
 uninstall.tack:
-       -@$(LIBTOOL) rm -f $(DESTDIR)$(bindir)/tack$x
+       -@$(LIBTOOL_UNINSTALL) rm -f $(DESTDIR)$(bindir)/tack$x
        -@rm -f $(DESTDIR)$(mandir)/tack.1
 
 $(DESTDIR)$(bindir) \
@@ -108,22 +115,22 @@ $(DESTDIR)$(mandir) :
 #
 
 DEPS_TACK = \
-       $(MODEL)/ansi.o \
-       $(MODEL)/charset.o \
-       $(MODEL)/color.o \
-       $(MODEL)/control.o \
-       $(MODEL)/crum.o \
-       $(MODEL)/edit.o \
-       $(MODEL)/fun.o \
-       $(MODEL)/init.o \
-       $(MODEL)/menu.o \
-       $(MODEL)/modes.o \
-       $(MODEL)/output.o \
-       $(MODEL)/pad.o \
-       $(MODEL)/scan.o \
-       $(MODEL)/sync.o \
-       $(MODEL)/sysdep.o \
-       $(MODEL)/tack.o
+       $(MODEL)/ansi$o \
+       $(MODEL)/charset$o \
+       $(MODEL)/color$o \
+       $(MODEL)/control$o \
+       $(MODEL)/crum$o \
+       $(MODEL)/edit$o \
+       $(MODEL)/fun$o \
+       $(MODEL)/init$o \
+       $(MODEL)/menu$o \
+       $(MODEL)/modes$o \
+       $(MODEL)/output$o \
+       $(MODEL)/pad$o \
+       $(MODEL)/scan$o \
+       $(MODEL)/sync$o \
+       $(MODEL)/sysdep$o \
+       $(MODEL)/tack$o
 
 tack$x: $(DEPS_TACK) $(DEPS_CURSES)
        @ECHO_LINK@ $(LINK) $(DEPS_TACK) $(LDFLAGS_DEFAULT) -o $@
@@ -142,6 +149,7 @@ mostlyclean ::
        -rm -f core tags TAGS *~ *.bak *.i *.atac trace
 
 clean :: mostlyclean
+       -sh -c "if test -n '$x' ; then $(MAKE) clean x=''; fi"
        -rm -f $(PROGS)
        -rm -rf .libs
 
index 479081c9fb38a7b4a9910566cb7ddc9fdd39ca12..17f71f0b4e62ed7c9f7c279504fdfe0bd4934a0c 100644 (file)
@@ -1,18 +1,18 @@
 /*
 ** Copyright (C) 1991, 1997 Free Software Foundation, Inc.
-** 
+**
 ** This file is part of TACK.
-** 
+**
 ** TACK is free software; you can redistribute it and/or modify
 ** it under the terms of the GNU General Public License as published by
 ** the Free Software Foundation; either version 2, or (at your option)
 ** any later version.
-** 
+**
 ** TACK is distributed in the hope that it will be useful,
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ** GNU General Public License for more details.
-** 
+**
 ** You should have received a copy of the GNU General Public License
 ** along with TACK; see the file COPYING.  If not, write to
 ** the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
@@ -21,7 +21,7 @@
 
 #include <tack.h>
 
-MODULE_ID("$Id: color.c,v 1.2 2000/03/04 21:05:54 tom Exp $")
+MODULE_ID("$Id: color.c,v 1.5 2004/01/16 23:14:25 Jochen.Voss Exp $")
 
 /*
  * Color terminal tests.  Has only one entry point: test_color().
@@ -84,6 +84,12 @@ static int a_bright_color, bright_value;
 static int cookie_monster, color_step, colors_per_line;
 static int R, G, B;
 
+static void reset_colors(void)
+{
+       tc_putp(orig_colors);
+       tc_putp(tparm(orig_pair));
+}
+
 static int
 color_trans(int c)
 {                              /* translate or load the color */
@@ -405,6 +411,7 @@ ncv_display(int m)
        put_str(alt_modes[m].name);
        eat_cookie();
        set_attr(0);
+       reset_colors();
        put_crlf();
 }
 
@@ -517,10 +524,7 @@ color_setf(
        }
        /* initialize the color palette */
        pairs_used = max_colors >= 8 ? 8 : max_colors;
-       if (can_change) {
-               tc_putp(orig_colors);
-       }
-       tc_putp(tparm(orig_pair));
+       reset_colors();
        new_color(COLOR_WHITE, COLOR_BLACK, FALSE);
 
        ptextln("(setf) (setb) (scp) The following colors are predefined:");
@@ -528,8 +532,8 @@ color_setf(
        put_crlf();
        j = max_colors > 8 ? 8 : max_colors;
        /*
-          the black on white test is the same as the white on black test.
-       */
+        * the black on white test is the same as the white on black test.
+        */
        for (i = 1; i < j; i++) {
                putchp('0' + def_colors[i].index);
                putchp(' ');
@@ -547,6 +551,7 @@ color_setf(
                new_color(COLOR_WHITE, COLOR_BLACK, FALSE);
                put_crlf();
        }
+       reset_colors();
        put_crlf();
        generic_done_message(t, state, ch);
 }
@@ -589,10 +594,10 @@ color_matrix(
                }
                for (j = 0; j < matrix_area; j++) {
                        if (j % matrix_size == 0) {
-                               tc_putp(tparm(orig_pair));
+                               reset_colors();
                                put_crlf();
                                if (brightness) {
-                                       tc_putp(exit_standout_mode);
+                                       tc_putp(exit_attribute_mode);
                                }
                                (void) sprintf(temp, "%-8s", def_colors[j / matrix_size].name);
                                put_str(temp);
@@ -605,9 +610,9 @@ color_matrix(
                                FALSE);
                        put_str("  Hello ");
                }
-               tc_putp(tparm(orig_pair));
+               reset_colors();
                if (brightness) {
-                       tc_putp(exit_standout_mode);
+                       tc_putp(exit_attribute_mode);
                }
                put_crlf();
        }
@@ -649,7 +654,7 @@ color_ncv(
                        }
                }
        }
-       tc_putp(orig_pair);
+       reset_colors();
        put_crlf();
        generic_done_message(t, state, ch);
 }
@@ -665,11 +670,11 @@ color_bce(
        int *state,
        int *ch)
 {
-       new_color(COLOR_BLACK, COLOR_WHITE, FALSE);
+       new_color(COLOR_CYAN, COLOR_BLUE, FALSE);
        put_clear();
        put_newlines(2);
-       new_color(COLOR_WHITE, COLOR_BLACK, FALSE);
-       ptextln("If the two lines above are black then back_color_erase (bce) should be false.");
+       reset_colors();
+       ptextln("If the two lines above are blue then back_color_erase (bce) should be true.");
        sprintf(temp, "(bce) is %s in the data base.", back_color_erase ? "true" : "false");
        ptextln(temp);
        generic_done_message(t, state, ch);
@@ -693,7 +698,7 @@ color_ccc(
                generic_done_message(t, state, ch);
                return;
        }
-       tc_putp(orig_colors);
+       reset_colors();
        pairs_used = 0;
        new_color(COLOR_WHITE, COLOR_BLACK, FALSE);
        sprintf(temp, "Reloading colors (init%c) using %s method",
@@ -721,8 +726,7 @@ color_ccc(
        }
        generic_done_message(t, state, ch);
        if (*ch != 0 && *ch != 'n') {
-               tc_putp(orig_colors);
-               tc_putp(tparm(orig_pair));
+               reset_colors();
                return;
        }
 
@@ -756,12 +760,10 @@ color_ccc(
        }
        generic_done_message(t, state, ch);
        if (*ch != 0 && *ch != 'n') {
-               tc_putp(orig_colors);
-               tc_putp(tparm(orig_pair));
+               reset_colors();
                return;
        }
        dump_colors();
-       tc_putp(orig_colors);
-       tc_putp(tparm(orig_pair));
+       reset_colors();
        generic_done_message(t, state, ch);
 }
index 8a2e44fa3cc5dade99b45ab75de99094d6c6f0f6..ee9d70139808f6152068384e1807fbf77502a30f 100644 (file)
@@ -22,7 +22,7 @@
 
 #include <tack.h>
 
-MODULE_ID("$Id: init.c,v 1.3 2001/06/16 17:54:19 tom Exp $")
+MODULE_ID("$Id: init.c,v 1.4 2003/09/20 19:40:57 tom Exp $")
 
 #if NCURSES_VERSION_MAJOR >= 5 || NCURSES_VERSION_PATCH >= 981219
 #define _nc_get_curterm(p) _nc_get_tty_mode(p)
@@ -196,9 +196,17 @@ curses_setup(
        ncurses starts scanning the termcap file.
        **/
        if ((status = _nc_read_entry(tty_basename, tty_filename, &term)) == 0) {
-               fprintf(stderr, "Terminal not found: TERM=%s\n", tty_basename);
-               show_usage(exec_name);
-               exit(1);
+               const TERMTYPE *fallback = _nc_fallback(tty_basename);
+
+               if (fallback) {
+                   term = *fallback;
+                   sprintf(tty_filename, "(fallback)%s", tty_basename);
+                   status = 1;
+               } else {
+                   fprintf(stderr, "Terminal not found: TERM=%s\n", tty_basename);
+                   show_usage(exec_name);
+                   exit(1);
+               }
        }
        if (status == -1) {
                fprintf(stderr, "Terminfo database is inaccessible\n");
index 5825bea8e960f95b0efdc2b151838d5d27923c32..208210a267d3b38e41ef4c99f97d4bcbe81a5acf 100644 (file)
@@ -23,7 +23,7 @@
 #include <tack.h>
 #include <time.h>
 
-MODULE_ID("$Id: output.c,v 1.7 2001/06/18 18:44:40 tom Exp $")
+MODULE_ID("$Id: output.c,v 1.8 2003/10/25 20:43:43 tom Exp $")
 
 /* globals */
 long char_sent;                        /* number of characters sent */
@@ -186,9 +186,9 @@ tt_putp(const char *string)
 }
 
 /*
-**     tt_putparm(string, reps, arg1, arg2, ...)
+**     tt_putparm(string, reps, arg1, arg2)
 **
-**     Send tt_tputs(tparm(string, args...), reps)
+**     Send tt_tputs(tparm(string, args1, arg2), reps)
 **     Use this function inside timing tests.
 */
 void
index 980258c46f8a7af979473a4c036c945f2813286e..30ecf4b403c021fb56bdaaae730074f71cd759c9 100644 (file)
@@ -21,7 +21,7 @@
 
 #include <tack.h>
 
-MODULE_ID("$Id: pad.c,v 1.2 2000/03/04 21:04:58 tom Exp $")
+MODULE_ID("$Id: pad.c,v 1.3 2003/10/18 22:11:29 tom Exp $")
 
 /* test the pad counts on the terminal */
 
@@ -1274,7 +1274,7 @@ pad_rin(
        do {
                sprintf(temp, "%d\r", test_complete);
                put_str(temp);
-               if (scroll_reverse && augment == 1) {
+               if (scroll_reverse && repeats == 1) {
                        tt_putp(scroll_reverse);
                } else {
                        tt_putparm(parm_rindex, repeats, repeats, 0);
@@ -1345,7 +1345,7 @@ pad_il(
                }
        } while(still_testing());
        put_str("This line should be on the bottom.\r");
-       if (scroll_reverse && augment == 1) {
+       if (insert_line && augment == 1) {
                for (i = 1; i < lines; i++) {
                        tt_putp(insert_line);
                }
@@ -1386,8 +1386,13 @@ pad_indn(
                start_message = "(indn) Scroll-forward-n-lines start testing";
        } else {
                /* ind */
-               if (!scroll_forward && over_strike) {
+               if (!scroll_forward) {
                        CAP_NOT_FOUND;
+                       ptext("(ind) Scroll-forward not present.  ");
+                       pad_done_message(t, state, ch);
+                       return;
+               }
+               if (over_strike) {
                        ptext("(ind) Scroll-forward not tested on overstrike terminals.  ");
                        pad_done_message(t, state, ch);
                        return;
@@ -1404,14 +1409,14 @@ pad_indn(
        do {
                sprintf(temp, "%d\r", test_complete);
                put_str(temp);
-               if (augment > 1) {
-                       tt_putparm(parm_index, repeats, repeats, 0);
-               } else {
+               if (scroll_forward && repeats == 1) {
                        put_ind();
+               } else {
+                       tt_putparm(parm_index, repeats, repeats, 0);
                }
        } while(still_testing());
        put_str("This line should be on the top.\r");
-       if (augment == 1) {
+       if (scroll_forward && augment == 1) {
                for (i = 1; i < lines; i++) {
                        put_ind();
                }
@@ -1466,26 +1471,26 @@ pad_dl(
        pad_test_startup(1);
        do {
                sprintf(temp, "%d\r", test_complete);
-               if ((i & 0x7f) == 0 && augment < lines - 1) {
+               if (augment < lines - 1) {
                        go_home();
                        putln(temp);
                }
                put_str(temp);
-               if (repeats || !delete_line) {
-                       tt_putparm(parm_delete_line, repeats, repeats, 0);
-               } else {
+               if (delete_line && repeats == 1) {
                        tt_putp(delete_line);
+               } else {
+                       tt_putparm(parm_delete_line, repeats, repeats, 0);
                }
        } while(still_testing());
        home_down();
        put_str("This line should be on the top.");
        go_home();
-       if (repeats || !delete_line) {
-               tt_putparm(parm_delete_line, lines - 1, lines - 1, 0);
-       } else {
+       if (delete_line && augment == 1) {
                for (i = 1; i < lines; i++) {
                        tt_putp(delete_line);
                }
+       } else {
+               tt_putparm(parm_delete_line, lines - 1, lines - 1, 0);
        }
        sprintf(temp, "\nDelete %d line%s.  ", augment,
                augment == 1 ? "" : "s");
index daca1e12c4890a5c6779a40f42bee40496f874a2..f8b244ce69e7f2df2ae29738347c6a4e662ef59f 100644 (file)
@@ -19,7 +19,7 @@
 ** Boston, MA 02111-1307, USA.
 */
 
-/* $Id: tack.h,v 1.9 2001/06/18 18:44:49 tom Exp $ */
+/* $Id: tack.h,v 1.10 2003/10/18 22:26:59 tom Exp $ */
 
 #ifndef NCURSES_TACK_H_incl
 #define NCURSES_TACK_H_incl 1
@@ -27,7 +27,7 @@
 /* terminfo action checker include file */
 
 #define MAJOR_VERSION 1
-#define MINOR_VERSION 0
+#define MINOR_VERSION 1
 
 #ifdef HAVE_CONFIG_H
 #include <ncurses_cfg.h>
index 4e45bc34ed3314dd481734e994970d324bd7959c..3df1bc11169e6a77f178abca7ec733dbb092c3ea 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
-# $Id: tar-copy.sh,v 1.3 1998/02/11 12:14:03 tom Exp $
+# $Id: tar-copy.sh,v 1.5 2003/10/25 14:40:07 tom Exp $
 ##############################################################################
-# Copyright (c) 1998 Free Software Foundation, Inc.                          #
+# Copyright (c) 1998,2003 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"), #
@@ -28,7 +28,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1997,1998
+# Author: Thomas E. Dickey
 #
 # Copy a collection of files using 'tar', so that their dates and links are
 # preserved
@@ -55,16 +55,23 @@ fi
 WD=`pwd`
 
 TMP=$WD/copy$$
-trap "rm -f $TMP" 0 1 2 5 15
 
 cd $2
-if ( tar cf $TMP $1 )
+TEST=`ls -d $1 2>/dev/null`
+if test -z "$TEST"
 then
-       cd $3
-       LIST=`tar tf $TMP 2>&1`
-       $DOIT rm -rf $LIST 2>/dev/null
-       $DOIT tar xvf $TMP
+       echo "... no match for \"$1\" in $2"
 else
-       echo "Cannot create tar of $1 files"
-       exit 1
+       echo "... installing files matching \"$1\" in $2"
+       trap "rm -f $TMP" 0 1 2 5 15
+       if ( tar cf $TMP $1 )
+       then
+               cd $3
+               LIST=`tar tf $TMP 2>&1`
+               $DOIT rm -rf $LIST 2>/dev/null
+               $DOIT tar xvf $TMP
+       else
+               echo "Cannot create tar of $1 files"
+               exit 1
+       fi
 fi
index 833b57f7a0914dfbbf644ce3186ebca2811cbce1..e5cb748188fc22408942703557d75ea1295771f0 100644 (file)
@@ -1,6 +1,6 @@
-# $Id: Makefile.in,v 1.63 2002/02/03 00:54:10 china Exp $
+# $Id: Makefile.in,v 1.77 2003/12/07 01:36:16 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,1999,2000,2001 Free Software Foundation, Inc.           #
+# Copyright (c) 1998-2002,2003 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"), #
@@ -27,7 +27,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997,1998
+# Author: Thomas E. Dickey 1996-2002
 #
 # Makefile for ncurses tests.
 
 
 SHELL          = /bin/sh
 
-x              = @PROG_EXT@
+@SET_MAKE@
+
+x              = @EXEEXT@
+o              = .@OBJEXT@
 
 MODEL          = ../@DFT_OBJ_SUBDIR@
 srcdir         = @srcdir@
@@ -46,12 +49,15 @@ libdir              = @libdir@
 includedir     = @includedir@
 
 LIBTOOL                = @LIBTOOL@
+LIBTOOL_CLEAN  = @LIB_CLEAN@
+LIBTOOL_COMPILE        = @LIB_COMPILE@
+LIBTOOL_LINK   = @LIB_LINK@
 
 CC             = @CC@
 CPP            = @CPP@
 
 CFLAGS         = @CFLAGS@
-CPPFLAGS       =  -I../test -I$(srcdir) @CPPFLAGS@ -DHAVE_CONFIG_H
+CPPFLAGS       =  -I../test -I$(srcdir) -DHAVE_CONFIG_H @CPPFLAGS@
 
 CCFLAGS                = $(CPPFLAGS) $(CFLAGS)
 
@@ -69,15 +75,15 @@ LOCAL_LIBS  = @TEST_DEPS@
 MATH_LIB       = @MATH_LIB@
 
 LD             = @LD@
-LINK           = @LINK_TESTS@ $(LIBTOOL) $(CC) $(CFLAGS)
+LINK           = @LINK_TESTS@ $(LIBTOOL_LINK) $(CC) $(CFLAGS)
 
 LDFLAGS                = @LD_MODEL@ @TEST_ARGS@ @LIBS@ @EXTRA_LIBS@ @LOCAL_LDFLAGS@ @LDFLAGS@
 
-LDFLAGS_LIBTOOL        = $(LDFLAGS)
-LDFLAGS_NORMAL = $(LDFLAGS)
-LDFLAGS_DEBUG  = $(LDFLAGS) @CC_G_OPT@
-LDFLAGS_PROFILE        = $(LDFLAGS) -pg
-LDFLAGS_SHARED = $(LDFLAGS) @LD_SHARED_OPTS@
+LDFLAGS_LIBTOOL        = $(LDFLAGS) $(CFLAGS_LIBTOOL)
+LDFLAGS_NORMAL = $(LDFLAGS) $(CFLAGS_NORMAL)
+LDFLAGS_DEBUG  = $(LDFLAGS) $(CFLAGS_DEBUG)
+LDFLAGS_PROFILE        = $(LDFLAGS) $(CFLAGS_PROFILE)
+LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
 
 LDFLAGS_DEFAULT        = $(LDFLAGS_@DFT_UPR_MODEL@)
 
@@ -86,9 +92,16 @@ LINT_OPTS    = @LINT_OPTS@
 LINT_LIBS      = -lform -lmenu -lpanel -lncurses @LIBS@
 
 TESTS = \
+       background$x \
        blue$x \
        bs$x \
        cardfile$x \
+       color_set$x \
+       demo_defkey$x \
+       demo_forms$x \
+       demo_keyok$x \
+       demo_menus$x \
+       demo_panels$x \
        ditto$x \
        dots$x \
        filter$x \
@@ -97,13 +110,15 @@ TESTS = \
        gdc$x \
        hanoi$x \
        hashtest$x \
+       ins_wide$x \
+       inserts$x \
        keynames$x \
        knight$x \
        lrtest$x \
        ncurses$x \
        newdemo$x \
-       rain$x \
        railroad$x \
+       rain$x \
        tclock$x \
        testaddch$x \
        testcurs$x \
@@ -116,80 +131,107 @@ all: $(TESTS)
 
 sources:
 
-blue$x: $(MODEL)/blue.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/blue.o $(LDFLAGS_DEFAULT)
+background$x: $(MODEL)/background$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/background$o $(LDFLAGS_DEFAULT)
+
+blue$x: $(MODEL)/blue$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/blue$o $(LDFLAGS_DEFAULT)
+
+bs$x: $(MODEL)/bs$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/bs$o $(LDFLAGS_DEFAULT)
+
+cardfile$x: $(MODEL)/cardfile$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/cardfile$o $(LDFLAGS_DEFAULT)
+
+color_set$x: $(MODEL)/color_set$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/color_set$o $(LDFLAGS_DEFAULT)
 
-bs$x: $(MODEL)/bs.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/bs.o $(LDFLAGS_DEFAULT)
+demo_defkey$x: $(MODEL)/demo_defkey$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/demo_defkey$o $(LDFLAGS_DEFAULT)
 
-cardfile$x: $(MODEL)/cardfile.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/cardfile.o $(LDFLAGS_DEFAULT)
+demo_forms$x: $(MODEL)/demo_forms$o $(MODEL)/edit_field$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/demo_forms$o $(MODEL)/edit_field$o $(LDFLAGS_DEFAULT)
 
-ditto$x: $(MODEL)/ditto.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/ditto.o $(LDFLAGS_DEFAULT)
+demo_keyok$x: $(MODEL)/demo_keyok$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/demo_keyok$o $(LDFLAGS_DEFAULT)
 
-dots$x: $(MODEL)/dots.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/dots.o $(LDFLAGS_DEFAULT)
+demo_menus$x: $(MODEL)/demo_menus$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/demo_menus$o $(LDFLAGS_DEFAULT)
 
-filter$x: $(MODEL)/filter.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/filter.o $(LDFLAGS_DEFAULT)
+demo_panels$x: $(MODEL)/demo_panels$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/demo_panels$o $(LDFLAGS_DEFAULT)
 
-firework$x: $(MODEL)/firework.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/firework.o $(LDFLAGS_DEFAULT)
+ditto$x: $(MODEL)/ditto$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/ditto$o $(LDFLAGS_DEFAULT)
 
-firstlast$x: $(MODEL)/firstlast.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/firstlast.o $(LDFLAGS_DEFAULT)
+dots$x: $(MODEL)/dots$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/dots$o $(LDFLAGS_DEFAULT)
 
-gdc$x: $(MODEL)/gdc.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/gdc.o $(LDFLAGS_DEFAULT)
+filter$x: $(MODEL)/filter$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/filter$o $(LDFLAGS_DEFAULT)
 
-hanoi$x: $(MODEL)/hanoi.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/hanoi.o $(LDFLAGS_DEFAULT)
+firework$x: $(MODEL)/firework$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/firework$o $(LDFLAGS_DEFAULT)
 
-hashtest$x: $(MODEL)/hashtest.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/hashtest.o $(LDFLAGS_DEFAULT)
+firstlast$x: $(MODEL)/firstlast$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/firstlast$o $(LDFLAGS_DEFAULT)
 
-keynames$x: $(MODEL)/keynames.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/keynames.o $(LDFLAGS_DEFAULT)
+gdc$x: $(MODEL)/gdc$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/gdc$o $(LDFLAGS_DEFAULT)
 
-knight$x: $(MODEL)/knight.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/knight.o $(LDFLAGS_DEFAULT)
+hanoi$x: $(MODEL)/hanoi$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/hanoi$o $(LDFLAGS_DEFAULT)
 
-lrtest$x: $(MODEL)/lrtest.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/lrtest.o $(LDFLAGS_DEFAULT)
+hashtest$x: $(MODEL)/hashtest$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/hashtest$o $(LDFLAGS_DEFAULT)
 
-ncurses$x: $(MODEL)/ncurses.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/ncurses.o $(LDFLAGS_DEFAULT)
+inserts$x: $(MODEL)/inserts$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/inserts$o $(LDFLAGS_DEFAULT)
 
-newdemo$x: $(MODEL)/newdemo.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/newdemo.o $(LDFLAGS_DEFAULT)
+ins_wide$x: $(MODEL)/ins_wide$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/ins_wide$o $(LDFLAGS_DEFAULT)
 
-rain$x: $(MODEL)/rain.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/rain.o $(LDFLAGS_DEFAULT)
+keynames$x: $(MODEL)/keynames$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/keynames$o $(LDFLAGS_DEFAULT)
 
-railroad$x: $(MODEL)/railroad.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/railroad.o $(LDFLAGS_DEFAULT)
+knight$x: $(MODEL)/knight$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/knight$o $(LDFLAGS_DEFAULT)
 
-tclock$x: $(MODEL)/tclock.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/tclock.o $(LDFLAGS_DEFAULT) $(MATH_LIB)
+lrtest$x: $(MODEL)/lrtest$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/lrtest$o $(LDFLAGS_DEFAULT)
 
-testaddch$x: $(MODEL)/testaddch.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/testaddch.o $(LDFLAGS_DEFAULT)
+ncurses$x: $(MODEL)/ncurses$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/ncurses$o $(LDFLAGS_DEFAULT)
 
-testcurs$x: $(MODEL)/testcurs.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/testcurs.o $(LDFLAGS_DEFAULT)
+newdemo$x: $(MODEL)/newdemo$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/newdemo$o $(LDFLAGS_DEFAULT)
 
-testscanw$x: $(MODEL)/testscanw.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/testscanw.o $(LDFLAGS_DEFAULT)
+rain$x: $(MODEL)/rain$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/rain$o $(LDFLAGS_DEFAULT)
 
-view$x: $(MODEL)/view.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/view.o $(LDFLAGS_DEFAULT)
+railroad$x: $(MODEL)/railroad$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/railroad$o $(LDFLAGS_DEFAULT)
 
-worm$x: $(MODEL)/worm.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/worm.o $(LDFLAGS_DEFAULT)
+tclock$x: $(MODEL)/tclock$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/tclock$o $(LDFLAGS_DEFAULT) $(MATH_LIB)
 
-xmas$x: $(MODEL)/xmas.o $(LOCAL_LIBS)
-       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/xmas.o $(LDFLAGS_DEFAULT)
+testaddch$x: $(MODEL)/testaddch$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/testaddch$o $(LDFLAGS_DEFAULT)
+
+testcurs$x: $(MODEL)/testcurs$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/testcurs$o $(LDFLAGS_DEFAULT)
+
+testscanw$x: $(MODEL)/testscanw$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/testscanw$o $(LDFLAGS_DEFAULT)
+
+view$x: $(MODEL)/view$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/view$o $(LDFLAGS_DEFAULT)
+
+worm$x: $(MODEL)/worm$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/worm$o $(LDFLAGS_DEFAULT)
+
+xmas$x: $(MODEL)/xmas$o $(LOCAL_LIBS)
+       @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/xmas$o $(LDFLAGS_DEFAULT)
 
 libs \
 install \
@@ -204,7 +246,8 @@ mostlyclean ::
        -rm -f core tags TAGS *~ *.bak *.i *.ln *.atac trace
 
 clean :: mostlyclean
-       -rm -rf *.o screendump *.lis $(TESTS) .libs
+       -sh -c "if test -n '$x' ; then $(MAKE) clean x=''; fi"
+       -rm -rf *$o screendump *.lis $(TESTS) .libs
 
 distclean :: clean
        -rm -f Makefile ncurses_cfg.h config.*
@@ -213,9 +256,3 @@ realclean :: distclean
 
 lint:
        sh -c 'for N in $(TESTS); do echo LINT:$$N; $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/$$N.c $(LINT_LIBS); done'
-
-# Use this to get a list of test-programs for the standalone configure script.
-echo_tests :
-       @echo "$(TESTS)"
-echo_suffix :
-       @echo "$x"
index cd1767a179b264c7532dce3800594d6e424525e3..6c730e0c16dc91d1783b32ceb07ebbce4dc6e0e8 100644 (file)
@@ -1,3 +1,6 @@
+-- $Id: README,v 1.15 2003/07/05 19:17:49 tom Exp $
+-------------------------------------------------------------------------------
+
 The programs in this directory are designed to test your newest toy :-)
 Check the sources for any further details.
 
@@ -20,3 +23,601 @@ The bs and knight games demonstrate processing of mouse events under xterm.
 This directory also contains:
 
 tracemunch - Perl script to crunch trace scripts to make them easier to read
+
+-------------------------------------------------------------------------------
+-------------------------------------------------------------------------------
+
+These programs provide examples of use, but do not comprise a complete set of
+tests.  Here is a list of library externals, noting those that are used:
+
+libform:
+-------
+TYPE_ALNUM                     test: demo_forms
+TYPE_ALPHA                     test: demo_forms ncurses
+TYPE_ENUM                      test: demo_forms
+TYPE_INTEGER                   test: demo_forms
+TYPE_IPV4                      -
+TYPE_NUMERIC                   test: demo_forms
+TYPE_REGEXP                    test: demo_forms
+current_field                  test: demo_forms edit_field ncurses
+data_ahead                     -
+data_behind                    -
+dup_field                      -
+dynamic_field_info             -
+field_arg                      -
+field_back                     -
+field_buffer                   test: cardfile demo_forms edit_field ncurses
+field_count                    -
+field_fore                     -
+field_index                    test: demo_forms
+field_info                     test: ncurses
+field_init                     -
+field_just                     -
+field_opts                     test: demo_forms ncurses
+field_opts_off                 test: cardfile
+field_opts_on                  -
+field_pad                      -
+field_status                   -
+field_term                     -
+field_type                     test: demo_forms
+field_userptr                  test: ncurses
+form_driver                    test: cardfile demo_forms edit_field ncurses
+form_fields                    test: cardfile
+form_init                      -
+form_opts                      -
+form_opts_off                  -
+form_opts_on                   -
+form_page                      -
+form_request_by_name           -
+form_request_name              test: edit_field
+form_sub                       test: cardfile demo_forms ncurses
+form_term                      -
+form_userptr                   -
+form_win                       test: cardfile demo_forms edit_field ncurses
+free_field                     test: cardfile demo_forms ncurses
+free_fieldtype                 -
+free_form                      test: cardfile demo_forms ncurses
+link_field                     -
+link_fieldtype                 -
+move_field                     -
+new_field                      test: cardfile demo_forms ncurses
+new_fieldtype                  test: ncurses
+new_form                       test: cardfile demo_forms ncurses
+new_page                       -
+pos_form_cursor                        -
+post_form                      test: cardfile demo_forms ncurses
+scale_form                     test: demo_forms ncurses
+set_current_field              -
+set_field_back                 test: cardfile demo_forms edit_field ncurses
+set_field_buffer               test: cardfile demo_forms edit_field ncurses
+set_field_fore                 -
+set_field_init                 -
+set_field_just                 test: cardfile
+set_field_opts                 test: demo_forms ncurses
+set_field_pad                  -
+set_field_status               -
+set_field_term                 -
+set_field_type                 test: demo_forms ncurses
+set_field_userptr              test: demo_forms ncurses
+set_fieldtype_arg              -
+set_fieldtype_choice           -
+set_form_fields                        -
+set_form_init                  -
+set_form_opts                  -
+set_form_page                  -
+set_form_sub                   test: cardfile demo_forms ncurses
+set_form_term                  -
+set_form_userptr               -
+set_form_win                   test: cardfile demo_forms ncurses
+set_max_field                  -
+set_new_page                   test: demo_forms
+unpost_form                    test: cardfile demo_forms ncurses
+
+libmenu:
+-------
+current_item                   test: ncurses
+free_item                      test: ncurses
+free_menu                      test: ncurses
+item_count                     -
+item_description               -
+item_index                     test: ncurses
+item_init                      -
+item_name                      test: ncurses
+item_opts                      -
+item_opts_off                  -
+item_opts_on                   -
+item_term                      -
+item_userptr                   -
+item_value                     test: ncurses
+item_visible                   -
+menu_back                      -
+menu_driver                    test: ncurses
+menu_fore                      -
+menu_format                    -
+menu_grey                      -
+menu_init                      -
+menu_items                     test: ncurses
+menu_mark                      -
+menu_opts                      -
+menu_opts_off                  test: ncurses
+menu_opts_on                   -
+menu_pad                       -
+menu_pattern                   -
+menu_request_by_name           -
+menu_request_name              -
+menu_spacing                   -
+menu_sub                       -
+menu_term                      -
+menu_userptr                   -
+menu_win                       test: ncurses
+new_item                       test: ncurses
+new_menu                       test: ncurses
+pos_menu_cursor                        lib: menu
+post_menu                      test: ncurses
+scale_menu                     test: ncurses
+set_current_item               -
+set_item_init                  -
+set_item_opts                  -
+set_item_term                  -
+set_item_userptr               -
+set_item_value                 test: ncurses
+set_menu_back                  -
+set_menu_fore                  -
+set_menu_format                        test: ncurses
+set_menu_grey                  -
+set_menu_init                  -
+set_menu_items                 -
+set_menu_mark                  -
+set_menu_opts                  -
+set_menu_pad                   -
+set_menu_pattern               -
+set_menu_spacing               -
+set_menu_sub                   test: ncurses
+set_menu_term                  -
+set_menu_userptr               -
+set_menu_win                   test: ncurses
+set_top_row                    -
+top_row                                -
+unpost_menu                    test: ncurses
+
+libncurses:
+----------
+BC                             -
+COLORS                         test: ncurses xmas
+COLOR_PAIR                     test: blue bs demo_forms filter firework gdc hanoi ins_wide inserts knight ncurses newdemo rain tclock testaddch testcurs view worm xmas
+COLOR_PAIRS                    test: ncurses newdemo
+COLS                           test: cardfile demo_defkey demo_forms demo_keyok edit_field firework hashtest ins_wide inserts lrtest ncurses newdemo rain tclock testcurs view worm
+ESCDELAY                       lib: ncurses
+LINES                          test: cardfile demo_defkey demo_keyok edit_field firework hanoi hashtest ins_wide inserts lrtest ncurses newdemo rain tclock testcurs view worm xmas
+PAIR_NUMBER                    lib: ncurses
+PC                             lib: ncurses
+SP                             lib: ncurses
+TABSIZE                                lib: menu
+UP                             -
+acs_map                                test: gdc ins_wide inserts knight ncurses newdemo testcurs
+add_wch                                -
+add_wchnstr                    test: ncurses
+add_wchstr                     test: view
+addch                          test: blue bs ditto hashtest ncurses testaddch view worm
+addchnstr                      -
+addchstr                       -
+addnstr                                -
+addnwstr                       -
+addstr                         test: blue bs cardfile gdc hanoi lrtest ncurses
+addwstr                                -
+assume_default_colors          test: ncurses
+attr_get                       -
+attr_off                       test: ncurses
+attr_on                                test: ncurses
+attr_set                       -
+attroff                                test: filter gdc ncurses tclock
+attron                         test: bs filter gdc ncurses
+attrset                                test: bs firework gdc hanoi ncurses rain tclock testaddch testcurs
+baudrate                       lib: ncurses
+beep                           test: blue bs cardfile demo_forms edit_field hanoi ins_wide inserts knight ncurses tclock testcurs view xmas
+bkgd                           test: demo_forms ncurses tclock view
+bkgdset                                test: ncurses testaddch
+bkgrnd                         -
+bkgrndset                      -
+boolcodes                      progs: dump_entry
+boolfnames                     progs: dump_entry
+boolnames                      progs: dump_entry infocmp
+border                         -
+border_set                     -
+box                            test: cardfile demo_forms edit_field ins_wide inserts lrtest ncurses newdemo testcurs
+box_set                                test: ncurses
+can_change_color               test: ncurses
+cbreak                         test: blue bs cardfile demo_defkey demo_forms demo_keyok ditto filter firework gdc hanoi hashtest ins_wide inserts knight lrtest ncurses newdemo tclock testcurs view worm xmas
+chgat                          -
+clear                          test: blue bs gdc ncurses testcurs xmas
+clearok                                test: bs knight
+clrtobot                       test: ncurses
+clrtoeol                       test: blue bs hanoi hashtest ncurses view
+color_content                  test: ncurses
+color_set                      -
+copywin                                test: testcurs
+cur_term                       test: dots lrtest progs: clear tic tput tset
+curs_set                       test: firework gdc hanoi lrtest newdemo rain tclock testcurs worm xmas
+curscr                         test: edit_field knight lrtest ncurses tclock view
+curses_version                 test: ncurses progs: infocmp tic toe tput tset
+def_prog_mode                  test: bs ncurses
+def_shell_mode                 lib: ncurses
+define_key                     test: demo_defkey
+del_curterm                    lib: ncurses
+delay_output                   -
+delch                          -
+deleteln                       -
+delscreen                      -
+delwin                         test: cardfile demo_forms edit_field ncurses newdemo testcurs
+derwin                         test: cardfile demo_forms ncurses
+doupdate                       test: cardfile edit_field ins_wide inserts knight ncurses
+dupwin                         test: edit_field
+echo                           test: bs hanoi ncurses testcurs testscanw
+echo_wchar                     test: ncurses
+echochar                       test: ncurses
+endwin                         test: blue bs cardfile demo_defkey demo_forms demo_keyok ditto filter firework firstlast gdc hanoi hashtest ins_wide inserts knight lrtest ncurses newdemo rain tclock testaddch testcurs testscanw view worm xmas
+erase                          test: cardfile filter firework firstlast hanoi lrtest ncurses tclock testcurs
+erasechar                      lib: ncurses
+erasewchar                     -
+filter                         test: filter
+flash                          test: cardfile lrtest ncurses tclock testcurs
+flushinp                       test: ncurses newdemo testcurs
+get_wch                                -
+get_wstr                       -
+getbkgd                                test: ncurses
+getbkgrnd                      -
+getcchar                       test: view
+getch                          test: blue bs ditto firework firstlast hanoi hashtest lrtest rain tclock testaddch testcurs view worm xmas
+getmouse                       test: bs knight ncurses
+getn_wstr                      -
+getnstr                                test: filter ncurses
+getstr                         -
+getwin                         test: ncurses
+halfdelay                      test: view
+has_colors                     test: bs demo_forms filter firework gdc hanoi ins_wide inserts knight ncurses newdemo rain tclock testcurs view worm xmas
+has_ic                         test: lrtest
+has_il                         lib: ncurses
+has_key                                lib: ncurses
+hline                          test: gdc ncurses
+hline_set                      -
+idcok                          -
+idlok                          test: ncurses testscanw view
+immedok                                -
+in_wch                         -
+in_wchnstr                     -
+in_wchstr                      -
+inch                           -
+inchnstr                       -
+inchstr                                -
+init_color                     test: ncurses
+init_pair                      test: blue bs demo_forms filter firework gdc hanoi ins_wide inserts knight ncurses newdemo rain tclock testaddch testcurs view worm xmas
+initscr                                test: blue bs cardfile demo_defkey demo_forms demo_keyok firework firstlast gdc hanoi hashtest ins_wide inserts knight lrtest ncurses newdemo rain tclock testaddch testcurs testscanw view worm xmas
+innstr                         -
+innwstr                                -
+ins_nwstr                      -
+ins_wch                                -
+ins_wstr                       -
+insch                          -
+insdelln                       -
+insertln                       -
+insnstr                                -
+insstr                         -
+instr                          -
+intrflush                      test: demo_forms
+inwstr                         -
+is_linetouched                 lib: form
+is_term_resized                        -
+is_wintouched                  lib: ncurses
+isendwin                       -
+key_defined                    test: demo_defkey
+key_name                       test: ncurses
+keybound                       test: demo_defkey
+keyname                                test: demo_defkey demo_keyok edit_field keynames ncurses testcurs view progs: tic
+keyok                          test: demo_keyok
+keypad                         test: bs cardfile demo_defkey demo_forms demo_keyok edit_field filter firework hashtest ins_wide inserts knight lrtest ncurses tclock testcurs testscanw view
+killchar                       lib: ncurses
+killwchar                      -
+leaveok                                test: hanoi
+longname                       test: testcurs progs: tput
+mcprint                                -
+meta                           test: ncurses
+mouse_trafo                    -
+mouseinterval                  -
+mousemask                      test: bs knight ncurses
+move                           test: blue bs cardfile gdc hanoi hashtest knight lrtest ncurses testscanw view worm xmas
+mvadd_wch                      test: ncurses
+mvadd_wchnstr                  -
+mvadd_wchstr                   -
+mvaddch                                test: bs gdc hanoi lrtest ncurses rain tclock xmas
+mvaddchnstr                    test: gdc
+mvaddchstr                     -
+mvaddnstr                      -
+mvaddnwstr                     -
+mvaddstr                       test: bs demo_forms gdc hanoi knight ncurses rain tclock testcurs xmas
+mvaddwstr                      -
+mvchgat                                -
+mvcur                          lib: ncurses
+mvdelch                                -
+mvderwin                       lib: menu
+mvget_wch                      -
+mvget_wstr                     -
+mvgetch                                -
+mvgetn_wstr                    -
+mvgetnstr                      -
+mvgetstr                       -
+mvhline                                test: ncurses
+mvhline_set                    test: ncurses
+mvin_wch                       -
+mvin_wchnstr                   -
+mvin_wchstr                    -
+mvinch                         -
+mvinchnstr                     test: gdc
+mvinchstr                      -
+mvinnstr                       -
+mvinnwstr                      -
+mvins_nwstr                    -
+mvins_wch                      -
+mvins_wstr                     -
+mvinsch                                -
+mvinsnstr                      -
+mvinsstr                       -
+mvinstr                                -
+mvinwstr                       -
+mvprintw                       test: bs firework hanoi ncurses tclock view
+mvscanw                                -
+mvvline                                test: ncurses
+mvvline_set                    test: ncurses
+mvwadd_wch                     -
+mvwadd_wchnstr                 -
+mvwadd_wchstr                  -
+mvwaddch                       test: newdemo testcurs xmas
+mvwaddchnstr                   -
+mvwaddchstr                    -
+mvwaddnstr                     test: newdemo testcurs
+mvwaddnwstr                    -
+mvwaddstr                      test: firstlast ins_wide inserts knight ncurses newdemo testcurs xmas
+mvwaddwstr                     -
+mvwchgat                       -
+mvwdelch                       test: ncurses
+mvwget_wch                     -
+mvwget_wstr                    -
+mvwgetch                       -
+mvwgetn_wstr                   -
+mvwgetnstr                     -
+mvwgetstr                      -
+mvwhline                       lib: ncurses
+mvwhline_set                   -
+mvwin                          test: cardfile testcurs xmas
+mvwin_wch                      -
+mvwin_wchnstr                  -
+mvwin_wchstr                   -
+mvwinch                                test: newdemo testcurs
+mvwinchnstr                    -
+mvwinchstr                     -
+mvwinnstr                      test: testcurs
+mvwinnwstr                     -
+mvwins_nwstr                   -
+mvwins_wch                     test: ins_wide
+mvwins_wstr                    test: ins_wide
+mvwinsch                       test: ins_wide inserts
+mvwinsnstr                     -
+mvwinsstr                      test: inserts testcurs
+mvwinstr                       -
+mvwinwstr                      -
+mvwprintw                      test: ncurses testcurs
+mvwscanw                       test: testcurs
+mvwvline                       test: ins_wide inserts
+mvwvline_set                   -
+napms                          test: firework gdc hanoi lrtest ncurses newdemo railroad rain tclock testcurs view worm xmas progs: tset
+newpad                         test: edit_field ncurses testcurs
+newscr                         lib: ncurses
+newterm                                test: ditto filter gdc
+newwin                         test: cardfile demo_defkey demo_forms demo_keyok edit_field firstlast ins_wide inserts knight ncurses newdemo testcurs xmas
+nl                             test: demo_forms ncurses rain testcurs
+nocbreak                       test: testcurs
+nodelay                                test: firework gdc lrtest ncurses newdemo rain tclock view xmas
+noecho                         test: bs cardfile demo_defkey demo_forms demo_keyok ditto firework firstlast gdc hanoi hashtest ins_wide inserts knight lrtest ncurses rain tclock testcurs view worm xmas
+nonl                           test: bs demo_forms hashtest ncurses view worm xmas
+noqiflush                      -
+noraw                          test: demo_forms ncurses testcurs
+notimeout                      -
+numcodes                       progs: dump_entry
+numfnames                      progs: dump_entry
+numnames                       progs: dump_entry infocmp
+ospeed                         progs: tset
+overlay                                test: testcurs xmas
+overwrite                      test: ncurses
+pair_content                   lib: ncurses
+pechochar                      -
+pnoutrefresh                   test: edit_field ncurses
+prefresh                       test: testcurs
+printw                         test: blue bs demo_defkey demo_keyok filter ncurses testcurs testscanw view
+putp                           progs: tput
+putwin                         test: ncurses
+qiflush                                -
+raw                            test: demo_forms ncurses testcurs
+redrawwin                      -
+refresh                                test: blue bs demo_defkey demo_forms demo_keyok ditto filter firstlast gdc hanoi hashtest lrtest ncurses tclock testcurs view worm xmas
+reset_prog_mode                        test: filter ncurses
+reset_shell_mode               test: bs filter
+resetty                                -
+resize_term                    test: view
+resizeterm                     lib: ncurses
+restartterm                    -
+ripoffline                     test: ncurses
+savetty                                -
+scanw                          test: testcurs testscanw
+scr_dump                       -
+scr_init                       -
+scr_restore                    -
+scr_set                                -
+scrl                           -
+scroll                         test: testcurs
+scrollok                       test: demo_defkey demo_keyok ditto hashtest knight ncurses testcurs testscanw view
+set_curterm                    lib: ncurses
+set_term                       test: ditto
+setcchar                       test: ins_wide ncurses view
+setscrreg                      test: view
+setupterm                      test: dots progs: clear tput tset
+slk_attr                       -
+slk_attr_off                   -
+slk_attr_on                    -
+slk_attr_set                   -
+slk_attroff                    lib: ncurses
+slk_attron                     lib: ncurses
+slk_attrset                    -
+slk_clear                      test: ncurses
+slk_color                      test: ncurses
+slk_init                       test: ncurses
+slk_label                      test: ncurses
+slk_noutrefresh                        test: ncurses
+slk_refresh                    test: ncurses
+slk_restore                    test: ncurses
+slk_set                                test: ncurses
+slk_touch                      test: ncurses
+slk_wset                       test: ncurses
+standend                       test: blue gdc ncurses worm
+standout                       test: blue ncurses
+start_color                    test: blue bs demo_forms filter firework gdc hanoi ins_wide inserts knight ncurses newdemo rain tclock testaddch testcurs view worm xmas
+stdscr                         test: bs demo_forms ditto filter firework gdc hanoi hashtest ins_wide inserts knight lrtest ncurses rain tclock testcurs testscanw view xmas
+strcodes                       progs: dump_entry
+strfnames                      progs: dump_entry
+strnames                       progs: dump_entry infocmp tic
+subpad                         test: testcurs
+subwin                         test: ncurses newdemo testcurs
+syncok                         -
+term_attrs                     -
+termattrs                      test: ncurses testcurs
+termname                       test: testcurs
+tgetent                                test: railroad
+tgetflag                       -
+tgetnum                                test: railroad
+tgetstr                                test: railroad
+tgoto                          test: railroad
+tigetflag                      progs: tput
+tigetnum                       test: ncurses progs: tput
+tigetstr                       test: blue demo_defkey testcurs progs: tput
+timeout                                test: rain
+touchline                      lib: ncurses
+touchwin                       test: edit_field filter firstlast ncurses xmas
+tparm                          test: dots progs: tic tput
+tputs                          test: dots railroad progs: clear tset
+trace                          test: hanoi hashtest lrtest ncurses testcurs view worm
+ttytype                                lib: ncurses
+typeahead                      test: testcurs
+unctrl                         test: ncurses testcurs
+unget_wch                      -
+ungetch                                test: bs knight
+ungetmouse                     -
+untouchwin                     -
+use_default_colors             test: filter firework gdc hanoi knight ncurses rain tclock worm xmas
+use_env                                progs: tput
+use_extended_names             progs: infocmp tic
+vid_attr                       -
+vid_puts                       -
+vidattr                                lib: ncurses
+vidputs                                lib: ncurses
+vline                          test: gdc ncurses
+vline_set                      -
+vw_printw                      -
+vw_scanw                       -
+vwprintw                       lib: ncurses
+vwscanw                                lib: ncurses
+wadd_wch                       lib: ncurses
+wadd_wchnstr                   lib: ncurses
+wadd_wchstr                    -
+waddch                         test: firstlast knight ncurses
+waddchnstr                     lib: ncurses
+waddchstr                      -
+waddnstr                       lib: form
+waddnwstr                      test: ncurses
+waddstr                                test: demo_forms edit_field firstlast ins_wide knight ncurses testcurs
+waddwstr                       test: ins_wide
+wattr_get                      -
+wattr_off                      lib: menu
+wattr_on                       lib: menu
+wattr_set                      -
+wattroff                       test: demo_forms ncurses testcurs xmas
+wattron                                test: testcurs xmas
+wattrset                       test: demo_forms ncurses newdemo testcurs xmas
+wbkgd                          test: demo_forms ncurses newdemo testcurs
+wbkgdset                       test: ins_wide inserts ncurses
+wbkgrnd                                lib: ncurses
+wbkgrndset                     lib: ncurses
+wborder                                lib: ncurses
+wborder_set                    lib: ncurses
+wchgat                         test: view
+wclear                         test: ncurses testcurs
+wclrtobot                      test: firstlast ncurses testcurs
+wclrtoeol                      test: demo_defkey demo_keyok firstlast ins_wide inserts knight ncurses testcurs
+wcolor_set                     lib: ncurses
+wcursyncup                     lib: form
+wdelch                         test: ncurses testcurs
+wdeleteln                      test: testcurs
+wecho_wchar                    lib: ncurses
+wechochar                      lib: ncurses
+wenclose                       lib: menu
+werase                         test: cardfile demo_forms edit_field firstlast knight ncurses newdemo testcurs xmas
+wget_wch                       test: ins_wide ncurses
+wget_wstr                      -
+wgetch                         test: cardfile demo_defkey demo_keyok edit_field gdc inserts knight ncurses newdemo testcurs
+wgetn_wstr                     test: ncurses
+wgetnstr                       test: ncurses
+wgetstr                                -
+whline                         test: testcurs
+whline_set                     lib: ncurses
+win_wch                                lib: ncurses
+win_wchnstr                    lib: ncurses
+win_wchstr                     -
+winch                          test: knight testcurs
+winchnstr                      lib: ncurses
+winchstr                       -
+winnstr                                test: demo_defkey
+winnwstr                       lib: ncurses
+wins_nwstr                     lib: ncurses
+wins_wch                       lib: ncurses
+wins_wstr                      -
+winsch                         test: testcurs
+winsdelln                      lib: form
+winsertln                      test: testcurs
+winsnstr                       lib: form
+winsstr                                -
+winstr                         -
+winwstr                                lib: ncurses
+wmouse_trafo                   lib: menu
+wmove                          test: demo_defkey demo_keyok firstlast ins_wide inserts knight ncurses newdemo testcurs
+wnoutrefresh                   test: edit_field ins_wide inserts knight ncurses
+wprintw                                test: demo_defkey demo_forms demo_keyok edit_field ins_wide inserts knight ncurses testcurs
+wredrawln                      lib: ncurses
+wrefresh                       test: demo_forms demo_keyok edit_field firstlast knight lrtest ncurses newdemo tclock testcurs view xmas
+wresize                                test: cardfile ncurses
+wscanw                         test: testcurs
+wscrl                          test: ncurses testcurs view
+wsetscrreg                     test: ncurses testcurs
+wstandend                      test: xmas
+wstandout                      test: xmas
+wsyncdown                      lib: ncurses
+wsyncup                                lib: form
+wtimeout                       test: ncurses
+wtouchln                       lib: form
+wunctrl                                -
+wvline                         test: testcurs
+wvline_set                     lib: ncurses
+
+libpanel:
+--------
+bottom_panel                   test: ncurses
+del_panel                      test: ncurses
+hide_panel                     test: ncurses
+move_panel                     test: ncurses
+new_panel                      test: cardfile ncurses
+panel_above                    -
+panel_below                    -
+panel_hidden                   -
+panel_userptr                  test: ncurses
+panel_window                   test: cardfile ncurses
+replace_panel                  -
+set_panel_userptr              test: ncurses
+show_panel                     test: ncurses
+top_panel                      test: cardfile ncurses
+update_panels                  test: cardfile ncurses
diff --git a/test/aclocal.m4 b/test/aclocal.m4
new file mode 100644 (file)
index 0000000..47928a0
--- /dev/null
@@ -0,0 +1,875 @@
+dnl $Id: aclocal.m4,v 1.6 2003/10/19 00:09:23 tom Exp $
+dnl ---------------------------------------------------------------------------
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_INCDIR version: 4 updated: 2002/12/21 14:25:52
+dnl -------------
+dnl Add an include-directory to $CPPFLAGS.  Don't add /usr/include, since it's
+dnl redundant.  We don't normally need to add -I/usr/local/include for gcc,
+dnl but old versions (and some misinstalled ones) need that.  To make things
+dnl worse, gcc 3.x gives error messages if -I/usr/local/include is added to
+dnl the include-path).
+AC_DEFUN([CF_ADD_INCDIR],
+[
+for cf_add_incdir in $1
+do
+       while true
+       do
+               case $cf_add_incdir in
+               /usr/include) # (vi
+                       ;;
+               /usr/local/include) # (vi
+                       if test "$GCC" = yes
+                       then
+                               cf_save_CPPFLAGS="$CPPFLAGS"
+                               CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                               AC_TRY_COMPILE([#include <stdio.h>],
+                                               [printf("Hello")],
+                                               [],
+                                               [CPPFLAGS="$cf_save_CPPFLAGS"])
+                       fi
+                       ;;
+               *) # (vi
+                       CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                       ;;
+               esac
+               cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+               test "$cf_top_incdir" = "$cf_add_incdir" && break
+               cf_add_incdir="$cf_top_incdir"
+       done
+done
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_CACHE version: 7 updated: 2001/12/19 00:50:10
+dnl --------------
+dnl Check if we're accidentally using a cache from a different machine.
+dnl Derive the system name, as a check for reusing the autoconf cache.
+dnl
+dnl If we've packaged config.guess and config.sub, run that (since it does a
+dnl better job than uname).  Normally we'll use AC_CANONICAL_HOST, but allow
+dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM
+dnl which is useful in cross-compiles.
+AC_DEFUN([CF_CHECK_CACHE],
+[
+if test -f $srcdir/config.guess ; then
+       ifelse([$1],,[AC_CANONICAL_HOST],[$1])
+       system_name="$host_os"
+else
+       system_name="`(uname -s -r) 2>/dev/null`"
+       if test -z "$system_name" ; then
+               system_name="`(hostname) 2>/dev/null`"
+       fi
+fi
+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name")
+AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"])
+
+test -z "$system_name" && system_name="$cf_cv_system_name"
+test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name)
+
+if test ".$system_name" != ".$cf_cv_system_name" ; then
+       AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name))
+       AC_ERROR("Please remove config.cache and try again.")
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_ACS_MAP version: 3 updated: 2003/05/17 22:19:02
+dnl -----------------
+dnl Check for likely values of acs_map[]:
+AC_DEFUN([CF_CURSES_ACS_MAP],
+[
+AC_CACHE_CHECK(for alternate character set array, cf_cv_curses_acs_map,[
+cf_cv_curses_acs_map=unknown
+for name in acs_map _acs_map __acs_map _nc_acs_map
+do
+AC_TRY_LINK([
+#include <${cf_cv_ncurses_header-curses.h}>
+],[
+$name['k'] = ACS_PLUS
+],[cf_cv_curses_acs_map=$name; break])
+done
+])
+
+test "$cf_cv_curses_acs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_ACS_ARRAY,$cf_cv_curses_acs_map)
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_CHECK_TYPE version: 2 updated: 2003/03/01 23:40:33
+dnl --------------------
+dnl Check if curses.h defines the given type
+AC_DEFUN([CF_CURSES_CHECK_TYPE],
+[
+AC_MSG_CHECKING(for type $1 in ${cf_cv_ncurses_header-curses.h})
+AC_TRY_COMPILE([
+#ifndef _XOPEN_SOURCE_EXTENDED
+#define _XOPEN_SOURCE_EXTENDED
+#endif
+#include <${cf_cv_ncurses_header-curses.h}>],[
+$1 foo
+],cf_result=yes,cf_result=no)
+AC_MSG_RESULT($cf_result)
+if test $cf_result = yes ; then
+       CF_UPPER(cf_result,have_type_$1)
+       AC_DEFINE_UNQUOTED($cf_result)
+else
+       AC_DEFINE_UNQUOTED($1,$2)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_CPPFLAGS version: 7 updated: 2003/06/06 00:48:41
+dnl ------------------
+dnl Look for the curses headers.
+AC_DEFUN([CF_CURSES_CPPFLAGS],[
+
+AC_CACHE_CHECK(for extra include directories,cf_cv_curses_incdir,[
+cf_cv_curses_incdir=no
+case $host_os in #(vi
+hpux10.*|hpux11.*) #(vi
+       test -d /usr/include/curses_colr && \
+       cf_cv_curses_incdir="-I/usr/include/curses_colr"
+       ;;
+sunos3*|sunos4*)
+       test -d /usr/5lib && \
+       test -d /usr/5include && \
+       cf_cv_curses_incdir="-I/usr/5include"
+       ;;
+esac
+])
+test "$cf_cv_curses_incdir" != no && CPPFLAGS="$cf_cv_curses_incdir $CPPFLAGS"
+
+AC_CACHE_CHECK(if we have identified curses headers,cf_cv_ncurses_header,[
+cf_cv_ncurses_header=none
+for cf_header in \
+       curses.h \
+       ncurses.h \
+       ncurses/curses.h \
+       ncurses/ncurses.h
+do
+AC_TRY_COMPILE([#include <${cf_header}>],
+       [initscr(); tgoto("?", 0,0)],
+       [cf_cv_ncurses_header=$cf_header; break],[])
+done
+])
+
+if test "$cf_cv_ncurses_header" = none ; then
+       AC_MSG_ERROR(No curses header-files found)
+fi
+
+# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
+AC_CHECK_HEADERS($cf_cv_ncurses_header)
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_LIBS version: 22 updated: 2002/10/27 18:21:42
+dnl --------------
+dnl Look for the curses libraries.  Older curses implementations may require
+dnl termcap/termlib to be linked as well.  Call CF_CURSES_CPPFLAGS first.
+AC_DEFUN([CF_CURSES_LIBS],[
+
+AC_MSG_CHECKING(if we have identified curses libraries)
+AC_TRY_LINK([#include <${cf_cv_ncurses_header-curses.h}>],
+       [initscr(); tgoto("?", 0,0)],
+       cf_result=yes,
+       cf_result=no)
+AC_MSG_RESULT($cf_result)
+
+if test "$cf_result" = no ; then
+case $host_os in #(vi
+freebsd*) #(vi
+       AC_CHECK_LIB(mytinfo,tgoto,[LIBS="-lmytinfo $LIBS"])
+       ;;
+hpux10.*|hpux11.*) #(vi
+       AC_CHECK_LIB(cur_colr,initscr,[
+               LIBS="-lcur_colr $LIBS"
+               ac_cv_func_initscr=yes
+               ],[
+       AC_CHECK_LIB(Hcurses,initscr,[
+               # HP's header uses __HP_CURSES, but user claims _HP_CURSES.
+               LIBS="-lHcurses $LIBS"
+               CPPFLAGS="-D__HP_CURSES -D_HP_CURSES $CPPFLAGS"
+               ac_cv_func_initscr=yes
+               ])])
+       ;;
+linux*) # Suse Linux does not follow /usr/lib convention
+       LIBS="$LIBS -L/lib"
+       ;;
+sunos3*|sunos4*)
+       test -d /usr/5lib && \
+       LIBS="$LIBS -L/usr/5lib -lcurses -ltermcap"
+       ac_cv_func_initscr=yes
+       ;;
+esac
+
+if test ".$ac_cv_func_initscr" != .yes ; then
+       cf_save_LIBS="$LIBS"
+       cf_term_lib=""
+       cf_curs_lib=""
+
+       if test ".${cf_cv_ncurses_version-no}" != .no
+       then
+               cf_check_list="ncurses curses cursesX"
+       else
+               cf_check_list="cursesX curses ncurses"
+       fi
+
+       # Check for library containing tgoto.  Do this before curses library
+       # because it may be needed to link the test-case for initscr.
+       AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[
+               for cf_term_lib in $cf_check_list termcap termlib unknown
+               do
+                       AC_CHECK_LIB($cf_term_lib,tgoto,[break])
+               done
+       ])
+
+       # Check for library containing initscr
+       test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
+       for cf_curs_lib in $cf_check_list xcurses jcurses unknown
+       do
+               AC_CHECK_LIB($cf_curs_lib,initscr,[break])
+       done
+       test $cf_curs_lib = unknown && AC_ERROR(no curses library found)
+
+       LIBS="-l$cf_curs_lib $cf_save_LIBS"
+       if test "$cf_term_lib" = unknown ; then
+               AC_MSG_CHECKING(if we can link with $cf_curs_lib library)
+               AC_TRY_LINK([#include <${cf_cv_ncurses_header-curses.h}>],
+                       [initscr()],
+                       [cf_result=yes],
+                       [cf_result=no])
+               AC_MSG_RESULT($cf_result)
+               test $cf_result = no && AC_ERROR(Cannot link curses library)
+       elif test "$cf_curs_lib" = "$cf_term_lib" ; then
+               :
+       elif test "$cf_term_lib" != predefined ; then
+               AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries)
+               AC_TRY_LINK([#include <${cf_cv_ncurses_header-curses.h}>],
+                       [initscr(); tgoto((char *)0, 0, 0);],
+                       [cf_result=no],
+                       [
+                       LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
+                       AC_TRY_LINK([#include <${cf_cv_ncurses_header-curses.h}>],
+                               [initscr()],
+                               [cf_result=yes],
+                               [cf_result=error])
+                       ])
+               AC_MSG_RESULT($cf_result)
+       fi
+fi
+fi
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_WACS_MAP version: 3 updated: 2003/05/17 22:19:02
+dnl ------------------
+dnl Check for likely values of wacs_map[]:
+AC_DEFUN([CF_CURSES_WACS_MAP],
+[
+AC_CACHE_CHECK(for wide alternate character set array, cf_cv_curses_wacs_map,[
+       cf_cv_curses_wacs_map=unknown
+       for name in wacs_map _wacs_map __wacs_map _nc_wacs
+       do
+       AC_TRY_LINK([
+#ifndef _XOPEN_SOURCE_EXTENDED
+#define _XOPEN_SOURCE_EXTENDED
+#endif
+#include <${cf_cv_ncurses_header-curses.h}>],
+       [$name['k'] = *WACS_PLUS],
+       [cf_cv_curses_wacs_map=$name
+        break])
+       done])
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52
+dnl ----------
+dnl "dirname" is not portable, so we fake it with a shell script.
+AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FIND_LIBRARY version: 7 updated: 2000/04/13 21:38:04
+dnl ---------------
+dnl Look for a non-standard library, given parameters for AC_TRY_LINK.  We
+dnl prefer a standard location, and use -L options only if we do not find the
+dnl library in the standard library location(s).
+dnl    $1 = library name
+dnl    $2 = library class, usually the same as library name
+dnl    $3 = includes
+dnl    $4 = code fragment to compile/link
+dnl    $5 = corresponding function-name
+dnl    $6 = flag, nonnull if failure causes an error-exit
+dnl
+dnl Sets the variable "$cf_libdir" as a side-effect, so we can see if we had
+dnl to use a -L option.
+AC_DEFUN([CF_FIND_LIBRARY],
+[
+       eval 'cf_cv_have_lib_'$1'=no'
+       cf_libdir=""
+       AC_CHECK_FUNC($5,
+               eval 'cf_cv_have_lib_'$1'=yes',[
+               cf_save_LIBS="$LIBS"
+               AC_MSG_CHECKING(for $5 in -l$1)
+               LIBS="-l$1 $LIBS"
+               AC_TRY_LINK([$3],[$4],
+                       [AC_MSG_RESULT(yes)
+                        eval 'cf_cv_have_lib_'$1'=yes'
+                       ],
+                       [AC_MSG_RESULT(no)
+                       CF_LIBRARY_PATH(cf_search,$2)
+                       for cf_libdir in $cf_search
+                       do
+                               AC_MSG_CHECKING(for -l$1 in $cf_libdir)
+                               LIBS="-L$cf_libdir -l$1 $cf_save_LIBS"
+                               AC_TRY_LINK([$3],[$4],
+                                       [AC_MSG_RESULT(yes)
+                                        eval 'cf_cv_have_lib_'$1'=yes'
+                                        break],
+                                       [AC_MSG_RESULT(no)
+                                        LIBS="$cf_save_LIBS"])
+                       done
+                       ])
+               ])
+eval 'cf_found_library=[$]cf_cv_have_lib_'$1
+ifelse($6,,[
+if test $cf_found_library = no ; then
+       AC_ERROR(Cannot link $1 library)
+fi
+])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_CURSES_VERSION version: 3 updated: 2003/05/17 22:19:02
+dnl ----------------------
+dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS.
+dnl It's a character string "SVR4", not documented.
+AC_DEFUN([CF_FUNC_CURSES_VERSION],
+[
+AC_CACHE_CHECK(for function curses_version, cf_cv_func_curses_version,[
+AC_TRY_RUN([
+#include <${cf_cv_ncurses_header-curses.h}>
+int main()
+{
+       char temp[1024];
+       sprintf(temp, "%s\n", curses_version());
+       exit(0);
+}]
+,[cf_cv_func_curses_version=yes]
+,[cf_cv_func_curses_version=no]
+,[cf_cv_func_curses_version=unknown])
+rm -f core])
+test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION)
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_GNU_SOURCE version: 3 updated: 2000/10/29 23:30:53
+dnl -------------
+dnl Check if we must define _GNU_SOURCE to get a reasonable value for
+dnl _XOPEN_SOURCE, upon which many POSIX definitions depend.  This is a defect
+dnl (or misfeature) of glibc2, which breaks portability of many applications,
+dnl since it is interwoven with GNU extensions.
+dnl
+dnl Well, yes we could work around it...
+AC_DEFUN([CF_GNU_SOURCE],
+[
+AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[
+AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifndef _XOPEN_SOURCE
+make an error
+#endif],
+       [cf_cv_gnu_source=no],
+       [cf_save="$CPPFLAGS"
+        CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+        AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifdef _XOPEN_SOURCE
+make an error
+#endif],
+       [cf_cv_gnu_source=no],
+       [cf_cv_gnu_source=yes])
+       CPPFLAGS="$cf_save"
+       ])
+])
+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_HEADER_PATH version: 8 updated: 2002/11/10 14:46:59
+dnl --------------
+dnl Construct a search-list for a nonstandard header-file
+AC_DEFUN([CF_HEADER_PATH],
+[CF_SUBDIR_PATH($1,$2,include)
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+       test -d $includedir &&    $1="[$]$1 $includedir"
+       test -d $includedir/$2 && $1="[$]$1 $includedir/$2"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+       test -d $oldincludedir    && $1="[$]$1 $oldincludedir"
+       test -d $oldincludedir/$2 && $1="[$]$1 $oldincludedir/$2"
+}
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_INHERIT_SCRIPT version: 2 updated: 2003/03/01 23:50:42
+dnl -----------------
+dnl If we do not have a given script, look for it in the parent directory.
+AC_DEFUN([CF_INHERIT_SCRIPT],
+[
+test -f $1 || ( test -f ../$1 && cp ../$1 ./ )
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_LIBRARY_PATH version: 7 updated: 2002/11/10 14:46:59
+dnl ---------------
+dnl Construct a search-list for a nonstandard library-file
+AC_DEFUN([CF_LIBRARY_PATH],
+[CF_SUBDIR_PATH($1,$2,lib)])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_CC_CHECK version: 3 updated: 2003/01/12 18:59:28
+dnl -------------------
+dnl Check if we can compile with ncurses' header file
+dnl $1 is the cache variable to set
+dnl $2 is the header-file to include
+dnl $3 is the root name (ncurses or ncursesw)
+AC_DEFUN([CF_NCURSES_CC_CHECK],[
+       AC_TRY_COMPILE([
+]ifelse($3,ncursesw,[
+#define _XOPEN_SOURCE_EXTENDED
+#undef  HAVE_LIBUTF8_H /* in case we used CF_UTF8_LIB */
+#define HAVE_LIBUTF8_H /* to force ncurses' header file to use cchar_t */
+])[
+#include <$2>],[
+#ifdef NCURSES_VERSION
+]ifelse($3,ncursesw,[
+#ifndef WACS_BSSB
+       make an error
+#endif
+])[
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+       make an error
+#endif
+#endif
+       ]
+       ,[$1=$cf_header]
+       ,[$1=no])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_CPPFLAGS version: 16 updated: 2002/12/29 18:30:46
+dnl -------------------
+dnl Look for the SVr4 curses clone 'ncurses' in the standard places, adjusting
+dnl the CPPFLAGS variable so we can include its header.
+dnl
+dnl The header files may be installed as either curses.h, or ncurses.h (would
+dnl be obsolete, except that some packagers prefer this name to distinguish it
+dnl from a "native" curses implementation).  If not installed for overwrite,
+dnl the curses.h file would be in an ncurses subdirectory (e.g.,
+dnl /usr/include/ncurses), but someone may have installed overwriting the
+dnl vendor's curses.  Only very old versions (pre-1.9.2d, the first autoconf'd
+dnl version) of ncurses don't define either __NCURSES_H or NCURSES_VERSION in
+dnl the header.
+dnl
+dnl If the installer has set $CFLAGS or $CPPFLAGS so that the ncurses header
+dnl is already in the include-path, don't even bother with this, since we cannot
+dnl easily determine which file it is.  In this case, it has to be <curses.h>.
+dnl
+dnl The optional parameter gives the root name of the library, in case it is
+dnl not installed as the default curses library.  That is how the
+dnl wide-character version of ncurses is installed.
+AC_DEFUN([CF_NCURSES_CPPFLAGS],
+[AC_REQUIRE([CF_WITH_CURSES_DIR])
+
+cf_ncuhdr_root=ifelse($1,,ncurses,$1)
+
+test -n "$cf_cv_curses_dir" && \
+test "$cf_cv_curses_dir" != "no" && \
+CPPFLAGS="-I$cf_cv_curses_dir/include -I$cf_cv_curses_dir/include/$cf_ncuhdr_root $CPPFLAGS"
+
+AC_CACHE_CHECK(for $cf_ncuhdr_root header in include-path, cf_cv_ncurses_h,[
+       cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
+       ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+       for cf_header in $cf_header_list
+       do
+               CF_NCURSES_CC_CHECK(cf_cv_ncurses_h,$cf_header,$1)
+               test "$cf_cv_ncurses_h" != no && break
+       done
+])
+
+if test "$cf_cv_ncurses_h" != no ; then
+       cf_cv_ncurses_header=$cf_cv_ncurses_h
+else
+AC_CACHE_CHECK(for $cf_ncuhdr_root include-path, cf_cv_ncurses_h2,[
+       test -n "$verbose" && echo
+       CF_HEADER_PATH(cf_search,$cf_ncuhdr_root)
+       test -n "$verbose" && echo search path $cf_search
+       cf_save2_CPPFLAGS="$CPPFLAGS"
+       for cf_incdir in $cf_search
+       do
+               CF_ADD_INCDIR($cf_incdir)
+               for cf_header in \
+                       ncurses.h \
+                       curses.h
+               do
+                       CF_NCURSES_CC_CHECK(cf_cv_ncurses_h2,$cf_header,$1)
+                       if test "$cf_cv_ncurses_h2" != no ; then
+                               cf_cv_ncurses_h2=$cf_incdir/$cf_header
+                               test -n "$verbose" && echo $ac_n "      ... found $ac_c" 1>&AC_FD_MSG
+                               break
+                       fi
+                       test -n "$verbose" && echo "    ... tested $cf_incdir/$cf_header" 1>&AC_FD_MSG
+               done
+               CPPFLAGS="$cf_save2_CPPFLAGS"
+               test "$cf_cv_ncurses_h2" != no && break
+       done
+       test "$cf_cv_ncurses_h2" = no && AC_ERROR(not found)
+       ])
+
+       CF_DIRNAME(cf_1st_incdir,$cf_cv_ncurses_h2)
+       cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
+       if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
+               cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+       fi
+       CF_ADD_INCDIR($cf_1st_incdir)
+
+fi
+
+AC_DEFINE(NCURSES)
+
+case $cf_cv_ncurses_header in # (vi
+*ncurses.h)
+       AC_DEFINE(HAVE_NCURSES_H)
+       ;;
+esac
+
+case $cf_cv_ncurses_header in # (vi
+ncurses/curses.h|ncurses/ncurses.h)
+       AC_DEFINE(HAVE_NCURSES_NCURSES_H)
+       ;;
+ncursesw/curses.h|ncursesw/ncurses.h)
+       AC_DEFINE(HAVE_NCURSESW_NCURSES_H)
+       ;;
+esac
+
+CF_NCURSES_VERSION
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_LIBS version: 11 updated: 2002/12/22 14:22:25
+dnl ---------------
+dnl Look for the ncurses library.  This is a little complicated on Linux,
+dnl because it may be linked with the gpm (general purpose mouse) library.
+dnl Some distributions have gpm linked with (bsd) curses, which makes it
+dnl unusable with ncurses.  However, we don't want to link with gpm unless
+dnl ncurses has a dependency, since gpm is normally set up as a shared library,
+dnl and the linker will record a dependency.
+dnl
+dnl The optional parameter gives the root name of the library, in case it is
+dnl not installed as the default curses library.  That is how the
+dnl wide-character version of ncurses is installed.
+AC_DEFUN([CF_NCURSES_LIBS],
+[AC_REQUIRE([CF_NCURSES_CPPFLAGS])
+
+cf_nculib_root=ifelse($1,,ncurses,$1)
+       # This works, except for the special case where we find gpm, but
+       # ncurses is in a nonstandard location via $LIBS, and we really want
+       # to link gpm.
+cf_ncurses_LIBS=""
+cf_ncurses_SAVE="$LIBS"
+AC_CHECK_LIB(gpm,Gpm_Open,
+       [AC_CHECK_LIB(gpm,initscr,
+               [LIBS="$cf_ncurses_SAVE"],
+               [cf_ncurses_LIBS="-lgpm"])])
+
+case $host_os in #(vi
+freebsd*)
+       # This is only necessary if you are linking against an obsolete
+       # version of ncurses (but it should do no harm, since it's static).
+       AC_CHECK_LIB(mytinfo,tgoto,[cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"])
+       ;;
+esac
+
+LIBS="$cf_ncurses_LIBS $LIBS"
+
+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+then
+       LIBS="-L$cf_cv_curses_dir/lib -l$cf_nculib_root $LIBS"
+else
+       CF_FIND_LIBRARY($cf_nculib_root,$cf_nculib_root,
+               [#include <${cf_cv_ncurses_header-curses.h}>],
+               [initscr()],
+               initscr)
+fi
+
+if test -n "$cf_ncurses_LIBS" ; then
+       AC_MSG_CHECKING(if we can link $cf_nculib_root without $cf_ncurses_LIBS)
+       cf_ncurses_SAVE="$LIBS"
+       for p in $cf_ncurses_LIBS ; do
+               q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+               if test "$q" != "$LIBS" ; then
+                       LIBS="$q"
+               fi
+       done
+       AC_TRY_LINK([#include <${cf_cv_ncurses_header-curses.h}>],
+               [initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);],
+               [AC_MSG_RESULT(yes)],
+               [AC_MSG_RESULT(no)
+                LIBS="$cf_ncurses_SAVE"])
+fi
+
+CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_nculib_root)
+AC_DEFINE_UNQUOTED($cf_nculib_ROOT)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_VERSION version: 10 updated: 2002/10/27 18:21:42
+dnl ------------------
+dnl Check for the version of ncurses, to aid in reporting bugs, etc.
+dnl Call CF_CURSES_CPPFLAGS first, or CF_NCURSES_CPPFLAGS.  We don't use
+dnl AC_REQUIRE since that does not work with the shell's if/then/else/fi.
+AC_DEFUN([CF_NCURSES_VERSION],
+[
+AC_CACHE_CHECK(for ncurses version, cf_cv_ncurses_version,[
+       cf_cv_ncurses_version=no
+       cf_tempfile=out$$
+       rm -f $cf_tempfile
+       AC_TRY_RUN([
+#include <${cf_cv_ncurses_header-curses.h}>
+#include <stdio.h>
+int main()
+{
+       FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+       fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+       fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+       fprintf(fp, "old\n");
+# else
+       make an error
+# endif
+#endif
+       exit(0);
+}],[
+       cf_cv_ncurses_version=`cat $cf_tempfile`],,[
+
+       # This will not work if the preprocessor splits the line after the
+       # Autoconf token.  The 'unproto' program does that.
+       cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+       cf_try="$ac_cpp conftest.$ac_ext 2>&AC_FD_CC | grep '^Autoconf ' >conftest.out"
+       AC_TRY_EVAL(cf_try)
+       if test -f conftest.out ; then
+               cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[[^"]]*"%%' -e 's%".*%%'`
+               test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
+               rm -f conftest.out
+       fi
+])
+       rm -f $cf_tempfile
+])
+test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PATH_SYNTAX version: 9 updated: 2002/09/17 23:03:38
+dnl --------------
+dnl Check the argument to see that it looks like a pathname.  Rewrite it if it
+dnl begins with one of the prefix/exec_prefix variables, and then again if the
+dnl result begins with 'NONE'.  This is necessary to work around autoconf's
+dnl delayed evaluation of those symbols.
+AC_DEFUN([CF_PATH_SYNTAX],[
+case ".[$]$1" in #(vi
+.\[$]\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX
+  ;;
+.\[$]{*prefix}*) #(vi
+  eval $1="[$]$1"
+  case ".[$]$1" in #(vi
+  .NONE/*)
+    $1=`echo [$]$1 | sed -e s%NONE%$ac_default_prefix%`
+    ;;
+  esac
+  ;; #(vi
+.NONE/*)
+  $1=`echo [$]$1 | sed -e s%NONE%$ac_default_prefix%`
+  ;;
+*)
+  ifelse($2,,[AC_ERROR([expected a pathname, not \"[$]$1\"])],$2)
+  ;;
+esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PREDEFINE version: 1 updated: 2003/07/26 17:53:56
+dnl ------------
+dnl Add definitions to CPPFLAGS to ensure they're predefined for all compiles.
+dnl
+dnl $1 = symbol to test
+dnl $2 = value (if any) to use for a predefinition
+AC_DEFUN([CF_PREDEFINE],
+[
+AC_MSG_CHECKING(if we must define $1)
+AC_TRY_COMPILE([#include <sys/types.h>
+],[
+#ifndef $1
+make an error
+#endif],[cf_result=no],[cf_result=yes])
+AC_MSG_RESULT($cf_result)
+
+if test "$cf_result" = yes ; then
+       CPPFLAGS="$CPPFLAGS ifelse($2,,-D$1,[-D$1=$2])"
+elif test "x$2" != "x" ; then
+       AC_MSG_CHECKING(checking for compatible value versus $2)
+       AC_TRY_COMPILE([#include <sys/types.h>
+],[
+#if $1-$2 < 0
+make an error
+#endif],[cf_result=yes],[cf_result=no])
+       AC_MSG_RESULT($cf_result)
+       if test "$cf_result" = no ; then
+               # perhaps we can override it - try...
+               CPPFLAGS="$CPPFLAGS -D$1=$2"
+       fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SUBDIR_PATH version: 3 updated: 2002/12/29 18:30:46
+dnl --------------
+dnl Construct a search-list for a nonstandard header/lib-file
+dnl    $1 = the variable to return as result
+dnl    $2 = the package name
+dnl    $3 = the subdirectory, e.g., bin, include or lib
+AC_DEFUN([CF_SUBDIR_PATH],
+[$1=""
+
+test -d [$]HOME && {
+       test -n "$verbose" && echo "    ... testing $3-directories under [$]HOME"
+       test -d [$]HOME/$3 &&          $1="[$]$1 [$]HOME/$3"
+       test -d [$]HOME/$3/$2 &&       $1="[$]$1 [$]HOME/$3/$2"
+       test -d [$]HOME/$3/$2/$3 &&    $1="[$]$1 [$]HOME/$3/$2/$3"
+}
+
+# For other stuff under the home directory, it should be sufficient to put
+# a symbolic link for $HOME/$2 to the actual package location:
+test -d [$]HOME/$2 && {
+       test -n "$verbose" && echo "    ... testing $3-directories under [$]HOME/$2"
+       test -d [$]HOME/$2/$3 &&       $1="[$]$1 [$]HOME/$2/$3"
+       test -d [$]HOME/$2/$3/$2 &&    $1="[$]$1 [$]HOME/$2/$3/$2"
+}
+
+test "$prefix" != /usr/local && \
+test -d /usr/local && {
+       test -n "$verbose" && echo "    ... testing $3-directories under /usr/local"
+       test -d /usr/local/$3 &&       $1="[$]$1 /usr/local/$3"
+       test -d /usr/local/$3/$2 &&    $1="[$]$1 /usr/local/$3/$2"
+       test -d /usr/local/$3/$2/$3 && $1="[$]$1 /usr/local/$3/$2/$3"
+       test -d /usr/local/$2/$3 &&    $1="[$]$1 /usr/local/$2/$3"
+       test -d /usr/local/$2/$3/$2 && $1="[$]$1 /usr/local/$2/$3/$2"
+}
+
+test "$prefix" != NONE && \
+test -d $prefix && {
+       test -n "$verbose" && echo "    ... testing $3-directories under $prefix"
+       test -d $prefix/$3 &&          $1="[$]$1 $prefix/$3"
+       test -d $prefix/$3/$2 &&       $1="[$]$1 $prefix/$3/$2"
+       test -d $prefix/$3/$2/$3 &&    $1="[$]$1 $prefix/$3/$2/$3"
+       test -d $prefix/$2/$3 &&       $1="[$]$1 $prefix/$2/$3"
+       test -d $prefix/$2/$3/$2 &&    $1="[$]$1 $prefix/$2/$3/$2"
+}
+
+test "$prefix" != /opt && \
+test -d /opt && {
+       test -n "$verbose" && echo "    ... testing $3-directories under /opt"
+       test -d /opt/$3 &&             $1="[$]$1 /opt/$3"
+       test -d /opt/$3/$2 &&          $1="[$]$1 /opt/$3/$2"
+       test -d /opt/$3/$2/$3 &&       $1="[$]$1 /opt/$3/$2/$3"
+       test -d /opt/$2/$3 &&          $1="[$]$1 /opt/$2/$3"
+       test -d /opt/$2/$3/$2 &&       $1="[$]$1 /opt/$2/$3/$2"
+}
+
+test "$prefix" != /usr && \
+test -d /usr && {
+       test -n "$verbose" && echo "    ... testing $3-directories under /usr"
+       test -d /usr/$3 &&             $1="[$]$1 /usr/$3"
+       test -d /usr/$3/$2 &&          $1="[$]$1 /usr/$3/$2"
+       test -d /usr/$3/$2/$3 &&       $1="[$]$1 /usr/$3/$2/$3"
+       test -d /usr/$2/$3 &&          $1="[$]$1 /usr/$2/$3"
+}
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SYS_TIME_SELECT version: 4 updated: 2000/10/04 09:18:40
+dnl ------------------
+dnl Check if we can include <sys/time.h> with <sys/select.h>; this breaks on
+dnl older SCO configurations.
+AC_DEFUN([CF_SYS_TIME_SELECT],
+[
+AC_MSG_CHECKING(if sys/time.h works with sys/select.h)
+AC_CACHE_VAL(cf_cv_sys_time_select,[
+AC_TRY_COMPILE([
+#include <sys/types.h>
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif
+],[],[cf_cv_sys_time_select=yes],
+     [cf_cv_sys_time_select=no])
+     ])
+AC_MSG_RESULT($cf_cv_sys_time_select)
+test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59
+dnl --------
+dnl Make an uppercase version of a variable
+dnl $1=uppercase($2)
+AC_DEFUN([CF_UPPER],
+[
+$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UTF8_LIB version: 4 updated: 2003/03/01 18:36:42
+dnl -----------
+dnl Check for multibyte support, and if not found, utf8 compatibility library
+AC_DEFUN([CF_UTF8_LIB],
+[
+AC_CACHE_CHECK(for multibyte character support,cf_cv_utf8_lib,[
+       cf_save_LIBS="$LIBS"
+       AC_TRY_LINK([
+#include <stdlib.h>],[putwc(0,0);],
+       [cf_cv_utf8_lib=yes],
+       [LIBS="-lutf8 $LIBS"
+        AC_TRY_LINK([
+#include <libutf8.h>],[putwc(0,0);],
+               [cf_cv_utf8_lib=add-on],
+               [cf_cv_utf8_lib=no])
+       LIBS="$cf_save_LIBS"
+])])
+
+# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
+# ncurses/ncursesw:
+if test "$cf_cv_utf8_lib" = "add-on" ; then
+       AC_DEFINE(HAVE_LIBUTF8_H)
+       LIBS="-lutf8 $LIBS"
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_CURSES_DIR version: 2 updated: 2002/11/10 14:46:59
+dnl ------------------
+dnl Wrapper for AC_ARG_WITH to specify directory under which to look for curses
+dnl libraries.
+AC_DEFUN([CF_WITH_CURSES_DIR],[
+AC_ARG_WITH(curses-dir,
+       [  --with-curses-dir=DIR   directory in which (n)curses is installed],
+       [CF_PATH_SYNTAX(withval)
+        cf_cv_curses_dir=$withval],
+       [cf_cv_curses_dir=no])
+])dnl
diff --git a/test/background.c b/test/background.c
new file mode 100644 (file)
index 0000000..7b1d227
--- /dev/null
@@ -0,0 +1,68 @@
+/*
+ * $Id: background.c,v 1.1 2003/12/07 00:06:33 tom Exp $
+ */
+
+#include <test.priv.h>
+
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+    short f, b;
+
+    initscr();
+    cbreak();
+    noecho();
+
+    if (has_colors()) {
+       start_color();
+
+       pair_content(0, &f, &b);
+       printw("pair 0 contains (%d,%d)\n", f, b);
+       getch();
+
+       printw("Initializing pair 1 to red/black\n");
+       init_pair(1, COLOR_RED, COLOR_BLACK);
+       bkgdset(' ' | COLOR_PAIR(1));
+       printw("RED/BLACK\n");
+       getch();
+
+       printw("Initializing pair 2 to white/blue\n");
+       init_pair(2, COLOR_WHITE, COLOR_BLUE);
+       bkgdset(' ' | COLOR_PAIR(2));
+       printw("WHITE/BLUE\n");
+       getch();
+
+       printw("Resetting colors to pair 0\n");
+       bkgdset(' ' | COLOR_PAIR(0));
+       printw("Default Colors\n");
+       getch();
+
+       printw("Resetting colors to pair 1\n");
+       bkgdset(' ' | COLOR_PAIR(1));
+       printw("RED/BLACK\n");
+       getch();
+
+       printw("Setting screen to pair 0\n");
+       bkgd(' ' | COLOR_PAIR(0));
+       getch();
+
+       printw("Setting screen to pair 1\n");
+       bkgd(' ' | COLOR_PAIR(1));
+       getch();
+
+       printw("Setting screen to pair 2\n");
+       bkgd(' ' | COLOR_PAIR(2));
+       getch();
+
+       printw("Setting screen to pair 0\n");
+       bkgd(' ' | COLOR_PAIR(0));
+       getch();
+
+    } else {
+       printw("This demo requires a color terminal");
+       getch();
+    }
+    endwin();
+
+    ExitProgram(EXIT_SUCCESS);
+}
index 518308a0f31437878e60c33f979b1439fd84c9aa..749faf015deeeeed49c201edb4265331d9eac491 100644 (file)
--- a/test/bs.c
+++ b/test/bs.c
@@ -7,11 +7,9 @@
  * v2.0 featuring strict ANSI/POSIX conformance, November 1993.
  * v2.1 with ncurses mouse support, September 1995
  *
- * $Id: bs.c,v 1.36 2002/06/29 23:32:18 tom Exp $
+ * $Id: bs.c,v 1.39 2003/12/06 18:10:13 tom Exp $
  */
 
-#include <ctype.h>
-#include <assert.h>
 #include <time.h>
 
 #include <test.priv.h>
@@ -251,7 +249,7 @@ intro(void)
 
 /* VARARGS1 */
 static void
-prompt(int n, NCURSES_CONST char *f, const char *s)
+prompt(int n, const char *f, const char *s)
 /* print a message at the prompt line */
 {
     (void) move(PROMPTLINE + n, 0);
index 09a9823910465f223e3433b5298414f810b0373a..08d33ed43cc0d8014e4a8f3a894215e8e95f943f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1999-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1999-2002,2003 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            *
 /*
  * Author: Thomas E. Dickey <dickey@clark.net> 1999
  *
- * $Id: cardfile.c,v 1.19 2002/09/01 17:59:48 tom Exp $
+ * $Id: cardfile.c,v 1.23 2003/04/26 16:43:56 tom Exp $
  *
- * File format: text beginning in column 1 is a title; other text forms the content.
+ * File format: text beginning in column 1 is a title; other text is content.
  */
 
 #include <test.priv.h>
 
-#if HAVE_FORM_H && HAVE_PANEL_H && HAVE_LIBFORM && HAVE_LIBPANEL
+#if USE_LIBFORM && USE_LIBPANEL
 
 #include <form.h>
 #include <panel.h>
 
-#include <ctype.h>
-
 #define VISIBLE_CARDS 10
 #define OFFSET_CARD 2
 
-#ifndef CTRL
-#define CTRL(x)                ((x) & 0x1f)
-#endif
+enum {
+    MY_CTRL_x = MAX_FORM_COMMAND
+    ,MY_CTRL_N
+    ,MY_CTRL_P
+    ,MY_CTRL_Q
+    ,MY_CTRL_W
+};
 
 typedef struct _card {
     struct _card *link;
@@ -273,14 +275,14 @@ form_virtualize(WINDOW *w)
 
     switch (c) {
     case CTRL('W'):
-       return (MAX_FORM_COMMAND + 4);
+       return (MY_CTRL_W);
     case CTRL('N'):
-       return (MAX_FORM_COMMAND + 3);
+       return (MY_CTRL_N);
     case CTRL('P'):
-       return (MAX_FORM_COMMAND + 2);
+       return (MY_CTRL_P);
     case CTRL('Q'):
     case 033:
-       return (MAX_FORM_COMMAND + 1);
+       return (MY_CTRL_Q);
 
     case KEY_BACKSPACE:
        return (REQ_DEL_PREV);
@@ -311,10 +313,12 @@ make_fields(CARD * p, int form_high, int form_wide)
     f[0] = new_field(1, form_wide, 0, 0, 0, 0);
     set_field_back(f[0], A_REVERSE);
     set_field_buffer(f[0], 0, p->title);
+    field_opts_off(f[0], O_BLANK);
 
     f[1] = new_field(form_high - 1, form_wide, 1, 0, 0, 0);
     set_field_buffer(f[1], 0, p->content);
     set_field_just(f[1], JUSTIFY_LEFT);
+    field_opts_off(f[1], O_BLANK);
 
     f[2] = 0;
     return f;
@@ -394,18 +398,19 @@ cardfile(char *fname)
            break;
        case E_UNKNOWN_COMMAND:
            switch (ch) {
-           case MAX_FORM_COMMAND + 1:
+           case MY_CTRL_Q:
                finished = TRUE;
                break;
-           case MAX_FORM_COMMAND + 2:
+           case MY_CTRL_P:
                top_card = prev_card(top_card);
                order_cards(top_card, visible_cards);
                break;
-           case MAX_FORM_COMMAND + 3:
+           case MY_CTRL_N:
                top_card = next_card(top_card);
                order_cards(top_card, visible_cards);
                break;
-           case MAX_FORM_COMMAND + 4:
+           case MY_CTRL_W:
+               form_driver(top_card->form, REQ_VALIDATION);
                write_data(fname);
                break;
 #if defined(KEY_RESIZE) && HAVE_WRESIZE
diff --git a/test/color_set.c b/test/color_set.c
new file mode 100644 (file)
index 0000000..ed06148
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ * $Id: color_set.c,v 1.2 2003/12/07 00:08:47 tom Exp $
+ */
+
+#include <test.priv.h>
+
+#define SHOW(n) ((n) == ERR ? "ERR" : "OK")
+
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+    short f, b;
+    int i;
+
+    initscr();
+    cbreak();
+    noecho();
+
+    if (has_colors()) {
+       start_color();
+
+       pair_content(0, &f, &b);
+       printw("pair 0 contains (%d,%d)\n", f, b);
+       getch();
+
+       printw("Initializing pair 1 to red/black\n");
+       init_pair(1, COLOR_RED, COLOR_BLACK);
+       i = color_set(1, NULL);
+       printw("RED/BLACK (%s)\n", SHOW(i));
+       getch();
+
+       printw("Initializing pair 2 to white/blue\n");
+       init_pair(2, COLOR_WHITE, COLOR_BLUE);
+       i = color_set(2, NULL);
+       printw("WHITE/BLUE (%s)\n", SHOW(i));
+       getch();
+
+       printw("Resetting colors to pair 0\n");
+       i = color_set(0, NULL);
+       printw("Default Colors (%s)\n", SHOW(i));
+       getch();
+
+       printw("Resetting colors to pair 1\n");
+       i = color_set(1, NULL);
+       printw("RED/BLACK (%s)\n", SHOW(i));
+       getch();
+
+    } else {
+       printw("This demo requires a color terminal");
+       getch();
+    }
+    endwin();
+
+    ExitProgram(EXIT_SUCCESS);
+}
index 8d44c2bb41d48427b8908c15e2aca7ad8c18f6b8..9f5137339948aa1e626054a5aaad816c36148688 100755 (executable)
@@ -1,7 +1,7 @@
 #! /bin/sh
 
 # Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13.20000819 
+# Generated automatically using autoconf version 2.13.20030927 
 # Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
 #
 # This configure script is free software; the Free Software Foundation
@@ -181,8 +181,9 @@ Features and packages:
   --x-includes=DIR        X include files are in DIR
   --x-libraries=DIR       X library files are in DIR
 EOF
-cat <<EOF
+cat <<\EOF
 --enable and --with options recognized:
+  --with-curses-dir=DIR   directory in which (n)curses is installed
   --with-5lib             use SunOS sysv-libraries
   --with-ncursesw         use wide ncurses-libraries (installed)
   --with-ncurses          use ncurses-libraries (installed)
@@ -336,7 +337,7 @@ EOF
     verbose=yes ;;
 
   -version | --version | --versio | --versi | --vers)
-    echo "configure generated by autoconf version 2.13.20000819"
+    echo "configure generated by autoconf version 2.13.20030927"
     exit 0 ;;
 
   -with-* | --with-*)
@@ -526,10 +527,118 @@ fi
 
 
 
+
+test -f config.guess || ( test -f ../config.guess && cp ../config.guess ./ )
+
+
+test -f config.sub || ( test -f ../config.sub && cp ../config.sub ./ )
+
+ac_aux_dir=
+for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
+  if test -f $ac_dir/install-sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install-sh -c"
+    break
+  elif test -f $ac_dir/install.sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install.sh -c"
+    break
+  fi
+done
+if test -z "$ac_aux_dir"; then
+  { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
+fi
+ac_config_guess=$ac_aux_dir/config.guess
+ac_config_sub=$ac_aux_dir/config.sub
+ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
+
+
+if test -f $srcdir/config.guess ; then
+       
+# Make sure we can run config.sub.
+if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
+else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
+fi
+
+echo $ac_n "checking host system type""... $ac_c" 1>&6
+echo "configure:565: checking host system type" >&5
+
+host_alias=$host
+case "$host_alias" in
+NONE)
+  case $nonopt in
+  NONE)
+    if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
+    else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
+    fi ;;
+  *) host_alias=$nonopt ;;
+  esac ;;
+esac
+
+host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
+host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+echo "$ac_t""$host" 1>&6
+
+       system_name="$host_os"
+else
+       system_name="`(uname -s -r) 2>/dev/null`"
+       if test -z "$system_name" ; then
+               system_name="`(hostname) 2>/dev/null`"
+       fi
+fi
+test -n "$system_name" && cat >> confdefs.h <<EOF
+#define SYSTEM_NAME "$system_name"
+EOF
+
+if eval "test \"`echo '$''{'cf_cv_system_name'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  cf_cv_system_name="$system_name"
+fi
+
+
+test -z "$system_name" && system_name="$cf_cv_system_name"
+test -n "$cf_cv_system_name" && echo "$ac_t""Configuring for $cf_cv_system_name" 1>&6
+
+if test ".$system_name" != ".$cf_cv_system_name" ; then
+       echo "$ac_t""Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" 1>&6
+       { echo "configure: error: "Please remove config.cache and try again."" 1>&2; exit 1; }
+fi
+
+
+echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
+echo "configure:613: checking whether ${MAKE-make} sets \${MAKE}" >&5
+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  cat > conftestmake <<\EOF
+all:
+       @echo 'ac_maketemp="${MAKE}"'
+EOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
+if test -n "$ac_maketemp"; then
+  eval ac_cv_prog_make_${ac_make}_set=yes
+else
+  eval ac_cv_prog_make_${ac_make}_set=no
+fi
+rm -f conftestmake
+fi
+if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  SET_MAKE=
+else
+  echo "$ac_t""no" 1>&6
+  SET_MAKE="MAKE=${MAKE-make}"
+fi
+
 # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:533: checking for $ac_word" >&5
+echo "configure:642: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -559,7 +668,7 @@ if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:563: checking for $ac_word" >&5
+echo "configure:672: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -610,7 +719,7 @@ fi
       # Extract the first word of "cl", so it can be a program name with args.
 set dummy cl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:614: checking for $ac_word" >&5
+echo "configure:723: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -642,7 +751,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:646: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:755: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -653,12 +762,12 @@ cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext << EOF
 
-#line 657 "configure"
+#line 766 "configure"
 #include "confdefs.h"
 
 main(){return(0);}
 EOF
-if { (eval echo configure:662: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:771: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -684,12 +793,12 @@ if test $ac_cv_prog_cc_works = no; then
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:688: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:797: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:693: checking whether we are using GNU C" >&5
+echo "configure:802: checking whether we are using GNU C" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -698,7 +807,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:702: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:811: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
@@ -717,7 +826,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
 ac_save_CFLAGS="$CFLAGS"
 CFLAGS=
 echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:721: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:830: checking whether ${CC-cc} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -748,6 +857,86 @@ else
   fi
 fi
 
+echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
+echo "configure:862: checking how to run the C preprocessor" >&5
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+  CPP=
+fi
+if test -z "$CPP"; then
+if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+    # This must be in double quotes, not single quotes, because CPP may get
+  # substituted into the Makefile and "${CC-cc}" will confuse make.
+  CPP="${CC-cc} -E"
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp.
+  cat > conftest.$ac_ext <<EOF
+#line 877 "configure"
+#include "confdefs.h"
+#include <assert.h>
+Syntax Error
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:883: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+  :
+else
+  echo "$ac_err" >&5
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPP="${CC-cc} -E -traditional-cpp"
+  cat > conftest.$ac_ext <<EOF
+#line 894 "configure"
+#include "confdefs.h"
+#include <assert.h>
+Syntax Error
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:900: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+  :
+else
+  echo "$ac_err" >&5
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPP="${CC-cc} -nologo -E"
+  cat > conftest.$ac_ext <<EOF
+#line 911 "configure"
+#include "confdefs.h"
+#include <assert.h>
+Syntax Error
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:917: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+  :
+else
+  echo "$ac_err" >&5
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPP=/lib/cpp
+fi
+rm -f conftest*
+fi
+rm -f conftest*
+fi
+rm -f conftest*
+  ac_cv_prog_CPP="$CPP"
+fi
+  CPP="$ac_cv_prog_CPP"
+else
+  ac_cv_prog_CPP="$CPP"
+fi
+echo "$ac_t""$CPP" 1>&6
+
 
 CC_G_OPT="-g"                          
 CC_SHARED_OPTS=unknown                 
@@ -762,6 +951,9 @@ LDFLAGS_SHARED=""
 LD_MODEL=""                            
 LD_SHARED_OPTS=""                      
 LIBTOOL=""                             
+LIB_CLEAN=""                           
+LIB_COMPILE=""                         
+LIB_LINK=""                            
 LIB_NAME=curses                                
 LIB_PREFIX="-l"                                
 LINK_TESTS=""                          
@@ -769,297 +961,2216 @@ LINT=lint
 LINT_OPTS=""                           
 LOCAL_LDFLAGS=""                       
 MATH_LIB="-lm"                         
-PROG_EXT=""                            
 TEST_ARGS=""                           
 TEST_DEPS=""                           
 cf_cv_abi_version=""                   
 cf_cv_rel_version=""                   
 
+cf_cv_screen=curses
+cf_cv_libtype=
 
-# Check whether --with-5lib or --without-5lib was given.
-if test "${with_5lib+set}" = set; then
-  withval="$with_5lib"
-  LIBS="-L/usr/5lib $LIBS"
-        CPPFLAGS="$CPPFLAGS -I/usr/5include"
-fi
-
-
-
-
-# Check whether --with-ncursesw or --without-ncursesw was given.
-if test "${with_ncursesw+set}" = set; then
-  withval="$with_ncursesw"
-  
-        cat >> confdefs.h <<\EOF
-#define _GNU_SOURCE 1
-EOF
-
-        cat >> confdefs.h <<\EOF
-#define _XOPEN_SOURCE_EXTENDED 1
-EOF
-
-        echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:803: checking for initscr" >&5
-if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
+echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
+echo "configure:974: checking for Cygwin environment" >&5
+if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 808 "configure"
+#line 979 "configure"
 #include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char initscr(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char initscr();
 
 int main() {
 
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_initscr) || defined (__stub___initscr)
-choke me
-#else
-initscr();
+#ifndef __CYGWIN__
+#define __CYGWIN__ __CYGWIN32__
 #endif
-
+return __CYGWIN__;
 ; return 0; }
 EOF
-if { (eval echo configure:831: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:990: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  eval "ac_cv_func_initscr=yes"
+  ac_cv_cygwin=yes
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -rf conftest*
-  eval "ac_cv_func_initscr=no"
+  ac_cv_cygwin=no
 fi
 rm -f conftest*
+rm -f conftest*
 fi
 
-if eval "test \"`echo '$ac_cv_func_'initscr`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  :
-else
-  echo "$ac_t""no" 1>&6
-
-        echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
-echo "configure:850: checking for Gpm_Open in -lgpm" >&5
-ac_lib_var=`echo gpm'_'Gpm_Open | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+echo "$ac_t""$ac_cv_cygwin" 1>&6
+CYGWIN=
+test "$ac_cv_cygwin" = yes && CYGWIN=yes
+echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
+echo "configure:1007: checking for mingw32 environment" >&5
+if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
-  ac_save_LIBS="$LIBS"
-LIBS="-lgpm  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 858 "configure"
+  cat > conftest.$ac_ext <<EOF
+#line 1012 "configure"
 #include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char Gpm_Open();
 
 int main() {
-Gpm_Open()
+return __MINGW32__;
 ; return 0; }
 EOF
-if { (eval echo configure:869: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1019: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
+  ac_cv_mingw32=yes
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
+  ac_cv_mingw32=no
 fi
 rm -f conftest*
-LIBS="$ac_save_LIBS"
+rm -f conftest*
+fi
 
+echo "$ac_t""$ac_cv_mingw32" 1>&6
+MINGW32=
+test "$ac_cv_mingw32" = yes && MINGW32=yes
+
+
+echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
+echo "configure:1038: checking for executable suffix" >&5
+if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test "$CYGWIN" = yes || test "$MINGW32" = yes; then
+  ac_cv_exeext=.exe
+else
+  rm -f conftest*
+  echo 'int main () { return 0; }' > conftest.$ac_ext
+  ac_cv_exeext=
+  if { (eval echo configure:1048: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+    for file in conftest.*; do
+      case $file in
+      *.c | *.o | *.obj) ;;
+      *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
+      esac
+    done
+  else
+    { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; }
+  fi
+  rm -f conftest*
+  test x"${ac_cv_exeext}" = x && ac_cv_exeext=no
+fi
 fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo gpm | sed -e 's/[^a-zA-Z0-9_]/_/g' \
-    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_lib 1
-EOF
 
-  LIBS="-lgpm $LIBS"
+EXEEXT=""
+test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext}
+echo "$ac_t""${ac_cv_exeext}" 1>&6
+ac_exeext=$EXEEXT
 
+echo $ac_n "checking for object suffix""... $ac_c" 1>&6
+echo "configure:1069: checking for object suffix" >&5
+if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
 else
-  echo "$ac_t""no" 1>&6
+  rm -f conftest*
+echo 'int i = 1;' > conftest.$ac_ext
+if { (eval echo configure:1075: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  for ac_file in conftest.*; do
+    case $ac_file in
+    *.c) ;;
+    *) ac_cv_objext=`echo $ac_file | sed -e s/conftest.//` ;;
+    esac
+  done
+else
+  { echo "configure: error: installation or configuration problem; compiler does not work" 1>&2; exit 1; }
+fi
+rm -f conftest*
 fi
 
-        LIB_NAME=ncursesw
-        echo $ac_n "checking for putwc""... $ac_c" 1>&6
-echo "configure:898: checking for putwc" >&5
-if eval "test \"`echo '$''{'ac_cv_func_putwc'+set}'`\" = set"; then
+echo "$ac_t""$ac_cv_objext" 1>&6
+OBJEXT=$ac_cv_objext
+ac_objext=$ac_cv_objext
+
+
+echo $ac_n "checking if we must define _GNU_SOURCE""... $ac_c" 1>&6
+echo "configure:1094: checking if we must define _GNU_SOURCE" >&5
+if eval "test \"`echo '$''{'cf_cv_gnu_source'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 903 "configure"
+  
+cat > conftest.$ac_ext <<EOF
+#line 1100 "configure"
 #include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char putwc(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char putwc();
-
+#include <sys/types.h>
 int main() {
 
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_putwc) || defined (__stub___putwc)
-choke me
-#else
-putwc();
+#ifndef _XOPEN_SOURCE
+make an error
 #endif
-
 ; return 0; }
 EOF
-if { (eval echo configure:926: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1110: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  eval "ac_cv_func_putwc=yes"
+  cf_cv_gnu_source=no
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -rf conftest*
-  eval "ac_cv_func_putwc=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'putwc`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  :
-else
-  echo "$ac_t""no" 1>&6
-
-echo $ac_n "checking for putwc in libutf8""... $ac_c" 1>&6
-echo "configure:945: checking for putwc in libutf8" >&5
-if eval "test \"`echo '$''{'cf_cv_libutf8'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  
-       cf_save_LIBS="$LIBS"
-       LIBS="-lutf8 $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 953 "configure"
+  cf_save="$CPPFLAGS"
+        CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+        cat > conftest.$ac_ext <<EOF
+#line 1120 "configure"
 #include "confdefs.h"
-
-#include <libutf8.h>
+#include <sys/types.h>
 int main() {
-putwc(0,0);
+
+#ifdef _XOPEN_SOURCE
+make an error
+#endif
 ; return 0; }
 EOF
-if { (eval echo configure:961: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1130: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  cf_cv_libutf8=yes
+  cf_cv_gnu_source=no
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -rf conftest*
-  cf_cv_libutf8=no
+  cf_cv_gnu_source=yes
+fi
+rm -f conftest*
+       CPPFLAGS="$cf_save"
+       
 fi
 rm -f conftest*
-       LIBS="$cf_save_LIBS"
 
 fi
 
-echo "$ac_t""$cf_cv_libutf8" 1>&6
+echo "$ac_t""$cf_cv_gnu_source" 1>&6
+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
 
-if test "$cf_cv_libutf8" = yes ; then
-       cat >> confdefs.h <<\EOF
-#define HAVE_LIBUTF8_H 1
-EOF
 
-       LIBS="-lutf8 $LIBS"
-fi
 
+# Check whether --with-curses-dir or --without-curses-dir was given.
+if test "${with_curses_dir+set}" = set; then
+  withval="$with_curses_dir"
+  
+case ".$withval" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval withval="$withval"
+  case ".$withval" in #(vi
+  .NONE/*)
+    withval=`echo $withval | sed -e s%NONE%$ac_default_prefix%`
+    ;;
+  esac
+  ;; #(vi
+.NONE/*)
+  withval=`echo $withval | sed -e s%NONE%$ac_default_prefix%`
+  ;;
+*)
+  { echo "configure: error: expected a pathname, not \"$withval\"" 1>&2; exit 1; }
+  ;;
+esac
+
+        cf_cv_curses_dir=$withval
+else
+  cf_cv_curses_dir=no
 fi
 
-        for p in $HOME /usr/local /usr
-        do
-               if test -f $p/include/ncursesw/curses.h
-               then
-                       CPPFLAGS="$CPPFLAGS -I$p/include/ncursesw"
-                       test $p != /usr && CPPFLAGS="$CPPFLAGS -I$p/include"
-                       test $p != /usr && LIBS="-L$p/lib $LIBS"
-                       break
-               elif test $p != /usr
-               then
-                       if test -f $p/include/curses.h
-                       then
-                               CPPFLAGS="$CPPFLAGS -I$p/include"
-                               LIBS="-L$p/lib $LIBS"
-                               break
-                       fi
-               fi
-        done
-       
-fi
 
+
+
+# Check whether --with-5lib or --without-5lib was given.
+if test "${with_5lib+set}" = set; then
+  withval="$with_5lib"
+  LIBS="-L/usr/5lib $LIBS"
+        CPPFLAGS="$CPPFLAGS -I/usr/5include"
 fi
 
 
 
-# Check whether --with-ncurses or --without-ncurses was given.
-if test "${with_ncurses+set}" = set; then
+# Check whether --with-ncursesw or --without-ncursesw was given.
+if test "${with_ncursesw+set}" = set; then
+  withval="$with_ncursesw"
+  cf_cv_screen=ncursesw
+fi
+
+
+
+# Check whether --with-ncurses or --without-ncurses was given.
+if test "${with_ncurses+set}" = set; then
   withval="$with_ncurses"
-  echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:1016: checking for initscr" >&5
-if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
+  cf_cv_screen=ncurses
+fi
+
+
+case $cf_cv_screen in
+curses)
+       
+
+echo $ac_n "checking for extra include directories""... $ac_c" 1>&6
+echo "configure:1216: checking for extra include directories" >&5
+if eval "test \"`echo '$''{'cf_cv_curses_incdir'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+cf_cv_curses_incdir=no
+case $host_os in #(vi
+hpux10.*|hpux11.*) #(vi
+       test -d /usr/include/curses_colr && \
+       cf_cv_curses_incdir="-I/usr/include/curses_colr"
+       ;;
+sunos3*|sunos4*)
+       test -d /usr/5lib && \
+       test -d /usr/5include && \
+       cf_cv_curses_incdir="-I/usr/5include"
+       ;;
+esac
+
+fi
+
+echo "$ac_t""$cf_cv_curses_incdir" 1>&6
+test "$cf_cv_curses_incdir" != no && CPPFLAGS="$cf_cv_curses_incdir $CPPFLAGS"
+
+echo $ac_n "checking if we have identified curses headers""... $ac_c" 1>&6
+echo "configure:1240: checking if we have identified curses headers" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_header'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+cf_cv_ncurses_header=none
+for cf_header in \
+       curses.h \
+       ncurses.h \
+       ncurses/curses.h \
+       ncurses/ncurses.h
+do
+cat > conftest.$ac_ext <<EOF
+#line 1253 "configure"
+#include "confdefs.h"
+#include <${cf_header}>
+int main() {
+initscr(); tgoto("?", 0,0)
+; return 0; }
+EOF
+if { (eval echo configure:1260: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_cv_ncurses_header=$cf_header; break
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+fi
+rm -f conftest*
+done
+
+fi
+
+echo "$ac_t""$cf_cv_ncurses_header" 1>&6
+
+if test "$cf_cv_ncurses_header" = none ; then
+       { echo "configure: error: No curses header-files found" 1>&2; exit 1; }
+fi
+
+# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
+for ac_hdr in $cf_cv_ncurses_header
+do
+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+echo "configure:1283: checking for $ac_hdr" >&5
+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  cat > conftest.$ac_ext <<EOF
+#line 1288 "configure"
+#include "confdefs.h"
+#include <$ac_hdr>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:1293: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+  rm -rf conftest*
+  eval "ac_cv_header_$ac_safe=yes"
+else
+  echo "$ac_err" >&5
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_header_$ac_safe=no"
+fi
+rm -f conftest*
+fi
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+  cat >> confdefs.h <<EOF
+#define $ac_tr_hdr 1
+EOF
+else
+  echo "$ac_t""no" 1>&6
+fi
+done
+
+
+
+       
+echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
+echo "configure:1323: checking for ncurses version" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       cf_cv_ncurses_version=no
+       cf_tempfile=out$$
+       rm -f $cf_tempfile
+       if test "$cross_compiling" = yes; then
+  
+
+       # This will not work if the preprocessor splits the line after the
+       # Autoconf token.  The 'unproto' program does that.
+       cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+       cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
+       { (eval echo configure:1349: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+       if test -f conftest.out ; then
+               cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'`
+               test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
+               rm -f conftest.out
+       fi
+
+else
+  cat > conftest.$ac_ext <<EOF
+#line 1358 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header-curses.h}>
+#include <stdio.h>
+int main()
+{
+       FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+       fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+       fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+       fprintf(fp, "old\n");
+# else
+       make an error
+# endif
+#endif
+       exit(0);
+}
+EOF
+if { (eval echo configure:1382: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+then
+  
+       cf_cv_ncurses_version=`cat $cf_tempfile`
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+fi
+rm -fr conftest*
+fi
+
+       rm -f $cf_tempfile
+
+fi
+
+echo "$ac_t""$cf_cv_ncurses_version" 1>&6
+test "$cf_cv_ncurses_version" = no || cat >> confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+
+       
+
+echo $ac_n "checking if we have identified curses libraries""... $ac_c" 1>&6
+echo "configure:1406: checking if we have identified curses libraries" >&5
+cat > conftest.$ac_ext <<EOF
+#line 1408 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+initscr(); tgoto("?", 0,0)
+; return 0; }
+EOF
+if { (eval echo configure:1415: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  cf_result=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_result=no
+fi
+rm -f conftest*
+echo "$ac_t""$cf_result" 1>&6
+
+if test "$cf_result" = no ; then
+case $host_os in #(vi
+freebsd*) #(vi
+       echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
+echo "configure:1431: checking for tgoto in -lmytinfo" >&5
+ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-lmytinfo  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1439 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char tgoto();
+
+int main() {
+tgoto()
+; return 0; }
+EOF
+if { (eval echo configure:1450: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  LIBS="-lmytinfo $LIBS"
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+       ;;
+hpux10.*|hpux11.*) #(vi
+       echo $ac_n "checking for initscr in -lcur_colr""... $ac_c" 1>&6
+echo "configure:1473: checking for initscr in -lcur_colr" >&5
+ac_lib_var=`echo cur_colr'_'initscr | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-lcur_colr  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1481 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char initscr();
+
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:1492: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  
+               LIBS="-lcur_colr $LIBS"
+               ac_cv_func_initscr=yes
+               
+else
+  echo "$ac_t""no" 1>&6
+
+       echo $ac_n "checking for initscr in -lHcurses""... $ac_c" 1>&6
+echo "configure:1515: checking for initscr in -lHcurses" >&5
+ac_lib_var=`echo Hcurses'_'initscr | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-lHcurses  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1523 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char initscr();
+
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:1534: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  
+               # HP's header uses __HP_CURSES, but user claims _HP_CURSES.
+               LIBS="-lHcurses $LIBS"
+               CPPFLAGS="-D__HP_CURSES -D_HP_CURSES $CPPFLAGS"
+               ac_cv_func_initscr=yes
+               
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+fi
+
+       ;;
+linux*) # Suse Linux does not follow /usr/lib convention
+       LIBS="$LIBS -L/lib"
+       ;;
+sunos3*|sunos4*)
+       test -d /usr/5lib && \
+       LIBS="$LIBS -L/usr/5lib -lcurses -ltermcap"
+       ac_cv_func_initscr=yes
+       ;;
+esac
+
+if test ".$ac_cv_func_initscr" != .yes ; then
+       cf_save_LIBS="$LIBS"
+       cf_term_lib=""
+       cf_curs_lib=""
+
+       if test ".${cf_cv_ncurses_version-no}" != .no
+       then
+               cf_check_list="ncurses curses cursesX"
+       else
+               cf_check_list="cursesX curses ncurses"
+       fi
+
+       # Check for library containing tgoto.  Do this before curses library
+       # because it may be needed to link the test-case for initscr.
+       echo $ac_n "checking for tgoto""... $ac_c" 1>&6
+echo "configure:1587: checking for tgoto" >&5
+if eval "test \"`echo '$''{'ac_cv_func_tgoto'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 1021 "configure"
+  cat > conftest.$ac_ext <<EOF
+#line 1592 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char tgoto(); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char tgoto();
+
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_tgoto) || defined (__stub___tgoto)
+choke me
+#else
+tgoto();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:1615: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_func_tgoto=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_func_tgoto=no"
+fi
+rm -f conftest*
+fi
+
+if eval "test \"`echo '$ac_cv_func_'tgoto`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  cf_term_lib=predefined
+else
+  echo "$ac_t""no" 1>&6
+
+               for cf_term_lib in $cf_check_list termcap termlib unknown
+               do
+                       echo $ac_n "checking for tgoto in -l$cf_term_lib""... $ac_c" 1>&6
+echo "configure:1636: checking for tgoto in -l$cf_term_lib" >&5
+ac_lib_var=`echo $cf_term_lib'_'tgoto | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-l$cf_term_lib  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1644 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char tgoto();
+
+int main() {
+tgoto()
+; return 0; }
+EOF
+if { (eval echo configure:1655: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  break
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+               done
+       
+fi
+
+
+       # Check for library containing initscr
+       test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
+       for cf_curs_lib in $cf_check_list xcurses jcurses unknown
+       do
+               echo $ac_n "checking for initscr in -l$cf_curs_lib""... $ac_c" 1>&6
+echo "configure:1685: checking for initscr in -l$cf_curs_lib" >&5
+ac_lib_var=`echo $cf_curs_lib'_'initscr | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-l$cf_curs_lib  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1693 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char initscr();
+
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:1704: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  break
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+       done
+       test $cf_curs_lib = unknown && { echo "configure: error: no curses library found" 1>&2; exit 1; }
+
+       LIBS="-l$cf_curs_lib $cf_save_LIBS"
+       if test "$cf_term_lib" = unknown ; then
+               echo $ac_n "checking if we can link with $cf_curs_lib library""... $ac_c" 1>&6
+echo "configure:1730: checking if we can link with $cf_curs_lib library" >&5
+               cat > conftest.$ac_ext <<EOF
+#line 1732 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:1739: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  cf_result=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_result=no
+fi
+rm -f conftest*
+               echo "$ac_t""$cf_result" 1>&6
+               test $cf_result = no && { echo "configure: error: Cannot link curses library" 1>&2; exit 1; }
+       elif test "$cf_curs_lib" = "$cf_term_lib" ; then
+               :
+       elif test "$cf_term_lib" != predefined ; then
+               echo $ac_n "checking if we need both $cf_curs_lib and $cf_term_lib libraries""... $ac_c" 1>&6
+echo "configure:1755: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
+               cat > conftest.$ac_ext <<EOF
+#line 1757 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+initscr(); tgoto((char *)0, 0, 0);
+; return 0; }
+EOF
+if { (eval echo configure:1764: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  cf_result=no
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  
+                       LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
+                       cat > conftest.$ac_ext <<EOF
+#line 1774 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:1781: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  cf_result=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_result=error
+fi
+rm -f conftest*
+                       
+fi
+rm -f conftest*
+               echo "$ac_t""$cf_result" 1>&6
+       fi
+fi
+fi
+
+
+       ;;
+ncurses)
+       
+
+cf_ncuhdr_root=ncurses
+
+test -n "$cf_cv_curses_dir" && \
+test "$cf_cv_curses_dir" != "no" && \
+CPPFLAGS="-I$cf_cv_curses_dir/include -I$cf_cv_curses_dir/include/$cf_ncuhdr_root $CPPFLAGS"
+
+echo $ac_n "checking for $cf_ncuhdr_root header in include-path""... $ac_c" 1>&6
+echo "configure:1811: checking for $cf_ncuhdr_root header in include-path" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_h'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
+       ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+       for cf_header in $cf_header_list
+       do
+               
+       cat > conftest.$ac_ext <<EOF
+#line 1822 "configure"
+#include "confdefs.h"
+
+
+#include <$cf_header>
+int main() {
+
+#ifdef NCURSES_VERSION
+
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+       make an error
+#endif
+#endif
+       
+       
+; return 0; }
+EOF
+if { (eval echo configure:1843: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_cv_ncurses_h=$cf_header
+       
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_cv_ncurses_h=no
+fi
+rm -f conftest*
+
+               test "$cf_cv_ncurses_h" != no && break
+       done
+
+fi
+
+echo "$ac_t""$cf_cv_ncurses_h" 1>&6
+
+if test "$cf_cv_ncurses_h" != no ; then
+       cf_cv_ncurses_header=$cf_cv_ncurses_h
+else
+echo $ac_n "checking for $cf_ncuhdr_root include-path""... $ac_c" 1>&6
+echo "configure:1866: checking for $cf_ncuhdr_root include-path" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_h2'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       test -n "$verbose" && echo
+       cf_search=""
+
+test -d $HOME && {
+       test -n "$verbose" && echo "    ... testing include-directories under $HOME"
+       test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+       test -d $HOME/include/$cf_ncuhdr_root &&       cf_search="$cf_search $HOME/include/$cf_ncuhdr_root"
+       test -d $HOME/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include"
+}
+
+# For other stuff under the home directory, it should be sufficient to put
+# a symbolic link for $HOME/$cf_ncuhdr_root to the actual package location:
+test -d $HOME/$cf_ncuhdr_root && {
+       test -n "$verbose" && echo "    ... testing include-directories under $HOME/$cf_ncuhdr_root"
+       test -d $HOME/$cf_ncuhdr_root/include &&       cf_search="$cf_search $HOME/$cf_ncuhdr_root/include"
+       test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != /usr/local && \
+test -d /usr/local && {
+       test -n "$verbose" && echo "    ... testing include-directories under /usr/local"
+       test -d /usr/local/include &&       cf_search="$cf_search /usr/local/include"
+       test -d /usr/local/include/$cf_ncuhdr_root &&    cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root"
+       test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include"
+       test -d /usr/local/$cf_ncuhdr_root/include &&    cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include"
+       test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != NONE && \
+test -d $prefix && {
+       test -n "$verbose" && echo "    ... testing include-directories under $prefix"
+       test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+       test -d $prefix/include/$cf_ncuhdr_root &&       cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
+       test -d $prefix/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
+       test -d $prefix/$cf_ncuhdr_root/include &&       cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
+       test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != /opt && \
+test -d /opt && {
+       test -n "$verbose" && echo "    ... testing include-directories under /opt"
+       test -d /opt/include &&             cf_search="$cf_search /opt/include"
+       test -d /opt/include/$cf_ncuhdr_root &&          cf_search="$cf_search /opt/include/$cf_ncuhdr_root"
+       test -d /opt/include/$cf_ncuhdr_root/include &&       cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include"
+       test -d /opt/$cf_ncuhdr_root/include &&          cf_search="$cf_search /opt/$cf_ncuhdr_root/include"
+       test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&       cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != /usr && \
+test -d /usr && {
+       test -n "$verbose" && echo "    ... testing include-directories under /usr"
+       test -d /usr/include &&             cf_search="$cf_search /usr/include"
+       test -d /usr/include/$cf_ncuhdr_root &&          cf_search="$cf_search /usr/include/$cf_ncuhdr_root"
+       test -d /usr/include/$cf_ncuhdr_root/include &&       cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include"
+       test -d /usr/$cf_ncuhdr_root/include &&          cf_search="$cf_search /usr/$cf_ncuhdr_root/include"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+       test -d $includedir &&    cf_search="$cf_search $includedir"
+       test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+       test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+       test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
+}
+
+
+       test -n "$verbose" && echo search path $cf_search
+       cf_save2_CPPFLAGS="$CPPFLAGS"
+       for cf_incdir in $cf_search
+       do
+               
+for cf_add_incdir in $cf_incdir
+do
+       while true
+       do
+               case $cf_add_incdir in
+               /usr/include) # (vi
+                       ;;
+               /usr/local/include) # (vi
+                       if test "$GCC" = yes
+                       then
+                               cf_save_CPPFLAGS="$CPPFLAGS"
+                               CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                               cat > conftest.$ac_ext <<EOF
+#line 1961 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int main() {
+printf("Hello")
+; return 0; }
+EOF
+if { (eval echo configure:1968: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  :
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPPFLAGS="$cf_save_CPPFLAGS"
+fi
+rm -f conftest*
+                       fi
+                       ;;
+               *) # (vi
+                       CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                       ;;
+               esac
+               cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+               test "$cf_top_incdir" = "$cf_add_incdir" && break
+               cf_add_incdir="$cf_top_incdir"
+       done
+done
+
+               for cf_header in \
+                       ncurses.h \
+                       curses.h
+               do
+                       
+       cat > conftest.$ac_ext <<EOF
+#line 1995 "configure"
+#include "confdefs.h"
+
+
+#include <$cf_header>
+int main() {
+
+#ifdef NCURSES_VERSION
+
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+       make an error
+#endif
+#endif
+       
+       
+; return 0; }
+EOF
+if { (eval echo configure:2016: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_cv_ncurses_h2=$cf_header
+       
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_cv_ncurses_h2=no
+fi
+rm -f conftest*
+
+                       if test "$cf_cv_ncurses_h2" != no ; then
+                               cf_cv_ncurses_h2=$cf_incdir/$cf_header
+                               test -n "$verbose" && echo $ac_n "      ... found $ac_c" 1>&6
+                               break
+                       fi
+                       test -n "$verbose" && echo "    ... tested $cf_incdir/$cf_header" 1>&6
+               done
+               CPPFLAGS="$cf_save2_CPPFLAGS"
+               test "$cf_cv_ncurses_h2" != no && break
+       done
+       test "$cf_cv_ncurses_h2" = no && { echo "configure: error: not found" 1>&2; exit 1; }
+       
+fi
+
+echo "$ac_t""$cf_cv_ncurses_h2" 1>&6
+
+       cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'`
+       cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
+       if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
+               cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+       fi
+       
+for cf_add_incdir in $cf_1st_incdir
+do
+       while true
+       do
+               case $cf_add_incdir in
+               /usr/include) # (vi
+                       ;;
+               /usr/local/include) # (vi
+                       if test "$GCC" = yes
+                       then
+                               cf_save_CPPFLAGS="$CPPFLAGS"
+                               CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                               cat > conftest.$ac_ext <<EOF
+#line 2063 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int main() {
+printf("Hello")
+; return 0; }
+EOF
+if { (eval echo configure:2070: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  :
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPPFLAGS="$cf_save_CPPFLAGS"
+fi
+rm -f conftest*
+                       fi
+                       ;;
+               *) # (vi
+                       CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                       ;;
+               esac
+               cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+               test "$cf_top_incdir" = "$cf_add_incdir" && break
+               cf_add_incdir="$cf_top_incdir"
+       done
+done
+
+
+fi
+
+cat >> confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+
+case $cf_cv_ncurses_header in # (vi
+*ncurses.h)
+       cat >> confdefs.h <<\EOF
+#define HAVE_NCURSES_H 1
+EOF
+
+       ;;
+esac
+
+case $cf_cv_ncurses_header in # (vi
+ncurses/curses.h|ncurses/ncurses.h)
+       cat >> confdefs.h <<\EOF
+#define HAVE_NCURSES_NCURSES_H 1
+EOF
+
+       ;;
+ncursesw/curses.h|ncursesw/ncurses.h)
+       cat >> confdefs.h <<\EOF
+#define HAVE_NCURSESW_NCURSES_H 1
+EOF
+
+       ;;
+esac
+
+
+echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
+echo "configure:2125: checking for ncurses version" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       cf_cv_ncurses_version=no
+       cf_tempfile=out$$
+       rm -f $cf_tempfile
+       if test "$cross_compiling" = yes; then
+  
+
+       # This will not work if the preprocessor splits the line after the
+       # Autoconf token.  The 'unproto' program does that.
+       cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+       cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
+       { (eval echo configure:2151: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+       if test -f conftest.out ; then
+               cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'`
+               test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
+               rm -f conftest.out
+       fi
+
+else
+  cat > conftest.$ac_ext <<EOF
+#line 2160 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header-curses.h}>
+#include <stdio.h>
+int main()
+{
+       FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+       fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+       fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+       fprintf(fp, "old\n");
+# else
+       make an error
+# endif
+#endif
+       exit(0);
+}
+EOF
+if { (eval echo configure:2184: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+then
+  
+       cf_cv_ncurses_version=`cat $cf_tempfile`
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+fi
+rm -fr conftest*
+fi
+
+       rm -f $cf_tempfile
+
+fi
+
+echo "$ac_t""$cf_cv_ncurses_version" 1>&6
+test "$cf_cv_ncurses_version" = no || cat >> confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+
+
+       
+
+cf_nculib_root=ncurses
+       # This works, except for the special case where we find gpm, but
+       # ncurses is in a nonstandard location via $LIBS, and we really want
+       # to link gpm.
+cf_ncurses_LIBS=""
+cf_ncurses_SAVE="$LIBS"
+echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
+echo "configure:2215: checking for Gpm_Open in -lgpm" >&5
+ac_lib_var=`echo gpm'_'Gpm_Open | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-lgpm  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 2223 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char Gpm_Open();
+
+int main() {
+Gpm_Open()
+; return 0; }
+EOF
+if { (eval echo configure:2234: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  echo $ac_n "checking for initscr in -lgpm""... $ac_c" 1>&6
+echo "configure:2250: checking for initscr in -lgpm" >&5
+ac_lib_var=`echo gpm'_'initscr | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-lgpm  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 2258 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char initscr();
+
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:2269: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  LIBS="$cf_ncurses_SAVE"
+else
+  echo "$ac_t""no" 1>&6
+cf_ncurses_LIBS="-lgpm"
+fi
+
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+
+case $host_os in #(vi
+freebsd*)
+       # This is only necessary if you are linking against an obsolete
+       # version of ncurses (but it should do no harm, since it's static).
+       echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
+echo "configure:2300: checking for tgoto in -lmytinfo" >&5
+ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-lmytinfo  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 2308 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char tgoto();
+
+int main() {
+tgoto()
+; return 0; }
+EOF
+if { (eval echo configure:2319: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+       ;;
+esac
+
+LIBS="$cf_ncurses_LIBS $LIBS"
+
+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+then
+       LIBS="-L$cf_cv_curses_dir/lib -l$cf_nculib_root $LIBS"
+else
+       
+       eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
+       cf_libdir=""
+       echo $ac_n "checking for initscr""... $ac_c" 1>&6
+echo "configure:2352: checking for initscr" >&5
+if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  cat > conftest.$ac_ext <<EOF
+#line 2357 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char initscr(); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char initscr();
+
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_initscr) || defined (__stub___initscr)
+choke me
+#else
+initscr();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:2380: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_func_initscr=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_func_initscr=no"
+fi
+rm -f conftest*
+fi
+
+if eval "test \"`echo '$ac_cv_func_'initscr`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+else
+  echo "$ac_t""no" 1>&6
+
+               cf_save_LIBS="$LIBS"
+               echo $ac_n "checking for initscr in -l$cf_nculib_root""... $ac_c" 1>&6
+echo "configure:2400: checking for initscr in -l$cf_nculib_root" >&5
+               LIBS="-l$cf_nculib_root $LIBS"
+               cat > conftest.$ac_ext <<EOF
+#line 2403 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:2410: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  echo "$ac_t""yes" 1>&6
+                        eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+                       
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  echo "$ac_t""no" 1>&6
+                       cf_search=""
+
+test -d $HOME && {
+       test -n "$verbose" && echo "    ... testing lib-directories under $HOME"
+       test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+       test -d $HOME/lib/$cf_nculib_root &&       cf_search="$cf_search $HOME/lib/$cf_nculib_root"
+       test -d $HOME/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib"
+}
+
+# For other stuff under the home directory, it should be sufficient to put
+# a symbolic link for $HOME/$cf_nculib_root to the actual package location:
+test -d $HOME/$cf_nculib_root && {
+       test -n "$verbose" && echo "    ... testing lib-directories under $HOME/$cf_nculib_root"
+       test -d $HOME/$cf_nculib_root/lib &&       cf_search="$cf_search $HOME/$cf_nculib_root/lib"
+       test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$prefix" != /usr/local && \
+test -d /usr/local && {
+       test -n "$verbose" && echo "    ... testing lib-directories under /usr/local"
+       test -d /usr/local/lib &&       cf_search="$cf_search /usr/local/lib"
+       test -d /usr/local/lib/$cf_nculib_root &&    cf_search="$cf_search /usr/local/lib/$cf_nculib_root"
+       test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib"
+       test -d /usr/local/$cf_nculib_root/lib &&    cf_search="$cf_search /usr/local/$cf_nculib_root/lib"
+       test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$prefix" != NONE && \
+test -d $prefix && {
+       test -n "$verbose" && echo "    ... testing lib-directories under $prefix"
+       test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+       test -d $prefix/lib/$cf_nculib_root &&       cf_search="$cf_search $prefix/lib/$cf_nculib_root"
+       test -d $prefix/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
+       test -d $prefix/$cf_nculib_root/lib &&       cf_search="$cf_search $prefix/$cf_nculib_root/lib"
+       test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$prefix" != /opt && \
+test -d /opt && {
+       test -n "$verbose" && echo "    ... testing lib-directories under /opt"
+       test -d /opt/lib &&             cf_search="$cf_search /opt/lib"
+       test -d /opt/lib/$cf_nculib_root &&          cf_search="$cf_search /opt/lib/$cf_nculib_root"
+       test -d /opt/lib/$cf_nculib_root/lib &&       cf_search="$cf_search /opt/lib/$cf_nculib_root/lib"
+       test -d /opt/$cf_nculib_root/lib &&          cf_search="$cf_search /opt/$cf_nculib_root/lib"
+       test -d /opt/$cf_nculib_root/lib/$cf_nculib_root &&       cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$prefix" != /usr && \
+test -d /usr && {
+       test -n "$verbose" && echo "    ... testing lib-directories under /usr"
+       test -d /usr/lib &&             cf_search="$cf_search /usr/lib"
+       test -d /usr/lib/$cf_nculib_root &&          cf_search="$cf_search /usr/lib/$cf_nculib_root"
+       test -d /usr/lib/$cf_nculib_root/lib &&       cf_search="$cf_search /usr/lib/$cf_nculib_root/lib"
+       test -d /usr/$cf_nculib_root/lib &&          cf_search="$cf_search /usr/$cf_nculib_root/lib"
+}
+
+                       for cf_libdir in $cf_search
+                       do
+                               echo $ac_n "checking for -l$cf_nculib_root in $cf_libdir""... $ac_c" 1>&6
+echo "configure:2479: checking for -l$cf_nculib_root in $cf_libdir" >&5
+                               LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS"
+                               cat > conftest.$ac_ext <<EOF
+#line 2482 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:2489: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  echo "$ac_t""yes" 1>&6
+                                        eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+                                        break
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  echo "$ac_t""no" 1>&6
+                                        LIBS="$cf_save_LIBS"
+fi
+rm -f conftest*
+                       done
+                       
+fi
+rm -f conftest*
+               
+fi
+
+eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
+
+if test $cf_found_library = no ; then
+       { echo "configure: error: Cannot link $cf_nculib_root library" 1>&2; exit 1; }
+fi
+
+
+fi
+
+if test -n "$cf_ncurses_LIBS" ; then
+       echo $ac_n "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS""... $ac_c" 1>&6
+echo "configure:2520: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
+       cf_ncurses_SAVE="$LIBS"
+       for p in $cf_ncurses_LIBS ; do
+               q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+               if test "$q" != "$LIBS" ; then
+                       LIBS="$q"
+               fi
+       done
+       cat > conftest.$ac_ext <<EOF
+#line 2529 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+; return 0; }
+EOF
+if { (eval echo configure:2536: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  echo "$ac_t""yes" 1>&6
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  echo "$ac_t""no" 1>&6
+                LIBS="$cf_ncurses_SAVE"
+fi
+rm -f conftest*
+fi
+
+
+cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+cat >> confdefs.h <<EOF
+#define $cf_nculib_ROOT 1
+EOF
+
+
+       LIB_NAME=ncurses
+       ;;
+ncursesw)
+       cf_cv_libtype=w
+       
+echo $ac_n "checking for multibyte character support""... $ac_c" 1>&6
+echo "configure:2563: checking for multibyte character support" >&5
+if eval "test \"`echo '$''{'cf_cv_utf8_lib'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       cf_save_LIBS="$LIBS"
+       cat > conftest.$ac_ext <<EOF
+#line 2570 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+int main() {
+putwc(0,0);
+; return 0; }
+EOF
+if { (eval echo configure:2578: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  cf_cv_utf8_lib=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  LIBS="-lutf8 $LIBS"
+        cat > conftest.$ac_ext <<EOF
+#line 2587 "configure"
+#include "confdefs.h"
+
+#include <libutf8.h>
+int main() {
+putwc(0,0);
+; return 0; }
+EOF
+if { (eval echo configure:2595: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  cf_cv_utf8_lib=add-on
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_cv_utf8_lib=no
+fi
+rm -f conftest*
+       LIBS="$cf_save_LIBS"
+
+fi
+rm -f conftest*
+fi
+
+echo "$ac_t""$cf_cv_utf8_lib" 1>&6
+
+# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
+# ncurses/ncursesw:
+if test "$cf_cv_utf8_lib" = "add-on" ; then
+       cat >> confdefs.h <<\EOF
+#define HAVE_LIBUTF8_H 1
+EOF
+
+       LIBS="-lutf8 $LIBS"
+fi
+
+       
+echo $ac_n "checking if we must define _XOPEN_SOURCE""... $ac_c" 1>&6
+echo "configure:2625: checking if we must define _XOPEN_SOURCE" >&5
+cat > conftest.$ac_ext <<EOF
+#line 2627 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+int main() {
+
+#ifndef _XOPEN_SOURCE
+make an error
+#endif
+; return 0; }
+EOF
+if { (eval echo configure:2638: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_result=no
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_result=yes
+fi
+rm -f conftest*
+echo "$ac_t""$cf_result" 1>&6
+
+if test "$cf_result" = yes ; then
+       CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500"
+elif test "x500" != "x" ; then
+       echo $ac_n "checking checking for compatible value versus 500""... $ac_c" 1>&6
+echo "configure:2654: checking checking for compatible value versus 500" >&5
+       cat > conftest.$ac_ext <<EOF
+#line 2656 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+int main() {
+
+#if _XOPEN_SOURCE-500 < 0
+make an error
+#endif
+; return 0; }
+EOF
+if { (eval echo configure:2667: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_result=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_result=no
+fi
+rm -f conftest*
+       echo "$ac_t""$cf_result" 1>&6
+       if test "$cf_result" = no ; then
+               # perhaps we can override it - try...
+               CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500"
+       fi
+fi
+
+       
+echo $ac_n "checking if we must define _XOPEN_SOURCE_EXTENDED""... $ac_c" 1>&6
+echo "configure:2686: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
+cat > conftest.$ac_ext <<EOF
+#line 2688 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+int main() {
+
+#ifndef _XOPEN_SOURCE_EXTENDED
+make an error
+#endif
+; return 0; }
+EOF
+if { (eval echo configure:2699: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_result=no
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_result=yes
+fi
+rm -f conftest*
+echo "$ac_t""$cf_result" 1>&6
+
+if test "$cf_result" = yes ; then
+       CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
+elif test "x" != "x" ; then
+       echo $ac_n "checking checking for compatible value versus ""... $ac_c" 1>&6
+echo "configure:2715: checking checking for compatible value versus " >&5
+       cat > conftest.$ac_ext <<EOF
+#line 2717 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+int main() {
+
+#if _XOPEN_SOURCE_EXTENDED- < 0
+make an error
+#endif
+; return 0; }
+EOF
+if { (eval echo configure:2728: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_result=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_result=no
+fi
+rm -f conftest*
+       echo "$ac_t""$cf_result" 1>&6
+       if test "$cf_result" = no ; then
+               # perhaps we can override it - try...
+               CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED="
+       fi
+fi
+
+       
+
+cf_ncuhdr_root=ncursesw
+
+test -n "$cf_cv_curses_dir" && \
+test "$cf_cv_curses_dir" != "no" && \
+CPPFLAGS="-I$cf_cv_curses_dir/include -I$cf_cv_curses_dir/include/$cf_ncuhdr_root $CPPFLAGS"
+
+echo $ac_n "checking for $cf_ncuhdr_root header in include-path""... $ac_c" 1>&6
+echo "configure:2754: checking for $cf_ncuhdr_root header in include-path" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_h'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
+       ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+       for cf_header in $cf_header_list
+       do
+               
+       cat > conftest.$ac_ext <<EOF
+#line 2765 "configure"
+#include "confdefs.h"
+
+
+#define _XOPEN_SOURCE_EXTENDED
+#undef  HAVE_LIBUTF8_H /* in case we used CF_UTF8_LIB */
+#define HAVE_LIBUTF8_H /* to force ncurses' header file to use cchar_t */
+
+#include <$cf_header>
+int main() {
+
+#ifdef NCURSES_VERSION
+
+#ifndef WACS_BSSB
+       make an error
+#endif
+
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+       make an error
+#endif
+#endif
+       
+       
+; return 0; }
+EOF
+if { (eval echo configure:2794: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_cv_ncurses_h=$cf_header
+       
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_cv_ncurses_h=no
+fi
+rm -f conftest*
+
+               test "$cf_cv_ncurses_h" != no && break
+       done
+
+fi
+
+echo "$ac_t""$cf_cv_ncurses_h" 1>&6
+
+if test "$cf_cv_ncurses_h" != no ; then
+       cf_cv_ncurses_header=$cf_cv_ncurses_h
+else
+echo $ac_n "checking for $cf_ncuhdr_root include-path""... $ac_c" 1>&6
+echo "configure:2817: checking for $cf_ncuhdr_root include-path" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_h2'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       test -n "$verbose" && echo
+       cf_search=""
+
+test -d $HOME && {
+       test -n "$verbose" && echo "    ... testing include-directories under $HOME"
+       test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+       test -d $HOME/include/$cf_ncuhdr_root &&       cf_search="$cf_search $HOME/include/$cf_ncuhdr_root"
+       test -d $HOME/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include"
+}
+
+# For other stuff under the home directory, it should be sufficient to put
+# a symbolic link for $HOME/$cf_ncuhdr_root to the actual package location:
+test -d $HOME/$cf_ncuhdr_root && {
+       test -n "$verbose" && echo "    ... testing include-directories under $HOME/$cf_ncuhdr_root"
+       test -d $HOME/$cf_ncuhdr_root/include &&       cf_search="$cf_search $HOME/$cf_ncuhdr_root/include"
+       test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != /usr/local && \
+test -d /usr/local && {
+       test -n "$verbose" && echo "    ... testing include-directories under /usr/local"
+       test -d /usr/local/include &&       cf_search="$cf_search /usr/local/include"
+       test -d /usr/local/include/$cf_ncuhdr_root &&    cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root"
+       test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include"
+       test -d /usr/local/$cf_ncuhdr_root/include &&    cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include"
+       test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != NONE && \
+test -d $prefix && {
+       test -n "$verbose" && echo "    ... testing include-directories under $prefix"
+       test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+       test -d $prefix/include/$cf_ncuhdr_root &&       cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
+       test -d $prefix/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
+       test -d $prefix/$cf_ncuhdr_root/include &&       cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
+       test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != /opt && \
+test -d /opt && {
+       test -n "$verbose" && echo "    ... testing include-directories under /opt"
+       test -d /opt/include &&             cf_search="$cf_search /opt/include"
+       test -d /opt/include/$cf_ncuhdr_root &&          cf_search="$cf_search /opt/include/$cf_ncuhdr_root"
+       test -d /opt/include/$cf_ncuhdr_root/include &&       cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include"
+       test -d /opt/$cf_ncuhdr_root/include &&          cf_search="$cf_search /opt/$cf_ncuhdr_root/include"
+       test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&       cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != /usr && \
+test -d /usr && {
+       test -n "$verbose" && echo "    ... testing include-directories under /usr"
+       test -d /usr/include &&             cf_search="$cf_search /usr/include"
+       test -d /usr/include/$cf_ncuhdr_root &&          cf_search="$cf_search /usr/include/$cf_ncuhdr_root"
+       test -d /usr/include/$cf_ncuhdr_root/include &&       cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include"
+       test -d /usr/$cf_ncuhdr_root/include &&          cf_search="$cf_search /usr/$cf_ncuhdr_root/include"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+       test -d $includedir &&    cf_search="$cf_search $includedir"
+       test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+       test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+       test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
+}
+
+
+       test -n "$verbose" && echo search path $cf_search
+       cf_save2_CPPFLAGS="$CPPFLAGS"
+       for cf_incdir in $cf_search
+       do
+               
+for cf_add_incdir in $cf_incdir
+do
+       while true
+       do
+               case $cf_add_incdir in
+               /usr/include) # (vi
+                       ;;
+               /usr/local/include) # (vi
+                       if test "$GCC" = yes
+                       then
+                               cf_save_CPPFLAGS="$CPPFLAGS"
+                               CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                               cat > conftest.$ac_ext <<EOF
+#line 2912 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int main() {
+printf("Hello")
+; return 0; }
+EOF
+if { (eval echo configure:2919: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  :
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPPFLAGS="$cf_save_CPPFLAGS"
+fi
+rm -f conftest*
+                       fi
+                       ;;
+               *) # (vi
+                       CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                       ;;
+               esac
+               cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+               test "$cf_top_incdir" = "$cf_add_incdir" && break
+               cf_add_incdir="$cf_top_incdir"
+       done
+done
+
+               for cf_header in \
+                       ncurses.h \
+                       curses.h
+               do
+                       
+       cat > conftest.$ac_ext <<EOF
+#line 2946 "configure"
 #include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char initscr(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char initscr();
 
+
+#define _XOPEN_SOURCE_EXTENDED
+#undef  HAVE_LIBUTF8_H /* in case we used CF_UTF8_LIB */
+#define HAVE_LIBUTF8_H /* to force ncurses' header file to use cchar_t */
+
+#include <$cf_header>
 int main() {
 
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_initscr) || defined (__stub___initscr)
-choke me
-#else
-initscr();
+#ifdef NCURSES_VERSION
+
+#ifndef WACS_BSSB
+       make an error
 #endif
 
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+       make an error
+#endif
+#endif
+       
+       
 ; return 0; }
 EOF
-if { (eval echo configure:1044: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2975: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  eval "ac_cv_func_initscr=yes"
+  cf_cv_ncurses_h2=$cf_header
+       
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -rf conftest*
-  eval "ac_cv_func_initscr=no"
+  cf_cv_ncurses_h2=no
 fi
 rm -f conftest*
+
+                       if test "$cf_cv_ncurses_h2" != no ; then
+                               cf_cv_ncurses_h2=$cf_incdir/$cf_header
+                               test -n "$verbose" && echo $ac_n "      ... found $ac_c" 1>&6
+                               break
+                       fi
+                       test -n "$verbose" && echo "    ... tested $cf_incdir/$cf_header" 1>&6
+               done
+               CPPFLAGS="$cf_save2_CPPFLAGS"
+               test "$cf_cv_ncurses_h2" != no && break
+       done
+       test "$cf_cv_ncurses_h2" = no && { echo "configure: error: not found" 1>&2; exit 1; }
+       
 fi
 
-if eval "test \"`echo '$ac_cv_func_'initscr`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
+echo "$ac_t""$cf_cv_ncurses_h2" 1>&6
+
+       cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'`
+       cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
+       if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
+               cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+       fi
+       
+for cf_add_incdir in $cf_1st_incdir
+do
+       while true
+       do
+               case $cf_add_incdir in
+               /usr/include) # (vi
+                       ;;
+               /usr/local/include) # (vi
+                       if test "$GCC" = yes
+                       then
+                               cf_save_CPPFLAGS="$CPPFLAGS"
+                               CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                               cat > conftest.$ac_ext <<EOF
+#line 3022 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int main() {
+printf("Hello")
+; return 0; }
+EOF
+if { (eval echo configure:3029: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   :
 else
-  echo "$ac_t""no" 1>&6
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPPFLAGS="$cf_save_CPPFLAGS"
+fi
+rm -f conftest*
+                       fi
+                       ;;
+               *) # (vi
+                       CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+                       ;;
+               esac
+               cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+               test "$cf_top_incdir" = "$cf_add_incdir" && break
+               cf_add_incdir="$cf_top_incdir"
+       done
+done
+
+
+fi
+
+cat >> confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+
+case $cf_cv_ncurses_header in # (vi
+*ncurses.h)
+       cat >> confdefs.h <<\EOF
+#define HAVE_NCURSES_H 1
+EOF
+
+       ;;
+esac
+
+case $cf_cv_ncurses_header in # (vi
+ncurses/curses.h|ncurses/ncurses.h)
+       cat >> confdefs.h <<\EOF
+#define HAVE_NCURSES_NCURSES_H 1
+EOF
+
+       ;;
+ncursesw/curses.h|ncursesw/ncurses.h)
+       cat >> confdefs.h <<\EOF
+#define HAVE_NCURSESW_NCURSES_H 1
+EOF
+
+       ;;
+esac
+
+
+echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
+echo "configure:3084: checking for ncurses version" >&5
+if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       cf_cv_ncurses_version=no
+       cf_tempfile=out$$
+       rm -f $cf_tempfile
+       if test "$cross_compiling" = yes; then
+  
+
+       # This will not work if the preprocessor splits the line after the
+       # Autoconf token.  The 'unproto' program does that.
+       cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+       cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
+       { (eval echo configure:3110: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+       if test -f conftest.out ; then
+               cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'`
+               test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
+               rm -f conftest.out
+       fi
+
+else
+  cat > conftest.$ac_ext <<EOF
+#line 3119 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header-curses.h}>
+#include <stdio.h>
+int main()
+{
+       FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+       fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+       fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+       fprintf(fp, "old\n");
+# else
+       make an error
+# endif
+#endif
+       exit(0);
+}
+EOF
+if { (eval echo configure:3143: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+then
+  
+       cf_cv_ncurses_version=`cat $cf_tempfile`
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+fi
+rm -fr conftest*
+fi
+
+       rm -f $cf_tempfile
+
+fi
+
+echo "$ac_t""$cf_cv_ncurses_version" 1>&6
+test "$cf_cv_ncurses_version" = no || cat >> confdefs.h <<\EOF
+#define NCURSES 1
+EOF
 
-        echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
-echo "configure:1063: checking for Gpm_Open in -lgpm" >&5
+
+
+       
+
+cf_nculib_root=ncursesw
+       # This works, except for the special case where we find gpm, but
+       # ncurses is in a nonstandard location via $LIBS, and we really want
+       # to link gpm.
+cf_ncurses_LIBS=""
+cf_ncurses_SAVE="$LIBS"
+echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
+echo "configure:3174: checking for Gpm_Open in -lgpm" >&5
 ac_lib_var=`echo gpm'_'Gpm_Open | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1067,7 +3178,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1071 "configure"
+#line 3182 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1078,7 +3189,7 @@ int main() {
 Gpm_Open()
 ; return 0; }
 EOF
-if { (eval echo configure:1082: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3193: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1093,52 +3204,115 @@ LIBS="$ac_save_LIBS"
 fi
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo gpm | sed -e 's/[^a-zA-Z0-9_]/_/g' \
-    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_lib 1
-EOF
+  echo $ac_n "checking for initscr in -lgpm""... $ac_c" 1>&6
+echo "configure:3209: checking for initscr in -lgpm" >&5
+ac_lib_var=`echo gpm'_'initscr | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-lgpm  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 3217 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char initscr();
 
-  LIBS="-lgpm $LIBS"
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:3228: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
 
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  LIBS="$cf_ncurses_SAVE"
 else
   echo "$ac_t""no" 1>&6
+cf_ncurses_LIBS="-lgpm"
 fi
 
-        LIB_NAME=ncurses
-        for p in $HOME /usr/local /usr
-        do
-               if test -f $p/include/ncurses/curses.h
-               then
-                       CPPFLAGS="$CPPFLAGS -I$p/include/ncurses"
-                       test $p != /usr && CPPFLAGS="$CPPFLAGS -I$p/include"
-                       test $p != /usr && LIBS="-L$p/lib $LIBS"
-                       break
-               elif test $p != /usr
-               then
-                       if test -f $p/include/curses.h
-                       then
-                               CPPFLAGS="$CPPFLAGS -I$p/include"
-                               LIBS="-L$p/lib $LIBS"
-                               break
-                       fi
-               fi
-        done
-       
+else
+  echo "$ac_t""no" 1>&6
 fi
 
+
+case $host_os in #(vi
+freebsd*)
+       # This is only necessary if you are linking against an obsolete
+       # version of ncurses (but it should do no harm, since it's static).
+       echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
+echo "configure:3259: checking for tgoto in -lmytinfo" >&5
+ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_save_LIBS="$LIBS"
+LIBS="-lmytinfo  $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 3267 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char tgoto();
+
+int main() {
+tgoto()
+; return 0; }
+EOF
+if { (eval echo configure:3278: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_lib_$ac_lib_var=no"
 fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
 
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
+else
+  echo "$ac_t""no" 1>&6
+fi
 
+       ;;
+esac
 
+LIBS="$cf_ncurses_LIBS $LIBS"
 
-echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:1137: checking for initscr" >&5
+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+then
+       LIBS="-L$cf_cv_curses_dir/lib -l$cf_nculib_root $LIBS"
+else
+       
+       eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
+       cf_libdir=""
+       echo $ac_n "checking for initscr""... $ac_c" 1>&6
+echo "configure:3311: checking for initscr" >&5
 if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1142 "configure"
+#line 3316 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char initscr(); below.  */
@@ -1148,96 +3322,212 @@ else
     builtin and then its argument prototype would still apply.  */
 char initscr();
 
-int main() {
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_initscr) || defined (__stub___initscr)
+choke me
+#else
+initscr();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:3339: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_func_initscr=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_func_initscr=no"
+fi
+rm -f conftest*
+fi
+
+if eval "test \"`echo '$ac_cv_func_'initscr`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+else
+  echo "$ac_t""no" 1>&6
+
+               cf_save_LIBS="$LIBS"
+               echo $ac_n "checking for initscr in -l$cf_nculib_root""... $ac_c" 1>&6
+echo "configure:3359: checking for initscr in -l$cf_nculib_root" >&5
+               LIBS="-l$cf_nculib_root $LIBS"
+               cat > conftest.$ac_ext <<EOF
+#line 3362 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+initscr()
+; return 0; }
+EOF
+if { (eval echo configure:3369: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  echo "$ac_t""yes" 1>&6
+                        eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+                       
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  echo "$ac_t""no" 1>&6
+                       cf_search=""
+
+test -d $HOME && {
+       test -n "$verbose" && echo "    ... testing lib-directories under $HOME"
+       test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+       test -d $HOME/lib/$cf_nculib_root &&       cf_search="$cf_search $HOME/lib/$cf_nculib_root"
+       test -d $HOME/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib"
+}
+
+# For other stuff under the home directory, it should be sufficient to put
+# a symbolic link for $HOME/$cf_nculib_root to the actual package location:
+test -d $HOME/$cf_nculib_root && {
+       test -n "$verbose" && echo "    ... testing lib-directories under $HOME/$cf_nculib_root"
+       test -d $HOME/$cf_nculib_root/lib &&       cf_search="$cf_search $HOME/$cf_nculib_root/lib"
+       test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$prefix" != /usr/local && \
+test -d /usr/local && {
+       test -n "$verbose" && echo "    ... testing lib-directories under /usr/local"
+       test -d /usr/local/lib &&       cf_search="$cf_search /usr/local/lib"
+       test -d /usr/local/lib/$cf_nculib_root &&    cf_search="$cf_search /usr/local/lib/$cf_nculib_root"
+       test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib"
+       test -d /usr/local/$cf_nculib_root/lib &&    cf_search="$cf_search /usr/local/$cf_nculib_root/lib"
+       test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root"
+}
 
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_initscr) || defined (__stub___initscr)
-choke me
-#else
-initscr();
-#endif
+test "$prefix" != NONE && \
+test -d $prefix && {
+       test -n "$verbose" && echo "    ... testing lib-directories under $prefix"
+       test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+       test -d $prefix/lib/$cf_nculib_root &&       cf_search="$cf_search $prefix/lib/$cf_nculib_root"
+       test -d $prefix/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
+       test -d $prefix/$cf_nculib_root/lib &&       cf_search="$cf_search $prefix/$cf_nculib_root/lib"
+       test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$prefix" != /opt && \
+test -d /opt && {
+       test -n "$verbose" && echo "    ... testing lib-directories under /opt"
+       test -d /opt/lib &&             cf_search="$cf_search /opt/lib"
+       test -d /opt/lib/$cf_nculib_root &&          cf_search="$cf_search /opt/lib/$cf_nculib_root"
+       test -d /opt/lib/$cf_nculib_root/lib &&       cf_search="$cf_search /opt/lib/$cf_nculib_root/lib"
+       test -d /opt/$cf_nculib_root/lib &&          cf_search="$cf_search /opt/$cf_nculib_root/lib"
+       test -d /opt/$cf_nculib_root/lib/$cf_nculib_root &&       cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$prefix" != /usr && \
+test -d /usr && {
+       test -n "$verbose" && echo "    ... testing lib-directories under /usr"
+       test -d /usr/lib &&             cf_search="$cf_search /usr/lib"
+       test -d /usr/lib/$cf_nculib_root &&          cf_search="$cf_search /usr/lib/$cf_nculib_root"
+       test -d /usr/lib/$cf_nculib_root/lib &&       cf_search="$cf_search /usr/lib/$cf_nculib_root/lib"
+       test -d /usr/$cf_nculib_root/lib &&          cf_search="$cf_search /usr/$cf_nculib_root/lib"
+}
 
+                       for cf_libdir in $cf_search
+                       do
+                               echo $ac_n "checking for -l$cf_nculib_root in $cf_libdir""... $ac_c" 1>&6
+echo "configure:3438: checking for -l$cf_nculib_root in $cf_libdir" >&5
+                               LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS"
+                               cat > conftest.$ac_ext <<EOF
+#line 3441 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:1165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3448: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
-  eval "ac_cv_func_initscr=yes"
+  echo "$ac_t""yes" 1>&6
+                                        eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+                                        break
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -rf conftest*
-  eval "ac_cv_func_initscr=no"
+  echo "$ac_t""no" 1>&6
+                                        LIBS="$cf_save_LIBS"
+fi
+rm -f conftest*
+                       done
+                       
 fi
 rm -f conftest*
+               
 fi
 
-if eval "test \"`echo '$ac_cv_func_'initscr`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  :
-else
-  echo "$ac_t""no" 1>&6
+eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
 
-echo $ac_n "checking for initscr in -l$LIB_NAME""... $ac_c" 1>&6
-echo "configure:1184: checking for initscr in -l$LIB_NAME" >&5
-ac_lib_var=`echo $LIB_NAME'_'initscr | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-l$LIB_NAME  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 1192 "configure"
-#include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char initscr();
+if test $cf_found_library = no ; then
+       { echo "configure: error: Cannot link $cf_nculib_root library" 1>&2; exit 1; }
+fi
+
+
+fi
 
+if test -n "$cf_ncurses_LIBS" ; then
+       echo $ac_n "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS""... $ac_c" 1>&6
+echo "configure:3479: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
+       cf_ncurses_SAVE="$LIBS"
+       for p in $cf_ncurses_LIBS ; do
+               q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+               if test "$q" != "$LIBS" ; then
+                       LIBS="$q"
+               fi
+       done
+       cat > conftest.$ac_ext <<EOF
+#line 3488 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header-curses.h}>
 int main() {
-initscr()
+initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:1203: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3495: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
+  echo "$ac_t""yes" 1>&6
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
+  echo "$ac_t""no" 1>&6
+                LIBS="$cf_ncurses_SAVE"
 fi
 rm -f conftest*
-LIBS="$ac_save_LIBS"
-
 fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo $LIB_NAME | sed -e 's/[^a-zA-Z0-9_]/_/g' \
-    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_lib 1
+
+
+cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+cat >> confdefs.h <<EOF
+#define $cf_nculib_ROOT 1
 EOF
 
-  LIBS="-l$LIB_NAME $LIBS"
 
-else
-  echo "$ac_t""no" 1>&6
-fi
+       LIB_NAME=ncursesw
+       ;;
+esac
 
-fi
 
-echo $ac_n "checking for form_driver in -lform""... $ac_c" 1>&6
-echo "configure:1233: checking for form_driver in -lform" >&5
-ac_lib_var=`echo form'_'form_driver | sed 'y%./+-%__p_%'`
+
+echo $ac_n "checking for form_driver in -lform$cf_cv_libtype""... $ac_c" 1>&6
+echo "configure:3523: checking for form_driver in -lform$cf_cv_libtype" >&5
+ac_lib_var=`echo form$cf_cv_libtype'_'form_driver | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_save_LIBS="$LIBS"
-LIBS="-lform  $LIBS"
+LIBS="-lform$cf_cv_libtype  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1241 "configure"
+#line 3531 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1248,7 +3538,7 @@ int main() {
 form_driver()
 ; return 0; }
 EOF
-if { (eval echo configure:1252: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3542: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1263,28 +3553,28 @@ LIBS="$ac_save_LIBS"
 fi
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo form | sed -e 's/[^a-zA-Z0-9_]/_/g' \
+    ac_tr_lib=HAVE_LIB`echo form$cf_cv_libtype | sed -e 's/[^a-zA-Z0-9_]/_/g' \
     -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
   cat >> confdefs.h <<EOF
 #define $ac_tr_lib 1
 EOF
 
-  LIBS="-lform $LIBS"
+  LIBS="-lform$cf_cv_libtype $LIBS"
 
 else
   echo "$ac_t""no" 1>&6
 fi
 
-echo $ac_n "checking for menu_driver in -lmenu""... $ac_c" 1>&6
-echo "configure:1280: checking for menu_driver in -lmenu" >&5
-ac_lib_var=`echo menu'_'menu_driver | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for menu_driver in -lmenu$cf_cv_libtype""... $ac_c" 1>&6
+echo "configure:3570: checking for menu_driver in -lmenu$cf_cv_libtype" >&5
+ac_lib_var=`echo menu$cf_cv_libtype'_'menu_driver | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_save_LIBS="$LIBS"
-LIBS="-lmenu  $LIBS"
+LIBS="-lmenu$cf_cv_libtype  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1288 "configure"
+#line 3578 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1295,7 +3585,7 @@ int main() {
 menu_driver()
 ; return 0; }
 EOF
-if { (eval echo configure:1299: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3589: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1310,28 +3600,28 @@ LIBS="$ac_save_LIBS"
 fi
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo menu | sed -e 's/[^a-zA-Z0-9_]/_/g' \
+    ac_tr_lib=HAVE_LIB`echo menu$cf_cv_libtype | sed -e 's/[^a-zA-Z0-9_]/_/g' \
     -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
   cat >> confdefs.h <<EOF
 #define $ac_tr_lib 1
 EOF
 
-  LIBS="-lmenu $LIBS"
+  LIBS="-lmenu$cf_cv_libtype $LIBS"
 
 else
   echo "$ac_t""no" 1>&6
 fi
 
-echo $ac_n "checking for new_panel in -lpanel""... $ac_c" 1>&6
-echo "configure:1327: checking for new_panel in -lpanel" >&5
-ac_lib_var=`echo panel'_'new_panel | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for new_panel in -lpanel$cf_cv_libtype""... $ac_c" 1>&6
+echo "configure:3617: checking for new_panel in -lpanel$cf_cv_libtype" >&5
+ac_lib_var=`echo panel$cf_cv_libtype'_'new_panel | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_save_LIBS="$LIBS"
-LIBS="-lpanel  $LIBS"
+LIBS="-lpanel$cf_cv_libtype  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1335 "configure"
+#line 3625 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1342,7 +3632,7 @@ int main() {
 new_panel()
 ; return 0; }
 EOF
-if { (eval echo configure:1346: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3636: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1357,13 +3647,13 @@ LIBS="$ac_save_LIBS"
 fi
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo panel | sed -e 's/[^a-zA-Z0-9_]/_/g' \
+    ac_tr_lib=HAVE_LIB`echo panel$cf_cv_libtype | sed -e 's/[^a-zA-Z0-9_]/_/g' \
     -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
   cat >> confdefs.h <<EOF
 #define $ac_tr_lib 1
 EOF
 
-  LIBS="-lpanel $LIBS"
+  LIBS="-lpanel$cf_cv_libtype $LIBS"
 
 else
   echo "$ac_t""no" 1>&6
@@ -1371,12 +3661,12 @@ fi
 
 
 echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
-echo "configure:1375: checking return type of signal handlers" >&5
+echo "configure:3665: checking return type of signal handlers" >&5
 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1380 "configure"
+#line 3670 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <signal.h>
@@ -1393,7 +3683,7 @@ int main() {
 int i;
 ; return 0; }
 EOF
-if { (eval echo configure:1397: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3687: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_type_signal=void
 else
@@ -1412,93 +3702,13 @@ EOF
 
 
 
-echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1417: checking how to run the C preprocessor" >&5
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-    # This must be in double quotes, not single quotes, because CPP may get
-  # substituted into the Makefile and "${CC-cc}" will confuse make.
-  CPP="${CC-cc} -E"
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp.
-  cat > conftest.$ac_ext <<EOF
-#line 1432 "configure"
-#include "confdefs.h"
-#include <assert.h>
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1438: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  :
-else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  CPP="${CC-cc} -E -traditional-cpp"
-  cat > conftest.$ac_ext <<EOF
-#line 1449 "configure"
-#include "confdefs.h"
-#include <assert.h>
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1455: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  :
-else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  CPP="${CC-cc} -nologo -E"
-  cat > conftest.$ac_ext <<EOF
-#line 1466 "configure"
-#include "confdefs.h"
-#include <assert.h>
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1472: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  :
-else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  CPP=/lib/cpp
-fi
-rm -f conftest*
-fi
-rm -f conftest*
-fi
-rm -f conftest*
-  ac_cv_prog_CPP="$CPP"
-fi
-  CPP="$ac_cv_prog_CPP"
-else
-  ac_cv_prog_CPP="$CPP"
-fi
-echo "$ac_t""$CPP" 1>&6
-
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:1497: checking for ANSI C header files" >&5
+echo "configure:3707: checking for ANSI C header files" >&5
 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1502 "configure"
+#line 3712 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -1506,7 +3716,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1510: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3720: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -1523,7 +3733,7 @@ rm -f conftest*
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 1527 "configure"
+#line 3737 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -1541,7 +3751,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 1545 "configure"
+#line 3755 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -1562,7 +3772,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 1566 "configure"
+#line 3776 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -1573,7 +3783,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:1577: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:3787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -1597,12 +3807,12 @@ EOF
 fi
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:1601: checking whether time.h and sys/time.h may both be included" >&5
+echo "configure:3811: checking whether time.h and sys/time.h may both be included" >&5
 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1606 "configure"
+#line 3816 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -1611,7 +3821,7 @@ int main() {
 struct tm *tp;
 ; return 0; }
 EOF
-if { (eval echo configure:1615: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3825: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_time=yes
 else
@@ -1648,17 +3858,17 @@ unistd.h \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1652: checking for $ac_hdr" >&5
+echo "configure:3862: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1657 "configure"
+#line 3867 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1662: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3872: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -1686,24 +3896,27 @@ done
 
 
 for ac_func in \
+color_set \
 getnstr \
 gettimeofday \
 napms \
 resize_term \
 resizeterm \
+slk_color \
 strdup \
 use_default_colors \
 vsscanf \
+wchgat \
 wresize \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:1702: checking for $ac_func" >&5
+echo "configure:3915: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1707 "configure"
+#line 3920 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -1726,7 +3939,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:1730: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -1751,8 +3964,85 @@ fi
 done
 
 
+cat > conftest.$ac_ext <<EOF
+#line 3969 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header-curses.h}>
+int main() {
+
+       (void) assume_default_colors (0, 0);
+       (void) curses_version ();
+       (void) define_key (0, 0);
+       (void) is_term_resized (0, 0);
+       (void) key_defined (0);
+       (void) keybound (0, 0);
+       (void) keyok (0, 0);
+       (void) resize_term (0, 0);
+       (void) resizeterm (0, 0);
+       (void) use_default_colors ();
+       (void) use_extended_names (0);
+       (void) wresize (0, 0, 0);
+       
+; return 0; }
+EOF
+if { (eval echo configure:3990: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  cat >> confdefs.h <<\EOF
+#define NCURSES_EXT_FUNCS 1
+EOF
+
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+fi
+rm -f conftest*
+
+
+echo $ac_n "checking if sys/time.h works with sys/select.h""... $ac_c" 1>&6
+echo "configure:4004: checking if sys/time.h works with sys/select.h" >&5
+if eval "test \"`echo '$''{'cf_cv_sys_time_select'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+cat > conftest.$ac_ext <<EOF
+#line 4010 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif
+
+int main() {
+
+; return 0; }
+EOF
+if { (eval echo configure:4025: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_cv_sys_time_select=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_cv_sys_time_select=no
+fi
+rm -f conftest*
+     
+fi
+
+echo "$ac_t""$cf_cv_sys_time_select" 1>&6
+test "$cf_cv_sys_time_select" = yes && cat >> confdefs.h <<\EOF
+#define HAVE_SYS_TIME_SELECT 1
+EOF
+
+
+
 echo $ac_n "checking for function curses_version""... $ac_c" 1>&6
-echo "configure:1756: checking for function curses_version" >&5
+echo "configure:4046: checking for function curses_version" >&5
 if eval "test \"`echo '$''{'cf_cv_func_curses_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1761,10 +4051,10 @@ if test "$cross_compiling" = yes; then
   cf_cv_func_curses_version=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 1765 "configure"
+#line 4055 "configure"
 #include "confdefs.h"
 
-#include <curses.h>
+#include <${cf_cv_ncurses_header-curses.h}>
 int main()
 {
        char temp[1024];
@@ -1773,7 +4063,7 @@ int main()
 }
 
 EOF
-if { (eval echo configure:1777: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4067: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   cf_cv_func_curses_version=yes
 
@@ -1796,8 +4086,9 @@ test "$cf_cv_func_curses_version" = yes && cat >> confdefs.h <<\EOF
 EOF
 
 
+
 echo $ac_n "checking for alternate character set array""... $ac_c" 1>&6
-echo "configure:1801: checking for alternate character set array" >&5
+echo "configure:4092: checking for alternate character set array" >&5
 if eval "test \"`echo '$''{'cf_cv_curses_acs_map'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1806,10 +4097,10 @@ cf_cv_curses_acs_map=unknown
 for name in acs_map _acs_map __acs_map _nc_acs_map
 do
 cat > conftest.$ac_ext <<EOF
-#line 1810 "configure"
+#line 4101 "configure"
 #include "confdefs.h"
 
-#include <curses.h>
+#include <${cf_cv_ncurses_header-curses.h}>
 
 int main() {
 
@@ -1817,7 +4108,7 @@ $name['k'] = ACS_PLUS
 
 ; return 0; }
 EOF
-if { (eval echo configure:1821: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4112: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cf_cv_curses_acs_map=$name; break
 else
@@ -1836,69 +4127,60 @@ test "$cf_cv_curses_acs_map" != unknown && cat >> confdefs.h <<EOF
 EOF
 
 
+
 echo $ac_n "checking for wide alternate character set array""... $ac_c" 1>&6
-echo "configure:1841: checking for wide alternate character set array" >&5
+echo "configure:4133: checking for wide alternate character set array" >&5
 if eval "test \"`echo '$''{'cf_cv_curses_wacs_map'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
-cf_cv_curses_wacs_map=unknown
-for name in wacs_map _wacs_map __wacs_map _nc_wacs
-do
-cat > conftest.$ac_ext <<EOF
-#line 1850 "configure"
+       cf_cv_curses_wacs_map=unknown
+       for name in wacs_map _wacs_map __wacs_map _nc_wacs
+       do
+       cat > conftest.$ac_ext <<EOF
+#line 4142 "configure"
 #include "confdefs.h"
 
 #ifndef _XOPEN_SOURCE_EXTENDED
 #define _XOPEN_SOURCE_EXTENDED
 #endif
-#include <curses.h>
-
+#include <${cf_cv_ncurses_header-curses.h}>
 int main() {
-
-$name['k'] = *WACS_PLUS        
-
+$name['k'] = *WACS_PLUS
 ; return 0; }
 EOF
-if { (eval echo configure:1864: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4153: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
-  cf_cv_curses_wacs_map=$name; break
+  cf_cv_curses_wacs_map=$name
+        break
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
 fi
 rm -f conftest*
-done
-
+       done
 fi
 
 echo "$ac_t""$cf_cv_curses_wacs_map" 1>&6
 
-test "$cf_cv_curses_wacs_map" != unknown && cat >> confdefs.h <<EOF
-#define CURSES_WACS_ARRAY $cf_cv_curses_wacs_map
-EOF
-
-
-
 
-
-echo $ac_n "checking for type attr_t in curses.h""... $ac_c" 1>&6
-echo "configure:1887: checking for type attr_t in curses.h" >&5
+echo $ac_n "checking for type attr_t in ${cf_cv_ncurses_header-curses.h}""... $ac_c" 1>&6
+echo "configure:4169: checking for type attr_t in ${cf_cv_ncurses_header-curses.h}" >&5
 cat > conftest.$ac_ext <<EOF
-#line 1889 "configure"
+#line 4171 "configure"
 #include "confdefs.h"
 
 #ifndef _XOPEN_SOURCE_EXTENDED
 #define _XOPEN_SOURCE_EXTENDED
 #endif
-#include <curses.h>
+#include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 
 attr_t foo
 
 ; return 0; }
 EOF
-if { (eval echo configure:1902: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4184: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -1910,7 +4192,7 @@ fi
 rm -f conftest*
 echo "$ac_t""$cf_result" 1>&6
 if test $cf_result = yes ; then
-        
+       
 cf_result=`echo "have_type_attr_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
        cat >> confdefs.h <<EOF
@@ -1925,23 +4207,23 @@ EOF
 fi
 
 
-echo $ac_n "checking for type mbstate_t in curses.h""... $ac_c" 1>&6
-echo "configure:1930: checking for type mbstate_t in curses.h" >&5
+echo $ac_n "checking for type mbstate_t in ${cf_cv_ncurses_header-curses.h}""... $ac_c" 1>&6
+echo "configure:4212: checking for type mbstate_t in ${cf_cv_ncurses_header-curses.h}" >&5
 cat > conftest.$ac_ext <<EOF
-#line 1932 "configure"
+#line 4214 "configure"
 #include "confdefs.h"
 
 #ifndef _XOPEN_SOURCE_EXTENDED
 #define _XOPEN_SOURCE_EXTENDED
 #endif
-#include <curses.h>
+#include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 
 mbstate_t foo
 
 ; return 0; }
 EOF
-if { (eval echo configure:1945: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4227: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -1953,7 +4235,7 @@ fi
 rm -f conftest*
 echo "$ac_t""$cf_result" 1>&6
 if test $cf_result = yes ; then
-        
+       
 cf_result=`echo "have_type_mbstate_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
 
        cat >> confdefs.h <<EOF
@@ -1969,48 +4251,6 @@ fi
 
 
 
-echo $ac_n "checking if sys/time.h works with sys/select.h""... $ac_c" 1>&6
-echo "configure:1974: checking if sys/time.h works with sys/select.h" >&5
-if eval "test \"`echo '$''{'cf_cv_sys_time_select'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  
-cat > conftest.$ac_ext <<EOF
-#line 1980 "configure"
-#include "confdefs.h"
-
-#include <sys/types.h>
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-
-int main() {
-
-; return 0; }
-EOF
-if { (eval echo configure:1995: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
-  cf_cv_sys_time_select=yes
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  cf_cv_sys_time_select=no
-fi
-rm -f conftest*
-     
-fi
-
-echo "$ac_t""$cf_cv_sys_time_select" 1>&6
-test "$cf_cv_sys_time_select" = yes && cat >> confdefs.h <<\EOF
-#define HAVE_SYS_TIME_SELECT 1
-EOF
-
-
-
 trap '' 1 2 15
 cat > confcache <<\EOF
 # This file is a shell script that caches the results of configure
@@ -2101,7 +4341,7 @@ do
     echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
     exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
   -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
-    echo "$CONFIG_STATUS generated by autoconf version 2.13.20000819"
+    echo "$CONFIG_STATUS generated by autoconf version 2.13.20030927"
     exit 0 ;;
   -help | --help | --hel | --he | --h)
     echo "\$ac_cs_usage"; exit 0 ;;
@@ -2143,7 +4383,14 @@ s%@includedir@%$includedir%g
 s%@oldincludedir@%$oldincludedir%g
 s%@infodir@%$infodir%g
 s%@mandir@%$mandir%g
+s%@host@%$host%g
+s%@host_alias@%$host_alias%g
+s%@host_cpu@%$host_cpu%g
+s%@host_vendor@%$host_vendor%g
+s%@host_os@%$host_os%g
+s%@SET_MAKE@%$SET_MAKE%g
 s%@CC@%$CC%g
+s%@CPP@%$CPP%g
 s%@CC_G_OPT@%$CC_G_OPT%g
 s%@CC_SHARED_OPTS@%$CC_SHARED_OPTS%g
 s%@DFT_DEP_SUFFIX@%$DFT_DEP_SUFFIX%g
@@ -2156,6 +4403,9 @@ s%@LDFLAGS_SHARED@%$LDFLAGS_SHARED%g
 s%@LD_MODEL@%$LD_MODEL%g
 s%@LD_SHARED_OPTS@%$LD_SHARED_OPTS%g
 s%@LIBTOOL@%$LIBTOOL%g
+s%@LIB_CLEAN@%$LIB_CLEAN%g
+s%@LIB_COMPILE@%$LIB_COMPILE%g
+s%@LIB_LINK@%$LIB_LINK%g
 s%@LIB_NAME@%$LIB_NAME%g
 s%@LIB_PREFIX@%$LIB_PREFIX%g
 s%@LINK_TESTS@%$LINK_TESTS%g
@@ -2163,12 +4413,12 @@ s%@LINT@%$LINT%g
 s%@LINT_OPTS@%$LINT_OPTS%g
 s%@LOCAL_LDFLAGS@%$LOCAL_LDFLAGS%g
 s%@MATH_LIB@%$MATH_LIB%g
-s%@PROG_EXT@%$PROG_EXT%g
 s%@TEST_ARGS@%$TEST_ARGS%g
 s%@TEST_DEPS@%$TEST_DEPS%g
 s%@cf_cv_abi_version@%$cf_cv_abi_version%g
 s%@cf_cv_rel_version@%$cf_cv_rel_version%g
-s%@CPP@%$CPP%g
+s%@EXEEXT@%$EXEEXT%g
+s%@OBJEXT@%$OBJEXT%g
 
 CEOF
 EOF
@@ -2379,11 +4629,9 @@ cat >> $CONFIG_STATUS <<\EOF
 # work consistently for different make-programs (the '\$(MODEL)/' confuses
 # some, and the '\$x' confuses others).
 TEST_EOF
-LIST=`make echo_tests`
-LAST=`make echo_suffix`
-for n in $LIST
+LIST=`sed -e 's/[      ].*//' -e '/^[#@]/d' $srcdir/modules`
+for N in $LIST
 do
-       N=`echo $n | sed -e s/${LAST}\$//`
        cat >>Makefile <<TEST_EOF
 
 \$(MODEL)/$N.o : $N.c \\
index 87b409a02b5816cf78f21262622a859062ee4bdd..3e01589614aa8dff15d0501f4c6101b43f133c4d 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
-dnl Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
+dnl Copyright (c) 1998-2003,2004 Free Software Foundation, Inc.              *
 dnl                                                                          *
 dnl Permission is hereby granted, free of charge, to any person obtaining a  *
 dnl copy of this software and associated documentation files (the            *
@@ -28,7 +28,7 @@ dnl***************************************************************************
 dnl
 dnl Author: Thomas E. Dickey 1996, etc.
 dnl
-dnl $Id: configure.in,v 1.36 2002/09/07 16:55:23 tom Exp $
+dnl $Id: configure.in,v 1.47 2004/01/31 00:07:01 tom Exp $
 dnl This is a simple configuration-script for the ncurses test programs that
 dnl allows the test-directory to be separately configured against a reference
 dnl system (i.e., sysvr4 curses)
@@ -38,11 +38,17 @@ dnl It's only for testing purposes.
 dnl
 dnl See http://invisible-island.net/autoconf/ for additional information.
 dnl ---------------------------------------------------------------------------
-AC_PREREQ(2.13.20000819)
+AC_PREREQ(2.13.20020210)
 AC_INIT(ncurses.c)
 AC_CONFIG_HEADER(ncurses_cfg.h:ncurses_tst.hin)
 
+CF_INHERIT_SCRIPT(config.guess)
+CF_INHERIT_SCRIPT(config.sub)
+CF_CHECK_CACHE
+
+AC_PROG_MAKE_SET
 AC_PROG_CC
+AC_PROG_CPP
 
 dnl Things that we don't need (or must override) if we're not building ncurses
 CC_G_OPT="-g"                          AC_SUBST(CC_G_OPT)
@@ -58,6 +64,9 @@ LDFLAGS_SHARED=""                     AC_SUBST(LDFLAGS_SHARED)
 LD_MODEL=""                            AC_SUBST(LD_MODEL)
 LD_SHARED_OPTS=""                      AC_SUBST(LD_SHARED_OPTS)
 LIBTOOL=""                             AC_SUBST(LIBTOOL)
+LIB_CLEAN=""                           AC_SUBST(LIB_CLEAN)
+LIB_COMPILE=""                         AC_SUBST(LIB_COMPILE)
+LIB_LINK=""                            AC_SUBST(LIB_LINK)
 LIB_NAME=curses                                AC_SUBST(LIB_NAME)
 LIB_PREFIX="-l"                                AC_SUBST(LIB_PREFIX)
 LINK_TESTS=""                          AC_SUBST(LINK_TESTS)
@@ -65,105 +74,66 @@ LINT=lint                          AC_SUBST(LINT)
 LINT_OPTS=""                           AC_SUBST(LINT_OPTS)
 LOCAL_LDFLAGS=""                       AC_SUBST(LOCAL_LDFLAGS)
 MATH_LIB="-lm"                         AC_SUBST(MATH_LIB)
-PROG_EXT=""                            AC_SUBST(PROG_EXT)
 TEST_ARGS=""                           AC_SUBST(TEST_ARGS)
 TEST_DEPS=""                           AC_SUBST(TEST_DEPS)
 cf_cv_abi_version=""                   AC_SUBST(cf_cv_abi_version)
 cf_cv_rel_version=""                   AC_SUBST(cf_cv_rel_version)
 
+cf_cv_screen=curses
+cf_cv_libtype=
+
+AC_EXEEXT
+AC_OBJEXT
+CF_GNU_SOURCE
+CF_WITH_CURSES_DIR
+
 dnl SunOS 4.x
 AC_ARG_WITH(5lib,
        [  --with-5lib             use SunOS sysv-libraries],
        [LIBS="-L/usr/5lib $LIBS"
         CPPFLAGS="$CPPFLAGS -I/usr/5include"])
 
-dnl ---------------------------------------------------------------------------
-dnl Check for libutf8
-AC_DEFUN([CF_LIBUTF8],
-[
-AC_CACHE_CHECK(for putwc in libutf8,cf_cv_libutf8,[
-       cf_save_LIBS="$LIBS"
-       LIBS="-lutf8 $LIBS"
-AC_TRY_LINK([
-#include <libutf8.h>],[putwc(0,0);],
-       [cf_cv_libutf8=yes],
-       [cf_cv_libutf8=no])
-       LIBS="$cf_save_LIBS"
-])
-
-if test "$cf_cv_libutf8" = yes ; then
-       AC_DEFINE(HAVE_LIBUTF8_H)
-       LIBS="-lutf8 $LIBS"
-fi
-])dnl
-
 dnl ---------------------------------------------------------------------------
 dnl NcursesW, installed in conventional location
 AC_ARG_WITH(ncursesw,
        [  --with-ncursesw         use wide ncurses-libraries (installed)],
-       [
-        AC_DEFINE(_GNU_SOURCE)
-        AC_DEFINE(_XOPEN_SOURCE_EXTENDED)
-        AC_CHECK_FUNC(initscr,,[
-        AC_CHECK_LIB(gpm,Gpm_Open)
-        LIB_NAME=ncursesw
-        AC_CHECK_FUNC(putwc,,[CF_LIBUTF8])
-        for p in $HOME /usr/local /usr
-        do
-               if test -f $p/include/ncursesw/curses.h
-               then
-                       CPPFLAGS="$CPPFLAGS -I$p/include/ncursesw"
-                       test $p != /usr && CPPFLAGS="$CPPFLAGS -I$p/include"
-                       test $p != /usr && LIBS="-L$p/lib $LIBS"
-                       break
-               elif test $p != /usr
-               then
-                       if test -f $p/include/curses.h
-                       then
-                               CPPFLAGS="$CPPFLAGS -I$p/include"
-                               LIBS="-L$p/lib $LIBS"
-                               break
-                       fi
-               fi
-        done
-       ],[test -d /usr/ccs/lib && LIBS="-L/usr/ccs/lib $LIBS"])])
+       [cf_cv_screen=ncursesw])
 
 dnl Ncurses, installed in conventional location
 AC_ARG_WITH(ncurses,
        [  --with-ncurses          use ncurses-libraries (installed)],
-       [AC_CHECK_FUNC(initscr,,[
-        AC_CHECK_LIB(gpm,Gpm_Open)
-        LIB_NAME=ncurses
-        for p in $HOME /usr/local /usr
-        do
-               if test -f $p/include/ncurses/curses.h
-               then
-                       CPPFLAGS="$CPPFLAGS -I$p/include/ncurses"
-                       test $p != /usr && CPPFLAGS="$CPPFLAGS -I$p/include"
-                       test $p != /usr && LIBS="-L$p/lib $LIBS"
-                       break
-               elif test $p != /usr
-               then
-                       if test -f $p/include/curses.h
-                       then
-                               CPPFLAGS="$CPPFLAGS -I$p/include"
-                               LIBS="-L$p/lib $LIBS"
-                               break
-                       fi
-               fi
-        done
-       ],[test -d /usr/ccs/lib && LIBS="-L/usr/ccs/lib $LIBS"])])
+       [cf_cv_screen=ncurses])
+
+case $cf_cv_screen in
+curses)
+       CF_CURSES_CPPFLAGS
+       CF_NCURSES_VERSION
+       CF_CURSES_LIBS
+       ;;
+ncurses)
+       CF_NCURSES_CPPFLAGS
+       CF_NCURSES_LIBS
+       LIB_NAME=ncurses
+       ;;
+ncursesw)
+       cf_cv_libtype=w
+       CF_UTF8_LIB
+       CF_PREDEFINE(_XOPEN_SOURCE,500)
+       CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED)
+       CF_NCURSES_CPPFLAGS(ncursesw)
+       CF_NCURSES_LIBS(ncursesw)
+       LIB_NAME=ncursesw
+       ;;
+esac
 
 dnl If we've not specified a library, assume we're using sysvr4 libraries
 dnl installed conventionally (e.g., SunOS 5.x - solaris).
 
 dnl Autoconf builds up the $LIBS in reverse order
 
-AC_CHECK_FUNC(initscr,,[
-AC_CHECK_LIB($LIB_NAME,initscr)])
-AC_CHECK_LIB(form,form_driver)
-AC_CHECK_LIB(menu,menu_driver)
-AC_CHECK_LIB(panel,new_panel)
+AC_CHECK_LIB(form$cf_cv_libtype,form_driver)
+AC_CHECK_LIB(menu$cf_cv_libtype,menu_driver)
+AC_CHECK_LIB(panel$cf_cv_libtype,new_panel)
 
 AC_TYPE_SIGNAL
 
@@ -185,122 +155,43 @@ unistd.h \
 )
 
 AC_CHECK_FUNCS( \
+color_set \
 getnstr \
 gettimeofday \
 napms \
 resize_term \
 resizeterm \
+slk_color \
 strdup \
 use_default_colors \
 vsscanf \
+wchgat \
 wresize \
 )
 
-dnl ---------------------------------------------------------------------------
-dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS.
-dnl It's a character string "SVR4", not documented.
-AC_CACHE_CHECK(for function curses_version, cf_cv_func_curses_version,[
-AC_TRY_RUN([
-#include <curses.h>
-int main()
-{
-       char temp[1024];
-       sprintf(temp, "%s\n", curses_version());
-       exit(0);
-}]
-,[cf_cv_func_curses_version=yes]
-,[cf_cv_func_curses_version=no]
-,[cf_cv_func_curses_version=unknown])
-rm -f core])
-test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION)
-
-dnl ---------------------------------------------------------------------------
-dnl Check for likely values of acs_map[]:
-AC_CACHE_CHECK(for alternate character set array, cf_cv_curses_acs_map,[
-cf_cv_curses_acs_map=unknown
-for name in acs_map _acs_map __acs_map _nc_acs_map
-do
 AC_TRY_LINK([
-#include <curses.h>
-],[
-$name['k'] = ACS_PLUS
-],[cf_cv_curses_acs_map=$name; break])
-done
-])
-
-test "$cf_cv_curses_acs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_ACS_ARRAY,$cf_cv_curses_acs_map)
-
-dnl ---------------------------------------------------------------------------
-dnl Check for likely values of wacs_map[]:
-AC_CACHE_CHECK(for wide alternate character set array, cf_cv_curses_wacs_map,[
-cf_cv_curses_wacs_map=unknown
-for name in wacs_map _wacs_map __wacs_map _nc_wacs
-do
-AC_TRY_LINK([
-#ifndef _XOPEN_SOURCE_EXTENDED
-#define _XOPEN_SOURCE_EXTENDED
-#endif
-#include <curses.h>
-],[
-$name['k'] = *WACS_PLUS        
-],[cf_cv_curses_wacs_map=$name; break])
-done
-])
-
-test "$cf_cv_curses_wacs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_WACS_ARRAY,$cf_cv_curses_wacs_map)
-
-dnl --------------------------------------------------------------------------- 
-dnl Make an uppercase version of a variable 
-dnl $1=uppercase($2) 
-AC_DEFUN([CF_UPPER], 
-[ 
-$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-])dnl 
-
-dnl ---------------------------------------------------------------------------
-dnl Check if curses.h defines the given type
-AC_DEFUN([CF_CURSES_TYPE],
+#include <${cf_cv_ncurses_header-curses.h}>],
 [
-AC_MSG_CHECKING(for type $1 in curses.h)
-AC_TRY_COMPILE([
-#ifndef _XOPEN_SOURCE_EXTENDED
-#define _XOPEN_SOURCE_EXTENDED
-#endif
-#include <curses.h>],[
-$1 foo
-],cf_result=yes,cf_result=no)
-AC_MSG_RESULT($cf_result)
-if test $cf_result = yes ; then
-       CF_UPPER(cf_result,have_type_$1)
-       AC_DEFINE_UNQUOTED($cf_result)
-else
-       AC_DEFINE_UNQUOTED($1,$2)
-fi
-])dnl
-
-CF_CURSES_TYPE(attr_t,long)
-CF_CURSES_TYPE(mbstate_t,long)
-
-dnl ---------------------------------------------------------------------------
-dnl Check if we can include <sys/time.h> with <sys/select.h>; this breaks on
-dnl older SCO configurations.
-dnl [CF_SYS_TIME_SELECT]
-
-AC_MSG_CHECKING(if sys/time.h works with sys/select.h)
-AC_CACHE_VAL(cf_cv_sys_time_select,[
-AC_TRY_COMPILE([
-#include <sys/types.h>
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-],[],[cf_cv_sys_time_select=yes],
-     [cf_cv_sys_time_select=no])
-     ])
-AC_MSG_RESULT($cf_cv_sys_time_select)
-test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT)
+       (void) assume_default_colors (0, 0);
+       (void) curses_version ();
+       (void) define_key (0, 0);
+       (void) is_term_resized (0, 0);
+       (void) key_defined (0);
+       (void) keybound (0, 0);
+       (void) keyok (0, 0);
+       (void) resize_term (0, 0);
+       (void) resizeterm (0, 0);
+       (void) use_default_colors ();
+       (void) use_extended_names (0);
+       (void) wresize (0, 0, 0);
+       ],[AC_DEFINE(NCURSES_EXT_FUNCS)])
+
+CF_SYS_TIME_SELECT
+CF_FUNC_CURSES_VERSION
+CF_CURSES_ACS_MAP
+CF_CURSES_WACS_MAP
+CF_CURSES_CHECK_TYPE(attr_t,long)
+CF_CURSES_CHECK_TYPE(mbstate_t,long)
 
 dnl ---------------------------------------------------------------------------
 
@@ -311,11 +202,9 @@ AC_OUTPUT(Makefile,[
 # work consistently for different make-programs (the '\$(MODEL)/' confuses
 # some, and the '\$x' confuses others).
 TEST_EOF
-LIST=`make echo_tests`
-LAST=`make echo_suffix`
-for n in $LIST
+LIST=`sed -e 's/[[     ]].*//' -e '/^[[#@]]/d' $srcdir/modules`
+for N in $LIST
 do
-       N=`echo $n | sed -e s/${LAST}\$//`
        cat >>Makefile <<TEST_EOF
 
 \$(MODEL)/$N.o : $N.c \\
diff --git a/test/demo_defkey.c b/test/demo_defkey.c
new file mode 100644 (file)
index 0000000..ab12063
--- /dev/null
@@ -0,0 +1,250 @@
+/*
+ * $Id: demo_defkey.c,v 1.13 2004/01/04 00:01:13 tom Exp $
+ *
+ * Demonstrate the define_key() function.
+ * Thomas Dickey - 2002/11/23
+ */
+
+#include <test.priv.h>
+
+#if defined(NCURSES_VERSION) && NCURSES_EXT_FUNCS
+
+#include <term.h>
+
+#define MY_LOGFILE "demo_defkey.log"
+
+/*
+ * Log the most recently-written line to our logfile
+ */
+static void
+log_last_line(WINDOW *win)
+{
+    FILE *fp;
+    int y, x, n;
+    char temp[256];
+
+    if ((fp = fopen(MY_LOGFILE, "a")) != 0) {
+       getyx(win, y, x);
+       wmove(win, y - 1, 0);
+       n = winnstr(win, temp, sizeof(temp));
+       while (n-- > 0) {
+           if (isspace(UChar(temp[n])))
+               temp[n] = '\0';
+           else
+               break;
+       }
+       wmove(win, y, x);
+       fprintf(fp, "%s\n", temp);
+       fclose(fp);
+    }
+}
+
+/*
+ * Convert a character to visible form.
+ */
+static char *
+visichar(int ch)
+{
+    static char temp[10];
+
+    ch = UChar(ch);
+    if (ch == '\\') {
+       strcpy(temp, "\\\\");
+    } else if (ch == '\033') {
+       strcpy(temp, "\\E");
+    } else if (ch < ' ') {
+       sprintf(temp, "\\%03o", ch);
+    } else if (ch >= 127) {
+       sprintf(temp, "\\%03o", ch);
+    } else {
+       sprintf(temp, "%c", ch);
+    }
+    return temp;
+}
+
+/*
+ * Convert a string to visible form.
+ */
+static char *
+visible(const char *string)
+{
+    char *result = 0;
+    unsigned need = 1;
+    int pass;
+    int n;
+
+    if (string != 0 && *string != '\0') {
+       for (pass = 0; pass < 2; ++pass) {
+           for (n = 0; string[n] != '\0'; ++n) {
+               char temp[80];
+               strcpy(temp, visichar(string[n]));
+               if (pass)
+                   strcat(result, temp);
+               else
+                   need += strlen(temp);
+           }
+           if (!pass)
+               result = (char *) calloc(need, 1);
+       }
+    } else {
+       result = (char *) calloc(1, 1);
+    }
+    return result;
+}
+
+static void
+really_define_key(WINDOW *win, const char *new_string, int code)
+{
+    int rc;
+    const char *code_name = keyname(code);
+    char *old_string;
+    char *vis_string = 0;
+    char temp[80];
+
+    if (code_name == 0) {
+       sprintf(temp, "Keycode %d", code);
+       code_name = temp;
+    }
+
+    if ((old_string = keybound(code, 0)) != 0) {
+       wprintw(win, "%s is %s\n",
+               code_name,
+               vis_string = visible(old_string));
+    } else {
+       wprintw(win, "%s is not bound\n",
+               code_name);
+    }
+    log_last_line(win);
+    if (vis_string != 0) {
+       free(vis_string);
+       vis_string = 0;
+    }
+
+    vis_string = visible(new_string);
+    if ((rc = key_defined(new_string)) > 0) {
+       wprintw(win, "%s was bound to %s\n", vis_string, keyname(rc));
+       log_last_line(win);
+    } else if (new_string != 0 && rc < 0) {
+       wprintw(win, "%s conflicts with longer strings\n", vis_string);
+       log_last_line(win);
+    }
+    rc = define_key(new_string, code);
+    if (rc == ERR) {
+       wprintw(win, "%s unchanged\n", code_name);
+       log_last_line(win);
+    } else if (new_string != 0) {
+       wprintw(win, "%s is now bound to %s\n",
+               vis_string,
+               code_name);
+       log_last_line(win);
+    } else if (old_string != 0) {
+       wprintw(win, "%s deleted\n", code_name);
+       log_last_line(win);
+    }
+    if (vis_string != 0 && *vis_string != 0)
+       free(vis_string);
+    if (old_string != 0)
+       free(old_string);
+}
+
+static void
+duplicate(WINDOW *win, NCURSES_CONST char *name, int code)
+{
+    char *value = tigetstr(name);
+
+    if (value != 0) {
+       const char *prefix = 0;
+       char temp[BUFSIZ];
+
+       if (!strncmp(value, "\033[", 2)) {
+           prefix = "\033O";
+       } else if (!strncmp(value, "\033O", 2)) {
+           prefix = "\033[";
+       }
+       if (prefix != 0) {
+           sprintf(temp, "%s%s", prefix, value + 2);
+           really_define_key(win, temp, code);
+       }
+    }
+}
+
+static void
+redefine(WINDOW *win, char *string, int code)
+{
+    really_define_key(win, string, code);
+}
+
+static void
+remove_definition(WINDOW *win, int code)
+{
+    really_define_key(win, 0, code);
+}
+
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+    char *fkeys[12];
+    int n;
+    int ch;
+    WINDOW *win;
+
+    unlink(MY_LOGFILE);
+
+    initscr();
+    (void) cbreak();           /* take input chars one at a time, no wait for \n */
+    (void) noecho();           /* don't echo input */
+
+    printw("This demo is best on xterm: it reverses the definitions for f1-f12,\n");
+    printw("adds duplicate definitions for cursor application and normal modes,\n");
+    printw("and removes any definitions for the mini keypad.  Type any of those:\n");
+    refresh();
+
+    win = newwin(LINES - 3, COLS, 3, 0);
+    scrollok(win, TRUE);
+    keypad(win, TRUE);
+    wmove(win, 0, 0);
+
+    /* we do the define_key() calls after keypad(), since the first call to
+     * keypad() initializes the corresponding data.
+     */
+    for (n = 0; n < 12; ++n) {
+       char name[10];
+       sprintf(name, "kf%d", n + 1);
+       fkeys[n] = tigetstr(name);
+    }
+    for (n = 0; n < 12; ++n) {
+       redefine(win, fkeys[11 - n], KEY_F(n + 1));
+    }
+
+    duplicate(win, "kcub1", KEY_LEFT);
+    duplicate(win, "kcuu1", KEY_UP);
+    duplicate(win, "kcud1", KEY_DOWN);
+    duplicate(win, "kcuf1", KEY_RIGHT);
+
+    remove_definition(win, KEY_A1);
+    remove_definition(win, KEY_A3);
+    remove_definition(win, KEY_B2);
+    remove_definition(win, KEY_C1);
+    remove_definition(win, KEY_C3);
+
+    really_define_key(win, "\033O", 1023);
+
+    while ((ch = wgetch(win)) != ERR) {
+       const char *name = keyname(ch);
+       wprintw(win, "Keycode %d, name %s\n",
+               ch,
+               name != 0 ? name : "<null>");
+       log_last_line(win);
+       wclrtoeol(win);
+    }
+    endwin();
+    return EXIT_SUCCESS;
+}
+#else
+int
+main(void)
+{
+    printf("This program requires the ncurses library\n");
+    ExitProgram(EXIT_FAILURE);
+}
+#endif
diff --git a/test/demo_forms.c b/test/demo_forms.c
new file mode 100644 (file)
index 0000000..03965aa
--- /dev/null
@@ -0,0 +1,295 @@
+/*
+ * $Id: demo_forms.c,v 1.3 2003/05/03 22:08:20 tom Exp $
+ *
+ * Demonstrate a variety of functions from the form library.
+ * Thomas Dickey - 2003/4/26
+ */
+/*
+TYPE_ALNUM                     -
+TYPE_ENUM                      -
+TYPE_INTEGER                   -
+TYPE_IPV4                      -
+TYPE_NUMERIC                   -
+TYPE_REGEXP                    -
+data_ahead                     -
+data_behind                    -
+dup_field                      -
+dynamic_field_info             -
+field_arg                      -
+field_back                     -
+field_count                    -
+field_fore                     -
+field_init                     -
+field_just                     -
+field_opts_on                  -
+field_pad                      -
+field_status                   -
+field_term                     -
+field_type                     -
+form_init                      -
+form_opts                      -
+form_opts_off                  -
+form_opts_on                   -
+form_page                      -
+form_request_by_name           -
+form_term                      -
+form_userptr                   -
+free_fieldtype                 -
+link_field                     -
+link_fieldtype                 -
+move_field                     -
+new_page                       -
+pos_form_cursor                        -
+set_current_field              -
+set_field_fore                 -
+set_field_init                 -
+set_field_pad                  -
+set_field_status               -
+set_field_term                 -
+set_fieldtype_arg              -
+set_fieldtype_choice           -
+set_form_fields                        -
+set_form_init                  -
+set_form_opts                  -
+set_form_page                  -
+set_form_term                  -
+set_form_userptr               -
+set_max_field                  -
+*/
+
+#include <test.priv.h>
+
+#if USE_LIBFORM
+
+#include <edit_field.h>
+
+static FIELD *
+make_label(int frow, int fcol, NCURSES_CONST char *label)
+{
+    FIELD *f = new_field(1, strlen(label), frow, fcol, 0, 0);
+
+    if (f) {
+       set_field_buffer(f, 0, label);
+       set_field_opts(f, field_opts(f) & ~O_ACTIVE);
+    }
+    return (f);
+}
+
+/*
+ * Define each field with an extra one, for reflecting "actual" text.
+ */
+static FIELD *
+make_field(int frow, int fcol, int rows, int cols)
+{
+    FIELD *f = new_field(rows, cols, frow, fcol, 0, 1);
+
+    if (f) {
+       set_field_back(f, A_UNDERLINE);
+       set_field_userptr(f, (void *) 0);
+    }
+    return (f);
+}
+
+static void
+display_form(FORM * f)
+{
+    WINDOW *w;
+    int rows, cols;
+
+    scale_form(f, &rows, &cols);
+
+    /*
+     * Put the form at the upper-left corner of the display, with just a box
+     * around it.
+     */
+    if ((w = newwin(rows + 2, cols + 4, 0, 0)) != (WINDOW *) 0) {
+       set_form_win(f, w);
+       set_form_sub(f, derwin(w, rows, cols, 1, 2));
+       box(w, 0, 0);
+       keypad(w, TRUE);
+    }
+
+    if (post_form(f) != E_OK)
+       wrefresh(w);
+}
+
+static void
+erase_form(FORM * f)
+{
+    WINDOW *w = form_win(f);
+    WINDOW *s = form_sub(f);
+
+    unpost_form(f);
+    werase(w);
+    wrefresh(w);
+    delwin(s);
+    delwin(w);
+}
+
+static int
+my_form_driver(FORM * form, int c)
+{
+    switch (c) {
+    case EDIT_FIELD('q'):
+       if (form_driver(form, REQ_VALIDATION) == E_OK)
+           return (TRUE);
+       break;
+    case EDIT_FIELD('h'):
+       help_edit_field();
+       break;
+    default:
+       beep();
+       break;
+    }
+    return (FALSE);
+}
+
+static void
+show_current_field(WINDOW *win, FORM * form)
+{
+    FIELD *field;
+    FIELDTYPE *type;
+    char *buffer;
+    int nbuf;
+
+    if (has_colors()) {
+       wbkgd(win, COLOR_PAIR(1));
+    }
+    werase(win);
+    wprintw(win, "Cursor: %d,%d\n", form->currow, form->curcol);
+    if ((field = current_field(form)) != 0) {
+       wprintw(win, "Field %d:", field_index(field));
+       if ((type = field_type(field)) != 0) {
+           if (type == TYPE_ALNUM)
+               waddstr(win, "ALNUM");
+           else if (type == TYPE_ALPHA)
+               waddstr(win, "ALPHA");
+           else if (type == TYPE_ENUM)
+               waddstr(win, "ENUM");
+           else if (type == TYPE_INTEGER)
+               waddstr(win, "INTEGER");
+           else if (type == TYPE_NUMERIC)
+               waddstr(win, "NUMERIC");
+           else if (type == TYPE_REGEXP)
+               waddstr(win, "REGEXP");
+           else
+               waddstr(win, "other");
+       }
+       waddstr(win, "\n");
+       for (nbuf = 0; nbuf <= 2; ++nbuf) {
+           if ((buffer = field_buffer(field, nbuf)) != 0) {
+               wprintw(win, "buffer %d:", nbuf);
+               wattrset(win, A_REVERSE);
+               waddstr(win, buffer);
+               wattroff(win, A_REVERSE);
+               waddstr(win, "\n");
+           }
+       }
+    }
+    wrefresh(win);
+}
+
+static void
+demo_forms(void)
+{
+    WINDOW *w;
+    FORM *form;
+    FIELD *f[100];
+    int finished = 0, c;
+    unsigned n = 0;
+    int pg;
+    WINDOW *also;
+
+    help_edit_field();
+
+    mvaddstr(4, 57, "Forms Entry Test");
+
+    refresh();
+
+    /* describe the form */
+    for (pg = 0; pg < 3; ++pg) {
+       char label[80];
+       sprintf(label, "Sample Form Page %d", pg + 1);
+       f[n++] = make_label(0, 15, label);
+       set_new_page(f[n - 1], TRUE);
+
+       f[n++] = make_label(2, 0, "Last Name");
+       f[n++] = make_field(3, 0, 1, 18);
+       set_field_type(f[n - 1], TYPE_ALPHA, 1);
+
+       f[n++] = make_label(2, 20, "First Name");
+       f[n++] = make_field(3, 20, 1, 12);
+       set_field_type(f[n - 1], TYPE_ALPHA, 1);
+
+       f[n++] = make_label(2, 34, "Middle Name");
+       f[n++] = make_field(3, 34, 1, 12);
+       set_field_type(f[n - 1], TYPE_ALPHA, 1);
+
+       f[n++] = make_label(5, 0, "Comments");
+       f[n++] = make_field(6, 0, 4, 46);
+    }
+
+    f[n++] = (FIELD *) 0;
+
+    form = new_form(f);
+
+    display_form(form);
+
+    w = form_win(form);
+    also = newwin(getmaxy(stdscr) - getmaxy(w), COLS, getmaxy(w), 0);
+    show_current_field(also, form);
+
+    while (!finished) {
+       switch (edit_field(form, &c)) {
+       case E_OK:
+           break;
+       case E_UNKNOWN_COMMAND:
+           finished = my_form_driver(form, c);
+           break;
+       default:
+           beep();
+           break;
+       }
+       show_current_field(also, form);
+    }
+
+    erase_form(form);
+
+    free_form(form);
+    for (c = 0; f[c] != 0; c++)
+       free_field(f[c]);
+    noraw();
+    nl();
+}
+
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+    initscr();
+    cbreak();
+    noecho();
+    raw();
+    nonl();                    /* lets us read ^M's */
+    intrflush(stdscr, FALSE);
+    keypad(stdscr, TRUE);
+
+    if (has_colors()) {
+       start_color();
+       init_pair(1, COLOR_WHITE, COLOR_BLUE);
+       bkgd(COLOR_PAIR(1));
+       refresh();
+    }
+
+    demo_forms();
+
+    endwin();
+    return EXIT_SUCCESS;
+}
+#else
+int
+main(void)
+{
+    printf("This program requires the curses form library\n");
+    ExitProgram(EXIT_FAILURE);
+}
+#endif
diff --git a/test/demo_keyok.c b/test/demo_keyok.c
new file mode 100644 (file)
index 0000000..670bd54
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ * $Id: demo_keyok.c,v 1.3 2003/05/17 23:18:34 tom Exp $
+ *
+ * Demonstrate the keyok() function.
+ * Thomas Dickey - 2002/11/23
+ */
+
+#include <test.priv.h>
+
+#if defined(NCURSES_VERSION) && NCURSES_EXT_FUNCS
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+    int lastch = ERR;
+    int ch;
+    WINDOW *win;
+
+    initscr();
+    (void) cbreak();           /* take input chars one at a time, no wait for \n */
+    (void) noecho();           /* don't echo input */
+
+    printw("Typing any function key will disable it, but typing it twice in\n");
+    printw("a row will turn it back on (just for a demo).");
+    refresh();
+
+    win = newwin(LINES - 2, COLS, 2, 0);
+    scrollok(win, TRUE);
+    keypad(win, TRUE);
+    wmove(win, 0, 0);
+
+    while ((ch = wgetch(win)) != ERR) {
+       const char *name = keyname(ch);
+       wprintw(win, "Keycode %d, name %s\n",
+               ch,
+               name != 0 ? name : "<null>");
+       wclrtoeol(win);
+       wrefresh(win);
+       if (ch >= KEY_MIN) {
+           keyok(ch, FALSE);
+           lastch = ch;
+       } else if (lastch >= KEY_MIN) {
+           keyok(lastch, TRUE);
+       }
+    }
+    endwin();
+    return EXIT_SUCCESS;
+}
+#else
+int
+main(void)
+{
+    printf("This program requires the ncurses library\n");
+    ExitProgram(EXIT_FAILURE);
+}
+#endif
diff --git a/test/demo_menus.c b/test/demo_menus.c
new file mode 100644 (file)
index 0000000..ad2cefe
--- /dev/null
@@ -0,0 +1,73 @@
+/*
+ * $Id: demo_menus.c,v 1.1 2003/04/26 22:10:43 tom Exp $
+ *
+ * Demonstrate a variety of functions from the menu library.
+ * Thomas Dickey - 2003/4/26
+ */
+/*
+item_count                     -
+item_description               -
+item_init                      -
+item_opts                      -
+item_opts_off                  -
+item_opts_on                   -
+item_term                      -
+item_userptr                   -
+item_visible                   -
+menu_back                      -
+menu_fore                      -
+menu_format                    -
+menu_grey                      -
+menu_init                      -
+menu_mark                      -
+menu_opts                      -
+menu_opts_on                   -
+menu_pad                       -
+menu_pattern                   -
+menu_request_by_name           -
+menu_request_name              -
+menu_spacing                   -
+menu_sub                       -
+menu_term                      -
+menu_userptr                   -
+set_current_item               -
+set_item_init                  -
+set_item_opts                  -
+set_item_term                  -
+set_item_userptr               -
+set_menu_back                  -
+set_menu_fore                  -
+set_menu_grey                  -
+set_menu_init                  -
+set_menu_items                 -
+set_menu_mark                  -
+set_menu_opts                  -
+set_menu_pad                   -
+set_menu_pattern               -
+set_menu_spacing               -
+set_menu_term                  -
+set_menu_userptr               -
+set_top_row                    -
+top_row                                -
+*/
+
+#include <test.priv.h>
+
+#if USE_LIBMENU
+
+#include <menu.h>
+
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+    printf("Not implemented - demo for menu library\n");
+    return EXIT_SUCCESS;
+}
+#else
+int
+main(void)
+{
+    printf("This program requires the curses menu library\n");
+    ExitProgram(EXIT_FAILURE);
+}
+#endif
diff --git a/test/demo_panels.c b/test/demo_panels.c
new file mode 100644 (file)
index 0000000..20fd029
--- /dev/null
@@ -0,0 +1,33 @@
+/*
+ * $Id: demo_panels.c,v 1.1 2003/04/26 22:11:23 tom Exp $
+ *
+ * Demonstrate a variety of functions from the panel library.
+ * Thomas Dickey - 2003/4/26
+ */
+/*
+panel_above                    -
+panel_below                    -
+panel_hidden                   -
+replace_panel                  -
+*/
+
+#include <test.priv.h>
+
+#if USE_LIBPANEL
+
+#include <panel.h>
+
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+    printf("Not implemented - demo for panel library\n");
+    return EXIT_SUCCESS;
+}
+#else
+int
+main(void)
+{
+    printf("This program requires the curses panel library\n");
+    ExitProgram(EXIT_FAILURE);
+}
+#endif
diff --git a/test/edit_field.c b/test/edit_field.c
new file mode 100644 (file)
index 0000000..780bdab
--- /dev/null
@@ -0,0 +1,402 @@
+/*
+ * $Id: edit_field.c,v 1.7 2003/05/17 23:16:13 tom Exp $
+ *
+ * A wrapper for form_driver() which keeps track of the user's editing changes
+ * for each field, and makes the result available as a null-terminated string
+ * in field_buffer(field,1).
+ *
+ * Thomas Dickey - 2003/4/26.
+ */
+
+#include <test.priv.h>
+
+#if USE_LIBFORM
+
+#include <edit_field.h>
+
+#define MY_QUIT                EDIT_FIELD('q')
+#define MY_INS_MODE    EDIT_FIELD('t')
+
+static struct {
+    int code;
+    int result;
+    const char *help;
+} commands[] = {
+
+    {
+       CTRL('A'), REQ_NEXT_CHOICE, ""
+    },
+    {
+       CTRL('B'), REQ_PREV_WORD, "go to previous word"
+    },
+    {
+       CTRL('C'), REQ_CLR_EOL, "clear to end of line"
+    },
+    {
+       CTRL('D'), REQ_DOWN_FIELD, "move downward to field"
+    },
+    {
+       CTRL('E'), REQ_END_FIELD, "go to end of field"
+    },
+    {
+       CTRL('F'), REQ_NEXT_PAGE, "go to next page"
+    },
+    {
+       CTRL('G'), REQ_DEL_WORD, "delete current word"
+    },
+    {
+       CTRL('H'), REQ_DEL_PREV, "delete previous character"
+    },
+    {
+       CTRL('I'), REQ_INS_CHAR, "insert character"
+    },
+    {
+       CTRL('K'), REQ_CLR_EOF, "clear to end of field"
+    },
+    {
+       CTRL('L'), REQ_LEFT_FIELD, "go to field to left"
+    },
+    {
+       CTRL('M'), REQ_NEW_LINE, "insert/overlay new line"
+    },
+    {
+       CTRL('N'), REQ_NEXT_FIELD, "go to next field"
+    },
+    {
+       CTRL('O'), REQ_INS_LINE, "insert blank line at cursor"
+    },
+    {
+       CTRL('P'), REQ_PREV_FIELD, "go to previous field"
+    },
+    {
+       CTRL('Q'), MY_QUIT, "exit form"
+    },
+    {
+       CTRL('R'), REQ_RIGHT_FIELD, "go to field to right"
+    },
+    {
+       CTRL('S'), REQ_BEG_FIELD, "go to beginning of field"
+    },
+    {
+       CTRL('U'), REQ_UP_FIELD, "move upward to field"
+    },
+    {
+       CTRL('V'), REQ_DEL_CHAR, "delete character"
+    },
+    {
+       CTRL('W'), REQ_NEXT_WORD, "go to next word"
+    },
+    {
+       CTRL('X'), REQ_CLR_FIELD, "clear field"
+    },
+    {
+       CTRL('Y'), REQ_DEL_LINE, "delete line"
+    },
+    {
+       CTRL('Z'), REQ_PREV_CHOICE, ""
+    },
+    {
+       CTRL('['), MY_QUIT, "exit form"
+    },
+    {
+       CTRL(']'), MY_INS_MODE, "toggle REQ_INS_MODE/REQ_OVL_MODE",
+    },
+    {
+       KEY_F(1), EDIT_FIELD('h'), "show this screen",
+    },
+    {
+       KEY_BACKSPACE, REQ_DEL_PREV, "delete previous character"
+    },
+    {
+       KEY_DOWN, REQ_DOWN_CHAR, "move down 1 character"
+    },
+    {
+       KEY_END, REQ_LAST_FIELD, "go to last field"
+    },
+    {
+       KEY_HOME, REQ_FIRST_FIELD, "go to first field"
+    },
+    {
+       KEY_LEFT, REQ_LEFT_CHAR, "move left 1 character"
+    },
+    {
+       KEY_LL, REQ_LAST_FIELD, "go to last field"
+    },
+    {
+       KEY_NEXT, REQ_NEXT_FIELD, "go to next field"
+    },
+    {
+       KEY_NPAGE, REQ_NEXT_PAGE, "go to next page"
+    },
+    {
+       KEY_PPAGE, REQ_PREV_PAGE, "go to previous page"
+    },
+    {
+       KEY_PREVIOUS, REQ_PREV_FIELD, "go to previous field"
+    },
+    {
+       KEY_RIGHT, REQ_RIGHT_CHAR, "move right 1 character"
+    },
+    {
+       KEY_UP, REQ_UP_CHAR, "move up 1 character"
+    }
+};
+
+static WINDOW *old_window;
+
+static void
+begin_popup(void)
+{
+    doupdate();
+    old_window = dupwin(curscr);
+}
+
+static void
+end_popup(void)
+{
+    touchwin(old_window);
+    wnoutrefresh(old_window);
+    doupdate();
+    delwin(old_window);
+}
+
+/*
+ * Display a temporary window listing the keystroke-commands we recognize.
+ */
+void
+help_edit_field(void)
+{
+    int x0 = 4;
+    int y0 = 2;
+    int y1 = 0;
+    int y2 = 0;
+    int wide = COLS - ((x0 + 1) * 2);
+    int high = LINES - ((y0 + 1) * 2);
+    WINDOW *help = newwin(high, wide, y0, x0);
+    WINDOW *data = newpad(2 + SIZEOF(commands), wide - 4);
+    unsigned n;
+    int ch = ERR;
+
+    begin_popup();
+
+    keypad(help, TRUE);
+    keypad(data, TRUE);
+    waddstr(data, "Defined form-traversal keys:\n");
+    for (n = 0; n < SIZEOF(commands); ++n) {
+       const char *name;
+#ifdef NCURSES_VERSION
+       if ((name = form_request_name(commands[n].result)) == 0)
+#endif
+           name = commands[n].help;
+       wprintw(data, "%s -- %s\n",
+               keyname(commands[n].code),
+               name != 0 ? name : commands[n].help);
+    }
+    waddstr(data, "Arrow keys move within a field as you would expect.");
+    y2 = getcury(data);
+
+    do {
+       switch (ch) {
+       case CTRL('P'):
+       case KEY_UP:
+           if (y1 > 0)
+               --y1;
+           else
+               beep();
+           break;
+       case CTRL('N'):
+       case KEY_DOWN:
+           if (y1 < y2)
+               ++y1;
+           else
+               beep();
+           break;
+       default:
+           beep();
+           break;
+       case ERR:
+           break;
+       }
+       werase(help);
+       box(help, 0, 0);
+       wnoutrefresh(help);
+       pnoutrefresh(data, y1, 0, y0 + 1, x0 + 1, high, wide);
+       doupdate();
+    } while ((ch = wgetch(data)) != ERR && ch != QUIT && ch != ESCAPE);
+    werase(help);
+    wrefresh(help);
+    delwin(help);
+    delwin(data);
+
+    end_popup();
+}
+
+static int
+offset_in_field(FORM * form)
+{
+    FIELD *field = current_field(form);
+    return form->curcol + form->currow * field->dcols;
+}
+
+int
+edit_field(FORM * form, int *result)
+{
+    int ch = wgetch(form_win(form));
+    int status;
+    FIELD *before;
+    FIELD *after;
+    unsigned n;
+    char lengths[80];
+    int length;
+    char *buffer;
+    int before_row = form->currow;
+    int before_col = form->curcol;
+    int before_off = offset_in_field(form);
+
+    before = current_field(form);
+    set_field_back(before, A_NORMAL);
+    if (ch <= KEY_MAX) {
+       set_field_back(before, A_REVERSE);
+    } else if (ch <= MAX_FORM_COMMAND) {
+       set_field_back(before, A_UNDERLINE);
+    }
+
+    *result = ch;
+    for (n = 0; n < SIZEOF(commands); ++n) {
+       if (commands[n].code == ch) {
+           *result = commands[n].result;
+           break;
+       }
+    }
+
+    status = form_driver(form, *result);
+
+    if (status == E_OK) {
+       bool modified = TRUE;
+
+       length = 0;
+       if ((buffer = field_buffer(before, 1)) != 0)
+           length = atoi(buffer);
+       if (length < before_off)
+           length = before_off;
+       switch (*result) {
+       case REQ_CLR_EOF:
+           length = before_off;
+           break;
+       case REQ_CLR_EOL:
+           if (before_row + 1 == before->rows)
+               length = before_off;
+           break;
+       case REQ_CLR_FIELD:
+           length = 0;
+           break;
+       case REQ_DEL_CHAR:
+           if (length > before_off)
+               --length;
+           break;
+       case REQ_DEL_PREV:
+           if (length > 0) {
+               if (before_col > 0) {
+                   --length;
+               } else if (before_row > 0) {
+                   length -= before->cols + before_col;
+               }
+           }
+           break;
+       case REQ_NEW_LINE:
+           length += before->cols;
+           break;
+#if 0
+           /* FIXME: finish these */
+       case REQ_DEL_LINE:      /* delete line */
+       case REQ_DEL_WORD:      /* delete word at cursor */
+       case REQ_INS_CHAR:      /* insert blank char at cursor */
+       case REQ_INS_LINE:      /* insert blank line at cursor */
+       case REQ_INS_MODE:      /* begin insert mode */
+       case REQ_OVL_MODE:      /* begin overlay mode */
+#endif
+           /* ignore all of the motion commands */
+       case REQ_SCR_BCHAR:     /* FALLTHRU */
+       case REQ_SCR_BHPAGE:    /* FALLTHRU */
+       case REQ_SCR_BLINE:     /* FALLTHRU */
+       case REQ_SCR_BPAGE:     /* FALLTHRU */
+       case REQ_SCR_FCHAR:     /* FALLTHRU */
+       case REQ_SCR_FHPAGE:    /* FALLTHRU */
+       case REQ_SCR_FLINE:     /* FALLTHRU */
+       case REQ_SCR_FPAGE:     /* FALLTHRU */
+       case REQ_SCR_HBHALF:    /* FALLTHRU */
+       case REQ_SCR_HBLINE:    /* FALLTHRU */
+       case REQ_SCR_HFHALF:    /* FALLTHRU */
+       case REQ_SCR_HFLINE:    /* FALLTHRU */
+       case REQ_BEG_FIELD:     /* FALLTHRU */
+       case REQ_BEG_LINE:      /* FALLTHRU */
+       case REQ_DOWN_CHAR:     /* FALLTHRU */
+       case REQ_DOWN_FIELD:    /* FALLTHRU */
+       case REQ_END_FIELD:     /* FALLTHRU */
+       case REQ_END_LINE:      /* FALLTHRU */
+       case REQ_FIRST_FIELD:   /* FALLTHRU */
+       case REQ_FIRST_PAGE:    /* FALLTHRU */
+       case REQ_LAST_FIELD:    /* FALLTHRU */
+       case REQ_LAST_PAGE:     /* FALLTHRU */
+       case REQ_LEFT_CHAR:     /* FALLTHRU */
+       case REQ_LEFT_FIELD:    /* FALLTHRU */
+       case REQ_NEXT_CHAR:     /* FALLTHRU */
+       case REQ_NEXT_CHOICE:   /* FALLTHRU */
+       case REQ_NEXT_FIELD:    /* FALLTHRU */
+       case REQ_NEXT_LINE:     /* FALLTHRU */
+       case REQ_NEXT_PAGE:     /* FALLTHRU */
+       case REQ_NEXT_WORD:     /* FALLTHRU */
+       case REQ_PREV_CHAR:     /* FALLTHRU */
+       case REQ_PREV_CHOICE:   /* FALLTHRU */
+       case REQ_PREV_FIELD:    /* FALLTHRU */
+       case REQ_PREV_LINE:     /* FALLTHRU */
+       case REQ_PREV_PAGE:     /* FALLTHRU */
+       case REQ_PREV_WORD:     /* FALLTHRU */
+       case REQ_RIGHT_CHAR:    /* FALLTHRU */
+       case REQ_RIGHT_FIELD:   /* FALLTHRU */
+       case REQ_SFIRST_FIELD:  /* FALLTHRU */
+       case REQ_SLAST_FIELD:   /* FALLTHRU */
+       case REQ_SNEXT_FIELD:   /* FALLTHRU */
+       case REQ_SPREV_FIELD:   /* FALLTHRU */
+       case REQ_UP_CHAR:       /* FALLTHRU */
+       case REQ_UP_FIELD:      /* FALLTHRU */
+       case REQ_VALIDATION:    /* FALLTHRU */
+           modified = FALSE;
+           break;
+
+       default:
+           modified = FALSE;
+           if (ch >= MIN_FORM_COMMAND) {
+               beep();
+           } else if (isprint(ch)) {
+               modified = TRUE;
+           }
+           break;
+       }
+
+       /*
+        * If we do not force a re-validation, then field_buffer 0 will
+        * be lagging by one character.
+        */
+       if (modified && form_driver(form, REQ_VALIDATION) == E_OK && *result
+           < MIN_FORM_COMMAND)
+           ++length;
+
+       sprintf(lengths, "%d", length);
+       set_field_buffer(before, 1, lengths);
+    }
+
+    if ((after = current_field(form)) != before)
+       set_field_back(before, A_UNDERLINE);
+    return status;
+}
+#else
+
+extern void no_edit_field(void);
+
+void
+no_edit_field(void)
+{
+}
+
+#endif
diff --git a/test/edit_field.h b/test/edit_field.h
new file mode 100644 (file)
index 0000000..8919838
--- /dev/null
@@ -0,0 +1,17 @@
+/*
+ * $Id: edit_field.h,v 1.1 2003/04/26 22:54:50 tom Exp $
+ *
+ * Interface of edit_field.c
+ */
+
+#ifndef EDIT_FORM_H_incl
+#define EDIT_FORM_H_incl 1
+
+#include <form.h>
+
+#define EDIT_FIELD(c) (MAX_FORM_COMMAND + c)
+
+extern void help_edit_field(void);
+extern int edit_field(FORM * form, int *result);
+
+#endif /* EDIT_FORM_H_incl */
index 7fa60de9edf88e1018a2e5341eb88fc58cbbaf35..ad381aa4dfd14c9b03ce1a205ec3b964e59ff43d 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: gdc.6,v 1.2 2003/03/15 20:50:03 tom Exp $
 .TH GDC 6
 .SH NAME
 gdc \- grand digital clock (curses)
@@ -16,7 +17,7 @@ it stops after
 seconds (default never).
 The optional
 .B -s
-flag makes digits scroll as they change. In this curses mode implementation,
+flag makes digits scroll as they change. In some curses mode implementations,
 the scrolling option has trouble keeping up.
 .SH AUTHOR
 Amos Shapir, modified for curses by John Lupien.
index 06f29098911763b6eb7584185f3e2762d6a59492..46a4f42331ff89f8cabc7b7be0f2f955c52613e3 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Generate timing statistics for vertical-motion optimization.
  *
- * $Id: hashtest.c,v 1.22 2002/06/29 23:32:18 tom Exp $
+ * $Id: hashtest.c,v 1.23 2002/10/19 22:11:24 tom Exp $
  */
 
 #ifdef TRACE
@@ -14,8 +14,6 @@
 #define USE_TRACE 0
 #endif
 
-#include <ctype.h>
-
 #include <test.priv.h>
 
 #define LO_CHAR ' '
diff --git a/test/ins_wide.c b/test/ins_wide.c
new file mode 100644 (file)
index 0000000..6f3573f
--- /dev/null
@@ -0,0 +1,218 @@
+/*
+ * $Id: ins_wide.c,v 1.3 2003/08/09 22:07:23 tom Exp $
+ *
+ * Demonstrate the wins_wstr() and wins_wch functions.
+ * Thomas Dickey - 2002/11/23
+ *
+ * Note: to provide inputs for *ins_wch(), we use setcchar().  A quirk of the
+ * X/Open definition for that function is that the string contains no
+ * characters with negative width.  Any control character (such as tab) falls
+ * into that category.  So it follows that *ins_wch() cannot render a tab
+ * character because there is no legal way to construct a cchar_t containing
+ * one.  X/Open does not document this, and it would be logical to assume that
+ * *ins_wstr() has the same limitation, but it uses a wchar_t string directly,
+ * and does not document how tabs are handled.
+ */
+
+#include <test.priv.h>
+
+#define TABSIZE 8
+
+#if USE_WIDEC_SUPPORT
+static int margin = (2 * TABSIZE) - 1;
+
+static void
+legend(WINDOW *win, wchar_t * buffer, int length)
+{
+    wmove(win, 0, 0);
+    wprintw(win,
+           "The Strings/Chars displays should match.  Enter any characters.\n");
+    wprintw(win,
+           "Use down-arrow or ^N to repeat on the next line, 'q' to exit.\n");
+    wclrtoeol(win);
+    wprintw(win, "Inserted %d characters <", length);
+    waddwstr(win, buffer);
+    waddstr(win, ">");
+}
+
+static int
+ColOf(wchar_t * buffer, int length)
+{
+    int n;
+    int result;
+
+    for (n = 0, result = margin + 1; n < length; ++n) {
+       int ch = buffer[n];
+       switch (ch) {
+       case '\n':
+           /* actually newline should clear the remainder of the line
+            * and move to the next line - but that seems a little awkward
+            * in this example.
+            */
+       case '\r':
+           result = 0;
+           break;
+       case '\b':
+           if (result > 0)
+               --result;
+           break;
+       case '\t':
+           result += (TABSIZE - (result % TABSIZE));
+           break;
+       case '\177':
+           result += 2;
+           break;
+       default:
+           ++result;
+           if (ch < 32)
+               ++result;
+           break;
+       }
+    }
+    return result;
+}
+
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+    cchar_t tmp_cchar;
+    wchar_t tmp_wchar[2];
+    wint_t ch;
+    int code;
+    int limit;
+    int row = 1;
+    int col;
+    int length;
+    wchar_t buffer[BUFSIZ];
+    WINDOW *work;
+    WINDOW *show;
+
+    putenv("TABSIZE=8");
+    initscr();
+    (void) cbreak();           /* take input chars one at a time, no wait for \n */
+    (void) noecho();           /* don't echo input */
+    keypad(stdscr, TRUE);
+
+    limit = LINES - 5;
+    work = newwin(limit, COLS, 0, 0);
+    show = newwin(4, COLS, limit + 1, 0);
+    keypad(work, TRUE);
+
+    for (col = margin + 1; col < COLS; col += TABSIZE)
+       mvwvline(work, row, col, '.', limit - 2);
+
+    box(work, 0, 0);
+    mvwvline(work, row, margin, ACS_VLINE, limit - 2);
+    mvwvline(work, row, margin + 1, ACS_VLINE, limit - 2);
+    limit /= 2;
+
+    mvwaddstr(work, 1, 2, "String");
+    mvwaddstr(work, limit + 1, 2, "Chars");
+    wnoutrefresh(work);
+
+    buffer[length = 0] = '\0';
+    legend(show, buffer, length);
+    wnoutrefresh(show);
+
+    doupdate();
+
+    /*
+     * Show the characters inserted in color, to distinguish from those that
+     * are shifted.
+     */
+    if (has_colors()) {
+       start_color();
+       init_pair(1, COLOR_WHITE, COLOR_BLUE);
+       wbkgdset(work, COLOR_PAIR(1) | ' ');
+    }
+
+    while ((code = wget_wch(work, &ch)) != ERR) {
+
+       switch (code) {
+       case KEY_CODE_YES:
+           switch (ch) {
+           case KEY_DOWN:
+               ch = CTRL('N');
+               break;
+           case KEY_BACKSPACE:
+               ch = '\b';
+               break;
+           default:
+               beep();
+               continue;
+           }
+           break;
+       }
+       if (ch == 'q')
+           break;
+
+       wmove(work, row, margin + 1);
+       if (ch == CTRL('N')) {
+           if (row < limit) {
+               ++row;
+               /* put the whole string in, all at once */
+               mvwins_wstr(work, row, margin + 1, buffer);
+
+               /* do the corresponding single-character insertion */
+               for (col = 0; col < length; ++col) {
+                   memset(&tmp_cchar, 0, sizeof(tmp_cchar));
+                   if (setcchar(&tmp_cchar,
+                                &(buffer[col]),
+                                A_NORMAL,
+                                0,
+                                (void *) 0) != ERR) {
+                       mvwins_wch(work, limit + row, ColOf(buffer, col), &tmp_cchar);
+                   } else {
+                       beep(); /* even for tabs! */
+                       mvwinsch(work,
+                                limit + row,
+                                ColOf(buffer, col), buffer[col]);
+                   }
+               }
+           } else {
+               beep();
+           }
+       } else {
+           buffer[length++] = ch;
+           buffer[length] = '\0';
+           /* put the string in, one character at a time */
+           mvwins_wstr(work,
+                       row,
+                       ColOf(buffer, length - 1), buffer + length - 1);
+
+           /* do the corresponding single-character insertion */
+           tmp_wchar[0] = ch;
+           tmp_wchar[1] = 0;
+           if (setcchar(&tmp_cchar,
+                        tmp_wchar,
+                        A_NORMAL,
+                        0,
+                        (void *) 0) != ERR) {
+               mvwins_wch(work,
+                          limit + row,
+                          ColOf(buffer, length - 1), &tmp_cchar);
+           } else {
+               beep();         /* even for tabs! */
+               mvwinsch(work,
+                        limit + row,
+                        ColOf(buffer, length - 1), ch);
+           }
+           wnoutrefresh(work);
+
+           legend(show, buffer, length);
+           wnoutrefresh(show);
+
+           doupdate();
+       }
+    }
+    endwin();
+    ExitProgram(EXIT_SUCCESS);
+}
+#else
+int
+main(void)
+{
+    printf("This program requires the wide-ncurses library\n");
+    ExitProgram(EXIT_FAILURE);
+}
+#endif
diff --git a/test/inserts.c b/test/inserts.c
new file mode 100644 (file)
index 0000000..990da1d
--- /dev/null
@@ -0,0 +1,162 @@
+/*
+ * $Id: inserts.c,v 1.5 2003/08/09 22:07:06 tom Exp $
+ *
+ * Demonstrate the winsstr() and winsch functions.
+ * Thomas Dickey - 2002/10/19
+ */
+
+#include <test.priv.h>
+
+#define TABSIZE 8
+
+static int margin = (2 * TABSIZE) - 1;
+
+static void
+legend(WINDOW *win, char *buffer, int length)
+{
+    wmove(win, 0, 0);
+    wprintw(win,
+           "The Strings/Chars displays should match.  Enter any characters.\n");
+    wprintw(win,
+           "Use down-arrow or ^N to repeat on the next line, 'q' to exit.\n");
+    wclrtoeol(win);
+    wprintw(win, "Inserted %d characters <%s>", length, buffer);
+}
+
+static int
+ColOf(char *buffer, int length)
+{
+    int n;
+    int result;
+
+    for (n = 0, result = margin + 1; n < length; ++n) {
+       int ch = UChar(buffer[n]);
+       switch (ch) {
+       case '\n':
+           /* actually newline should clear the remainder of the line
+            * and move to the next line - but that seems a little awkward
+            * in this example.
+            */
+       case '\r':
+           result = 0;
+           break;
+       case '\b':
+           if (result > 0)
+               --result;
+           break;
+       case '\t':
+           result += (TABSIZE - (result % TABSIZE));
+           break;
+       case '\177':
+           result += 2;
+           break;
+       default:
+           ++result;
+           if (ch < 32)
+               ++result;
+           break;
+       }
+    }
+    return result;
+}
+
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+    int ch;
+    int limit;
+    int row = 1;
+    int col;
+    int length;
+    char buffer[BUFSIZ];
+    WINDOW *work;
+    WINDOW *show;
+
+    putenv("TABSIZE=8");
+    initscr();
+    (void) cbreak();           /* take input chars one at a time, no wait for \n */
+    (void) noecho();           /* don't echo input */
+    keypad(stdscr, TRUE);
+
+    limit = LINES - 5;
+    work = newwin(limit, COLS, 0, 0);
+    show = newwin(4, COLS, limit + 1, 0);
+    keypad(work, TRUE);
+
+    for (col = margin + 1; col < COLS; col += TABSIZE)
+       mvwvline(work, row, col, '.', limit - 2);
+
+    box(work, 0, 0);
+    mvwvline(work, row, margin, ACS_VLINE, limit - 2);
+    mvwvline(work, row, margin + 1, ACS_VLINE, limit - 2);
+    limit /= 2;
+
+    mvwaddstr(work, 1, 2, "String");
+    mvwaddstr(work, limit + 1, 2, "Chars");
+    wnoutrefresh(work);
+
+    buffer[length = 0] = '\0';
+    legend(show, buffer, length);
+    wnoutrefresh(show);
+
+    doupdate();
+
+    /*
+     * Show the characters inserted in color, to distinguish from those that
+     * are shifted.
+     */
+    if (has_colors()) {
+       start_color();
+       init_pair(1, COLOR_WHITE, COLOR_BLUE);
+       wbkgdset(work, COLOR_PAIR(1) | ' ');
+    }
+
+    while ((ch = wgetch(work)) != 'q') {
+       wmove(work, row, margin + 1);
+       switch (ch) {
+       case CTRL('N'):
+       case KEY_DOWN:
+           if (row < limit) {
+               ++row;
+               /* put the whole string in, all at once */
+               mvwinsstr(work, row, margin + 1, buffer);
+
+               /* do the corresponding single-character insertion */
+               for (col = 0; col < length; ++col) {
+                   mvwinsch(work, limit + row, ColOf(buffer, col), buffer[col]);
+               }
+           } else {
+               beep();
+           }
+           break;
+       case KEY_BACKSPACE:
+           ch = '\b';
+           /* FALLTHRU */
+       default:
+           if (ch <= 0 || ch > 255) {
+               beep();
+               break;
+           }
+           buffer[length++] = ch;
+           buffer[length] = '\0';
+           /* put the string in, one character at a time */
+           mvwinsstr(work,
+                     row,
+                     ColOf(buffer, length - 1), buffer + length - 1);
+
+           /* do the corresponding single-character insertion */
+           mvwinsch(work,
+                    limit + row,
+                    ColOf(buffer, length - 1), ch);
+           wnoutrefresh(work);
+
+           legend(show, buffer, length);
+           wnoutrefresh(show);
+
+           doupdate();
+           break;
+       }
+    }
+    endwin();
+    ExitProgram(EXIT_SUCCESS);
+}
index ee8fac89f9ec921356b4be52e81b6c28f2e3a9af..a61646c24cfa8fee56eb869901fa5380e73b5da9 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * $Id: keynames.c,v 1.4 2002/09/01 19:42:42 tom Exp $
+ * $Id: keynames.c,v 1.5 2003/05/17 23:18:49 tom Exp $
  */
 
 #include <test.priv.h>
@@ -9,7 +9,7 @@ main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
 {
     int n;
     for (n = -1; n < 512; n++) {
-       char *result = keyname(n);
+       const char *result = keyname(n);
        if (result != 0)
            printf("%d(%5o):%s\n", n, n, result);
     }
index 0e091f46dfa50e54fdcde54120e04180bad4c0c2..44537d41d62132cc09b735ed43ec94685e161a3d 100644 (file)
@@ -6,11 +6,9 @@
  * Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995.  Mouse support
  * added September 20th 1995.
  *
- * $Id: knight.c,v 1.25 2002/06/29 23:32:18 tom Exp $
+ * $Id: knight.c,v 1.26 2002/10/19 22:11:24 tom Exp $
  */
 
-#include <ctype.h>
-
 #include <test.priv.h>
 
 /* board size */
diff --git a/test/listused.sh b/test/listused.sh
new file mode 100755 (executable)
index 0000000..70352fa
--- /dev/null
@@ -0,0 +1,155 @@
+#!/bin/sh
+# $Id: listused.sh,v 1.5 2003/07/05 19:02:41 tom Exp $
+# A very simple script to list entrypoints that are used by either a test
+# program, or within the libraries.  This relies on the output format of 'nm',
+# and assumes that the libraries are configured with TRACE defined, and using
+# these options:
+#      --disable-macros
+#      --enable-widec
+# Static libraries are used, to provide some filtering based on internal usage
+# of the different symbols.
+
+# keep the sorting independent of locale:
+if test "${LANGUAGE+set}"    = set; then LANGUAGE=C;    export LANGUAGE;    fi
+if test "${LANG+set}"        = set; then LANG=C;        export LANG;        fi
+if test "${LC_ALL+set}"      = set; then LC_ALL=C;      export LC_ALL;      fi
+if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
+if test "${LC_CTYPE+set}"    = set; then LC_CTYPE=C;    export LC_CTYPE;    fi
+if test "${LC_COLLATE+set}"  = set; then LC_COLLATE=C;  export LC_COLLATE;  fi
+
+NM_OPTS=
+
+if test ! -d ../objects ; then
+       echo "? need objects to run this script"
+       exit 1
+elif test ! -d ../lib ; then
+       echo "? need libraries to run this script"
+       exit 1
+fi
+
+PROGS=
+for name in `(echo "test:";sort modules; echo "progs:";sort ../progs/modules) |sed -e 's/[     ].*//' -e '/^[#@]/d'`
+do
+       case $name in
+       *:)
+               PROGS="$PROGS $name"
+               ;;
+       *)
+               NAME=../objects/${name}.o
+               if test -f $NAME
+               then
+                       PROGS="$PROGS $NAME"
+               fi
+               ;;
+       esac
+done
+
+# For each library -
+for lib in ../lib/*.a
+do
+       LIB=`basename $lib .a`
+       case $LIB in
+       *_*|*+*)
+               continue
+               ;;
+       esac
+
+       tmp=`echo $LIB|sed -e 's/w$//'`
+       echo
+       echo "${tmp}:"
+       echo $tmp |sed -e 's/./-/g'
+       # Construct a list of public externals provided by the library.
+       WANT=`nm $NM_OPTS $lib |\
+               sed     -e 's/^[^ ]*//' \
+                       -e 's/^ *//' \
+                       -e '/^[ a-z] /d' \
+                       -e '/:$/d' \
+                       -e '/^$/d' \
+                       -e '/^U /d' \
+                       -e 's/^[A-Z] //' \
+                       -e '/^_/d' |\
+               sort -u`
+       # List programs which use that external.
+       for name in $WANT
+       do
+               HAVE=
+               tags=
+               last=
+               for prog in $PROGS
+               do
+                       case $prog in
+                       *:)
+                               tags=$prog
+                               ;;
+                       *)
+                               TEST=`nm $NM_OPTS $prog |\
+                                       sed     -e 's/^[^ ]*//' \
+                                               -e 's/^ *//' \
+                                               -e '/^[ a-z] /d' \
+                                               -e '/:$/d' \
+                                               -e '/^$/d' \
+                                               -e 's/^[A-Z] //' \
+                                               -e '/^_/d' \
+                                               -e 's/^'${name}'$/_/' \
+                                               -e '/^[^_]/d'`
+                               if test -n "$TEST"
+                               then
+                                       have=`basename $prog .o`
+                                       if test -n "$HAVE"
+                                       then
+                                               if test "$last" = "$tags"
+                                               then
+                                                       HAVE="$HAVE $have"
+                                               else
+                                                       HAVE="$HAVE $tags $have"
+                                               fi
+                                       else
+                                               HAVE="$tags $have"
+                                       fi
+                                       last="$tags"
+                               fi
+                               ;;
+                       esac
+               done
+               # if we did not find a program using it directly, see if it
+               # is used within a library.
+               if test -z "$HAVE"
+               then
+                       for tmp in ../lib/*.a
+                       do 
+                               case $tmp in
+                               *_*|*+*)
+                                       continue
+                                       ;;
+                               esac
+                               TEST=`nm $NM_OPTS $tmp |\
+                                       sed     -e 's/^[^ ]*//' \
+                                               -e 's/^ *//' \
+                                               -e '/^[ a-z] /d' \
+                                               -e '/:$/d' \
+                                               -e '/^$/d' \
+                                               -e '/^[A-TV-Z] /d' \
+                                               -e 's/^[A-Z] //' \
+                                               -e '/^_/d' \
+                                               -e 's/^'${name}'$/_/' \
+                                               -e '/^[^_]/d'`
+                               if test -n "$TEST"
+                               then
+                                       tmp=`basename $tmp .a |sed -e 's/w$//'`
+                                       HAVE=`echo $tmp | sed -e 's/lib/lib: /'`
+                                       break
+                               fi
+                       done
+               fi
+               test -z "$HAVE" && HAVE="-"
+               lenn=`expr 39 - length $name`
+               lenn=`expr $lenn / 8`
+               tabs=
+               while test $lenn != 0
+               do
+                       tabs="${tabs}   "
+                       lenn=`expr $lenn - 1`
+               done
+               echo "${name}${tabs}${HAVE}"
+       done
+done
index 583f8c76cc8b23f3b591798c5bdd7c2b0604fd20..4de65f16f0ce8976e0990dd92434863436e2ea37 100644 (file)
@@ -1,7 +1,7 @@
 # Test-Program modules
-# $Id: modules,v 1.13 2000/02/13 01:05:13 tom Exp $
+# $Id: modules,v 1.20 2003/12/07 00:01:23 tom Exp $
 ##############################################################################
-# Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.                #
+# Copyright (c) 1998-2002,2003 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"), #
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1997
+# Author: Thomas E. Dickey 1997-2003
 #
 
 @ base
+background     progs           $(srcdir)
 blue           progs           $(srcdir)       ../include/term.h
 bs             progs           $(srcdir)
-cardfile       progs           $(srcdir)       ../include/panel.h ../include/menu.h ../include/form.h
+cardfile       progs           $(srcdir)       ../include/panel.h ../include/form.h
+color_set      progs           $(srcdir)
+demo_defkey    progs           $(srcdir)
+demo_keyok     progs           $(srcdir)
+demo_forms     progs           $(srcdir)       ../include/form.h
+demo_menus     progs           $(srcdir)       ../include/menu.h
+demo_panels    progs           $(srcdir)       ../include/panel.h
 ditto          progs           $(srcdir)
 dots           progs           $(srcdir)       ../include/term.h
-filter         progs           $(srcdir)
+edit_field     progs           $(srcdir)
+filter         progs           $(srcdir)       ../include/form.h
 firework       progs           $(srcdir)       ../include/term.h
 firstlast      progs           $(srcdir)
 gdc            progs           $(srcdir)
 hanoi          progs           $(srcdir)
 hashtest       progs           $(srcdir)
+ins_wide       progs           $(srcdir)
+inserts                progs           $(srcdir)
 keynames       progs           $(srcdir)
 knight         progs           $(srcdir)
 lrtest         progs           $(srcdir)
 ncurses                progs           $(srcdir)       ../include/panel.h ../include/menu.h ../include/form.h
 newdemo                progs           $(srcdir)
-rain           progs           $(srcdir)       ../include/term.h
 railroad       progs           $(srcdir)       ../include/termcap.h
+rain           progs           $(srcdir)       ../include/term.h
 tclock         progs           $(srcdir)
 testaddch      progs           $(srcdir)
 testcurs       progs           $(srcdir)
index b4bac67fdaad2fadd9bab4fb40725681eb1b5e05..791c3a4157c9eeafec9c2d041a335247e13e1a8f 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2003,2004 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            *
@@ -40,14 +40,10 @@ AUTHOR
    Author: Eric S. Raymond <esr@snark.thyrsus.com> 1993
            Thomas E. Dickey (beginning revision 1.27 in 1996).
 
-$Id: ncurses.c,v 1.180 2002/09/15 00:39:33 tom Exp $
+$Id: ncurses.c,v 1.202 2004/02/07 20:24:08 tom Exp $
 
 ***************************************************************************/
 
-#include <stdio.h>
-#include <ctype.h>
-#include <assert.h>
-
 #include <test.priv.h>
 
 #if HAVE_GETTIMEOFDAY
@@ -59,25 +55,16 @@ $Id: ncurses.c,v 1.180 2002/09/15 00:39:33 tom Exp $
 #endif
 #endif
 
-#if HAVE_PANEL_H && HAVE_LIBPANEL
-#define USE_LIBPANEL 1
+#if USE_LIBPANEL
 #include <panel.h>
-#else
-#define USE_LIBPANEL 0
 #endif
 
-#if HAVE_MENU_H && HAVE_LIBMENU
-#define USE_LIBMENU 1
+#if USE_LIBMENU
 #include <menu.h>
-#else
-#define USE_LIBMENU 0
 #endif
 
-#if HAVE_FORM_H && HAVE_LIBFORM
-#define USE_LIBFORM 1
+#if USE_LIBFORM
 #include <form.h>
-#else
-#define USE_LIBFORM 0
 #endif
 
 #ifdef NCURSES_VERSION
@@ -122,13 +109,7 @@ extern int _nc_tracing;
 #endif
 
 #define P(string)      printw("%s\n", string)
-#ifdef CTRL
-#undef CTRL
-#endif
-#define CTRL(x)                ((x) & 0x1f)
 
-#define QUIT           CTRL('Q')
-#define ESCAPE         CTRL('[')
 #define BLANK          ' '     /* this is the background character */
 
 #undef max_colors
@@ -181,6 +162,74 @@ wGetchar(WINDOW *win)
 }
 #define Getchar() wGetchar(stdscr)
 
+/* replaces wgetnstr(), since we want to be able to edit values */
+static void
+wGetstring(WINDOW *win, char *buffer, int limit)
+{
+    int y0, x0, x, ch;
+    bool done = FALSE;
+
+    echo();
+    getyx(win, y0, x0);
+    wattrset(win, A_REVERSE);
+
+    x = strlen(buffer);
+    while (!done) {
+       if (x > (int) strlen(buffer))
+           x = (int) strlen(buffer);
+       wmove(win, y0, x0);
+       wprintw(win, "%-*s", limit, buffer);
+       wmove(win, y0, x0 + x);
+       switch (ch = wGetchar(win)) {
+       case '\n':
+       case KEY_ENTER:
+           done = TRUE;
+           break;
+       case CTRL('U'):
+           *buffer = '\0';
+           break;
+       case '\b':
+       case KEY_BACKSPACE:
+       case KEY_DC:
+           if (x > 0) {
+               int j;
+               for (j = --x; (buffer[j] = buffer[j + 1]) != '\0'; ++j) {
+                   ;
+               }
+           } else {
+               beep();
+           }
+           break;
+       case KEY_LEFT:
+           if (x > 0) {
+               --x;
+           } else {
+               flash();
+           }
+           break;
+       case KEY_RIGHT:
+           ++x;
+           break;
+       default:
+           if (!isprint(ch) || ch >= KEY_MIN) {
+               beep();
+           } else if ((int) strlen(buffer) < limit) {
+               int j;
+               for (j = strlen(buffer) + 1; j > x; --j) {
+                   buffer[j] = buffer[j - 1];
+               }
+               buffer[x++] = ch;
+           } else {
+               flash();
+           }
+       }
+    }
+
+    wattroff(win, A_REVERSE);
+    wmove(win, y0, x0);
+    noecho();
+}
+
 #if USE_WIDEC_SUPPORT
 static int
 wGet_wchar(WINDOW *win, wint_t * result)
@@ -206,6 +255,98 @@ wGet_wchar(WINDOW *win, wint_t * result)
 }
 #define Get_wchar(result) wGet_wchar(stdscr, result)
 
+/* replaces wgetn_wstr(), since we want to be able to edit values */
+static void
+wGet_wstring(WINDOW *win, wchar_t * buffer, int limit)
+{
+    int y0, x0, x;
+    wint_t ch;
+    bool done = FALSE;
+
+    echo();
+    getyx(win, y0, x0);
+    wattrset(win, A_REVERSE);
+
+    x = wcslen(buffer);
+    while (!done) {
+       if (x > (int) wcslen(buffer))
+           x = (int) wcslen(buffer);
+       wmove(win, y0, x0);
+       waddnwstr(win, buffer, limit);
+       if (x < limit)
+           wprintw(win, "%*s", limit - x, " ");
+       wmove(win, y0, x0 + x);
+       switch (wGet_wchar(win, &ch)) {
+       case KEY_CODE_YES:
+           switch (ch) {
+           case KEY_ENTER:
+               ch = '\n';
+               break;
+           case KEY_BACKSPACE:
+           case KEY_DC:
+               ch = '\b';
+               break;
+           case KEY_LEFT:
+           case KEY_RIGHT:
+               break;
+           default:
+               ch = (wint_t) - 1;
+               break;
+           }
+       case OK:
+           break;
+       default:
+           ch = (wint_t) - 1;
+           break;
+       }
+
+       switch (ch) {
+       case '\n':
+           done = TRUE;
+           break;
+       case CTRL('U'):
+           *buffer = '\0';
+           break;
+       case '\b':
+           if (x > 0) {
+               int j;
+               for (j = --x; (buffer[j] = buffer[j + 1]) != '\0'; ++j) {
+                   ;
+               }
+           } else {
+               beep();
+           }
+           break;
+       case KEY_LEFT:
+           if (x > 0) {
+               --x;
+           } else {
+               flash();
+           }
+           break;
+       case KEY_RIGHT:
+           ++x;
+           break;
+       default:
+           if (!isprint(ch) || ch >= KEY_MIN) {
+               beep();
+           } else if ((int) wcslen(buffer) < limit) {
+               int j;
+               for (j = wcslen(buffer) + 1; j > x; --j) {
+                   buffer[j] = buffer[j - 1];
+               }
+               buffer[x++] = ch;
+           } else {
+               flash();
+           }
+       }
+    }
+
+    wattroff(win, A_REVERSE);
+    wmove(win, y0, x0);
+    noecho();
+}
+
 #endif
 
 static void
@@ -370,10 +511,10 @@ remember_boxes(unsigned level, WINDOW *txt_win, WINDOW *box_win)
 
     if (winstack == 0) {
        len_winstack = 20;
-       winstack = malloc(len_winstack * sizeof(WINSTACK));
+       winstack = (WINSTACK *) malloc(len_winstack * sizeof(WINSTACK));
     } else if (need >= len_winstack) {
        len_winstack = need;
-       winstack = realloc(winstack, len_winstack * sizeof(WINSTACK));
+       winstack = (WINSTACK *) realloc(winstack, len_winstack * sizeof(WINSTACK));
     }
     winstack[level].text = txt_win;
     winstack[level].frame = box_win;
@@ -433,7 +574,7 @@ wgetch_test(int level, WINDOW *win, int delay)
     int y, x;
 
     memset(flags, FALSE, sizeof(flags));
-    flags['k'] = (win == stdscr);
+    flags[UChar('k')] = (win == stdscr);
 
     setup_getch(win, flags);
     wtimeout(win, delay);
@@ -460,7 +601,7 @@ wgetch_test(int level, WINDOW *win, int delay)
        } else if (c == 'x' || c == 'q') {
            break;
        } else if (c == 'e') {
-           flags['e'] = !flags['e'];
+           flags[UChar('e')] = !flags[UChar('e')];
            setup_getch(win, flags);
            wgetch_help(win, flags);
        } else if (c == 'g') {
@@ -472,11 +613,11 @@ wgetch_test(int level, WINDOW *win, int delay)
            wclrtoeol(win);
            wgetch_wrap(win, first_y);
        } else if (c == 'k') {
-           flags['k'] = !flags['k'];
+           flags[UChar('k')] = !flags[UChar('k')];
            setup_getch(win, flags);
            wgetch_help(win, flags);
        } else if (c == 'm') {
-           flags['m'] = !flags['m'];
+           flags[UChar('m')] = !flags[UChar('m')];
            setup_getch(win, flags);
            wgetch_help(win, flags);
        } else if (c == 's') {
@@ -606,6 +747,7 @@ getch_test(void)
  * For wgetch_test(), we create pairs of windows - one for a box, one for text.
  * Resize both and paint the box in the parent.
  */
+#ifdef KEY_RESIZE
 static void
 resize_wide_boxes(int level, WINDOW *win)
 {
@@ -640,20 +782,42 @@ resize_wide_boxes(int level, WINDOW *win)
     }
     doupdate();
 }
+#endif /* KEY_RESIZE */
+
+static char *
+wcstos(const wchar_t * src)
+{
+    int need;
+    mbstate_t state;
+    char *result = 0;
+    const wchar_t *tmp = src;
+
+    memset(&state, 0, sizeof(state));
+    if ((need = wcsrtombs(0, &tmp, 0, &state)) > 0) {
+       result = (char *) calloc(need + 1, 1);
+       tmp = src;
+       if (wcsrtombs(result, &tmp, need, &state) != (size_t) need) {
+           free(result);
+           result = 0;
+       }
+    }
+    return result;
+}
 
 static void
 wget_wch_test(int level, WINDOW *win, int delay)
 {
-    char buf[BUFSIZ];
+    wchar_t buf[BUFSIZ];
     int first_y, first_x;
     wint_t c;
     int incount = 0;
     bool flags[256];
     bool blocking = (delay < 0);
     int y, x, code;
+    char *temp;
 
     memset(flags, FALSE, sizeof(flags));
-    flags['k'] = (win == stdscr);
+    flags[UChar('k')] = (win == stdscr);
 
     setup_getch(win, flags);
     wtimeout(win, delay);
@@ -680,23 +844,28 @@ wget_wch_test(int level, WINDOW *win, int delay)
        } else if (c == 'x' || c == 'q') {
            break;
        } else if (c == 'e') {
-           flags['e'] = !flags['e'];
+           flags[UChar('e')] = !flags[UChar('e')];
            setup_getch(win, flags);
            wgetch_help(win, flags);
        } else if (c == 'g') {
            waddstr(win, "getstr test: ");
            echo();
-           wgetnstr(win, buf, sizeof(buf) - 1);
+           wgetn_wstr(win, (wint_t *) buf, sizeof(buf) - 1);
            noecho();
-           wprintw(win, "I saw %d characters:\n\t`%s'.", strlen(buf), buf);
+           if ((temp = wcstos(buf)) != 0) {
+               wprintw(win, "I saw %d characters:\n\t`%s'.", wcslen(buf), temp);
+               free(temp);
+           } else {
+               wprintw(win, "I saw %d characters (cannot convert).", wcslen(buf));
+           }
            wclrtoeol(win);
            wgetch_wrap(win, first_y);
        } else if (c == 'k') {
-           flags['k'] = !flags['k'];
+           flags[UChar('k')] = !flags[UChar('k')];
            setup_getch(win, flags);
            wgetch_help(win, flags);
        } else if (c == 'm') {
-           flags['m'] = !flags['m'];
+           flags[UChar('m')] = !flags[UChar('m')];
            setup_getch(win, flags);
            wgetch_help(win, flags);
        } else if (c == 's') {
@@ -782,11 +951,40 @@ get_wch_test(void)
  *
  ****************************************************************************/
 
+#define MAX_ATTRSTRING 31
+#define LEN_ATTRSTRING 26
+
+static char attr_test_string[] = "abcde fghij klmno pqrst uvwxy z";
+
+static void
+adjust_attr_string(int adjust)
+{
+    int first = ((int) UChar(attr_test_string[0])) + adjust;
+    int last = first + LEN_ATTRSTRING;
+
+    if (first >= ' ' && last <= '~') { /* 32..126 */
+       int j, k;
+       for (j = 0, k = first; k <= last; ++j, ++k) {
+           attr_test_string[j] = k;
+           if (((k + 1 - first) % 5) == 0) {
+               ++j;
+               if (j < MAX_ATTRSTRING)
+                   attr_test_string[j] = ' ';
+           }
+       }
+       while (j < MAX_ATTRSTRING)
+           attr_test_string[j++] = ' ';
+       attr_test_string[j] = '\0';
+    } else {
+       beep();
+    }
+}
+
 static int
 show_attr(int row, int skip, chtype attr, const char *name)
 {
-    static const char *string = "abcde fghij klmno pqrst uvwxy z";
     int ncv = tigetnum("ncv");
+    chtype test = attr & ~A_ALTCHARSET;
 
     mvprintw(row, 8, "%s mode:", name);
     mvprintw(row, 24, "|");
@@ -804,29 +1002,24 @@ show_attr(int row, int skip, chtype attr, const char *name)
      * is possible to turn off the A_ALTCHARSET flag for the characters which
      * are added, and it would be an unexpected result to have the mapped
      * characters visible on the screen.
-     *
-     * This example works because the indices into acs_map[] are mostly from
-     * the lowercase characters.
      */
     if (attr & A_ALTCHARSET) {
-       const char *s = string;
-       while (*s) {
-           int ch = *s++;
-#ifdef CURSES_ACS_ARRAY
-           if ((ch = CURSES_ACS_ARRAY[ch]) == 0)
-               ch = ' ';
-#endif
+       const char *s;
+       int ch;
+
+       for (s = attr_test_string; *s != '\0'; ++s) {
+           ch = UChar(*s);
            addch(ch);
        }
     } else {
-       addstr(string);
+       addstr(attr_test_string);
     }
     attroff(attr);
     if (skip)
        printw("%*s", skip, " ");
     printw("|");
-    if (attr != A_NORMAL) {
-       if (!(termattrs() & attr)) {
+    if (test != A_NORMAL) {
+       if (!(termattrs() & test)) {
            printw(" (N/A)");
        } else if (ncv > 0 && (getbkgd(stdscr) & A_COLOR)) {
            static const chtype table[] =
@@ -867,7 +1060,8 @@ attr_getc(int *skip, int *fg, int *bg, int *ac)
     } else if (ch == CTRL('L')) {
        touchwin(stdscr);
        touchwin(curscr);
-    } else if (has_colors()) {
+       wrefresh(curscr);
+    } else {
        switch (ch) {
        case 'a':
            *ac = 0;
@@ -875,39 +1069,40 @@ attr_getc(int *skip, int *fg, int *bg, int *ac)
        case 'A':
            *ac = A_ALTCHARSET;
            break;
-       case 'f':
-           *fg = (*fg + 1);
+       case '<':
+           adjust_attr_string(-1);
            break;
-       case 'F':
-           *fg = (*fg - 1);
-           break;
-       case 'b':
-           *bg = (*bg + 1);
-           break;
-       case 'B':
-           *bg = (*bg - 1);
+       case '>':
+           adjust_attr_string(1);
            break;
        default:
-           return FALSE;
-       }
-       if (*fg >= max_colors)
-           *fg = 0;
-       if (*fg < 0)
-           *fg = max_colors - 1;
-       if (*bg >= max_colors)
-           *bg = 0;
-       if (*bg < 0)
-           *bg = max_colors - 1;
-    } else {
-       switch (ch) {
-       case 'a':
-           *ac = 0;
-           break;
-       case 'A':
-           *ac = A_ALTCHARSET;
+           if (has_colors()) {
+               switch (ch) {
+               case 'f':
+                   *fg = (*fg + 1);
+                   break;
+               case 'F':
+                   *fg = (*fg - 1);
+                   break;
+               case 'b':
+                   *bg = (*bg + 1);
+                   break;
+               case 'B':
+                   *bg = (*bg - 1);
+                   break;
+               default:
+                   return FALSE;
+               }
+               if (*fg >= max_colors)
+                   *fg = 0;
+               if (*fg < 0)
+                   *fg = max_colors - 1;
+               if (*bg >= max_colors)
+                   *bg = 0;
+               if (*bg < 0)
+                   *bg = max_colors - 1;
+           }
            break;
-       default:
-           return FALSE;
        }
     }
     return TRUE;
@@ -965,12 +1160,12 @@ attr_test(void)
        mvprintw(row + 1, 8,
                 "Enter a digit to set gaps on each side of displayed attributes");
        mvprintw(row + 2, 8,
-                "^L = repaint");
+                "^L repaints, </> shifts, ");
        if (has_colors())
-           printw(".  f/F/b/F toggle colors (now %d/%d), a/A altcharset (%d)",
+           printw("f/F/b/F toggle color (now %d/%d), a/A ACS (%d)",
                   fg, bg, ac != 0);
        else
-           printw(".  a/A altcharset (%d)", ac != 0);
+           printw("a/A ACS (%d)", ac != 0);
 
        refresh();
     } while (attr_getc(&n, &fg, &bg, &ac));
@@ -1022,7 +1217,7 @@ color_test(void)
 {
     int i;
     int base, top, width;
-    NCURSES_CONST char *hello;
+    const char *hello;
 
     refresh();
     (void) printw("There are %d color pairs\n", COLOR_PAIRS);
@@ -1241,15 +1436,73 @@ color_edit(void)
  *
  ****************************************************************************/
 
+#define SLK_HELP 17
+#define SLK_WORK (SLK_HELP + 3)
+
+static void
+slk_help(void)
+{
+    static const char *table[] =
+    {
+       "Available commands are:"
+       ,""
+       ,"^L         -- repaint this message and activate soft keys"
+       ,"a/d        -- activate/disable soft keys"
+       ,"c          -- set centered format for labels"
+       ,"l          -- set left-justified format for labels"
+       ,"r          -- set right-justified format for labels"
+       ,"[12345678] -- set label; labels are numbered 1 through 8"
+       ,"e          -- erase stdscr (should not erase labels)"
+       ,"s          -- test scrolling of shortened screen"
+#if HAVE_SLK_COLOR
+       ,"F/B        -- cycle through foreground/background colors"
+#endif
+       ,"x, q       -- return to main menu"
+       ,""
+       ,"Note: if activating the soft keys causes your terminal to scroll up"
+       ,"one line, your terminal auto-scrolls when anything is written to the"
+       ,"last screen position.  The ncurses code does not yet handle this"
+       ,"gracefully."
+    };
+    unsigned j;
+
+    move(2, 0);
+    for (j = 0; j < SIZEOF(table); ++j) {
+       P(table[j]);
+    }
+    refresh();
+}
+
 static void
 slk_test(void)
 /* exercise the soft keys */
 {
     int c, fmt = 1;
     char buf[9];
+    char *s;
+#if HAVE_SLK_COLOR
+    short fg = COLOR_BLACK;
+    short bg = COLOR_WHITE;
+    bool new_color = FALSE;
+#endif
 
     c = CTRL('l');
+#if HAVE_SLK_COLOR
+    if (has_colors()) {
+       new_color = TRUE;
+    }
+#endif
+
     do {
+#if HAVE_SLK_COLOR
+       if (new_color) {
+           init_pair(1, bg, fg);
+           slk_color(1);
+           new_color = FALSE;
+           mvprintw(SLK_WORK, 0, "Colors %d/%d\n", fg, bg);
+           refresh();
+       }
+#endif
        move(0, 0);
        switch (c) {
        case CTRL('l'):
@@ -1258,25 +1511,7 @@ slk_test(void)
            mvaddstr(0, 20, "Soft Key Exerciser");
            attroff(A_BOLD);
 
-           move(2, 0);
-           P("Available commands are:");
-           P("");
-           P("^L         -- refresh screen");
-           P("a          -- activate or restore soft keys");
-           P("d          -- disable soft keys");
-           P("c          -- set centered format for labels");
-           P("l          -- set left-justified format for labels");
-           P("r          -- set right-justified format for labels");
-           P("[12345678] -- set label; labels are numbered 1 through 8");
-           P("e          -- erase stdscr (should not erase labels)");
-           P("s          -- test scrolling of shortened screen");
-           P("x, q       -- return to main menu");
-           P("");
-           P("Note: if activating the soft keys causes your terminal to");
-           P("scroll up one line, your terminal auto-scrolls when anything");
-           P("is written to the last screen position.  The ncurses code");
-           P("does not yet handle this gracefully.");
-           refresh();
+           slk_help();
            /* fall through */
 
        case 'a':
@@ -1288,7 +1523,7 @@ slk_test(void)
            break;
 
        case 's':
-           mvprintw(20, 0, "Press Q to stop the scrolling-test: ");
+           mvprintw(SLK_WORK, 0, "Press Q to stop the scrolling-test: ");
            while ((c = Getchar()) != 'Q' && (c != ERR))
                addch((chtype) c);
            break;
@@ -1317,20 +1552,155 @@ slk_test(void)
        case '6':
        case '7':
        case '8':
-           (void) mvaddstr(20, 0, "Please enter the label value: ");
-           echo();
-           wgetnstr(stdscr, buf, 8);
-           noecho();
+           (void) mvaddstr(SLK_WORK, 0, "Please enter the label value: ");
+           strcpy(buf, "");
+           if ((s = slk_label(c - '0')) != 0) {
+               strncpy(buf, s, 8);
+           }
+           wGetstring(stdscr, buf, 8);
            slk_set((c - '0'), buf, fmt);
            slk_refresh();
-           move(20, 0);
-           clrtoeol();
+           move(SLK_WORK, 0);
+           clrtobot();
+           break;
+
+       case 'x':
+       case 'q':
+           goto done;
+
+#if HAVE_SLK_COLOR
+       case 'F':
+           if (has_colors()) {
+               fg = (fg + 1) % max_colors;
+               new_color = TRUE;
+           }
+           break;
+       case 'B':
+           if (has_colors()) {
+               bg = (bg + 1) % max_colors;
+               new_color = TRUE;
+           }
+           break;
+#endif
+
+       default:
+           beep();
+       }
+    } while
+       ((c = Getchar()) != EOF);
+
+  done:
+    erase();
+    endwin();
+}
+
+#if USE_WIDEC_SUPPORT
+static void
+wide_slk_test(void)
+/* exercise the soft keys */
+{
+    int c, fmt = 1;
+    wchar_t buf[9];
+    char *s;
+    short fg = COLOR_BLACK;
+    short bg = COLOR_WHITE;
+    bool new_color = FALSE;
+
+    c = CTRL('l');
+    if (has_colors()) {
+       new_color = TRUE;
+    }
+    do {
+       if (new_color) {
+           init_pair(1, bg, fg);
+           slk_color(1);
+           new_color = FALSE;
+           mvprintw(SLK_WORK, 0, "Colors %d/%d\n", fg, bg);
+           refresh();
+       }
+       move(0, 0);
+       switch (c) {
+       case CTRL('l'):
+           erase();
+           attr_on(WA_BOLD, NULL);
+           mvaddstr(0, 20, "Soft Key Exerciser");
+           attr_off(WA_BOLD, NULL);
+
+           slk_help();
+           /* fall through */
+
+       case 'a':
+           slk_restore();
+           break;
+
+       case 'e':
+           wclear(stdscr);
+           break;
+
+       case 's':
+           mvprintw(SLK_WORK, 0, "Press Q to stop the scrolling-test: ");
+           while ((c = Getchar()) != 'Q' && (c != ERR))
+               addch((chtype) c);
+           break;
+
+       case 'd':
+           slk_clear();
+           break;
+
+       case 'l':
+           fmt = 0;
+           break;
+
+       case 'c':
+           fmt = 1;
+           break;
+
+       case 'r':
+           fmt = 2;
+           break;
+
+       case '1':
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+           (void) mvaddstr(SLK_WORK, 0, "Please enter the label value: ");
+           *buf = 0;
+           if ((s = slk_label(c - '0')) != 0) {
+               int j;
+               for (j = 0; j < 8; ++j) {
+                   if ((buf[j] = UChar(s[j])) == 0)
+                       break;
+               }
+               buf[j] = 0;
+           }
+           wGet_wstring(stdscr, buf, 8);
+           slk_wset((c - '0'), buf, fmt);
+           slk_refresh();
+           move(SLK_WORK, 0);
+           clrtobot();
            break;
 
        case 'x':
        case 'q':
            goto done;
 
+       case 'F':
+           if (has_colors()) {
+               fg = (fg + 1) % max_colors;
+               new_color = TRUE;
+           }
+           break;
+       case 'B':
+           if (has_colors()) {
+               bg = (bg + 1) % max_colors;
+               new_color = TRUE;
+           }
+           break;
+
        default:
            beep();
        }
@@ -1341,6 +1711,7 @@ slk_test(void)
     erase();
     endwin();
 }
+#endif
 
 /****************************************************************************
  *
@@ -1506,7 +1877,7 @@ acs_display(void)
 
 #if USE_WIDEC_SUPPORT
 static void
-show_upper_widechars(int first)
+show_upper_widechars(int first, int repeat)
 {
     cchar_t temp;
     wchar_t code;
@@ -1516,7 +1887,6 @@ show_upper_widechars(int first)
     attron(A_BOLD);
     mvprintw(0, 20, "Display of Character Codes %d to %d", first, last);
     attroff(A_BOLD);
-    refresh();
 
     for (code = first; code <= last; code++) {
        int row = 4 + ((code - first) % 16);
@@ -1524,13 +1894,22 @@ show_upper_widechars(int first)
        wchar_t codes[10];
        attr_t attrs = A_NORMAL;
        char tmp[80];
+       int count = repeat;
 
        memset(&codes, 0, sizeof(codes));
        codes[0] = code;
-       sprintf(tmp, "%3ld (0x%lx)", code, code);
+       sprintf(tmp, "%3ld (0x%lx)", (long) code, (long) code);
        mvprintw(row, col, "%*s: ", COLS / 4, tmp);
        setcchar(&temp, codes, attrs, 0, 0);
-       echo_wchar(&temp);
+       do {
+           /*
+            * This could use add_wch(), but is done for comparison with the
+            * normal 'f' test (and to make a test-case for echo_wchar()).
+            * The screen will flicker because the erase() at the top of the
+            * function is met by the builtin refresh() in echo_wchar().
+            */
+           echo_wchar(&temp);
+       } while (--count > 0);
     }
 }
 
@@ -1624,13 +2003,15 @@ show_wbox_chars(void)
 }
 
 static int
-show_2_wacs(int n, const char *name, char *code)
+show_2_wacs(int n, const char *name, const char *code)
 {
     const int height = 16;
     int row = 4 + (n % height);
     int col = (n / height) * COLS / 2;
+    char temp[80];
+
     mvprintw(row, col, "%*s : ", COLS / 4, name);
-    addstr(code);
+    addstr(strcpy(temp, code));
     return n + 1;
 }
 
@@ -1683,13 +2064,16 @@ show_utf8_chars(void)
     n = show_2_wacs(n, "WACS_S3",      "\342\216\273");
     n = show_2_wacs(n, "WACS_S7",      "\342\216\274");
     n = show_2_wacs(n, "WACS_S9",      "\342\216\275");
-    /* *INDENT-OFF* */
+    /* *INDENT-ON* */
+
 }
 
 static void
 wide_acs_display(void)
 {
     int c = 'a';
+    int digit = 0;
+    int repeat = 0;
 
     do {
        switch (c) {
@@ -1704,11 +2088,24 @@ wide_acs_display(void)
            break;
        default:
            if (isdigit(c))
-               show_upper_widechars((c - '0') * 32 + 128);
+               digit = (c - '0');
+           else if (c == '+')
+               ++digit;
+           else if (c == '-' && digit > 0)
+               --digit;
+           else if (c == '>')
+               ++repeat;
+           else if (c == '<' && repeat > 0)
+               --repeat;
+           else {
+               beep();
+               break;
+           }
+           show_upper_widechars(digit * 32 + 128, repeat);
            break;
        }
        mvprintw(LINES - 2, 0,
-                "Select: a WACS, b box, u UTF-8, 0-9 non-ASCII characters, q=quit");
+                "Select: a WACS, b box, u UTF-8, 0-9,+/- non-ASCII, </> repeat, q=quit");
        refresh();
     } while ((c = Getchar()) != 'x' && c != 'q');
 
@@ -2478,35 +2875,35 @@ demo_panels(void)
                     COLS / 8 + 1,
                     0,
                     0);
-       set_panel_userptr(p1, "p1");
+       set_panel_userptr(p1, (NCURSES_CONST void *) "p1");
 
        p2 = mkpanel(COLOR_GREEN,
                     LINES / 2 + 1,
                     COLS / 7,
                     LINES / 4,
                     COLS / 10);
-       set_panel_userptr(p2, "p2");
+       set_panel_userptr(p2, (NCURSES_CONST void *) "p2");
 
        p3 = mkpanel(COLOR_YELLOW,
                     LINES / 4,
                     COLS / 10,
                     LINES / 2,
                     COLS / 9);
-       set_panel_userptr(p3, "p3");
+       set_panel_userptr(p3, (NCURSES_CONST void *) "p3");
 
        p4 = mkpanel(COLOR_BLUE,
                     LINES / 2 - 2,
                     COLS / 8,
                     LINES / 2 - 2,
                     COLS / 3);
-       set_panel_userptr(p4, "p4");
+       set_panel_userptr(p4, (NCURSES_CONST void *) "p4");
 
        p5 = mkpanel(COLOR_MAGENTA,
                     LINES / 2 - 2,
                     COLS / 8,
                     LINES / 2,
                     COLS / 2 - 2);
-       set_panel_userptr(p5, "p5");
+       set_panel_userptr(p5, (NCURSES_CONST void *) "p5");
 
        fill_panel(p1);
        fill_panel(p2);
@@ -3747,12 +4144,80 @@ my_form_driver(FORM * form, int c)
     }
 }
 
+/*
+ * Allow a middle initial, optionally with a '.' to end it.
+ */
+static bool
+mi_field_check(FIELD * fld, const void *data GCC_UNUSED)
+{
+    char *s = field_buffer(fld, 0);
+    int state = 0;
+    int n;
+
+    for (n = 0; s[n] != '\0'; ++n) {
+       switch (state) {
+       case 0:
+           if (s[n] == '.') {
+               if (n != 1)
+                   return FALSE;
+               state = 2;
+           } else if (isspace(UChar(s[n]))) {
+               state = 2;
+           }
+           break;
+       case 2:
+           if (!isspace(UChar(s[n])))
+               return FALSE;
+           break;
+       }
+    }
+
+    /* force the form to display a leading capital */
+    if (islower(UChar(s[0]))) {
+       s[0] = toupper(UChar(s[0]));
+       set_field_buffer(fld, 0, s);
+    }
+    return TRUE;
+}
+
+static bool
+mi_char_check(int ch, const void *data GCC_UNUSED)
+{
+    return ((isalpha(ch) || ch == '.') ? TRUE : FALSE);
+}
+
+/*
+ * Passwords should be at least 6 characters.
+ */
+static bool
+pw_field_check(FIELD * fld, const void *data GCC_UNUSED)
+{
+    char *s = field_buffer(fld, 0);
+    int n;
+
+    for (n = 0; s[n] != '\0'; ++n) {
+       if (isspace(UChar(s[n]))) {
+           if (n < 6)
+               return FALSE;
+       }
+    }
+    return TRUE;
+}
+
+static bool
+pw_char_check(int ch, const void *data GCC_UNUSED)
+{
+    return (isgraph(ch) ? TRUE : FALSE);
+}
+
 static void
 demo_forms(void)
 {
     WINDOW *w;
     FORM *form;
     FIELD *f[12], *secure;
+    FIELDTYPE *fty_middle = new_fieldtype(mi_field_check, mi_char_check);
+    FIELDTYPE *fty_passwd = new_fieldtype(pw_field_check, pw_char_check);
     int finished = 0, c;
     unsigned n = 0;
 
@@ -3775,17 +4240,26 @@ demo_forms(void)
 
     /* describe the form */
     f[n++] = make_label(0, 15, "Sample Form");
+
     f[n++] = make_label(2, 0, "Last Name");
     f[n++] = make_field(3, 0, 1, 18, FALSE);
+    set_field_type(f[n - 1], TYPE_ALPHA, 1);
+
     f[n++] = make_label(2, 20, "First Name");
     f[n++] = make_field(3, 20, 1, 12, FALSE);
+    set_field_type(f[n - 1], TYPE_ALPHA, 1);
+
     f[n++] = make_label(2, 34, "Middle Name");
     f[n++] = make_field(3, 34, 1, 12, FALSE);
+    set_field_type(f[n - 1], fty_middle);
+
     f[n++] = make_label(5, 0, "Comments");
     f[n++] = make_field(6, 0, 4, 46, FALSE);
+
     f[n++] = make_label(5, 20, "Password:");
     secure =
        f[n++] = make_field(5, 30, 1, 9, TRUE);
+    set_field_type(f[n - 1], fty_passwd);
     f[n++] = (FIELD *) 0;
 
     form = new_form(f);
@@ -3982,6 +4456,11 @@ do_single_test(const char c)
        slk_test();
        break;
 
+#if USE_WIDEC_SUPPORT
+    case 'E':
+       wide_slk_test();
+       break;
+#endif
     case 'f':
        acs_display();
        break;
@@ -4252,6 +4731,9 @@ main(int argc, char *argv[])
        (void) puts("c = color test pattern");
        (void) puts("d = edit RGB color values");
        (void) puts("e = exercise soft keys");
+#if USE_WIDEC_SUPPORT
+       (void) puts("E = exercise soft keys using wide-characters");
+#endif
        (void) puts("f = display ACS characters");
 #if USE_WIDEC_SUPPORT
        (void) puts("F = display Wide-ACS characters");
index fd773c8c52e7695e286bb0b99fcebec8a5775e45..91117b918fa39abbc7555614923f499f6b26982e 100644 (file)
 /*
  * Author: Thomas E. Dickey <dickey@clark.net> 2000
  *
- * $Id: railroad.c,v 1.10 2002/04/06 20:45:22 tom Exp $
+ * $Id: railroad.c,v 1.11 2002/10/19 22:11:24 tom Exp $
  *
  * A simple demo of the termcap interface.
  */
 #include <test.priv.h>
 
-#include <ctype.h>
-
 static char *wipeit;
 static char *moveit;
 static int length;
index d1cc0fa1e5c7395a5ed8afb0de1ce29cf1b78cb7..c3cce6d34f927d3331cef1c1850b9048b11e775e 100644 (file)
@@ -1,6 +1,6 @@
-/* $Id: tclock.c,v 1.22 2002/06/29 23:34:13 tom Exp $ */
+/* $Id: tclock.c,v 1.24 2002/12/29 01:40:30 tom Exp $ */
 
-#include "test.priv.h"
+#include <test.priv.h>
 
 #include <math.h>
 
@@ -125,9 +125,11 @@ main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
     int sdx, sdy;
     int ch;
     int lastbeep = -1;
+    bool odd = FALSE;
     time_t tim;
     struct tm *t;
     char szChar[10];
+    char *text;
     int my_bg = COLOR_BLACK;
 #if HAVE_GETTIMEOFDAY
     struct timeval current;
@@ -151,6 +153,7 @@ main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
        init_pair(1, COLOR_RED, my_bg);
        init_pair(2, COLOR_MAGENTA, my_bg);
        init_pair(3, COLOR_GREEN, my_bg);
+       init_pair(4, COLOR_WHITE, COLOR_BLUE);
     }
 #ifdef KEY_RESIZE
     keypad(stdscr, TRUE);
@@ -218,11 +221,16 @@ main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
        if (has_colors())
            attrset(COLOR_PAIR(0));
 
-       mvaddstr(LINES - 2, 0, ctime(&tim));
+       text = ctime(&tim);
+       mvprintw(2, 0, "%.*s", (int) (strlen(text) - 1), text);
        refresh();
        if ((t->tm_sec % 5) == 0
            && t->tm_sec != lastbeep) {
            lastbeep = t->tm_sec;
+           if (has_colors()) {
+               odd = !odd;
+               bkgd(odd ? COLOR_PAIR(4) : COLOR_PAIR(0));
+           }
            beep();
        }
 
index 18c1eb5c6fa5409b1f5eeaa0c37c5064ce753973..a6df135afb9c3e896922540d9a2763191286093b 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2002,2003 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            *
 /****************************************************************************
  *  Author: Thomas E. Dickey <dickey@clark.net> 1996                        *
  ****************************************************************************/
-/* $Id: test.priv.h,v 1.35 2002/06/29 23:36:12 tom Exp $ */
+/* $Id: test.priv.h,v 1.46 2003/10/19 00:04:24 tom Exp $ */
+
+#ifndef __TEST_PRIV_H
+#define __TEST_PRIV_H 1
 
-#if HAVE_CONFIG_H
 #include <ncurses_cfg.h>
-#else
-#define HAVE_CURSES_VERSION 0
-#define HAVE_RESIZETERM 0
-#define HAVE_USE_DEFAULT_COLORS 0
-#define HAVE_WRESIZE 0
+
+/*
+ * Fix ifdef's that look for the form/menu/panel libraries, if we are building
+ * with wide-character ncurses.
+ */
+#ifdef  HAVE_LIBFORMW
+#define HAVE_LIBFORM 1
+#endif
+
+#ifdef  HAVE_LIBMENUW
+#define HAVE_LIBMENU 1
+#endif
+
+#ifdef  HAVE_LIBPANELW
+#define HAVE_LIBPANEL 1
 #endif
 
+/*
+ * Fallback definitions to accommodate broken compilers
+ */
 #ifndef HAVE_CURSES_VERSION
 #define HAVE_CURSES_VERSION 0
 #endif
 #define HAVE_PANEL_H 0
 #endif
 
+#ifndef HAVE_SLK_COLOR
+#define HAVE_SLK_COLOR 0
+#endif
+
 #ifndef HAVE_WRESIZE
 #define HAVE_WRESIZE 0
 #endif
 
+#ifndef NCURSES_EXT_FUNCS
+#define NCURSES_EXT_FUNCS 0
+#endif
+
 #ifndef NCURSES_NOMACROS
 #define NCURSES_NOMACROS 0
 #endif
 
 #include <signal.h>    /* include before curses.h to work around glibc bug */
 
+#if defined(HAVE_NCURSESW_NCURSES_H)
+#include <ncursesw/curses.h>
+#include <ncursesw/term.h>
+#elif defined(HAVE_NCURSES_NCURSES_H)
+#include <ncurses/curses.h>
+#include <ncurses/term.h>
+#else
 #include <curses.h>
 #include <term.h>
+#endif
 
 #if NCURSES_NOMACROS
 #include <nomacros.h>
@@ -125,6 +156,9 @@ extern int optind;
 #define setlocale(name,string) /* nothing */
 #endif
 
+#include <assert.h>
+#include <ctype.h>
+
 #ifndef GCC_NORETURN
 #define GCC_NORETURN /* nothing */
 #endif
@@ -144,24 +178,48 @@ extern int optind;
 #endif
 #endif
 
+#if HAVE_PANEL_H && HAVE_LIBPANEL
+#define USE_LIBPANEL 1
+#else
+#define USE_LIBPANEL 0
+#endif
+
+#if HAVE_MENU_H && HAVE_LIBMENU
+#define USE_LIBMENU 1
+#else
+#define USE_LIBMENU 0
+#endif
+
+#if HAVE_FORM_H && HAVE_LIBFORM
+#define USE_LIBFORM 1
+#else
+#define USE_LIBFORM 0
+#endif
+
 #ifndef HAVE_TYPE_ATTR_T
 #if !USE_WIDEC_SUPPORT
 #define attr_t long
 #endif
 #endif
 
-#ifndef NCURSES_CH_T
+#undef NCURSES_CH_T
 #if !USE_WIDEC_SUPPORT
 #define NCURSES_CH_T chtype
 #else
 #define NCURSES_CH_T cchar_t
 #endif
-#endif
 
 #ifndef CCHARW_MAX
 #define CCHARW_MAX 5
 #endif
 
+#ifndef CTRL
+#define CTRL(x)                ((x) & 0x1f)
+#endif
+
+#define QUIT           CTRL('Q')
+#define ESCAPE         CTRL('[')
+
 #ifndef KEY_MIN
 #define KEY_MIN 256    /* not defined in Solaris 8 */
 #endif
@@ -216,3 +274,21 @@ extern int optind;
 #ifndef NCURSES_CONST
 #define NCURSES_CONST /* nothing */
 #endif
+
+/* out-of-band values for representing absent capabilities */
+#define ABSENT_BOOLEAN         (-1)            /* 255 */
+#define ABSENT_NUMERIC         (-1)
+#define ABSENT_STRING          (char *)0
+
+/* out-of-band values for representing cancels */
+#define CANCELLED_BOOLEAN      (char)(-2)      /* 254 */
+#define CANCELLED_NUMERIC      (-2)
+#define CANCELLED_STRING       (char *)(-1)
+
+#define VALID_BOOLEAN(s) ((unsigned char)(s) <= 1) /* reject "-1" */
+#define VALID_NUMERIC(s) ((s) >= 0)
+#define VALID_STRING(s)  ((s) != CANCELLED_STRING && (s) != ABSENT_STRING)
+
+#define VT_ACSC "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"
+
+#endif /* __TEST_PRIV_H */
index fd189a94492743370815a0557699824f887b0f83..e8aa918eacb9b57e026b697d16181369f4f4108e 100644 (file)
@@ -7,11 +7,10 @@
  *  wrs(5/28/93) -- modified to be consistent (perform identically) with either
  *                  PDCurses or under Unix System V, R4
  *
- * $Id: testcurs.c,v 1.31 2002/09/14 22:45:15 tom Exp $
+ * $Id: testcurs.c,v 1.32 2002/10/19 22:11:24 tom Exp $
  */
 
 #include <test.priv.h>
-#include <ctype.h>
 
 #if defined(XCURSES)
 char *XCursesProgramName = "testcurs";
index 7bce567b4431308a4e2f5b09220542bcffa32f2b..8fc3908fcfbc6e5f031c66b3d91c9b25d636ea09 100644 (file)
@@ -2,10 +2,9 @@
  * Date:  1997/03/17
  * From:  bayern@morpheus.cis.yale.edu
  *
- * $Id: testscanw.c,v 1.9 2002/06/29 23:32:18 tom Exp $
+ * $Id: testscanw.c,v 1.10 2002/10/19 22:11:24 tom Exp $
  */
 #include <test.priv.h>
-#include <ctype.h>
 
 int
 main(int argc, char *argv[])
index a6303c1d30d123b4cd812bb8dd3b3dcbeec7120f..ce9b9b8719d76590649421fa630eb6b84aeb455c 100644 (file)
  * scroll operation worked, and the refresh() code only had to do a
  * partial repaint.
  *
- * $Id: view.c,v 1.53 2002/06/29 23:28:27 tom Exp $
+ * $Id: view.c,v 1.57 2003/05/17 21:58:43 tom Exp $
  */
 
-#include <ctype.h>
 #include <time.h>
 
 #include <test.priv.h>
@@ -54,7 +53,7 @@
 static RETSIGTYPE finish(int sig) GCC_NORETURN;
 static void show_all(const char *tag);
 
-#if defined(SIGWINCH) && defined(TIOCGWINSZ) && HAVE_RESIZETERM
+#if defined(SIGWINCH) && defined(TIOCGWINSZ) && HAVE_RESIZE_TERM
 #define CAN_RESIZE 1
 #else
 #define CAN_RESIZE 0
@@ -496,14 +495,17 @@ show_all(const char *tag)
        clrtoeol();
        if ((s = lptr[i - 1]) != 0) {
            int len = ch_len(s);
-           if (len > shift)
+           if (len > shift) {
 #if USE_WIDEC_SUPPORT
                add_wchstr(s + shift);
 #else
                addchstr(s + shift);
 #endif
+           }
+#if defined(NCURSES_VERSION) || defined(HAVE_WCHGAT)
            if (try_color)
                wchgat(stdscr, -1, A_NORMAL, my_pair, NULL);
+#endif
        }
     }
     setscrreg(1, LINES - 1);