* harbour/src/rtl/gtstd/gtstd.c
* updated to compile with WinCE
* harbour/package/harbour.spec
* modified to work with new HBMK2 translations
* harbour/contrib/hbmzip/hbmzip.c
! fixed function order
* harbour/contrib/hbwin/axcore.c
* include <olectl.h>
! fixed buffer sizes in debug function
* removed trailing spaces and tabs
* harbour/contrib/hbwin/hbolesrv.c
* include <tchar.h> - for some compilers which do not make it
with OLE header files
* contrib/hbqt/utils/hbqtgen.prg
! Fixed to pass 'uchar' where QT needs it (instead of current 'char')
; TOFIX: hb_parc() return value is still de-const-ed and passed
to QT which is 100% way to create random GPFs.
See TOFIXes in code.
* utils/hbmk2/hbmk2.prg
* Formatting.
* contrib/rddads/rddads.hbp
! Reordered lookup order for possible .dll (+ COFF .lib) location
to fix implib generation with some ADS releases (7.x, 8.x).
* contrib/hbqt/utils/hbqtgen.prg
+ Changed HB_<class> class instantiation function STATIC.
+ Added <class>FromPointer() function to create class from a raw class pointer.
(this should be eliminated ASAP)
+ Added <class>From() function to create class from another class.
It's now simply calling :from() in base class, which is wrong
and should be fixed for two reasons:
- raw pointer is allowed (all such calls should be changed to <class>FromPointer())
- no object type checking is made.
; NOTE: Please update HBIDE and HBXBP to use these rules:
HB_<class>:from( ptr ) => <class>FromPointer( ptr )
HB_<class>:from( obj ) => <class>From( obj )
* contrib/hbqt/qtcore/hbqt_pointer.cpp
* contrib/hbqt/qtcore/hbqtcore.hbx
+ HBQT_ISOBJECT() will return .T. is the passed object is a HBQT one.
* contrib/hbqt/qtcore/hbqt_misc.prg
* :isValidObject() -> :hasValidPointer()
+ :fromPointer(): New method used solely to convert raw QT pointers
to HBQT objects. In such case no object type checking can be done,
so it's dangerious, thus raw pointers should eventually be eliminated
from HBQT code and as final step this method removed.
The method will RTE is non-pointer parameter is passed.
+ Added TODOs.
; TODO: Change :from() method to only allow QT object input parameter
and RTE otherwise. At the same time :from() calls with pointer
input should be changed to :fromPointer(). As next step :from()
should be moved to class level and proper object type checking
added to avoid assigning wrong QT object to HBQT object wrapper.
* contrib/hbxbp/xbplistbox.prg
* contrib/hbxbp/xbpwindow.prg
* contrib/hbxbp/xbptreeview.prg
* contrib/hbide/idefindreplace.prg
* contrib/hbide/ideedit.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/hbqreportsmanager.prg
* contrib/hbide/ideharbourhelp.prg
* contrib/hbide/ideskeletons.prg
* :isValidObject() -> :hasValidPointer()
* INSTALL
+ Added OS/2 GCC link.
* harbour/utils/hbmk2/hbmk2.prg
+ *nix builds will now use /opt/harbour/contrib and /opt/harbour/addons
dirs to autofind .hbc files. (if /opt/harbour dir exists)
* harbour/contrib/hbwin/axcore.c
! fixed CPP compilation by using compiler macros in method calls
* harbour/contrib/hbwin/hbwinole.h
* harbour/contrib/hbwin/axcore.c
* harbour/contrib/hbwin/olecore.c
+ implemented additional OLE destructors. Added Undavise() call
to :__hSink destructor. This fixes unresponsive OLE server app
behaviour after corresponding Harbour object is freed
; Code proposed by Przemek, some fixes applied
* harbour/src/rtl/gtstd/gtstd.c
* updated to compile with WinCE
* harbour/package/harbour.spec
* modified to work with new HBMK2 translations
* harbour/contrib/hbmzip/hbmzip.c
! fixed function order
* harbour/contrib/hbwin/axcore.c
* include <olectl.h>
! fixed buffer sizes in debug function
* removed trailing spaces and tabs
* harbour/contrib/hbwin/hbolesrv.c
* include <tchar.h> - for some compilers which do not make it
with OLE header files
* harbour/contrib/hbwin/axcore.c
+ added support for obtaining default callback event interface.
__AxRegisterHandler( pDisp, bHandler [, cIID ] ) parameter can be:
- event interface ID, i.e. "{...}";
- event interface name, ex., DWebBrowserEvents;
- otherwise default event interface is tried to obtain.
; NOTE: some regresions are possible. IDispatch is not the default
value for cIID. To force the previous behaviour, you should use
__AxRegisterHandler(,, "{00020420-0000-0000-C000-000000000046}"),
but I guess this should never be required.
; Don't ask me how I've wrote this code :)
* harbour/contrib/hbwin/tests/pdfcreat.prg
* changed to sync with new __AxRegisterHandler() behaviour
* harbour/contrib/hbwin/tests/testole.prg
+ added new Internet Explorer test to show OLE callback events
* harbour/utils/hbmk2/hbmk2.prg
* use "~hbmk" instead of ".hbmk" as temporary directory name in DOS
builds to avoid problem with unsupported file names.
TODO: for better customization we need new function:
HB_FNameCheck( <cFileName> ) -> <lNameOK>
* harbour/contrib/hbmzip/hbmzip.c
! fixed GPF when file datetime is passed as 3-rd argument to
HB_ZipFileCreate()
% eliminated repeated code
* package/winuni/RELNOTES
* pgsql version.
* contrib/xhb/hboutdbg.c
! Fixed missing xhb.h for public function declaration.
* contrib/sddoci/sddoci.c
! Implemented fix based on Przemek's recent commit to sddpg.
(2010-10-04 12:43 UTC+0200)
I made no testing, just tried to copy the method since the
situation looked the same. Please review/test.
+ utils/hbmk2/hbmk2.es_PE.po
* utils/hbmk2/hbmk2.hbp
+ Added Spanish translation.
Many thanks to Guillermo Varona Silupu (GVS) for the translation
and for making it available to Harbour.
; QUESTION: These are used from xhb lib, yet they are not exported
from harbour dll. Should they be worked around in xhb
or exported?:
hb_stackItem, hb_stackBaseOffset, hb_stackBaseProcOffset,
hb_stackWithObjectOffset
* harbour/contrib/hbwin/tests/pdfcreat.prg
! fixed warning for whose who uses alternatve sample branch #if 0
* harbour/src/rtl/gtstd/gtstd.c
! fixed console input pooling for Windows (you don't need to keep
a key pressed to run application)
* harbour/src/rtl/gttrm/gttrm.c
! added protection against GPF when wrong parameters are
passed to hb_gtInfo( HB_GTI_ADDKEYMAP, ... )
* harbour/src/rtl/hbgtcore.c
! added protection against GPF when wrong parameters are
passed to hb_gtAlert()
* harbour/src/rtl/gtapi.c
* formatting
* harbour/src/rtl/cdpapi.c
! fixed return value in hb_cdpStrAsU16Len()
* harbour/src/rdd/dbf1.c
* harbour/src/rdd/dbffpt/dbffpt1.c
+ added support for UNICODE fields compatible with the one used
by ADS
* harbour/contrib/hbxbp/hbxbp.hbx
+ automatically updated
* harbour/contrib/rddads/ads1.c
* casting
* harbour/doc/xhb-diff.txt
* updated information about PRG level hb_socket*() API
+ added information about serial port support
* contrib/hbide/ideedit.prg
! Fixed: a small glitch in copy operation.
When two lines were copied, where last line was blank,
paste operation was inserting one more blank line.
* contrib/hbqt/qtcore/hbqt_hbqslots.cpp
* contrib/hbqt/qtcore/hbqt_hbqslots.h
- Removed: events synonymous signals, i.e., :mousePressEvent() and
family. These must be trapped via events interface instead of
signals interface.
INCOMPATIBLE: if any third party lib is using them, please update.
* contrib/hbqt/qtgui/g/HBQTableView.cpp
* contrib/hbqt/qtgui/g/THBQTableView.prg
* contrib/hbqt/qtgui/hbqt_hbqtableview.cpp
* contrib/hbqt/qtgui/hbqt_hbqtableview.h
* contrib/hbqt/qtgui/qth/HBQTableView.qth
- Removed: events synonymous signals.
+ Introduced: :hbSetBlock( bBlock ) method along the
lines of similar mechanism for other sub-classes.
This maybe the building block for thought-of
sub-calling of Qt classes.
* contrib/hbqt/qtgui/hbqtgui.ch
+ Added: HBQT_HBQTABLEVIEW_scrollContentsBy constant.
* contrib/hbxbp/xbpappevent.prg
* contrib/hbxbp/xbpbrowse.prg
* contrib/hbxbp/xbpdataref.prg
* contrib/hbxbp/xbpdialog.prg
* contrib/hbxbp/xbpgeneric.prg
* contrib/hbxbp/xbptabpage.prg
! Fixed: many artifacts which are the results of recent
changes in hbQT structure and implementation. New protocol
surfaced many shortcomings in previous implementation.
* contrib/hbide/hbqtoolbar.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/ideedit.prg
* contrib/hbide/idemain.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/idesources.prg
! Fixed: many artifacts, specially in editing area.
Now you may enjoy better editing experience than before.
* contrib/hbxbp/xbpfiledialog.prg
! Fixed: a regression bug surfaced after recent changes.
QDialog() was not setting the focus to original widger at "close".
* contrib/hbqt/qtcore/hbqt_hbqslots.cpp
Fixed: "windowStateChanged(Qt::WindowStates,Qt::WindowStates)" signal parameters.
* contrib/hbqt/qtgui/hbqt_hbqgraphicsitem.cpp
* contrib/hbqt/qtgui/hbqt_hbqtableview.cpp
* contrib/hbqt/qtgui/hbqt_hbqtableview.h
! Minor.
* contrib/hbqt/utils/qtgui.qtp
+ Added: new class QSortFilterProxyModel.qth
* harbour/include/hbapirdd.h
+ added new field flag: HB_FF_UNICODE
* harbour/contrib/rddads/ads1.c
+ added support for new ADS 10.0 UNICODE fields: NChar, NVarChar, NMemo
They are supported in all ADS* RDDs.
* harbour/src/lang/msg_tpl.c
! added one missing message
* harbour/src/lang/msgsv.c
* harbour/src/lang/msgsvwin.c
* removed redundant item copied from xHarbour
Thanks to Klas Engwall for the info.
* harbour/src/lang/Makefile
! added Swedish CPs
Thanks to Klas Engwall for the info.
* harbour/utils/hbmk2/hbmk2.prg
! disabled automatic generation of dll_hb_vmProcAddress()
in binaries linked with hbmaindllp library.
Such function should be attached to the code linked with
HVM on user request i.e. using some new HBMK2 switch.
* harbour/contrib/xhb/xhw32prn.prg
* added dummy WIN32BMP() function in non MS-Windows builds
* harbour/contrib/rddads/adsfunc.c
* added dummy ADSREGCALLBACK() and ADSCLRCALLBACK() functions
to Linux builds
* harbour/contrib/hbxpp/hbxpp.hbx
* harbour/contrib/hbqt/qtgui/hbqtgui.hbx
* harbour/contrib/hbqt/qtcore/hbqtcore.hbx
* automatically updated by HB_REBUILD_EXTERN=yes
* harbour/src/rtl/hbcom.c
* explicitly set HB_COM_ERR_TIMEOUT and return -1 in all OS-es if
hb_comSend() or hb_comRecv() writes/reads 0 bytes.
It should help in creating portable code eliminating OS dependent
differences.
* harbour/include/hbapi.h
* harbour/src/common/hbstr.c
+ added new C function:
double hb_numExpConv( double dNum, int iExp )
* harbour/src/rdd/dbf1.c
+ added support for decoding exponents part from 'F' fields
* harbour/src/compiler/hbmain.c
* declare automatically created function in code compiled by
HB_COMPILEFROMBUF() with -n2 switch as static.
It eliminates possible conflicts when user tries to register
in single HVM instance many HRB modules with such startup function.
* contrib/hbxbp/xbpwindow.prg
! An important regression fix.
Please always construct an object when :from() is used as:
HB_Q*Class():from( pPtr )
instead of
Q*Class():from( pPtr )
* harbour/src/rtl/gtwvt/gtwvt.c
! fixed possible double font freeing in non UNICODE builds
* harbour/contrib/hbwin/win_misc.c
+ added prg function WIN_UNICODE() which returns logical value
indicating if UNICODE macro was used or not
* harbour/utils/hbrun/hbrun.prg
! fixed typo in my last commit - Thanks to Frank Van Nuffel for
information about the problem
+ harbour/src/lang/msgsv.c
+ harbour/src/lang/msgsvwin.c
+ added Swedish language modules by Klas Engwall
(borrowed from xHarbour with some small modifications - please verify)
* harbour/utils/hbrun/hbrun.prg
+ extended error message so it reports more precisely the problem
with user command.
+ use -n2 instead of -n for user command compilation
It allows to use:
DO <proc> [WITH <args,...>]
when <proc>.prg contains code without explicit startup procedure.
% removed useless hbrun_DirAddPathSep() - hb_FNameMerge() automatically
adds directory separator if necessary.
! changed the order of locating files without extension so files in
local directory are not hidden by file in PATH or hb_baseDir()
! interrupt execution when given .hbs or .prg file cannot be cleanly
compiled.
! generate error when file passed as in parameters cannot be found.
! do not strip quote characters from PATHs in *nix builds.0
! use in DOS builds "~harbour" instead of ".harbour" as directory name
for hbrun history file.
; Possible TODO: add function:
HB_FNameCheck( <cFileName> ) -> <lNameOK>
which will check if <cFileName> is correct and can be used
with given file system. <cFileName> should contain full path
so it can be verified with correct file system. Such extension
should eliminate code which disable unconditionally long file
names in all DOS builds.
* contrib/hbxbp/xbplistbox.prg
! Changed: the way context menu was being fired.
* contrib/hbqt/qtcore/hbqt_hbqslots.cpp
* contrib/hbqt/qtcore/hbqt_hbqslots.h
+ Added: Francesco Perillo's new SIGNAL/SLOT mechanism.
It is guarded against #ifdef __PRITPAL__ which is defined
by default in hbqt_hbqslots.h. To switch over to new
mechanism, simply comment out #define __PRITPAL__ and
recompile hbQT. Once all slots will be working, sections
covered under __PRITPAL__ will be removed. This way
we can test new protocol whosoever wants to investigate
insides.
* utils/hbmk2/hbmk2.prg
+ Added MS-DOS compiler (djgpp) detection when used on *nix platform
in cross-compile scenario.
BTW I've also found that I had already implemented win and wce
autodetection based on global.mk, so it' supposed to work. Please
test it.
* config/global.mk
- Deleted a variable not used anymore.
* contrib/hbide/hbqreportsmanager.prg
* contrib/hbide/idebrowse.prg
* contrib/hbide/ideedit.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/idefindreplace.prg
* contrib/hbide/idefunctions.prg
* contrib/hbide/ideharbourhelp.prg
* contrib/hbide/idemain.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideprojmanager.prg
* contrib/hbide/idesaveload.prg
* contrib/hbide/ideshortcuts.prg
* contrib/hbide/idethemes.prg
* contrib/hbide/idetools.prg
* contrib/hbqt/hbqt_hbmk2_plugin.hbs
* contrib/hbqt/qtcore/hbqt.h
* contrib/hbqt/qtcore/hbqt_misc.prg
* contrib/hbqt/qtcore/hbqt_pointer.cpp
* contrib/hbqt/qtcore/qth/HBQEvents.qth
* contrib/hbqt/qtcore/qth/HBQSlots.qth
* contrib/hbqt/qtcore/qth/HBQString.qth
* contrib/hbqt/qtcore/qth/QAbstractEventDispatcher.qth
* contrib/hbqt/qtcore/qth/QAbstractItemModel.qth
* contrib/hbqt/qtcore/qth/QMetaObject.qth
* contrib/hbqt/qtcore/qth/QMetaType.qth
* contrib/hbqt/qtgui/qth/QBitmap.qth
* contrib/hbqt/qtgui/qth/QBrush.qth
* contrib/hbqt/qtgui/qth/QColor.qth
* contrib/hbqt/qtgui/qth/QComboBox.qth
* contrib/hbqt/qtgui/qth/QWidget.qth
* contrib/hbqt/qtgui/THbQtUI.prg
* contrib/hbxbp/xbpbrowse.prg
* contrib/hbxbp/xbpdialog.prg
* contrib/hbxbp/xbplistbox.prg
* contrib/hbxbp/xbprtf.prg
* contrib/hbxbp/xbptabpage.prg
* contrib/hbxbp/xbptreeview.prg
* contrib/hbqt/utils/hbqtgen.prg
! Changed: massively to produce optimized and 0 fault
tolerant code.
* contrib/hbqt/qt*/*.cpp, *.prg, *.txt
* Re-generated, whichever fall into above changes.
This commit addresses a lot of issues:
1. Parameters checking is now mandatory. You have to supply
the correct number of parameters. No defaults are assumed.
PLUS you need to supply correct type of parameter.
2. PRG class representation is changed.
Now you can get fairly good documentation from looking
at the class declaration. You will never have to refer
the method body which has no meaning as such.
Here is a snippet:
METHOD itemAbove // ( oQTreeWidgetItem ) -> oQTreeWidgetItem
METHOD itemAt // ( oQPoint ) -> oQTreeWidgetItem
// ( nX, nY ) -> oQTreeWidgetItem
METHOD itemBelow // ( oQTreeWidgetItem ) -> oQTreeWidgetItem
METHOD itemWidget // ( oQTreeWidgetItem, nColumn ) -> oQWidget
METHOD openPersistentEditor // ( oQTreeWidgetItem, nColumn ) -> NIL
The methods with variable number and type of parameters
are shown beneth first call.
3. Accordingly, class_*.txt documentation is also updated.
4. A method call now never accepts a pointer, only an
hbQT object. This fixes one/half of the issue - one sided.
TODO: fix sending raw pointers to PRG code from C++ code.
:-)) hbIDE is up and running with all its glory, no GPFs.
Some regression would be possible but you will have
RTE popping up, so easily fixable.
* utils/hbmk2/hbmk2.prg
+ Added workaround for mingw compiler problem where it
tends to leave zero byte long objects in cases when the
build process gets (manually) aborted.
Please check it and report any potential performace
problems (hbmk2 needs to read the objects' size from
the directory listing). Maybe we will need a Harbour
function which returns both timestamp and size in one
call.
* contrib/hbodbc/todbc.prg
- Deleted 'FROM HBCLASS' from class declarations.
Thanks to Manu for the report.
* contrib/hbxpp/dbfuncsx.prg
+ Added XPP_DBUSEAREA() which emulates non-Clipper compatible
behavior of Xbase++ DBUSEAREA() implementation.
Based on code and information sent by Shum
* contrib/gtwvg/wvgwing.c
! Fixed compilation in newer BCC versions (6.3).
Fix suggested by YD0DKL
* package/winuni/mpkg_win_uni.bat
+ Added copyright msg.