Commit Graph

19 Commits

Author SHA1 Message Date
Viktor Szakats
232f180695 2012-07-19 10:23 UTC+0200 Viktor Szakats (harbour syenar.net)
* tests/arrayidx.prg
  * tests/brwpos.prg
  * tests/clasinit.prg
  * tests/clsicast.prg
  * tests/clsscast.prg
  * tests/clsscope.prg
  * tests/codebl.prg
  * tests/codebloc.prg
  * tests/cpinfo.prg
  * tests/db_brows.prg
  * tests/destruct.prg
  * tests/dynobj.prg
  * tests/flink.prg
  * tests/fortest.prg
  * tests/fsplit.prg
  * tests/inherit.prg
  * tests/keywords.prg
  * tests/multiarg.prg
  * tests/newrdd.prg
  * tests/onidle.prg
  * tests/overload.prg
  * tests/rto_get.prg
  * tests/setkeys.prg
  * tests/speedtst.prg
  * tests/stripem.prg
  * tests/tb1.prg
  * tests/testbrw.prg
  * tests/testdbf.prg
  * tests/testhtml.prg
  * tests/testwarn.prg
  * tests/tstblock.prg
  * tests/tstmacro.prg
  * tests/wvtext.prg
    * more cleanups
2012-07-19 08:26:32 +00:00
Przemyslaw Czerpak
1881948236 2010-12-05 12:15 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/cpinfo.prg
    * small modification for non latin CPs having first lower letter before
      upper
    * keep signature for generated CP files as "$Id' + "$" to avoid
      automatic replacing by SVN
2010-12-05 11:15:54 +00:00
Przemyslaw Czerpak
3a71036691 2010-12-05 01:04 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapicdp.h
  * harbour/include/hbcdpreg.h
  * harbour/src/rtl/cdpapi.c
  * harbour/tests/cpinfo.prg
    + added support to define CPs using different letter case sorting
      in human readable form. Now it's possible to use:
         // uppers before lowers: ABCDE...abcde...
         #define HB_CP_CSSORT    HB_CDP_CSSORT_UPLO
         // uppers and lowers are mixed: AaBbCcDdEe....
         #define HB_CP_CSSORT    HB_CDP_CSSORT_MIXED
         // ignore case
         #define HB_CP_CSSORT    HB_CDP_CSSORT_IGNORE
2010-12-05 00:04:47 +00:00
Viktor Szakats
6b758c4f6d 2010-07-25 10:41 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/xhb/hbcompat.ch
    + Added xhb translations for hb_eol() and hb_ps().

  * contrib/make.hbs
    - Deleted SetCancel().

  * src/debug/tbrwtext.prg
  * src/debug/debugger.prg
  * src/rtl/errsys.prg
  * src/rtl/profiler.prg
  * src/rtl/hbini.prg
  * src/rtl/treport.prg
  * src/rtl/tpersist.prg
  * src/rtl/hbi18n2.prg
  * src/rtl/ttextlin.prg
  * src/rtl/teditor.prg
  * src/rdd/usrrdd/rdds/logrdd.prg
  * tests/hbpptest/hbpptest.prg
  * tests/longstr2.prg
  * tests/cdow.prg
  * tests/output.prg
  * tests/dirtest.prg
  * tests/tstdbi.prg
  * tests/speedold.prg
  * tests/dates3.prg
  * tests/set_test.prg
  * tests/rto_get.prg
  * tests/cpinfo.prg
  * tests/speedtst.prg
  * tests/dates.prg
  * tests/set_num.prg
  * tests/rto_tb.prg
  * tests/testhtml.prg
  * tests/round.prg
  * tests/dates2.prg
  * tests/dates4.prg
  * tests/version.prg
  * tests/seconds.prg
  * tests/gtkeys.prg
  * tests/adirtest.prg
  * include/simpleio.ch
  * include/assert.ch
  * contrib/hbct/tests/tab.prg
  * contrib/hbct/tests/expomant.prg
  * contrib/xhb/traceprg.prg
  * contrib/xhb/hblog.prg
  * contrib/xhb/dumpvar.prg
  * contrib/xhb/dbgfx.prg
  * contrib/xhb/xhberr.prg
  * contrib/xhb/cstruct.prg
  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/hbqt_errorsys.prg
  * contrib/hbqt/generator2/hbqtgen2.prg
  * contrib/hbxpp/hbxpp.ch
  * contrib/hbnetio/utils/netiosrv.prg
  * contrib/hbnetio/utils/rpcdemo.hbs
  * contrib/hbnetio/utils/netiocmd.prg
  * contrib/hbpgsql/tests/dbf2pg.prg
  * contrib/hbmisc/tests/readfile.prg
  * contrib/hbmisc/tests/testhbf.prg
  * contrib/hbtip/thtml.prg
  * contrib/hbtip/client.prg
  * contrib/hbwin/tests/testsim.prg
  * contrib/hbwin/tests/testole.prg
  * contrib/hbwin/tests/testsvc.prg
  * contrib/hbssl/tests/bio.prg
  * contrib/hbssl/tests/pem.prg
  * contrib/hbide/ideedit.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/idethemes.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idedocwriter.prg
  * contrib/hbide/hbide.ch
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idehome.prg
  * contrib/hbide/ideshortcuts.prg
  * utils/hbformat/hbformat.prg
  * utils/hbmk2/hbmk2.prg
  * utils/hbi18n/hbi18n.prg
  * utils/hbtest/hbtest.prg
  * examples/hbextern/hbextern.prg
  * examples/uhttpd2/umain.prg
  * examples/guestbk/inifiles.prg
  * examples/guestbk/testcgi.prg
  * examples/httpsrv/uhttpd.prg
  * examples/hscript/hscript.prg
    * hb_osnewline() -> hb_eol()
      (deleting temp variables and temp pp macros used in the past
      to workaround the long typing of the old function name)
    * Some formatting along the way in tests dir.

  * src/rtl/errsys.prg
    - Deleted usage of ISNIL(). It's a quite pointless macro.

  * src/rtl/errsys.prg
  * src/rtl/listbox.prg
  * src/rtl/profiler.prg
  * src/rtl/treport.prg
  * src/rtl/tpersist.prg
  * src/rtl/tgetlist.prg
  * src/rtl/teditor.prg
    % DO CASE -> SWITCH

  * src/rtl/alert.prg
    * Replaced DEFAULT TO with simple NIL check.

  * src/compiler/gencc.c
    * Formatting of generated code.

  * contrib/hbide/ideedit.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/idethemes.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idedocwriter.prg
  * contrib/hbide/hbide.ch
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idehome.prg
  * contrib/hbide/ideshortcuts.prg
    * hb_osPathSeparator() (and static variable) -> hb_ps()
2010-07-25 08:45:50 +00:00
Viktor Szakats
45a114e471 2010-06-03 18:17 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* tests/testsha1.prg
  * tests/longdev.prg
  * tests/clsccast.prg
  * tests/cmphello.prg
  * tests/clsicast.prg
  * tests/testop.prg
  * tests/clsscast.prg
  * tests/objarr.prg
  * tests/rddtest/rddmktst.prg
  * tests/rddtest/adscl52.prg
  * tests/rddtest/adscl53.prg
  * tests/rddtest/ntxcl52.prg
  * tests/rddtest/ntxcl53.prg
  * tests/rddtest/cdxcl52.prg
  * tests/rddtest/rddtst.prg
  * tests/rddtest/cdxcl53.prg
  * tests/transtst.prg
  * tests/output.prg
  * tests/ac_test2.prg
  * tests/clsscope.prg
  * tests/dosshell.prg
  * tests/sbartest.prg
  * tests/speedold.prg
  * tests/sdf_test.prg
  * tests/wcecon.prg
  * tests/debugtst.prg
  * tests/testdyn.c
  * tests/multiarg.prg
  * tests/fornext.prg
  * tests/hbinline.prg
  * tests/foreach2.prg
  * tests/objasign.prg
  * tests/scroll.prg
  * tests/inherit.prg
  * tests/rto_get.prg
  * tests/boxtst2.prg
  * tests/inkeytst.prg
  * tests/overload.prg
  * tests/cpinfo.prg
  * tests/gtwin.prg
  * tests/mt/mttest08.prg
  * tests/mt/mttest09.prg
  * tests/mt/mttest01.prg
  * tests/mt/mttest10.prg
  * tests/mt/mttest02.prg
  * tests/mt/mttest11.prg
  * tests/mt/mttest03.prg
  * tests/mt/mttest12.prg
  * tests/mt/mttest04.prg
  * tests/mt/mttest05.prg
  * tests/mt/mttest06.prg
  * tests/mt/mttest07.prg
  * tests/speedtst.prg
  * tests/testsha2.prg
  * tests/hsxtest.prg
  * tests/arrayidx.prg
  * tests/clsnv.prg
  * tests/rto_tb.prg
  * tests/gtchars.prg
  * tests/disptest.prg
  * tests/funcarr.prg
  * tests/testhtml.prg
  * tests/readhrb.prg
  * tests/tstcolor.prg
  * tests/gtxfnt.prg
  * tests/devtest.prg
  * tests/aliaslck.prg
  * tests/stripem.prg
  * tests/dynobj.prg
  * tests/tb1.prg
  * tests/round.prg
  * tests/longstr.prg
  * tests/testdyn.prg
  * tests/testdyn1.prg
  * tests/delimtst.prg
  * tests/tstdspac.prg
  * tests/version.prg
  * tests/setkeys.prg
  * tests/gtcolors.prg
  * tests/destruct.prg
  * tests/seconds.prg
  * tests/gtkeys.prg
  * tests/usrrdd/exarr.prg
  * doc/en/diskspac.txt
  * doc/en/string.txt
  * doc/en/rdd.txt
  * doc/en/hashes.txt
  * doc/en/hb_apigt.txt
  * doc/en/rddord.txt
  * doc/en/hb_api.txt
  * doc/en/hb_date.txt
  * doc/en/math.txt
  * doc/en/hb_vm.txt
  * doc/en/treport.txt
  * doc/en/terminal.txt
  * doc/en/hb_apiln.txt
  * doc/en/dir.txt
  * doc/en/command.txt
  * doc/en/rddmisc.txt
  * doc/en/errsys.txt
  * doc/en/nation.txt
  * doc/en/var.txt
  * doc/en/dbstrux.txt
  * doc/en/datetime.txt
  * doc/en/memo.txt
  * doc/en/tgetlist.txt
  * doc/en/tlabel.txt
  * doc/en/1stread.txt
  * doc/en/hb_set.txt
  * doc/en/hb_compa.txt
  * doc/en/hb_apier.txt
  * doc/en/hbinet.txt
  * doc/en/hb_macro.txt
  * doc/en/array.txt
  * doc/en/hb_apiit.txt
  * doc/en/rdddb.txt
  * doc/en/dbsdf.txt
  * doc/en/hvm.txt
  * doc/en/input.txt
  * doc/en/dbdelim.txt
  * doc/en/browse.txt
  * doc/en/menu.txt
  * doc/en/hb_apird.txt
  * doc/en/hb_apifs.txt
  * doc/en/file.txt
  * doc/en/lang.txt
  * doc/en/objfunc.txt
  * doc/en/eval.txt
  * doc/en/binnum.txt
  * doc/en/tclass.txt
  * doc/en/misc.txt
  * doc/en/set.txt
  * doc/en/readme.txt
  * doc/man/harbour.1
  * doc/man/hbmk2.1
  * doc/man/hbpp.1
  * doc/man/hbtest.1
  * doc/man/hbrun.1
  * examples/hbextern/hbextern.prg
  * examples/pp/pp.c
  * examples/pp/hbpragma.c
  * examples/pp/hbppcore.c
  * examples/pp/hbppcomp.c
  * examples/pp/hbpptbl.c
  * examples/pp/hbppdef.h
  * examples/superlib/hbsuper.prg
  * examples/hbsqlit2/hbsqlit2.ch
  * examples/misc/mankala.prg
  * examples/misc/guess.prg
  * examples/rddado/adordd.prg
  * examples/rddado/adordd.ch
  * examples/hbapollo/apollo.ch
  * examples/hbapollo/apollo.c
  * examples/hbapollo/apollo1.prg
  * examples/hbdoc2/gentpl.prg
  * examples/hbdoc2/gentxt.prg
  * examples/hbdoc2/tmplates.prg
  * examples/hbdoc2/genxml.prg
  * examples/hbdoc2/genhtml.prg
  * examples/hbdoc2/hbdoc2.prg
  * examples/hbdoc2/hbdoc2.ch
  * examples/guestbk/guestbk.prg
  * examples/httpsrv/uhttpd.ini
  * examples/httpsrv/uhttpd.prg
  * examples/httpsrv/cookie.prg
  * examples/httpsrv/cgifunc.prg
  * examples/httpsrv/session.prg
  * examples/terminal/trm_cli.prg
  * examples/terminal/terminal.prg
  * examples/terminal/trm_srv.prg
  * examples/terminal/trm_app.prg
  * examples/hbbtree/hb_btree.h
  * examples/hbbtree/hb_btree.ch
  * examples/hbbtree/hb_btree.c
  * examples/hbbtree/tbtree.prg
  * examples/hscript/hscript.prg
  * examples/hscript/dir.hs
  * examples/hscript/multiply.hs
  * examples/hscript/ugly.hs
  * examples/hscript/hello.hs
  * examples/gtwvw/hbole.h
  * examples/gtwvw/wvwdraw.c
  * examples/gtwvw/wvwmenu.c
  * examples/gtwvw/gtwvw.c
  * examples/gtwvw/wvwstbar.c
  * examples/gtwvw/wvwcheck.c
  * examples/gtwvw/wvwfuncs.c
  * examples/gtwvw/wvwpush.c
  * examples/gtwvw/wvwedit.c
  * examples/gtwvw/wvwtbar.c
  * examples/gtwvw/hbgtwvw.h
    * Deleted 'www.' from harbour-project.org website name.
      (www.harbour-project.org -> harbour-project.org)
2010-06-03 16:23:36 +00:00
Przemyslaw Czerpak
9ec9384fa5 2010-04-01 16:44 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/gtwin/gtwin.c
  * harbour/src/rtl/gtwvt/gtwvt.h
  * harbour/src/rtl/gtwvt/gtwvt.c
    * modified to use in UNICODE builds current HVM CP if user
      has not set display CP using HB_SETTERMCP() or HB_SETDISPCP()

  * harbour/src/rtl/gtwvt/gtwvt.h
  * harbour/src/rtl/gtwvt/gtwvt.c
    * eliminated most of HB_TCHAR_*() translations
    % optimized setting SelectCopy menu item name to avoid unnecessary
      memory allocation and to use hb_str*() API
    ! allow to set window title before displaying the window
      (HB_GTI_WINTITLE)
    % use hb_str*() API for window title setting
    ! removed redundant window title setting just after creating new window
    ! pass pointer to HB_GTWVT structure as lpParam in CreateWindow()
      function to allow WM_CREATE message processing and early window
      handle registration

  * harbour/tests/cpinfo.prg
    * added HB_SETTERMCP() setting

  * harbour/examples/gtwvw/tests/cbtest1.prg
  * harbour/examples/gtwvw/tests/cbtest6.prg
  * harbour/examples/gtwvw/tests/ebtest7.prg
    * small cleanup to compile with Harbour
2010-04-01 14:44:19 +00:00
Przemyslaw Czerpak
5de455b929 2009-11-14 16:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/cdpapi.c
    * updated to work well with CPs where CHR( 0 ) is not sorted as 1-st
      character

  * harbour/tests/cpinfo.prg
    * chose binary form for CPs where upper and lower letters are sorted
      in different order

  * harbour/src/codepage/cpnl850.c
    * updated to binary form
2009-11-14 15:00:50 +00:00
Przemyslaw Czerpak
4be6249a73 2009-11-14 04:21 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbdefs.h
    * added small hack to eliminate negative handles from 32 bit windows
      builds. Please remember that this trick can work only in 32 bit
      windows version. In 64 bit ones valid handle after casting to integer
      value can give negative 64 bit number so checking for wrong handle
      please compare them with FS_ERROR (-1) instead of using < 0 or sth
      like that. Otherwise your code may not work properly with some new
      windows versions or may even suddenly stop to work with existing
      ones even if they worked for some time without problems.

  * harbour/src/rdd/dbf1.c
    * pacified warning after adding above hack

  * harbour/tests/cpinfo.prg
    ! removed unnecessary EOL reported by Viktor
2009-11-14 03:22:09 +00:00
Przemyslaw Czerpak
aec8ebcb85 2009-11-10 19:31 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcdpreg.h
    * use macro instead of direct value

  * harbour/tests/cpinfo.prg
    + generate .c files with CP definition in human readable form
      when it's can be safely use or with optional binary table when
      it should be verified if such form is acceptable.
2009-11-10 18:32:19 +00:00
Viktor Szakats
83c724ee05 2009-11-10 18:54 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* tests/cpinfo.prg
    + Avoiding memowrit() since it will append a Chr(26) which 
      may cause problems.
2009-11-10 17:54:53 +00:00
Przemyslaw Czerpak
b7a1bda9c0 2009-11-10 18:24 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/cpinfo.prg
  * harbour/include/hbapicdp.h
  * harbour/include/hbcdpreg.h
    * modified format used for CP definition using binary tables
    + added Latin character striping from non Latin based CPs
    * changed warning message to be more clear. In most of cases when
      this message is shown:
         Warning: irregular CP which needs verification for human
                  readable definition in Harbour
      it should be possible to create human non binary CP definition.
      Usually it should be enough to copy HB_CP_UPPER and HB_CP_LOWER
      strings and verify if final result are compatible by comparing
      automatically generated .c file with binary tables. If you will
      find some CPs where it's not compatible then please inform me
      about it and I'll try to update cpinfo.prg
      When this message is shown:
         Warning: irregular CP which needs special definition in Harbour
                  using binary tables generated by this program
      then binary tables have to be used to replicate exact CP conditions.
      If no warning message is shown then human readable form of CP
      definition can be used without (I hope ;)) additional verification.

  * harbour/src/codepage/cpno865.c
  * harbour/src/codepage/cpit850m.c
  * harbour/src/codepage/cpis850.c
  * harbour/src/codepage/cpfr850.c
  * harbour/src/codepage/cpes850c.c
  * harbour/src/codepage/cpsv850m.c
  * harbour/src/codepage/cpde850m.c
  * harbour/src/codepage/cppt860.c
  * harbour/src/codepage/cpnl850m.c
  * harbour/src/codepage/cpnl850.c
  * harbour/src/codepage/cpde850.c
  * harbour/src/codepage/cpfi850.c
  * harbour/src/codepage/cpit850.c
  * harbour/src/codepage/cpis861.c
  * harbour/src/codepage/cpes850m.c
  * harbour/src/codepage/cpfr850m.c
  * harbour/src/codepage/cpsv437c.c
  * harbour/src/codepage/cpdk865.c
  * harbour/src/codepage/cpgr437.c
    * updated for new format
2009-11-10 17:25:29 +00:00
Przemyslaw Czerpak
2db51a6556 2009-11-10 15:03 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/cpinfo.prg
    ! fixed possible infinite loop in character padding procedure
2009-11-10 14:03:36 +00:00
Przemyslaw Czerpak
24e09f396f 2009-11-10 13:34 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/cpinfo.prg
    + added additional information that binary tables generated by cpinfo.prg
      have to be used instead of human readable form when such situation can
      be easy detected

  * harbour/src/codepage/cpsvclip.c
    * replaced old definition with binary tables generated by cpinfo.prg
      to fully replicate wrong Clipper NTXSWE.OBJ definition.
2009-11-10 12:34:49 +00:00
Przemyslaw Czerpak
1585573c61 2009-11-10 11:00 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/cpinfo.prg
    + try to generate HB_CP_UPPER and HB_CP_LOWER strings which are ready to
      use in Harbour CP definition using human readable form.
      Warning: please remember that not all CPs can be created in human
               readable form and if you want to create Clipper compatible
               definition then it should be always verified by comparing .c
               files generated by cpinfo compiled using Clipper and Harbour.
2009-11-10 10:00:28 +00:00
Przemyslaw Czerpak
bebed22350 2009-11-09 21:18 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/ChangeLog
    * marked last TOFIX note as [DONE] - thanks to Mindaugas

  * harbour/src/rtl/cdpapi.c
    * use 1-st upper<->lower conversion pair instead of last one
      if more then one conversion pair exist - it's more natural
      form in most of cases
    % skip translation code when two different CDP modules use
      the same Unicode table

  * harbour/tests/cpinfo.prg
    + detect CPs which have corresponding upper or lower characters
      for non alpha characters and inform about it.
      Such situations is in NTXSPA.OBJ so such CP can be fully
      replicated in Harbour using alternative CP definition only
      which uses static tables.

  * harbour/src/codepage/cpes850c.c
  * harbour/src/codepage/cpesisoc.c
  * harbour/src/codepage/cpeswinc.c
    ! removed the hack with changed order for characters which do not
      have corresponding upper latter.
      Now there is only one difference between ES850C and Clipper NTXSPA.OBJ
      In NTXSPA 'UPPER( Chr( 163 ) )' gives "U" though Chr( 163 ) is not
      marked as letter and not sorted with other letters. For me it looks
      like a bug anyhow if you want to fully replicate NTXSPA.OBJ in Harbour
      then current cpes850c.c code should be replaced by code generated
      using tests/cpinfo.prg compiler by clipper and linked with ntxspa.obj.
      Such code should be generated using:
         cpinfo.exe es850c "Spanish CP-850 (ntxspa.obj compatible)" 850

      Now translations can be done between CPs using different number of
      letters or even defined for different languages so I have question
      to Spanish users: Do you need ESISOC and ESWINC for anything?
      If not then I would like to remove them.
      Similar situation is with HUISOS and HUWINS.

  * harbour/include/hbapicdp.h
  * harbour/src/rtl/cdpapi.c
  * harbour/src/codepage/ucmacce.c
  * harbour/src/codepage/uckoi8.c
  * harbour/src/codepage/uc885910.c
  * harbour/src/codepage/ucmacice.c
  * harbour/src/codepage/uc885914.c
  * harbour/src/codepage/uc874.c
  * harbour/src/codepage/uc857.c
  * harbour/src/codepage/uc1250.c
  * harbour/src/codepage/uc1254.c
  * harbour/src/codepage/uc1258.c
  * harbour/src/codepage/uckoi8u.c
  * harbour/src/codepage/uckam.c
  * harbour/src/codepage/uc424.c
  * harbour/src/codepage/ucmacrom.c
  * harbour/src/codepage/uc862.c
  * harbour/src/codepage/cpesisoc.c
  * harbour/src/codepage/uc866.c
  * harbour/src/codepage/uc8859_3.c
  * harbour/src/codepage/cpes850c.c
  * harbour/src/codepage/uc8859_7.c
  * harbour/src/codepage/ucmacgrk.c
  * harbour/src/codepage/uc037.c
  * harbour/src/codepage/uc850.c
  * harbour/src/codepage/uc885911.c
  * harbour/src/codepage/uc885915.c
  * harbour/src/codepage/uc875.c
  * harbour/src/codepage/uc1251.c
  * harbour/src/codepage/uc1255.c
  * harbour/src/codepage/uc863.c
  * harbour/src/codepage/ucmaz.c
  * harbour/src/codepage/uc1026.c
  * harbour/src/codepage/uc8859_4.c
  * harbour/src/codepage/uc8859_8.c
  * harbour/src/codepage/uc855.c
  * harbour/src/codepage/cpeswinc.c
  * harbour/src/codepage/uc885916.c
  * harbour/src/codepage/ucascii.c
  * harbour/src/codepage/uc1252.c
  * harbour/src/codepage/uc1256.c
  * harbour/src/codepage/ucatari.c
  * harbour/src/codepage/uc860.c
  * harbour/src/codepage/ucmaccyr.c
  * harbour/src/codepage/ucmik.c
  * harbour/src/codepage/uc864.c
  * harbour/src/codepage/uc1006.c
  * harbour/src/codepage/uc1125.c
  * harbour/src/codepage/uc8859_1.c
  * harbour/src/codepage/uc88591b.c
  * harbour/src/codepage/uc8859_5.c
  * harbour/src/codepage/uc8859_9.c
  * harbour/src/codepage/uc852.c
  * harbour/src/codepage/ucnext.c
  * harbour/src/codepage/uc737.c
  * harbour/src/codepage/uc885913.c
  * harbour/src/codepage/ucmactrk.c
  * harbour/src/codepage/uc856.c
  * harbour/src/codepage/uc775.c
  * harbour/src/codepage/uc1253.c
  * harbour/src/codepage/uc1257.c
  * harbour/src/codepage/uc500.c
  * harbour/src/codepage/uc861.c
  * harbour/src/codepage/uc865.c
  * harbour/src/codepage/uc869.c
  * harbour/src/codepage/uc8859_2.c
  * harbour/src/codepage/uc8859_6.c
    % declare Unicode tables with 'const' qualifier
2009-11-09 20:22:48 +00:00
Przemyslaw Czerpak
7ec5d4cc53 2009-11-08 02:43 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/vm/set.c
    ! fixed small typos in returned values (FALSE instead of NULL and 0)

  * harbour/src/vm/estack.c
    * make calling hb_stackTotalItems() safe in MT mode when stack is not
      initialized - now this function can be used to check if HVM stack
      exists and is initialized in ST and MT mode

  * harbour/src/rtl/errintlo.c
    ! fixed at least 4 GPF traps exploited when hb_errInternal() was called
      and HVM stack was not initialized

  * harbour/include/Makefile
  + harbour/include/hbcdpreg.h
  * harbour/include/hbapicdp.h
  * harbour/src/rtl/cdpapi.c
    + added new CDP API which fixes many errors and limitations in old
      implementation.
      Warning !!! some very serious bugs in national sorting have been
                  fixed. It may cause that old indexes using some national
                  sorting will not be compatible. Please rebuild existing
                  indexes.

  * harbour/src/vm/itemapi.c
  * harbour/src/rdd/hsx/hsx.c
  * harbour/src/rdd/dbfntx/dbfntx1.c
  * harbour/src/rdd/dbfnsx/dbfnsx1.c
  * harbour/src/rdd/dbfcdx/dbfcdx1.c
  * harbour/contrib/hbbmcdx/bmdbfcdx.c
  * harbour/contrib/rddads/adsx.c
  * harbour/contrib/rddsql/sqlmix.c
    * updated to work with new CDP API
    TOFIX: update adsx.c and sqlmix.c to use hb_cdpcmp() which resepcts
           sorting with accented and mulitybyts characters.
           Mindaugas, can you update above code?

  * harbour/src/codepage/cpbg866.c
  * harbour/src/codepage/cpbgiso.c
  * harbour/src/codepage/cpbgmik.c
  * harbour/src/codepage/cpbgwin.c
  * harbour/src/codepage/cpcs852.c
  * harbour/src/codepage/cpcsiso.c
  * harbour/src/codepage/cpcskam.c
  * harbour/src/codepage/cpcswin.c
  * harbour/src/codepage/cpde850.c
  * harbour/src/codepage/cpdeiso.c
  * harbour/src/codepage/cpdewin.c
  * harbour/src/codepage/cpel737.c
  * harbour/src/codepage/cpeliso.c
  * harbour/src/codepage/cpelwin.c
  * harbour/src/codepage/cpes850.c
  * harbour/src/codepage/cpes850c.c
  * harbour/src/codepage/cpesiso.c
  * harbour/src/codepage/cpesisoc.c
  * harbour/src/codepage/cpeswin.c
  * harbour/src/codepage/cpeswinc.c
  * harbour/src/codepage/cpeswinm.c
  * harbour/src/codepage/cpfr850.c
  * harbour/src/codepage/cpfriso.c
  * harbour/src/codepage/cpfrwin.c
  * harbour/src/codepage/cphr437.c
  * harbour/src/codepage/cphr852.c
  * harbour/src/codepage/cphrwin.c
  * harbour/src/codepage/cphu852.c
  * harbour/src/codepage/cphu852s.c
  * harbour/src/codepage/cphuiso.c
  * harbour/src/codepage/cphuisos.c
  * harbour/src/codepage/cphuwin.c
  * harbour/src/codepage/cphuwins.c
  * harbour/src/codepage/cpit437.c
  * harbour/src/codepage/cpit850.c
  * harbour/src/codepage/cpitisb.c
  * harbour/src/codepage/cpitiso.c
  * harbour/src/codepage/cpitwin.c
  * harbour/src/codepage/cpltwin.c
  * harbour/src/codepage/cppl852.c
  * harbour/src/codepage/cppliso.c
  * harbour/src/codepage/cpplmaz.c
  * harbour/src/codepage/cpplwin.c
  * harbour/src/codepage/cppt850.c
  * harbour/src/codepage/cpptiso.c
  * harbour/src/codepage/cpro852.c
  * harbour/src/codepage/cproiso.c
  * harbour/src/codepage/cprowin.c
  * harbour/src/codepage/cpru866.c
  * harbour/src/codepage/cpruiso.c
  * harbour/src/codepage/cprukoi.c
  * harbour/src/codepage/cpruwin.c
  * harbour/src/codepage/cpsk852.c
  * harbour/src/codepage/cpskiso.c
  * harbour/src/codepage/cpskkam.c
  * harbour/src/codepage/cpskwin.c
  * harbour/src/codepage/cpsl437.c
  * harbour/src/codepage/cpsl852.c
  * harbour/src/codepage/cpsliso.c
  * harbour/src/codepage/cpslwin.c
  * harbour/src/codepage/cpsrwin.c
  * harbour/src/codepage/cpsv850.c
  * harbour/src/codepage/cpsvclip.c
  * harbour/src/codepage/cpsviso.c
  * harbour/src/codepage/cpsvwin.c
  * harbour/src/codepage/cptr857.c
  * harbour/src/codepage/cptriso.c
  * harbour/src/codepage/cptrwin.c
  * harbour/src/codepage/cpua1125.c
  * harbour/src/codepage/cpua866.c
  * harbour/src/codepage/cpuakoi.c
  * harbour/src/codepage/cpuawin.c
  * harbour/src/codepage/uc037.c
  * harbour/src/codepage/uc1006.c
  * harbour/src/codepage/uc1026.c
  * harbour/src/codepage/uc1125.c
  * harbour/src/codepage/uc1250.c
  * harbour/src/codepage/uc1251.c
  * harbour/src/codepage/uc1252.c
  * harbour/src/codepage/uc1253.c
  * harbour/src/codepage/uc1254.c
  * harbour/src/codepage/uc1255.c
  * harbour/src/codepage/uc1256.c
  * harbour/src/codepage/uc1257.c
  * harbour/src/codepage/uc1258.c
  * harbour/src/codepage/uc424.c
  * harbour/src/codepage/uc500.c
  * harbour/src/codepage/uc737.c
  * harbour/src/codepage/uc775.c
  * harbour/src/codepage/uc850.c
  * harbour/src/codepage/uc852.c
  * harbour/src/codepage/uc855.c
  * harbour/src/codepage/uc856.c
  * harbour/src/codepage/uc857.c
  * harbour/src/codepage/uc860.c
  * harbour/src/codepage/uc861.c
  * harbour/src/codepage/uc862.c
  * harbour/src/codepage/uc863.c
  * harbour/src/codepage/uc864.c
  * harbour/src/codepage/uc865.c
  * harbour/src/codepage/uc866.c
  * harbour/src/codepage/uc869.c
  * harbour/src/codepage/uc874.c
  * harbour/src/codepage/uc875.c
  * harbour/src/codepage/uc885910.c
  * harbour/src/codepage/uc885911.c
  * harbour/src/codepage/uc885913.c
  * harbour/src/codepage/uc885914.c
  * harbour/src/codepage/uc885915.c
  * harbour/src/codepage/uc885916.c
  * harbour/src/codepage/uc88591b.c
  * harbour/src/codepage/uc8859_1.c
  * harbour/src/codepage/uc8859_2.c
  * harbour/src/codepage/uc8859_3.c
  * harbour/src/codepage/uc8859_4.c
  * harbour/src/codepage/uc8859_5.c
  * harbour/src/codepage/uc8859_6.c
  * harbour/src/codepage/uc8859_7.c
  * harbour/src/codepage/uc8859_8.c
  * harbour/src/codepage/uc8859_9.c
  * harbour/src/codepage/ucascii.c
  * harbour/src/codepage/ucatari.c
  * harbour/src/codepage/uckam.c
  * harbour/src/codepage/uckoi8.c
  * harbour/src/codepage/uckoi8u.c
  * harbour/src/codepage/ucmacce.c
  * harbour/src/codepage/ucmaccyr.c
  * harbour/src/codepage/ucmacgrk.c
  * harbour/src/codepage/ucmacice.c
  * harbour/src/codepage/ucmacrom.c
  * harbour/src/codepage/ucmactrk.c
  * harbour/src/codepage/ucmaz.c
  * harbour/src/codepage/ucmik.c
  * harbour/src/codepage/ucnext.c
    * updated for new CP API
    Warning: please test all national CPs. I'm not able to test unknown for
             me national character conditions so it's possible that I made
             something wrong. Additionally current CP API does not have
             some limitations which existed in the old one so now some hacks
             or workarounds can be cleaned. I.e. now all translations are
             done using Unicode tables so it's not necessary to use the
             same number of characters to make them working.
             Updating CP files I've found the following potential problems
             in definitions which I haven't fixed or fixed only partially:

         cpes850c.c - update for new format removing hacks for old CP
                      implementation
         cpesisoc.c  > remove, it's not longer necessary
         cpeswinc.c /
         cpeswinm.c - it is the same as cpesiso.c so it should be removed

         cphu852.c  \
         cphu852s.c  \
         cphuiso.c    > update for new format removing hacks for old CP
         cphuwin.c   /  implementation

         cphuisos.c  > remove, it's not longer necessary
         cphuwins.c /

         cphr437.c  > does it really use CP-437? and ^]\[@~}|{` instead of
         cpsl437.c /  nationalletters or it uses different then 437 CP for
                      7-bit Croatian characters encoding. It's important
                      because without valid unicode table translations will
                      not work.

         cpit437.c  - update for new version if necessary (upper characters)

         cpsv850.c \
         cpsviso.c  > they had ACCENTED_INTERLEAVED but without ACCENTED_EQUAL
         cpsvwin.c /  so this setting was ignored. Now it's not ignored.

         cpsvclip.c - update for new format to be fully not only
                      "almost compatible with Clipper's NTXSWE.OBJ"

      For sure these are not all problems inherited from old CP
      implementation so please verify all existing CPs.

  * harbour/src/codepage/cp_tpl.c
    + added new example for CP definition. Working on new CPs please read
      this description:
         If accented characters need special sorting ( HB_CDP_ACSORT_EQUAL or
         HB_CDP_ACSORT_INTERLEAVE ) then you need to mark the accented
         characters with the symbol '~' before each of them, for example:
            a~_
         If there is two-character sequence, which is considered as one, it
         should be marked with '.' before and after it, for example:
            ... h.ch.i ...
         if such multibyte character has its own Unicode representation then
         this Unicode value can be set using '=' symbol, for example:
            ....h.ch=2A7C.i
         and it will be used in translations.

         The Upper case string and the Lower case string should use the
         same letters. If some characters does not have corresponding upper
         or lower letter then space ' ' can be used as dummy character, for
         example in German CPs there is no upper case 'scharfes S' letter
         so space is used as dummy character.

         HB_CP_LATIN should be 1 if the national alphabet is based on Latin
         otherwise 0

      Please note that now you can use two versions of CP definition.
      The 1-st one which uses human readable form similar to the old CP
      definition and 2-nd which uses directly final CP tables so it
      allows to replicate any conditions which existed in Clipper or
      any other compatible language which uses static tables.
      tests/cpinfo.prg can generate automatically .c files with new CP
      definition in the 2-nd version. Now if user wants to create new
      Harbour CP which is fully Clipper compatible he only has to
      compile and link cpinfo.prg with given national sorting module
      and then execute it with new Harbour CP name as 1-st parameter.
      cp<cpname>.c file is generated which can be added to Harbour
      repository. Optional 2-nd parameter is CP description and 3-rd
      is Harbour Unicode table ID (if not given 437 is used and should
      be updated by user in .c file). This method should definitely
      resolve any problems with creating Clipper compatible CP definition.
      It also allows to easy verify if CP definitions are compatible. It's
      enough to compare generated .c files.

  * harbour/src/codepage/uckam.c
    ! fixed Kamenicky Unicode table definition - it was Mazovia CP :)

  * harbour/src/codepage/cpde850.c
  * harbour/src/codepage/cpdeiso.c
  * harbour/src/codepage/cpdewin.c
    ! fixed CP wrongly encoded CP due to limitations in old CP definition.
      Now it's possible to define different number of upper an lower
      characters (space " " can be used as dummy character) and I used
      it to eliminate hack for 'scharfes S' which does not exists as upper
      case.
      Please clean other CPs which contain similar hacks.

  * harbour/src/codepage/cphu852.c
  * harbour/src/codepage/cphuiso.c
  * harbour/src/codepage/cphuwin.c
  * harbour/src/codepage/cpua866.c
    * removed dummy letters introduced for old translation code

  * harbour/src/rtl/natmsg.c
  * harbour/src/rtl/cdpapi.c
  * harbour/include/hbextern.ch
    + added HB_CDPINFO() function
    * redirected _NATSORTVER() function to HB_CDPINFO()

   To All,
      Please check your national sorting in current version and make
      any updates if necessary or inform me about found problems.
      I've checked that Polish CPs are working fine and all existing
      CPs passes my test program which verified some technical aspects
      of CP implementation. But I cannot verify if this definitions
      satisfy users in different countries.
2009-11-08 01:46:17 +00:00
Przemyslaw Czerpak
5dc55239ba 2009-10-12 00:34 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/debian/copyright
  * harbour/debian/rules
  * harbour/src/common/hbtrace.c
  * harbour/src/rdd/usrrdd/rdds/logrdd.prg
  * harbour/tests/cpinfo.prg
  * harbour/doc/gtapi.txt
  * harbour/doc/en-EN/string.txt
  * harbour/doc/en-EN/license.txt
  * harbour/doc/en-EN/compiler.txt
  * harbour/doc/en-EN/terminal.txt
  * harbour/doc/en-EN/dbstrux.txt
  * harbour/doc/en-EN/idle.txt
  * harbour/doc/en-EN/garbage.txt
  * harbour/doc/en-EN/browse.txt
  * harbour/doc/en-EN/lang.txt
  * harbour/doc/en-EN/misc.txt
  * harbour/doc/windll.txt
  * harbour/doc/whatsnew.txt
  * harbour/COPYING
    * finished some missed source/ -> src/ translations
2009-10-11 22:35:16 +00:00
Przemyslaw Czerpak
c03ae600b4 2009-10-06 14:07 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
+ harbour/tests/cpinfo.prg
    * modified to show more precise information about code page definition
2009-10-06 12:07:20 +00:00
Przemyslaw Czerpak
9851146b11 2009-10-06 11:16 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
+ harbour/tests/cpinfo.prg
    + added  simple program to generate information for Harbour CP module
      definition. Compile it with Clipper and link with given national
      sorting module (usually ntx*.obj) and then execute to generate
      letters strings for given national sorting module. Then use this
      string to define Harbour CP module in source/codepage/ directory.
2009-10-06 09:16:56 +00:00