* contrib/hbqt/hbmk2_qt.hb
* contrib/hbqt/qtcore/hbqtcore.h
* contrib/hbqt/qtgui/hbqt_hbqabstractitemmodel.cpp
* contrib/hbqt/qtgui/hbqtgui.h
- Removed: the usage of HBQT_TYPE_xxxx constants.
It was a hack to identify a few type of objects Qt had
not provided the mechanism to retrieve.
NOTE: there should be improvement in build speed of hbQT.
* contrib/hbqt/qtgui/hbqt_hbqplaintextedit.cpp
- Added: deletion of child widget of HBQPlainTextEdit.
* contrib/hbqt/qtgui/hbqt_hbqsyntaxhighlighter.h
* contrib/hbqt/qtgui/qth/HBQSyntaxHighlighter.qth
+ Added: method hbSetEditor( QPlainTextEdit edit ).
This fixes issues where some of the components of hbIDE were
not working properly due to strict object inheritance checking.
* contrib/hbqt/qtcore/hbqt_hbqevents.cpp
* contrib/hbqt/qtcore/hbqt_hbqslots.cpp
* contrib/hbqt/qtcore/hbqt_misc.prg
* Optimizations.
* More VM protections.
* contrib/hbxbp/xbplistbox.prg
! Fixed: a nasty construct in :clear() method where slots were
being disconnected and connected again increasing the unnecessary
object destruction/creation.
* contrib/hbqt/tests/demoqt.prg
* contrib/hbqt/tests/testbrow.prg
! Minor guards.
; NOTE: all the hbQT related test programmes are working flawlessly.
hbIDE still reports "reference to freed block" error but
this is not due to hbQT, instead, the complex object
relationship of hbXBP/hbQT/hbIDE classes. This is only
visible when hbIDE is linked without :destroy() mechanism.
BUT no GPF whatsoever. With :destroy() calls hbIDE EXITS
normally.
* contrib/hbqt/qtcore/qth/*.qth
* contrib/hbqt/qtgui/qth/*.qth
* contrib/hbqt/qtnetwork/qth/*.qth
! Copyright year bump.
+ Formatting.
- Long coptyright notice to short one.
* contrib/hbqt/hbmk2_qt.hb
* Fixed: the objects derived from QObject but without a constructor
were conflickting somehow with the use of shared pointer.
Now any demo in hbqt/tests and hbxbp/tests does not through
error messages at EXIT. TESTBROW.PRG with #if 0 / #if 1
works flawlessly. However, in hbIDE these error messages still
exist if :destroy() is not employed, otherwise, neither error
messages nor GPF.
* contrib/hbide/idefunctions.prg
* contrib/hbide/ideharbourhelp.prg
* contrib/hbide/idemain.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/ideshortcuts.prg
* Optimized: to avoid repeated QApplication() object creation
and destruction.
* contrib/hbqt/qtcore/hbqt_hbqslots.cpp
* contrib/hbqt/qtcore/hbqt_misc.prg
* contrib/hbqt/qtcore/hbqt_pointer.cpp
* Changed: the way :connect()/disConnect() could been
applied to an object. Now programmer cannot make
a mistake, controlling one more pitfall.
* contrib/hbqt/qtcore/qth/QUrl.qth
* contrib/hbqt/qtgui/qth/QListWidgetItem.qth
- Inherits = QObject
* contrib/hbqt/qtgui/qth/QWidget.qth
- PainEvent = YES
; NOTE: still "Reference to freed block" messages at EXIT
are unresolved and very much reproducable.
* contrib/hbqt/hbmk2_qt.hb
+ Applied: concept forwarded by Francessco a few days back,
where class creation and registration has been separated.
This reduces a lot of object creation and destruction.
It also increases the speed, you can experience in hbIDE.
Not confirmed, but have also noticed that memory consumption
has also been optimized.
* utils/hbmk2/Makefile
* utils/hbmk2/hbmk2.hbp
+ utils/hbmk2/hbmk2c.c
* utils/hbmk2/hbmk2.prg
+ added automatic detection of _SET_OSCODEPAGE and hb_SetDispCP()
Experimental, not well tested and it may need extensions to handle
all possible CPs and cases on *nix systems.
MS-DOS and OS/2 support are missing.
Autodetection will now be used instead of generic assumptions
and defaults stored in translation files.
+ enabled UTF8EX HVM CP on remaining (non-*nix) platforms.
; Once matured, this code can be moved to the core, possible
after rewrite in C. This will make it unnecessary to roll
private C code for hbmk2.
; Several problems remain on non-*nix systems when working with
actual non-ASCII filenames.
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.es_PE.po
- deleted translation (language) dependent CP settings.
* contrib/hbide/idemain.prg
! Disabled: :destroy() calls before application quits.
* Simplified: ambigous variable reference.
; NOTE: now hbIDE does not produces GPF on EXIT but throws
2 RTE the contents of them can be viewed in tracelog.
.
Error BASE/1301 Object destructor failure: Reference to freed block.
* contrib/hbqt/qtgui/hbqt_errorsys.prg
+ Added: HB_TRACE() call if HVM is closed and error message
needs to be retrieved somehow. It will allow us to
peep in further to pin-point the EXIT GPF.
* contrib/hbqt/qtgui/hbqtgui.hbx
* Re-generated.
* contrib/hbxbp/tests/demoxbp.prg
* Minor.
* contrib/hbide/idehome.prg
* Minor.
* contrib/hbide/idemain.prg
! Enabled: :destroy() calls before application quits.
; NOTE: now no more EXIT GPF is reported in hbIDE.
Please shout if you get one and report the message
available on std error output, for Window which
will be debugger like debug.exe.
* contrib/hbqt/qtgui/hbqt_errorsys.prg
* Guarded: against possible recursive error handler calls
with hbqt_isActiveApplication().
* contrib/hbqt/qtgui/hbqt_init.cpp
+ Added: HB_FUNC( HBQT_ISACTIVEAPPLICATION ).
; NOTE: there may be a better solution, I know, but...
* contrib/hbnetio/utils/hbnetio/netiosrv.prg
* contrib/hbrun/plugins.prg
- deleted .hbs script support from places where it was
unlikely to be used in the wild
* contrib/hbide/ideplugins.prg
* changed to support .hb extension for plugins instead of
.hbs (plus, same applies as above0
* config/postinst.hbs
* implemented same ASORT() fix as in prev commit by Przemek.
(it may be important once we modify hbrun/hbmk2 to run
scripts under UTF8 CP)
* contrib/hbnetio/utils/hbnetio/modules.hbp
- contrib/hbnetio/utils/hbnetio/rpcdemo.hbs
+ contrib/hbnetio/utils/hbnetio/rpcdemo.hb
- contrib/hbide/plugins/hbide_script_qtgui.hbs
+ contrib/hbide/plugins/hbide_script_qtgui.hb
- contrib/hbide/plugins/hbide_plugin_savebackup.hbs
+ contrib/hbide/plugins/hbide_plugin_savebackup.hb
- utils/hbmk2/examples/plug_tpl.hbs
+ utils/hbmk2/examples/plug_tpl.hb
- tests/stripdoc.hbs
+ tests/stripdoc.hb
* .hbs -> .hb for Harbour scripts.
* tests/stripdoc.hb
+ use directry.ch
* harbour/utils/hbmk2/hbmk2.prg
! sort functions in .hbx files using "EN" CP.
This modification fixed problem with resorted
functions in .hbx files for CPs using non ASCII
collation order for [A-Z], [0-9] and [_] characters
* harbour/src/common/expropt2.c
* small code simplification
* harbour/src/rtl/hbregex.c
% eliminated call to pcre_config() on each regex compilation
* harbour/utils/hbmk2/hbmk2.prg
! fixed -head=full for code using non UTF8 characters.
It was broken because in UNIX builds UTF8 is always enabled
as HVM CP in HBMK2 and this setting was inherited by PCRE
with PCRE_UTF8 flag. If this flag is used PCRE validates
all strings and refuse to make any operations if they are
not valid UTF8 string so it was not working at all for
source code using different encoding.
! fixed regex used in -head=full to respect shortcuts in #include
directive, i.e.:
#incl "file.ch"
! fixed regex used in -head=full to recognize #include directives
separated by ';', i.e.:
#include "file1.ch" ; #include "file2.ch" ; #include "file3.ch"
; TOFIX: UTF8 mode on output should not be enabled unconditionally in
all UNIX builds. There are many *nix installations where UTF8
is not system CP, i.e. older Linux distributions. In fact
it's user attribute so each user can use different encoding
local to his connection and/or terminal settings. Probably
it's good idea to use code like:
lUTF8 := "UTF-8" $ GetEnv( "LANG" ) .OR. ;
"UTF-8" $ GetEnv( "LC_CTYPE" )
* contrib/hbqt/qtcore/hbqt_pointer.cpp
+ Added: hbqt_par_isDerivedFrom() - protection against a null
pointer passed as an argument. This makes possible to detect
if an object is still active when passed. If not, a RTE is
generated. This covers some more potential user mistakes.
* contrib/hbqt/hbmk2_qt.hbs
! Fixed: to take use of the hbqt_par_isDerivedFrom() completely.
This renders parameter checking with Class TYPE constants
redundant which can be removed alltogether. This also
facilitates usage of subclassing a Qt class.
; TODO: impliment siblings checking inside hbqt_par_isDerivedFrom().
HBQPlainTextEdit() is a sibling of QPlainTextEdit().
* utils/hbmk2/hbmk2.prg
! fixed RTE when logging sign command
! fixed `` operator to strip CRs and convert LFs to space
in stdout output.
* src/rdd/dbcmd.c
! clarified DBCREATE() 4th parameter in comment
* utils/hbmk2/hbmk2.prg
* .hb? input make files are now considered with UTF8 encoding.
+ enabled full UTF8 CP on *nix systems. EXPERIMENTAL.
* debian/copyright
* package/winuni/mpkg_win_uni.nsi
* utils/hbmk2/hbmk2.prg
* contrib/hbpost.hbm
* contrib/hbnetio/utils/hbnetio/modules.hbp
* contrib/hbnetio/utils/hbnetio/netiosrv.prg
* contrib/hbqt/hbqt_common.hbm
* contrib/hbide/ideedit.prg
* contrib/hbide/idemisc.prg
* contrib/hbide/idesaveload.prg
* contrib/hbrun/hbrun.prg
* contrib/hbrun/plugins.prg
* config/postinst.hbs
* COPYING
+ added support for .hb extension for Harbour scripts.
I plan to make a full switch to .hb from .hbs.
* contrib/hbct/getsecrt.prg
* use hb_keyCode() instead of Asc() to form numeric key value.
* contrib/hbtip/encqp.prg
! Quoted-printable encoding/decoding fixed to use FOR/NEXT
loop instead of FOR/EACH and HB_B*() string functions to
operate on binary data regardless of HVM CP.
! Fixed old typo causing no encoding for line-ending whitespaces.
* contrib/hbtip/mail.prg
! Q-encoding fixed to use FOR/NEXT
loop instead of FOR/EACH and HB_B*() string functions to
operate on binary data regardless of HVM CP
* utils/hbmk2/hbmk2.prg
+ added experimental code signing support for win and darwin
using '-sign=<ID> [-signpw=<pw>]' options.
on win, it requires MSVS in path.
* utils/hbmk2/hbmk2.prg
! fixed missed incremental updates in '-inc -head=dep'
mode on win/os2/dos systems when -workdir= was set to
an absolute path. The drive separator colon was confused
with the file/dependency separator colon. Nasty.
* examples/dbu/dbu52.dif
* examples/dbu/dbu53.dif
+ updated for UTF8 HVM CP. Start with "-utf" option to activate.
In -utf mode, tables will also be open using UTF8EX CP.
+ added support for clipboard paste using <Alt+V>
+ link all CPs
! fixed to use hb_ps() instead of MS-DOS/win specific pathsep
* examples/commouse/commouse.prg
+ updated for unicode