* harbour/source/vm/mainstd.c
* forced '\' in argv[0] instead of '/' in DJGPP builds
* disabled using SHELL envvar and forced COMSPEC in system() function
in DJGPP builds (it effects __run() and hb_run() .prg functions)
* contrib/hbwin/legacy.prg
! Trying to implement TOLEAUTO():NEW() compatibility
interface. Crash is gone, but I'm not sure the app
now behaves perfectly.
Someone please review/test.
* harbour/contrib/hbxbp/Makefile
* harbour/contrib/hbxbp/xbp.ch
+ harbour/contrib/hbxbp/xbp3state.prg
+ harbour/contrib/hbxbp/xbpcheckbox.prg
+ harbour/contrib/hbxbp/xbpdataref.prg
+ harbour/contrib/hbxbp/xbplistbox.prg
+ harbour/contrib/hbxbp/xbpradiobutton.prg
+ harbour/contrib/hbxbp/xbpstatusbar.prg
+ harbour/contrib/hbxbp/xbptabpage.prg
* harbour/contrib/hbxbp/xbpdialog.prg
* harbour/contrib/hbxbp/xbpwindow.prg
+ Added classes:
Xbp3State()
XbpCheckBox()
XbpRadioButton()
XbpListBox()
XbpDataRef() - Used by data aware components as above.
XbpStatusBar() - Partial
XbpTabPage()
* harbour/contrib/hbxbp/tests/demoxbp.prg
+ Added implementation code of above classes.
/*
demoXBP.prg implements 100% Xbase++ code pulled from its
documentation. The only attributes changes are done either to
redefine the parent or window coordinates. Xbase++ ( as I know )
takes bottom-top approach in screen coordinate system, so
demoXBP.prg compiled with Xbase++ shows objects in different
positions. Except for this and a couple of other compatibility
issues, Harbour offers more wider horizon. So, once base
implementation is done, I may extend these classes to take
advantage of QT's powerful design concepts.
*/
* ChangeLog
* Marked TOFIX/TODO as DONE.
* utils/hbmk2/hbmk2.prg
+ Added Harbour 1.0.x support for -main and -gt* options.
Should also work with xhb.
* utils/hbmk2/examples/hmg.hbc
! Updated. Tested okay with HMG 2.9.2.
- utils/hbmk2/examples/wxharbour.hbc
- Deleted, now hosted by wxHarbour project.
Many thanks to Teo Fonrouge.
* harbour/source/pp/Makefile
! fixed / used as directory separator in $(RM) command with non *nix like
shells
* restored wildcard hack for some dynamic shortcut redirectors, f.e.
DOSEMU
* contrib/hbwin/Makefile
- contrib/hbwin/legacyc.c
+ contrib/hbwin/legacycd.c
+ contrib/hbwin/legacyco.c
* Mimicing old layout to avoid potential symbol collisions
with certain 3rd parties.
* INSTALL
* Updated.
* source/pp/Makefile
! Fixed to ignore clean command result which is a TOFIX.
(anyone to help here?)
! Changed ChangeLog file detection to specifically look
for CHANGE~1 and to not look for CHANGE~* and CHANG~*
where the latter cannot exist and the former may
accidentally pick up wrong file.
* harbour/contrib/gtqtc/gtqtc.cpp
* harbour/contrib/gtqtc/gtqtc.h
* harbour/contrib/gtqtc/moc_gtqtc.cpp
* harbour/contrib/gtqtc/tests/demoqtc.prg
! Just here and there.
* harbour/contrib/gtwvg/wvgwin.c
! fixed wrongly used & operator
* harbour/source/rtl/hbproces.c
* added TODO warning in OpenWatcom Linux builds
* harbour/make_gnu.sh
! fixed test_param() function definition - it has to be defined it's
before use
* harbour/include/hbexpra.c
* harbour/include/hbexprb.c
* harbour/source/common/expropt1.c
* harbour/source/rtl/round.c
* removed unnecessary <math.h>
* harbour/source/vm/hvm.c
* harbour/source/common/expropt2.c
* harbour/contrib/hbct/ctmath.h
* harbour/contrib/hbclipsm/num.c
* harbour/contrib/hbclipsm/numfloor.c
* harbour/contrib/hbclipsm/numceil.c
* use "hbmath.h" instead of <math.h> to avoid possible desynchronization
between used math libraries and header files
* harbour/source/pp/Makefile
! fixed real DOS compilation - replaced Windows only hack by wildcard
function usage
* harbour/config/dos/dir.cf
* removed intermediate sh call from executed commands
* harbour/source/vm/Makefile
* disabled HB_HVM_ALL in all Watcom builds - it works but the compilation
time is very huge so user who wants to use it should set envvar
HB_HVM_ALL=yes
* enabled HB_HVM_ALL for DJGPP builds
* source/pp/Makefile
! Fixed (almost) to delete include/hbverbld.h on clean.
Keeping this file there hid DOS build problems when using
Windows host.
; TOFIX: Filename in delete command for all platforms.
; TOFIX: HB_CHANGELOG value for DOS builds. It's currently
broken for MS-DOS hosts. To avoid these problems
we should use 'CHANGES' instead of 'ChangeLog'...
; TOFIX: I applied Przemek's patch to make_gnu.sh wrongly,
and have no idea how to fix it.
* contrib/hbxbp/xbpmenubar.prg
* contrib/hbxbp/xbpdialog.prg
* contrib/hbxbp/xbptoolbar.prg
* contrib/hbxbp/xbpparthandler.prg
* contrib/hbxbp/xbppushbutton.prg
! Removed rest of GTWVG header references.Copied a few
used #defines from it directly to the source with
TOFIX note.
* contrib/hbxbp/xbp.ch
* contrib/hbxbp/xbpwindow.prg
* contrib/hbxbp/xbppushbutton.prg
! Removed another GTWVG header reference. Copied a few
used #defines from it directly to the source with
TOFIX note.
! Removed hb_toout() commented function.
! Moved hb_tooutdebug() to xbp.ch which fixes unprotected
reference in one of the sources, creating unresolved
external on other platforms.
* contrib/hbxbp/xbpgeneric.prg
! Removed inline C with Windows-only debug code.
Please don't readd it as it makes it difficult to test
on other platforms.
See instruction how to make this in portable way in:
2009-06-13 20:29 UTC+0200 Viktor Szakats
* include/hbextern.ch
* source/vm/hashfunc.c
+ Added HB_HGETDEF( <hHash>, <xKey>[, <xDefault> ] ) -> <value>
This function will return <xDefault> when <xKey> isn't
found in the hash table. If <xDefault> isn't passed, it
will return NIL.
* utils/hbmk2/examples/xhgtk.hbc
* Updated hbmk2 make file xhgtk.
Also sent this and xhgtk.hbp to Rodrigo Moreno to consider
uploading them files to xhgtk repository.
It makes building the lib and using the lib very simple
on all platforms/compilers.
+ utils/hbmk2/examples/wxharbour.hbc
+ Added wxharbour hbmk2 config file.
Also sent to Teo Fonrouge to consider uploading it to
repository (and later make it easier to merge it with
ours).
* contrib/hbqt/Makefile
* contrib/gtqtc/Makefile
+ Added another alternative header path to detection list.
* harbour/contrib/hbxbp/appevent.ch
* harbour/contrib/hbxbp/tests/demoxbp.prg
* harbour/contrib/hbxbp/xbpdialog.prg
* harbour/contrib/hbxbp/xbpgeneric.prg
* harbour/contrib/hbxbp/xbpwindow.prg
! Added more constructs.
Now demoxbp.prg is compilable as is with both compilers
and we can exerience differences. Note, I have not implemented
kbeP_Close event and keyboard modifiers, so quiting the demo
is : Harbour - press 'Q' Xbase++ - press upper 'Q' or X button.
+ contrib/rddsql/sddmy/tests/hbmk.hbm
- contrib/rddsql/sddmy/tests/sddmy.hbc
+ contrib/rddsql/sddmy/sddmy.hbc
- contrib/rddsql/tests/rddsql.hbc
+ contrib/rddsql/sddodbc/tests/hbmk.hbm
- contrib/rddsql/sddodbc/tests/sddodbc.hbc
+ contrib/rddsql/sddodbc/sddodbc.hbc
+ contrib/rddsql/tests/hbmk.hbm
+ contrib/rddsql/rddsql.hbc
* Rearranged according to new .hbc/.hbm layout.
Layout:
in 'tests' where final app are residing, I've
added an automatically processed hbmk2 option
file: hbmk.hbm.
This file refers to the .hbc file belonging to
the SDD: sdd*.hbc, residing in the parent dir.
This file in turn refers to the .hbc file belonging to
the main RDDSQL: rddsql.hbc, resising in the parent dir.
so this is the reference chain when issuing
hbmk2 <test.prg> in one of the test dirs:
hbmk.hbm -> sdd*.hbc -> rddsql.hbc
* harbour/contrib/hbxbp/xbp.ch
* harbour/contrib/hbxbp/xbpdialog.prg
* harbour/contrib/hbxbp/xbpgeneric.prg
* harbour/contrib/hbxbp/xbpmenubar.prg
* harbour/contrib/hbxbp/xbpwindow.prg
* harbour/contrib/hbxbp/tests/demoxbp.prg
+ Implemented XbpMenuBar() | XbpMenu() classes.
+ Implemented :setColorFG() | :setColorBG() for all widgets.
/*
Almost all the features of XbpMenuBar() and XbpMenu()
classes are implemented with the exception of following:
TODO: XbpMenu*()
: beginMenu - callback
: endMenu - callback
: selectItem() - method
: setItem() - method
: insItem()[P] - method - Prompts-OK Submenu-NotOK
: XBPMENUBAR_MIA_FRAMED - 4th parameter of <aItem>
NOTE: I could not find how or with which method Xbase++ is
setting a menu item both with 'text' and 'bitmap'. It is
done via separate calls. So I have extended the <xCaption>
slot of <aItem> property ( whereever applicable ) as:
<cIcon>+"|"+cCaption which is parsed and then both objects
are inserted together as one option.
I do not know if Xbase++ supports text and background colors
in the menu's or not but in Harbour you can set them for
indivisual menu basis.
REQUEST: Please test the code both with Xbase++ and Harbour and
report on the list any differeces. I want to set these right
from the very begining.
NEXT: Working on XbpToolbar() class.
*/
- contrib/hbxbp/hbqt.ch
* contrib/hbqt/Makefile
+ contrib/hbqt/hbqt.ch
* Moved hbqt.ch under hbqt library.
* contrib/hbxbp/Makefile
- contrib/hbxbp/apigeneric.cpp
+ contrib/hbxbp/xbp_temp.prg
! Converted stub functions from C++ to .prg code.
Functionality unchanged.
! This also fixed <windows.h> reference in old .cpp file,
so now hbxbp can be built on non-Windows systems.
* contrib/hbwin/wapi_winbase.c
+ Added new API wrapper:
WAPI_OUTPUTDEBUGSTRING()
NOTE: If "outdebug" functionality is needed temporarly
to debug any Harbour code, above call can be used
and it's enough to add hbwin to the liblist. It's
very important however, to only enable these calls
in _local Windows environment_, firstly to not create
any Windows dependence for portable libs, secondly
to not create an unwanted hbwin lib dependence
even on Windows-only libs.
I suggest using something like this:
---
#if defined( __HB_OUTDEBUG__ )
#xtranslate HB_OUTDEBUG( [<x>] ) => WAPI_OUTPUTDEBUGSTRING( <x> )
#else
#xtranslate HB_OUTDEBUG( [<x>] ) =>
#endif
[...]
HB_OUTDEBUG( "my Windows-only trace call" )
---
And simply use 'set HB_USER_PRGFLAGS=-D__HB_OUTDEBUG__'
in local Windows environment to enable it.
Probably similar can be added for .c level.
******************************************************
Anyhow, I'd *strongly* suggest to use portable tracing
techniques like our existing HB_TRACE().
******************************************************
* source/rtl/achoice.prg
! Partially reverted this commit:
https://sourceforge.net/apps/trac/harbour-project/changeset/10605
After this change, activating DBU menus with all items disabled
(f.e. F7/F8) caused app hang.
This line:
nUserFunc := iif( nMode != AC_NOITEM,;
Do( xUserFunc, nMode, nPos, nPos - nAtTop ), NIL )
Was now changed back to this:
nUserFunc := Do( xUserFunc, nMode, nPos, nPos - nAtTop )
ac_test2.prg still seem to function fine after this, but
I'd kindly like to ask Vladislav Lavrecky to make tests
again, maybe we need another fix here.
* source/vm/evalhb.c
* Minor formatting.
* contrib/hbtip/client.prg
* Minor formatting.
! :ReadToFile() nMode param check.
* utils/hbmk2/hbmk2.prg
* Cleanup to variable name prefixes.
* contrib/xhb/Makefile
+ contrib/xhb/xthrow.prg
+ Added THROW() function for xhb compatibility.
This is written in Harbour, based on hbcompat.ch
and has Harbour license + exception.
+ contrib/xhb/xcstr.prg
+ contrib/xhb/xdbmodst.prg
* contrib/xhb/Makefile
+ Ported following old functions from xhb:
CSTRTOVAL(), STRINGTOLITERAL(), VALTOPRG(), PRGEXPTOVAL()
+ Ported following new functions from xhb:
VALTOARRAY(), VALTODATE(), VALTOHASH(), VALTOLOGICAL()
VALTONUMBER(), VALTOARRAY(), VALTOTYPE(),
DBMODIFYSTRUCTURE(), DBIMPORT(), DBMERGE()
(borrowed from xhb, work of Ron Pinkas)
* mpkg_deb.sh
! Applied patch to recent change to only accept
QT libs on or above version 4.5.0.
Patch submitted by Guy Roussin.
* utils/hbmk2/hbmk2.prg
+ Added ${hb_status} and ${hb_revision} macros which
will return Harbour version status and revision.
* contrib/rddads/ads1.c
! Fixed to allow EF_CANDEFAULT in EG_DATAWIDTH RTE when
trying to update field content.
* examples/dbu/dbu52.dif
* examples/dbu/dbu53.dif
! Fixed two more filename edit fields where uppercase was
forced. Thanks to Davor Siklic for the hint.
* examples/superlib/readme.txt
* examples/dbu/readme.txt
* examples/rl/readme.txt
+ Added workaround for hbformat needing quotes around wildcarded
input filenames on *nix systems.
* examples/dbu/dbu52.dif
* examples/dbu/dbu53.dif
! Added fix to not force uppercase in filename input GETs.
Thanks to Davor Siklic for the hint.
* examples/rl/rl.dif
! Added fix to not force uppercase in filename input GET.
* examples/superlib/readme.txt
+ Added separate hbformat line for *.c files.
NOTE: Indeed, passing both *.c and *.prg in command line doesn't work.
+ Added unpack instructions.
* examples/superlib/readme.txt
* examples/dbu/readme.txt
* examples/rl/readme.txt
* Added -l option to patch command line. This is needed because
hbformat trims line ending space which by default confuses
patch.
[ for dbu52.dif this caused three failed HUNKs in dbu.prg ]
% Merged patch options '-l -N -i' into '-lNi'.
* source/debug/dbgentry.c
* contrib/xhb/hbxml.c
* contrib/hbbtree/hb_btree.c
% hb_itemRelease( hb_itemReturn() ) -> hb_itemReturnRelease()
* contrib/xhb/hbxml.c
! Applied this fix from xhb:
2008-11-06 20:00 UTC+0100 Jose F. Gimenez <jfgimenez/at/wanadoo.es>
! 'Escape' characters, such & or " were not written correctly in node attribute values
! 'Escape' characters in the form &#NN; and &#xHH; were not allowed when reading