* include/hbextern.ch
+ Added new trace functions.
; TODO: Use these new functions in HBQT, HBXBP.
* contrib/hbwin/win_dll.c
! Fix for OpenWatcom. Seems to require LPVOID in asm code.
* contrib/hbqt/hbqt_destruct.cpp
* Minor formatting. ('return( x )' -> 'return x', return is not a function)
+ Added 'TODO:' to todo text.
+ Added TOFIX to hb_parptr() usage. Without reference counting this is
still dangerous.
Probably some mechanisms would be needed to count references when
attaching one GC collected pointer to another object, and decrement
references when disconnecting or deleting holder object. Without
this, there will always be a possibility that some objects refer
to deleted objects. Unless I'm missing some logic which already that.
Probably "delayed release" is the mechanism which is trying to
solve that problem at the moment.
* contrib/hbwin/wapi_winbase_mutex.c
* Minor formatting (superfluous brackets)
* harbour/include/Makefile
+ harbour/include/hbtrace.ch
* harbour/include/hbtrace.h
* harbour/src/rtl/trace.c
* harbour/src/common/hbtrace.c
! fixed hb_tracelevel() C function to change trace filter instead of
last message level. It also fixed .prg function HB_TRACELEVEL().
+ added new C function:
void hb_tracelog( int level, const char * file, int line,
const char * proc, const char * fmt, ... )
+ added new .prg functions:
hb_traceLogLevel( <nNewLevel> ) -> <nPrevLevel>
hb_traceLog( <xMsgItems,...> ) // generate message at
// hb_traceLogLevel()
hb_traceLogAt( <nLevel>, <msg,...> )
+ added support for HB_TRACE() messages in .prg code with the same
functionality as in C code:
HB_TRACE( <level>, <msg,...> )
HB_TRACE() code if filtered at compile time by HB_TR_LEVEL_* macros
i.e. -DHB_TR_LEVEL_INFO used as harbour compiler parameter
and at runtime by HB_TR_LEVEL=<level> envvar (set HB_TR_LEVEL=DEBUG)
or by hb_traceLevel( <nLevel> ) function (hb_traceLevel( HB_TR_DEBUG ))
Default compile time and runtime trace level for C and .prg code
is HB_TR_WARNING.
* contrib/hbqt/hbqt_hbqtableview.cpp
% Fixed one TOFIX.
* contrib/hbqt/hbqt_destruct.cpp
% Fixed one TOFIX.
* contrib/hbqt/hbqt_events.cpp
% Fixed one TOFIX.
* contrib/hbqt/hbqt_slots.cpp
% Fixed one TOFIX.
Please review me, though everything is working fine.
* contrib/hbqt/hbqt_slots.cpp
* contrib/hbqt/hbqt_slots.h
+ Added more signal/slots.
* contrib/hbide/hbide.ch
* contrib/hbide/hbide.prg
! Improved Find/Replace functionality. Now it is usable feature
though I have to tweak it a little more. The current functionality is as:
CTRL+F or "Find" icon => Opens <Find-Replace> dialog.
CTRL+N finds next occurance of current "Find" string - always
shown in one of the panels of status-bar.
This invocation is equivalent to if you click <Find> pushbutton
of the <Find-Replace> dialog.
CTRL+R Replaces the current selection with current "Replace" string
previously entered or selected with <Replace> push button.
This invocation is equivalent to if you click <Replace> pushbutton
of the <Find-Replace> dialog.
History of <Find>/<Replace> strings is maintained and is populated
in drop-down list of respective combo-boxes.
TODO: <Global> and <Replace without prompting> features.
* contrib/hbwin/tests/testdll.prg
* contrib/hbwin/win_dll.c
+ Added support for passing parameters by reference in win64 mode.
+ Added logic to detect UNICODE mode. Enabled only in win64.
! One regression fixed in previous version (in non-win64 mode).
! Fixed default return to be the same in win64 as in non-win64 mode.
; TOFIX: Strings passed by reference seems to be wrong.
; TOFIX: UNICODE support for string passed by reference doesn't work.
; Please test/review and contribute to this, current state is pretty
much the extent I'm willing and capable of implementing this.
* contrib/hbwin/win_dll.c
+ Added support for Win64 dll calls to functions with no
parameter.
+ Added internal support to call UNICODE functions in Win64 mode.
+ Added support for CP conversion for non-UNICODE functions in Win64 mode.
(for now this is the only active mode).
! DllCall() made static function.
* Renamed some constants, functions and variables.
; TODO: Add logic to enable UNICODE mode when needed.
* contrib/hbwin/Makefile
+ contrib/hbwin/wapi_winbase_mutex.c
+ Added Windows mutex wrappers.
Contributed by Xavi <jarabal/at/gmail.com>.
! Added SVN header, some minor formatting.
* contrib/hbwin/win_dll.c
+ Added portable Win64 support (both x86_64 and IA64 and anything else).
; TODO: double parameters and return value.
; TODO: parameters passed by reference.
* Renamed some structure to not look like Windows ones.
* Using HB_BOOL.
! Fixed to return NIL when CTYPE_VOID is requested. (was 0 before)
* contrib/hbwin/win_dll.c
* Little cleanup to FARPROC casting. Now cast is done at Harbour
interface points, not internally. It now generates more
warnings. If someone has a fix how to suppress FAPROC to
void * cast warnings, pls tell.
* contrib/hbide/hbide.ch
* contrib/hbide/ideactions.prg
* contrib/hbide/hbide.prg
+ Implemented ::goto() method. Invoke it by "Goto Line" icon.
+ Implemented save/restore position of various dialogs.
* contrib/hbwin/hbwapi.h
! Fixed some wapi_ret_*() macros. This caused that several WAPI_TREEVIEW*()
functions were not returning a value. Thanks to Petr Chornyj for
reporting it.
* contrib/hbxbp/xbp.ch
! Removed QT_PTROFXBP() macro.
I have retained QT_PTROF() macro because a lot of you
must still be using it in your code. It is sceduled to be
removed after this release.
* contrib/hbide/hbide.prg
* contrib/hbxbp/xbpqtuiloader.prg
* contrib/hbxbp/xbpstatusbar.prg
! Removed QT_PTROF() and QT_PTROFXBP() macro calls entirely.
We can delete these macros alltogether.
* harbour/src/vm/thread.c
* added hb_threadOnceInit() to .prg function list
* harbour/include/hbinit.h
* use HB_STATIC_STARTUP as default initialization method of all
C++ compilers
* contrib/hbbtree/hb_btree.c
* add a union field to encapsulate a var and a pointer, to
pacify 64-compiler warning
* removed unnecessary casts (I hope)
* src/rtl/sha2.c
! Added trick to make it compile with Pelles C 6.00.6.
Without this trick Pelles C compiler exits with internal error.
* doc/whatsnew.txt
+ Added NOTE about Pelles C 6.
* src/codepage/Makefile
+ src/codepage/cpel437.c
- src/codepage/cpgr437.c
* include/hbextcdp.ch
* Renamed GR437 codepage to EL437. EL is the ISO language code for Greek.
* contrib/hbide/hbide.prg
* contrib/hbxbp/xbpqtuiloader.prg
! Implemented signal/slot mechanism.
A working usage is the "Find/Replace" dialog is now
entirely based on XbpQtUiLoader() class. "Project Properties"
dialogs skeleton is also in place and is working, just a little more
required to make it completely functional.
XbpQtUiLoader() class appears to be heading towards an
excellent tool and will eliminate to have a native Form Designer.
Simply design a complex widget in Qt's powerful Qt Creater
and exploit is with this class in the application.
I have a lot many ideas to cook, your suggestions are welcome.
* contrib/hbqt/qth/QCoreApplication.qth
* contrib/hbqt/qth/QErrorMessage.qth
* contrib/hbqt/qth/QList.qth
* contrib/hbqt/qth/QTextEdit.qth
! Supressed some error reported generation process messages.
* contrib/hbqt/generator/hbqtgen.prg
! Implemented highly flexible and optimized code for
METHOD QSomeObj:new(...), thanks to Przemek for tips.
Now all classes have the same way the constructor is called.
[ Regenerated Sources Follows ]
* contrib/hbide/hbide.prg
* contrib/hbide/idemisc.prg
* contrib/hbxbp/Makefile
* contrib/hbxbp/xbpgeneric.prg
+ contrib/hbxbp/xbpqtuiloader.prg
+ Started XbpQtUiLoader() CLASS TO manage .ui components.
A work-in-progress.
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbide/hbide.prg
* contrib/hbqt/tests/demoqt.prg
* contrib/hbxbp/xbpstatic.prg
* contrib/hbxbp/xbpwindow.prg
+ Implemented passing HBQT objects to METHOD QSomeObj:new(...).
Now there is seldome a need to use QT_PTROF() macro.
demoxbp/demoqt/hbide are working perfectly.
[ Regenerated sources follow ]
* doc/whatsnew.txt
+ Added text documenting whatsnew missing parts.
* utils/hbmk2/hbmk2.prg
! Potential fix to external commands when using script and called
in a loop.
* harbour/bin/hb-func.sh
! use CC_HB_USER_LIBS instead of HB_USER_LIBS in linked library list
current HB_USER_LIBS has different meaning in build process then
in the past
* INSTALL
+ Added more generic link for QT OSS downloads.
* contrib/hbqt/*
* Regenerated.
(Please list only '* contrib/hbqt/*' to avoid growing ChangeLog
with several hundred entries each time the generator changes)
* contrib/hbqt/hbqt_hbdbfmodel.cpp
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbqt/hbqt_hbqtableview.cpp
* contrib/hbqt/hbqt.h
* contrib/hbqt/hbqt_destruct.cpp
* contrib/hbqt/hbqt_hbqmainwindow.cpp
* contrib/hbqt/hbqt_base.cpp
! Fixed gcFuncs() to be named hbqt_gcFuncs(). This is a
public function, please remember to prefix all public functions
to have a lib specific prefix.
; TODO: Regenerate.
* INSTALL
+ Added direct link to QT Windows 4.5.3 pkg.
* contrib/hbqt/detect.mk
* contrib/hbqt/moc.mk
+ Added my copyright.
* contrib/hbqt/hbqt_hbdbfmodel.cpp
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbqt/hbqt_hbqtableview.cpp
* contrib/hbqt/hbqt.h
* contrib/hbqt/hbqt_hbqmainwindow.cpp
! Fixed some public C functions to hold hbqt_ prefix,
instead of using generic names.
! Added one missing 'extern' keyword.
+ Added TOFIX for QT_HBQTABLEVIEW_NAVIGATE() which
has a remaining leak of one typical type.
; TOFIX: Do the same with gcFuncs().
; TODO: Regenerate.