+ Added to the list of contributors:
Carlos Bacco (carlosbacco gmail.com)
Francesco Perillo (fperillo gmail.com)
Istvan Bisz (istvan.bisz t-online.hu)
Tamas Tevesz (ice extreme.hu)
(I accept recommendation about who else should be added,
it's be a while I updated this list)
* contrib/hbide/ideparseexpr.c
% Using hb_parldef().
* harbour/include/hbcom.ch
+ added new error constant value: HB_COM_ERR_IO
* harbour/src/rtl/hbcom.c
+ added translation for some important OS error code
in *nix builds
+ added translation ERROR_TIMEOUT -> HB_COM_ERR_TIMEOUT
in Windows build.
TODO: check real error codes for it and also for other
operations like opening the same port more then
once and add valid translations
; TODO: add some basic trnaslation for OS2 error codes.
HB_COM_ERR_TIMEOUT seems to be most important for portable
programs.
* harbour/include/hbcom.ch
* updated few comments
* harbour/include/hbapicom.h
* harbour/src/rtl/hbcom.c
+ added new C function:
HB_FHANDLE hb_comGetDeviceHandle( int iPort );
* small cleanup in OS2 flow control setting
* harbour/src/rtl/hbcomhb.c
+ added new PRG function
HB_COMGETDEVICEHANDLE( nPort ) --> nHandle | F_ERROR
* modified HB_COMFLOWCONTROL() to not change existing flow control
when 3-rd parameter is missing:
HB_COMFLOWCONTROL( nPort, @nOldFlow [, nNewFlow] ) --> lSuccess
* harbour/contrib/hbmzip/hbmzip.c
! fixed date setting in HB_ZIPFILECREATE()
* utils/hbmk2/hbmk2.prg
* config/global.mk
* INSTALL
! HB_BUILD_NAME/-build= no longer supports pathseps (backslash/fwdslash)
(it would need costly solution to resolve compilation of
hbrun.rc, maybe more. It's also "cleaner" this way, since the
dir structure is not altered)
* utils/hbmk2/hbmk2.prg
+ Harbour environment autodetection will now work if pathseps
are present in HB_BUILD_NAME/-build= setting.
(so now it's in sync with Harbour build in this regard)
* contrib/hbqt/qtcore/qth/QFile.qth
* contrib/hbqt/qtcore/qth/QIODevice.qth
* contrib/hbqt/qtcore/qth/QResource.qth
* contrib/hbqt/qtgui/qth/QBrush.qth
* contrib/hbqt/qtgui/qth/QColor.qth
* contrib/hbqt/qtgui/qth/QFormLayout.qth
* contrib/hbqt/qtgui/qth/QIcon.qth
* contrib/hbqt/qtgui/qth/QImage.qth
* contrib/hbqt/qtgui/qth/QMainWindow.qth
* contrib/hbqt/qtgui/qth/QMenu.qth
* contrib/hbqt/qtgui/qth/QMenuBar.qth
* contrib/hbqt/qtgui/qth/QPainter.qth
* contrib/hbqt/qtgui/qth/QPainterPath.qth
* contrib/hbqt/qtgui/qth/QPixmap.qth
* contrib/hbqt/qtgui/qth/QWidget.qth
+ Normalized as much as possible.
In some cases almost 100%.
* contrib/hbqt/hbqt_hbmk2_plugin.hbs
* contrib/hbxbp/xbpbrowse.prg
* contrib/hbxbp/xbplistbox.prg
- Changed: calls postfixed with "_1" and family methods.
* contrib/hbide/hbqreportsmanager.prg
* contrib/hbide/idebrowse.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/idefindreplace.prg
* contrib/hbide/idefunctions.prg
* contrib/hbide/ideharbourhelp.prg
* contrib/hbide/idesaveload.prg
* contrib/hbide/ideshortcuts.prg
- Changed: calls postfixed with "_1" and family methods.
Nothing else is looked into yet.
* contrib/hbqt/qtcore/hbqt_misc.prg
+ Added one more method :valtypes()
* contrib/hbqt/utils/hbqtgen.prg
+ Implemented: resolving parameters and calling
many-to-one methods at PRG level. It is extremely
complex composition but has been achieved to the point where,
at least, hbIDE is build properly and is running.
Many more points needs to be addressed but that I
will undertake after a couple of days.
REGRESSION is highly possible and reporting
will be extremely helpful to further fine-tune the
concept. Goal is to bring everything on PRG code.
* contrib/hbqt/qt*/g/*.cpp;*.prg,*.txt
* Re-generated.
* contrib/hbmzip/hbmzip.c
! Fixed potential GPF in HB_ZIPDELETEFILE() and HB_UNZIPFILEINFO()
Report and patch by Leandro Damasio. Thanks.
* INSTALL
- Deleted actual example value from HB_QTPOSTFIX. Users were setting
this unnecessarily thinking they need it. The minority how really
need this will know what this is about anyway.
* harbour/src/pp/ppcore.c
+ added new PP directive:
#warning <*msg*>
* harbour/include/hbclass.ch
* use #warning instead of #error for class method declaration mismatch
(enabled by -w3 compiler switch)
* harbour/contrib/hbwin/olecore.c
! fixed to return assigned value instead of 1-st parameter when more
then one parameter is used in code like:
object:_name( param, value )
* harbour/contrib/hbwin/hbolesrv.c
! fixed updating of OLE object reference counter used by
DllCanUnloadNow()
* harbour/contrib/hbwin/olecore.c
+ added possibility to use more than one parameter in property put
call. This allows to make a workaround for non-existant Harbour
language syntax:
object.name(param) = value
Workaround syntax:
object._name(param, value)
+ added comment documenting OLE automation behaviour for various
VBScript sentences
+ harbour/contrib/hbwin/tests/pdfcreat.prg
+ added sample code for producing .pdf documents using OLE and PDFCreator
* contrib/hbqt/qtgui/qth/QBoxLayout.qth
* contrib/hbqt/qtgui/qth/QComboBox.qth
* contrib/hbqt/qtgui/qth/QDrag.qth
* contrib/hbqt/qtgui/qth/QGridLayout.qth
* contrib/hbqt/qtgui/qth/QLayout.qth
* contrib/hbqt/qtgui/qth/QListWidget.qth
* contrib/hbqt/qtgui/qth/QTableWidget.qth
* contrib/hbqt/qtgui/qth/QTabWidget.qth
* contrib/hbqt/qtgui/qth/QToolBar.qth
* contrib/hbqt/qtgui/qth/QTreeWidget.qth
* contrib/hbqt/qtgui/qth/QTreeWidgetItem.qth
* contrib/hbqt/qtgui/qth/QWidget.qth
- Deleted all occurances where a widget was detached from
GC cycle. Now it is done automatically by the generator.
To flag an argument to detach, prototype body is post-fixed
with [*D=n*] where "n" is the ordinal position of the
argument as seen in the prototype body.
* contrib/hbqt/utils/hbqtgen.prg
+ A thoughly simplified, artionalized, object based
implementation. It is now easily possible to extend
it with many more constructs.
WARNING: though this implementation produces the
working code but I have not re-generated sources
because a lot more is still on my drawing-board.
You can generate sources but only at your local
end. DO NOT UPDATE SVN.
* harbour/include/hbapicom.h
* harbour/src/rtl/hbcom.c
+ added public C function: void hb_comSetError( int iPort, int iError )
* harbour/src/rtl/hbcomhb.c
+ added PRG function: HB_COMSETERROR( nPort, nError ) --> NIL
* harbour/src/rtl/hbsocket.c
* minor formatting
* harbour/config/doc.mk
* harbour/config/postinst.hbs
* harbour/contrib/make.hbs
* do not install documentation files when HB_INSTALL_DOC=no
* harbour/config/postinst.hbs
! do not install .hbl files for core utils when HB_BUILD_PARTS=lib
+ added support for HB_INSTALL_SCRIPT executed after install step.
It allows to extract some variables set by our GNU make system,
i.e. it's used to retrieve HB_CCPREFIX in win/wince .spec files.
* harbour/package/harbour-win.spec.in
* use HB_INSTALL_DOC=no to disable DOC file installation
* generate hb{w|ce}mk2 scripts as wrappers to hbmk2 with cross
build settings so it can be easy used used by users to create
Windows/WindowsCE binaries.
Temporary solution until we will not have something more general.
* contrib/hbqt/qtgui/g/QMenu.cpp
* Re-generated.
* contrib/hbqt/qtgui/qth/QMenu.qth
! A try to fix error reported on some builds.
I am not sure if this is the cause but let us try.
* contrib/hbqt/qtgui/doc/en/class_qpainter.txt
* contrib/hbqt/qtgui/doc/en/class_qpainterpath.txt
* contrib/hbqt/qtgui/g/QPainter.cpp
* contrib/hbqt/qtgui/g/QPainterPath.cpp
* contrib/hbqt/qtgui/g/TQPainter.prg
* contrib/hbqt/qtgui/g/TQPainterPath.prg
* Re-generated.
* contrib/hbqt/qtgui/qth/QPainter.qth
! Implemented remaining methods - many-to-one.
NOTE: :fillRect() with Qt_BrushStyle is omitted.
This omission goes in favour of Qt_GlbalColor
because fill with a color is mostly used call.
* contrib/hbqt/qtgui/qth/QPainterPath.qth
+ Implemented: many-to-one method synchronization.
* contrib/hbide/hbqreportsmanager.prg
! Modified to honor above changes.
WARNING: 3rd Party Developers - Please revisit your printing functions.
* contrib/hbide/hbqreportsmanager.prg
* contrib/hbide/idemisc.prg
* contrib/hbqt/qtgui/doc/en/class_qpainter.txt
* contrib/hbqt/qtgui/g/QPainter.cpp
* contrib/hbqt/qtgui/g/TQPainter.prg
* contrib/hbqt/qtgui/qth/QPainter.qth
+ Implemented: all multiple entry functions of QPainter() class
under single function call. Only exception is :fillRect()
which accepts similar parameters for different overloadings.
+ contrib/hbqt/qtcore/g/THBQEvents.prg
+ contrib/hbqt/qtcore/g/THBQSlots.prg
+ Missings from prev commit of Viktor.
* contrib/hbqt/qtgui/doc/en/class_qpainter.txt
* contrib/hbqt/qtgui/g/QPainter.cpp
* contrib/hbqt/qtgui/g/TQPainter.prg
* contrib/hbqt/qtgui/qth/QPainter.qth
+ More streamlined many-to-one function calls.
Still a work in progress.
* contrib/hbide/hbqreportsmanager.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/idemain.prg
* contrib/hbide/idesaveload.prg
+ Implemented: Harbour level codepage protocol.
Please make experiments.
WARNING: you may need to re-select appropriate
codepage from <MainMenu><Setup><Codepages> menu option
before saving any source. Better would be - select
codepage as above and exit hbIDE, reenter.
* contrib/hbqt/qtcore/hbqtcore.hbx
* contrib/hbqt/qtcore/hbqt_destruct.cpp
* Renamed: HBQT_SETCODECFORCSTRINGS() -> __HBQT_SETCODECFORCSTRINGS()
* Renamed: HBQT_SETCODECFORTR -> __HBQT_SETCODECFORTR()
; These should never be called by a Harbour application.
; TODO: Remove them in the future.
* contrib/hbqt/qtgui/qth/QApplication.qth
* contrib/hbqt/qtcore/qth/QCoreApplication.qth
! Fixed to initialize default QT text codec to UTF8
inside HBQTCORE (instead of HBQTGUI).
HB_QTGUI puller will automatically pull HB_QTCORE.
! Fixed to use HB_QTCORE and HB_QTGUI puller symbols
instead of former HB_QT. Please change your code.
; TODO: Changed HB_QT to HB_QTGUI.
; TODO: Delete HB_QT
* contrib/hbqt/qtgui/g/QApplication.cpp
* contrib/hbqt/qtcore/g/QCoreApplication.cpp
* Regenerated.
* contrib/hbqt/qtgui/doc/en/class_qpainter.txt
* contrib/hbqt/qtgui/g/QPainter.cpp
* contrib/hbqt/qtgui/g/TQPainter.prg
* Regenerated. (due to some previous commits)
* contrib/hbqt/qtwebkit/g/hbqtwebkit.h
* Regenerated. (why?)
* contrib/hbxbp/hbxbp.hbx
* contrib/hbxbp/xbpgeneric.prg
- Deleted wrappers dealing with modifying QT text codec:
HBXBP_SETCODEC(), HBXBP_SETCODECFORTR()
* contrib/hbide/idemain.prg
- Deleted manual init of QT text codec.
+ Changed to display active CP based on Harbour setting.
* contrib/hbqt/qtcore/hbqt_hbslots.h
- Deleted: references to QSessionManager().
* contrib/hbqt/qtgui/g/QApplication.cpp
* contrib/hbqt/qtgui/qth/QApplication.qth
! QTextCodec::codecForLocale() => QTextCodec::codecForName( "UTF8" )
This synchronizes the codepage used by hbQT for its translation
operations. It is not needed in QCoreApplication() because
for all types of hbQT based applications QApplication() is
ever to be called as first line.
TODO: needed an option for users to set Harbour's recognized codepages.
* contrib/hbqt/qtgui/doc/en/class_qpainter.txt
* contrib/hbqt/qtgui/g/QPainter.cpp
* contrib/hbqt/qtgui/g/TQPainter.prg
* Re-generated.
* contrib/hbqt/qtgui/qth/QPainter.qth
+ Implemented: single call :drawLine() method.
* contrib/hbqt/utils/hbqtgen.prg
+ Implemented: "..." parameter as method argument.
Needed to streamline in single call of Qt's
overloaded by argument type methods.
* contrib/hbide/hbqreportsmanager.prg
! Demonstrated the use of QPainter():drawLine( ... )
with variable type of argument types.
NOTE: this mechanism holds good if arguments are
constructed via Q*Class( ... ) call only.
Also this mechanism seems to be working best
for only those classes of Qt which are neither
inherited nor inheriting other class. The
classes in this bracket are like - QBrush,
QColor, QPixmap, QRect, QPoint, etc.
* contrib/hbqt/qtgui/g/QComboBox.cpp
* Re-generated.
* contrib/hbqt/qtgui/qth/QComboBox.qth
! Detached one child from GC cycle - :setView()
* contrib/hbxbp/xbpcombobox.prg
! Fixed to support inheritance.
Thanks Shum for real-time Xbase++ code example.
Now it can be compiled with Harbour + hbQT without any line change.
* contrib/hbqt/qtgui/qth/QIcon.qth
! An important change in constructor.
TO-REMEMBER: whenever any parameter has to be tested with
HB_ISCHAR() and HB_ISPOINTER(), HB_ISCHAR() must ever be
checked first then HB_ISPOINTER(), at least for hbQT.
* contrib/hbqt/utils/hbqtgen.prg
! Fixed: how a QIcon() is passed to another methods.
* contrib/hbqt/qt*/g/*.prg
* contrib/hbqt/qt*/doc/en/*.txt
* Auto generated.
* contrib/hbide/ideactions.prg
* contrib/hbide/ideobject.prg
! Minor.
* contrib/hbqt/hbqt_hbmk2_plugin.hbs
+ Added: required :pPtr initialization.
* contrib/hbqt/qtcore/hbqt_misc.prg
! Changed the way hbqt_ptr( oQtOROtherObject ) was returning :pPtr.
Now it checks <:pPtr> instance variable's presence if it
is a member of the class or not.
WARNING: Now onwards any class derived from hbQT class must contain
:pPtr instance variable to work properly.
* contrib/hbqt/qtgui/THbQtUI.prg
+ Added: :pPtr instance vaiable.