* harbour/src/rtl/filebuf.c
! fixed next three integer overflows exploited by HB64 locking mode.
BTW probably I'll move the lock range to not operate on last positive
offset because such overflow problems can be also exploited in low
level OS or network transport layer code - it happened in the past.
I'll do that when we confirm that current Harbour implementation
is correct.
* harbour/src/rtl/gtwvt/gtwvt.c
* harbour/contrib/gtwvg/gtwvg.c
! always set trailing 0 in the buffer containing font name set
by HB_GTI_FONTNAME - protection against too long strings.
* harbour/contrib/gtwvg/wvgwing.c
! fixed memory leak in last commit - thanks to Mindaugas.
% use HB_ITEMCOPYSTR() in WVG_FONTCREATE() to eliminate memory
allocation.
* harbour/contrib/gtwvg/wvgutils.c
* harbour/contrib/gtwvg/wvgwing.c
* eliminated HB_TCHAR_*() macros
; TOFIX: replace hb_parvc() and nCopyAnsiToWideChar() function
with valid HB_STR* macros.
Function nCopyAnsiToWideChar() should be removed.
* harbour/contrib/xhb/xhw32prn.prg
! added missing ;
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/gtwvg.h
* contrib/gtwvg/wvgcore.c
* contrib/gtwvg/wvgcuig.c
* contrib/gtwvg/wvggui.c
* contrib/gtwvg/wvgutils.c
* contrib/gtwvg/wvgwin.c
* contrib/gtwvg/wvgwing.c
! Removed: TCHAR_* macros, almost.
Only 6 occurances are still present in the code which I do not
know how to cover.
* contrib/gtwvg/wvgmenub.prg
! Adapted: the conversion of character '~' to '&' at prg level
instead of C level.
* harbour/ChangeLog
! fixed typo in file name in my previous commit.
It should be gtwvg.c not gtwvg.h
* harbour/src/rtl/disksphb.c
! fixed variable declaration for strict ANSI C compilers
* INSTALL
* further clarified the way to submit diffs (use _one_ .dif
file created from root of SVN sandbox using 'svn diff', use
extension '.zip')
* clarified the names of mailing list.
* clarified which mingw tdm 4.6.1 version is okay.
* simplified to use 'zip' tool and .zip extension for submitted
logs.
* contrib/gtwvg/wvgcore.c
* contrib/gtwvg/wvgcuig.c
* contrib/gtwvg/wvggui.c
* contrib/gtwvg/wvggui.h
* contrib/gtwvg/wvgutils.c
* contrib/gtwvg/wvgwin.c
* contrib/gtwvg/wvgwing.c
! Replaced: HB_TCHAR_* macros to HB_STR*() API.
I could not find the hb_str*() api interface for remaining macros.
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/gtwvg.h
! Synchronized: with GTWVT as much possible.
Mainly eliminated TCHAR_* macros and used hb_str* api.
Also tried to synchronize codepage issue, not sure
how much I succeeded.
* contrib/hbqt/qtcore/hbqt_misc.prg
+ Embedded: oQt:hbSetEventBlock( QEvent_Paint, bBlock )
=>
oQt:connect( QEvent_Paint, bBlock )
NOTE: the difference is that in all other events only one
parameter is passed to bBlock, i.e., an object of
type relevant QEvent, whereas, for paintEvent two
parameters are passed, first as usual qPaintEvent,
the other qPainter.
* contrib/hbqt/tests/demoqt.prg
! Replaced: oBtn:hbSetEventBlock( QEvent_Paint, bBlock )
=>
oBtn:connect( QEvent_Paint, bBlock )
* contrib/hbqt/hbmk2_qt.hbs
! Fixed: a strategic omission where return value of a block
was not being retrieved properly. Now newly introduced
engine to render owner-drawn objects at the .prg level is
working flawlessly.
* contrib/hbqt/qtgui/qth/QPushButton.qth
* contrib/hbqt/qtgui/qth/QWidget.qth
+ Added: PaintEvent = YES to check if engine is working ok.
Yes, it is working.
* contrib/hbqt/tests/demoqt.prg
+ Added: functionality to paint a PushButton via user code.
Still looking for the how to determine state of the object,
in this case, pushbutton, whether it is being pushed or
otherwise.
* contrib/hbqt/hbmk2_qt.hbs
+ Implemented: engine to receive protected methods, i.e., events
and a way to exploit them. The code needs some more make-over
but the proof of concept is working. Lookfor hbqt/tests/demoqt.prg
for a live example.
NOTE: there is only a minimal need to add few keywords, rest all
is handelled by the engine. The next step is to synchronize
this methodology with :connect() / :disconnect() protocol.
* contrib/hbqt/qtgui/qth/QItemSelection.qth
* contrib/hbqt/qtgui/qth/QItemSelectionModel.qth
+ Enforced: methods with QModelIndexList => QList< QModelIndex ).
* contrib/hbqt/qtgui/qth/QWidget.qth
! Fixed: to honor QModelIndexList cast.
+ Added: building blocks to create classes with their protected
methods. The constructor methods are valid for only QWidget
class and this code will be replaced with real-code soon.
Still I am looking for how to include resultant .cpp in final
binaries. Till then this code stays as is.
Viktor: can you look into new methods and fix the logic from hbmk2's
point of view ?
qqwidget.h is created ok.
moc_qqwidget.cpp is created ok.
moc_qqwidget.o is missing.
QWidget.cpp is compiled fine.
But when compiling demoqt.prg, it reports missing
vtable for QQWidget which is because moc_qqwidget.cpp
is not being linked.
To invoke, in QWidget.qth, set PaintEvent = YES and
rebuild QWidget.*.
* src/rdd/usrrdd/rdds/arrayrdd.prg
! formatting/cleanup, removed unncessary e"" string
! replaced '='/'!=' operator on strings with ==. It's most probably
still broken, but at least now consistently so.
* harbour/src/rdd/usrrdd/rdds/arrayrdd.prg
* Cleaned windows xhb debug using HB_TRACE() function and removed old
lines
* harbour/ChangeLog
* formatted previous log entry
* contrib/hbqt/qtgui/qth/QPrinter.qth
* contrib/hbqt/qtgui/qth/QPrintPreviewDialog.qth
* Fixed: constructors.
* contrib/hbqt/qtcore/qth/QLibraryInfo.qth
* contrib/hbqt/qtgui/qth/QFileSystemModel.qth
* contrib/hbqt/qtgui/qth/QGraphicsGridLayout.qth
* contrib/hbqt/qtgui/qth/QGraphicsLayout.qth
* contrib/hbqt/qtgui/qth/QLineEdit.qth
* contrib/hbqt/qtgui/qth/QPlainTextEdit.qth
* contrib/hbqt/qtgui/qth/QWizard.qth
* contrib/hbqt/qtwebkit/qth/QWebFrame.qth
* contrib/hbqt/qtwebkit/qth/QWebPage.qth
+ Added: methods introduced in later versions of Qt than 4.5.3.
Please speak-out if some are missing.
* contrib/hbqt/hbmk2_qt.hbs
+ Implemented: Qt version dependant class and methods compilations.
Current implementation does not generate any error for methods
which are called in application but are not present in used
Qt version. It can be changed to throw run-time error.
Classes are only compiled when version of Qt is what is intended.
NOTE: this implemenattion opens the door to include any new classes
and methods to existing classes no matter which version is
current on the users system.
* contrib/gtwvg/wvgtoolb.prg
* contrib/gtwvg/wvgwing.c
* Fixed: WvgToolbar() was wrongly displaying toolbar buttons
when number was exceeding 16. Now n number of buttons can
be displayed.
* contrib/gtwvg/wvgax.prg
* contrib/gtwvg/wvgcheck.prg
* contrib/gtwvg/wvgdarea.prg
* contrib/gtwvg/wvglistb.prg
* contrib/gtwvg/wvgpushb.prg
* contrib/gtwvg/wvgscrlb.prg
* contrib/gtwvg/wvgsle.prg
* contrib/gtwvg/wvgwin.c
* contrib/gtwvg/wvtwin.ch
+ Implemented: ::pointerFocus for WvgPushButton() and WvgCheckBox().
This facilitates not to keep focus on push buttons after click.
! Fixed: focussing issues for WvgScrollBar() objects.
+ Implemented: WvgActiveXControl() for CUI hosting.
* contrib/gtwvg/tests/demowvg.prg
* contrib/gtwvg/tests/wvgtbrowser.prg
+ Reworked: The browser demonstration now holds Shell.Explorer.2
active-x control to navigate the web. Just click on "Active-X"
check box.
! Fixed: navigation glitch when another control was activated
while the current focus has been on another GUI control.
NOTE: this implementation is now production ready, take use of it.
* harbour/src/rdd/dbfnsx/dbfnsx1.c
! fixed index header verification when index is loaded.
In Harbour DBFNSX and DBFNTX automatically switch to different
internal format when HB_DBFLOCK_HB64 is used. In this format
they store in index files page numbers instead of page offsets
what effectively increase maximal file size to 4TB (from 4GB).
* contrib/hbnetio/utils/hbnetio/netiosrv.prg
* contrib/hbnetio/utils/hbnetio/netiosvc.prg
+ use latest hbwin/wapi capabilities to install service thus
allowing to change back the default run mode to interactive
+ install service as auto-start
+ added Windows service related option to cmdline help screen
+ display textual error msg on service related errors
! minor typo in an error msg
* contrib/gtwvg/wvgwing.c
* Replaced: hbwin specific argument casting to local implementation.
Maybe this fixes compilation error with BCC55, though I feel that
could be a result of some local modifications, reported by Jacek.
* contrib/gtwvg/wvggenrc.prg
* contrib/gtwvg/wvglistb.prg
* contrib/gtwvg/wvgphdlr.prg
* contrib/gtwvg/wvgsle.prg
* contrib/gtwvg/wvgwnd.prg
* Changed: SetAppWindow() => WvgSetAppWindow()
To facilitate simultaneous use of GTWVG with HBXBP.
* Fixed: the way an indivisual child was being destroyed.
It was causing flicker and GUI loss when clicking
inside a control. Thanks Zoran for pointer and code example.
* contrib/gtwvg/tests/demowvg.prg
* contrib/gtwvg/tests/wvgtbrowser.prg
* Refined: to accomodate above issues.
* contrib/gtwvg/tests/wvgtbrowser.prg
+ Extended: the way to anchor tree-view control's row-to to
maxrow()-1. This facilitattes that the control is automatically
resized keeping height adjusted to tbrowse's nBottom.
* contrib/gtwvg/gtwvg.c
* contrib/gtwvg/wvgtoolb.prg
* contrib/gtwvg/wvgtreev.prg
* contrib/gtwvg/wvgwin.c
! Fixed: some focussing issues.
For controls spread over GT console it is important to
set the input focus onto console window instead of child
window to execute defined action.
* contrib/gtwvg/tests/wvgtbrowser.prg
! Minor.
* harbour/debian/changelog
* harbour/debian/rules
* changed version number to 3.1.0-1
* removed HB_BUILD_DEBUG=yes
* use 'dh_prep' instead of deprecated 'dh_clean -k'
* harbour/src/rtl/gttrm/gttrm.c
! fixed my C&P typo in HB_TRACE() message
+ harbour/doc/locks.txt
+ added descirption of DBF locking schemes