Commit Graph

1166 Commits

Author SHA1 Message Date
Pritpal Bedi
c04afe2af3 2008-06-11 12:30 UTC+0800 Pritpal Bedi (pritpal@vouchcac.com
* harbour/source/rtl/gtwvt/gtwvt.c
   * harbour/source/rtl/gtwvt/gtwvt.h
   * harbour/include/hbgtinfo.ch
     + Added HB_GTI_CLOSABLE
       Hb_GtInfo( HB_GTI_CLOSABLE, TRUE|FALSE ) -> lPrevState
       TRUE enables the "X" button, FALSE disbles it.
     + Added functionality to respond to WM_CLOSE message. 
       If application returns 1 then application is exited.
    
   * harbour/tests/wvtext.prg
     + Added functionality to demonstrate above feature.
2008-06-11 19:35:37 +00:00
Viktor Szakats
0a4b1fcdb6 2008-06-11 19:19 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbgtinfo.ch
   * source/rtl/gtwvt/gtwvt.c
     ! Fixed stupid typo from me. This is why maximized size 
       didn't want to get right.
     ! Fixed to not reposition non-maximized windows while 
       resizing them and their top/left corner was off screen.
     ! Fixed to not allow font screen below a certain limit 
       (3x4 pixels). This fixes some of the more obvious cases 
       when window gets trashed.
     ! Fixed to not resize the windows when toggling the 
       resizing feature using HB_GTI_RESIZABLE.
     + Added to disable maximize icon after maximizing and 
       reenable it on the first resize attempt.
     - Removed TIMER related stuff as it's very difficult 
       (or impossible) to support on other platforms.
       Timer support could be added to hbw32.lib, though.
     * Some cleanups.
     ; Remaining TOFIXes:
       - Window trashing when settling on a size which 
         cannot be properly filled with the console. Try with 
         vertically or horizontally narrow window shapes.
       - Mark&Copy is still trashing when swapping directions 
         with the selection compared to the starting position.

   * tests/wvtext.prg
     ! Added missing SVN keywords properties.
     ! Added missing SVN eol property.
     ! Fixed to use the default font to have a more common 
       ground for testing.
     + Added markers to the corners to easily spot chopped 
       borders.

   * contrib/xhb/Makefile
   * contrib/xhb/common.mak
     - Removed some xhb specific non-standard headers from 
       the list of those getting installed to the Harbour central 
       include dir. Only hbcompat.ch, hbcompat.h and xhb.ch 
       goes now to the official include dir. After this change 
       has been merged with RC1, xhb.lib may be included in 
       the default build.
       [TOMERGE RC1]

   * contrib/hbw32/tests/testdll.prg
     + Added some more DLL calling samples.
2008-06-11 17:39:35 +00:00
Viktor Szakats
a5ac639119 2008-06-09 07:36 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/wvtext.prg
   * include/hbgtinfo.ch
   * include/hbgtcore.h
   * source/rtl/hbgtcore.c
   * source/rtl/gtwvt/gtwvt.c
     * Changed the way notifications work. It's now platform 
       neutral and more simple.
       hb_gtInfo( HB_GTI_NOTIFIERBLOCK, {|nEvent, ...| myhandler( nEvent, mycustomdata, ... ) })
       may be used to set it. Use NIL to disable it. The purpose of 
       this is to be able to get notifications from GT related
       user interactions not initiated inside the apps UI world.
       F.e. to save screen size after the user has changed it, 
       or to have a last chance to commit tables, set flags, etc 
       when user (or OS) closed the app window.
     + Added basic support to handle return values from notifier.
     ! Added missing SVN header to wvtext.prg
     ; TOFIX: New TIMER stuff in GTWVT should be replace by 
              a platform neutral solution, which is probably MT.
              (see also "background events")
     ; TOFIX: Is there a way to force "non-full content" resize 
              on the window level? This way we could avoid 
              current trashing while resizing.
2008-06-09 06:07:59 +00:00
Viktor Szakats
c6e89d45a8 2008-06-09 06:25 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/wvtext.prg
   * include/hbgtinfo.ch
   * include/hbgtcore.h
   * source/rtl/gtwvt/gtwvt.h
   * source/rtl/gtwvt/gtwvt.c
     ! Fixed a few warnings.
     ! Fixed bad selection behaviour when starting the 
       selection (to not let it "stick" to the upper left corned).
     - Removed predefined symbols as a way to control GT 
       behaviour.
     * HB_GTI_MARKCOPY -> HB_GTI_SELECTCOPY to use more generic 
       terminology.
     * HB_GTI_RESIZEABLE -> HB_GTI_RESIZABLE
2008-06-09 04:39:36 +00:00
Pritpal Bedi
22169dced0 2008-06-08 20:12 UTC+0800 Pritpal Bedi (pritpal@vouchcac.com
* harbour/source/rtl/gtwvt/gtwvt.c
     * More fixes on resizing. Now appears to be behaving correctly. Please test.

   * harbour/tests/wvtext.pr
     * Formatting and typos.
2008-06-09 03:15:08 +00:00
Pritpal Bedi
6c50fbe3a3 2008-06-08 16:03 UTC+0800 Pritpal Bedi (pritpal@vouchcac.com
* harbour/source/rtl/gtwvt/gtwvt.c
   * harbour/source/rtl/gtwvt/gtwvt.h
   * harbour/source/rtl/hbgtcore.c
   * harbour/include/hbgtinfo.ch
     + HB_GTI_MARKCOPY
       Added feature to toggle "Mark and Copy" Sysmenu option with:
          Hb_GtInfo( HB_GTI_MARKCOPY, TRUE|FALSE ) -> lPrevState

       Removed necessity to have Hb_NoCopyConsole() to not include it.
       Now appln always HAS this SysMenu option. 

     + HB_GTI_RESIZEABLE
       Added feature to toggle resizing of appln window as:
          Hb_GtInfo( HB_GTI_RESIZEABLE, TRUE|FALSE ) -> lPrevState

       Function Hb_NoResizeableWindow() still hold good for startup.
       You always can activate/deactivate this feature from within appln.

       Few more optimizations while resizing, still work in progress.  
       
   * harbour/tests/wvtext.prg
     * Updated to demonstrate above functionality.
2008-06-08 23:14:43 +00:00
Pritpal Bedi
664df2ff4f 2008-06-08 08:57 UTC+0800 Pritpal Bedi (pritpal@vouchcac.com
* harbour/source/rtl/gtwvt/gtwvt.c
     + Added functionality to disable "Mark and Copy" prompt in the SysMenu.
       Include Function Hb_NoCopyConsole() if you do not want this functionality.

     + Added funtionality to resize the console window with mouse operations.
       /*
          Resizing of console is enabled by default. 
          To supress this behavior include a dummy function Hb_NoResizableWindow()

          Resizing is available in both directions. I mean horizontal as well as verticle.
          Maximize button is also enabled. Click it to see to your surprize that now
          console window will provide you DOS like terminal.

          However there is a bug in maximized operation, last row does not show up correct.
          I feel it belongs to some miscalculation, but what that is I am unable to locate, so far.
          Please experiment.
       */
   * harbour/tests/wvtext.prg
     * Updated to new HB_GT*_ constants and new functionality.
2008-06-08 15:58:32 +00:00
Pritpal Bedi
1e9b0b7f3e 2008-06-06 20:45 UTC+0800 Pritpal Bedi (pritpal@vouchcac.com)
* harbour/source/rtl/hbgtcore.c
   * harbour/include/hbgtcore.h
   * harbour/include/hbgtinfo.ch
   * harbour/source/rtl/gtwvt/gtwvt.c
   * harbour/source/rtl/gtwvt/gtwvt.h
     + Added building blocks for CallBacks to be set with Hb_GtInfo( GTI_* ).
   * harbour/tests/wvtext.prg
     + Test program to taste few of the callbacks.

     /* This also sets the ground for futuristic multi-window GT 
        I have kept MW GT code out of current implementation.
        This implementation does not interfere nor affects current functionality.

        A work in progress.

        Viktor, I have found a way to implement 'consol shearing, working on it
        and for that to happen these building blocks are a must.

        Przemek, please review the structure of <PHB_PGT>. I have added a few members.
        Please bear with my meagre knowledge if I did something stupid, just correct it.
     */
2008-06-07 04:31:50 +00:00
Viktor Szakats
acd5205b2b 2008-06-04 22:13 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/rto_get.prg
     + Added keypress emulator to aid automated testing.
     + Added test for EMG's bug case.
       [RC1]
2008-06-04 20:15:35 +00:00
Viktor Szakats
88503da438 2008-06-01 16:44 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/Makefile
   - tests/testhbf.prg
   + contrib/hbmisc/tests/testhbf.prg
     * Moved to its place.

   * contrib/hbcurl/hbcurl.c
   * contrib/hbcurl/hbcurl.ch
   * contrib/hbcurl/make_b32.bat
   * contrib/hbcurl/make_vc.bat
   * contrib/hbcurl/make_gcc.sh
     * Minor.
2008-06-01 14:46:39 +00:00
Viktor Szakats
63d35fa484 2008-05-29 11:45 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/rto_get.prg
     + Some tests added.

   * source/rtl/tget.prg
     + Some notes about C5.x behaviour.
     ! Formatting/indentation fixes.
     % Minor optimizations.

   * contrib/xhb/Makefile
   * contrib/xhb/common.mak
     ! Added hbfast.h, hbxml.h

   * contrib/hbfimage/fi_winfu.c
   * contrib/hbfimage/fi_wrp.c
     ! Fixed two BCC warnings in new code.

   * contrib/hbgd/gdwrp.c
     ! Changed to generate proper extern references even 
       for BCC. Now tests compile OK.
       The trick was to explicitly #include <windows.h> 
       before all the other headers, instead of just requesting 
       it using HB_OS_WIN_32_USED.

   * contrib/hbfimage/fi_winfu.c
   * contrib/hbfimage/fi_wrp.c
   * contrib/hbgd/gdwrp.c
   * contrib/hbct/ct.h
   * contrib/hbpgsql/postgres.c
     - Removed #defining _CLIPDEFS_H. It's only needed when 
       using Clipper compatibility API headers (*.api, extend.h).
2008-05-29 09:48:52 +00:00
Viktor Szakats
ceeff3c354 2008-05-28 11:48 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/tget.prg
     ! Fixed ::unTransform() padding for strings with @R picture.
       (Edmer Issue #1)
     ! Fixed ::unTransform() to not use the "Chr( 1 )" hack to 
       remove certain chars from string. (there is still one such 
       remaining)
     ! Fixed ::unTransform() padding with zero decimals for numerics.
       This cleared some differences in rto_get.prg.
     ! Fixed ::toDecPos() to not crash with non-numeric vars.
     - Removed some XBase++ specific code which is not 
       needed for Harbour.
     - Removed some other unnecessary code dealing with '.'/',' swapping.
     % Minor cleanups.
     ; WARNING! Please test these with real code, as we have no extensive 
       regression test suite for the above code parts.

   * tests/rto_get.prg
     + Added some test cases (and counter test cases) for 
       problems reported by Edmer.

   * source/hbpcre/cnv_o2hb.bat
   * source/hbpcre/cnv_hb2o.bat
     ! Fix for potential s&r problem.
       (not adapted to converted code yet)

   * contrib/xhb/Makefile
   * contrib/xhb/common.mak
   + contrib/xhb/xstrdel.c
     + STRDEL() added from Walter Negro / xhb.

   * contrib/rddads/adsfunc.c
     + Minor correction to HB_TRACE handling.

   * contrib/hbfimage/fi_winfu.c
     % Removed unused var.
2008-05-28 10:19:43 +00:00
Viktor Szakats
addea6d04e 2008-05-22 08:00 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
- contrib/hbmisc/dbftools.c
   * contrib/hbmisc/common.mak
   * contrib/hbmisc/Makefile
     - Removed to avoid collision with similar file in hbct.
       Notice the content was also similar, except that 
       in hbct it was updated and extended. There was also 
       FIELDTYPE() implemented which was colliding with 
       function with the same name in core.

   * include/hbextern.ch
   * source/rdd/dbcmd.c
   * source/rdd/dbdrop.c
   * source/rdd/dbexists.c
   * source/rdd/fieldhb.c
     + Added HB_ prefixed versions of DBDROP(), 
       DBEXISTS(), FIELDDEC(), FIELDLEN(), FIELDTYPE()

   * source/rdd/rddinfo.c
     ! Comment.

   * tests/multifnc/Makefile
     ! Updated lib names.

   * contrib/hbapollo/apollo.c
     ! Fixed MSVC errors.

   * contrib/mtpl_b32.bat
   * contrib/mtpl_vc.bat
     ! Removed one obsolete line.
     + Now defines _HB_MAKELOG.

   * contrib/hbapollo/make_b32.bat
   * contrib/hbapollo/make_vc.bat
   * contrib/hbfimage/make_b32.bat
   * contrib/hbgd/make_b32.bat
   * contrib/hbhpdf/make_b32.bat
   * contrib/hbmysql/make_b32.bat
   * contrib/hbodbc/make_b32.bat
   * contrib/hbodbc/make_vc.bat
   * contrib/hbpgsql/make_b32.bat
   * contrib/hbpgsql/make_vc.bat
   * contrib/hbw32ddr/make_b32.bat
   * contrib/hbw32ddr/make_vc.bat
   * contrib/hbzlib/make_b32.bat
   * contrib/rddads/make_b32.bat
     + Redirects .lib creation (implib, lib) output to log file.

   * contrib/xhb/hbcompat.ch
     + Added some more converions for xhb code.

   * contrib/rddads/ads1.c
     + Added two TODOs. (to adsDrop and adsExists)

   * source/pp/hbppgen.c
     ! MSVC warning fixed.

   * make_vc.mak
     ! Typo in prev commit.
2008-05-22 06:09:35 +00:00
Viktor Szakats
40c3c7c2a8 2008-05-15 03:40 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/db_brows.prg
     ! Removed note of hbmisc requirement.

   * tests/Makefile
   - tests/twirl.prg
   + contrib/hbmisc/tests/twirl.prg
     ! Test moved to local test dir.

   * source/vm/cmdarg.c
     ! hb_cmdargIsInternal(): Removed '--' as internal option marker, 
       since it will disallow any application code to accept 
       such options. We will now stick with '//' prefix for 
       Clipper compatible internal options.

   * contrib/hbzlib/tests/myzip.prg
   * contrib/hbzlib/tests/myunzip.prg
   * contrib/hbzlib/hbmzip.c
     + Added support for password on Harbour API level.
     ; NOTE: This password is not at the moment compatible 
             with .zip passwords added by standard .zip 
             utilities.
2008-05-15 02:26:49 +00:00
Viktor Szakats
0e243cee8e 2008-05-14 13:04 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/bld4dll.bat
   * tests/gnu_test.bat
   - tests/test.ch
   - tests/testinc.prg
   - tests/db_brows.ch
   * tests/db_brows.prg
   - tests/entries.ini
   - tests/hversion.prg
   - tests/cgi.ch
   * tests/testcgi.prg
     ! Cleanups.
2008-05-14 11:05:51 +00:00
Viktor Szakats
9f2b4366d7 2008-05-12 19:31 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/Makefile
     + Added hbpcre to the list of libs.
2008-05-12 17:33:27 +00:00
Viktor Szakats
006724dc11 2008-05-12 14:24 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/bld.bat
     + Added hbpcre to lib list.

   * source/rtl/hbini.prg
     ; Some formatting.

   * tests/Makefile
   + tests/parseini.prg
   + tests/parseini.ini
   + tests/parseins.ini
     + Added .ini handling tests. Adapted from xhb.
2008-05-12 12:26:37 +00:00
Viktor Szakats
e5c0ea79ba 2008-05-08 21:14 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* contrib/rddads/ads.ch
   * contrib/rddads/rddads.h
   * contrib/rddads/adsfunc.c
   * contrib/rddads/ads1.c
   * contrib/rddads/adsmgmnt.c
     * Lots of minor code cleanups, formatting fixes, optimizations, 
       and several minor fixes.
     ! Lib version related fixes. (some features were not updated 
       for newer ACE versions).
     + Automatic version detection extended with 6.20 and 5.00.
       6.00 is still missing, if someone has it, pls send it to 
       me. Even 6.11-8.00 versions disappeared from the vendor's 
       site lately.
     + Added support for all possible properties in
       ADSDDGETDATABASEPROPERTY()
       ADSDDSETDATABASEPROPERTY()
     * ADSMGGETUSERNAMES() will now always return an array of 
       users with 6 elements in each item, all data which 
       is not available for the compiled version of the lib, 
       will be filled with empty strings. Previously the 
       number of elements depended on the compiled version.
     ; Besides the above, no functionality change should be 
       experienced.
     ; Please test.

   * contrib/rddads/make_b32.bat
   * contrib/rddads/make_vc.bat
     ! Changed to never look for ace32.dll in system32 dir 
       to generate the ace32.lib.
     ! Some other fixes to prev change where ADS_VER 
       was obsoleted.

   * contrib/hbct/ctwfunc.c
   * contrib/hbct/ctextern.ch
     + Added hbct_MaxRow()/hbct_MaxCol() emulating 
       the original overloaded MaxRow()/MaxCol() 
       functions of CT3 lib.

   * source/rtl/maxrow.c
     * Reverted previous change on request, thus introducing 
       a 3rd party lib specific function parameter extension.
       Users of CT3 lib's overloaded MaxRow(.T.)/MaxCol(.T.) 
       functions are encouraged to change the app code 
       to rather use hbct_MaxRow()/hbct_MaxCol() 
       or hb_ScrMaxRow()/hbScrMaxCol(). These functions are 
       easy to implement in CA-Cl*pper too (simple wrappers 
       to Max*()).

   * source/compiler/hbmain.c
     * Reverted previous change on request. Some outputs 
       are not exactly CA-Cl*pper compatible this way, but 
       functionally it probably doesn't matter for most ppl.

   * contrib/xhb/hbcompat.ch
     ! Corrected MaxRow()/MaxCol()/hb_ScrMaxRow()/hb_ScrMaxCol()
       translations. (hopefully, someone using xhb please test)

   - tests/ctwtest.prg
   + contrib/hbct/tests/ctwtest.prg
     * Moved CT lib specific test to contrib local test 
       directory (containing lots of other CT tests 
       already). Building these is yet to be solved.

   * contrib/hbct/tests/math.prg
   * contrib/hbct/tests/trig.prg
   * contrib/hbct/tests/num1.prg
     ! Added SVN header.

   * include/hbgtinfo.ch
     * Minor comment.

   * contrib/rddads/make_gcc.sh
     * Help text sync with *.bat.
2008-05-08 19:26:20 +00:00
Viktor Szakats
afe85d8f42 2008-04-26 07:53 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/tget.prg
     ! Fixed to not extend ::left(), ::right(), ::backspace(), 
       ::delete() with an internally used (but also externally 
       accessible) extra parameter. This is interface is now 
       made fully C5x compatible.

   * tests/rto_tb.prg
     ! Fixed to override __eInstVar53() (instead of _eInstVar())

   * include/hbextern.ch
   * common.mak
   * source/rdd/Makefile
   + source/rdd/dbcmdhb.c
     + Added non-internal versions of __dbPack() and __dbZap(), 
       named: hb_dbPack() and hb_dbZap(). If group needs it I 
       can add dbPack() and dbZap() too in separate files to 
       lessen the problem of name collision with app code.

   * source/rtl/inkey.c
     * Formatting.
     + HB_KEYPUT(): Now possible to pass an array with string elements.
       (see feature in xhb/__KEYBOARD())
     * HB_KEYPUT(): For string parameter it now uses hb_inkeySetText()
       API, rather than a loop of hb_inkeyPut()s.

   * contrib/xhb/xhbfunc.c
     ! xhb flavour of __KEYBOARD() sync fixed. (hb_inkeySetText() got 
       extended in xhb, so here we're using hb_inkeyPut() for single 
       numeric key codes).
     ; Now same code is used as in HB_KEYPUT().

   * source/vm/memvars.c
   * source/vm/hvm.c
   * source/vm/arrayshb.c
     + Added HB_C52_STRICT branches for the remaining RTEs 
       which produced different results in hbtest.
     ! Fixed HB_C52_STRICT RTE for AFill().
     ; NOTE: It's not possible to build Harbour currently when 
             HB_C52_STRICT, so it's not easy to test these.

   * include/hbclass.ch
     ! Typos.

   * source/rtl/memoedit.prg
   * source/rtl/achoice.prg
   * source/rtl/treport.prg
     * Formatting.

   * source/rtl/tobject.prg
     * Formatting.
     % Minor opt.
2008-04-26 06:39:37 +00:00
Viktor Szakats
33069925d0 2008-04-23 20:11 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/tget.prg
     + Some protected object vars renamed to better show their roles.
     ! Fixed ::setFocus() to not mess with width related vars.
     ! Fixed ::PutMask() to not mess with display width.
     ! Fixed ::varPut() to only accept certain var types.
     ! Fixed ::picture() to more consistently reset picture related vars.
     ! Hack added to ::Reform() to try to set ::nDispLen like CA-Cl*pper.
     ! Fixed ::posInBuffer() to only work when in focus.
       (I didn't test if this is XPP compatible, but it surely avoids 
       a possible RTE now.)
     ! Removed ::display() non-compatible 'lForce' parameter.
     ! Minor cleanups.
     ; NOTE: Now o[16] (aka ::nDispLen) is almost totally CA-Cl*pper 
             compatible.

   * tests/rto_get.prg
     + Added some more tests.
2008-04-23 18:14:54 +00:00
Viktor Szakats
1100bf13dc 2008-04-23 14:03 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/tget.prg
     ! Fixed o[13] and o[14] content (they were swapped) in C5.3 mode.
     ! Fixed ::varPut() to not have the extra Harbour parameter.
     ! Fixed ::picture to not mess with ::nDispLen when @S is used.
       Now solved with new internal var ::nPicLen.
     % ::ResetPar() internal method moved inside ::display()
     ! Fixed ::updateBuffer() to set ::xVarGet (o[19] in C5.3 mode 
       and o[11] in C5.2 mode when ::hasFocus) to ::original.
     ! Fixed ::display() behavior when not in focus.
     ! Fixed ::reset() to be more compatible by setting ::xVarGet.
     ! Fixed ::undo() for non-gettable variable types.
     ! Fixed ::killFocus() to never call ::assign().
     ! Fixed ::varPut() to never touch internal vars (old 'lReFormat' mode).
     ! Fixed ::varGet() to not touch ::xVarGet internal var.
     ! Fixed ::insert()/::overStrike() to call ::display() in 
       out of bound and rejected cases.
     ! Fixed ::insert()/::overStrike() to not set ::Rejected 
       when position is out of bound.
     ! Fixed internal ::PutMask() to never initiate a ::block 
       evaluation.
     ; NOTE: Since Get() object is a highly complicated beast, 
             bumps are expected. Pls test this code with your 
             applications and report any problems with reduced 
             code snippet. I'll include those tests in the 
             regression test suite.
             Notice that after these changes, the number of 
             differences between C5.x and Harbour are further 
             reduced, especially regarding the "object as array" 
             kind of access and regarding block evaluation.
             Currently, differences are mostly present in o[16] 
             in C5.3 mode, plus some odd cases testing 
             mostly invalid picture values, and a few other minor 
             differences here and there. Plus of course further 
             differences may happen to exist in cases not covered 
             by rto_get.prg.

   * source/rtl/einstvar.prg
     ! Fixed to only include _eInstVar() if HB_C52_UNDOC is 
       #defined (it is by default).

   * source/rtl/tbrowse.prg
     + Added missing XPP methods (three synomyms to 
       existing methods).

   * tests/rto_get.prg
     + Added even more tests.
     + Added some additional info about errors.
     ! Fixed ::block SETGET tracing.
2008-04-23 12:08:49 +00:00
Viktor Szakats
b007d20e6b 2008-04-21 14:48 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/rto_get.prg
   * tests/rto_tb.prg
     + Added more tests.
     + Enabled object as array results by default.
     + More details for TGet test results.

   * bin/bld_os2.cmd
     ! Fixed lib names. Thanks David.

   * source/rtl/tobject.prg
     * Formatting.

   * source/rtl/tget.prg
     ! Delimiter colors in C5.3 mode made compatible.
     ! ::colorSpec handling in C5.3 mode made compatible 
       for some invalid parameter types.
     ! Fixed handling decimals in :row, :col, :pos 
       methods.
     ! Fixed to compile in C5.2 mode without warning
       (introduced in recent commit).

   * source/rtl/tbrowse.prg
     ! Fixed handling decimals in :nTop, :nBottom, :nLeft, :nRight.
     + Added unfinished XPP method :viewArea()
     + Added untested XPP method :firstScrCol()
     ; Few minor formatting.

   * include/hbextern.ch
   * source/rtl/einstvar.prg
     + Added _eInstVar52() which is the C5.2 compatible version 
       of this function. It also replicates a bug.
     * _eInstVar() renamed to _eInstVar53().
     * _eInstVar() made a stub to call _eInstVar53().

   * source/rtl/checkbox.prg
   * source/rtl/listbox.prg
   * source/rtl/pushbtn.prg
   * source/rtl/radiobtn.prg
   * source/rtl/radiogrp.prg
   * source/rtl/scrollbr.prg
   * source/rtl/symbol.prg
   * source/rtl/teditor.prg
   * source/rtl/tget.prg
   * source/rtl/tget1.prg
   * source/rtl/tgetlist.prg
   * source/rtl/tmenuitm.prg
   * source/rtl/tmenusys.prg
   * source/rtl/tpopup.prg
   * source/rtl/ttopbar.prg
     * Formatting (EXPORT: -> EXPORTED:)

   * contrib/hbtip/thtml.prg
   * contrib/hbtip/ftpcln.prg
     ! Fixed to work regardless of SET EXACT setting.
     ; NOTE: I'd suggest an optional compiler warning 
             to detect plain "=" usage. It's bad practice 
             in most cases.

   TODO: make_os2_gcc.cmd -> make_gcc_os2.cmd
   TODO: TGET test case for my vtgetlst problem.
   TODO: TGET fix for the above.
   TODO: _eInstVar() -> _eInstVar53()
2008-04-21 12:56:13 +00:00
Viktor Szakats
a1a3a527f7 2008-04-18 01:04 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/rto_tb.prg
     + Added some assigment tests using numerics with decimals.
     ! Fixed typo in prev commit.
2008-04-17 23:08:10 +00:00
Viktor Szakats
4d2778e296 2008-04-18 00:01 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/rto_tb.prg
     + Added some C5.3 var tests.
     + Added object as array info.
     * Suppressed _eInstVar() difference by including 
       a strictly compatible copy of it for Harbour.
     * Exclude incompatible binary array elements of the object.

   * tests/rto_get.prg
     * Exclude incompatible binary array elements of the object.

   + bin/bld_os2.cmd
     + Added OS/2 build command file.
     ; Someone pls test and update the content if needed.
2008-04-17 22:03:40 +00:00
Viktor Szakats
5941be9152 2008-04-15 13:32 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/tget.prg
     + TGet instance variable ordering in class definition 
       made CA-Cl*pper compatible, so that it's now possible to 
       access object vars as array elements the same way.
       Read-only access is strongly recommended when using this 
       unofficial access method, and the practice is overall 
       discouraged.
       NOTE: oGet[8] is not supported in Harbour.
       NOTE: in oGet[11] (in C52 mode), oGet[17] (in C53 mode) 
             only the first char is compatible, which is the 
             type. The rest is 'trash' in CA-Cl*pper.

   * tests/rto_get.prg
     + Extended tests with regards to array access of the 
       TGet object.

   * source/rtl/tbcolumn.prg
     * Formatting.

   * source/common/hbstr.c
   * source/compiler/ppcomp.c
   * source/compiler/hbgenerr.c
   * utils/hbpp/hbpp.c
     ! Fixed some BCC58 warnings.
     ; TOFIX: These remain:
       Warning W8017 C:\devl\BCC58\Include\stdint.h 77: Redefinition of 'INT16_MIN' is not identical
       Warning W8017 C:\devl\BCC58\Include\stdint.h 78: Redefinition of 'INT32_MIN' is not identical
       Warning W8017 C:\devl\BCC58\Include\stdint.h 79: Redefinition of 'INT64_MIN' is not identical
       Warning W8017 C:\devl\BCC58\Include\stdint.h 82: Redefinition of 'INT16_MAX' is not identical
       Warning W8017 C:\devl\BCC58\Include\stdint.h 83: Redefinition of 'INT32_MAX' is not identical
       Warning W8017 C:\devl\BCC58\Include\stdint.h 84: Redefinition of 'INT64_MAX' is not identical
       Warning W8017 C:\devl\BCC58\Include\stdint.h 87: Redefinition of 'UINT16_MAX' is not identical
       Warning W8017 C:\devl\BCC58\Include\stdint.h 88: Redefinition of 'UINT32_MAX' is not identical
       Warning W8017 C:\devl\BCC58\Include\stdint.h 89: Redefinition of 'UINT64_MAX' is not identical
       Warning W8084 source\rtl\hbinet.c 507: Suggest parentheses to clarify precedence in function HB_FUN_HB_INETINIT

   * utils/hbtest/rt_main.h
     ! Typo.

   * utils/hbtest/make_c5x.bat
     + Cleanups, fixes, enhancements.
     * Changed invocation for C53. Now "53" (without quotes) 
       should be used as command line parameter.
     + Now automatically selects linker.
     ! Fixed MSC parameters for C53.
     + Copyright added.
2008-04-15 11:38:16 +00:00
Przemyslaw Czerpak
9cb4e6047d 2008-03-05 19:10 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbct/screen2.c
    ! fixed possible vary bad bug (memory buffer overflow) in SCREENSTR()

  * harbour/source/rtl/hbffind.c
    ! fixed possible GPF in some *nixes

  * harbour/source/vm/classes.c
    ! do not execute the same destructor inherited from different parent
      classes more then once

  * harbour/source/rtl/transfrm.c
    ! fixed bug with '9' used as stop condition of function pattern
      this character cannot be stripped, f.e.:
        ? transform( "abc", "@_99*" )
    ! fixed bug with '*' or '$' used with @), f.e.:
        ? transform( -12345, "@) $999999" )
    ! fixed replacing '.' with ',' when @E is used without picture part, f.e.:
        ? transform( 123.45, "@E" )
    ! fixed ',' conversions
        ? transform( 12.34,"@E ab,cd.ef9,9.99,.--" )
    ! fixed bug with picture starting with ".", f.e.:
	? transform( 0.3456, ".999" )
    ! fixed "@(" and "@)" conversions, f.e.:
        ? transform( -12345, "@) 1999*999" )
    ! fixed late oveflow detection in "@(" and "@)", f.e.:
        ? transtest( -12345, "@( 6798^999" )
    ! fixed "@E" conversion for dates to keep user delimiters set in
      _SET_DATEFORMAT, f.e.:
        set( _SET_DATEFORMAT, "mm:dd:yyyy" ); ? transform( date(), "@E" )
        set( _SET_DATEFORMAT, "yyyy<mm>dd" ); ? transform( date(), "@E" )
      Please note that Harbour is not strictly Clipper compatible here
      because it respects _SET_DATEFORMAT set by user.
    ! fixed 64bit integer conversion by eliminating conversion to
      'double' f.e.:
        ? transform(  1234567890123456789, "99999999999999999999" )
        ? transform( -1234567890123456789, "99999999999999999999" )
    ! some other fixes, see regression test transtst.prg
    % speed improvement in numeric conversions

  + harbour/tests/transtst.prg
    + added regression test for transform function

  * harbour/utils/hbtest/rt_trans.prg
    * disabled transform() tests for "@E" and result smaller then 5 bytes
      CA-Cl*pper do not check result size and always exchanges
      bytes 1-2 with bytes 4-5 for @E conversion. It's buffer overflow
      bug and I do not want to replicate it inside our transform
      implementation. It also causes that the results for for strings
      smaller then 5 bytes behaves randomly.
      In fact precise tests can show that it's not random behavior
      but CA-Cl*pper uses static buffer for result and when current one
      is smaller then 5 bytes then first two bytes are replaced with
      4-5 bytes from previous result which was length enough, f.e.:
               ? transform( "0123456789", "" )
               ? transform( "AB", "@E" )
               ? transform( "ab", "@E" )
      Replicating exact CA-Cl*pper behavior it's trivial (it will be enough
      to use static buffer two and not check the size of current result) but
      IMHO it's bug.

  * harbour/source/rtl/round.c
    * added strictly Clipper compatible code covered by HB_C52_STRICT
      and comment about possible difference in Harbour.

  * harbour/include/hbgtinfo.ch
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtxwc/gtxwc.c
  * harbour/source/rtl/gtsln/gtsln.c
  * harbour/source/rtl/gttrm/gttrm.c
  * harbour/source/rtl/gtwvt/gtwvt.c
    + added HB_GTI_ISUNICODE - it returns logical value with information
      about Unicode mode in active GT driver - it's necessary for proper
      CP initialization in some GTDs which can work in both mode depending
      on client side settings

  * harbour/source/rtl/gttrm/gttrm.c
    * improved UTF-8 detection
    * added automatic PuTTY detection
    * improved PuTTY and some xterm key handling
    * added some missing RXVT keys
2008-03-05 18:10:52 +00:00
Viktor Szakats
a92f87015d 2008-01-26 06:27 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* tests/gfx.prg
   * tests/wcecon.prg
   * tests/gtchars.prg
   * tests/gtkeys.prg
   * include/hbgtinfo.ch
   * source/rtl/hbgtcore.c
   * source/rtl/gtkbstat.c
   * source/rtl/gtdos/gtdos.c
   * source/rtl/gtwin/gtwin.c
   * source/rtl/gtxwc/gtxwc.c
   * source/rtl/gtos2/gtos2.c
   * source/rtl/gtcrs/gtcrs.c
   * source/rtl/gtalleg/gtalleg.c
   * source/rtl/gtstd/gtstd.c
   * source/rtl/gtsln/gtsln.c
   * source/rtl/gttrm/gttrm.c
   * source/rtl/gtpca/gtpca.c
   * source/rtl/gtgui/gtgui.c
   * source/rtl/gtcgi/gtcgi.c
   * source/rtl/gtwvt/gtwvt.c
   * contrib/hbgtwvg/gtwvg.c
     ! Some minor formatting to the .ch file. Removed 
       reference to non-existing doc/gtinfo.txt.
     * Using HB_GTI_* instead of GTI_* in Harbour files.
2008-01-26 05:29:20 +00:00
Viktor Szakats
b9c3cbccfc 2008-01-25 21:27 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* harbour-ce-spec
   * harbour-w32-spec
   * bin/bld.bat
   * harbour.spec
   * common.mak
   * source/pp/Makefile
   * source/lang/Makefile
   * source/macro/Makefile
   * source/rtl/Makefile
   * source/vm/mainstd/Makefile
   * source/vm/Makefile
   * source/vm/mainwin/Makefile
   * source/main/Makefile
   * source/debug/Makefile
   * source/codepage/Makefile
   * source/common/Makefile
   * source/rdd/nulsys/Makefile
   * source/rdd/Makefile
   * source/rdd/hsx/Makefile
   * source/rdd/usrrdd/Makefile
   * source/compiler/Makefile
   * contrib/hbct/tests/Makefile
   * contrib/hbodbc/tests/bld_b32.bat
   * contrib/hbole/tests/bld_b32.bat
   * contrib/hbapollo/tests/bld.bat
   * contrib/hbfbird/tests/bld_b32.bat
   * contrib/hbfbird/tests/Makefile
   * contrib/hbpgsql/tests/Makefile
   * contrib/hbfimage/tests/bld_b32.bat
   * contrib/hbgd/tests/bldtest.bat
   * contrib/hbmisc/tests/Makefile
   * contrib/hbgf/tests/bld_b32.bat
   * contrib/hbbtree/tests/Makefile
   * contrib/examples/guestbk/Makefile
   * contrib/examples/pe/Makefile
   * contrib/examples/dbu/Makefile
   * contrib/examples/misc/Makefile
   * contrib/examples/hscript/Makefile
   * utils/hbdoc/Makefile
   * utils/hbextern/Makefile
   * utils/hbdot/Makefile
   * utils/hbmake/Makefile
   * utils/hbmake/hbmutils.prg
   * utils/hbmake/hbmake.prg
   * utils/hbpp/Makefile
   * utils/hbpptest/Makefile
   * utils/hbtest/Makefile
   * utils/hbrun/Makefile
   * tests/Makefile
     * Core libs renamed to be prefixed with hb, while 
       having the first significant 5 chars unique.

       Old name    New name
       --------    --------
       codepage -> hbcpage 
       common   -> hbcommon
       compiler -> hbcplr  
       debug    -> hbdebug 
       hbsix    -> hbsix   
       hsx      -> hbhsx   
       lang     -> hblang  
       macro    -> hbmacro 
       pp       -> hbpp    
       rtl      -> hbrtl   
       vm       -> hbvm    
       rdd      -> hbrdd
       dbfcdx   -> rddcdx
       dbffpt   -> rddfpt
       dbfntx   -> rddntx
       nulsys   -> hbnulrdd
       usrrdd   -> hbusrrdd
       mainwin  -> hbmainwin
       mainstd  -> hbmainstd

       NOTE/TODO: We're currently not in sync with contribs, 
                  regarding hb prefixing, since in contrib 
                  rdds and gts (rightly) also have hb prefixes.
                  The only reason not to add them in core this
                  time, is to keep compatibility with DJGPP.
                  Maybe we should remove those prefixes from 
                  contrib.

       NOTE/TODO: Do tests in as many platforms and as many contrib 
                  tests as possible. Feedback from hbmake users is 
                  also welcome.

       !!! Please update your local make files !!!

   * include/hbgtinfo.ch
     + Added HB_ prefixed versions for all GTI_ macros.
       Unprefixed GTI_ macros are to be considered xhb 
       compatible (or legacy) ones, and they can be 
       excluded by #defining HB_GT_NO_XHB if they seem to 
       collide with user code.
       TODO: Switch to use HB_GTI_* inside Harbour code.
2008-01-25 20:40:49 +00:00
Przemyslaw Czerpak
b6112676bc 2007-11-23 05:09 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/gtwvt/gtwvt.h
  * harbour/source/rtl/gtwvt/gtwvt.c
    * removed foreground and background from GLOBAL_DATA
      - they are not necessary
    + added support for gfxPrimitive() - fixed xHarbour code

  * harbour/contrib/gtwvg/gtwvt.c
    + added support for gfxPrimitive() - fixed xHarbour code
    * removed some methods which can be safely replaced by
      default ones

  * harbour/tests/gfx.prg
  * harbour/tests/wcecon.prg
  * harbour/tests/gtchars.prg
    * updated the order of changed font parameters

  * harbour/contrib/xhb/hbcompat.ch
    ! added missing closing square bracket
2007-11-23 04:09:55 +00:00
Przemyslaw Czerpak
50d37bb233 2007-11-05 18:35 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/wcecon.prg
    + added small test for DBF/FPT/CDX file creation and browsing
      in PocketPC/WinCE
2007-11-05 17:36:10 +00:00
Przemyslaw Czerpak
ec423de877 2007-10-19 16:16 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapicdp.h
  * harbour/source/rtl/cdpapi.c
    + added hb_cdpGetChar()

  + harbour/tests/wcecon.prg
    + added demonstration console program for WinCE,
      compile it using:
         hbmk -n -w -es2 -gtwvt wcecon

  * harbour/include/hbwince.h
  * harbour/source/common/hbwince.c
  * harbour/contrib/win32/w32_ole.c
  * harbour/contrib/odbc/odbc.c
    * use UNICODE macro instead of HB_WINCE to allow using Unicode
      WINAPI also in other MS-Windows versions

  * harbour/source/rtl/gtwvt/gtwvt.h
  * harbour/source/rtl/gtwvt/gtwvt.c
    + added support for Unicode IO

  * harbour/source/rtl/diskspac.c
  * harbour/source/rtl/disksphb.c
     ! fixed wrongly set error code
     ! fixed possible access to uninitialized memory
     * use GetDiskFreeSpaceEx() on WinCE instead of GetDiskFreeSpace()
       for disk larger then 4GB - I do not know if PocketPC have such
       large devices now or if WinCE can support it but for sure it will
       somewhere in the future
2007-10-19 14:16:35 +00:00
Viktor Szakats
bac5436f68 2007-10-18 12:16 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
+ contrib/win32
   + contrib/win32/test
   + contrib/win32/test/testw32p.prg
   + contrib/win32/test/oleenum.prg
   - test/oleenum.prg
   + contrib/win32/Makefile
   + contrib/win32/makefile.bc
   + contrib/win32/makefile.vc
   + contrib/win32/make_b32.bat
   + contrib/win32/make_vc.bat
   + contrib/win32/w32_tole.prg
   + contrib/win32/w32_tprn.prg
   + contrib/win32/tprinter.c
   + contrib/win32/w32_ole.c
   + contrib/win32/w32_prn.c
     + Added a Win32 contrib lib by merging win32prn and ole2 
       libs. The name of the new library is "hbwin32".
     ; directx was not added for now.
2007-10-18 10:23:19 +00:00
Mindaugas Kavaliauskas
bde1c66062 2007-10-10 21:11 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/tests/multifnc/t0.prg
  * harbour/tests/multifnc/t1.prg
  * harbour/tests/multifnc/t2.prg
    + one more test for function overload with C function
2007-10-10 18:12:16 +00:00
Mindaugas Kavaliauskas
3c909a6e05 2007-10-09 00:11 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/source/vm/dynsym.c
    * minor optimzation
  * harbour/tests/multifnc/t0.prg
  * harbour/tests/multifnc/t1.prg
  * harbour/tests/multifnc/t2.prg
    + one more test for function overload
2007-10-08 21:10:12 +00:00
Przemyslaw Czerpak
bc5b34f088 2007-10-04 13:15 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/multifnc/t0.prg
    * show information about Harbour version and used C compiler
2007-10-04 11:15:14 +00:00
Przemyslaw Czerpak
0efe049e5d 2007-10-03 17:04 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
+ harbour/tests/oleenum.prg
    + added Enrico example and test code for enumerators and OLE objects

  * harbour/contrib/Makefile
    * enabled hbole, ado_rdd, hybodbc in most of Windows builds

  * harbour/contrib/ole2/win32ole.prg
  * harbour/contrib/ole2/w32ole.c
    * synced with recent Ron's modifications in xHarbour
      I'd like to ask Windows users to make tests with above
      oleenum.prg and example sent by Luis

  * harbour/source/rtl/gttrm/gttrm.c
    * disable ACS mode before sending BEL on Linux compatibile terminals
      - some of them may try to display chr(7) instead of generating
        sound when ACSC is enabled

  * harbour/source/vm/proc.c
    + added support for character parameter in PROCFILE() - now it can
      accept <nLevel> | <sFuncSym> | <cFuncName> as first parameter

  * harbour/source/vm/dynsym.c
    * added support for detecting not cleanly overloaded by linker .prg
      functions.
      In such case hb_dynsymNew() checks if linker updated function
      addresses and if yes then remove unnecessary HB_FS_LOCAL flag.
      In such case works GCC (but not MinGW and DJGPP), OpwenWatcom
      for Linux, DOS, Windows (and probably for OS2), POCC, XCC (with
      /FORCE:MULTIPLE linker switch) and some other linkers I haven't
      tested.
      Otherwise (two different functions with the same name linked and
      each accessible from different symbol, f.e. BCC32, MinGW, DJGPP)
      it accept multiple HB_FS_LOCAL for dynamically loaded modules
      (.hrb, .dll, .so, .dyn, ...) if HVM also accepted it (for future
      KEEP_LOCAL_FUNC HB_LIBLOAD()/__HBRLOAD() parameter).
      For statically linked modules it overloads one of the functions when
      HB_OVERLOAD_MULTIPLE_FUNC macro is set (now by default to make tests
      with different linkers). I left detail description in source code of
      hb_dynsymNew() in source/vm/dynsym.c.
      I hope it will also help Ron in recent xHarbour modifications - AFAIK
      it's sth what he tires to do.
      Anyhow please remember that that dirty overloading any symbols by
      linker is very bad idea and in such case you have big chance that
      wrong binaries will be created so the most preferable choice is
      eliminating such situations and not using linker switches like
      -Wl,--allow-multiple-definition or /FORCE:MULTIPLE

  + harbour/tests/multifnc
  + harbour/tests/multifnc/t0.prg
  + harbour/tests/multifnc/t1.prg
  + harbour/tests/multifnc/t2.prg
  + harbour/tests/multifnc/Makefile
    + added test code for results of dirty overloaded functions.
      With recent modifications expected results are:
            main t0.prg t0.prg
            alert t1.prg t1.prg [ALERT]
            p0 t0.prg t0.prg P0:t0.prg P0:t0.prg OK
            p1 t0.prg t0.prg P1:t0.prg P1:t0.prg OK
            p2 t1.prg t1.prg P2:t1.prg P2:t1.prg OK
            p3 t0.prg t0.prg P3:t0.prg P3:t0.prg OK
            p4 t1.prg t1.prg P4:t1.prg P4:t1.prg OK
            p5 t2.prg t2.prg P5:t2.prg P5:t2.prg OK
            ===
            main2 t1.prg t1.prg
            alert t1.prg t1.prg [ALERT]
            p0 t0.prg t0.prg P0:t0.prg P0:t0.prg OK
            p1 t0.prg t0.prg P1:t0.prg P1:t0.prg OK
            p2 t1.prg t1.prg P2:t1.prg P2:t1.prg OK
            p3 t0.prg t0.prg P3:t0.prg P3:t0.prg OK
            p4 t1.prg t1.prg P4:t1.prg P4:t1.prg OK
            p5 t2.prg t2.prg P5:t2.prg P5:t2.prg OK
            ===
            main3 t2.prg t2.prg
            alert t1.prg t1.prg [ALERT]
            p0 t0.prg t0.prg P0:t0.prg P0:t0.prg OK
            p1 t0.prg t0.prg P1:t0.prg P1:t0.prg OK
            p2 t1.prg t1.prg P2:t1.prg P2:t1.prg OK
            p3 t0.prg t0.prg P3:t0.prg P3:t0.prg OK
            p4 t1.prg t1.prg P4:t1.prg P4:t1.prg OK
            p5 t2.prg t2.prg P5:t2.prg P5:t2.prg OK

      I've tested only few compilers: GCC/G++ (Linux) MinGW (WINE-W32),
      DJGPP (DOSEMU), OpenWatcom (Linux, WINE-W32, DOSEMU), XCC/POCC
      (WINE-W32) and I'm interesting in results from other compiler/
      platforms, f.e. from M[V]SC.
2007-10-03 15:05:12 +00:00
Viktor Szakats
b6d6464779 2007-09-17 13:26 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* tests/rto_get.prg
   * tests/rto_tb.prg
   * source/rtl/gui.prg
   + source/rtl/tbrowsys.prg
   * source/rtl/tmenusys.prg
   * source/rtl/menusys.prg
   * source/rtl/tscalar.prg
   * source/rtl/tbrowse.prg
     + Added missing file from previous commit.
     + Set Id keyword and eol-style to native on newly added files.
2007-09-17 11:27:09 +00:00
Przemyslaw Czerpak
b1be6fde0f 2007-09-13 20:15 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/tests/run_prg.bat
  * harbour/tests/gnu_test.bat
  * harbour/tests/run_test.bat
  * harbour/tests/bld4dll.bat
  * harbour/doc/genhtm.bat
  * harbour/bin/bld.bat
  * harbour/bin/postinst.bat
  * harbour/bin/bld_b32.bat
  * harbour/bin/bld_b16.bat
  * harbour/bin/bld_vc.bat
  * harbour/make_b32.bat
  * harbour/make_vc.bat
  * harbour/make_gnu.bat
  * harbour/contrib/ole/bldtest.bat
  * harbour/contrib/ole/build32.bat
  * harbour/contrib/libmisc/make_b32.bat
  * harbour/contrib/libmisc/doc/gendoc.bat
  * harbour/contrib/libmisc/make_vc.bat
  * harbour/contrib/apollo/test/bld.bat
  * harbour/contrib/apollo/test/bld_b32.bat
  * harbour/contrib/apollo/make_b32.bat
  * harbour/contrib/pgsql/make_b32.bat
  * harbour/contrib/gd/make_b32.bat
  * harbour/contrib/gd/tests/bldtest.bat
  * harbour/contrib/libnf/make_b32.bat
  * harbour/contrib/libnf/make_vc.bat
  * harbour/contrib/htmllib/make_b32.bat
  * harbour/contrib/htmllib/make_vc.bat
  * harbour/contrib/tip/make_b32.bat
  * harbour/contrib/libct/make_b32.bat
  * harbour/contrib/libct/make_vc.bat
  * harbour/contrib/adordd/make_b32.bat
  * harbour/contrib/rdd_ads/doc/gendoc.bat
  * harbour/contrib/rdd_ads/make_b32.bat
  * harbour/contrib/rdd_ads/make_vc.bat
  * harbour/contrib/libgt/make_b32.bat
  * harbour/contrib/libgt/doc/gendoc.bat
  * harbour/contrib/libgt/make_vc.bat
  * harbour/contrib/hbclip/make_clp.bat
  * harbour/contrib/btree/make_b32.bat
  * harbour/contrib/btree/mktest.bat
  * harbour/contrib/ole2/make_b32.bat
  * harbour/contrib/directx/buvcdx.bat
  * harbour/contrib/hgf/tests/build_b32.bat
  * harbour/contrib/hgf/win32/make_b32.bat
  * harbour/contrib/hgf/win32/makevc.bat
  * harbour/contrib/samples/make_b32.bat
  * harbour/contrib/samples/make_vc.bat
  * harbour/contrib/delphi/hbdll/start.bat
  * harbour/contrib/delphi/hbdll/bld_sdll.bat
  * harbour/contrib/mysql/make_b32.bat
  * harbour/contrib/runjava/bld_java.bat
  * harbour/contrib/runjava/make_vc.bat
  * harbour/contrib/odbc/bldodbc.bat
  * harbour/contrib/odbc/bld_b32.bat
  * harbour/contrib/bmdbfcdx/make_b32.bat
  * harbour/contrib/hbzlib/dll_b32.bat
  * harbour/contrib/hbzlib/make_b32.bat
  * harbour/contrib/hbzlib/make_vc.bat
  * harbour/utils/hbextern/make_c5x.bat
  * harbour/utils/hbpptest/compare.bat
  * harbour/utils/hbtest/make_c5x.bat
  * harbour/utils/hbtest/make_xpp.bat
  * harbour/samples/guestbk/bld_b32.bat
  * harbour/samples/hscript/makehtm.bat
  * harbour/samples/hscript/bld_b32.bat
    * set svn:eol-style to CRLF
2007-09-13 18:16:17 +00:00
Viktor Szakats
d4c9b3de9b 2007-09-13 13:00 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* tests/rto_get.prg
     * Changes missed from previous commit.
2007-09-13 11:14:22 +00:00
Viktor Szakats
fe0ad088b7 2007-09-12 12:54 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/teditor.prg
   * source/rtl/tbrowse.prg
     ! Fixed to assign SetColor() in New() rather than in INIT.
       (INIT value gets evaluated and stored on first class usage, 
       not on every instantiantion.)

   * source/rtl/tget.prg
   * tests/rto_get.prg
     + Added Harbour extensions:
       :hideInput (logical value)
       :style (1 char long string to control mask character when :hideInput is .T.)
       QUESTION: Is there any need to support multiple hiding styles?
                 (like always fully masked or masked with random chars?)
     ! Fixed several bugs in SET DELIMITERS handling.
       (color, focus behaviour, "caching", positioning)
     + Added test cases for SET DELIMITERS issues.
2007-09-12 10:56:20 +00:00
Viktor Szakats
d4711a8f83 2007-09-11 15:34 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* tests/rto_get.prg
   * source/rtl/tget.prg
     ! Fixed display issue when using display->varput->display 
       sequence. (Thanks Lorenzo)
     + Above case added to test suite.

   * source/rtl/tbrowse.prg
     + Some scattered logic moved inside :Configure()
     ! Some TOFIX-es added.
     ! ::ColorSpec() to call Configure().

   * source/debug/dbgtobj.prg
   * source/debug/dbgwa.prg
     + Formatting, var name cleanup.
2007-09-11 13:38:39 +00:00
Viktor Szakats
1b46bf32b9 2007-09-07 03:38 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* tests/Makefile
   * tests/rto_get.prg
   + tests/rto_tb.prg
   * include/button.ch
   * include/hbextern.ch
   * common.mak
   * source/rtl/Makefile
   - source/rtl/mssgline.prg
   + source/rtl/gui.prg
   + source/rtl/menusys.prg
   + source/rtl/tmenusys.prg
   * source/rtl/checkbox.prg
   * source/rtl/einstvar.prg
   * source/rtl/getlist.prg
   * source/rtl/getsys.prg
   * source/rtl/listbox.prg
   * source/rtl/memoedit.prg
   * source/rtl/pushbtn.prg
   * source/rtl/radiobtn.prg
   * source/rtl/radiogrp.prg
   * source/rtl/scrollbr.prg
   * source/rtl/tbcolumn.prg
   * source/rtl/tbrowse.prg
   * source/rtl/teditor.prg
   * source/rtl/tget.prg
   * source/rtl/tgetlist.prg
   * source/rtl/tlabel.prg
   * source/rtl/tmenuitm.prg
   * source/rtl/tpopup.prg
   * source/rtl/treport.prg
   * source/rtl/ttopbar.prg
     ; These changes mainly targeted the .prg 
       level UI classes of Harbour.
     + Code standardization, cleanup, formatting.
       (formatting is not fully complete yet)
     ! Lots of compatibility fixes.
     ! Lots of bugfixes (crashes, wrongly passed 
       parameters, etc).
     ! Minor fix in one of the methods of HBReportForm()
     - Non-Clipper classes removed (the MENUSYS/msgline 
       related ones).
     ! Some fixes adapted from xHarbour's TBrowse()
     + Class VARs properly scoped.
     + TBColumn() is now fully compatible.
     * The mess in the TTopBar and related classes was 
       cleaned up, some small non-Clipper compatible 
       classes were removed and a new TMenuSys class 
       was created of the related parts.
     % Optimizations.
     + TBrowse/TBColumn regression test suite 
       added (far from complete at this point).
     ; NOTE: No C5.3 GUI support is implemented in Harbour.
     ; NOTE: Harbour uses Disp*() functions in UI functions 
             to update screen. C5.x uses a mixture of Dev*(), 
             Q?Out() and Disp*().
     ; NOTE: TBrowse() fixing is still a work in progress.
     ; Please test.
2007-09-07 02:00:07 +00:00
Przemyslaw Czerpak
503c1ddf13 2007-09-02 17:27 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/hbgtmk.sh
  * harbour/tests/codebl.prg
  * harbour/tests/testprof.prg
  * harbour/tests/keywords.prg
  * harbour/tests/testpp.prg
  * harbour/make_rpm.sh
  * harbour/makefile.gc
  * harbour/bin/hb-mkslib.sh
  * harbour/include/hbexpra.c
  * harbour/include/hbmath.ch
  * harbour/include/hbrddntx.h
  * harbour/include/hbexprb.c
  * harbour/harbour.spec
  * harbour/contrib/dot/pp.prg
  * harbour/contrib/libct/ctwin.c
  * harbour/contrib/ole2/w32ole.c
  * harbour/contrib/hgf/win32/win32.c
  * harbour/contrib/mysql/mysql.ch
  * harbour/contrib/odbc/todbc.prg
  * harbour/contrib/odbc/sql.ch
  * harbour/contrib/hb_struc/hbstruc.ch
  * harbour/contrib/bmdbfcdx/bmdbfcdx1.c
  * harbour/contrib/msql/msql.ch
  * harbour/contrib/msql/readme.txt
  * harbour/source/pp/ppcore.c
  * harbour/source/rtl/gtdos/gtdos.c
  * harbour/source/rtl/gtxwc/gtxwc.h
  * harbour/source/rtl/hbgtcore.c
  * harbour/source/rtl/gtcrs/gtcrs.h
  * harbour/source/rtl/gtalleg/gtalleg.c
  * harbour/source/rtl/gtalleg/ssf.h
  * harbour/source/rtl/gtalleg/fixedth.sfc
  * harbour/source/rtl/gtchrmap.c
  * harbour/source/rtl/itemseri.c
  * harbour/source/rtl/gtstd/gtstd.c
  * harbour/source/rtl/gtsln/gtsln.h
  * harbour/source/rtl/gttrm/gttrm.c
  * harbour/source/rtl/gtpca/gtpca.c
  * harbour/source/rtl/hbhex.c
  * harbour/source/rtl/tget.prg
  * harbour/source/rtl/gtcgi/gtcgi.c
  * harbour/source/rtl/hbinet.c
  * harbour/source/vm/hvm.c
  * harbour/source/debug/dbgtobj.prg
  * harbour/source/debug/dbgwa.prg
  * harbour/source/common/expropt2.c
  * harbour/source/rdd/dbfcdx/dbfcdx1.c
  * harbour/source/rdd/dbffpt/dbffpt1.c
  * harbour/utils/hbpp/hbppcore.c
  * harbour/utils/hbpptest/pp_test.prg
  * harbour/utils/hbpptest/pretest.prg
  * harbour/make_tgz.sh
    * converted TABs to SPACEs
2007-09-02 15:28:05 +00:00
Przemyslaw Czerpak
79c5c63ead 2007-07-30 18:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
+ harbour/tests/foreach2.prg
    * added example for FOR EACH overloading
2007-07-30 16:10:14 +00:00
Przemyslaw Czerpak
893a870c7f 2007-06-23 15:45 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* 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
2007-06-23 13:46:03 +00:00
Przemyslaw Czerpak
d1f8cc8478 2007-05-04 15:35 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/Makefile
  * harbour/contrib/bmdbfcdx/Makefile
  * harbour/source/rdd/Makefile
    ! fixed GNU make compilation

  * harbour/include/hbapifs.h
  * harbour/source/rtl/filesys.c
    + added support for DOS/Windows DENY_* flag emulation in POSIX
      systems using BSD locks. So far such emulatin was done with
      standard POSIX locks. The new emulation can be enabled by setting
      HB_USE_BSDLOCKS and disabled by HB_USE_BSDLOCKS_OFF. By default
      it's enabled in Linux and BSD* based systems.
      Please not that it BSD locks work in differ way then POSIX ones.
      They are bound with file handle and process ID not i-node and PID.
      It will allow to synchronize even single process but it will not
      work in NFS and some old BSD and Linux kernels. This synchronization
      cannot be used also between different platforms. If someone needs
      such synchronization then he should build Harbour on all platforms
      with HB_USE_BSDLOCKS_OFF and HB_USE_SHARELOCKS with valid multi
      platform lock offset

  * harbour/source/rdd/dbcmd.c
    * removed all explicit NETERR setting - now it can be set only
      by NETERR() function (executed by default errorsys)
    * changed ordListAdd()/dbSetIndex() - now they return logical value
      with information about success

  * harbour/source/rdd/wafunc.c
    * changed hb_rddOpenTable()/hb_rddCreateTable() to make dbUseArea()/
      dbCreate() more Clipper compatible - it's not exact Clipper behavior
      but I intentionally do not want to replicate some strange for me
      things, f.e. I do not know why Clipper ignores RDDNAME when it has
      only one character

  + harbour/tests/tstuse.prg
    + test code for dbUseArea()
2007-05-04 13:36:02 +00:00
Viktor Szakats
addb19438e 2007-04-24 10:38 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* harbour/source/rtl/tget.prg
   * harbour/source/rtl/tgetint.prg
   * harbour/tests/rto_get.prg
     * Minor fixes, cleanups, formatting.
2007-04-24 08:38:50 +00:00
Viktor Szakats
1c11bc25db 2007-04-23 23:28 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* harbour/source/rtl/diskspac.c
     ! Fixed to return free space instead of disk size under Unix OSes.

   * harbour/source/rtl/tget.prg
     ! Fixed checking for invalid GET var types.
     ! More C5x compatible behaviour for invalid types.
     ! ::UnTransform() fixed when not in focus.
     - ::UnTransform() cBuffer incompatible parameter removed.
     ! ::Reform() probably made more compatible.
     + ::PosInBuffer() XBase++ compatible method implemented.
       (but not tested or compared with XBase++)
     ! ::Minus assignment fixed.
     ! ::Clear assignment fixed.
     ! ::Changed assignment fixed.
     ! ::Buffer assignment fixed.
     ! ::Block assignment fixed.
     ! ::Name assignment fixed.
     ! ::UnTransform() extra parameter removed.
     ! ::UpdateBuffer() minor fix when not in focus.
     ! ::Reform() made more compatible.
     % ::SetFocus() some superfluous stuff removed.
     % ::SetFocus() some fixes, cleanups.
     ! ::KillFocus() now sets ::TypeOut properly.
     ! ::VarPut(), ::VarGet() fixed for invalid ::Subscript contents.
     ! ::VarPut(), ::VarGet() fixed for invalid ::Block content.
     ! ::Pos rewritten to be fully compatible.
     ! ::ColorSpec made fully compatible.
     ! ::UnTransform() fixed when not in focus.
     ! ::UnTransform() fixed handling "YL" in string pictures.
     % ::UnTransform() minor optimization.
     % ::PutMask() some hacks removed.
     ! ::PutMask() invalid types handling.
     ! ::BackSpace() fixed when not in focus.
     ! ::Delete() fixed when not in focus.
     ! ::DeleteAll() fixed when not in focus.
     ! ::IsEditable() fixes.
     ! ::Picture fixes for invalid types, assignment behaviour.
     ! ::Picture hacks removed.
     ! Non-assignable vars made READONLY. (will generate
       different RTEs than in CA-Cl*pper due to the more
       refined oo engine in Harbour.)
     ! ::BadDate changed to be a METHOD.
     ! ::ToDecPos fixes.
     ! ::Row assigment and behaviour fixes.
     ! ::Col assigment and behaviour fixes.
     + Several comments and NOTEs added.

   * harbour/include/hbapigt.h
   * harbour/source/rtl/gtapi.c
   * harbour/source/rtl/setcolor.c
     + hb_gtColorsToString() public API added.
     + hb_NToColor() function added to convert a single color
       value (returned by hb_ColorToN()) back to a string.
       Used in TGet():ColorSpec implementation.

   * harbour/source/vm/fm.c
     * "Blocks" -> "Block(s)"

   * harbour/tests/rto_get.prg
     + Added many test cases.

   * harbour/source/vm/cmdarg.c
     + Added support to use "--" instead of "//" for internal
       command line options.

   * harbour/source/rtl/tbcolumn.prg
     + Formatting.

   * harbour/source/rtl/tbrowse.prg
     + Added Harbour (undocumented) extension NOTE.

   * harbour/include/Makefile
   - harbour/include/usrrdd.ch
   + harbour/include/hbusrrdd.ch
   * harbour/source/rdd/usrrdd/usrrdd.c
   * harbour/source/rdd/usrrdd/rdds/dbtcdx.prg
   * harbour/source/rdd/usrrdd/rdds/fcomma.prg
   * harbour/source/rdd/usrrdd/rdds/fptcdx.prg
   * harbour/source/rdd/usrrdd/rdds/hscdx.prg
   * harbour/source/rdd/usrrdd/rdds/rlcdx.prg
   * harbour/source/rdd/usrrdd/rdds/smtcdx.prg
   * harbour/contrib/pgsql/pgrdd.prg
     ! Changed public header filename to comply with the "hb*.ch" rule.
       (namespace protection)
2007-04-23 21:41:40 +00:00
Viktor Szakats
79f9aa2ff2 2007-04-20 04:05 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* harbour/source/rtl/tget.prg
   * harbour/tests/Makefile
   + harbour/tests/rto_get.prg
     ; Fixed lots of minor bugs and differences between
       CA-Cl*pper and Harbour Get system. The following
       methods got most of the fixes:
     + ::Reform() undocumented C52 method added.
     ! ::Display() fixed when not having focus. (old TOFIX)
     ! ::UpdateBuffer() fixed when not having focus.
     ! ::SetFocus() fixed to do nothing when already having focus.
     ! ::KillFocus() made almost fully compatible.
       (the ::Assign() call is still raising questions)
     ! ::Reset() made compatible.
     ! ::VarPut() fixed when not having focus.
     ! ::Undo() made compatible.
     ! ::Type() behaviour now fully C5x compatible.
     ! ::Block() assignment now fully C5x compatible.
     ! ::OverStrike() fixed RTE when not having focus.
     ! ::Insert() fixed RTE when not having focus.
     ! ::ToDecPos() fixed to set ::Changed.
     ! ::PutMask() fixed to not pad the string to ::nMaxLen to
       be fully compatible with C5x.
     ! ::DecPos, ::Pos initialization made compatible.
       (here the CA-Cl*pper NG is wrong in stating that these
       vars ever hold NIL, they don't and they hold 0s instead)
     ! ::Minus more compatible but still far from perfect.
     % ::ParsePict() integrated into ::Picture()
     - ::HasScroll() internal method removed.
     ! ::HitTest() guarded with HB_COMPAT_C53.
     + Propely marked Get vars/methods as PROTECTED/VISIBLE.
     % Several minor optimizations, meaningless code elimination.
     ; Formatting, removed many old commented code snippets.
     + Added regression style tests for basic Get methods.
       All the above fixes was the result of comparing
       Get object var dumps after calling different methods
       in different order.
     ; Notice that there could be new/rare cases when any of
       the above methods would need more fixes, in that case
       the regression test is there to check if the existing
       behaviour stayed the same after the fix and it's also
       very useful to add the new cases to the test.

Pls report any problems (with reduced examples), TGet() is
still far from being perfect, but should be more compatible
after these changes.
2007-04-20 02:06:37 +00:00
Przemyslaw Czerpak
49b4fc91e3 2007-04-04 10:35 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/tip/Makefile
  - harbour/contrib/tip/atokens.c
    * removed HB_ATOKENS()

  - harbour/source/rtl/teditorl.c
    - removed __STRTOKEN(), __STRTKPTR()

  * harbour/common.mak
  * harbour/source/rtl/Makefile
  * harbour/include/hbextern.ch
  + harbour/source/rtl/hbtoken.c
    + added set of functions to manipulate string tokens:
         HB_TOKENCOUNT( <cString>, [ <cDelim> ], [ <lSkipStrings> ],
                        [ <lDoubleQuoteOnly> ] ) -> <nTokens>
         HB_TOKENGET( <cString>, <nToken>, [ <cDelim> ], [ <lSkipStrings> ],
                      [ <lDoubleQuoteOnly> ] ) -> <cToken>
         HB_TOKENPTR( <cString>, @<nSkip>, [ <cDelim> ], [ <lSkipStrings> ],
                      [ <lDoubleQuoteOnly> ] ) -> <cToken>
         HB_ATOKENS( <cString>, [ <cDelim> ], [ <lSkipStrings> ],
                     [ <lDoubleQuoteOnly> ] ) -> <aTokens>
      All these functions use the same method of tokenization. They can
      accept as delimiters string longer then one character. By default
      they are using " " as delimiter. " " delimiter has special mening
      Unlike other delimiters repeted ' ' characters does not create empty
      tokens, f.e.: HB_ATOKENS( "    1     2 3  " ) returns array { "1", "2" }
      Any other delimiters are restrictly counted, f.e. HB_ATOKENS( ",,1,,2,")
      return array: { "", "", "1", "", "2", "" }.

    + added emulation for old __STRTOKEN(), __STRTKPTR() and xHarbour's
      __STRTOKENCOUNT() by HB_TOKEN*() functions. They do not return
      exactly the same result as __STRT*() functions which in some cases
      ignored some delimiters and return wrong results.

  * harbour/source/rdd/Makefile
  + harbour/source/rdd/dbsql.c
    + added __DBSQL() function

  * harbour/include/hbsetup.h
  * harbour/source/vm/fm.c
    + added support for native Windows memory allocation functions
      It can be enabled by HB_FM_WIN32_ALLOC macro and disable C-RTL
      memory manager.

  * harbour/tests/mousetst.prg
    * touch screen output before MPRESENT() to work with GTXWC
2007-04-04 08:35:12 +00:00