NetBSD/dist/cdk/CHANGES.myc
garbled 5940edcfb4 Initial import of CDK 4.9.9. The work to port this was performed by
Charles Hannum, and that is the version being imported:
cdk-4.9.9-20000407-myc3
2001-01-04 19:57:58 +00:00

57 lines
2.1 KiB
Plaintext

High-level changes:
* Create subwindows to contain titles, input data, etc. This helps contain
items within their alotted space, and makes some calculations (e.g. for
justification) much easier.
* Avoid touchwin() and wrefresh(). All redraws are done with wnoutrefresh()
and pushed to the screen only on demand (or on input). This avoids
gratuitous redraws and silly updates just to move the cursor multiple
times. Redraw is MUCH faster.
* Take advantage of modern Curses functions: mvhline(), mvwline(), mvwin().
Also, we do not need to explicitly delwin() or werase() subwindows.
* Fix dozens of off-by-one errors in window placement calculations, window
size calculations, etc.
scroll.c:
* Modify setCDKScrollPosition to do a minimal scroll and put the required
line at the top or bottom of the window, as appropriate.
alphalist.c:
* Take advantage of the previous by always calling setCDKScrollPosition
after a search.
calendar.c:
* Fix bogus calculations and conditionals that caused it to jump to the
wrong day of month or wrong month.
* Don't exit the widget after calling a binding function.
cdk.c:
* Strip newlines when reading a file. (It appears the code was changed
from using gets(), but this was never added.)
config.hin:
* Fix config.hin to work with a modern autoconf.
demos/command.c:
* Add bindings for page-up and page-down in the entry window, which are
simply injected in the scrolling window.
* Fix null pointer dereference when ESC is pressed in the entry window.
demos/fileview.c, examples/fselect_ex.c, examples/viewer_ex.c:
* Merge these files.
* Use MAX_LINES to bound the number of lines read, as this is what the
CDK internals use. (Previously it used a larger value, and caused
memory corruption.)
* After viewing a file, go back to the file selector box to pick another
one.
demos/stopSign.c:
* Clean up the display.
demos/vinstall.c, examples/vinstall.c:
* Merge these files.
* Clean up the display (make the histogram and swindow meet, etc.).
* Use remove(), not system("rm -f ...").
XXX SEARCH FOR //, #IF 0, AND XXX
XXX RESTART AN ENTRY.C