* include/hbcompat.ch
* include/hbextern.ch
* contrib/libnf/fttext.c
* source/vm/arrayshb.c
+ xhb RASCAN() added to Harbour without HB_COMPAT_XHB
switch, under the name HB_RASCAN().
Translation from RASCAN() is done via hbcompat.ch
! NFLib/FT_FRSEEK() now works in Harbour regardless
of the HB_COMPAT switches.
* harbour/contrib/libnf/at2.prg
* harbour/contrib/libnf/min2dhm.prg
* harbour/contrib/libnf/ontick.c
* harbour/contrib/libnf/sqzn.prg
* harbour/contrib/libnf/bytexor.prg
* harbour/contrib/libnf/asum.prg
* harbour/contrib/libnf/sleep.prg
* harbour/contrib/libnf/any2any.prg
* harbour/contrib/libnf/origin.c
* harbour/contrib/libnf/mouse.c
* harbour/contrib/libnf/stod.c
* harbour/contrib/libnf/vertmenu.prg
* harbour/contrib/libnf/aredit.prg
* harbour/contrib/libnf/n2color.c
* harbour/contrib/libnf/xbox.prg
* harbour/contrib/libnf/hex2dec.prg
* harbour/contrib/libnf/getver.c
* harbour/contrib/libnf/Makefile
* harbour/contrib/libnf/invclr.prg
* harbour/contrib/libnf/popadder.prg
* harbour/contrib/libnf/d2e.prg
* harbour/contrib/libnf/anomatch.prg
* harbour/contrib/libnf/color2n.c
* harbour/contrib/libnf/datecnfg.prg
* harbour/contrib/libnf/easter.prg
* harbour/contrib/libnf/ntow.prg
* harbour/contrib/libnf/floptst.prg
* harbour/contrib/libnf/pchr.prg
* harbour/contrib/libnf/tbwhile.prg
* harbour/contrib/libnf/e2d.prg
* harbour/contrib/libnf/sysmem.prg
* harbour/contrib/libnf/dfile.prg
* harbour/contrib/libnf/clrsel.prg
+ harbour/contrib/libnf/fttext.c
+ harbour/contrib/libnf/putkey.c
* basic cleanup and syncing with some of xHarbour fixes and extensions.
I'd like to ask Windows users to update non GNU make file
* harbour/source/pp/ppcore.c
+ added support for .T., .F., .Y., .N. in PP and #IF ... / #ELIF ...
expressions. It was reported by Nick Van Dyck on xHarbour devel list
that old PP supported it. I haven't known that old PP suported .T.
and .F. in #IF directive. Please not that there are other diferences
between new PP and the old one in expresions which can be used in
#IF ... / #ELIF directives. New PP supports C like expressions with
support for pseudo functions like defined(), operates on integer
numbers only to not damage 64bit values during conversion to double
and keep C compatible results (the old one used double values) and
is much more restrictive in checking for valid expression.
* harbour/contrib/libct/screen2.c
+ added SCREENSTR(), STRSCREEN()
* harbour/contrib/libct/keyset.c
* casting to fix warnings in DOS builds
* harbour/source/rtl/seconds.c
* update timezone in BSD systems when clock is stored in UTC
* harbour/include/hbexprb.c
* disable CTOD("") optimization when -kc switch is used
* harbour/source/macro/macro.yyc
* harbour/source/macro/macro.y
* fixed typo reported by Mindaugas
* harbour/source/vm/classes.c
* fixed typo reported by Lost
* harbour/include/hbcompat.ch
+ added #xtranslate ISPOINTER( <xValue> )
* simplified bit operator translations
* harbour/include/hbapi.h
+ added #define hb_itemPutCStatic(...) hb_itemPutCConst(...)
* harbour/include/hbapiitm.h
- removed #define hb_retclenAdoptRaw(...) hb_retclen_buffer(...)
it's not _exactly_ the same and in some cases it cannot be
replaced so users should know what exactly they are doing
* harbour/source/rtl/gttrm/gttrm.c
+ added some #ifdef OS_UNIX_COMPATIBLE for future non *nix ports
* harbour/source/rdd/dbf1.c
! added RT error when someone tires to create DBF with more then
2046 fields - without it corrupted files were created or GPF
appeared
* harbour/contrib/ole2/w32ole.c
* changed hb_retclenAdoptRaw() to hb_retclen_buffer()
* harbour/source/rtl/gttrm/gttrm.c
* removed old XTerm (XFree 3.x.x) key sequences which are used in
current XTerm implementation as for keys with modifiers
* harbour/source/rtl/gtcrs/gtcrs.c
* added protection against misleading mouse wheel and mouse drag
events
* harbour/source/rtl/gttrm/gttrm.c
* added protection against misleading mouse wheel and mouse drag
events
* enable XTERM like mouse reporting also for Linux terminal - it's
possible with external mouse driver
* added some CTRL+Fx escape sequences XTERM and gnome-terminal
compatible
* disabled some escape sequences mapped to simple cursor keys
which are used as CTRL+[cursor key] in recent XTerm versions
* harbour/source/rtl/gtchrmap.c
* indenting
* harbour/source/rtl/gttrm/gttrm.c
* added some key sequences I used in patch for PuTTY/PTerm
CTRL+{INS,DEL,HOME,END,PGUP,PGDN} - they are gnome-terminal
compatible
* harbour/include/hbgtcore.h
+ added translation for HB_GT_trm
* harbour/source/rtl/gttrm/gttrm.c
+ map some Linux key codes also in XTerm - they will be usable
in terminals like PuTTY/PTerm
* harbour/source/rtl/gtstd/gtstd.c
* harbour/source/rtl/gtpca/gtpca.c
+ changed the order of checking HB_WIN32_IO and OS_UNIX_COMPATIBLE
macros for CYGWIN compilation
* common.mak
* source/codepage/Makefile
+ source/codepage/cpsv850.c
+ source/codepage/cpsvclip.c
+ source/codepage/cpsvwin.c
+ Added Swedish codapages from xHarbour.
; The codepages are now synced.
* common.mak
* source/codepage/Makefile
+ source/codepage/cpsk852.c
+ source/codepage/cpskiso.c
+ source/codepage/cpskwin.c
+ source/codepage/cpskkam.c
+ Added Slovak codepages. Pls. test them if you are
familiar with the language rules.
* harbour/include/hb_io.h
+ added #include <dos.h> for DOS builds
* harbour/source/rtl/gttone.c
+ #include <conio.h> for WATCOM builds
* harbour/config/w32/watcom.cf
* cleanup
+ harbour/config/w32/owatcom.cf
+ added OpenWatcom support
* harbour/contrib/libct/files.c
* rewritten FILESEEK(), FILESIZE(), FILEATTR(), FILETIME(), FILEDATE()
now they should work on all supported platforms
+ added FILESMAX() for POSIX systems
* added FILEDELETE() - It's Phil Krylov code from xHarbour modified
to be MT safe
* indenting, cleanup and some minor fixes
* harbour/source/rtl/gttrm/gttrm.c
* added protection against corrupted by programmer screen buffer
* harbour/source/rtl/hbgtcore.c
* extended hb_gtColorToN() to recognize also "I", "N", "U" and
numeric NN/NN attributes
* harbour/contrib/libct/ftoc.c
* cleanup
* harbour/contrib/libct/Makefile
* harbour/contrib/libct/makefile.bc
* harbour/contrib/libct/makefile.vc
- harbour/contrib/libct/color.prg
- harbour/contrib/libct/invrtwin.prg
+ harbour/contrib/libct/color.c
* rewritten INVERTATTR(), INVERTWIN(), COLORTON(), NTOCOLOR(),
ENHANCED(), STANDARD(), UNSELECTED() in C code. Now COLORTON()
and NTOCOLOR() use GT functions for color translations.
! fixed INVERTATTR() to not change blink and highlight attributes
! fixed INVERTWIN() to work with GT divers which do not use VGA
compatible screen buffer
* harbour/source/compiler/hbusage.c
* added to credits list some Harbour developers which were missing
and also some xHarbour developers which are authors of modules
we borrowed and ported to xHarbour. It's highly possible that
still some people are missing. If you fill that you or someone
else should be added to this list then please send a message
to harbour devel list
* harbour/source/compiler/gencobj.c
+ added support for environment variable substitution in harbour.cfg
file, envvar should be given as $(<name>) f.e.: $(HB_INC_INSTALL)
* harbour/include/hbcompdf.h
* harbour/source/compiler/harbour.yyc
* harbour/source/compiler/harbour.y
! fixed using LOOP inside SWITCH/CASE.../END statement
! fixed possible memory leeks when compile time error appear
with some unfinished LOOP statements
! do not push unnecessary NIL on HVM stack when SWITCH/CASE.../END
statement were used without OTHERWISE clause
* harbour/source/pp/ppcore.c
! do not calculate last line when it does not contain any character
* clear line number counter after preprocessing standard definitions/
rules - I hope it will make David happy ;-)
* harbour/source/vm/classes.c
! fixed typo in adding messages with HB_OO_MSG_PROPERTY flag
! fixed __clsDelMsg() to be safe with later dictionary resizing
* harbour/source/macro/macro.yyc
* harbour/source/macro/macro.y
* harbour/source/macro/macrolex.c
! allow to use 'FIELD' and '_FIELD' as variable/function/field name.
* allow to use 'IF' and 'IIF' as variable/field name.
* harbour/common.mak
* harbour/source/rtl/Makefile
+ harbour/source/rtl/hbhex.c
* added HB_HEXTONUM() and HB_NUMTOHEX()
* harbour/include/hbcompat.ch
* added trnaslation rules for expresions in parentheses which use
new xHarbour operators: HAS, IN, LIKE, &, |, ^^, >>, <<
Please note that only code which uses above operators in parentheses
will be translated, f.e. this code will not be translated:
if cVal1 IN cVal2
nVal := nVal1 | nVal2 | nVal3 | nVal4
endif
will not be translated but this one will:
if ( cVal1 IN cVal2 )
nVal := ( nVal1 | nVal2 | nVal3 | nVal4 )
endif
* harbour/contrib/tip/thtml.prg
* harbour/contrib/tip/thtml.ch
+ added $\Id
* harbour/source/rtl/hbbit.c
+ added $\Id
! fixed typo in HB_BITSHIFT()
* harbour/source/rtl/cdpapi.c
! fixed possible GPF and some other problems in HB_TRANSLATE()
* harbour/source/rtl/dateshb.c
* harbour/source/rtl/datesx.c
* harbour/source/common/hbdate.c
* make STOD() exact Clipper compatible
* harbour/source/rtl/gttrm/gttrm.c
* restore default color on exit
* harbour/source/rdd/dbf1.c
* cleaned few warnings
* harbour/make_tgz.sh
* harbour/make_gnu.sh
* if HB_WITHOUT_GTSLN not set then check if slang.h exists
in one of known locations and set HB_WITHOUT_GTSLN automatically
* harbour/common.mak
! removed double quotas from files extension definitions
Neither Borland make nor NMake can accept them, sorry my
fault but I used to work with GNU make
* harbour/makefile.vc
- removed recently added by J. Lefebvre Mafact alternative verion
of file extnesions. Thank you for your help but it was my mistake
and the default definitions in common.mak should not use quotas
* harbour/source/rtl/datesx.c
* harbour/source/common/hbdate.c
* accept date strings longer then 8 characters in STOD() just like
in CT3
* changed casting in date decoding code to be strict Clipper compatible
and cover date string validation by HB_C52_STRICT macro.
Now STOD() can give _EXACTLY_ the same results as Clipper for wrong
date strings if you disable code covered by #ifndef HB_C52_STRICT
in hb_dateStrGet(). It fixes errors reported by hbtest in:
stod("19 90905") -> "17490905"
stod("199 0905") -> "19740905"
but I do not know if you want to have it as default.
* harbour/source/rtl/gtsln/gtsln.c
! fixed variable declaration to be ANSI C compatible
* harbour/source/rtl/hbgtcore.c
* harbour/source/rtl/gtdos/gtdos.c
* harbour/source/rtl/gtwin/gtwin.c
* harbour/source/rtl/gtxwc/gtxwc.c
* harbour/source/rtl/gtcrs/gtcrs.c
* harbour/source/rtl/gtstd/gtstd.c
* harbour/source/rtl/gtsln/gtsln.c
* harbour/source/rtl/gttrm/gttrm.c
* harbour/source/rtl/gtpca/gtpca.c
* harbour/source/rtl/gtcgi/gtcgi.c
* added support for CP translation in OUTSTD()/OUTERR() when
they are not redirected to console
* harbour/bin/hb-func.sh
* harbour/harbour.spec
* added description for -L<path> in hb* scripts
* harbour/include/hbapicls.h
* harbour/source/vm/classes.c
* changed hb_objSendMsg() and hb_objSendMessage() to return
hb_stackReturnItem() - xHarbour users asked about it. It does
not change binary compatibility with existing code.
* harbour/common.mak
* replaced some hard coded values like file extensions with variables
for future use on other platforms
* harbour/contrib/mysql/mysql.c
* changed code to not use non standard function filelength()
and optimized
* harbour/source/compiler/cmdcheck.c
* recognize --version on platforms where '-' is option separator
* harbour/source/compiler/hbusage.c
* changed syntax description from:
Syntax: harbour <file[s][.prg]> [options]
to:
Syntax: harbour <file[s][.prg]|@file> [options]
* harbour/source/rtl/gttrm/gttrm.c
* use ECMA-48 compatible sequence to disable bold intensity also
on Linux terminals (one byte longer but will work also in some
non Linux terminals which do not emulate it well)
* use STDIN handle for full screen output when STDOUT redirected
to non terminal device, f.e. file.
* harbour/include/hbgtcore.h
* harbour/source/rtl/gtchrmap.c
* harbour/source/rtl/gtcrs/gtcrs.c
* harbour/source/rtl/gttrm/gttrm.c
+ added 3-rd parameter BOOL fSetACSC to hb_gt_chrmapinit() function
* initialize ACSC translation for XTERM like terminals when
hb_charmap.def file cannot be found or there is no valid
section for used terminal
+ harbour/tests/gtchars.prg
+ harbour/tests/gtcolors.prg
+ harbour/tests/gtkeys.prg
+ added test ptograms for GT drivers to test all character output and
automatic CP translation, colors settings and keyboard/mouse input