* contrib/hbtpathy/telepath.prg
% Using HB_MILLISECONDS() instead of SECONDS().
! TP_RECVTO(), TP_FLUSH() fixed to honor -1 timeout.
; Please review. No tests made besides compiling and reviewing.
* contrib/hbtpathy/telepath.prg
! Fixed "midnight bug" in several TP functions having timeout option
(it was wrong in all places).
Reported by AbeB.
; Please review/test, I didn't make _any_ testing whatsoever.
* harbour/src/rdd/dbfcdx/dbfcdx1.c
+ enabled automatic template order setting in Harbour SIXCDX RDD using
the same method as SIX3 SIXCDX RDD seems to use: by checking leading
character of key expression for: "sxChar(", "sxDate(", "sxNum(" and
"sxLog("
Warning: This code is enabled only for SIXCDX RDD and DBFCDX was not
modified.
* disabled RTE in SIXCDX when key add/del operation are executed
for non custom indexes and
* do not add keys with different type to template indexes in SIXCDX
RDD for strict SIX3 compatibility.
* harbour/doc/cmpopt.txt
+ added information about missing in Clipper expression optimization
in LOCAL, PRIVATE and PUBLIC variable declaration. Clipper optimize
only expressions used in STATIC declarations.
* utils/hbmk2/hbmk2.prg
+ Added -env:<envname>- support to delete envvars completely.
% Minor optimization in filter handling.
* contrib/hbwin/win_os.prg
* contrib/hbwin/win_tprn.prg
% Using HB_OSISWIN*() functions instead of WIN_OSISWIN*() ones.
* INSTALL
* external/Makefile
* contrib/Makefile
+ Added build option to exclude specific list of contrib/external
libraries using syntax: 'HB_CONTRIBLIBS=no lib1 lib2 libn'
* contrib/hbct/dummy.c
+ Indicated that some functions are implemented in
core (for C5.3 compatibility).
* contrib/hbwin/win_tbmp.prg
* Formatting.
- contrib/gtqtc
+ contrib/hbqt/gtqtc
* Moved under QT structure.
* contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/idefindreplace.prg
* contrib/hbide/resources/findinfiles.ui
+ Started implementation of "Find in Files" option.
Just to have a glimpse what components it will contain,
click on "Search" button along-side "Find" buttons.
It is not working but it may prompt you which feature
I missed to include. Just play.
* contrib/hbide/hbide.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideprojmanager.prg
* contrib/hbide/resources/projectproperties.ui
+ Implemented loading project from .hbp.
Look for the button on top of "Properties" dialog.
Please note that .hbp file is loaded with its whole
contentents and then is sectionized as per .hbi
protocol. So, the disadvantage is you loose the
free-format implementation of .hbp. It has to be
discovered how can we cover this aspect. Be careful
when building the project as existing .hbp will be
overwritten if you choose the "Project Location"
of the project pointing to same folder where .hbp
resides. Other than loosing "-skip" protocol of .hbp,
I am sure we are loosing nothing else, please test.
+ Implemention <Close Project> and <Remove Project> options
which can be invoked from context menu of project node.
* contrib/hbide/idemisc.prg
* contrib/hbide/ideprojmanager.prg
* contrib/hbxbp/hbpprocess.prg
! xMate project file .xhp loading more normalized.
I could build almost all of my projects created from it.
* utils/hbmk2/hbmk2.prg
+ -xhp= converter switch now recognizes some more types of file.
(lib, object and libpaths)
* contrib/hbnetio/utils/netiosrv.prg
* contrib/hbnetio/utils/netiocmd.prg
- Deleted call protection.
* contrib/hbwin/Makefile
* contrib/hbwin/hbwin.h
* contrib/hbwin/win_bmp.c
+ contrib/hbwin/win_bmpd.c
* contrib/hbwin/win_tprn.prg
+ contrib/hbwin/win_tbmp.prg
+ Moved WIN_BMP() class to separate source file.
+ Moved WIN_BITMAPDIMENSIONS() and its low-level support functions
to separate source file, to avoid creating unwanted
dependency to libpng.
+ Applied Xavi's patches to WIN_BMP().
* Restored nError parameter for ::IsSupported()
* ::LoadFile() now fills dimensions automatically.
* ::Draw() 3rd dim array parameter replaced with nError.
* contrib/hbwin/hbwapi.h
+ Added 'extern' keyword.
* utils/hbmk2/hbmk2.prg
+ Added -hbexe option. This is the default, but it may help hbide
and other tools to clear doubts about target type. (or to override
some previous -hbdyn/-hblib options for whatever reasons)
* contrib/hbide/ideprojmanager.prg
* "hbMK2.exe" -> "hbmk2 Executable"
.exe extension is Win/OS2/DOS specific.
* harbour/utils/hbmk2/hbmk2.prg
* use HB_EXTERN_BEGIN / HB_EXTERN_END macros instead of HB_EXTERN_C
in -xhb mode. It fixes the problem with -gui switch.
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.prg
! Fixed rare problem where options containing .hbp/.hbm/.clp
extesions have been mistaken as file recursions instead
of being processes as options. F.e. -runflag=test.hbp
! Updated help text about possible filter keywords.
! Fixed to use xharbour[mt] for dynlib name for mingw targets.
Added NOTE that in newer xhb version this is not true
anymore. Support for other targets also doesn't work,
because of non-existent or not consistent dynlib naming
scheme in xhb.
! Fixed to use 'mainstd' instead of 'hbmainstd', and not
to use 'hbmainwin' at all in -xhb mode for mingw targets.
For rest of targets the xhb solution is inconsistent, so
it's not currently possible give them any meaningful
support in hbmk2.
* contrib/hbxbp/Makefile
* contrib/hbxbp/xbpgeneric.prg
* contrib/hbxbp/xbpwindow.prg
+ contrib/hbxbp/hbpqtui.prg
- contrib/hbxbp/xbpqtuiloader.prg
% Renamed XbpQtUiLoader() class to HbpQtUI()
This is Harbour extension to Xbase++ class framework.
* contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/idefindreplace.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideprojmanager.prg
* contrib/hbide/idethemes.prg
* contrib/hbide/resources/projectproperties.ui
% Changed <Main Menu> prompts:
+ <Environments> in <Project>
- <Options> => <Setup>
- <Codecs> => <Setup> <Codecs>
! Separated the <Define Environments> dialog from <Project Properties>
And added a menu option in <Projects> main-menu prompt.
+ Implemented to load xMate's Project file (.xhp) when a new project
is created. Can be invoked via a push button on top-right corner of
<General> tab.
* contrib/hbide/idemisc.prg
* contrib/hbide/ideprojmanager.prg
* contrib/hbide/resources/hbide.env
- Dropped {shell} and {ext} placeholders from hbide.env.
These are now auto detected, thanks Viktor.
* contrib/hbnetio/utils/netiocmd.prg
! Fixed remote execution protection to work even when
the source was compiled from another directory.
; QUESTION: Is there a better way to make this kind of
protection? Current system will break if
the source filename of the caller happens to
change in the future.
* contrib/hbnetio/utils/netiosrv.prg
+ Show internal error and quit and if above self-protection
got broken for some reason.
* utils/hbmk2/hbmk2.prg
! Fixed entry function detection builting project in
different than current dir, possibly also in -inc mode.
[TOMERGE 2.0]
* ChangeLog
+ Added TOMERGE to /INSTALL doc modifications.
I had not marked any changes regarding .rpm generation, as
I can't oversee this packaging type, have minor experience
with it and got no user feedback whatsoever. If someone cares
to review/comment/fix, whole current INSTALL can go to 2.0.x.
[TOMERGE 2.0]
* harbour/contrib/hbwin/win_misc.c
! fixed buffer overflow in WIN_WIDETOANSI() caused by wrongly calculated
buffer size
* harbour/utils/hbmk2/hbmk2.prg
* updated names of xHarbour libraries - now it works in static mode
TOFIX: -xhb shared mode uses 'harbour' instead of 'xharbour' library
and 'hbmainstd' instead of 'mainstd'
TOFIX2: -gui switch in -xhb mode cause compile time error:
/tmp/hbmk_auhl2d.c:8: error: syntax error before "void"
* contrib/hbxbp/Makefile
* contrib/hbxbp/hbpprocess.prg
+ Implemented first HbpProcess() class ( Harbour Extension )
which is based on Qt's process management classes.
The usage concept is well defined in
/contrib/hbide/ideprojmanager.prg.
I will write the documentation at some later date.
* contrib/hbide/resources/projectproperties.ui
+ More components.
* contrib/hbide/projects/hbide.hbi
+ More info.
* contrib/hbide/hbide.ch
* contrib/hbide/hbide.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideobject.prg
* contrib/hbide/ideprojmanager.prg
* contrib/hbide/idesaveload.prg
! Updated to hold Development Environments concept introduced.
Read below.
- contrib/hbide/hbide.env
+ contrib/hbide/resources/hbide.env
+ The environment skeletons (working) on my machine connecting
hbIDE to hbMK2 engine. You can copy it and place it
in projects folder with suitable path amendments and
call it in hbIDE. This implementation facilitae to
generate any project on any compiler from within
single instance of hbIDE without leaving it.
Here are the implementation details:
FORMAT
======
[ BCC55 5.5.1 Command Line Tools ]
{hb_comp} bcc
{shell} cmd.exe
{ext} bat
#
{content} set HB_COMPILER=bcc
{content} set PATH=c:\harbour_dev;c:\harbour_dev\bcc\bin;C:\harbour_dev\harbour\bcc\bin;
[ MINGW 4.4.2 Windows ]
{hb_plat} win
{hb_comp} mingw
{content} set PATH=c:\mingw\bin;c:\qt\2009.03\qt\bin;
{content} set PATH=c:\harbour_dev;c:\harbour_dev\harbour\mingw\bin;%path%
{content} set HB_WITH_QT=c:\qt\2009.03\qt
...
{hb_plat} == set HB_ARCHITECTURE=
{hb_comp} == set HB_COMPILER=
{shell} == shell command to execute
{ext} == the extension of shell commands file
{content} == active contents placed in the shell commands file
Any lines with {contents} marker will form the
body of commands file. You can place remarks
preceded with # sign.
Currently {contents} are implemented, rest will take a couple of days.
PLACEHOLDER
===========
<Environments Tab> in <Project Properties> dialog but with separate
button to save this and its path information alone. Just avoided one
more dialog.
ACTIVATION
==========
Right-click on <Projects> node in "Projects" tree and select <Environments...>.
The selected environment will become the default for current session and will
be saved for next invocation until it is changed. Next build will respect
this setting.
EFFECTIVENESS
=============
Create a desktop icon pointing to hbIDE.exe and place the only parameter
poing to "hbide.env" file. You can copy it anywhere in your project tree,
amend it to suit your requirements, and just execute hbIDE on your desktop.
NOTE: you _MUST NOT_ set any compiler specific variables before invoking
hbIDE. Your working slate must be clean.
WHAT_IS_NOT_DONE
================
The bash commands and their shell invocation. But I know a lot of you
will implement that in no time.
* contrib/hbwin/Makefile
* contrib/hbwin/hbwin.hbc
* contrib/hbwin/win_bmp.c
* contrib/hbwin/win_tprn.prg
+ WIN_BITMAPDIMENSIONS(): Added PNG support.
(in fact the internal function can also be used to validate
.png files)
Please review/test.
+ Added libpng dependency for hbwin lib. libpng requires
zlib, so that's also added, but it's required by core
already anyway.
Please test cross-platform scenarios.
* WIN_BITMAPISSUPPORTED(): Now simply returns numeric
results, where zero is success. Same done to low level
function.
* contrib/hbwin/hbwin.ch
* contrib/hbwin/win_prn1.c
* contrib/hbwin/win_tprn.prg
+ Added constants for bitmap types.
* Minor cleanups to jpg/png handling.
* contrib/hbxbp/xbpdataref.prg
% Changed the way class is recognized to facilitate sub-classing.
Currently only for XbpSLE and XbpMLE.
* contrib/hbxbp/xbpwindow.prg
! Method :isDerivedFrom( cClassOrObject ) extended to match
the class name of oParent till it matches the given parameter.
I am wondering if this functionality be included in class
engine itself. Przemek ?
* contrib/hbwin/win_prn1.c
+ Added support for printing RAW compressed formats JPEG and PNG BitMaps.
+ Added new PRGs functions: win_TypeBitMap() and win_CheckPrnDrvFormat()
Example of use in the class win_BMP()
* Changes in WIN_LOADBITMAPFILE, WIN_DRAWBITMAP to support new formats.
* contrib/hbwin/win_tprn.prg
+ Extended the class win_BMP() to allow printing compressed formats JPEG and PNG
if the printer driver allows.
+ Added method CheckPrnDrvFormat( oPrn, @cErrMsg ) for check printer driver.
+ New VAR INT Type. Type of BitMap: 1 == BM, 2 == JPEG, 3 == PNG
+ New VAR array DimXY. Original Image Dimensions X Y in pixels.
* New parameter aDimXY in LoadFile( cFileName, aDimXY )
* New parameter aDimXY in Draw( oPrn, aRectangle, aDimXY )
to introduce the original image dimensions in pixels X Y.
Some printer drivers may require the insertion of the original image dimensions
for processing, others read from the data source and by default only need have
aDimXY := { 1, 1 }
* Use DimXY VAR of win_BMP() in method DrawBitMap( oBmp ) of win_PRN()
* src/compiler/hbusage.c
+ Added author ID mail
* src/vm/estack.c
! Replaced printf() calls with hb_snprintf() and hb_conOutErr()
calls. This will avoid reported problems where MinGW binary
build refers to internal printf function. As a rule we should
never use printf() in Harbour code. There are still a few
commented ones in hbrtl.
[TOMERGE 2.0]
* src/vm/hvm.c
! Replaced printf() (commented) call with HB_TRACE().
[TOMERGE 2.0]
* utils/hbmk2/hbmk2.prg
! Fixed -build option not being recognized.
! Fixed -build option not being ignored in second option
parsing loop.
! Fixed -lang= option not being ignored in second option
parsing loop.
[TOMERGE 2.0]
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
+ Extended help text for -head option.
* contrib/hbwin/win_prn1.c
% WIN_LOADBITMAPFILE() optimized to use hb_retclen_buffer().
! WIN_LOADBITMAPFILE() fixed to return empty string instead
of NIL in case of file read failure.
* examples/rddado/adordd.ch
+ Added new 'adCmd*' constants. From xhb.
(2010-01-20 20:53 UTC+0100 Miguel Angel Marchuet)
* Formatting.