1389 lines
68 KiB
Plaintext
1389 lines
68 KiB
Plaintext
|
-- $Id: CHANGES,v 1.264 2016/12/11 02:27:55 tom Exp $
|
|||
|
-------------------------------------------------------------------------------
|
|||
|
Cdk Version Change List
|
|||
|
Copyright Mike Glover, 1995, 1996, 1997, 1998, 1999
|
|||
|
Modifications copyright Thomas E. Dickey 1999-2015, 2016
|
|||
|
-------------------------------------------------------------------------------
|
|||
|
|
|||
|
This file outlines all of the changes/additions from one release to another.
|
|||
|
Changes through 4.9.8 (December 1998) were recorded by Mike Glover.
|
|||
|
Thereafter, changes have been recorded by Thomas E. Dickey.
|
|||
|
|
|||
|
2016/12/10
|
|||
|
+ improve formatting of manpages, using bullets
|
|||
|
+ add -C and -R options to matrix_ex.c to exercise the col/row spacing
|
|||
|
features of matrix widget.
|
|||
|
+ modify matrix widget to highlight the current cell for the cases
|
|||
|
when col/row spacing are greater than zero.
|
|||
|
|
|||
|
2016/12/04
|
|||
|
+ cleanup change for color pairs in 2016/11/20
|
|||
|
+ modify initCDKScreen() to simplify initialization of curses by
|
|||
|
calling initscr() in this function after initializing the locale.
|
|||
|
That fixes a problem using PuTTY with CDK when built using ncurses
|
|||
|
(report by Marc Smith).
|
|||
|
|
|||
|
2016/11/20
|
|||
|
+ fix warnings from cppcheck 1.76.1
|
|||
|
+ updated configure macros:
|
|||
|
+ CF_CC_ENV_FLAGS don't limit the check to -I, -U and -D options,
|
|||
|
since the added options can include various compiler options before
|
|||
|
and after preprocessor options.
|
|||
|
+ CF_GNU_SOURCE recent glibc (Debian 2.23-4 for example) has
|
|||
|
misordered ifdef/checks for new symbol _DEFAULT_SOURCE, producing
|
|||
|
warning messages when only _GNU_SOURCE is defined. Add a followup
|
|||
|
check to define _DEFAULT_SOURCE.
|
|||
|
+ CF_LD_RPATH_OPT change FreeBSD to use -Wl,-rpath rather than -rpath
|
|||
|
option. According to FreeBSD #178732, either works since FreeBSD
|
|||
|
4.x; however scons does not accept anything except the -Wl,-rpath
|
|||
|
form.
|
|||
|
+ CF_PROG_LINT add cpplint to programs to use; drop ad hoc tdlint and
|
|||
|
alint.
|
|||
|
+ CF_WITH_NCURSES_ETC add check for ncurses pthreads
|
|||
|
+ CF_XOPEN_SOURCE add "uclinux" to list of Linux's and use
|
|||
|
_GNU_SOURCE for cygwin headers, tested with cygwin 2.3, 2.5
|
|||
|
+ CF__ADD_SHLIB_RULES improve scripting for ldconfig to avoid warning
|
|||
|
messages if no permissions
|
|||
|
+ update config.guess, config.sub
|
|||
|
> patches by Aarian P. Aleahmad:
|
|||
|
+ modify encodeAttribute() to allow up to 256 color pairs.
|
|||
|
+ corrected assignment in scroller_SetPosition(), to show highlighted
|
|||
|
member.
|
|||
|
+ improve the way attributes are applied to Mentry widgets.
|
|||
|
+ improve Entry widget by using newwin rather than subwin, as well
|
|||
|
as passing arguments to callback function.
|
|||
|
|
|||
|
2016/11/19
|
|||
|
+ add reRegisterCDKObject()
|
|||
|
|
|||
|
2016/01/31
|
|||
|
+ fix a few of the lintian errors in package/debian
|
|||
|
+ fix some too-wide tables in manpages, which caused Debian lintian
|
|||
|
errors.
|
|||
|
+ take lower-limit's formatted length into account in slider, etc.,
|
|||
|
(patch by Guido Meusch).
|
|||
|
+ make similar repainting-fixes for radio.c and marquee.c
|
|||
|
+ fix repainting of Scroll widget when it has no box-outline
|
|||
|
(patch by Manuel Schmitz).
|
|||
|
+ add highlight and callbackData members to CDKBUTTON, as well as
|
|||
|
macros for setting/getting the highlight value. Use the highlight to
|
|||
|
override the default A_REVERSE used in CDK button (patch by Aarian P.
|
|||
|
Aleahmad).
|
|||
|
+ fix two bugs in template.c (patch by Aarian P. Aleahmad):
|
|||
|
+ in cleanCDKTemplate, fill all of the info string with nulls
|
|||
|
+ in setCDKTemplateValue, call cleanCDKTemplate whether or not
|
|||
|
the pointer for newValue passed by the caller was a null.
|
|||
|
+ updated configure macros:
|
|||
|
+ CF_LIB_PREFIX, CF_WITH_LIBTOOL, and CF_XOPEN_SOURCE, build-fixes
|
|||
|
for OS/2
|
|||
|
+ CF_XOPEN_CURSES, improve check, making it define NCURSES_WIDECHAR
|
|||
|
if we happen to be building on a platform (such as OSX) where we do
|
|||
|
not define _XOPEN_SOURCE or _XOPEN_SOURCE_EXTENDED
|
|||
|
+ CF_WITH_VERSIONED_SYMS, avoid ncurses build error on ppc64
|
|||
|
architecture the nm tool is reporting _is_missing in Data section
|
|||
|
for ppc64 (by comparison ppc64le is reporting it in Text section)
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2015/09/28
|
|||
|
+ build ".deb" test-package with ncurses6, using versioned symbols.
|
|||
|
+ updated configure macros:
|
|||
|
+ modifications from ncurses/xterm to allow alternate to /bin/sh for
|
|||
|
configure-shell, while dropping support for non-POSIX shell such
|
|||
|
as Solaris.
|
|||
|
+ updated/integrated changes for versioned symbols from ncurses6.
|
|||
|
+ CF_DISABLE_LIBTOOL_VERSION when using -version-info (the native
|
|||
|
libtool mode), get the ABI_VERSION value from $VERSION (which comes
|
|||
|
from CF_VERSION_INFO)
|
|||
|
+ CF_ADD_INCDIR fix an infinite loop when the include-directory to be
|
|||
|
added does not exist (Debian #786436)
|
|||
|
+ CF_WITH_NCURSES_ETC add --with-screen option
|
|||
|
+ CF_SUBDIR_PATH change this to a loop, adding /usr/pkg (NetBSD) and
|
|||
|
/opt/local (Mac OSX)
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2015/01/03
|
|||
|
+ modify cdk-config.in to work with systems where libdir is /usr/lib64
|
|||
|
(patch by Peter Hyman).
|
|||
|
|
|||
|
2014/11/06
|
|||
|
+ alter limit-check in setCDKLabelMessage to use the actual window size
|
|||
|
rather than the label-array's latest size (prompted by suggestion by
|
|||
|
Stuart Friedberg).
|
|||
|
+ reset label pointer to 0 after freeing it during resizing in
|
|||
|
setCDKLabelMessage (report/analysis by Stuart Friedberg).
|
|||
|
+ fix most Coverity warnings, aside from demos using getenv.
|
|||
|
+ correct dependency of dpkg/mingw test packages; only "ncurses6" is
|
|||
|
used rather than "libncurses6".
|
|||
|
+ change test-packages to use --with-shared rather than cdkshlib hack.
|
|||
|
+ add configure options to implement symbol versioning/hiding:
|
|||
|
--with-versioned-syms=X markup versioned symbols using ld
|
|||
|
--with-export-syms=XXX limit exported symbols using libtool
|
|||
|
+ updated configure macros:
|
|||
|
+ CF_ACVERSION_CHECK -
|
|||
|
+ work around another gratuitous incompatibility introduced in 2.69
|
|||
|
(reported by Ross Burton, openembedded.org)
|
|||
|
+ CF_ADD_CFLAGS - workaround for ash-shell with Minix 3.2
|
|||
|
+ CF_ADD_LIBS -
|
|||
|
+ workaround in CF_X_TOOLKIT uses pkgconfig, whose files generally
|
|||
|
are using incomplete dependencies - in turn introducing lots of
|
|||
|
duplication. filter out the duplicates.
|
|||
|
+ CF_CHECK_CFLAGS - workaround for ash-shell with Minix 3.2
|
|||
|
+ CF_CURSES_FUNCS -
|
|||
|
+ improve workaround for weak-linkage, seems to fix tests with
|
|||
|
NetBSD 6.1
|
|||
|
+ CF_GETOPT_HEADER -
|
|||
|
+ add NEED_GETOPT_H definition, since that's the only interesting
|
|||
|
special case
|
|||
|
+ CF_INTEL_COMPILER -
|
|||
|
+ cleanup the -no-gcc option which was leftover from testing - prcs
|
|||
|
does not build with this option.
|
|||
|
+ CF_LIB_SUFFIX -
|
|||
|
+ it is not necessary or even a good idea to make AIX's shared-library suffixes ".a" -- make it ".so" like everyone else (including the system's shared libraries).
|
|||
|
+ CF_MAKEFLAGS -
|
|||
|
+ workaround for GNU make 4.0 incompatibility with previous
|
|||
|
releases.
|
|||
|
+ CF_X_ATHENA - add --with-Xaw3dxft option.
|
|||
|
+ CF_XOPEN_SOURCE -
|
|||
|
+ add case for UnixWare (report/discussion with Mark Ryan).
|
|||
|
+ Minix3.2 ifdef's the POSIX.1-2001 functions inside
|
|||
|
_NETBSD_SOURCE, even though it was released 2012-02-29 - appease
|
|||
|
it. At the same time, turn on the verbose flag to show that most
|
|||
|
platforms need platform-specific define's to get POSIX (sic).
|
|||
|
+ for Solaris (tested with gcc/g++ 3.4.3 on Solaris 10 and gcc/g++
|
|||
|
4.5.2 on Solaris 11), suppress the followup check for defining
|
|||
|
_XOPEN_SOURCE because it is not needed, as well as because g++
|
|||
|
4.7.3 (no package, used in Sage for Solaris 10) has some
|
|||
|
unspecified header breakage which is triggered by the duplicate
|
|||
|
definition.
|
|||
|
+ CF_X_TOOLKIT -
|
|||
|
+ add workaround for breakage in XQuartz upgrades.
|
|||
|
+ add 3rd parameter to AC_DEFINE for autoheader.
|
|||
|
+ modify spec-file to work with OpenSUSE's customization of
|
|||
|
_defaultdocdir, which puts documentation for most packages in
|
|||
|
/usr/share/doc/packages/
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2014/01/18
|
|||
|
+ fix memory leak in allocListArrays() in scroll.c (patch by Alexander
|
|||
|
Gozman).
|
|||
|
+ amend changes for alphalist in 2012/03/23, to make its "list"
|
|||
|
parameter read/write so that the caller's copy can be sorted as
|
|||
|
before.
|
|||
|
+ add man/man2html.ignore, used when generating
|
|||
|
http://invisible-island.net/cdk/manpage/
|
|||
|
|
|||
|
2014/01/01
|
|||
|
+ improve limit-checks in trimCDKWindow() (patch by Tyson Nottingham).
|
|||
|
+ updated configure script (further improvments for shared libraries,
|
|||
|
and clang).
|
|||
|
+ update config.guess
|
|||
|
|
|||
|
2013/11/17
|
|||
|
+ fix dependencies of Debian MinGW packages.
|
|||
|
|
|||
|
2013/11/07
|
|||
|
+ add scripts for testing cross-compiles to MinGW.
|
|||
|
+ add new scroller.h to CDKHDR variable in Makefile.in, so it will be
|
|||
|
installed (report by Aitor Atuin).
|
|||
|
+ updated configure script (further improvments for shared libraries,
|
|||
|
and MinGW).
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2013/09/01
|
|||
|
+ add a limit-check in drawCDKSwindowList() (patch by Wang Weber).
|
|||
|
+ refactor scrolling support from radio.c, scroll.c, selection.c as new
|
|||
|
file scroll.c, making functions from macros which were in cdk_int.h.
|
|||
|
This change also modifies header files to move common fields to a new
|
|||
|
SCROLLER_FIELDS macro - this is a source-compatible change, but not
|
|||
|
binary-compatible (patch by Corentin Delorme).
|
|||
|
+ add FreeBSD port-files, for test-builds.
|
|||
|
+ add --enable-rpath and --disable-rpath-hack options to configure
|
|||
|
script.
|
|||
|
+ deprecate the cdkshlib makefile target; it is not available if either
|
|||
|
--with-libtool or --with-shared is given.
|
|||
|
+ corrected Makefile.in permissions of cdk5-config script, which was
|
|||
|
not executable; this did not affect packages (cf: 2011/05/17).
|
|||
|
+ enable the configure --disable-libtool-version option by defining
|
|||
|
LIBTOOL_VERSION in Makefile.in, so that the soname can be set or left
|
|||
|
to libtool to manage.
|
|||
|
+ add configure options for manipulating linker rpath feature.
|
|||
|
+ improve configure options for curses variants by reusing macro
|
|||
|
from ncurses-examples
|
|||
|
+ add lint rule to makefiles
|
|||
|
+ fix warnings from clang
|
|||
|
+ adapt configure --with-shared option from ncurses.
|
|||
|
+ updated configure script (mostly minor changes for autoheader).
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2012/03/23
|
|||
|
+ use gmtime instead of localtime in a few places so that calendar
|
|||
|
results are not offset by the hour of the day (report/analysis by
|
|||
|
Alex Charis).
|
|||
|
+ add configure option --enable-const, which defines, like
|
|||
|
NCURSES_CONST, the symbol CDK_CONST which can be used to address
|
|||
|
improved const checking while preserving source-compatibility.
|
|||
|
+ revise copyChtypeList to correspond with copyCharList
|
|||
|
+ use const in cdk_util function prototypes, similar "string" uses
|
|||
|
to improve writable-strings warnings. Arrays of strings are not
|
|||
|
addressed due to compatibility.
|
|||
|
+ change document directory to /usr/share/doc
|
|||
|
+ add configure --enable-hdr-subdir to control whether cdk.h should
|
|||
|
be in /usr/include/cdk for example, or in /usr/include. Make the
|
|||
|
default the latter, standard layout.
|
|||
|
+ simplify dpkg script, provide only one library using ncursesw
|
|||
|
+ updated configure script macros, many changes for portability.
|
|||
|
+ add cdk_test.h to installed headers (Debian #500161). Resolution
|
|||
|
of that bug report by the way did not actually install the requested
|
|||
|
header file.
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2012/03/18
|
|||
|
+ provide shlibs file in dpkg scripts.
|
|||
|
|
|||
|
2011/05/17
|
|||
|
+ modify calendar widget to allow applications to override the choice
|
|||
|
of the first day of the week, by setting the "weekBase" member of
|
|||
|
the widget. The calendar_ex example demonstrates this using the
|
|||
|
"-w" option (request by Alex Karev).
|
|||
|
+ modify marquee widget so that changing its box flag will cause the
|
|||
|
widget to be resized, e.g., after 2006/05/07 changes which caused the
|
|||
|
example program to not display properly.
|
|||
|
+ corrected example for cdk_display.3 manpage (patch by Lo<4C>c
|
|||
|
Pefferkorn).
|
|||
|
+ modify install rules to allow package scripts to specify that
|
|||
|
libcdkw's header files go into /usr/include/cdkw, and its *-config
|
|||
|
file is named "cdkw-config".
|
|||
|
+ autoconf'd the actual name for ctags and etags.
|
|||
|
+ modify cdkshlib rule in makefile to eliminate warnings by
|
|||
|
dpkg-shlibdeps.
|
|||
|
+ correct algorithm for leap year in calendar.c (report by Olaf
|
|||
|
Seibert).
|
|||
|
+ minor formatting of changelog to simplify extraction of credits.
|
|||
|
|
|||
|
2011/05/14
|
|||
|
+ add dpkg scripts, for test-builds.
|
|||
|
|
|||
|
2011/05/13
|
|||
|
+ drop cdk.spec, adapt 2-package rules from a Fedora spec file in
|
|||
|
the package subdirectory.
|
|||
|
+ drop mkdirs.sh script, use "mkdir -p".
|
|||
|
+ updated configure script macros, many changes for portability.
|
|||
|
These changes add "--with-pkg-config" and "--disable-libtool-version"
|
|||
|
options.
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2010/11/07
|
|||
|
+ indent using cdk-indent, from
|
|||
|
http://invisible-island.net/cindent/
|
|||
|
|
|||
|
2009/02/15
|
|||
|
+ add KEY_ERROR case to each widget to make vERROR events handled by
|
|||
|
each.
|
|||
|
+ modify scroller_SetPosition() macro to improve scrolling behavior
|
|||
|
(patch by Ricardo Cantu).
|
|||
|
+ add vERROR event type to EExitType enumeration, using this in
|
|||
|
setCdkExitType() and the selection widget to handle errors (patch by
|
|||
|
Ricardo Cantu).
|
|||
|
+ improve manpage descriptions for writeCharAttrib and
|
|||
|
writeChtypeAttrib (report by Knut Schwichten).
|
|||
|
+ add EXTRA_LDFLAGS symbol to makefile rule for creating library,
|
|||
|
in case options are needed (prompted by patch by Timothy Redaelli).
|
|||
|
+ modify matrix.c to allow defining empty column or row titles by
|
|||
|
passing a null pointer in the newCDKMatrix() call. Fix repainting
|
|||
|
of column titles by first erasing the cell (patch by Vincenzo Romano).
|
|||
|
+ regenerate configure script with autoconf 2.52 (patched) to make this
|
|||
|
work in non-POSIX locales (report by Mart St<53><74>r).
|
|||
|
+ updated configure script macros, e.g., to ensure that options are
|
|||
|
appended to $CFLAGS rather than prepended.
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2008/11/05
|
|||
|
+ modify matrix widget so that if title, row-title, column-title or
|
|||
|
box-border are suppressed, the widget will shrink the matrix rather
|
|||
|
than leave those parts blank (request by Vincenzo Romano).
|
|||
|
+ modify matrix_ex example to allow turning off title, column- and
|
|||
|
row-headers using -t, -c and -r options, and changing sense of -S
|
|||
|
option to allow turning off shadows.
|
|||
|
+ fix a limit-check in getcCDKObject(), found with valgrind in
|
|||
|
buttonbox_ex.
|
|||
|
+ apply same limit-check to radio.c as from selection.c
|
|||
|
+ fix a limit-check in selection.c (report by Robin Lee Powell).
|
|||
|
+ add -f/-h options to examples/selection_ex.c to test change to
|
|||
|
label.c
|
|||
|
+ fix a case where focus would be lost on a selection widget if there
|
|||
|
was also a label on the screen, and both were repainted (report
|
|||
|
by Robin Lee Powell).
|
|||
|
+ make CDK build/work with MinGW (patch by Gregory Sharp).
|
|||
|
+ correct setCDKTemplateValue() logic, which caused the source to
|
|||
|
be repeated (report/patch by Christian Gaida).
|
|||
|
+ use prefix makefile-variable in DOCUMENT_DIR expression to allow
|
|||
|
override of prefix at build-time (patch by Saurabh Nix).
|
|||
|
+ increase a buffer size in calendar.c (Debian #452401).
|
|||
|
+ allow widgets to create empty lists, a feature assumed by Harry
|
|||
|
Brueckner's cpm program (reports by Lars Strand, Harry Brueckner).
|
|||
|
+ modify Makefile.in for consistent usage of DESTDIR.
|
|||
|
+ add cdk5-config script to install
|
|||
|
+ updated configure script, e.g., tests for curses libraries.
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2006/05/07
|
|||
|
+ reduce the number of calls on touchwin(), which is used mainly for
|
|||
|
cleanup after moving a window.
|
|||
|
+ improve focus in alphalist.c and fselect.c to ensure that the
|
|||
|
dependent scroll widget highlights data after losing focus to the
|
|||
|
entry widget (report by Harry Brueckner).
|
|||
|
+ add getCDKScrollCurrentItem(), setCDKScrollCurrentItem(),
|
|||
|
getCDKScrollCurrentTop() and setCDKScrollCurrentTop().
|
|||
|
+ add getCDKFselectCurrentItem(), setCDKFselectCurrentItem(), use these
|
|||
|
in fselect_ex.c to illustrate how to modify list displayed by
|
|||
|
the fselect widget.
|
|||
|
+ add getCDKAlphalistCurrentItem(), setCDKAlphalistCurrentItem(), use
|
|||
|
these in alphalist_ex.c to illustrate how to modify list displayed by
|
|||
|
the alphalist widget.
|
|||
|
+ add copyCharList(), copyChtypeList(), lenCharList(), lenChtypeList().
|
|||
|
+ fix misformatted cdk_display manpage, which did not show vINT
|
|||
|
and some other data properly (report by Dominik Douville-Belanger).
|
|||
|
+ split-out cdk_display.c to eliminate repeated logic in entry.c,
|
|||
|
matrix.c and mentry.c, and implement hidden fields for the matrix
|
|||
|
widget.
|
|||
|
+ correct box-height for marquee widget. The box parameter was
|
|||
|
previously ignored; this correction will make some applications no
|
|||
|
longer show a box (report by Michael White).
|
|||
|
+ modify logic for KEY_DC and KEY_BACKSPACE so the former only deletes
|
|||
|
the current character, and the latter only deletes the previous,
|
|||
|
rather than equating them. This affects alphalist, entry, mentry,
|
|||
|
template (request by Harry Brueckner).
|
|||
|
+ suppress conversion of control characters in getcCDKObject() if the
|
|||
|
character is bound to another. This was last changed in 2004/8/24
|
|||
|
(report by Harry Brueckner).
|
|||
|
+ add check in adjustAlphalistCB() in case the list is empty (report by
|
|||
|
Harry Brueckner).
|
|||
|
|
|||
|
2006/02/20
|
|||
|
+ correct makefile dependency so $(MAN_DIR) and $(INCLUDE_DIR) are
|
|||
|
created before headers.sed and manpage.sed, since headers.sh
|
|||
|
relies on the existence of the destination directory (reports
|
|||
|
by Marek Lipovean, Marcelo Goes, also Gentoo #123374).
|
|||
|
|
|||
|
2005/12/30
|
|||
|
+ add some redundant pointer checks, e.g., to entry.c, to avoid core
|
|||
|
dump if one tries building Cdk with NetBSD curses (see lib/32417).
|
|||
|
+ split up traverseCDKScreen() to allow customized flavors of that to
|
|||
|
be written in a calling application using the pieces:
|
|||
|
traverseCDKOnce(), setCDKFocusFirst() (request by Jorgen Lundman).
|
|||
|
+ restore assignment of selectedItem in setCDKRadioCurrentItem() which
|
|||
|
was dropped in 2005/04/24 (report by Fu Steve X).
|
|||
|
+ modify refreshCDKScreen() to ensure that only one widget will have
|
|||
|
focus, i.e., the first which currently has focus, or if none, then
|
|||
|
the first visible one (report by Fu Steve X).
|
|||
|
+ use cleanCDKTemplate() consistently in the template widget, ensuring
|
|||
|
that the editing position is updated, and that the proper length is
|
|||
|
used when clearing memory (report by Fu Steve X).
|
|||
|
+ modify calendar, radio, scroll, selection widgets so the cursor is
|
|||
|
shown at the beginning of the selected item's row for better
|
|||
|
accessibility (report by Fu Steve X).
|
|||
|
+ add null-pointer check in setCDKViewerInfo() in case caller gives
|
|||
|
too-large value for list size (report by Jorgen Lundman).
|
|||
|
+ improve traverseCDKScreen() by updating curobj from the
|
|||
|
getCDKFocusCurrent() function (patch by Jorgen Lundman).
|
|||
|
+ add setCDKFocusCurrent() (patch by Jorgen Lundman).
|
|||
|
+ add configure script option allowing manpage section to be changed
|
|||
|
from "3" to other values such as "3CDK", e.g., for Debian.
|
|||
|
+ modify getCDKRadioItems(), getCDKScrollItems() and
|
|||
|
getCDKSelectionItems() to return just the list-size if the list
|
|||
|
pointer is null.
|
|||
|
+ correct highlighting of selected line in CDKSelection window when
|
|||
|
the window is scrolled left/right (patch by Jorgen Lundman).
|
|||
|
+ various manpage fixes (report by Jorgen Lundman).
|
|||
|
+ change manpages to use ".XX" macro to indicate aliases, to make
|
|||
|
the manpage more readable.
|
|||
|
+ eliminate duplication between cdk_util.3 and cdk_misc.3 manpages
|
|||
|
(dialogs belong in the former, for instance).
|
|||
|
+ modify alphalist, itemlist, radio, selection and swindow to allow
|
|||
|
creating a widget with an empty list (request by Harry Brueckner).
|
|||
|
+ modify mentry.c case for KEY_RIGHT so one can move the cursor past
|
|||
|
the end of the string to add new text (report by Harry Brueckner).
|
|||
|
+ modify cdk_params.c to use strtol() rather than atoi() to allow
|
|||
|
command-line parameters such as -h 0xffff for the slider examples.
|
|||
|
+ modify gen-slider.c to use sprintf/strlen to obtain length of
|
|||
|
formatted integer types since intlen() does not give correct result
|
|||
|
for maximum value of unsigned type. Modify increment/decrement logic
|
|||
|
to take into account unsigned types (report by Keith J Outwater).
|
|||
|
+ modify cli examples to exit with 255 when reporting an error rather
|
|||
|
than a -1 which is generally not portable.
|
|||
|
+ fix several memory leaks exposed by valgrind in the example programs.
|
|||
|
+ add configure --disable-leaks option to look for ncurses' debug
|
|||
|
function _nc_free_and_exit(), using that to help with memory leak
|
|||
|
checking. This uses a new header <cdk_test.h> which will not be
|
|||
|
installed, since it is used only for testing in the build tree.
|
|||
|
> patches by Phuah Yee Keat:
|
|||
|
+ add an IsVisibleObj attribute to all CDK objects so the caller can
|
|||
|
set some object to be invisible, and calling refreshCDKScreen
|
|||
|
after that won't display it again, it enables one to dynamically
|
|||
|
show or hide a particular widget based on user actions.
|
|||
|
Note: this changes alignments in many of the structs from 5.0,
|
|||
|
requiring an ABI bump.
|
|||
|
+ improve string length-computation in entry.c, allowing a 1-char
|
|||
|
field, and also allowing movement past end of text with KEY_END.
|
|||
|
+ add setCDKRadioSelectedItem() and getCDKRadioSelectedItem().
|
|||
|
+ fix some memory leaks by adding cleanCDKObjBindings() into all of
|
|||
|
the _destroyXXX() functions, modify cleanCDKObjBindings() to free
|
|||
|
and null (obj)->bindingList.
|
|||
|
+ fix makefile for installing manpages when building outside of the
|
|||
|
source directory (patch by Mike Castle).
|
|||
|
+ remove obsolete lsm file
|
|||
|
+ review/correct some functions listed in manpages but not implemented,
|
|||
|
and the reverse (report by Rajat Das).
|
|||
|
+ add setCDKMatrixCB() (report by 'zam).
|
|||
|
+ updated configure script (mostly fixes related to CF_XOPEN_SOURCE).
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2005/04/24 - T.E.Dickey <dickey@his.com>
|
|||
|
+ bump major version to 5 (overdue).
|
|||
|
+ add built-in bindings for '<' and '>' to KEY_HOME and KEY_END
|
|||
|
for radio.c, scroll.c, selection.c, swindow.c and viewer.c
|
|||
|
(patch by Thorsten Glaser).
|
|||
|
+ add manpages for some of the non-widget utilities:
|
|||
|
cdk_compat.3, cdk_objs.3, cdk_params.3 and cdk_util.3
|
|||
|
+ correct drawCDKTitle, which did not account for border-size in
|
|||
|
vertical position of titles.
|
|||
|
+ change addCDKScrollPosition() to not set the current item to the
|
|||
|
beginning of the list.
|
|||
|
+ add insertCDKScrollPosition(), to allow insertions before the current
|
|||
|
item.
|
|||
|
+ add a check in scroll.c to prevent overflow if the list is empty.
|
|||
|
+ modify deleteCDKScrollItem() to ensure the current item is on a
|
|||
|
valid position after the deletion.
|
|||
|
+ modify setCDKScrollPosition() to avoid scrolling if the target is
|
|||
|
already on the screen.
|
|||
|
+ make similar simplifications to radio.c and selection.c as in scroll.c
|
|||
|
+ simplify and make consistent bookkeeping in scroll.c using new
|
|||
|
utility functions. As a result, addCDKScrollItem() and
|
|||
|
deleteCDKScrollItem() update the size of the scrollbar toggle (report
|
|||
|
by Fu Steve X).
|
|||
|
+ improve resequence function from 2005/03/23 by preserving attributes
|
|||
|
in the target chtype array.
|
|||
|
+ modify scroll_ex.c, binding 'a', 'i' and 'd' to add, insert and
|
|||
|
delete lines respectively (adapted from example by Fu Steve X).
|
|||
|
+ modify makefile so that cdk_config.h (which is generated by the
|
|||
|
configure script) is not removed by "make clean".
|
|||
|
+ modify makefile to work around limitation of Solaris make program
|
|||
|
which was confused by a header dependency in a "::" line (report by
|
|||
|
Fu Steve X).
|
|||
|
+ modify makefile and scripts for configure --srcdir (adapted from
|
|||
|
patch by Mike Castle).
|
|||
|
|
|||
|
2005/03/23 - T.E.Dickey <dickey@his.com>
|
|||
|
+ modify deleteCDKScrollItem() to resequence numbers (request by Fu
|
|||
|
Steve X).
|
|||
|
+ cleanup memory allocation in scroll.c, make addCDKScrollItem
|
|||
|
reallocate the scroll widget's arrays (report by Fu Steve X).
|
|||
|
|
|||
|
2005/03/08 - T.E.Dickey <dickey@his.com>
|
|||
|
+ correct logic of deleteCDKScrollItem(), which did not preserve the
|
|||
|
final null-pointer at the end of the list (report by Fu Steve X).
|
|||
|
+ add isCDKOBjectBind() to simply check if the given object/key
|
|||
|
combination is bound, rather than invoke the bound function.
|
|||
|
+ modify binding.c so that all of the functions share the same logic
|
|||
|
for mapping the given object to the bindable object, e.g., the entry
|
|||
|
widget for alphalist and fselect composite widgets. In particular,
|
|||
|
checkCDKObjectBind() and getcCDKObject() did not use the same binding
|
|||
|
data.
|
|||
|
+ correct initialization of traverseCDKScreen(), which required two
|
|||
|
tab keypresses to make the first traversal (report by Fu Steve X).
|
|||
|
+ updated configure script checks for _XOPEN_SOURCE, etc.
|
|||
|
+ update config.guess and config.sub
|
|||
|
+ correct prototype shown in manpage for setCDKScroll() (report by
|
|||
|
Stefan Heimann).
|
|||
|
+ correct equivalent expressions in setCDKRadioItems() and
|
|||
|
setCDKSelectionItems().
|
|||
|
+ correct expression in setCDKScrollItems() which caused the updated
|
|||
|
window to shrink by 2 lines (report by Stefan Heimann).
|
|||
|
|
|||
|
2004/12/24 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ correct expression in CDKCalendarField from 2004/08/31 changes, which
|
|||
|
caused it to show only 6 days/week, broken by a fix for
|
|||
|
demos/appointment (reports/patches by Ryan Flannery, Greg Martin).
|
|||
|
|
|||
|
2004/11/07 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ correct top-level Makefile.in to remove libtool's auxiliary files
|
|||
|
in the "make clean" rule.
|
|||
|
+ amend simplification of writeCharAttrib(), ensuring that attributes
|
|||
|
passed in the chtype-string are not ignored (report by Benoit
|
|||
|
Bidoggia).
|
|||
|
|
|||
|
2004/10/04 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ correct logic of writeBlanks(), which did not check for malloc
|
|||
|
failure and made an unnecessary call to freeChar().
|
|||
|
+ simplify draw.c a little by using writeCharAttrib() and
|
|||
|
writeChtypeAttrib() to implement writeChar() and writeChtype().
|
|||
|
+ revert 2002/07/27 change that used waddchnstr() in writeChtype(),
|
|||
|
since it does not render control characters (report by Mike Leib).
|
|||
|
+ fix an infinite loop in viewer.c when displaying control characters
|
|||
|
such as form-feed.
|
|||
|
|
|||
|
2004/08/31 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ add a simple compatibility header (cdk_compat.h), which can be
|
|||
|
put in an application's include-path when compiling old applications
|
|||
|
against new/old Cdk.
|
|||
|
+ updated libtool ABI to 2.0.0 since several items are added to CDKOBJS,
|
|||
|
as well as cleanup of slider- and scale-header templates.
|
|||
|
+ add check for ANSI compiler, needed for example with HPUX 10.20.
|
|||
|
+ ifdef'd out nonfunctional saveData and refreshData methods of entry
|
|||
|
and itemlist widgets.
|
|||
|
+ moved functions for setting background color or attribute into
|
|||
|
CDKOBJS.
|
|||
|
+ moved pre- and post-processing data into CDKOBJS, changing the
|
|||
|
functions that set those per-widget into macros using cdk_objs.c
|
|||
|
+ modify scale and slider widgets to allow the user to directly modify
|
|||
|
the value by typing over it (request by Keith Outwater).
|
|||
|
+ add slider widgets for types float, unsigned.
|
|||
|
+ add scale widgets for types double, unsigned.
|
|||
|
+ add script gen-scale.sh, and templates (e.g., gen-scale.c,
|
|||
|
gen-scale.h) to allow easy generation of scale and slider widgets of
|
|||
|
various types. Use this to replace the existing CDKSCALE, CDKFSCALE,
|
|||
|
CDKSLIDER widgets (discussion with Keith Outwater).
|
|||
|
+ adapt fix from dialog for porting getmaxx(), etc., to systems such
|
|||
|
as HPUX which do not provide these legacy definitions.
|
|||
|
+ remove duplicate vinstall.c from examples directory.
|
|||
|
+ modify install scripting to translate generated names in cdk_config.h
|
|||
|
to add "CDK_" prefix to most, reducing name-pollution. These names
|
|||
|
are used to allow applications to compile against the Cdk header
|
|||
|
files, but are otherwise of no general interest. In particular,
|
|||
|
"PACKAGE" is no longer conflicting (report by Phuah Yee Keat).
|
|||
|
+ add earlyExit member to CDKOBJS, using this to implement a method
|
|||
|
for applications to specify whether the widget's exitType should
|
|||
|
be modified after calling checkCDKObjectBind(), and what value
|
|||
|
(discussion with Bernhard Walle, comparing with NetBSD variation).
|
|||
|
+ correct logic in calendar widget for decrementing day- and
|
|||
|
month-values.
|
|||
|
+ modify treatment of exitType field so it is only set to vESCAPE_HIT
|
|||
|
if an escape character was received. Hide most of the internal
|
|||
|
details of exitType, making it available as an object value (but
|
|||
|
retaining the widget field to ease upgrading old applications).
|
|||
|
+ implement shadow option for newCDKMarquee().
|
|||
|
+ rewrite activateCDKMarquee(), eliminating an infinite-loop bug
|
|||
|
found in traverse_ex.c, as well as making it work properly with and
|
|||
|
without box-outline.
|
|||
|
+ modify deleteCursesWindow() to call eraseCursesWindow(), so that
|
|||
|
deleting an object will also erase it, following the various manpages
|
|||
|
comment about removing the object from the screen (report by
|
|||
|
Mukovoz I.S.).
|
|||
|
+ correct positionCDKObject() for CDKSCREEN's which do not happen to
|
|||
|
be the same size/shape as stdscr.
|
|||
|
+ change layout of menus to account for parent window's origin
|
|||
|
since subwin() since uses absolute screen position (report by "Anna"
|
|||
|
w/o a return address).
|
|||
|
+ correct off-by-one in positionCDKObject() which prevented user from
|
|||
|
reaching the right- and bottom-margins.
|
|||
|
+ fix a few limits on sprintf's involving strings.
|
|||
|
+ eliminate fixed array limit MAX_OBJECT in CDKSCREEN.
|
|||
|
+ use CTRL() macro consistently in preference to CONTROL().
|
|||
|
+ remove delwin(stdscr) from example programs since it is both unneeded
|
|||
|
and nonportable.
|
|||
|
+ use EXIT_SUCCESS and EXIT_FAILURE consistently in example programs.
|
|||
|
+ remove all KEY_xxx symbols which are in X/Open curses from curdefs.h
|
|||
|
+ remove all ACS_xxx symbols from curdefs.h
|
|||
|
+ remove all A_xxx symbols from curdefs.h
|
|||
|
+ add/use isChar() and CharOf() macros to get rid of A_CHARTEXT usage.
|
|||
|
+ fix menus to allow them to scroll if there are too many entries to
|
|||
|
fit on the screen.
|
|||
|
+ collect most uses of touchwin/refresh into new function
|
|||
|
refreshCDKWindow().
|
|||
|
+ clear background of menu windows, in case they are drawn over another
|
|||
|
widget.
|
|||
|
+ correct length of title in menu if more than one is placed on the
|
|||
|
right side of the screen.
|
|||
|
+ add getcCDKBind() function, to which keys can be bound for simple
|
|||
|
translation of the inputs via getcCDKObject(). Use this in
|
|||
|
examples/traverse_ex.c to bind F1 to menu.
|
|||
|
+ eliminate mapChtype() function, since it could conflict with curses'
|
|||
|
definitions. Use the given key value instead, since it is always
|
|||
|
positive.
|
|||
|
+ use KEY_MAX in preference to MAX_BINDINGS symbol.
|
|||
|
+ eliminate internal use of literal backspace, DEL, tab, newline and
|
|||
|
carriage-return constants, etc., by mapping them to KEY_BACKSPACE,
|
|||
|
KEY_DC, KEY_ENTER, etc., in getcCDKObject().
|
|||
|
+ modify examples and demos to read input using getcCDKObject(), to
|
|||
|
solve problems with stdscr refresh overwriting the widgets.
|
|||
|
+ modify matrix.c and menu.c to read input using getcCDKObject(), like
|
|||
|
all of the other widgets.
|
|||
|
+ rewrote examples/traverse_ex.c to use menus to select the left,
|
|||
|
center and right widgets used for demonstrating traversal.
|
|||
|
+ modify traversal to update object focus properly if a menu action
|
|||
|
removes or moves the object associated with the focus.
|
|||
|
+ cleanup menu in traverse.c if escape character is used to cancel it.
|
|||
|
+ move curs_set() calls out of focus/unfocus functions, into traverse.c
|
|||
|
+ remove the SIGBUS/SIGSEGV handler, since it is redundant.
|
|||
|
+ updated configure script, e.g,. macros CF_ADD_CFLAGS,
|
|||
|
CF_CHECK_CACHE, CF_GCC_WARNINGS, CF_NCURSES_LIBS, CF_PROG_EXT,
|
|||
|
CF_WITH_DBMALLOC, CF_WITH_DMALLOC, CF_WITH_LIBTOOL, CF_WITH_WARNINGS,
|
|||
|
CF_X_ATHENA, CF_X_TOOLKIT.
|
|||
|
+ update config.guess, config.sub
|
|||
|
> fixes for fselect.c by ewigg (Ed Wigg):
|
|||
|
+ add a range check to ensure that filename completion at the end of
|
|||
|
the list does not reference past the end of the list.
|
|||
|
+ correct the value returned from filename completion (fixes in
|
|||
|
2002/07/27 mistook an assignment that removed the last character
|
|||
|
of the result - it is actually used to trim the "/", "@" or similar
|
|||
|
character from the displayed filename).
|
|||
|
+ remove an unnecessary if statement.
|
|||
|
> patches by Phuah Yee Keat:
|
|||
|
+ enable focus in mentry.c, radio.c
|
|||
|
+ implement unfocus in entry.c
|
|||
|
+ implement focus/unfocus in mentry.c, template.c
|
|||
|
+ add setCDKRadioCurrentItem() and getCDKRadioCurrentItem().
|
|||
|
+ improve entry.c: When the user types until the last character, do
|
|||
|
not shift the cursor to one character beyond the end of the maximum
|
|||
|
value allowed in the field, that will create an extra '.' that will
|
|||
|
give the user an impression that he can still enter more characters,
|
|||
|
when he actually can't.
|
|||
|
+ fix two core dumps with Solaris curses in scroll.c:
|
|||
|
+ On solaris curses, just pressing the "down" key on a scroll list
|
|||
|
will coredump, on certain sizes of the scroll list. On my
|
|||
|
fullscreen test, it will coredump on any number of items unless if
|
|||
|
the number of items is a multiple of 5. I assume that it's because
|
|||
|
that under certain conditions, the togglePos actually exceeds the
|
|||
|
boundary at the end of the scroll bar. Does not happen in ncurses.
|
|||
|
+ On solaris curses, press 'G' will coredump.
|
|||
|
Does not happen in ncurses.
|
|||
|
+ make wording in COPYING consistent with other fixes from 1999/05/15
|
|||
|
(report by Ahmad Attia).
|
|||
|
|
|||
|
2003/12/10 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ bump version to 4.9.11 (corresponding source from Mike Glover added
|
|||
|
install.sh to tarball; no other source changes were made).
|
|||
|
+ rename "install.sh" to "install-sh" to work around bugs in certain
|
|||
|
make-programs.
|
|||
|
+ allocate marker[] array in calendar dynamically. Reduce
|
|||
|
corresponding array limits to reasonable values.
|
|||
|
+ add getCDKCalendarMarker()
|
|||
|
+ correct seconds in calendar's return value.
|
|||
|
+ eliminate fixed array limits from dialog widget.
|
|||
|
+ eliminate fixed array limits from label widget.
|
|||
|
+ eliminate fixed array limits from selection widget.
|
|||
|
+ eliminate fixed array limits from viewer widget.
|
|||
|
+ eliminate fixed array limits from buttonbox widget.
|
|||
|
+ eliminate fixed array limits from matrix widget. Passing around
|
|||
|
1000x1000 arrays was inefficient, and caused core dumps in the Perl
|
|||
|
binding for this widget.
|
|||
|
+ correct one of the attrbox() calls in drawCDKMatrixCell(), which used
|
|||
|
a left-tee where a right-tee was needed (report by William L Davis).
|
|||
|
+ add setCDKMatrixCells(), redefining setCDKMatrix() as a macro to
|
|||
|
call it.
|
|||
|
+ add cleanCDKMatrixCell().
|
|||
|
+ correct position for right-aligned menus, which was off by one from
|
|||
|
2003/11/30 changes (report/patch by William L Davis).
|
|||
|
|
|||
|
2003/12/01 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ correct logic in char2Chtype() for <#UL>, <#UR> and <#LR>, broken in
|
|||
|
1999/06/05 (report by William L Davis).
|
|||
|
|
|||
|
2003/11/30 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ remove borderSize parameter from alignxy().
|
|||
|
+ modify all widgets to account for borderSize consistently, allowing
|
|||
|
one to display a widget that uses the full screen size (report by
|
|||
|
Phuah Yee Keat <yk.phuah@nestac.com>).
|
|||
|
+ add cdk_params.c, use this to simplify cli programs and add getopt
|
|||
|
processing systematically to the demos and examples.
|
|||
|
+ correct an off-by-one in baseName() that would return the slash
|
|||
|
character in the result.
|
|||
|
+ add setCDKCalendarMonthsNames() and setCDKCalendarDaysNames (patch
|
|||
|
by Stanislaw Bierowka <staszek@pecet.com.pl>).
|
|||
|
+ split-out several files from draw.c since they are wrappers for
|
|||
|
widgets rather than drawing functions. Doing this reduces the
|
|||
|
executable size: get_index.c, get_string.c, popup_dialog.c,
|
|||
|
popup_label.c, select_file.c, view_file.c and view_info.c
|
|||
|
+ eliminate static MAX_LINES limit from graph-widget values.
|
|||
|
+ eliminate static MAX_LINES limit from widget titles.
|
|||
|
+ updated configure script, improved checks for curses functions.
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2003/11/24 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ display a "processing..." message in setCDKViewerInfo while building
|
|||
|
the internal data structures (request by Mike Leib).
|
|||
|
+ modify viewer widget to compute the total number of lines to display,
|
|||
|
making it independent of the listSize parameter.
|
|||
|
+ modify viewer widget to accept a negative listSize parameter,
|
|||
|
making it count the length of list[], ending with a null.
|
|||
|
+ modify viewer_ex, adding -f, -i and -l options. The -f option
|
|||
|
bypasses the fselect widget, specifying the filename directly.
|
|||
|
The -i option tells whether to interpret embedded markup, and
|
|||
|
the -l option tells viewer_ex to load the file using an embedded
|
|||
|
link.
|
|||
|
|
|||
|
2003/11/19 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ modify searches in viewer widget to allow for overlapping partial
|
|||
|
matches, e.g., if the pattern is "00A", it will find the match in
|
|||
|
a line consisting of "000A". Also corrected logic to matches can
|
|||
|
extend to the end of a line.
|
|||
|
+ add 'N' to viewer to implement reverse search.
|
|||
|
+ modify ':' command in viewer to start with current line number
|
|||
|
rather than 0. Also adjust the size of the scale widget to allow
|
|||
|
for very large line numbers, e.g., more than 5 digits.
|
|||
|
+ remove an obsolete limit-check in viewer widget that limited view
|
|||
|
to 4996 lines, fix a few off-by-one indices.
|
|||
|
|
|||
|
2003/11/18 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ correct viewer widget, making it interpret tabs and non-printing
|
|||
|
characters for the non-interpreted file viewer case. The curses
|
|||
|
library cannot display control characters in chtype's.
|
|||
|
+ add cleanCDKViewer().
|
|||
|
+ rename a few .itemCount members to .listSize for consistency.
|
|||
|
+ eliminate static list-size limit MAX_LINES from swindow, viewer
|
|||
|
widgets. Renamed .info, .infoPos, .infoLen to .list, .listPos and
|
|||
|
.listLen members to be consistent with other widgets.
|
|||
|
|
|||
|
2003/11/16 - T.E.Dickey <dickey@his.com>
|
|||
|
========================================
|
|||
|
+ suppress "." from fselect listing, since it was not useful.
|
|||
|
+ eliminate static list-size limit MAX_ITEMS from alphalist, fselect
|
|||
|
itemlist, radio, scroll and selection widgets (request by Mike Leib).
|
|||
|
+ change functions that set line-drawing characters to macros, mapping
|
|||
|
those to method calls in CDKOBJS.
|
|||
|
+ add setCDKEntryBox().
|
|||
|
+ add setCDKMarqueeBox() and getCDKMarqueeBox().
|
|||
|
+ add setCDKMatrixBox() and getCDKMatrixBox().
|
|||
|
+ adjust some title lines to be offset by the borderSize rather than
|
|||
|
a hardcoded "1" (report by Max Mikhanosha).
|
|||
|
+ strip trailing newlines from text read via pipe in execCDKSwindow(),
|
|||
|
lost in original cleanup (report by Max Mikhanosha
|
|||
|
<max@openchat.com>).
|
|||
|
|
|||
|
2003/04/18 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ for variants built with ncursesw and pdcurses, name the libraries
|
|||
|
"-lcdkw" and "-lcdkX" respectively.
|
|||
|
+ add a missing assignment to store the result in _injectCDKFScale()
|
|||
|
(report by Barry Davis <bdavis@eurologic.com>).
|
|||
|
+ fix missing definition of mvwhline(), mvwvline() in pdcurses.
|
|||
|
+ add a .c.i rule in top-level makefile
|
|||
|
+ fix uninstall rule, was missing a line-continuation.
|
|||
|
+ fix several prototypes in manpages which did not match header files
|
|||
|
(reported by Lucas Gonze <lucas@gonze.com>).
|
|||
|
+ fix a few compiler warnings, e.g., by parentheses in
|
|||
|
drawCDKEntryField() and drawCDKMatrixCell().
|
|||
|
+ updates to configure script macros
|
|||
|
+ add --with-ncursesw option.
|
|||
|
+ add --with-XawPlus option.
|
|||
|
+ add --with-curses-dir option.
|
|||
|
+ modify CF_DISABLE_ECHO to make libtool quiet also.
|
|||
|
+ use AC_PROG_PATH to find libtool; show the version which is found.
|
|||
|
+ change sed delimiter to '%' to accommodate AFS.
|
|||
|
+ improve/correct CF_HEADER_PATH, CF_LIBRARY_PATH to cover special
|
|||
|
cases of ncurses/ncursesw configurations.
|
|||
|
+ change ordering of options in CF_ADD_CFLAGS, CF_ADD_CPPFLAGS,
|
|||
|
CF_INCLUDE_DIRS.
|
|||
|
+ workaround gcc 3.x defects in CF_ADD_INCDIR.
|
|||
|
|
|||
|
2002/08/09 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ fix entry, matrix, template, viewer widgets to display 8-bit input
|
|||
|
characters (reported by Bernhard Walle <bernhard@bwalle.de>).
|
|||
|
+ modify manpage install to create links for each function name listed
|
|||
|
in the NAME section.
|
|||
|
+ correct cursor location in dialog's radio-box, which was left on the
|
|||
|
separator line (reported by Peter Farley <pjfarley3@yahoo.com>)
|
|||
|
|
|||
|
2002/07/27 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ several changes to make destroyCDKScreenObjects() and
|
|||
|
destroyCDKScreen() actually work (needed for perlcdk):
|
|||
|
+ record all objects and screens created/destroyed, in cdkscreen.c
|
|||
|
+ reimplement destroyCDKObject() by a function _destroyCDKObject(),
|
|||
|
which first does an erase for the given object, then calls the
|
|||
|
destroy method, and finally frees the object.
|
|||
|
+ add a check in each erase-method to ensure that the object is still
|
|||
|
valid.
|
|||
|
+ add check in setCDKGraphValues() to ensure that X and Y scales are
|
|||
|
nonzero, since they are used as denominators. This makes perlcdk's
|
|||
|
graph example work.
|
|||
|
+ add configure check for curses feature which would allow one to move
|
|||
|
a subwindow, or (in the case of NetBSD curses) at least compile.
|
|||
|
+ add configure check and fallback for addchnstr() to accommodate
|
|||
|
NetBSD's partial implementation of curses.
|
|||
|
+ move version information to VERSION file.
|
|||
|
+ add --with-libtool configure option
|
|||
|
+ make most wgetch() calls use the object's inputWindow via the
|
|||
|
getcCDKObject() function.
|
|||
|
+ improve type-checking and array-limits in cdkscreen.c
|
|||
|
+ remove cdktype member from CDKSCREEN since it is redundant.
|
|||
|
+ eliminate several fixed-buffers with new function writeBlanks().
|
|||
|
+ interpret home/end keys in entry widget.
|
|||
|
+ warn about special keys such as insert which are not recognized in
|
|||
|
alphalist, entry, matrix, mentry, template (it was using the low 8
|
|||
|
bits of those, inserting that).
|
|||
|
+ rewrote/simplified dirName().
|
|||
|
+ rewrote/simplified baseName().
|
|||
|
+ eliminate fixed-size buffers in fselect.c
|
|||
|
+ correct a couple of places where fselect.c freed constant memory.
|
|||
|
+ correct an unterminated string in fselect.c tilde-expansion, and use
|
|||
|
$HOME if no account name is given.
|
|||
|
+ simplified several functions using mvhline(), mvvline() and
|
|||
|
mvaddchnstr().
|
|||
|
+ add vFSCALE as a valid object type in cdkscreen.c
|
|||
|
+ modify moveCursesWindow(), which did not work with ncurses after
|
|||
|
2000/9/15 changes to use mvwin() in preference to directly modifying
|
|||
|
the _begx/_begy members of WINDOW. That made position_ex not work.
|
|||
|
The change was originally for NetBSD's curses implementation which
|
|||
|
does not move derived windows properly anyway.
|
|||
|
+ simplify calls to moveCursesWindow() by moving null-pointer check
|
|||
|
inside that function.
|
|||
|
+ change tab-expansion in char2Chtype() to expand based on the current
|
|||
|
length of the string rather than always to 8 columns.
|
|||
|
+ correct limit-checks in stripWhiteSpace()
|
|||
|
+ interpret back-tab in buttonbox.c and dialog.c inject-methods for
|
|||
|
symmetry with tab.
|
|||
|
+ corrected return-values of button, matrix, scale widgets to match
|
|||
|
documentation as well as to conform with other widgets.
|
|||
|
+ reorganized inject methods (which may return data of different types)
|
|||
|
to return the actual data in an area of the widget, and defined macros
|
|||
|
to preserve source-compatibility.
|
|||
|
+ rewrote initCDKColor() to check if color is available before trying
|
|||
|
to initialize it, and to use the terminal's actual number of colors
|
|||
|
in making color pairs.
|
|||
|
+ use 2-digit fields in bind_ex.c for time, date.
|
|||
|
+ modify matrix.c to add borderSize before the column titles, to
|
|||
|
match the change to box layout.
|
|||
|
+ modify matrix_ex.c to consistently center row-titles. Some were
|
|||
|
centered, some were right- and some left-justified. The change to
|
|||
|
justifyString() produced an odd effect.
|
|||
|
+ add functions
|
|||
|
CDKVersion()
|
|||
|
chtype2String().
|
|||
|
|
|||
|
> patches by Tim Moloney:
|
|||
|
+ added a setCDKxxxBackgroundAttrib() function to all the widgets.
|
|||
|
This function takes a chtype. The setCDKxxxBackgroundColor() still
|
|||
|
exists and converts from a character string to a chtype, but it now
|
|||
|
calls the new function to eliminate duplicate code.
|
|||
|
+ fix minor bugs in marquee_ex and radio1_ex.
|
|||
|
+ fix an off-by-one error in the dialog widget when it is not drawing
|
|||
|
its box. The buttons were displayed one line too high.
|
|||
|
+ add object type to each widget.
|
|||
|
+ correct _drawCDKEntry(), which did not account for whether a box was
|
|||
|
used when computing layout.
|
|||
|
+ change moveCDKButton() from a function to a macro using
|
|||
|
moveCDKObject().
|
|||
|
+ add functions
|
|||
|
popupLabelAttrib()
|
|||
|
setCDKButtonboxButtonAttrib()
|
|||
|
setCDKEntryHighlight()
|
|||
|
|
|||
|
> integrated/adapted changes by Grant Edwards:
|
|||
|
+ make the destroy function in each widget a method in CDKOBJS.
|
|||
|
+ make the inject function in each widget a method in CDKOBJS.
|
|||
|
(this was incomplete, and did not provide for different return-types)
|
|||
|
+ add focus, unfocus, refreshData, saveData methods and supporting
|
|||
|
data to CDKOBJS (not all widgets implement these methods). See
|
|||
|
entry.c, itemlist.c, selection.c for example.
|
|||
|
+ store a borderSize value in CDKOBJS for each widget, which is used to
|
|||
|
reserve space for a box/border around each widget if the Box
|
|||
|
parameter is true when creating the widget. Several related changes
|
|||
|
also made, including modifying the alignxy() interface to add
|
|||
|
a borderSize parameter.
|
|||
|
+ modify justifyString() to not subtract 1 on each side, since that
|
|||
|
is generally assumed to be done to compensate for boxes drawn around
|
|||
|
the text.
|
|||
|
+ change drawCDKItemlistField() to add a highlight parameter.
|
|||
|
+ change the label window to a subwin() in entry.c
|
|||
|
+ hide cursor while in popupLabel() function.
|
|||
|
+ simplified scroll.c, a little.
|
|||
|
+ add files
|
|||
|
button.c
|
|||
|
examples/radio1_ex.c
|
|||
|
examples/traverse_ex.c
|
|||
|
+ added functions:
|
|||
|
destroyCDKScreenObjects()
|
|||
|
getCDKSelectionCurrent()
|
|||
|
setCDKSelectionCurrent()
|
|||
|
getCDKScrollCurrent()
|
|||
|
setCDKScrollCurrent()
|
|||
|
destroyCDKScreenObjects()
|
|||
|
cmpStrChstr()
|
|||
|
chstrncpy()
|
|||
|
+ removed these functions:
|
|||
|
setCDKEntryBox()
|
|||
|
|
|||
|
2002/04/30 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ correct parsing of <I=xx> in char2Chtype() where "xx" contains digits
|
|||
|
(patch by Robert R Landon <rl180001@exchange.DAYTONOH.NCR.com>).
|
|||
|
+ updated cdk.spec for RPM (patch by Vladimir Kondratiev
|
|||
|
<vladimir.kondratiev@intel.com>).
|
|||
|
+ introduce CDKINCLUDES ifdef's so that any of the header files may
|
|||
|
be included separately. Previously only <cdk.h> could be included
|
|||
|
due to interdependencies among the headers.
|
|||
|
+ add some #undef's to cdk.h in case curses.h includes term.h producing
|
|||
|
a symbol conflict (reported by Kenneth Pronovici
|
|||
|
<pronovic@skyjammer.com>).
|
|||
|
+ miscellaneous updates to configure script, including workarounds for
|
|||
|
incompatibilies in autoconf 2.5x.
|
|||
|
|
|||
|
2002/02/25 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ add cdk_process manpage.
|
|||
|
+ remove redundant description of bindCDKObject() from several manpages.
|
|||
|
+ add rcs identifiers to header files.
|
|||
|
+ add ifdef's in each header file for C++, to make the C externs link
|
|||
|
properly without requiring the application to declare them (reported
|
|||
|
in comp.unix.programmer newsgroup by <bigslick_2k@hotmail.com>).
|
|||
|
+ correct typo in template.c introduced in 2000/01/16 substitutions
|
|||
|
to use macro isPlateChar() which made templates not work with
|
|||
|
interspersed punctuation (reported by jiny <jiny@ynmail.com>).
|
|||
|
|
|||
|
2001/12/30 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ remove some redundant wrefresh() calls in various widgets.
|
|||
|
+ correct an uninitialized pointer in cli/cdkalphalist.c
|
|||
|
+ modify cli/samples/alphalist.sh to check for non-empty return from
|
|||
|
the selection rather than hang attempting to find that account.
|
|||
|
+ remove -B option from cli/samples/alphalist.sh since it should have a
|
|||
|
value, but does not.
|
|||
|
+ corrected some display-limits in writeChtype() and
|
|||
|
writeChtypeAttrib().
|
|||
|
+ modify CDKreadFile() to trim newlines from file as read, making it
|
|||
|
more like the original readFile(). This is needed to prevent the
|
|||
|
trailing newlines loaded into label widgets from clearing the rest
|
|||
|
of the line when they are drawn.
|
|||
|
+ add floatized-scale widget (Lutz Mueller <urc8@rz.uni-karlsruhe.de>).
|
|||
|
+ modify headers.sh script to remove gzip'd versions of the manpages
|
|||
|
just in case some were previously installed that way, i.e., by
|
|||
|
hand. The gzip'd version would be found instead of the new install.
|
|||
|
(prompted by a report by Ron Poulton <thok@technologist.com>).
|
|||
|
+ correct typo in uninstall rule for manpages which made
|
|||
|
"make installCDKHeaderFiles" remove the manpages after installing.
|
|||
|
|
|||
|
2001/04/21 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ add an uninstall rule.
|
|||
|
+ move the installed documentation to /usr/local/doc/cdk (it does not
|
|||
|
belong in /usr/local/include/cdk).
|
|||
|
+ modify install rules so that references to header files such as cdk.h
|
|||
|
are transformed to <cdk/cdk.h>, which matches the actual install
|
|||
|
location (reports by Pawel Gajda <pawelg@obop.com.pl>, Carlos Alberto
|
|||
|
Pereira Gomes <capgomes@usa.net> and Ron Poulton
|
|||
|
<thok@technologist.com>, who found that Cdk's menu.h conflicts with
|
|||
|
ncurses' menu.h when building the Perl interface).
|
|||
|
+ correct cli examples' callbacks, which did not return a value.
|
|||
|
+ update config.guess and config.sub
|
|||
|
+ modify CF_CURSES_LIBS to allow build with SunOS 4.x 5lib curses.
|
|||
|
+ split out CF_CURSES_CPPFLAGS from CF_CURSES_LIBS to allow an interim
|
|||
|
check if the curses implementation is really ncurses.
|
|||
|
+ modify some configure script macros to work when the curses header
|
|||
|
file is not <curses.h>, e.g., <ncurses.h>.
|
|||
|
+ modify configure script macros to avoid using changequote(), which
|
|||
|
is broken in the current autoconf alpha versions, e.g., 2.49d.
|
|||
|
+ change configure script macros to use $CPPFLAGS consistently for
|
|||
|
preprocessor options, and $CFLAG for other compiler flags.
|
|||
|
+ modify several configure script macros which checked for $GCC, to
|
|||
|
ensure it is not actually the compiler name versus an existence
|
|||
|
check.
|
|||
|
|
|||
|
2001/01/06 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ reverted part of 1999/6/5 change, allowing callback functions to
|
|||
|
return a value. Note that this makes PROCESSFN and BINDFN use
|
|||
|
the same prototype (report by Ian Eure <ieure@insynq.com>).
|
|||
|
+ SCO OpenServer does not define S_IFSOCK
|
|||
|
|
|||
|
2000/09/23 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ change literal 48's in calendar.c to '0'.
|
|||
|
+ eliminate nonprinting/nonspace characters using macro CTRL().
|
|||
|
+ integrated new examples into makefiles.
|
|||
|
+ use raiseCDKObject_ex.c and lowerCDKObject_ex.c to debug/fix the
|
|||
|
raiseCDKObject() and lowerCDKObject() functions which shared the same
|
|||
|
defect in 4.9.9 (the code did not properly update two objects, but
|
|||
|
modified screenIndex of one twice).
|
|||
|
+ modified cli programs to work with CDKreadFile(), CDKsplitString()
|
|||
|
and CDKcountStrings() since readFile() and splitString() are not
|
|||
|
provided in this version.
|
|||
|
|
|||
|
> reviewed/integrated changes from Mike Glover's 4.9.10 (August 2000):
|
|||
|
+ add examples/raiseCDKObject_ex.c, examples/lowerCDKObject_ex.c
|
|||
|
+ add cli subdirectory
|
|||
|
+ modify itemlist.c to make labels one cell wider.
|
|||
|
+ did not use changes to cdkscreen.c (see 1999/5/15).
|
|||
|
+ did not use casts to unsigned char, since those are incorrect
|
|||
|
(they are casting chtype's which are wider than a char).
|
|||
|
|
|||
|
2000/09/15 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ add/use configure check for some curses functions/macros which use
|
|||
|
internals of the WINDOW struct, which is opaque on NetBSD (patch by
|
|||
|
Simon Burge <simonb@wasabisystems.com>).
|
|||
|
+ update autoconf scripts (config.guess, config.sub, macros
|
|||
|
CF_CURSES_LIBS, CF_UPPER, CF_X_ATHENA) to my 20000819 autoconf patch.
|
|||
|
+ revised man-pages: reorder so that functions are listed
|
|||
|
alphabetically within the NAME, SYNOPSIS, DESCRIPTION sections, the
|
|||
|
prototypes shown only in the SYNOPSIS section (and formatted for
|
|||
|
readability), remove excess wording and convert as needed to use tbl.
|
|||
|
|
|||
|
2000/08/28 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ add cdk_position.3 man page.
|
|||
|
+ rename cdk_cdk.3 to cdk.3
|
|||
|
|
|||
|
2000/08/20 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ remove obsolete comments from manpages telling users to define
|
|||
|
NCURSES for that library. The configure script creates cdk_config.h,
|
|||
|
which has settings as needed.
|
|||
|
|
|||
|
2000/08/20 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ fix some array-overruns in viewer.c if it happens to load a binary
|
|||
|
file.
|
|||
|
+ fix symbol conflict with newkey in waitCDKLabel(), as well as keycode
|
|||
|
truncation in that function.
|
|||
|
|
|||
|
2000/06/28 - T.E.Dickey <dickey@herndon4.his.com>
|
|||
|
=================================================
|
|||
|
+ add RPM spec-file (patch by Wai-Sun Chia <waisun.chia@msa.dec.com>).
|
|||
|
+ add Linux-specific makefile rule for generating a shared library
|
|||
|
(patch by Pawel Gajda <pawelg@obop.com.pl>).
|
|||
|
+ eliminate fixed-length lists assumed in getDirectoryContents() using
|
|||
|
new function CDKgetDirectoryContents().
|
|||
|
+ eliminate fixed-length lists assumed in readFile() using new function
|
|||
|
CDKreadFile().
|
|||
|
+ remove unused substring().
|
|||
|
+ use qsort-wrapper sortList() instead of quickSort().
|
|||
|
+ change configure.in to avoid having configure script check for X
|
|||
|
libraries as a side-effect of adding tests for PDCurses.
|
|||
|
+ updates to configure script macros:
|
|||
|
CF_CURSES_FUNCS, CF_FIND_LIBRARY, CF_HEADER_PATH, CF_LIBRARY_PATH,
|
|||
|
CF_NCURSES_LIBS and CF_XOPEN_CURSES
|
|||
|
+ update config.guess, config.sub
|
|||
|
|
|||
|
2000/04/09 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ modify newwin() call in subwindow_ex.c to account for actual screen
|
|||
|
size rather than assuming 25 lines (reported by Gary Funck
|
|||
|
<gary@Intrepid.Com>).
|
|||
|
+ add CF_X_ATHENA and CF_X_TOOLKIT configure macros for --with-pdcurses
|
|||
|
option, needed if the Xcurses or dependent libraries are static
|
|||
|
rather than shared.
|
|||
|
+ correct typo in configure check for HPUX 11.x (reported by Bjorn
|
|||
|
Helgaas <helgaas@rsn.hp.com>).
|
|||
|
|
|||
|
2000/02/18 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ add case for HPUX 11.x use of cur_colr library (reported by
|
|||
|
Bjorn Helgaas <helgaas@rsn.hp.com>).
|
|||
|
+ add configure option --with-pdcurses, to link with the X11 version
|
|||
|
of PDCurses.
|
|||
|
+ eliminate quoted includes, in favor of bracketed form.
|
|||
|
+ ifdef'd limits.h, moving that into cdk.h with a fallback definition
|
|||
|
for INT_MIN and INT_MAX.
|
|||
|
+ minor fixes for building with SunOS 5lib version: configure check
|
|||
|
for getopt variables, correction to demos/Makefile.in
|
|||
|
|
|||
|
2000/01/17 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ add lib-prefix and executable suffix checks to configure script for
|
|||
|
port to OS/2 EMX.
|
|||
|
+ add configure check for lstat().
|
|||
|
|
|||
|
2000/01/16 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ drop dependency on usleep(), using napms() which is standard with
|
|||
|
SVr4 curses.
|
|||
|
+ rewrote mode2Char(), making it table-driven and splitting out
|
|||
|
mode2Filetype() to make porting simpler, by putting ifdef's for
|
|||
|
S_ISSOCK in one place only.
|
|||
|
+ use new freeCharList() to reduce clutter.
|
|||
|
+ eliminate casts of NULL, to reduce clutter.
|
|||
|
+ change several uses of control characters in source to use CONTROL()
|
|||
|
macro.
|
|||
|
+ correct format of date shown in bind_ex.c
|
|||
|
+ correct nonstandard getcwd() usage in fselect.c
|
|||
|
+ change demo and example makefiles to not strip executables.
|
|||
|
+ modify demo/Makefile.in to work around Solaris' make program which
|
|||
|
does not process ".c" rule as desired.
|
|||
|
|
|||
|
2000/01/08 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ fix compiler warnings with Solaris cc.
|
|||
|
|
|||
|
1999/12/19 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ updated email and url for Mike Glover based on 4.9.9 version dated
|
|||
|
1999/7/29.
|
|||
|
|
|||
|
1999/06/26 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ add configure options --with-dbmalloc and --with-dmalloc to simplify
|
|||
|
testing with those libraries.
|
|||
|
+ correct error in rewrite of char2Chtype which broke repeat-counts.
|
|||
|
|
|||
|
1999/06/05 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ correct reference to uninitialized memory in bindCDKObject()
|
|||
|
+ add/use BINDFN_PROTO macro to simplify maintenance of Perl extension,
|
|||
|
corrected corresponding functions to be typed void.
|
|||
|
+ shorten/simplify mapChtype by making it table-driven.
|
|||
|
+ shorten/simplify char2DisplayType by making it table-driven.
|
|||
|
+ replace splitString() by CDKsplitString() and CDKcountStrings() to
|
|||
|
eliminate buffer-limits.
|
|||
|
+ simplify char2Chtype, eliminate fixed-buffer limits.
|
|||
|
+ prevent recursion in segvTrap.
|
|||
|
|
|||
|
1999/05/29 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ remove bindFunction and bindData arrays from individual widgets
|
|||
|
+ make draw, erase, move methods accessed only via the CDKFUNCS table
|
|||
|
in each widget.
|
|||
|
+ add move method for menu.c
|
|||
|
+ split-out positionCDKObject function from widget code.
|
|||
|
|
|||
|
1999/05/23 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ remove WIN_WIDTH and related macros, use the more common getmaxx,
|
|||
|
and similar macros. Provide fallback definitions for those.
|
|||
|
+ replace log10() call in intlen with simple recursion.
|
|||
|
+ add getendx() and getendy() macros.
|
|||
|
+ add moveCursesWindow().
|
|||
|
+ generate include/cdk_config.h, to simplify ifdef'ing for gcc
|
|||
|
features, and to reduce clutter in the makefiles.
|
|||
|
+ add functions ceilCDK() and floorCDK() to eliminate dependency on
|
|||
|
the math library
|
|||
|
+ simplified, corrected upper-limit checks in alignxy().
|
|||
|
+ change bindings to be dynamically allocated, part of the CDKOBJS
|
|||
|
structure.
|
|||
|
+ correct overlap between title and percentage in drawCDKViewerInfo()
|
|||
|
|
|||
|
1999/05/15 - T.E.Dickey <dickey@clark.net>
|
|||
|
==========================================
|
|||
|
+ revised configure script, using autoconf macros which I've written
|
|||
|
for other programs to check for ncurses configuration.
|
|||
|
+ corrected language of copyrights - Mike Glover's intent to retain
|
|||
|
copyright of CDK is not served by putting a 1990 copyright attributed
|
|||
|
to UC Berkeley.
|
|||
|
+ except for unused parameters, fix gcc compiler warnings.
|
|||
|
+ change prototypes to not use parameter names, since this causes
|
|||
|
namespace pollution.
|
|||
|
+ make functions that do not have public prototypes static.
|
|||
|
+ add missing exit() call in fileview.c, after endCDK() call.
|
|||
|
+ move delwin() calls before endCDK() call in a few other examples.
|
|||
|
+ correct apparent bug in widgets which process a binding (such as
|
|||
|
KEY_DOWN, in the alphalist and fileview.c demos). They set the
|
|||
|
exitType to vESCAPE_HIT rather than the expected vEARLY_EXIT.
|
|||
|
+ ifdef'd out some debug code in scroll_ex.c
|
|||
|
+ correct a loop limit freeing mesg[] array in selection_ex.c
|
|||
|
+ move common object data into new struct CDKOBJS, making cdkscreen.c
|
|||
|
much simpler and extensible.
|
|||
|
+ change erase and draw functions (called from cdkscreen.c) to
|
|||
|
object pointers, so only widgets used are linked, making example
|
|||
|
programs half as big.
|
|||
|
|
|||
|
4.9.7 -> 4.9.8 (December 1998)
|
|||
|
==========================================
|
|||
|
* Changed the way key bindings worked. If the key binding exited
|
|||
|
with a non-zero value then the widget would exit like the user
|
|||
|
pressed the escape key. This provides more control over key
|
|||
|
binding callbacks. Now the bind prototype is:
|
|||
|
int function (EObjectType cdktype, void *object, void *clientData, chtype key);
|
|||
|
* Reversed the order of this file. The most recent first.
|
|||
|
|
|||
|
4.9.6 -> 4.9.7 (December 1998)
|
|||
|
==========================================
|
|||
|
* Went from static Makefiles to autoconf and configure. (finally)
|
|||
|
|
|||
|
4.9.2 -> 4.9.6
|
|||
|
==========================================
|
|||
|
* Once again, it's a complete mystery.
|
|||
|
|
|||
|
4.9.1 -> 4.9.2
|
|||
|
==========================================
|
|||
|
* Changed the activateCDKViewer funtion to be more compliant
|
|||
|
with the rest of the activateCDKXXX functions.
|
|||
|
|
|||
|
4.9.0 -> 4.9.1
|
|||
|
==========================================
|
|||
|
* Added the functions setCDKXXXULChar/URChar/LLChar/LRChar,
|
|||
|
setCDKXXXVerticalChar, setCDKHorizontalChar, and
|
|||
|
setCDKXXXBoxAttribute to each of the widgets but the menu
|
|||
|
widget. These functions allow the programmer to define
|
|||
|
the corner characters of the widget as well as the vertical,
|
|||
|
horizontal, and attributes of the box.
|
|||
|
* Added the function setCDKXXXBackgroundColor. This sets the
|
|||
|
background color of the widget's window.
|
|||
|
* Added makefile for the SGI
|
|||
|
* Created the buttonbox widget.
|
|||
|
* Added in Ctrl-N and Ctrl-P to switch between buttons on the
|
|||
|
dialog box and viewer.
|
|||
|
* Added the functions setCDKRadioItems and setCDKSelectionItems.
|
|||
|
* Added the functions setCDKRadioTitle, setCDKSelectionTitle,
|
|||
|
setCDKScrollTitle.
|
|||
|
|
|||
|
4.8.3 -> 4.9.0
|
|||
|
==========================================
|
|||
|
* Added a parameter to the setCDKViewer function to turn on/off the
|
|||
|
line X of Y in the top left corner.
|
|||
|
* Removed the eraseCDKXXX in each of the drawCDKXXX functions. This
|
|||
|
results in a quicker refresh and less overhead when using the
|
|||
|
widgets. This should make things A LOT faster. (I suppose it's about
|
|||
|
time I had complete faith in curses optimized screen refreshing. :) )
|
|||
|
The side effect is that you might have to change some programs to
|
|||
|
force an eraseCDKXXX/drawCDKXXX when you think the screen is garbled.
|
|||
|
* Added a little bit of logic in char2Chtype when a terminal cannot
|
|||
|
display color, bold will be used instead.
|
|||
|
* Cleaned up the way filename completion works in the file selector.
|
|||
|
You may now type in a path and hit tab and that directory tree
|
|||
|
will be loaded.
|
|||
|
* Added the ability to use the ~ character to refer to a users home
|
|||
|
directory, in the file selector. (like csh variants)
|
|||
|
* Changed the setCDKXXX functions. Made many different setCDKXXX
|
|||
|
functions, one for each item being set. This reduces the overhead
|
|||
|
of all the setCDKXXX functions.
|
|||
|
* Drastically changed cdk.h. Split the widget definitions and
|
|||
|
functions into their own header files. This makes it easier
|
|||
|
to expand CDK.
|
|||
|
* Added the ability to have multiple line titles on most of the widgets.
|
|||
|
* Added the functions setCDKSelectionChoice/getCDKSelectionChoice to
|
|||
|
set/get a single choice value from a selection list.
|
|||
|
* Added the functions setCDKSelectionModes/getCDKSelectionModes to
|
|||
|
set/get the ability to set some items in the selection list as
|
|||
|
editable/uneditable.
|
|||
|
* Added makefile for the DEC Alpha (I forget who sent me this, if
|
|||
|
you want recognition, mail me again)
|
|||
|
* Created a 'visual install' using some of the widgets. Try it.
|
|||
|
(type in make vinstall once the library has been made)
|
|||
|
* Added the ability to set the width of the widget respective to the
|
|||
|
screen size. If you pass in a negative value, the widget will
|
|||
|
adjust to the width of the window the widget sits in minus the
|
|||
|
given value. If zero is given, then the widget will be the full
|
|||
|
width of the window. This removes the need to know how wide the
|
|||
|
window is when the widget is created.
|
|||
|
* Changed the demos and examples makefiles. I was making things too
|
|||
|
difficult. It's simpler and easier to compile these directories.
|
|||
|
* Re-Purified the code. (no leaks, no UMR's, no problem... :) )
|
|||
|
* Quantified the code a bit for those who complained about the
|
|||
|
performance. It has been sped up; I just hope it's enough for
|
|||
|
some of you speed freaks. :)
|
|||
|
* Added the functions get/setCDKTemplateMin. This allows you to
|
|||
|
set the minimum number of characters to type in before the
|
|||
|
widget will accept the typed in value.
|
|||
|
* Changed the documentation to reflect all the changes.
|
|||
|
|
|||
|
4.8.1 -> 4.8.2 -> 4.8.3
|
|||
|
==========================================
|
|||
|
* It's a complete mystery.
|
|||
|
|
|||
|
4.8.0 -> 4.8.1
|
|||
|
==========================================
|
|||
|
* Changed the bind prototype function from
|
|||
|
void function (EObjectType cdktype, void *object, void *clientData);
|
|||
|
to
|
|||
|
void function (EObjectType cdktype, void *object, void *clientData, chtype key);
|
|||
|
* Added scroll bars to the scrolling list, the selection list, and
|
|||
|
the radio list.
|
|||
|
* Modified the template widget so the new character takes on the
|
|||
|
color/attributes of the plate widget.
|
|||
|
* Added the function classes moveCDKXXX and positionCDKXXX.
|
|||
|
* Changed the structure of the makefile and created a single makefile
|
|||
|
for each platform to compile on.
|
|||
|
* Added support for the delete character KEY_DC.
|
|||
|
|
|||
|
4.7.0 -> 4.8.0
|
|||
|
==========================================
|
|||
|
* Fixed bugs documented by Miguel Marques (miguel@apex.cos.yorku.ca)
|
|||
|
in the entry and mentry widgets. The bug displays itself when you
|
|||
|
use vHINT or vINT display types. The vHINT actually showed the
|
|||
|
numbers being typed in (which goes against the hidden element of
|
|||
|
this display type) and in certain cases vINT allowed non-alpha
|
|||
|
characters to be entered.
|
|||
|
* Added compile support for Free BSD.
|
|||
|
* Cleaned up the behavior of the entry field.
|
|||
|
* Cleaned up the behavior of the scrolling list.
|
|||
|
* Cleaned up the behavior of the radio list.
|
|||
|
* Cleaned up the behavior of the selection list.
|
|||
|
* Changed (improved) the behavior of the file selector widget.
|
|||
|
* Made the activateCDKFselect behave like the other widgets.
|
|||
|
* Added injectCDKFselect function.
|
|||
|
* Added the calendar widget.
|
|||
|
* Added the slider widget.
|
|||
|
* Added the alphalist widget on the request of Luigi Rizzo.
|
|||
|
(luigi@ien.unipi.it)
|
|||
|
* Fixed a bug with addCDKScrollItem.
|
|||
|
* Fixed segmentation fault in the rolodex demo.
|
|||
|
* Changed the macros MAX, MIN, and DIFF to MAXIMUM, MINIMUM,
|
|||
|
and DIFFERENCE respectively to avoid conflicts.
|
|||
|
* Fixed errors with the alphalist and fselect widgets.
|
|||
|
* Added the link format comand for the file viewer. This allows
|
|||
|
users to 'hyper-link' text files.
|
|||
|
* Removed the use of CTRL-N.
|
|||
|
* Added the ability to load/save with the scrolling window.
|
|||
|
* Added filename completion to the file selector.
|
|||
|
* Cleaned up massive changes and errors in the documentation.
|
|||
|
* Added 'emacs-like' field editing capabilities to the entry
|
|||
|
and mentry widgets.
|
|||
|
|
|||
|
4.6.1 -> 4.7.0
|
|||
|
==========================================
|
|||
|
* Added injectCDKXXX class of functions. This allows you to inject a
|
|||
|
single character into the widget.
|
|||
|
* Changed the activateCDKXXX to take an array of chtype to send in a
|
|||
|
set of predefined characters. This is very useful for performing
|
|||
|
automated tests of your programs.
|
|||
|
* Added functions setCDKXXXPreProcess and setCDKXXXPosProcess to
|
|||
|
perform actions before and after a character has been hit.
|
|||
|
* Made the use of CTRL-N consistent.
|
|||
|
* Fixed manual page errors.
|
|||
|
* Added the ability to cut text from the entry, mentry, and template
|
|||
|
widgets. (uses a global buffer)
|
|||
|
* Added the ability to copy text from the entry, mentry, and template
|
|||
|
widgets. (uses a global buffer)
|
|||
|
* Added the ability to paste text into the entry, mentry, and template
|
|||
|
widgets. (uses a global buffer)
|
|||
|
* Added the use of the escape key to exit a widget early.
|
|||
|
* Added the functions addCDKScroll/deleteCDKScroll to insert and
|
|||
|
delete items in an active scrolling list.
|
|||
|
* Added a parameter to the menu to specify where the menu windows
|
|||
|
were to be drawn. (top or bottom)
|
|||
|
* Added execCDKSwindow to the swindow function list. This allows the
|
|||
|
user to 'spawn' a command and direct the output to the scrolling
|
|||
|
window.
|
|||
|
|
|||
|
4.6.0 -> 4.6.1
|
|||
|
==========================================
|
|||
|
* Removed the callback function parameter from the entry, mentry,
|
|||
|
matrix, and template widgets. Added in a function setCDKXXXCB.
|
|||
|
The XXX is the name of the widget.
|
|||
|
* Changed the viewer widget functions around. Moved activateCDKViewer
|
|||
|
to setCDKViewer. Moved manageCDKViewer to activateCDKViewer and
|
|||
|
removed the old setCDKViewer.
|
|||
|
* Added in special drawing characters.
|
|||
|
* Added in indent format to indent lines.
|
|||
|
|
|||
|
4.6.0 (January 1996)
|
|||
|
==========================================
|
|||
|
* First pulic release of Cdk.
|
|||
|
|
|||
|
If you want to get a hold of me mail me at one of the following:
|
|||
|
glover@credit.erin.utoronto.ca
|
|||
|
mike@vexus.ca
|
|||
|
|
|||
|
The CDK Web page has several homes. They are:
|
|||
|
http://www.vexus.ca/CDK.html (official)
|
|||
|
http://www.datasoft.on.ca/~cdk (Sponsered by the nice folks at Datasoft)
|
|||
|
|
|||
|
ttfn,
|
|||
|
Mike
|
|||
|
|
|||
|
PS: There is also a Perl5 extension of this library for you Perl5 fans.
|
|||
|
Look under any CPAN site under the directory CPAN/authors/id/GLOVER.
|
|||
|
|
|||
|
-- vile:fk=8bit txtmode
|