* contrib/hbwin/wapi_winbase.c
* Eliminated hb_parclen() call in WAPI_FORMATMESSAGE() function.
* contrib/hbwin/win_regc.c
* WIN_REGSETVALUEEX(): Adjusted casting to not drop const.
! WIN_REGSETVALUEEX(): Added support for UNICODE builds when
string types (non-binary data) are passed.
* contrib/hbwin/tests/testreg.prg
+ Extended with basic test for above.
* contrib/hbqt/Makefile
* contrib/hbqt/detect.mk
+ contrib/hbqt/moc.mk
* contrib/hbqt/hbqts/Makefile
* contrib/hbqt/qtgui/qtguis/Makefile
* contrib/hbqt/qtgui/Makefile
* contrib/hbqt/qtcore/qtcores/Makefile
* contrib/hbqt/qtcore/Makefile
* contrib/hbqt/qtnetwork/qtnetworks/Makefile
* contrib/hbqt/qtnetwork/Makefile
+ Moved 'moc' build logic to separate file.
+ Added support for MOC_HEADERS in all sub-libs.
This allows to avoid hacks to place every custom
created component in central lib. (It probably allows
to avoid central lib altogether.)
! Fixed broken static build after recent changes.
(I've readded central filelist.mk to avoid
redundancy, but the file isn't an automatically
generated one anymore)
% Optimized build to not provide all subsystem header
dirs for each QT sub-libs, only those which are needed.
Now QtCore header dir is passed to all components,
but QtGui and QtNetwork is passed only to these
subcomponents.
Central hbqt lib gets all dirs, but hopefully this
will be cleaned eventually.
% Cleaned to not use /Qt include dir. It's apparently
not needed.
* contrib/hbqt/qth/QObject.qth
* contrib/hbqt/qtcore/QObject.cpp
! Core component was referring to a GUI one, and hbqt_par_QWidget()
was used to retieve a QObject inside QObject wrappers.
Please fix me if it was intentional, but it didn't look right and
came out after cleaning header dir usage.
* contrib/hbide/hbide.hbp
+ Added MSVC link switched sent by Andi to make QT 4.6.0
libs to default Harbour build.
* include/hbwinuni.h
+ Added HB_ARRAYSETSTR*(). Based on Przemek's post.
* contrib/hbwin/wce_simc.c
* contrib/hbwin/wce_smsc.c
* contrib/hbwin/win_prn1.c
* contrib/hbwin/win_prn2.c
* contrib/hbwin/win_regc.c
+ Using new UNICODE parameter passing macros instead of HB_TCHAR*() ones.
* Minor rework WIN_TEXTOUT() and WIN_GETTEXTSIZE() to not use hb_parclen()
and protect some more against wrong length parameter.
; TOFIX: HB_ARRAYSETSTR() usage crashes (tested in non-UNICODE with testprn3)
I didn't want to undo the whole thing, but can't find the err either.
; TOFIX: hb_parclen() usage.
; TOFIX: HB_ARRAYSETSTR() with NULL string parameter.
; TOFIX: HB_PARSTRDEF() to really default to empty string for non-string params.
; TODO: Remaining HB_TCHAR_*() usages.
; TODO: Peer-review what I did.
* contrib/hbwin/wapi_winbase.c
! Fixed for WinCE after recent addition of new wrappers.
This means exclusion of WAPI_WAITFORSINGLEOBJECTEX() and
WAPI_WAITFORMULTIPLEOBJECTSEX() for this platform.
! Minor fix in size of allocated buffer in WAPI_FORMATMESSAGE().
(buffer was too large in non-UNICODE).
* include/hbextern.ch
+ Added HB_THREADONCEINIT().
* contrib/hbqt/hbqt.ch
* contrib/hbxbp/xbp.ch
! Moved XBP specific macro to HBXBP header.
* contrib/hbqt/tests/demoqt.prg
! Deleted no more needed init calls.
* contrib/hbqt/hbqt_events.cpp
+ Added TOFIX about GC collected pointer stored in low level
structure. (source of GPF).
* contrib/hbwin/win_misc.c
* contrib/hbwin/wapi_winbase.c
* contrib/hbwin/wapi_winuser.c
* contrib/hbwin/win_regc.c
* contrib/hbwin/win_prn1.c
* contrib/hbwin/win_prn3.c
* contrib/hbwin/wapi_shellapi.c
* contrib/hbwin/legacyco.c
- Deleted now unnecessary '( LP[C]TSTR )' casts.
+ Cleaned const usage in WIN_PRINTERSETDEFAULT().
F.e. OpenPrinter() has apparently wrong winapi declaration,
so a cast must have been added.
; TOFIX: CreateProcessW() second parameter has to be a read/write
buffer. Przemek, do you have an idea how to solve that
the cleanest way?
(for now I kept a cast, assuming that a buffer is
created by Harbour conversion API, but that's not
something it guarantees in the future.)
* harbour/include/hbapiitm.h
* harbour/src/vm/classes.c
* added new internal HVM macro
* harbour/src/vm/thread.c
+ added new function
hb_threadOnceInit( @<item> <value> ) -> <lInitialized>
It assigns <value> to <item> if <item> is NIL in MT safe way so it's
assigned only once. It's reduced but faster version of hb_threadOnce()
* harbour/include/hbapicdp.h
* define HB_WCHAR as wchar_t on Windows platforms for compilers which
refuse to make conversions between types using the same base type.
* harbour/contrib/hbwin/win_dll.c
* code cleanup
* contrib/hbqt/qth/QAbstractItemModel.qth
* contrib/hbqt/qth/QTableView.qth
* contrib/hbqt/hbqt_events.cpp
* contrib/hbqt/hbqt_slots.cpp
* contrib/hbqt/hbqt_hbqmainwindow.cpp
+ Added TOFIX (also one QUESTION) to these code parts.
All of them are potential leak or GPF generator issues.
Could someone take a look at these?
* contrib/hbqt/Makefile
- contrib/hbqt/hbqt_hbdrawingarea.h
- contrib/hbqt/hbqt_hbdrawingarea.cpp
- Deleted unused custom class.
* contrib/hbqt/qtgui/QTableView.cpp
* contrib/hbqt/qtcore/QAbstractItemModel.cpp
* Regenerated.
* contrib/hbqt/hbqt_events.cpp
* contrib/hbqt/hbqt_slots.cpp
! Fixed events/slots handling to make sure the objects
always exist on access.
% This also made explicit initialization from .prg
code unnecessary, so these two functions got deleted:
QT_SETEVENTFILTER(), QT_SETEVENTSLOTS()
! Fixed events/slots handling to reset thread local object
pointer to NULL after destruction.
* contrib/hbxbp/xbpsle.prg
* contrib/hbxbp/xbplistbox.prg
* contrib/hbxbp/xbpwindow.prg
* contrib/hbxbp/xbptreeview.prg
* contrib/hbxbp/xbpdialog.prg
* contrib/hbxbp/xbpspinbutton.prg
* contrib/hbxbp/xbpgeneric.prg
% Simple wrapper named HBXBP_SETEVENTFILTER() deleted and
replaced with QT_GETEVENTFILTER() calls.
(name still subject to change)
; NOTE: 1) In demoxbp MT mode build, the second dialog behaves
strangely. It updates the screen slowly and not at all.
Pritpal, please check it to make sure not some
recent change broke it.
2) Forgot to mention in prev entry, but removing
HBQMainWindow() mutex altogether didn't cause any
change/loss of functionality in my tests, so my
question is: Is it really needed?
* contrib/hbqt/hbqt_hbqmainwindow.cpp
* contrib/hbxbp/xbpgeneric.prg
+ Replaced HB_MUTEXCREATE() and HB_MUTEXDESTROY() with
automatic initialization and deinitialization.
; NOTE: From now on HBQT needs to be requested by apps
willing to use HBQT, with:
REQUEST HB_QT
This will ensure in the future that all init and
deinit procedure are done correctly. It also makes it
safe to use QT even from INIT and EXIT PROCECUREs.
* contrib/hbqt/tests/demoqt.prg
* contrib/hbxbp/tests/demoxbp.prg
* contrib/hbide/hbide.prg
+ Added REQUEST HB_QT.
* harbour/include/hbatomic.h
* removed 'static inline' from OpenWatcom ASM functions defined
by '#pragma aux ...' to make OpenWatcom < 1.8 happy.
Version 1.8 ignores 'static inline' attributes in such declarations.
* harbour/config/dos/watcom.mk
* harbour/utils/hbmk2/hbmk2.prg
* switched from DOS/4GW to DOS/32A extender. It's faster what is
noticeable also in final Harbour binaries, does not have DOS4G
command line limitations and has nice tools which allow to easy
set different runtime parameters (ss.exe) or compress final
executable (sc.exe)
BTW people having problem with maximum command line size in
OpenWatcom tools can replace DOS/4GW with DOS/32A in this tools
It can be made also globally by coping dos32a.exe to dos4gw.exe.
NOTE: I've found why DOS Harbour OpenWatcom application created
in my Linux box were not working. Just simply the directory
with DOS extender setup files was not in PATH.
Creating DOS OpenWatcom applications in other systems (i.e.
Linux or OS2) do not forget to add directory with DOS binaries
'%WATCOM%\binw' to PATH after directory with platform native
OpenWatcom binaries '%WATCOM%\bin*' or copy DOS extender
(dos32a.exe) to one of PATH directories.
* harbour/config/dos/watcom.mk
* added workaround for not included automatically by linker CLIB
library when Harbour is compiler in pure C mode. I hope it's only
temporary hack which we can remove in the future. I haven't added
it to hbmk2 so linking DOS applications using hbmk2 user will have
to add -lclib3r to hbmk2 parameters.
* harbour/config/common/watcom.mk
* disable DOS/32A banner messages
* contrib/hbqt/Makefile
+ Added generic support to MOC compile headers.
; If this works out well, it makes it possible to use granular
(non-monolythic) headers for 'Q_OBJECT' classes.
It's also possible to move this logic into sub-libs.
This may also mean that some hacks which were currently
employed can be solved cleanly.
Please test/review.
* contrib/hbqt/hbqt_slots.h
+ contrib/hbqt/hbqt_hbqtableview.h
* contrib/hbqt/hbqt_hbqtableview.cpp
* contrib/hbqt/qth/QTableView.qth
* contrib/hbqt/hbqt_hbdbfmodel.cpp
* contrib/hbqt/qth/QAbstractItemModel.qth
+ contrib/hbqt/hbqt_hbdrawingarea.h
* contrib/hbqt/hbqt_hbdrawingarea.cpp
+ contrib/hbqt/hbqt_hbqmainwindow.h
* contrib/hbqt/hbqt_hbqmainwindow.cpp
+ contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
* contrib/hbqt/qth/QSyntaxHighlighter.qth
+ contrib/hbqt/hbqt_events.h
* contrib/hbqt/hbqt_events.cpp
* Split monolithic hbqt_slots.h header to distinct
class headers.
* contrib/hbqt/generator/hbqtgen.prg
- contrib/hbqt/filelist.mk
* contrib/hbqt/Makefile
* Changed to not generate central filelist.mk.
(no dynamic files in central lib)
* config/rules.mk
- Deleted .l reference.
* contrib/hbqt/qtgui/QSyntaxHighlighter.cpp
* contrib/hbqt/qtgui/QTableView.cpp
* contrib/hbqt/qtcore/QAbstractItemModel.cpp
* Regenerated.
* contrib/hbqt/Makefile
* contrib/hbqt/generator/hbqtgen.prg
+ Moved static source files from filelist.mk to Makefile.
* contrib/hbqt/Makefile
* contrib/hbqt/hbqt_slots.cpp
+ contrib/hbqt/hbqt_events.cpp
+ Moved event filter related stuff to separate file.
% Cleaned lots of unnecessary QT headers includes.
* contrib/hbqt/hbqt_slots.cpp
* contrib/hbxbp/xbpgeneric.prg
* Rename: QT_QEVENTFILTER() -> QT_GETEVENTFILTER().
There will be some more renames to cleanup prefix usage.
* contrib/hbwin/win_regc.c
* Minor formatting.
* contrib/hbqt/generator/hbqtgen.prg
% Changed to only save files which have indeed changed
(to avoid unnecessary rebuilds)
* contrib/hbqt/Makefile
* contrib/hbqt/hbqt.h
* contrib/hbqt/hbqt_slots.h
- contrib/hbqt/hbqt_hbqtdbfmodel.cpp
+ contrib/hbqt/hbqt_hbdbfmodel.cpp
- contrib/hbqt/hbqt_hbqtsyntaxhighlighter.cpp
+ contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
- contrib/hbqt/hbqt_hbqtmymainwindow.cpp
+ contrib/hbqt/hbqt_hbqmainwindow.cpp
- contrib/hbqt/hbqt_hbqtmydrawingarea.cpp
+ contrib/hbqt/hbqt_hbdrawingarea.cpp
- contrib/hbqt/hbqt_hbqttableview.cpp
+ contrib/hbqt/hbqt_hbqtableview.cpp
* contrib/hbqt/qth/QAbstractItemModel.qth
* contrib/hbqt/qth/QSyntaxHighlighter.qth
* contrib/hbqt/qth/QTableView.qth
* Following class renames done:
- HbSyntaxHighlighter -> HBQSyntaxHighlighter (HBIDE)
- HbDbfModel -> HBDbfModel (HBXBP)
- MyDrawingArea -> HBDrawingArea (UNUSED)
- MyMainWindow -> HBQMainWindow
- HbTableView -> HBQTableView (HBXBP)
; TOFIX: These classes seem to be the problematic parts of HBQT.
They violate layering, there are naming inconsistencies
(standard QT .prg level class internally refers to inherited
special Harbour class, they implement HBXBP and IDE functionality
embedded in HBQT to hack around the rule to not place .c
code in HBXBP/HBIDE, they are not using GC collected pointers,
they require mutexes which initialization isn't properly
solved, one class is nowhere used. etcect)
* contrib/hbxbp/xbpbrowse.prg
* contrib/hbxbp/xbpwindow.prg
* contrib/hbxbp/xbpdialog.prg
* Renames applied to HBXBP code.
* contrib/hbqt/qtgui/TQTableView.prg
* contrib/hbqt/qtgui/QSyntaxHighlighter.cpp
* contrib/hbqt/qtgui/QTableView.cpp
* contrib/hbqt/qtcore/TQAbstractItemModel.prg
* contrib/hbqt/qtcore/QAbstractItemModel.cpp
* Regenerated after .qth changes.
* contrib/hbqt/hbqt_destruct.cpp
* contrib/hbqt/hbqt_base.cpp
* Moved some non-destructor related stuff to hbqt_base.cpp.
- Deleted hbqt_debug() low level call.
(this temporarily break build, pls be patient)
* C level hbqt_getmemused() is now always defined in Windows builds.
* Harbour level HBQT_GETMEMUSED() now always works (not just
special debug builds).
* contrib/hbqt/hbqt_hbqtdbfmodel.cpp
* contrib/hbqt/hbqt_hbqttableview.cpp
* contrib/hbqt/hbqt_hbqtmymainwindow.cpp
* contrib/hbqt/hbqt_slots.cpp
* Replaced hbqt_debug() with HB_TRACE() calls.
; NOTE: IMPORTANT: -D__HB_DEBUG__ works no more. Now for debug builds,
you have to use the standard Harbour method:
HB_USER_CFLAGS=-DHB_TR_LEVEL_DEBUG
It's enough to enable this setting when build hbqt lib, to
get HBQT trace calls.
* contrib/hbqt/hbqt.h
! Added missing 'extern' keywords.
! Added missing 'extern int hbqt_getmemused( void )'.
* ChangeLog
- contrib/hbtip/ChangeLog
* Old local ChangeLog merged into the central one.
- examples/hbvpdf/ChangeLog
+ examples/hbvpdf/readme.txt
* Renamed.
* harbour/contrib/xhb/fparse.c
! fixed few GPF traps and memory leaks
% added some minor optimization
I strongly suggest to use hb_aTokens() and hb_token*() functions.
They have more options and for really large data many times
(even hundreds times) faster.
* contrib/hbgd/gdwrp.c
* Formatting (deleted unnecessary returns and blocks).
* ChangeLog
- contrib/hbgd/ChangeLog
* Merged local ChangeLog into central one.
* harbour/include/Makefile
! added missing newly added header files - thanks to Itamar for
information about the problem
* harbour/include/hbmsgreg.h
! fixed typo - thanks to Toninho for information about the problem
* src/common/hbtrace.c
+ Added support for HB_TR_WINOUT envvar (on Windows platform-only)
to enable pushing trace output via OutputDebugString() calls.
Use this before running an app:
set HB_TR_WINOUT=yes
(anything non-empty would work, not just 'yes')
* src/rtl/trace.c
+ HB_TRACESTRING(): Added support to accept multiple parameters,
it also handles non-string parameters, just like OUTSTD()/QOUT().
% Minor optimization to HB_TRACE() call.
; NOTE: Above two changes make it unnecessary to use custom made
debug/trace solutions inside each contrib, and it also makes
it unnecessary to use xhb lib for other proprietary trace solutions.
* src/rtl/console.c
* Variable scope optimization.
* contrib/hbgd/gdwrp.c
* Minor formatting.
* contrib/hbwin/olecore.c
* Changed to use HB_SIZE instead of ULONG.
; Please review me, I wouldn't like to break OLE code.
; Only one place remains in hbwin which uses ULONG, as return
value of hb_fsSeek(). In this case we need to think about it
some more.
* contrib/hbqt/hbqt.ch
* Minor formatting.
* contrib/hbwin/win_regc.c
* contrib/hbwin/win_prn3.c
* contrib/hbwin/win_dll.c
+ Using new UNICODE parameter passing macros instead of HB_TCHAR*() ones.
; Please review me. The transition is not yet full, as there were
some problematic cases, which I've left as is.
! Added UNICODE support for WIN_REGQUERYVALUEEX()'s string return values.
* contrib/hbwin/tests/testreg.prg
+ Added one more test call.
! Fixed to not use legacy registry call.
* harbour/include/hbapilng.h
+ harbour/include/hbmsgreg.h
+ added common for all Harbour lang modules (msg*.c) header file
with initialization code
* harbour/src/lang/msgbe866.c
* harbour/src/lang/msgbewin.c
* harbour/src/lang/msgbg866.c
* harbour/src/lang/msgbgiso.c
* harbour/src/lang/msgbgmik.c
* harbour/src/lang/msgbgwin.c
* harbour/src/lang/msgca.c
* harbour/src/lang/msgcs852.c
* harbour/src/lang/msgcsiso.c
* harbour/src/lang/msgcskam.c
* harbour/src/lang/msgcswin.c
* harbour/src/lang/msgde.c
* harbour/src/lang/msgdewin.c
* harbour/src/lang/msgel.c
* harbour/src/lang/msgelwin.c
* harbour/src/lang/msgeo.c
* harbour/src/lang/msges.c
* harbour/src/lang/msgeswin.c
* harbour/src/lang/msgeu.c
* harbour/src/lang/msgfr.c
* harbour/src/lang/msggl.c
* harbour/src/lang/msghe862.c
* harbour/src/lang/msghewin.c
* harbour/src/lang/msghr437.c
* harbour/src/lang/msghr852.c
* harbour/src/lang/msghriso.c
* harbour/src/lang/msghrwin.c
* harbour/src/lang/msghu852.c
* harbour/src/lang/msghucwi.c
* harbour/src/lang/msghuiso.c
* harbour/src/lang/msghuwin.c
* harbour/src/lang/msgid.c
* harbour/src/lang/msgis850.c
* harbour/src/lang/msgit.c
* harbour/src/lang/msgko.c
* harbour/src/lang/msgltwin.c
* harbour/src/lang/msgnl.c
* harbour/src/lang/msgpl852.c
* harbour/src/lang/msgpliso.c
* harbour/src/lang/msgplmaz.c
* harbour/src/lang/msgplwin.c
* harbour/src/lang/msgpt.c
* harbour/src/lang/msgptiso.c
* harbour/src/lang/msgro.c
* harbour/src/lang/msgru866.c
* harbour/src/lang/msgrukoi.c
* harbour/src/lang/msgruwin.c
* harbour/src/lang/msgsk852.c
* harbour/src/lang/msgskiso.c
* harbour/src/lang/msgskkam.c
* harbour/src/lang/msgskwin.c
* harbour/src/lang/msgsl437.c
* harbour/src/lang/msgsl852.c
* harbour/src/lang/msgsliso.c
* harbour/src/lang/msgslwin.c
* harbour/src/lang/msgsr852.c
* harbour/src/lang/msgsriso.c
* harbour/src/lang/msgsrwin.c
* harbour/src/lang/msg_tpl.c
* harbour/src/lang/msgtr857.c
* harbour/src/lang/msgtrwin.c
* harbour/src/lang/msgua866.c
* harbour/src/lang/msguados.c
* harbour/src/lang/msguakoi.c
* harbour/src/lang/msguawin.c
* harbour/src/lang/msgzhb5.c
* harbour/src/lang/msgzhgb.c
* modified to use initialization code defined in common for all
lang modules header file.
* harbour/contrib/gtwvg/wvggui.c
* harbour/contrib/hbqt/qtgui/QApplication.cpp
* harbour/contrib/hbqt/qth/QApplication.qth
* use default GT startup cvode (#include "hbgtreg.h")
* harbour/include/hbinit.h
+ harbour/include/hbiniseg.h
* replaced HB_MSC_STARTUP code with more universal HB_DATASEG_STARTUP
* moved HB_DATASEG_STARTUP code to separate header file to reduce
modifications in other files when this code has to be changed or
extended
+ added support for startup code in OpenWatcom C builds. Now we can
create OpenWatcom Harbour binaries without forcing C++ mode.
I've tested Linux and Win32 builds and they works correctly.
Probably similar solution can be used also for other C compilers
which do not have native interface to define starup code.
* harbour/src/compiler/genc.c
* harbour/utils/hbmk2/hbmk2.prg
* harbour/include/hbcdpreg.h
* harbour/include/hbgtreg.h
* harbour/src/rtl/hbregex.c
* harbour/src/rdd/dbf1.c
* harbour/src/rdd/dbfcdx/dbfcdx1.c
* harbour/src/rdd/dbffpt/dbffpt1.c
* harbour/src/rdd/dbfnsx/dbfnsx1.c
* harbour/src/rdd/dbfntx/dbfntx1.c
* harbour/src/rdd/delim1.c
* harbour/src/rdd/sdf1.c
* harbour/src/pp/pplib3.c
* harbour/contrib/rddads/ads1.c
* harbour/contrib/rddads/adsx.c
* harbour/contrib/rddsql/sddfb/fbirddd.c
* harbour/contrib/rddsql/sddmy/mysqldd.c
* harbour/contrib/rddsql/sddodbc/odbcdd.c
* harbour/contrib/rddsql/sddpg/pgsqldd.c
* harbour/contrib/rddsql/sqlbase.c
* harbour/contrib/rddsql/sqlmix.c
* harbour/contrib/hbbmcdx/bmdbfcdx.c
* harbour/contrib/hbmemio/memio.c
* harbour/contrib/hbnetio/netiocli.c
* harbour/contrib/hbbtree/hb_btree.c
* harbour/contrib/hbwin/olecore.c
* harbour/contrib/hbwin/win_com.c
* modified to use HB_DATASEG_STARTUP instead of HB_MSC_STARTUP
Now HB_MSC_STARTUP is local macro used only in hbinit.h.
Please make MSVC build tests.
* harbour/contrib/hbmemio/memio.c
! declare s_fileFuncs structure as static
* removed unnecessary code to directly register HB_MEMIO symbol.
Mindaugas if you need it for some reasons then I can reactivate it
but I would like to know why it's necessary for you.
* harbour/src/vm/task.c
! added missing {}
* harbour/src/vm/fm.c
* locally disabled "unreachable code" warnings for dlmalloc.c
compilation by OpenWatcom in pure C mode
* harbour/src/rtl/hbzlibgz.c
* minor code cleanup
* harbour/src/rtl/filesys.c
* pacified OS/2 warnings
* harbour/contrib/hbcairo/core.c
! fixed casting for C++ builds
* harbour/contrib/hbwin/wapi_winbase.c
! fixed casting
* harbour/src/Makefile
* changed the order of compiled libraries to improve little bit
the speed in concurrent (-j<N>) builds
* include/hbwinuni.h
+ Added HB_PARSTRDEF() macro. So far the same as HB_PARSTR(), but
it's supposed to mark places where hb_parcx() was used (where
WinAPI expects non-optional string parameter).
* contrib/hbwin/wapi_winbase.c
* contrib/hbwin/wapi_winuser.c
* contrib/hbwin/wapi_shellapi.c
* contrib/hbwin/legacyco.c
+ Using new UNICODE parameter passing macros instead of HB_TCHAR*() ones.
; NOTE: I'm unsure how to apply the same to wapi_commctrl.c, could anyone help?
Here the string is assigned to win structure and passed to winapi,
which may mean that string space should be kept there after
returning from function.
* contrib/hbxbp/xbpgeneric.prg
! Using HB_SYMBOL_UNUSED() to mark unused parameters, instead of
local solution.
% Minor optimizations.
* MSGBOX() changed to not display all text in bold.
+ Changed <BR> to <br /> in MSGBOX().
* contrib/hbide/hbide.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/projects/hbide.hbi
* contrib/hbqt/hbqt_slots.cpp
* contrib/hbqt/hbqt_slots.h
* contrib/hbxbp/xbpmle.prg
+ Implemented project building.
Right click on <Harbour-Qt IDE> project tree node and select
<Save and Build> or <Save and Build (Qt)> context menu options.
I am looking for Qt like process management in Harbour.
I mean, I need callback when process is running.
* src/common/hbver.c
! Fixed determining the patch level of MSVC compiler on
or above version 2005.
Adapted fix from xhb / Andi Jahja.
* contrib/hbqt/hbqt_slots.cpp
* Little renaming.
* contrib/hbqt/hbqt_slots.cpp
* Further formatting and some variables renamed.
Again sorry for using such long lines, but - at least to me -
it reveals the slot logic so clearly.
In fact from this point it's even visible how this could
be made modular.