---------------------------- revision 1.1 date: 2000/02/22 02:04:33; author: corliss; state: Exp; lines: +366 -176 --input_box modifications: --'f_colour': active colour for the text field --'c_limit': character limit for input --'content': default content can now be specified --'password': enables/disables password mode for field input --Text field now supports horizontal scrolling --txt_field modifications: --'hz_scroll': enables/disables horizontal scrolling --'edit': enables/disables editing capability of field contents --'decorations': enables/disables border decorations --'password': enables/disables password mode for field input --list_box modifications: --Can now accept either a hash or an array reference for 'list' --PgUp/PgDn keys now work --calendar modifications: --'t_colour': controls current date's colour highlighting --'e_colour': controls event dates' colour highlighting --'events': array of event dates to highlight in the calendar --Added init_scr function that tests the terminal both for interactivity and minimum dimensions, and returns a handle to a new Curses object. --Improved warning diagnostic messages --Fixed some of the boundary checking problems --Fixed unusual circumstance bug in the line_split function ---------------------------- revision 1.0 date: 2000/01/15 03:25:59; author: corliss; state: Exp; lines: +1 -1 --Stable release, moving up to 1.0 ---------------------------- revision 0.10 date: 2000/01/15 03:22:52; author: corliss; state: Exp; lines: +230 -32 --Fixed a nasty bug on the calendar widget. --Added button mode choice on msg_box. --Added input_box and msg_box widgets. ---------------------------- revision 0.9 date: 1999/11/17 02:36:53; author: corliss; state: Exp; lines: +563 -373 --Generating 'cal' output internally, so the Unix cal is no longer needed. --Added export tags of :standard, :all, and :functions. --Allowing export of grab_key. --Added boundary checking for all widgets. --Button bar now is created in a derived window like the other widgets. --Fixed Text Field bugs that caused the script to crash. --Rewrote line_split *again*. --Added spacing parameter to the button bar. --select_colour now allocats colour pairs as needed. --Removed init_colours function (due to the expansion of select_colour). --All functions now just require the object handle, instead of a reference to it. --Cleaned up various 'Uninitialised variables being used' errors. ---------------------------- revision 0.8 date: 1999/06/17 23:39:01; author: corliss; state: Exp; lines: +246 -214 --Changed the name and rewrote line_split function. --Rewrote txt_field to work with line_split. --Added title options to the list_box and txt_field functions. --Fixed bug in vertical button bars that disallowed selected the first element. --Added all seven colour on black pairs to the init_colours and select_colours functions (blue, cyan, magenta, green, red, white, and yellow). --Minor code tweaks. ---------------------------- revision 0.7 date: 1999/04/14 05:23:36; author: corliss; state: Exp; lines: +25 -15 --Added l_limit and c_limit (line and character limit, respectively) to text fields. ---------------------------- revision 0.6 date: 1999/02/02 17:18:45; author: corliss; state: Exp; lines: +166 -53 --Fixed the small problem of the text fields not liking 0s. (Whoops!) Never put the the getch sequence as the test for the while loop. :-P --Fixed the cursor location bug, as well as the paging bug. --Expanded support for all printable characters on the PC keyboard in text fields. --Fixed the cursor/line bug when the cursor position is on the last line, and on a new line character in the text field widget. --Added Up/Down arrows to indicate existing content out of view in the window in the text field widget. --Added Up/Down arrow, Page Up, Page Down support to the text field widget. --Moved the $colour scalar into the BEGIN tag clause, so the has_colors() function need only be called once. --Moved conditional declaration of the select_colours function into the function itself, dependent upon the persistent $colour. --select_colours now returns a 1 if it could successfully set the colour, as per $colour, and a 0 if not. --init_colours() *must* be called now, since this is the routine that sets the value of $colour, and the colour pairs. --Each widget now draws its border with A_BOLD if the $colour is not available and 'draw_only' was not set. --Added Up/Down arrows to indicate list entries that exist out of view of the window in the list box. ---------------------------- revision 0.5 date: 1999/01/11 02:09:55; author: corliss; state: Exp; lines: +61 -46 --Fixed some of the bugs in the text field widget, but I still have some work to do on the paging portion. --Text field now directly supports teh backspace, home/end, and right/ left keys, as well as normal text. ---------------------------- revision 0.4 date: 1999/01/10 20:19:47; author: corliss; state: Exp; lines: +387 -195 --All widgets now handle their own special keys --Text widget now handles modification to content as well, returning the the updated content to the calling routine. --cal output now stored in a persistent array, so it only needs to be called when moving to a new month, now. --None of the widgets need to have window declared for them, now. All of them will create their own derived windows, and destroy them upon exiting the routine. --Replaced all chr calls in box commands with the ACS_* constants, for more reliable rendering on various term types. --New select_colour function for selecting character colour by name. Only supports red, blue, green, and yellow, currently. --More comments, and a few misc. tweaks. . ---------------------------- revision 0.3 date: 1999/01/03 23:21:59; author: corliss; state: Exp; lines: +56 -11 Debuged the Calendar widget for highlighting the current date, optimised the code a bit more, and fleshed out more of the comments. ---------------------------- revision 0.2 date: 1998/12/30 18:11:39; author: corliss; state: Exp; lines: +41 -31 Optimised the code a bit with better if/elsif structures, as well as making the colour coding consistent among the widgets and optimising the variable declarations. ---------------------------- revision 0.1 date: 1998/12/29 17:18:16; author: corliss; state: Exp; Text field, list box, buttons, calendar, and init_colours function completed, but with little or no error handling. =============================================================================